2009年02月17日

polyQR v1.0.1 リリース

バグ対処できましたのでリリースします!



【v1.0.0→v1.0.1 変更点】
・誤り訂正符号の算出処理のバグ対処
埋め込み文字列によっては、間違った誤り訂正符号を算出してしまうことがあり、その場合には、読み取れない、読み取りにくい、文字化けして読めてしまうというようなことがありました。

・モーフターゲット reverse_xz 平行移動先のバグ対処
平行移動先の位置にずれがありました。
このため、reverse_xz = 1.0 とした時に、各セルのX座標、Z座標が各々反転した位置とならずに、各々1セル分 (1升目分) ずれていました。
同様に、reverse_xz = 0.5 とした時は、オブジェクト中央ではなくて、中央から半セル分ずれた位置に集結してしまっていました。


使い方などに関しては、旧版のpolyQR v1.0.0 リリースの記事をご覧下さい。
posted by foilskin at 16:00 | comment (0) | polyQR | このブログの読者になる | 更新情報をチェックする

2009年02月06日

誤り訂正符号に誤り

polyQR v1.0.0 にバグがあり、間違った誤り訂正符号を算出してしまうことが判明しました。

大抵の場合、正常に読み取れてしまいますが、ノイズ耐性が低下している筈で、少しの印刷面の汚れなどでも読み取れなくなってしまっていると思います。

まあ、印刷しないとは思いますが、QR の手前をスライムが横切ったり、QR の一部分をツルハシで破壊してしまうような視覚効果はアウトかも知れません(笑)。


また、埋め込み文字列によっては、誤り訂正符号が間違っているために、逆に正しいデータの方が訂正されてしまい、文字化けしてしまうことがあります。

恐るべし誤り訂正符号(笑)。

対処版 polyQR が出るまでの回避策としまして、もし、文字数に余裕があるのでしたら、後ろに半角スペースを1つ付け足したりして作成すると、取り敢えず文字化けしなくなるかも知れません。

これで回避できるのは、QR フォーマットで文字数情報は先頭の方に格納され、算出される誤り訂正符号が大きく変わってくるためだと思います。
posted by foilskin at 14:25 | comment (0) | polyQR | このブログの読者になる | 更新情報をチェックする

2009年01月15日

polyQR v1.0.0 リリース

任意の文字列の QR パターンを Poser の小道具として生成するツールをリリースします!
FLASH (+ Python) ですので、Windows だけでなく Macintosh でも OK だと思います。



【使い方】
(1) パラメータの入力
FLASH 上で各種パラメータを入力します。パラメータの意味などについては後述します。

(2) 小道具の生成
「生成」ボタンを押します。

(3) 小道具ファイル (.pp2) の作成
下の方のテキストボックスに結果が出力されますので、これをコピー&ペーストしてファイルに落とします。
この時のファイル名は、拡張子が .pp2 であれば適当で構いません。格納ディレクトリも適当で構いません。

※パターンデータは将来の拡張用であり、現時点では使用しません。

・FLASH Player 7 以降をご使用の場合
まず「右記内容をクリップボードへ」ボタンを押します。このボタンを使用した場合、改行コードは LF として転送されます。
そして、適当なテキストエディタで新規ファイルにペースト後、改行コードはそのままに、文字コードだけ UTF-8 にして保存して下さい。Windows 付属のメモ帳ですと LF という文字が表示されますが、気にせず文字コードだけ UTF-8 にして保存して下さい。

・FLASH Player 7 よりも古い場合
クリップボードへ転送する機能が使えないため、手動でコピーする必要があります。「右記内容をクリップボードへ」ボタンは現れません。
テキストボックス上で、Windows なら右クリックで、Macintosh なら control +クリックでメニューを出して「すべて選択」してコピーします。そして、適当なテキストエディタで新規ファイルにペーストします。
手動のコピーでは、改行コードは CR+LF として転送されます。
保存する時、文字コードを UTF-8 に、改行コードを LF にして下さい。Windows 付属のメモ帳は、改行コードを選べませんが、特に問題は無いようです。

(4) 小道具ファイルの読み込み
Poser のメニュー→ファイル(F)→読み込み(I)→フィギュア/小道具…(P)で読み込みます。

