おすすめ書籍はじめにこんにちはsuzukiです。最近案件とは関係ないのですが、swiftでカメラを利用し文字列を認識できないか聞かれることがございました。MITライセンスでCocoaPodsでインストール可能なTesseract-OCR-iOSを使って試したのですが、想像以上に難航したので記事にしようと思います。5.0.1ライブラリのインポートCocoaPodsで簡単にライブラリの導入が完了します。Podfileに下記を記述しましょう。#なくても動作可能ですが、私の環境では満足な精度にするためチュートリアルのコードを使うため導入しました。'TesseractOCRiOS'#なくても動作可能ですが、私の環境では満足な精度にするためチュートリアルのコードを使うため導入しました。installします。言語モデルのインポート私の環境ではこちらのリンク先の.traineddataではエラーが発生してしまいました。色々な記事を確認しているとどうも学習データの文字の解析に使う文字情報のバージョンによってエラーが発生するようです。動く学習データということでチュートリアルのeng.traineddataとfra.traineddataをもとに作業しました。公式の導入方法ではダウンロードした内容をtessdataフォルダの配下に配置しフォルダごとリファレンスフォルダーとしてアプリ内に配置しております。カメラを利用する準備info.Plistに下記の項目を追加しましょう。一部必須ではございません。<string>画像ライブラリに追加</string>123456<key>NSCameraUsageDescription</key><string>画像撮影のため</string><key>NSPhotoLibraryUsageDescription</key><string>画像ライブラリ</string><key>NSPhotoLibraryAddUsageDescription</key><string>画像ライブラリに追加</string>レイアウト作成ざっくりとしたレイアウトです。続いてカメラ周りの処理をViewControllerに記述します。下記のデリゲートを忘れず記述してください。最後に解析ボタンを押した際の動作を作成します。UIImageのエクステンションチュートリアルを参考にUIImageのExtensionを作成します。tesseract.recognizedText}}さいごに認証の内容は期待した精度ではなかったです。UIImageの加工をしない場合はほぼ0%でしたが、UIImageの加工を追加することで50%ぐらいになりました。日本語+英語の文字認識をするため、今度日本語の学習データを使う方法があるか調査していきます。コメントをキャンセルメールアドレスが公開されることはありません。コメント名前メールアドレスサイト上に表示された文字を入力してください。こんにちは、nukkyです。Chartsライブラリでボリンジャーバンドを描画してみる。...[Swift]MapViewでクラスタ機能を利用する。私たちは無料アプリもリリースしています、ぜひご覧ください。下記のアイコンから無料でダウンロードできます。