Ingress 「Agent Stats」がデータアップ時サーバエラーで使えないので。。 tesseract-ocrのビルド
Ingress用のAndroidの「Agent Stats」ですが、Ingressのprofileのスクリーンショットを共有でサーバサイトに送信するとOCRで読み取ってくれて、実績を管理してくれるのですが、
人気なのかサーバ過負荷だと思いますが、エラーで全然認識してくれません。><
(本記事は、一般向けではありませんので、「Agent Stats」で検索して来られた方は、
お役に立ちません。すみません。アプリが完成すれば別ですが。)
そこで、自分で作ってみることにしました。「Agent Stats」はサーバサイドでOCRで読み取って
いますが、今回はAndroid端末側でOCR機能を入れて読み取れないかまず試してみました。
第一ステップ:Android端末の方でOCR認識して、データを文字列に置き換えてできるか。
まず、AndroidでOCRライブラリーを探したところ、
https://github.com/rmtheis/tess-two
があり、ネイティブコード(C/C++)で作られています。jniですので、Android NDKが必要になります。
NDKは、Windowsでは面倒くさいので、Linux(CentOS7)上でコンパイル環境を構築することにします。
【ndk-build環境の構築】CentOS7
1.Android NDKのインストール
1) wget http://dl.google.com/android/ndk/android-ndk-r10e-linux-x86_64.bin
2) chmod +x android-ndk-r10e-linux-x86_64.bin
3) android-ndk-r10e-linux-x86_64.bin
4) mv android-ndk-r10e /usr/local/
5) echo ‘export PATH=$PATH:/usr/local/android-ndk-r10e’ >> .bashrc
6) echo ‘export NDKROOT=/usr/local/android-ndk-r10e’ >> .bashrc
2.Android SDKのインストール
1) wget http://dl.google.com/android/android-sdk_r24.2-linux.tgz
2) tar zxvf android-sdk_r24.2-linux.tgz
3) mv android-sdk-linux /usr/local/
4) echo ‘export PATH=$PATH:/usr/local/android-sdk-linux/tools/’ >> .bashrc
5) echo ‘export PATH=$PATH:/usr/local/android-sdk-linux/platforms’ >> .bashrc
3.その他必要モジュール
ビルド時、/usr/local/android-sdk-linux/build-tools/22.0.1/aapt実行時に必要
モジュールがなくエラーが出る場合は、必要なモジュールをインストールすること。
私の環境では、以下3つが必要でした。
1) yum install ld-linux.so.2
2) yum install libz.so.1
3) yum install libstdc++.so.6
【tesseract-ocrのビルド】 作者に感謝。
1) git clone git://github.com/rmtheis/tess-two tess
2) cd tess
3) cd tess-two
4) ndk-build
5) android update project –path .
6) ant release
成功すると以下にオブジェクトが出来ます。
./bin/classes.jar
./libs/armeabi-v7a/liblept.so
/libtess.so
/mips/liblept.so
/libtess.so
/x86/liblept.so
/libtess.so
以上をEclipsプロジェクトのlibsフォルダーにコピーすればもうOCR読み取り
関数が使えます。
【OCR読み取りツール】EclipsはWindows上で開発しています。
とりあえずこんな感じで、まずは文字が読めるかみました。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 1;
Bitmap bitmap = BitmapFactory.decodeFile(“/sdcard/Pictures/ingress/profile_20150507_202910_0.png”, options);
bitmap = bitmap.copy(Bitmap.Config.ARGB_8888, true);
Log.v(TAG, “– START”);
TessBaseAPI baseApi = new TessBaseAPI();
baseApi.setDebug(true);
baseApi.init(DATA_PATH, lang);
baseApi.setImage(bitmap);
String recognizedText = baseApi.getUTF8Text();
baseApi.end();
Log.v(TAG, “– END);
読み取り画像 | テストアプリで読み取り後 |
![]() |
![]() |
すばらしい。読み取れてる!。読み取り時間は、ネイティブコードにしても8秒程度かかります。
シンガポールの1$コイン
シンガポール旅行で、1$コイン2枚持ち帰りました。
円形の中に八角形の窪みがあり、マーライオンも刻印されています。
綺麗でお守りにもなるかもと、娘に1個あげました。
2013年度以降の新1$コイン
後で知ったのですが、会社の同僚より、風水を意識してデザインしており、
国民全員に風水羅盤の八卦図を持たせる代わりに、この1$コインをいきわたらせ、
結界を張っているとのことです。なので、これはお守り代わりにもなります!。
では、何の為に結界を張っているかといいますと、MRT(地下鉄)を国の中心部である
City Hall駅に通したら、「国の中心部に穴を掘って電車を通すと龍脈が乱れ国が傾く」と
風水師からの宣告があり、回避策として、国民に八卦図を持たせれば良いとの
ことでしたが、いろんな宗教の方がいる人たち全員に八卦図を持たせるわけにはいかず、
代わりに、コインにすれば全員持てるというアイデアでした。すばらしい!
Ingress 長距離リンク 失敗です。
社員旅行 シンガポールIngress その2
社員旅行でシンガポール行ってきました。基本自由行動ですので、Ingressをやりたかったので、単独行動となりました。
(5/12機中泊-5/15)
シンガポール チャンギ空港でSIMカードを買ってネット回線を確保しています。
最初ネットで調べて、SingTel Hi! 4G Prepaid SIM (S$28)を皆さん使われていて、私も現地で、それを購入しようと頼んだのですが、
http://info.singtel.com/personal/phones-plans/mobile/prepaid/hitouristsimcards
のhi!Tourist SIM Cards 30$(7GB 10日有効)を勧められてそちらを購入しました。
アクティベートとかデータプランの申し込みなど面倒なこともする必要がありません。SIMフリー端末Nexus 5に差すだけです。(※結果的には、2GB 5日有効でも十分でしたが、ここでケチってingressできず、
google mapも見れなくなったら面倒なので、30$(7GB 10日有効)で良かったと思います。1日100Mぐらいしか使わなかった。)
このカードは、Facebook,Lineなどのパケット宛ては無料にしてくれます。
交通手段は、徒歩&電車です。プリペイドカードは、これも事前に調べてezlinkでMRTと路線バスに乗れるということで、これを改札口で購入しようとしたのですが、NETS FlashPayを勧められてそれを購入しました。(12$で保証金5$含まれます。)
5/14 2日目
1.Visiting NSU1
社員旅行 シンガポールIngress その1
社員旅行でシンガポール行ってきました。基本自由行動ですので、Ingressをやりたかったので、単独行動となりました。
(5/12機中泊-5/15)
5/13 1日目
1.Marina Bay Sands
チェクインは、15;00からで、午前7時には付いたので、とりあえずこのミッションをしました。
GPSはふらついているので、その分面倒です。
台風来る? シンガポールまで約5,000km 現地晴れ。 Ingress
シンガポールまで約5,000km 現地晴れ。今日の夜、シンガポールに旅行予定ですが、台風の影響で飛行機は飛ぶの?。現地ではIngressミッション予定。
未知の土地を歩くにはピッタリのアプリ、3D行先コンパスです。(作成者は私です。。)
INGRESS公式バッテリー INGRESS POWER CUBE 12,000mAh 購入しました。
もうINGRESSにはまり過ぎて、INGRESS公式バッテリー INGRESS POWER CUBE 12,000mAh 購入しました。(パズドラはランク464で引退しました。)
これで1日歩き回ってもバッテリー持つかと思います。^^
梱包の中にパスコード付きのカードが入っていていました。very レアアイテムのJARVISとADAです。(AXAが欲しいです。。)
INGRESSの現在のLEVELは7でもう一息で、目標のLEVEL 8です。
連休中はAP1.5倍、UltraStrike出現率2倍でだいぶAPを稼げました。
(来週のシンガポール旅行は楽しみです。それまでにLEVEL 8になってればベストなんですが。
ミッションしてきます。)
「白と金」「青と黒」のドレス CrenaCamでイメージ色判定して見る。
このドレスは「白と金」? それとも「青と黒」
話題の画像は↓。私には、「白と金」にしか見えないのですが、
奥さんと娘は、「青と黒」と言っています。まじで?!「白(白系の青と金」じゃないの?
オリジナルのドレスは「青と黒」らしいです。
ということで、ここは自作のCrenaCam(Androidアプリ)でイメージ色を取得してみましょう?
[黄土色、こはく色なので金]
[あいねず、サックスブルー:イメージカラー青なので青]
パズドラ 曲芸士ゲットできました。!
クリスタル・ディフェンダーズ ガチャ 2/23~3/8
http://mobile.gungho.jp/news/pad/150220_ffcd_chara.html
巷で噂の強すぎるモンスター:曲芸士、完全バランス崩壊させるとも言われる曲芸士。
ヤフーのニュースにも載るぐらいです。
http://headlines.yahoo.co.jp/hl?a=20150225-00000098-it_nlab-sci
ガンホーは、公式でリーダースキル下方修正予定なしと発表しているほどの騒動となっています。
http://mobile.gungho.jp/maintenance/pad/pua59k0000002ud5.html
で、、この曲芸士をゲットできました。!
コラボガチャなんか殆ど回したことなかったですが、前半2/23に貯めた魔法石75個使って
15回引いたけど、出ず。この時は、金卵2個(シーフと時魔道士)だった。
がっくし状態でしたけど、本日までに魔法石50個貯めて10回分の再チャレンジを用意。
(途中xxx日のログインで10個とかあって一気に増えた。)
1回目で金卵 からくり士、といことで期待してたら5回目で出た。
(ありがとうございます。)