2011/03/19

マーカー検出器(マイクロQRコード版) その3

QRコード検出器の続きです。

QRコードの検出と射影変換処理まではできたので、今回はデコード処理部分です。

最初はマイクロQRコードの仕様どおりにデコードできるものを作ろうとしましたが、
JISの規格(http://www.jisc.go.jp/ JISX0510二次元コードシンボル-QRコード-基本仕様)
を見てもデコードの仕組みがよくわからず、結局独自デコードにすることにしました。

独自デコードの中身は以下のような感じです。
1.11セルのマイクロQRコードを使うことにする
2.2行目と3行目の値のみを使い、6ビット(32通り)のマーカーを識別できるようにする
3.黒く塗りつぶされているところを1とする(QRコードと同じ)

pic.1 独自デコードのビット配置
 とりあえず実装してみた結果が下記の通りです。
pic2 検出テスト


上の画像の場合は、2行目と3行目の一番右側が黒く塗りつぶされているので、
2^0+2^3=9 でこのQRコードの識別番号は9となります。

4行目以降のマスは、白と黒が1対1になるように適当に塗りつぶしているだけで、
特に意味はありません。
今度はAndroidに移植して、どれぐらいの速度で実行できるかをテストしたいと思います。

ではまた。






3rd part of Micro QR Code detector.
At first, I tried to decode according to the specification.
But I could not understand how to do it.

So I decided create my decode rule.
My decode rule is below.
1,Uses only MicroQR version M1 (11 modules).
2,Uses 2nd and 3rd row to decode.(Please see pic.1)
3,Black module means 1, white module means 0.


Source code:http://sites.google.com/site/playwithopencv/microqrcode

0 件のコメント:

コメントを投稿