C#で写真を読む方法 with IronOCR

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronOCRのReadPhotoメソッドは、TIFFやGIFのような複雑な写真フォーマットからテキストを抽出し、テキスト領域と信頼度スコアを備えた構造化された結果を提供します。これは、高品質のスキャンドキュメントで正確なOCR処理が必要な場合に最適化されています。

大量のドキュメント、特にTIFFファイルのようなスキャン画像を扱う場合、手作業でテキストを抽出するのは時間がかかり、エラーが発生しやすくなります。 光学式文字認識(OCR)は、このプロセスを自動化し、テキストを画像からデジタルデータに変換します。 OCRテクノロジーは、スキャンした文書や写真のような複雑な画像を処理し、検索可能で編集可能なテキストに変換します。 これにより、文書処理がスピードアップし、正確なデータ抽出が可能になります。

TIFFやGIFのようなフォーマットでOCRを使用すると、サイズや色深度、圧縮の問題にもかかわらず、膨大な量のデータをすばやくデジタル化できます。 IronOCRのReadPhoto機能により、開発者は画像からテキストを抽出し、キーワード検索やスキャンデータの検索可能なPDFへの変換などの高度な操作を実行します。 この技術は、効率的なデータ検索が重要な法的文書、アーカイブ、領収書を扱う業界に有益です。

このチュートリアルではresultsオブジェクトの操作を示します。 標準のReadPhotoを使用するタイミングについて説明します。 一般的な画像処理については、さまざまな画像フォーマットを読むを参照してください。

この機能を使用するには、IronOcr.Extension.AdvancedScanパッケージをインストールしてください。

クイックスタート: 複雑な画像からテキストを抽出するためにReadPhotoを使用

素早く始めましょう: 画像フレームでロードされたReadPhotoメソッドを使用して、すべてのテキストと領域を抽出します。 TIFF、GIF、および類似の写真フォーマットに最適化されています。

  1. IronOCR をNuGetパッケージマネージャでインストール

    PM > Install-Package IronOcr
  2. このコード スニペットをコピーして実行します。

    var result = new IronTesseract().ReadPhoto(new OcrInput().LoadImageFrame("photo.tiff", 0));
  3. 実際の環境でテストするためにデプロイする

    今日プロジェクトで IronOCR を使い始めましょう無料トライアル

    arrow pointer

ReadPhotoを使用してTIFF画像からテキストを抽出する方法は?

TIFFやGIFのような高品質な写真フォーマットの読み込みはIronOCRを使えば簡単です。 最初に、LoadImageFrameを使用して画像をロードします。 次に、ReadPhotoメソッドを使用して結果を取得します。 multi-page TIFF OCR tutorial では、さらに複数ページのドキュメント例を提供しています。

ご注意

  • TIFFには複数のフレームが含まれています; PageNumberパラメータはゼロベースのインデックスで必要です。
  • 現在、英語、中国語、日本語、韓国語、ラテンアルファベットに対応しています。
  • .NET Frameworkで高度なスキャンを使用するには、x64アーキテクチャが必要です。

)}]

どのような入力形式を使用すればよいですか?

ブラウザはネイティブでTIFF形式をサポートしていないため、TIFF入力こちらをダウンロードしてください。 以下の表示バージョンはWEBPに変換されています。

入力

ReadPhotoメソッドを実装する方法は?

この実装では、TIFF画像からテキストと領域情報を抽出することを示します。 その他の例については、フォトリーディングコード例をご覧ください。

:path=/static-assets/ocr/content-code-examples/how-to/read-photo-read-photo.cs
using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputPhoto = new OcrInput();
inputPhoto.LoadImageFrame("ocr.tiff", 0);

// Read photo
OcrPhotoResult result = ocr.ReadPhoto(inputPhoto);

// Index number refer to region order in the page
int number = result.TextRegions[0].PageNumber;

// Extract the text in the first region
string textinregion = result.TextRegions[0].TextInRegion;

//Extract the co_ordinates of the first text region
Rectangle region = result.TextRegions[0].Region;

