C# Eğitiminde Faturadan Metin Nasıl Alınır
Fiş OCR Nasıl Yapılır?
- Tesseract ile Fiş OCR için C# kütüphanesini kurun
- Makbuz üzerinde OCR gerçekleştirmek için zengin özellikli C# kütüphanesini keşfedin
- Tesseract ile fişten veri çıkarın
- Çıkarılmış metin sonucunda belirli veriler arayın
- Makbuz üzerinde barkod değerlerini okuyun
1. IronOCR, Optik Karakter Tanıma API'si
IronOCR, resimlerden metin verilerini tanımak ve bilgi çıkarmak için kullanılabilecek bir OCR kütüphanesidir, fiş OCR dahil. Tarih itibariyle fiş tanıma için mevcut en doğru OCR motorları arasında kabul edilen Tesseract OCR motoru üzerine inşa edilmiştir. IronOCR, metni birden çok dilde tanıyabilir ve PNG, JPG, TIFF, JSON ve PDF formatları dahil olmak üzere farklı belge türlerinden önemli bilgileri okuyabilir.
Metin yönelimini otomatik olarak algılama yeteneği, IronOCR'nin fiş OCR için özellikle faydalı olan özelliklerinden biridir, hatta görüntü döndürülmüş veya eğilmiş olsa bile. Bu, makbuz yüklemelerindeki metin tanımının ve veri çıkarmanın doğruluğu için gereklidir, çünkü makbuzlar genellikle çok fazla bilgi içerir ve katlanabilir veya buruşabilir, bu da metnin kaymasına neden olabilir.
2. IronOCR Özellikleri
- C# OCR, fotoğraflardan, taranmış belgelerden ve PDF'lerden metinleri tarayıp tanımak için Derin Öğrenme kullanır.
- .NET OCR, 125'ten fazla küresel dili destekler.
- IronOCR, PNG, JPG, TIFF ve PDF dahil birçok dosya formatından resimlerden metin okuyabilir.
- Çıkarılmış bilgilerden metin, yapılandırılmış veri, JSON çıktısı veya arama yapılabilir PDF'ler üretilebilir.
- IronOCR, .NET sürümleri 5, 6 ve 7'yi (Core, Framework ve Standart) destekler.
- IronOCR, girişi metin bölgelerine göre farklı resimlere böler. Bilgisayarlı Görü kullanarak metin öğelerini içeren alanları tanımlar.
3. Visual Studio'da Yeni Bir Proje Oluşturma
Visual Studio'yu açın ve Dosya menüsüne gidin. "Yeni Proje"yi seçin ve ardından Konsol Uygulaması'nı seçin.
Proje adını girin ve uygun metin kutusuna yolu seçin. Ardından, Oluştur düğmesine tıklayın. Gerekli .NET Framework'ü seçin, aşağıdaki ekran görüntüsü gibi:

"Konsol Uygulaması" için proje yapısı şimdi oluşturulacak. Tamamlandığında, source code yazıp çalıştırabileceğiniz Program.cs dosyası açılacaktır.

4. IronOCR'yi Yükleyin
Visual Studio'da IronOCR'yi C# projenizle kolayca entegre edebilirsiniz. IronOCR, bir C#.NET projesi ile entegre etmenin birçok yolunu sunar. Burada bunlardan birini ele alacağız: NuGet Paket Yöneticisini kullanarak IronOCR'yi yükleyin.
Visual Studio'da Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi Konsolu bölümüne gidin.

