C#'ta Tesseract OCR Guven Degerlerini Kullanma | IronOCR

C# OCR Okuma Güvenini IronOCR ile Nasıl Elde Ederim

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

IronOCR'nin okuma guveni, OCR sisteminin tanınan metnin doğruluğu konusundaki ne kadar emin olduğunu işaret eder ve 0'dan 100'e kadar olan değerlere sahiptir; burada yüksek puanlar daha büyük güvenilirlik anlamına gelir—herhangi bir OcrResult nesnesi üzerindeki Confidence özelliği aracılığıyla erişilebilir.

OCR'daki (Optik Karakter Tanıma) okuma güvencesi, OCR sisteminin bir görüntü veya belgede tanıdığı metnin doğruluğuna verdiği güven seviyesi veya güvenilirliği ifade eder. Bu, OCR sisteminin tanınan metnin doğru olduğuna ne kadar emin olduğunun bir ölçüsüdür. Bu metrik taralı belgeleri, fotoğrafları veya metin kalitesinin değişebileceği görüntüleri işlerken özellikle önemli hale gelir.

Yüksek bir güven puanı, tanımanın doğru olduğuna dair yüksek bir güven seviyesini gösterir, düşük bir güven puanı ise tanımanın daha az güvenilir olabileceğine işaret eder. Bu güven seviyelerini anlamak, geliştiricilerin uygulamalarında uygun doğrulama mantığı ve hata yönetimi uygulamalarına yardımcı olur.

Hızlı Başlangıç: OCR Okuma Güvenini Tek Satırda Elde Et

Bir resim dosya yolu ile IronTesseract'ın Read metodunu kullanın, sonra döndürülen OcrResult üzerindeki Confidence özelliğine erişerek IronOCR'nin metin tanıma konusunda ne kadar emin olduğunu görebilirsiniz. OCR çıktı doğruluğunu değerlendirmeye başlamak için basit ve güvenilir bir yoldur.

  1. NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronOcr yükleyin

    PM > Install-Package IronOcr
  2. Bu kod parçasını kopyalayıp çalıştırın.

    double confidence = new IronOcr.IronTesseract().Read("input.png").Confidence;
  3. Canlı ortamınızda test etmek için dağıtın

    Bugün projenizde IronOCR kullanmaya başlayın ücretsiz deneme ile

    arrow pointer


C# ile Okuma Güveni Nasıl Elde Edilir?

Girdi görüntüsü üzerinde OCR yaptıktan sonra metnin güven seviyesi Confidence özelliğinde depolanır. 'using' ifadesini kullanarak, nesneleri kullanım sonrasında otomatik olarak imha edin. Görüntüler ve PDF'ler gibi belgeleri sırasıyla OcrImageInput ve OcrPdfInput sınıfları ile ekleyin. Read metodu, OcrResult nesnesini döndürecek ve bu, Confidence özelliğine erişim sağlar.

:path=/static-assets/ocr/content-code-examples/how-to/tesseract-result-confidence-get-confidence.cs
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add image
using var imageInput = new OcrImageInput("sample.tiff");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Get confidence level
double confidence = ocrResult.Confidence;
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("sample.tiff")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)

' Get confidence level
Private confidence As Double = ocrResult.Confidence
$vbLabelText   $csharpLabel

Dönen güven değeri 0'dan 100'e kadar değişmektedir, bu durumda:

  • 90-100: Mükemmel güven - Metin son derece güvenilirdir
  • 80-89: İyi güven - Metin genellikle küçük belirsizliklerle doğrudur
  • 70-79: Orta güven - Metin bazı hatalar içerebilir
  • 70'in altında: Düşük güven - Metin gözden geçirilmeli veya yeniden işlenmelidir

Farklı Seviyelerde Güven Nasıl Elde Ederim?

Yalnızca tüm belgenin güven seviyesini almakla kalmaz, aynı zamanda her sayfa, paragraf, satır, kelime ve karakterin güven seviyelerine de erişebilirsiniz. Ayrıca, bir veya daha fazla paragraftan oluşan ve yakın konumda bulunan bir blokun güvenini de alabilirsiniz.

:path=/static-assets/ocr/content-code-examples/how-to/tesseract-result-confidence-confidence-level.cs
// Get page confidence level
double pageConfidence = ocrResult.Pages[0].Confidence;

