写真を「ただのテキスト」ではなく構造化データに変えるには?
2026年7月8日 · 5分で読める
写真を構造化データに変えるには、文字だけでなく文書のレイアウトを読む vision-language モデルに通します。モデルは取引先、日付、合計金額、明細行といったラベル付きフィールドを JSON で返し、各フィールドには confidence score が付きます。一般的な「画像からテキスト化」との違いは、出力を誰も打ち直すことなく、そのまま Excel や会計ソフトに取り込める点です。
「構造化データ」とは何か — なぜ生テキストでは足りないのか?
生テキストとは、基本的な OCR ツールや Google Lens が返すもの — レシート上のすべての文字が、読み順のまま、区別のないひとつの塊になったものです。一見前進に見えますが、実務では使えません。スプレッドシートに「ページ上の全部」という列は存在しないからです。結局、誰かがその塊の中から取引先名を探し、日付を探し、合計金額を探して、正しいセルに一つずつ転記することになります — まさに、なくしたかったはずの手作業です。
構造化データとは、すべての値にラベルが付いた状態を指します。「取引先」フィールド、「日付」フィールド、「合計金額」フィールド、そして明細行(請求書やレシートの 1 行 — 品目、数量、単価、金額)の配列が行ごとに並びます。この出力は JSON なので、Excel へのインポートは 1 ステップで済み、API 経由なら打ち直しゼロで会計ソフトへ転記できます。抽出の難しさは文字を読むことではなく、どの文字がどのフィールドに属するかを判断することにあります。
スマホの写真で十分か、それともスキャナーが必要か?
ほとんどの文書はスマホの写真で十分であり、実際、経費精算に入ってくるレシートの大半は写真です。ただし現実の写真は、傾いていたり、斜めから撮られていたり、天井照明の反射や散らかった机が背景に写り込んでいたりします。そのため本格的なパイプラインは抽出の前に前処理を行います — 傾き補正(回転した画像をまっすぐに直す処理)、ノイズ除去、そして背景から文書だけを切り出すクロップです。
前処理は多くを救いますが、撮影されなかったピクセルを生み出すことはできません。より鮮明で、平らで、明るく撮られた写真の方が抽出は安定し、その差は confidence score に直接表れます。実用的なコツは 3 つ:文書をフレームいっぱいに収める、感熱紙への直接の反射光を避ける、スマホを紙面とほぼ平行に保つ。撮影時の 10 秒の注意が、後のレビュー工程をひとつ減らします。
アップロードからデータになるまで、実際には何が起きるのか?
パイプラインは 4 段階です。第一に、画像をアップロードします — 写真なら JPG、PNG、WebP、スキャンしたまとまった書類なら複数ページの PDF や TIFF にも対応します。第二に、vision-language モデル(Inferio は Claude Vision を採用)が、人が読むのと同じようにページを読みます。レターヘッドの文字は取引先、「合計」の隣の数字は支払金額、ページ中央の表は明細行 — 文字を個別に拾うのではなく、レイアウトと意味を合わせて理解します。
第三に、モデルは構造化された JSON を返し、各フィールドには 0 から 1 の confidence score — その値が正しい可能性についてのモデル自身の推定 — が付きます。第四に、レビュー閾値(デフォルトは 0.75)を下回ったフィールドは human-in-the-loop の修正 UI に回され、レビュー担当者が元画像と抽出値を並べて見ながら数秒で修正します。閾値を超えたフィールドはそのまま通過します。結果として、量は自動化がこなし、人は不確実な一部だけを見る — 誤った合計金額が帳簿へ静かに転記されることはありません。
結果を Excel や会計ソフトに取り込むには?
経路は 3 つあり、自動化の度合いが順に上がります。手動の経路:抽出したフィールドをエクスポートして Excel で開く — データはすでにラベル付きの列なので、パースの必要なテキストではなく、すぐにフィルタや集計ができる行として届きます。プログラムの経路:文書の送信と結果の取得を行う REST API に加え、抽出完了の瞬間にシステムへ通知する署名付き webhook があり、ERP や社内ツールはポーリングなしでデータを取り込めます。
3 つ目は直接連携です。freee や MoneyForward との OAuth 連携により、抽出した請求書・領収書を、間にエクスポートファイルを挟まず帳簿へ転記します。日本の文書ではここにコンプライアンス層が重なります — 取引先の T 番号(インボイス制度の 13 桁の登録番号)は国税庁(NTA)の公開 API で検証され、税の行は消費税率 8% と 10% に区分され、保存文書は電子帳簿保存法の 7 年間の保存要件に従います。同じパイプラインが英語・日本語・ベトナム語の文書を読むため、言語が混在する書類の束にも別々のツールは不要です。
よくある質問
- ぼやけた写真や傾いた写真でも読み取れるか?
- 傾きは問題ありません — 傾き補正とノイズ除去の前処理が、回転・歪みのある写真を抽出前にまっすぐに直すため、角度だけが原因で失敗することはまれです。ぼやけはより難しく、前処理は撮影されなかったディテールを復元できないため、強くぼやけた値は低い confidence score で返り、推測の数字を転記する代わりに 0.75 の閾値で人のレビューに回ります。ひどくぼやけた写真は、レビューするより撮り直す方が速いです。
- Google Lens や一般的な画像テキスト化ツールと何が違うのか?
- それらのツールは生テキストで止まります — ページ上の全文字がひとつの塊で返り、読んで、解釈して、正しいフィールドに打ち直す作業が残ります。構造化抽出は、ラベル付きフィールド(取引先、日付、合計金額、明細行)をフィールドごとの confidence score 付きの JSON で返し、Excel へのインポートや会計ソフトへの転記に直接使えます。画像テキスト化の出力は人が読むもの、画像から構造化データの出力はソフトウェアが消費するものです。
- 対応している画像フォーマットは?
- 写真やスクリーンショットには JPG、PNG、WebP、スキャン文書には製品版で複数ページの PDF と TIFF に対応します。公開プレビューツールは 8MB までの画像ファイルを受け付けます — 通常のスマホ写真は 2〜5MB 程度なので、日常の撮影はリサイズなしでそのまま使えます。
- 結果を Excel に取り込めるか?
- 取り込めます。それこそが構造化出力の目的です — 抽出フィールドはラベル付きの列として届くため、Excel では取引先、日付、合計金額、税、明細行がきれいな行として開き、テキストのパース工程なしにすぐフィルタ・集計できます。スプレッドシートのエクスポートで足りなくなったチームは、REST API と webhook、あるいは freee や MoneyForward への直接連携に移行します。