Visual Studio pencerenizin alt kısmında yeni bir konsol belirecek. Konsola aşağıdaki komutu yazın ve enter tuşuna basın.
Install-Package IronOcr
IronOCR sadece birkaç saniye içinde yüklenecektir.
5. IronOCR Kullanarak Fişlerden Veri Çıkarımı
IronOCR, fişlerden detaylı veri çıkarmak ve erişmek için kullanılabilecek güçlü bir OCR kütüphanesidir. IronOCR ile bir fişe ait resmi makine tarafından okunabilir metne dönüştürebilir, bu da verilerin gizliliğini tehlikeye atmadan kolayca analiz edilip işlenebilir.
İşte IronOCR kullanarak bir fişten metin çıkarma örneği:
using IronOcr;
using System;
class Program
{
static void Main()
{
IronTesseract ocrTesseract = new IronTesseract();
// Load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
// Read the OCR result
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
string recognizedText = ocrResult.Text;
// Output the recognized text to the console
Console.WriteLine(recognizedText);
}
}
}
using IronOcr;
using System;
class Program
{
static void Main()
{
IronTesseract ocrTesseract = new IronTesseract();
// Load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
// Read the OCR result
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
string recognizedText = ocrResult.Text;
// Output the recognized text to the console
Console.WriteLine(recognizedText);
}
}
}
Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main()
Dim ocrTesseract As New IronTesseract()
' Load the receipt image
Using ocrInput As New OcrInput("ocr.png")
' Read the OCR result
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
Dim recognizedText As String = ocrResult.Text
' Output the recognized text to the console
Console.WriteLine(recognizedText)
End Using
End Sub
End Class
IronOCR'nin C# kullanarak resimlerden metin okuyuşu hakkında daha fazla detay için Resimden Metin Okuma eğiticisine bakın.
Yukarıdaki kodun çıktısı:
- LOGO SHOP
- LOREM IPSUM
- DOLOR SIT AMET CONSECTETUR
- ADIPISCING ELIT
- 1 LOREM IPSUM $3.20
- 2 ORNARE MALESUADA $9.50
- 3 PORTA FERMENTUM $5.90
- 4 SODALES ARCU $6.00
- 5 ELEIFEND $9.00
- 6 SEM NISIMASSA $0.50
- 7 DUIS FAMES DIS $7.60
- 8 FACILISI RISUS $810
- TOTAL AMOUNT $49.80
- CASH $50.00
6. IronOCR Kullanarak Fiş Görüntüsünden Belirli Veri Çıkarımı
IronOCR, geliştiricilerin taranmış fişlerden vergi tutarları ve tüccar isimleri gibi önemli bilgileri aldığını sağlar.
Fiş görüntüsünden toplam tutar değerinin çıkarıldığı bir örnek burada gösterilmiştir:
using IronOcr;
using System;
class Program
{
static void Main()
{
IronTesseract ocrTesseract = new IronTesseract();
// Set the language for OCR
ocrTesseract.Language = OcrLanguage.English;
// Load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
// Optimize the input image for OCR
ocrInput.DeNoise(true);
ocrInput.Contrast();
ocrInput.EnhanceResolution();
ocrInput.ToGrayScale();
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
// Search for the total amount in the OCR result
var totalAmount = ocrResult.Text.Contains("Total:") ? ocrResult.Text.Split("Total:")[1].Split("\n")[0] : "";
Console.WriteLine("Total Amount: " + totalAmount);
}
}
}
using IronOcr;
using System;
class Program
{
static void Main()
{
IronTesseract ocrTesseract = new IronTesseract();
// Set the language for OCR
ocrTesseract.Language = OcrLanguage.English;
// Load the receipt image
using (OcrInput ocrInput = new OcrInput("ocr.png"))
{
// Optimize the input image for OCR
ocrInput.DeNoise(true);
ocrInput.Contrast();
ocrInput.EnhanceResolution();
ocrInput.ToGrayScale();
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
// Search for the total amount in the OCR result
var totalAmount = ocrResult.Text.Contains("Total:") ? ocrResult.Text.Split("Total:")[1].Split("\n")[0] : "";
Console.WriteLine("Total Amount: " + totalAmount);
}
}
}
Imports Microsoft.VisualBasic
Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main()
Dim ocrTesseract As New IronTesseract()
' Set the language for OCR
ocrTesseract.Language = OcrLanguage.English
' Load the receipt image
Using ocrInput As New OcrInput("ocr.png")
' Optimize the input image for OCR
ocrInput.DeNoise(True)
ocrInput.Contrast()
ocrInput.EnhanceResolution()
ocrInput.ToGrayScale()
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
' Search for the total amount in the OCR result
Dim totalAmount = If(ocrResult.Text.Contains("Total:"), ocrResult.Text.Split("Total:")(1).Split(vbLf)(0), "")
Console.WriteLine("Total Amount: " & totalAmount)
End Using
End Sub
End Class
OcrInput sınıfı tarafından sağlanan çoklu ayarlar sayesinde, OCR sürecinde daha iyi doğruluk için giriş görüntüsünü optimize etmek mümkündür.
Giriş

