質問: 失礼します、Objective-Cで開発をしている初心者です。 iPadでPDFビューアのプログラムを作成しております。 その時、「スクリーンショットで撮った画像を切り取り、切り取った画像をOCRを用いてテキスト認識して」います。 シミュレータではきちんと動作するのですが、実機だと同様の動作をしても認識しません。 例えば、画像に「Hello」と書かれていた場合、シミュレータの場合は「Hello」と認識します。 ですが、実機の場合「chv2f,,」のように、文字を認識しているのか分かりません。 スクリーンショット自体は、きちんと「Hello」と書かれた画像を取り出して来ています。 特にエラー等は出ていません。 コードを出したいのですが、そもそもどこがおかしいのかが分からず、載せようが有りません。 実機で作成した画像をきちんと読み込めていないのでしょうか? 何か心当たりがある方がいらっしゃいましたら、コメントをいただけると幸いです。 使用しているOCRのソフトはtesseract-ocrです。 追記: シミュレータのバージョン? を変えたところ、シミュレータでも挙動しなくなりました。 tesseract-ocrがiOS6(もしくは6.1?)より後では動かないのは知っていたので、もしかするとバージョンのせいかもしれません。 引き続き、何か心当たりのある方がいらっしゃいましたら助言をお願いします。
回答: お騒がせしました、自己解決致しました。 原因は、「画像を切り取る過程で」「x, y値がずれていた」ためだったようです。 解像度の違いで、見当違いの場所を切り取っていたため、上手く認識していなかったようです。 シミュレータでは常々iPadで行っており、使えなかったのはiPad Retinaや実機(iPad3?)でした。 その過程でtesseractをiOS6ではなく、iOS7でも動くようにしました。 それは関係していないと思いますが、念のため。 コメントを下さった方々、ありがとうございました。