IronOCR ハウツー ページ回転を検出する How to Detect Page Rotation in C# with IronOCR カーティス・チャウ 更新日:2026年1月31日 IronOCR をダウンロード NuGet ダウンロード DLL ダウンロード Windows 版 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English IronOCR の DetectPageOrientation メソッドは、PDF ドキュメントおよび画像内のページ回転角度 (0°、90°、180°、270°) を自動的に識別します。 これは各ページに対して RotationAngle プロパティを返すため、信頼スコアを使用したプログラムによる方向補正が可能になり、正確なテキスト抽出が可能になります。 ページ回転検出は、文書ページが時計回りか反時計回りに0度、90度、180度、270度回転したかを識別します。 この情報は、正確なレンダリングとテキスト抽出のために、ページが正しい向きで表示または処理されることを保証します。 クイックスタート: DetectPageOrientation を使用してページの回転を識別する この例では、PDF で IronOCR の DetectPageOrientation を使用して、RotationAngle プロパティにアクセスする方法を示します。 最小限のコードで、高速なページ回転の検出と修正を提供します。 IronOCR をNuGetパッケージマネージャでインストール PM > Install-Package IronOcr このコード スニペットをコピーして実行します。 var rotationResults = new IronOcr.OcrInput().LoadPdf("doc.pdf").DetectPageOrientation(); Console.WriteLine(rotationResults.First().RotationAngle); 実際の環境でテストするためにデプロイする 今日プロジェクトで IronOCR を使い始めましょう無料トライアル Free 30 Day Trial 最小限のワークフロー(5ステップ) ページ回転を検出するためのC#ライブラリをダウンロードする 読み取り用にPDFドキュメントと画像をインポートする `DetectPageOrientation`メソッドを使用して、すべてのページの回転を検出します。 **`RotationAngle`**プロパティにアクセスして、ページの回転を修正する。 **`HighConfidence`**プロパティにアクセスしてエッジケースを処理する。 ドキュメントのページ回転を検出するにはどうすればよいですか? ドキュメントを読み込んだ後、DetectPageOrientation メソッドを使用して各ページの回転を識別します。 このメソッドは、0度、90度、180度、270度に対応しています。 これらの標準回転を超える傾斜画像の場合は、 IronOCR の画像補正フィルターの Deskew メソッドを使用します。 次に、検出された角度を使用して画像を元の向きに回転させます。 サンプルPDFを使って作業してみましょう。 ご注意この関数は、テキストが密集したドキュメントで最も効果的に機能します。 :path=/static-assets/ocr/content-code-examples/how-to/detect-page-rotation-detect-page-rotation.cs using IronOcr; using System; using var input = new OcrInput(); // Load PDF document input.LoadPdf("Clockwise90.pdf"); // Detect page rotation var results = input.DetectPageOrientation(); // Ouput result foreach(var result in results) { Console.WriteLine(result.PageNumber); Console.WriteLine(result.HighConfidence); Console.WriteLine(result.RotationAngle); } $vbLabelText $csharpLabel 検出結果は何を意味しますか? PageNumber: ページのゼロベースのインデックス。 RotationAngle: 回転角度(度)。 方向を修正するには、Rotate メソッドと併用します。 HighConfidence: エッジケースを処理するための方向付け結果の信頼レベル。 どのような場合に高い信頼値を使用する必要がありますか? HighConfidence プロパティは、回転の検出が不確実である可能性のある、あいまいなドキュメントや品質の低いドキュメントにとって非常に重要です。 テキストがまばらであったり、レイアウトが特殊であったり、スキャンの質が悪かったりする文書は、信頼度のスコアが低くなることがよくあります。 このような場合は、追加の検証を実装するか、検出前に画質補正フィルターを適用してください。 この値を使用して、信頼性の低いページのフォールバック戦略または手動レビューを実装します。 たとえば、信頼度が80%を下回った場合は、ページを複数の方向で処理してOCR結果を比較するか、手動レビューのフラグを立てます。 IronOCRのコンピューター・ビジョン機能は、困難な文書のテキスト領域をより正確に識別するのに役立ちます。 検出された回転を修正するにはどうすればよいですか? 回転角度を特定した後、OCR の前に、Rotate メソッドを使用して、OcrInput オブジェクトに対して方向を修正します。 これにより、最適なテキスト認識精度が保証されます。 包括的な向きの修正については、画像の向き修正ガイドを参照してください。 修正プロセスは以下の通りです: // Apply rotation correction based on detection results if (result.RotationAngle != 0) { input.Rotate(360 - result.RotationAngle); // Rotate back to 0° } // Apply rotation correction based on detection results if (result.RotationAngle != 0) { input.Rotate(360 - result.RotationAngle); // Rotate back to 0° } $vbLabelText $csharpLabel 追加の前処理を必要とする文書については、OcrInput Classを検討してください。 検出速度と精度をカスタマイズするにはどうすればよいですか? DetectPageOrientation メソッドは、検出の詳細を制御するためのオプションのパラメータを受け入れます。 OrientationDetectionMode 列挙型を提供することで、要件に応じて検出速度と精度を調整できます。 実装方法は以下の通りです: :path=/static-assets/ocr/content-code-examples/how-to/detect-page-rotation-detect-page-rotation-advanced.cs using IronOcr; using System; using var input = new OcrInput(); // Load PDF document input.LoadPdf("Clockwise90.pdf"); // Detect page rotation with Fast mode var results = input.DetectPageOrientation(OrientationDetectionMode.Fast); // Ouput result foreach(var result in results) { Console.WriteLine(result.PageNumber); Console.WriteLine(result.HighConfidence); Console.WriteLine(result.RotationAngle); } $vbLabelText $csharpLabel どの検出モードを選択すればよいですか? OrientationDetectionMode には 4 つの速度オプションがあります。 警告 Balanced 、 Detailed 、 ExtremeDetailedにはIronOcr.Extensions.AdvancedScan パッケージが必要です。 これらのオプションは Windows x86 および Mac ARM では使用できません。 高速:精度が低い高速検出。 スピードが重要なドラフトや一括処理に最適です。 DetectPageOrientation のデフォルト。 マルチスレッドのサポートにより、何千ものページを効率的に処理します。 バランス:スピードと正確さのバランス。 本番作業に適しています。 AdvancedScan拡張機能を使用し、パフォーマンスを維持しながら精度を向上させています。 詳細:低速、高精度。 特に、複雑なレイアウトや内容が混在する文書など、正確で重要な作業に最適です。 ExtremeDetailed:最も遅いスピード、最も高い精度。 詳細が不十分な場合や、テキストが大きく歪んでいる場合にのみ使用してください。 パフォーマンスに関する一般的な考慮事項とは パフォーマンスはモードによって大きく異なります。 高速モードでは、1分間に数百ページを処理します; ExtremeDetailedでは、1ページあたり数秒かかる場合があります。 正確さの要件と時間的制約に基づいて選択してください。 最適なパフォーマンスのために 1.画像解像度: DPI設定を高くすると、精度は向上しますが、処理時間が長くなります。回転検出には通常 150-300 DPI で十分です。 2.ドキュメントのタイプ: テキスト密度の高いドキュメントは、疎なレイアウトよりも速く正確に処理されます。 フィルタウィザードを使用して、検出前に画質を最適化します。 3.リソース使用:大きなバッチを処理するときのメモリ使用量を監視してください。 progress tracking を実装して、フィードバックを提供し、システムリソースを管理します。 4.並列処理:一括処理にはIronOCRのマルチスレッドを使用し、精度を保ちながら複数の文書を同時に処理します。 混在言語のドキュメントはどのように扱えばよいですか? 方向が混在する文書の場合は、DetectPageOrientation を使用して各ページを個別に処理し、OCR の前にページごとの回転補正を適用します。 これにより、初期状態にかかわらず、適切なオリエンテーションが保証されます。 効果的なアプローチをご紹介しましょう: // Process each page with individual rotation detection for (int i = 0; i < results.Count; i++) { var pageResult = results[i]; // Apply rotation only to pages that need it if (pageResult.RotationAngle != 0 && pageResult.HighConfidence) { // Correct the specific page input.Pages[i].Rotate(360 - pageResult.RotationAngle); } } // Process each page with individual rotation detection for (int i = 0; i < results.Count; i++) { var pageResult = results[i]; // Apply rotation only to pages that need it if (pageResult.RotationAngle != 0 && pageResult.HighConfidence) { // Correct the specific page input.Pages[i].Rotate(360 - pageResult.RotationAngle); } } $vbLabelText $csharpLabel さまざまな品質のスキャン文書や複数ページのTIFFを含む複雑なシナリオでは、最適な結果を得るために各ページを個別に前処理してください。 混合フォーマットの入力を処理する場合、OcrResultクラスは詳細なページ情報を提供し、高度なエラー処理と品質管理ワークフローを可能にします。 高スループットの生産環境では、速度と精度のバランスをとるための高速 OCR 構成オプションを検討してください。 テキストとバーコードの両方を含むドキュメントを処理する場合は、IronOCRのOCR with Barcode & QR Reading機能を使用して、すべての情報を一度に抽出し、効率を向上させます。 よくある質問 ページ回転検出とは何ですか? ページ回転検出は、文書ページが0度、90度、180度、270度回転したかを識別します。これはIronOCRにとって、ページが正しい向きで処理され、PDFや画像からの正確なテキスト抽出とレンダリングを可能にするために非常に重要です。 C# を使っ て PDF 内のページ回転を素早 く 検出す る 方法は? 最小限のコードでIronOCRのDetectPageOrientationメソッドを使用する: var rotationResults = new IronOcr.OcrInput().LoadPdf("doc.pdf").DetectPageOrientation(); これはすべてのページの回転情報を返し、RotationAngleプロパティを通してアクセスできる。 どのような回転角度を検出できますか? IronOCRのDetectPageOrientationメソッドは0度、90度、180度、270度の標準的な回転を検出することができます。これらの標準的な回転を超える歪んだ画像には、画像補正フィルターからIronOCRの傾き補正メソッドを使用してください。 DetectPageOrientationはどのような情報を返しますか? このメソッドは、各ページについて3つの主要なプロパティを返します:PageNumber (ゼロベースのインデックス)、RotationAngle (IronOCRのRotateメソッドで使用する度単位の回転)、HighConfidence (エッジケースを扱うための信頼度)です。 HighConfidence プロパティは、どのような場合に使用するのですか? HighConfidenceプロパティは、回転の検出が不確かな曖昧な文書や低品質の文書を扱う場合に使用します。テキストがまばらであったり、レイアウトが特殊であったり、スキャン画質が悪かったりするドキュメントは、IronOCRの信頼度スコアが低くなることが多く、追加の検証や画質補正フィルターが必要になります。 この機能は、特定のタイプのドキュメントに最適ですか? IronOCRのDetectPageOrientation機能は、テキストが密集した文書に最適です。テキストが少ない文書や複雑なレイアウトの文書では、最適な結果を得るために検出の前に画質補正フィルタを適用することを検討してください。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 レビュー済み Jeffrey T. Fritz プリンシパルプログラムマネージャー - .NETコミュニティチーム Jeffはまた、.NETとVisual Studioチームのプリンシパルプログラムマネージャーです。彼は.NET Conf仮想会議シリーズのエグゼクティブプロデューサーであり、週に二回放送される開発者向けライブストリーム『Fritz and Friends』のホストを務め、テクノロジーについて話すことや視聴者と一緒にコードを書くことをしています。Jeffはワークショップ、プレゼンテーション、およびMicrosoft Build、Microsoft Ignite、.NET Conf、Microsoft MVPサミットを含む最大のMicrosoft開発者イベントのコンテンツを企画しています。 準備はできましたか? Nuget ダウンロード 5,525,971 | バージョン: 2026.3 リリース 無料トライアル NuGet 無料版 総ダウンロード数: 5,525,971 ライセンスを見る まだスクロールしていますか? すぐに証拠が欲しいですか? PM > Install-Package IronOcr サンプルを実行 あなたの画像が検索可能なテキストになるのをご覧ください。 NuGet 無料版 総ダウンロード数: 5,525,971 ライセンスを見る