IronOCR ile C#'ta Sayfa Döndürme Tespit Etme
IronOCR'nin DetectPageOrientation yöntemi, PDF belgelerinde ve görüntülerde sayfa döndürme açılarını (0°, 90°, 180°, 270°) otomatik olarak tanımlar. Her sayfa için bir RotationAngle özelliği döndürür ve doğru metin çıkarma için güven puanlarıyla programlı yön düzeltmesini mümkün kılar.
Sayfa döndürme algılama, bir belge sayfasının saat yönünde veya saat yönünün tersine 0, 90, 180 veya 270 derece döndürülüp döndürülmediğini belirler. Bu bilgi, sayfaların doğru bir biçimde görüntülenmesi veya işlenmesi için doğru yönlendirme ile sunulmasını ve metin çıkarımının doğru yapılmasını sağlar.
Hızlı Başlangıç: Sayfa Döndürmeyi Belirlemek için DetectPageOrientation'yi Kullanın
Bu örnek, DetectPageOrientation özelliğine erişmek için bir PDF üzerinde IronOCR'nin RotationAngle özelliğini kullanmayı göstermektedir. Hızlı sayfa döndürme algılama ve düzeltme işlemi için minimal kod ile sağlar.
-
IronOCR aşağıdaki NuGet Paket Yöneticisi ile yükleyin
PM > Install-Package IronOcr -
Bu kod parçacığını kopyalayın ve çalıştırın.
var rotationResults = new IronOcr.OcrInput().LoadPdf("doc.pdf").DetectPageOrientation(); Console.WriteLine(rotationResults.First().RotationAngle); -
Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronOCR kullanmaya başlayın
Asgari İş Akışı (5 adım)
- Sayfa dönüşünü algılamak için bir C# kütüphanesi indirin
- PDF belgesini ve okumak için görselleri içe aktarın
- Tüm sayfalar için döndürmeyi tespit etmek için
DetectPageOrientationyöntemini kullanın - RotationAngle özelliğine erişerek sayfa dönüşünü düzeltin
- HighConfidence özelliğine erişerek sınır durumlarını yönetin
Belgelerimde Sayfa Döndürmeyi Nasıl Tespit Edebilirim?
Bir belgeyi yükledikten sonra, her sayfanın dönüşünü belirlemek için DetectPageOrientation yöntemini kullanın. Bu yöntem 0, 90, 180 ve 270 dereceyi destekler. Bu standart döndürme değerlerinin ötesinde eğri görüntüler için, IronOCR'nin görüntü düzeltme filtrelerinden Deskew yöntemini kullanın. Ardından görüntüyü algılanan açıyı kullanarak orijinal yönüne geri döndürün. Bir örnek PDF ile çalışalım.
: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);
}
Imports IronOcr
Imports System
Private input = New OcrInput()
' Load PDF document
input.LoadPdf("Clockwise90.pdf")
' Detect page rotation
Dim results = input.DetectPageOrientation()
' Ouput result
For Each result In results
Console.WriteLine(result.PageNumber)
Console.WriteLine(result.HighConfidence)
Console.WriteLine(result.RotationAngle)
Next result
Tespit Sonuçları Ne Anlama Geliyor?
PageNumber: Sayfanın sıfır tabanlı dizini.RotationAngle: Derece cinsinden dönme açısı. Yönü düzeltmek içinRotateyöntemini kullanın.HighConfidence: Sınır durumlarını ele almak için yönlendirme sonucundaki güven düzeyi.
Yüksek Güven Değerlerini Ne Zaman Kullanmalıyım?
HighConfidence özelliği, döndürme algılamasının belirsiz olabileceği, anlamı belirsiz veya düşük kaliteli belgeler için çok önemlidir. Seyrek metin, alışılmadık düzen veya kötü tarama kalitesine sahip belgeler genellikle daha düşük güven puanları döndürür. Bu durumlarda, tespit öncesinde ek doğrulama uygulayın veya görüntü kalitesi düzeltme filtrelerini kullanın.
Düşük güvene sahip sayfalar için yedekleme stratejileri veya manuel inceleme yapmak için bu değeri kullanın. Örneğin, güvenilirlik %80'in altına düşerse, sayfayı birden fazla yönde işleyin ve OCR sonuçlarını karşılaştırın veya manuel inceleme için işaretleyin. IronOCR'nin bilgisayarlı görü özellikleri, zorlayıcı belgelerdeki metin bölgelerini daha doğru bir şekilde tanımlamaya yardımcı olur.
Tespit Edilen Döndürmeyi Nasıl Düzeltirim?
Dönüş açısını belirledikten sonra, OCR işleminden önce yönü düzeltmek için Rotate nesnenizde OcrInput yöntemini kullanın. Bu, en iyi metin tanıma doğruluğunu garanti eder. Kapsamlı yönlendirme düzeltmeleri için, görüntü yönlendirme düzeltme kılavuzuna bakın. İşte düzeltme süreci:
// 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°
}
' Apply rotation correction based on detection results
If result.RotationAngle <> 0 Then
input.Rotate(360 - result.RotationAngle) ' Rotate back to 0°
End If
Ek ön işleme gerektiren belgeler için, OCR işleminden önce kapsamlı belge hazırlama yöntemleri sunan OcrInput Sınıfını dikkate alın.
Tespit Hızı ve Doğruluğunu Nasıl Özelleştirebilirim?
DetectPageOrientation yöntemi, algılama ayrıntılarını kontrol etmek için isteğe bağlı bir parametre kabul eder. OrientationDetectionMode enumlarını kullanarak, gereksinimlerinize göre algılama hızını ve doğruluğunu ayarlayabilirsiniz.
İşte nasıl uygulayacağınız:
: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);
}
Imports IronOcr
Imports System
Using input As New OcrInput()
' Load PDF document
input.LoadPdf("Clockwise90.pdf")
' Detect page rotation with Fast mode
Dim results = input.DetectPageOrientation(OrientationDetectionMode.Fast)
' Output result
For Each result In results
Console.WriteLine(result.PageNumber)
Console.WriteLine(result.HighConfidence)
Console.WriteLine(result.RotationAngle)
Next
End Using
Hangi Tespit Modunu Seçmeliyim?
OrientationDetectionMode için dört hız seçeneği mevcuttur:
IronOcr.Extensions.AdvancedScan paketi gereklidir. Bu seçenekler Windows x86 ve Mac ARM'de mevcut değildir.- Hızlı: Daha düşük doğrulukla yüksek hızlı algılama. Taslaklar veya hızın kritik olduğu toplu işleme için idealdir.
DetectPageOrientationiçin varsayılan. Binlerce sayfayı verimli bir şekilde işler ve çoklu iş parçacığı desteği sunar. - Balanced: Dengeli hız ve doğruluk. Üretim görevleri için uygundur. AdvancedScan uzantısı özelliklerini kullanarak performansı korurken daha iyi doğruluk sağlar.
- Detaylı: Düşük hız, yüksek doğruluk. Karmaşık düzenler veya karışık içerikle belgeler gibi hassas veya kritik görevler için en iyisi. ExtremeDetailed: En yavaş hız, en yüksek doğruluk. Sadece Detaylı yetersiz olduğunda veya metin aşırı çarpık ve bozuk olduğunda kullanın.
Genel Performans Dikkate Alınması Gerekenler Nelerdir?
Modlar arasında performans önemli ölçüde farklılık göstermektedir. Hızlı mod, dakikada yüzlerce sayfa işler; ExtremeDetailed sayfa başına saniyeler sürebilir. Doğruluk gereksinimlerine ve zaman kısıtlamalarına göre seçin. En iyi performans için:
- Görüntü Çözünürlüğü: Daha yüksek DPI ayarları doğruluğu artırır ancak işlem süresini uzatır. 150-300 DPI genellikle döndürme tespiti için yeterlidir.
- Belge Türü: Metin yoğun belgeler, seyrek düzenlerden daha hızlı ve daha doğru işlenir. Algılamadan önce görüntü kalitesini optimize etmek için Filtre Sihirbazını kullanın.
- Kaynak Kullanımı: Büyük yığınları işlerken bellek kullanımını izleyin. İlerleme izlemeyi uygulayarak geri bildirim sağlayın ve sistem kaynaklarını yönetin.
- Paralel İşleme: Toplu işlemler için, birden fazla belgeyi aynı anda ve doğruluğu koruyarak işlemek amacıyla IronOCR'un çoklu iş parçacığını kullanın.
Farklı Yönlendirme İçeren Belgeleri Nasıl Ele Alırım?
Karışık yönlendirmeli belgeler için, her sayfayı DetectPageOrientation ile ayrı ayrı işleyin, ardından OCR işleminden önce sayfa sayfa döndürme düzeltmeleri uygulayın. Bu, başlangıç durumu ne olursa olsun doğru yönlendirilmesini sağlar. İşte etkili bir yaklaşım:
// 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);
}
}
' Process each page with individual rotation detection
For i As Integer = 0 To results.Count - 1
Dim pageResult = results(i)
' Apply rotation only to pages that need it
If pageResult.RotationAngle <> 0 AndAlso pageResult.HighConfidence Then
' Correct the specific page
input.Pages(i).Rotate(360 - pageResult.RotationAngle)
End If
Next
Karmaşık senaryolar için, değişken kalitedeki taralı belgeler veya çok sayfalı TIFF'ler içeren durumlarda, en iyi sonuçlar için her sayfayı ayrı ayrı ön işleme tabi tutun.
Karma biçimli girdileri işlerken, OcrResult Sınıfı ayrıntılı sayfa bilgileri sağlayarak gelişmiş hata yönetimi ve kalite kontrol işlemlerine olanak tanır. Yüksek çıkışlı üretim ortamları için, hız ve doğruluğu dengelemek amacıyla Hızlı OCR Yapılandırma seçeneklerini keşfedin.
Hem metin hem de barkod içeren belgeleri işliyorsanız, tüm bilgileri tek bir seferde çıkarmak ve verimliliği artırmak için IronOCR'un Barkod ve QR Okuma ile OCR yeteneklerini kullanın.
Sıkça Sorulan Sorular
Sayfa döndürme algılama nedir ve neden önemlidir?
Sayfa döndürme algılama, bir belge sayfasının 0°, 90°, 180° veya 270° derecelerinde döndürülüp döndürülmediğini belirler. Bu, IronOCR için sayfaların doğru yönlendirme ile işlenmesini, PDF'lerden ve görüntülerden doğru metin çıkışı ve render yapılmasını sağlamak açısından hayati önem taşır.
C# dilinde bir PDF'deki sayfa döndürmeyi hızlıca nasıl algılarım?
IronOCR'un DetectPageOrientation yöntemini minimum kodla kullanın: var rotationResults = new IronOcr.OcrInput().LoadPdf("doc.pdf").DetectPageOrientation(); Bu, tüm sayfalar için döndürme bilgisini döndürür ve RotationAngle özelliği ile erişilebilir.
Hangi döndürme açıları algılanabilir?
IronOCR'un DetectPageOrientation yöntemi 0°, 90°, 180° ve 270° derecelik standart döndürmeleri algılayabilir. Bu standart döndürmelerin ötesinde eğrilmiş görüntüler için IronOCR'un görüntü düzeltme filtrelerinden Deskew yöntemini kullanın.
DetectPageOrientation ne tür bilgiler döndürür?
Yöntem, her sayfa için üç anahtar özellik döndürür: PageNumber (sıfır bazlı indeks), RotationAngle (IronOCR'un Rotate yöntemi ile kullanmak için derece cinsinden döndürme) ve HighConfidence (kenar durumlarını yönetmek için güven seviyesi).
HighConfidence özelliğini ne zaman kullanmalıyım?
Döndürme algılamanın belirsiz olabileceği belirsiz veya düşük kaliteli belgelerle uğraşırken HighConfidence özelliğini kullanın. IronOCR'de genellikle düşük güven puanları döndüren ve ek doğrulama veya görüntü kalite düzeltme filtreleri gerektiren seyrek metin, alışılmadık düzenler veya zayıf tarama kalitesine sahip belgeler için.
Bu özellik belirli belge türleriyle en iyi şekilde çalışır mı?
IronOCR'un DetectPageOrientation işlevi, metin yoğun belgelerle en iyi şekilde çalışır. Metin içeriği az olan veya karmaşık düzenlere sahip belgeler için algılamadan önce en iyi sonuçlar için görüntü kalite düzeltme filtreleri uygulamayı düşünün.
IronOCR mevcut uygulamalara entegre edilebilir mi?
IronOCR, C# kullanarak mevcut uygulamalara kolayca entegre edecek şekilde tasarlanmıştır, bu sayede geliştiriciler, yazılımlarına minimal çabayla OCR işlevselliği ekleyebilir.
IronOCR'yi belge yönetimi için kullanmanın faydaları nelerdir?
IronOCR'yi belge yönetimi için kullanmak, taranmış belgeleri aranabilir ve düzenlenebilir metne dönüştürerek iş akışını hızlandırır, manuel veri giriş ihtiyacını azaltır ve belge erişilebilirliğini artırır.
IronOCR veri doğruluğunu nasıl artırabilir?
IronOCR, gelişmiş tanıma algoritmaları ve görüntü düzeltme özellikleriyle veri doğruluğunu artırır, böylece metin çıkarım sürecinin hem güvenilir hem de kesin olmasını sağlar.
IronOCR için ücretsiz bir deneme mevcut mu?
Evet, Iron Software, IronOCR'nin özelliklerini ve yeteneklerini, bir satın alma kararı vermeden önce test edebilmek için ücretsiz bir deneme sunar.