Çıktı
- Total 16.5
7. Fişlerde Barkodları Okuyun
IronOCR, fişlerdeki metnin yanı sıra barkodları okumak için kullanılabilir. Fişlerdeki barkodları okumak için, BarcodeReader sınıfını ReadBarCodes yöntemi ile birlikte kullanmanız gerekecek.
Barkodları nasıl okuyacağınıza dair bir örnek işte burada:
using IronOcr;
using System;
class Program
{
static void Main()
{
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
// Load the receipt image with a barcode
using (var ocrInput = new OcrInput("b.png"))
{
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
// Output the barcode values to the console
foreach (var barcode in ocrResult.Barcodes)
{
Console.WriteLine(barcode.Value);
}
}
}
}
using IronOcr;
using System;
class Program
{
static void Main()
{
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
// Load the receipt image with a barcode
using (var ocrInput = new OcrInput("b.png"))
{
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
// Output the barcode values to the console
foreach (var barcode in ocrResult.Barcodes)
{
Console.WriteLine(barcode.Value);
}
}
}
}
Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main()
Dim ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True
' Load the receipt image with a barcode
Using ocrInput As New OcrInput("b.png")
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
' Output the barcode values to the console
For Each barcode In ocrResult.Barcodes
Console.WriteLine(barcode.Value)
Next barcode
End Using
End Sub
End Class
Giriş Görselleği

Çıktı Metni

8. Sonuç
Yukarıdaki makale, IronOCR'yi C# projenizde kurma ve kullanma sürecini, örnek kod parçacıkları ile birlikte açıklamaktadır.
resimlerden metin okuma eğiticisini okuyunuz.
IronOCR, belgeleri ve görselleri manipüle etmek için beş farklı .NET kütüphanesi içeren Iron Suite'in bir parçasıdır. Tüm Iron Suite'i yalnızca iki IronOCR lisansı fiyatına satın alabilirsiniz.
Üretim uygulamalarınızda IronOCR'yi ücretsiz deneme ile deneyin.
Sıkça Sorulan Sorular
IronOCR'u C#'ta bir makbuz resmi üzerinde OCR gerçekleştirmek için nasıl kullanabilirim?
Bir makbuz resmi üzerinde OCR gerçekleştirmek için IronOCR'u, OcrInput sınıfına görüntüyü yükleyerek ve itemize edilmiş listeler ve toplam miktarlar gibi metin verilerini çıkarmak için Read yöntemini kullanarak kullanabilirsiniz.
Fatura işleme açısından IronOCR'u Tesseract'a göre daha avantajlı yapan nedir?
IronOCR, artırılmış doğruluk, 125'ten fazla dile destek ve otomatik metin yönü algılama ve derin öğrenme yetenekleri gibi özellikler sunar. Ayrıca, NuGet Paket Yöneticisi'ni kullanarak C# projeleriyle daha kolay entegre edilir.
IronOCR'u bir Visual Studio projesine nasıl entegre ederim?
IronOCR'u bir Visual Studio projesine entegre etmek için NuGet Paket Yöneticisi'ni kullanın. Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi Konsolu'na gidin, ardından projeye kütüphaneyi eklemek için Install-Package IronOcr komutunu çalıştırın.
IronOCR, makbuz OCR'de birden fazla dili ele alabilir mi?
Evet, IronOCR birden fazla dili ele alabilir, 125'ten fazla küresel dili destekler ve çok dilli metin içeren makbuzları işlemek için idealdir.
IronOCR, makbuzlardaki metin tanıma doğruluğunu nasıl artırır?
IronOCR, derin öğrenme, otomatik metin yönü algılama ve daha iyi OCR sonuçları için OcrInput sınıfı kullanarak görüntüleri optimize etme yeteneği gibi özelliklerle metin tanıma doğruluğunu artırır.
IronOCR, makbuzlardan itemize edilmiş listeleri çıkarabilir mi?
Evet, IronOCR, OCR gerçekleştirdikten sonra metin verilerini işleyerek ve kalıp eşleme ile satır öğelerini tanımlayarak makbuzlardan itemize edilmiş listeleri çıkarmak için kullanılabilir.
IronOCR, makbuzlardaki barkod okuma işlemini nasıl ele alır?
IronOCR, makbuzlarda bulunan barkodları taramak ve çözmek için BarcodeReader sınıfı ve ReadBarCodes yöntemini kullanarak barkod okuma işlemini gerçekleştirir.
IronOCR, makbuz OCR için hangi dosya formatlarını işleyebilir?
IronOCR, PNG, JPG, TIFF ve PDF gibi çeşitli dosya formatlarını makbuz OCR için işleyebilir ve farklı giriş türleri için çok yönlüdür.
C#'ta fatura işlemeye yönelik IronOCR'un kurulumu hangi adımlardan oluşur?
Fatura işleme için IronOCR'un kurulumu, kütüphaneyi NuGet aracılığıyla yüklemeyi, makbuz resmi ile OcrInput'u yapılandırmayı ve metin verilerini çıkarmak için Read yöntemini kullanmayı içerir. Ayrıca kütüphanenin özelliklerini doğruluk artırmak için kullanarak toplamlar gibi belirli verileri çıkarabilirsiniz.