// Get paragraph confidence level
double paragraphConfidence = ocrResult.Paragraphs[0].Confidence;

// Get line confidence level
double lineConfidence = ocrResult.Lines[0].Confidence;

// Get word confidence level
double wordConfidence = ocrResult.Words[0].Confidence;

// Get character confidence level
double characterConfidence = ocrResult.Characters[0].Confidence;

// Get block confidence level
double blockConfidence = ocrResult.Blocks[0].Confidence;
' Get page confidence level
Dim pageConfidence As Double = ocrResult.Pages(0).Confidence

' Get paragraph confidence level
Dim paragraphConfidence As Double = ocrResult.Paragraphs(0).Confidence

' Get line confidence level
Dim lineConfidence As Double = ocrResult.Lines(0).Confidence

' Get word confidence level
Dim wordConfidence As Double = ocrResult.Words(0).Confidence

' Get character confidence level
Dim characterConfidence As Double = ocrResult.Characters(0).Confidence

' Get block confidence level
Dim blockConfidence As Double = ocrResult.Blocks(0).Confidence
$vbLabelText   $csharpLabel

Pratik Örnek: Güvene Göre Filtreleme

Düşük kaliteli taramalar gibi değişken kalitede belgeler işlerken, sonuçları filtrelemek için güven puanlarını kullanabilirsiniz:

using IronOcr;
using System.Linq;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Configure for better accuracy
ocrTesseract.Configuration.ReadBarCodes = false;
ocrTesseract.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd;

// Add image
using var imageInput = new OcrImageInput("invoice.png");
// Apply filters to improve quality
imageInput.Deskew();
imageInput.DeNoise();

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Filter words with confidence above 85%
var highConfidenceWords = ocrResult.Words
    .Where(word => word.Confidence >= 85)
    .Select(word => word.Text)
    .ToList();

// Process only high-confidence text
string reliableText = string.Join(" ", highConfidenceWords);
Console.WriteLine($"High confidence text: {reliableText}");

// Flag low-confidence words for manual review
var lowConfidenceWords = ocrResult.Words
    .Where(word => word.Confidence < 85)
    .Select(word => new { word.Text, word.Confidence })
    .ToList();

foreach (var word in lowConfidenceWords)
{
    Console.WriteLine($"Review needed: '{word.Text}' (Confidence: {word.Confidence:F2}%)");
}
using IronOcr;
using System.Linq;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Configure for better accuracy
ocrTesseract.Configuration.ReadBarCodes = false;
ocrTesseract.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd;

// Add image
using var imageInput = new OcrImageInput("invoice.png");
// Apply filters to improve quality
imageInput.Deskew();
imageInput.DeNoise();

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Filter words with confidence above 85%
var highConfidenceWords = ocrResult.Words
    .Where(word => word.Confidence >= 85)
    .Select(word => word.Text)
    .ToList();

// Process only high-confidence text
string reliableText = string.Join(" ", highConfidenceWords);
Console.WriteLine($"High confidence text: {reliableText}");

// Flag low-confidence words for manual review
var lowConfidenceWords = ocrResult.Words
    .Where(word => word.Confidence < 85)
    .Select(word => new { word.Text, word.Confidence })
    .ToList();

foreach (var word in lowConfidenceWords)
{
    Console.WriteLine($"Review needed: '{word.Text}' (Confidence: {word.Confidence:F2}%)");
}
Imports IronOcr
Imports System.Linq

' Instantiate IronTesseract
Dim ocrTesseract As New IronTesseract()

' Configure for better accuracy
ocrTesseract.Configuration.ReadBarCodes = False
ocrTesseract.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd

' Add image
Using imageInput As New OcrImageInput("invoice.png")
    ' Apply filters to improve quality
    imageInput.Deskew()
    imageInput.DeNoise()

    ' Perform OCR
    Dim ocrResult As OcrResult = ocrTesseract.Read(imageInput)

    ' Filter words with confidence above 85%
    Dim highConfidenceWords = ocrResult.Words _
        .Where(Function(word) word.Confidence >= 85) _
        .Select(Function(word) word.Text) _
        .ToList()

    ' Process only high-confidence text
    Dim reliableText As String = String.Join(" ", highConfidenceWords)
    Console.WriteLine($"High confidence text: {reliableText}")

    ' Flag low-confidence words for manual review
    Dim lowConfidenceWords = ocrResult.Words _
        .Where(Function(word) word.Confidence < 85) _
        .Select(Function(word) New With {Key .Text = word.Text, Key .Confidence = word.Confidence}) _
        .ToList()

    For Each word In lowConfidenceWords
        Console.WriteLine($"Review needed: '{word.Text}' (Confidence: {word.Confidence:F2}%)")
    Next