var output = $"Text in First Region: {textinregion}\n"
             + $"Text Region:\n"
             + $"Starting X: {region.X}\n"
             + $"Starting Y: {region.Y}\n"
             + $"Region Width: {region.Width}\n"
             + $"Region Height: {region.Height}\n"
             + $"Result Confidence: {result.Confidence}\n\n"
             + $"Full Scnned Photo Text: {result.Text}";

Console.WriteLine(output);
Imports Microsoft.VisualBasic
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

' Instantiate OCR engine
Private ocr = New IronTesseract()

Private inputPhoto = New OcrInput()
inputPhoto.LoadImageFrame("ocr.tiff", 0)

' Read photo
Dim result As OcrPhotoResult = ocr.ReadPhoto(inputPhoto)

' Index number refer to region order in the page
Dim number As Integer = result.TextRegions(0).PageNumber

' Extract the text in the first region
Dim textinregion As String = result.TextRegions(0).TextInRegion

'Extract the co_ordinates of the first text region
Dim region As Rectangle = result.TextRegions(0).Region

Dim output = $"Text in First Region: {textinregion}" & vbLf & $"Text Region:" & vbLf & $"Starting X: {region.X}" & vbLf & $"Starting Y: {region.Y}" & vbLf & $"Region Width: {region.Width}" & vbLf & $"Region Height: {region.Height}" & vbLf & $"Result Confidence: {result.Confidence}" & vbLf & vbLf & $"Full Scnned Photo Text: {result.Text}"

Console.WriteLine(output)
$vbLabelText   $csharpLabel

OcrPhotoResultが提供するプロパティとは?

電話番号、座標、および信頼度スコアを含むOCRテキスト抽出のデバッグ出力

OcrPhotoResultクラスは抽出されたテキストを分析するための重要なプロパティを提供します。 OCR結果の操作に関する詳細情報は、データ出力と結果の操作のガイドを参照してください。

Text: OCR入力から抽出されたテキスト。
Confidence: 統計的な精度信頼度(0-1スケール、1が最高)。 結果の信頼性スコアについては、こちらをご覧ください。
TextRegions: 位置データを持つテキスト領域のリスト。 ターゲット抽出のための OCR 領域の定義に似ています。


いつReadPhotoを使用すべきか?

resultオブジェクトとサポートされるファイル形式です。 LoadImageFrameは特にTIFFやGIF形式を受け入れ、JPEGのような形式は拒否します。 Readは簡単な画像および一般的なテキスト抽出タスクに適しています。

なぜ ReadPhoto は TIFF と GIF フォーマットしかサポートしないのですか?

TIFFは、複数のページやフレームを1つのファイルに凝縮するためのロスレスフォーマットです。法律文書や医療画像など、高品質な複数画像の保存に使用されます。 JPEGよりも複雑なため、テキスト抽出には異なる方法が必要です。 専門的な処理により、プロ仕様の画像フォーマットで最適な結果を保証します。

TIFF画像は異なる圧縮方式を使用しているため、IronOCRはテキストを解読するために特殊なアルゴリズムを採用しています。 ReadPhotoの高度なアルゴリズムはTIFF圧縮特性を処理し、複雑な多層ドキュメントからの正確な抽出を確保します。

TIFF形式とJPEG形式の比較です:

特徴 TIFF(タグ付き画像ファイル形式) JPG/JPEG (共同写真専門家グループ)
圧縮 ロスレスまたは非圧縮(品質を保持) 非可逆圧縮(ファイルサイズを小さくすると品質が低下します)
ファイルサイズ 大きい(高品質とオプションの圧縮なしのため) より小さく、ウェブ使用と高速読み込みに最適化されています
画像の品質 高(プロフェッショナルな使用に最適、すべての詳細を保持) 低め(非可逆圧縮のため、画質が多少犠牲になります)
カラー深度 高い色深度をサポート(チャネルあたり最大16ビットまたは32ビット) 24ビットカラー(1670万色)
使用事例 プロフェッショナルな写真撮影、出版、スキャン、アーカイブ ウェブ画像、ソーシャルメディア、日常の写真
透明性 透明度とアルファチャンネルをサポート 透明性をサポートしていません
編集 複数回の編集に適しています(再保存しても品質が低下しません) 編集と保存を繰り返すと品質が低下します
互換性 プロフェッショナルソフトウェアで広くサポートされています すべてのプラットフォームとデバイスで普遍的にサポートされています
アニメーション アニメーションをサポートしていません アニメーションをサポートしていません
メタデータ 広範なメタデータ(EXIF、レイヤーなど)を保存します EXIFメタデータを保存しますが、制限があります

