★ The Tsuchinoko News 2 (つちのこ通信2) ★

重要な話から、どうでもいいことまで。ほとんど役に立たないことを書き連ねています。

【PC】zxing のお勉強

f:id:tsuchinoko118:20120719175204j:image:left:w220ここ1週間ほど、ほとんどやったことのない Android アプリの開発のためのお勉強に着手し、Eclipse に ADT に android-SDKJava と、脳みそがウニかイクラになってしまいそうな感じだ。
JavaSDKによくある ソケット通信やなんだかんだは、わかるのだが、開発ツールとしての Eclipse は初めて、Android-SDKは初めて、初めてだらけのことが非常に多い。
Java も 10年ぶりぐらいなので、ずいぶんと様変わりしている(一番変わったのは Sun ではなく Oracle が配布していた点だ(笑)
つまるところ「ド素人」同然の状態だ。

f:id:tsuchinoko118:20120719175207j:image:right:w220
その「ド素人」が最初に選んだお勉強が zxing 。

書籍や多くのサイト、Google の zxing のページなどなど、資料は点在しているのだが、ものすごく古い情報が多く、はたまた「動きました」しか書いてないようなところも多く、「ド素人」にしては、ものすごく敷居が高いのではないか、と気づいたのは、お勉強をはじめて4日目くらいのことであった(笑)
起きてる間はもちろん、寝ている間も zxing。夜中にトイレで目覚めても zxing。夢はもちろん zxing。
サンプル配布されているものを動かすのも一苦労。とりあえず”写経”(ソースを丸ごとそのまま入力)しても動かないことが多く。恐ろしく情報不足で、お勉強にはあまりふさわしくないのかも知れないと、泣きが入ってきたのだが、6日目にして、やっとこさ動かすことが出来た。(よかった・・・泣きそうだった・・)

動かしてみると、なるほど基本構造は単純なのだけども、zxing の品質なのか、カメラの品質なのか、やり方が悪いのか、ともかく認識率が悪く、なかなか実用までたどり着けなかったりした。Googleサイトにあるサンプルをそのまま使うと RGBLuminacesource というのが出てくるのだけど、これがまた、ものすごく遅く、認識も悪く、と、かなり頭を悩ませることにもつながっていたりした。また既出のサンプルも、ほぼすべてが「landscape」固定のもので、ケータイを握って”写メ”風に認識させたいような時に、どうしたらよいかのヒントもなく、「サンプルをつくって動かせました」くらいまでは行くのだけれども、そこから先がなかなか思うように進まず、かなり労苦した。

f:id:tsuchinoko118:20120719175206j:image:left:w220
最終的には約1週間で、QRコードはかなりの認識率で実用性がある程度まで、縦持ち、横持ちOKで、というところまではできあがり。

EAN13Readerを使ったバーコードスキャナまで作り込みたかったのだが、1Dバーコードでは、すでに世の中にあるCCDやレーザースキャナの精度や速度には到底及ばず、オートフォーカスしている時間だけで、もう実用不可というレベル。

ずいぶん時間がかかったが、おかげさまで Android アプリの構成の仕方や Eclipse の使い方、考え方などがずいぶん明瞭になって、勉強になった。

あとは、もう少し精度と速度を上げてデータコレクターとして仕上げたいところだ。

f:id:tsuchinoko118:20120719175205j:image:right:w220えっとデータコレクターにするには、あと、外部ファイルの保存と、ソケット通信で母艦(PC)に送らなくちゃ。。。いろいろやらなくちゃいけないなぁ〜〜。まだまだお勉強は続く・・・