End Using
$vbLabelText   $csharpLabel

OCR'deki Karakter Tercihleri Nelerdir?

Güven seviyesinden farklı olarak, ilginç bir başka özellik de Choices olarak adlandırılır. Choices, alternatif kelime tercihleri listesi ve bunların istatistiksel önemi içerir. Bu bilgi, kullanıcının diğer olası karakterlere erişmesini sağlar. Bu özellik, birden fazla dil veya özel yazı tipleriyle çalışırken özellikle faydalıdır.

:path=/static-assets/ocr/content-code-examples/how-to/tesseract-result-confidence-get-choices.cs
using IronOcr;
using static IronOcr.OcrResult;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add image
using var imageInput = new OcrImageInput("Potter.tiff");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Get choices
Choice[] choices = ocrResult.Characters[0].Choices;
Imports IronOcr
Imports IronOcr.OcrResult

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("Potter.tiff")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)

' Get choices
Private choices() As Choice = ocrResult.Characters(0).Choices
$vbLabelText   $csharpLabel

Daha Fazla Yardımcı Karakter Tercihleri Nasıl Yardım Eder?

Alternatif karakter tercihleri birkaç fayda sağlar:

  1. Belirsizlik Giderme: 'O' ve '0' veya 'l' ve '1' gibi karakterler karıştırıldığında
  2. Yazı Tipi Varyasyonları: Stilize veya dekoratif yazı tipleri için farklı yorumlar
  3. Kalite Sorunları: Düşük kaliteli metinle ilgilenirken birden fazla olasılık
  4. Dil Bağlamı: Dil kurallarına dayalı alternatif yorumlar
OCR karakter tercihleri hata ayıklama görünümü, 'Section Eight' için güven skorlarını ve metin tanıma sonuçlarını gösterir

Karakter Tercihleri İle Çalışmak

İşte karakter tercihlerini daha iyi doğruluk için nasıl kullanacağınızı gösteren kapsamlı bir örnek:

using IronOcr;
using System;
using System.Linq;
using static IronOcr.OcrResult;

// Configure IronTesseract for detailed results
IronTesseract ocrTesseract = new IronTesseract();

// Process image with potential ambiguities
using var imageInput = new OcrImageInput("ambiguous_text.png");
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Analyze character choices for each word
foreach (var word in ocrResult.Words)
{
    Console.WriteLine($"\nWord: '{word.Text}' (Confidence: {word.Confidence:F2}%)");

    // Check each character in the word
    foreach (var character in word.Characters)
    {
        if (character.Choices != null && character.Choices.Length > 1)
        {
            Console.WriteLine($"  Character '{character.Text}' has alternatives:");

            // Display all choices sorted by confidence
            foreach (var choice in character.Choices.OrderByDescending(c => c.Confidence))
            {
                Console.WriteLine($"    - '{choice.Text}': {choice.Confidence:F2}%");
            }
        }
    }
}
using IronOcr;
using System;
using System.Linq;
using static IronOcr.OcrResult;

// Configure IronTesseract for detailed results
IronTesseract ocrTesseract = new IronTesseract();

// Process image with potential ambiguities
using var imageInput = new OcrImageInput("ambiguous_text.png");
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Analyze character choices for each word
foreach (var word in ocrResult.Words)
{
    Console.WriteLine($"\nWord: '{word.Text}' (Confidence: {word.Confidence:F2}%)");

    // Check each character in the word
    foreach (var character in word.Characters)
    {
        if (character.Choices != null && character.Choices.Length > 1)
        {
            Console.WriteLine($"  Character '{character.Text}' has alternatives:");

            // Display all choices sorted by confidence
            foreach (var choice in character.Choices.OrderByDescending(c => c.Confidence))
            {
                Console.WriteLine($"    - '{choice.Text}': {choice.Confidence:F2}%");
            }
        }
    }
}
Imports IronOcr
Imports System
Imports System.Linq
Imports IronOcr.OcrResult

' Configure IronTesseract for detailed results
Dim ocrTesseract As New IronTesseract()