アプリケーションにReadのどちらを選ぶべきか?

アプリケーションのパフォーマンスを最適化するために、それぞれの生産ユースケースを考慮してください。 ReadPhotoは複雑なTIFF画像に適していますが、処理速度は遅いです。 JPEGは処理が高速ですが、品質が低いため、OCRの信頼率が低くなる可能性があります。 必要に応じて、画質補正フィルターを使用して、結果を改善します。

ReadPhotoで高品質のTIFF画像を使用すると最良の結果が得られ、精度が要求されるアーカイブや法務文書の処理に最適です。

画像が一定の品質基準を満たすようにすることで、効率と正確さのバランスを見つけます。 さまざまなドキュメントタイプに対応するには、ハイブリッドアプローチを実装してください:Readをスピードを優先する通常のタスクに使用してください。

よくある質問

ReadPhotoメソッドはどの画像形式をサポートしていますか?

IronOCRのReadPhotoメソッドは、TIFFやGIFのような複雑な写真フォーマットに最適化されています。高品質のスキャン文書や写真からテキストを抽出するために特別に設計されており、テキスト領域と信頼度スコアで構造化された結果を提供します。

TIFF画像からテキストを抽出する方法を教えてください。

IronOCRを使ってTIFF画像からテキストを抽出するには、OcrInput変数を作成し、LoadImageFrameを使って画像をロードし、ReadPhotoメソッドを適用します。プロセスは簡単です: var result = new IronTesseract().ReadPhoto(new OcrInput().LoadImageFrame("photo.tiff", 0));

ReadPhoto機能を使用するには、どのような追加パッケージが必要ですか?

IronOCRでReadPhoto関数を使用するには、NuGetからIronOcr.Extension.AdvancedScanパッケージをインストールする必要があります。この拡張機能はReadPhotoメソッドに必要な高度なスキャン機能を提供します。

標準のReadメソッドではなく、ReadPhotoを使用するのはどのような場合ですか?

TIFFやGIFのような複雑な写真フォーマットを扱う場合、特に正確なOCR処理を必要とする高品質のスキャン文書には、IronOCRのReadPhotoメソッドを使用してください。標準のReadメソッドは一般的な画像処理に適しています。

ReadPhotoはどのような結果をもたらしますか?

IronOCRのReadPhotoメソッドは、抽出されたテキスト領域と信頼度スコアを含む構造化されたOCR結果を提供します。OcrPhotoResultプロパティを通してこれらにアクセスし、抽出されたデータを見たり操作したりすることができます。

ReadPhotoは複数ページの文書を処理できますか?

はい、IronOCRのReadPhotoメソッドは複数ページのドキュメント、特に複数のフレームを含むことが多いTIFFファイルを処理できます。LoadImageFrameメソッドでは、複数ページのドキュメントで処理するフレームを指定できます。

写真にOCR技術を使用すると、どのような業界でメリットがありますか?

IronOCRは、法的文書、アーカイブ、領収書、効率的なデータ検索が重要な大量のスキャン文書を扱うビジネスに役立ちます。ReadPhotoメソッドは、これらの複雑な画像フォーマットからのテキスト抽出を自動化します。

ドキュメント管理でIronOCRを使用する利点は何ですか?

IronOCRを使用することで、スキャンされた文書を検索可能かつ編集可能なテキストに変換し、手作業によるデータ入力を減らし、文書のアクセス性を向上させることでワークフローを効率化します。

IronOCRはデータ精度をどのように向上させますか?

IronOCRはその高度な認識アルゴリズムと画像補正機能により、信頼性が高く正確なテキスト抽出プロセスを保証します。

IronOCRの無料トライアルを利用できますか?

はい、Iron SoftwareはIronOCRの無料トライアルを提供しており、ユーザーが購入決定をする前にその機能と能力をテストできます。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 6,136,090 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronOcr
サンプルを実行 あなたの画像が検索可能なテキストになるのをご覧ください。