読み込むファイルを指定するダイアログボックスで、ファイルの種類の指定を「Poser 小道具ファイル (*.pp2;*.ppz)」に変更すると、先程作成した小道具ファイルが一覧表示に出るようになります。

(5) マテリアルの設定
マテリアルは分けておりません。複雑な形状ですので、2Dテクスチャノードは使用せずに、3Dテクスチャノードなどをご使用下さい。
また、色などに制限がありますので、後述の QR に関する注意点は一度ご覧下さい。

(6) モーフの設定
小道具作成時にモーフターゲットを INJ するように設定して置いた場合には、小道具のパラメータ/特性パレットにてモーフパラメータが現れます。モーフパラメータをアニメーションさせたりして変化をお楽しみ下さい。
独立して操作できるように2種類のモーフに分けてありますが、両方 INJ してあるならば変化を組み合わせることも可能です。


【パラメータの意味】
・埋め込み文字列
QR パターンに埋め込む文字列を入力します。
漢字コードはシフトJISを用いるものと規定されていますので、シフトJISで表せないハートマークなどは使用できません。
半角カナも使用可能で、半角アルファベットと同様に1文字分で済みます。

・形状
セル (升目) の形状を指定します。
立方体のサイズは 1.0×1.0×1.0 です。
四角錐のサイズは、底面が 1.0×1.0 で、高さが 0.618 の黄金比のピラミッドです(笑)。
四角錐では、稜線をクッキリ出すために折り目角度 80→60 にしています。

・マスクパターン
なるべく最初は自動選択を使用して下さい。パターンNo.0〜7 の中から最良のものが自動的に選択されます。
ですが、芸術的(?)な観点から、パターンNo.を指定することも可能です。

最良のもの以外を選択しますと、QR としての認識率が低下する場合があります。どの程度低下するかは文字列に依存しますが、通常の使用ではあまり変わらないかも知れません。

マスクパターンが関係するのは埋め込み文字列だけであり、形状やモーフINJのパラメータは関係しません。もし文字列を変えないのでしたら、最良のマスクパターンNo.が判明した2回目以降は、そのパターンNo.を指定した方が自動選択よりも少しだけ処理時間が短く済みます。

・モーフ INJ
下記のモーフターゲットを仕込んだ状態で小道具を生成します。
・random_y: 各セルをY軸移動します。どの位置まで移動するかはランダムです。
・reverse_xz: 各セルのX座標、Z座標が反転となるように各セルを平行移動します。この値を 1.0 にしますと、(セルは回転しませんが) パターン全体を180度Y軸回転したのと同じ結果になります。0.5 にしますと中央に集結します。

これらは Poser 上で INJ される訳ではありません。
ランダムな位置を決めるのは FLASH であり、一度決定されて出力されたモーフターゲットは FLASH の決めた位置にしか移動しません。シャッフルし直すには、再度 FLASH にて小道具を生成し直して下さい。

モーフターゲットを仕込みますと、多少、ファイルサイズが大きくなりますので、使用予定のないモーフは INJ しない方が良いかも知れません。


【QR に関する注意点】
・型番やモードなど
サイズは3型、誤り訂正レベルM、8ビット幅のモードを使用しています。固定です。

・色
なるべく前景 (小道具) は黒っぽい色、背景は白っぽい色にして下さい。コントラストが弱いと、認識率が低下します。
また、QR の仕様上は白黒反転していても良いとされていますが、機種によっては読み取れない場合があります。

・表裏反転
QR の仕様上は表裏反転していても良いとされていますが、機種によっては読み取れない場合がありますので、反転しない方が良いでしょう。

・Quiet Zone
パターンの上下左右にある余白のことです。
背景と同じ色で、幅4セル (升目4つ分) 以上の余白を必ず確保して下さい。


【特記】
・長さの単位
Poser 上で用いられている単位と同じです。デフォルトであるフィートから変更すると、異なって見えるかも知れません。

・小道具の名称と内部名
出力結果では「QR_1」固定にしておりますが、Poser では2個目、3個目と読み込む際に、自動的に連番に改名してくれます。

・polyQR という名称の読み方
見たこと無いのですが、黒いのと白いのと二人のヒロインが登場するパロディゲームと一緒です(笑)。
posted by foilskin at 12:08 | comment (0) | polyQR | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。