' Process image with potential ambiguities
Using imageInput As New OcrImageInput("ambiguous_text.png")
    Dim ocrResult As OcrResult = ocrTesseract.Read(imageInput)

    ' Analyze character choices for each word
    For Each word In ocrResult.Words
        Console.WriteLine(vbCrLf & $"Word: '{word.Text}' (Confidence: {word.Confidence:F2}%)")

        ' Check each character in the word
        For Each character In word.Characters
            If character.Choices IsNot Nothing AndAlso character.Choices.Length > 1 Then
                Console.WriteLine($"  Character '{character.Text}' has alternatives:")

                ' Display all choices sorted by confidence
                For Each choice In character.Choices.OrderByDescending(Function(c) c.Confidence)
                    Console.WriteLine($"    - '{choice.Text}': {choice.Confidence:F2}%")
                Next
            End If
        Next
    Next
End Using
$vbLabelText   $csharpLabel

Gelişmiş Güven Stratejileri

Özel belgeler üzerinde çalışırken,pasaportlar,plakalar veyaMICR çekleri gibi güven puanları doğrulama için kritik hale gelir.

using IronOcr;

public class DocumentValidator
{
    private readonly IronTesseract ocr = new IronTesseract();

    public bool ValidatePassportNumber(string imagePath, double minConfidence = 95.0)
    {
        using var input = new OcrImageInput(imagePath);

        // Configure for passport reading
        ocr.Configuration.ReadBarCodes = true;
        ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.SingleLine;

        // Apply preprocessing
        input.Deskew();
        input.Scale(200); // Upscale for better accuracy

        var result = ocr.Read(input);

        // Find passport number pattern
        var passportLine = result.Lines
            .Where(line => line.Text.Contains("P<") || IsPassportNumberFormat(line.Text))
            .FirstOrDefault();

        if (passportLine != null)
        {
            Console.WriteLine($"Passport line found: {passportLine.Text}");
            Console.WriteLine($"Confidence: {passportLine.Confidence:F2}%");

            // Only accept if confidence meets threshold
            return passportLine.Confidence >= minConfidence;
        }

        return false;
    }

    private bool IsPassportNumberFormat(string text)
    {
        // Simple passport number validation
        return System.Text.RegularExpressions.Regex.IsMatch(text, @"^[A-Z]\d{7,9}$");
    }
}
using IronOcr;

public class DocumentValidator
{
    private readonly IronTesseract ocr = new IronTesseract();

    public bool ValidatePassportNumber(string imagePath, double minConfidence = 95.0)
    {
        using var input = new OcrImageInput(imagePath);

        // Configure for passport reading
        ocr.Configuration.ReadBarCodes = true;
        ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.SingleLine;

        // Apply preprocessing
        input.Deskew();
        input.Scale(200); // Upscale for better accuracy

        var result = ocr.Read(input);

        // Find passport number pattern
        var passportLine = result.Lines
            .Where(line => line.Text.Contains("P<") || IsPassportNumberFormat(line.Text))
            .FirstOrDefault();

        if (passportLine != null)
        {
            Console.WriteLine($"Passport line found: {passportLine.Text}");
            Console.WriteLine($"Confidence: {passportLine.Confidence:F2}%");

            // Only accept if confidence meets threshold
            return passportLine.Confidence >= minConfidence;
        }

        return false;
    }

    private bool IsPassportNumberFormat(string text)
    {
        // Simple passport number validation
        return System.Text.RegularExpressions.Regex.IsMatch(text, @"^[A-Z]\d{7,9}$");
    }
}
Imports IronOcr

Public Class DocumentValidator
    Private ReadOnly ocr As New IronTesseract()

    Public Function ValidatePassportNumber(imagePath As String, Optional minConfidence As Double = 95.0) As Boolean
        Using input As New OcrImageInput(imagePath)

            ' Configure for passport reading
            ocr.Configuration.ReadBarCodes = True
            ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.SingleLine

            ' Apply preprocessing
            input.Deskew()
            input.Scale(200) ' Upscale for better accuracy

            Dim result = ocr.Read(input)

            ' Find passport number pattern
            Dim passportLine = result.Lines _
                .Where(Function(line) line.Text.Contains("P<") OrElse IsPassportNumberFormat(line.Text)) _
                .FirstOrDefault()

            If passportLine IsNot Nothing Then
                Console.WriteLine($"Passport line found: {passportLine.Text}")
                Console.WriteLine($"Confidence: {passportLine.Confidence:F2}%")

                ' Only accept if confidence meets threshold
                Return passportLine.Confidence >= minConfidence
            End If

            Return False
        End Using
    End Function

    Private Function IsPassportNumberFormat(text As String) As Boolean
        ' Simple passport number validation
        Return System.Text.RegularExpressions.Regex.IsMatch(text, "^[A-Z]\d{7,9}$")
    End Function
End Class
$vbLabelText   $csharpLabel

Daha İyi Güven İçin Optimizasyon

Görüntü filtreleri ve ön işleme teknikleri kullanarak daha yüksek güven puanlarına ulaşmayı düşünün:

using IronOcr;

// Create an optimized OCR workflow
IronTesseract ocr = new IronTesseract();

using var input = new OcrImageInput("low_quality_scan.jpg");

// Apply multiple filters to improve confidence
input.Deskew();           // Correct rotation
input.DeNoise();          // Remove noise
input.Sharpen();          // Enhance edges
input.Dilate();           // Thicken text
input.Scale(150);         // Upscale for clarity

// Configure for accuracy over speed
ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
ocr.Configuration.EngineMode = TesseractEngineMode.TesseractOnly;

var result = ocr.Read(input);

Console.WriteLine($"Document confidence: {result.Confidence:F2}%");

// Generate confidence report
var confidenceReport = result.Pages
    .Select((page, index) => new
    {
        PageNumber = index + 1,
        Confidence = page.Confidence,
        WordCount = page.Words.Length,
        LowConfidenceWords = page.Words.Count(w => w.Confidence < 80)
    });

foreach (var page in confidenceReport)
{
    Console.WriteLine($"Page {page.PageNumber}: {page.Confidence:F2}% confidence");
    Console.WriteLine($"  Total words: {page.WordCount}");
    Console.WriteLine($"  Low confidence words: {page.LowConfidenceWords}");
}
using IronOcr;

// Create an optimized OCR workflow
IronTesseract ocr = new IronTesseract();

using var input = new OcrImageInput("low_quality_scan.jpg");

// Apply multiple filters to improve confidence
input.Deskew();           // Correct rotation
input.DeNoise();          // Remove noise
input.Sharpen();          // Enhance edges
input.Dilate();           // Thicken text
input.Scale(150);         // Upscale for clarity

// Configure for accuracy over speed
ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5;
ocr.Configuration.EngineMode = TesseractEngineMode.TesseractOnly;

var result = ocr.Read(input);

Console.WriteLine($"Document confidence: {result.Confidence:F2}%");

// Generate confidence report
var confidenceReport = result.Pages
    .Select((page, index) => new
    {
        PageNumber = index + 1,
        Confidence = page.Confidence,
        WordCount = page.Words.Length,
        LowConfidenceWords = page.Words.Count(w => w.Confidence < 80)
    });

foreach (var page in confidenceReport)
{
    Console.WriteLine($"Page {page.PageNumber}: {page.Confidence:F2}% confidence");
    Console.WriteLine($"  Total words: {page.WordCount}");
    Console.WriteLine($"  Low confidence words: {page.LowConfidenceWords}");
}
Imports IronOcr

' Create an optimized OCR workflow
Dim ocr As New IronTesseract()

Using input As New OcrImageInput("low_quality_scan.jpg")

    ' Apply multiple filters to improve confidence
    input.Deskew()           ' Correct rotation
    input.DeNoise()          ' Remove noise
    input.Sharpen()          ' Enhance edges
    input.Dilate()           ' Thicken text
    input.Scale(150)         ' Upscale for clarity

    ' Configure for accuracy over speed
    ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract5
    ocr.Configuration.EngineMode = TesseractEngineMode.TesseractOnly

    Dim result = ocr.Read(input)

    Console.WriteLine($"Document confidence: {result.Confidence:F2}%")

    ' Generate confidence report
    Dim confidenceReport = result.Pages _
        .Select(Function(page, index) New With {
            .PageNumber = index + 1,
            .Confidence = page.Confidence,
            .WordCount = page.Words.Length,
            .LowConfidenceWords = page.Words.Count(Function(w) w.Confidence < 80)
        })

    For Each page In confidenceReport
        Console.WriteLine($"Page {page.PageNumber}: {page.Confidence:F2}% confidence")
        Console.WriteLine($"  Total words: {page.WordCount}")
        Console.WriteLine($"  Low confidence words: {page.LowConfidenceWords}")
    Next
End Using
$vbLabelText   $csharpLabel

Özet

OCR güven puanlarını anlamak ve kullanmak, sağlam belge işleme uygulamaları oluşturmak için esastır. IronOCR'un güven özelliklerinden ve karakter tercihlerinden yararlanarak, geliştiriciler OCR iş akışlarında akıllı doğrulama, hata yönetimi ve kalite güvencesi mekanizmaları uygulayabilirler. Ekran görüntüleri,tablo veya özel belgeler işlerken, güven puanları doğru metin çıkarımını sağlamak için gerekli metrikleri sağlar.

Sıkça Sorulan Sorular

OCR guveni nedir ve neden önemlidir?

OCR guveni, OCR sisteminin metin tanima doğruluguna dair ne kadar emin oldugunu gösterir ve 0 ile 100 arasinda bir olcudur. IronOCR, bu metriği, OcrResult nesneleri uzerindeki Confidence özelligi araciligiyla sunar, boylece geliştiricilerin taranmis belgelerde, fotograflarda veya farkli metin kalitesine sahip resimlerde taninan metnin guvenilirligini degerlendirmelerine yardimci olur.

C#'ta OCR guvenini hizla nasil kontrol ederim?

IronOCR ile sadece bir satir kodla OCR guvenine ulasabilirsiniz: double confidence = new IronOcr.IronTesseract().Read("input.png").Confidence; Bu, IronOCR'un metin tanima hakkindaki eminligini gösteren 0-100 arasinda bir guven puani doner.

Farkli guven puani araliklari ne anlama gelir?

IronOCR guven puanlari: 90-100 (Mükemmel) demek, metin çok guvenilir; 80-89 (Iyi) demek, metin genellikle doğru, küçük belirsizlikler var; 70-79 (Orta) metnin bazi hatalar icerebilecegini gösterir; 70 altindaki puanlar (Dusuk) metnin incelenmesi veya yeniden işlemden gecmesi gerektigini gösterir.

Farkli metin ögeleri için guven seviyelerine nasil erişim saglarim?

IronOCR ile sayfalar, paragraflar, satirlar, kelimeler ve bireysel karakterler gibi bircok detayda guven seviyelerine erişim saglayabilirsiniz. OCR işlemi sonrasi, her seviyede OcrResult nesne yapisi araciligiyla Confidence özelligine erisebilirsiniz.

Guven puanlariyla alternatif kelime önerileri alabilir miyim?

Evet, IronOCR, alternatif kelime seçenekleri sunan ve guven puanlari ile birlikte Choices özelligini saglar. Bu özellik, OCR motoru ayni metnin birden fazla olasi yorumunu tanımladiginda akilli doğrulama mantigi uygulamaniz için yardimci olur.

Uygulamamda guven tabanli doğrulama nasil uygularim?

IronOCR'un Read metodunu kullandiktan sonra, OcrResult'un Confidence özelligini kontrol edin. Guven esit degerliklerine bagli koşullu mantigi uygulayin - ornegin, 90 uzerindeki sonuclari otomatik kabul edin, 70-90 arasindaki sonuclari gozden gecirin, ve 70 altindaki sonuclari yeniden isleyin veya manuel doğrulamaya tabi tutun.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku
İnceleyen
Jeff Fritz
Jeffrey T. Fritz
Baş Program Yöneticisi - .NET Topluluk Ekibi
Jeff, aynı zamanda .NET ve Visual Studio ekipleri için Baş Program Yöneticisi'dir. Microsoft geliştirici etkinlikleri (Microsoft Build, Microsoft Ignite, .NET Conf, Microsoft MVP Summit) için atölye çalışmaları, sunumlar yazar ve içerik planlar ve haftada iki kez yayınlanan 'Fritz ve Arkadaşları' canlı yayınının ev sahibidir.
Başlamaya Hazır mısınız?
Nuget İndirmeler 5,585,834 | Sürüm: 2026.4 just released
Still Scrolling Icon

Hala Kaydiriyor musunuz?

Hızlı bir kanit mi istiyorsunuz? PM > Install-Package IronOcr
örnekleri çalıştır resminizin aranabilir metne donuşünü izleyin.