C#'da Kimlik Belgelerini OCR Kullanarak Nasıl Okunur
Optik Karakter Tanıma (OCR) teknolojisi, görüntülerden metin çıkarma otomasyonu için vazgeçilmez bir araç haline gelmiştir, verimli veri alımı ve analizi sağlayarak insan hatasını önler. Bu teknoloji, ehliyetler, pasaportlar, kurum resmi belgeleri, kimlik kartları, oturma izin kartları ve çok dilli ve farklı ülkelerin seyahat belgelerini kesin sona erme tarihine ya da uyruk, doğum tarihi gibi bilgilerle okuma amaçlı kullanılabilir. Çıkarılan tüm veriler, makine öğrenimi ve yapay zeka yazılım ürünlerine daha fazla beslenebilir.
Bu makalede, Iron Software'dan bir C# OCR kütüphanesi olan IronOCR'u kimlik belgelerinden bilgi okumak ve çıkarmak için nasıl kullanabileceğimizi inceleyeceğiz. IronOCR, OCR görevleri için API'ler şeklinde anlaşılır ve esnek bir OCR çözümü sunarak, uygulamalarına OCR yazılım yeteneklerini entegre etmeyi düşünen geliştiriciler için mükemmel bir seçenek sunar.
IronOCR, bilgisayarların görüntülerden metin tanıyıp çıkarmasını, mevcut belgeleri taramasını veya metnin diğer görsel temsilini sağlamaktadır. Veri çıkarmak için, insanlar gibi metni algılayıp yorumlama yöntemini taklit eden bir dizi karmaşık işlem gerektirir. Bu süreç; Görüntü Ön İşleme, Metin Algılama, Karakter Bölme, Özellik Çıkarma, Karakter Tanıma ve hataları düzeltmek için Son İşlemeyi içerir.
C#'da OCR Kullanarak Kimlik Belgeleri Nasıl Okunur
- Visual Studio'da yeni bir C# projesi oluşturun
- IronOCR .NET kütüphanesini yükleyin ve projenize ekleyin.
- IronOCR kütüphanesini kullanarak kimlik belgesi görüntülerini okuyun.
- PDF'lerden kimlik belgelerini okuyun.
Iron Software tarafından oluşturulup sürdürülen IronOCR, C# Yazılım Mühendisleri için güçlü bir kütüphane olarak hizmet verir. .NET projelerinde OCR, Barkod Okuma ve Metin Çıkarma işlemlerini kolaylaştırır.
IronOCR'nin Ana Özellikleri
Metin Okuma Çok Yönlülüğü
JPEG, PNG, GIFF, TIFF, BMP gibi formatlar, Akışlar ve PDF'ler de dahil olmak üzere çeşitli formatlardan ilgili verileri okuyabilmek.
Görüntü İyileştirme
Deskew, Gürültü Azaltma, İkibinarize, Çözünürlük İyileştirme, Dilate ve daha fazlası gibi bir dizi filtre yoluyla düşük kaliteli taramalar ve fotoğraflar düzeltir.
Barkod Tanıma
20'den fazla barkod türünü içeren geniş bir format yelpazesinde barkodları okumayı destekler, ek olarak QR kod tanıma içerir.
Tesseract OCR Entegrasyonu
Görüntülerden metin çıkarmada optimum performans için son sürüm Tesseract OCR kullanır.
Esnek Çıktı Seçenekleri
Görüntü dosyalarından aranabilir PDF'ler, HTML ve metin içeriklerinin ihracatına olanak tanır, çıkarılan bilgilerin yönetiminde esneklik sunar.
Şimdi, IronOCR'u kullanarak kimlik belgelerini okumak için bir demo uygulaması geliştirmeye başlayalım.
Ön Koşullar
- Visual Studio: Visual Studio veya herhangi bir C# geliştirme ortamını yüklediğinizden emin olun.
- NuGet Paket Yöneticisi: Projenizde paketleri yönetmek için NuGet'i kullanabileceğinizden emin olun.
Adım 1: Visual Studio'da Yeni Bir C# Projesi Oluşturun
C# konsol uygulaması olarak yeni bir proje oluşturarak, veya alternatif olarak mevcut bir projeyi kullanarak başlayın. Menüden "Yeni Proje Ekle"'yi seçin, ardından aşağıdaki şablonlardan konsol uygulamasını seçin.

Aşağıdaki pencerelerde bir proje adı ve konumu sağlayın.

Gerekli .NET Sürümünü seçin.

Yeni projeyi oluşturmak için Oluştur düğmesini tıklayın.
Adım 2: IronOCR kütüphanesini yükleyin ve projenize ekleyin.
IronOCR, NuGet paket yöneticisinde bulunur ve aşağıdaki komutla paket yöneticisi konsolunda yüklenebilir:
Install-Package IronOcr
IronOCR, Visual Studio kullanılarak da yüklenebilir. NuGet Paket yöneticisini açın, aşağıdaki gibi IronOCR'u arayın ve yükle'ye tıklayın.

Yüklendikten sonra, uygulama veri çıkartma ve kimlik doğrulama için herhangi bir kimlik belgesini okumak için IronOCR'u kullanmaya hazırdır, el ile veri girişi işini azaltır.
Adım 3: IronOCR kütüphanesini kullanarak Kimlik Belgesi Görsellerini Okuyun
Kimlik belgelerini işlemek için OCR kullanımı birkaç adımı içerir, aşağıda detaylı olarak belirtilmiştir.
Görüntü Ön-İşleme
OCR kimlik belgesi işleme, metin içeren bir görüntü alınarak başlar. Bu görüntü, taranmış kimlik belgeleri, kimlik kartlarının fotoğrafı veya metnin herhangi bir görsel temsili olabilir. Kimlik kartı ön-işleme adımları, görüntünün kalitesini ve netliğini arttırmak için yeniden boyutlandırma, gürültü azaltma ve iyileştirmeyi içerebilir.
Metin Algılama
OCR algoritmaları, görüntüde metnin bulunduğu belirli veri alanlarını bulmalıdır. Bu adım, metin bölgelerini veya sınır kutularını tanımlamayı içerir.
Karakter Bölme
Metin bölgeleri veya veri alanları tanımlandıktan sonra, görüntü daha fazla analize tabi tutulur ve bireysel karakterler bölümlenir. Bu adım, İngilizce veya Çince gibi belirgin karakterler kullanan diller için hayati öneme sahiptir.
Özellik Çıkarma
OCR algoritmaları, farklı karakterleri ayırt etmeye yardımcı özellikleri çıkarmak için bölünmüş karakterleri analiz eder. Bu özellikler, strok desenleri, şekil ve elemanlar arasındaki uzamsal ilişkileri içerebilir.
Karakter Tanıma
Çıkartılan özelliklere dayanarak, OCR algoritmaları her bölümlenmiş karakteri sınıflandırır ve ona karşılık gelen bir metinsel temsil atar. Bu adımda genellikle sinir ağları gibi makine öğrenmesi modelleri kullanılır.
Son İşleme
Tanınan karakterler, hataları düzeltmek veya doğruluğu artırmak için son işlemeye tabi tutulabilir. Bu adım, sözlük tabanlı düzeltmeler, bağlam analizi veya dil modellemeyi içerebilir.
IronOCR kütüphanesi, yukarıdaki adımların tümünü hallederek, sadece birkaç satır kodla OCR yapmamıza olanak tanır, zaman alıcı sıkıcı görevleri kurtarır.
using IronOcr;
class Program
{
public static void Main()
{
// Configure IronTesseract with language and other settings
var ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false, // Disable reading of barcodes
BlackListCharacters = "`ë|^", // Blacklist specific characters
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode
}
};
// Define the OCR input image
using var ocrInput = new OcrInput("id1.png");
// Perform OCR on the input image
var ocrResult = ocrTesseract.Read(ocrInput);
// Display the extracted text
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
class Program
{
public static void Main()
{
// Configure IronTesseract with language and other settings
var ocrTesseract = new IronTesseract()
{
Language = OcrLanguage.EnglishBest,
Configuration = new TesseractConfiguration()
{
ReadBarCodes = false, // Disable reading of barcodes
BlackListCharacters = "`ë|^", // Blacklist specific characters
PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode
}
};
// Define the OCR input image
using var ocrInput = new OcrInput("id1.png");
// Perform OCR on the input image
var ocrResult = ocrTesseract.Read(ocrInput);
// Display the extracted text
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Friend Class Program
Public Shared Sub Main()
' Configure IronTesseract with language and other settings
Dim ocrTesseract = New IronTesseract() With {
.Language = OcrLanguage.EnglishBest,
.Configuration = New TesseractConfiguration() With {
.ReadBarCodes = False,
.BlackListCharacters = "`ë|^",
.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd
}
}
' Define the OCR input image
Dim ocrInput As New OcrInput("id1.png")
' Perform OCR on the input image
Dim ocrResult = ocrTesseract.Read(ocrInput)
' Display the extracted text
Console.WriteLine(ocrResult.Text)
End Sub
End Class
Girdi Görüntüsü
Aşağıda program için giriş olarak kullanılan örnek bir görüntü bulunmaktadır.

Çıktı

Kod Açıklaması
Yukarıdaki kod, kimlik belgesinden tüm metin alanlarını okumak için IronOCR kütüphanesini kullanır. IronOCR kütüphanesinden IronTesseract sınıfını kullanarak İngilizce dili ve bazı kara listeye alınmış karakterler ile yapılandırıyoruz. Daha sonra, OCR girdi değerini OcrInput sınıfı kullanarak ilan edip, görüntüden metni okuyoruz. Çıkarılmış metin alanları, konsol çıktısında görülebilir.
Adım 4: PDF'lerden Kimlik Belgelerini Okuyun.
PDF belgelerinden de okuyabiliriz. Bunun için IronSoftware'dan IronPDF kütüphanesini kullanabiliriz. İlk olarak, kütüphaneyi aşağıdaki gibi yükleyin:
Install-Package IronOcr
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
// Load the PDF document
var pdfReader = new PdfDocument("id1.pdf");
// Initialize IronTesseract for OCR
var ocrTesseract = new IronTesseract();
// Create OCR input from the PDF stream
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
// Perform OCR on the PDF input
var ocrResult = ocrTesseract.Read(ocrInput);
// Display the extracted text
Console.WriteLine(ocrResult.Text);
}
}
using IronOcr;
using IronPdf;
class Program
{
public static void Main()
{
// Load the PDF document
var pdfReader = new PdfDocument("id1.pdf");
// Initialize IronTesseract for OCR
var ocrTesseract = new IronTesseract();
// Create OCR input from the PDF stream
using var ocrInput = new OcrInput();
ocrInput.AddPdf(pdfReader.Stream);
// Perform OCR on the PDF input
var ocrResult = ocrTesseract.Read(ocrInput);
// Display the extracted text
Console.WriteLine(ocrResult.Text);
}
}
Imports IronOcr
Imports IronPdf
Friend Class Program
Public Shared Sub Main()
' Load the PDF document
Dim pdfReader = New PdfDocument("id1.pdf")
' Initialize IronTesseract for OCR
Dim ocrTesseract = New IronTesseract()
' Create OCR input from the PDF stream
Dim ocrInput As New OcrInput()
ocrInput.AddPdf(pdfReader.Stream)
' Perform OCR on the PDF input
Dim ocrResult = ocrTesseract.Read(ocrInput)
' Display the extracted text
Console.WriteLine(ocrResult.Text)
End Sub
End Class
Yukarıdaki kod, IronPDF kullanarak id1.pdf belgesini yükler ve PDF, OcrInput ve ocrTesseract olarak bir akışa geçirilir.
Çıktı

Lisanslama (Ücretsiz Deneme Mevcut)
IronOCR'u kullanmak için bir lisans anahtarına ihtiyaçınız olacak. Bu anahtar appsettings.json içinde yer almalıdır.
{
"IRONOCR-LICENSE-KEY": "your license key"
}
Deneme lisansı almak için bir kullanıcı e-posta kimliği sağlayın.

Kullanım Durumları
1. Finansal Hizmetlerde Kimlik Doğrulama:
- Kullanım Durumu: Bankalar ve finansal kurumlar, müşteri kabulü ve KYC süreçlerinde, pasaportlar, sürücü belgeleri ve kimlik kartları gibi kimlik belgelerini okumak için OCR kullanır.
- Faydaları: Hesap oluşturma, kredi başvuruları ve diğer finansal işlemler için doğru ve verimli kimlik doğrulamasını sağlar.
2. Sınır Kontrolü ve Göçmenlik:
- Kullanım Durumu: Göçmenlik yetkilileri, sınır kontrol noktalarında pasaport ve vizelerden bilgi okumak ve doğrulamak için OCR teknolojisini kullanır.
- Faydaları: Göçmenlik sürecini hızlandırır, güvenliği artırır ve manuel veri giriş hatalarını azaltır.
3. Erişim Kontrolü ve Güvenlik:
- Kullanım Durumu: Erişim kontrol sistemlerinde, ID kartlar, çalışan kartları veya güvenli alanlara giriş için yüz tanıma taramaları gibi bilgiler okumak için OCR kullanılır.
- Faydaları: Yalnızca yetkili kişilerin erişimini sağlayarak güvenliği artırır ve girişlerin dijital kaydını sağlar.
4. E-Devlet Hizmetleri:
- Kullanım Durumu: Devlet kurumları, çevrimiçi olarak sunulan ehliyet yenilemeleri, vergi beyannameleri ve izin başvuruları gibi hizmetlerde sunulan kimlik belgelerini işlemek ve doğrulamak için OCR kullanır.
- Faydaları: Verimliliği artırır, evrak işlerini azaltır ve genel vatandaş deneyimini geliştirir.
5. Sağlık Kimlik Doğrulama:
- Kullanım Durumu: Sağlık hizmeti sağlayıcıları, hasta kimlikleri, sigorta kartları ve diğer kimlik belgelerinden bilgi okumak için OCR kullanır.
- Faydaları: Doğru hasta tanımlamasını kolaylaştırır, doğru tıbbi kayıt yönetimini sağlar ve faturalama süreçlerini destekler.
6. Otomatik Otel Check-In:
- Kullanım Durumu: Oteller, misafirlerin kimlik belgelerini tarayarak kayıt işlemlerini hızlandırmak için OCR kullanarak otomatik check-in süreçleri uygular.
- Faydalar: Misafir deneyimini iyileştirir, check-in süresini azaltır ve misafir bilgi yakalama hatalarını en aza indirir.
7. Akıllı Şehirler ve Kamu Hizmetleri:
- Kullanım Durumu: Akıllı şehir girişimlerinde, toplu taşıma erişimi, kütüphane üyelikleri ve şehir etkinlik kayıtları gibi hizmetler için kimlik belgelerini okumak amacıyla OCR uygulanır.
- Faydalar: Kamu hizmetlerinin verimliliğini artırır, sorunsuz erişim sağlar ve kentsel yaşam deneyimlerini geliştirir.
8. Eğitim Yönetimi:
- Kullanım Durumu: Eğitim kurumları, öğrenci kabulü, sınavlar ve akademik belgelerin düzenlenmesi sırasında kimlik belgelerini işlemek ve doğrulamak için OCR kullanır.
- Faydalar: Doğru öğrenci kayıtlarını garanti eder, yönetim yükünü azaltır ve akademik süreçlerin bütünlüğünü artırır.
Sonuç
IronOCR kullanarak C# uygulamanıza OCR teknolojisini entegre etmek, kimlik belgelerinden etkili bir şekilde bilgi çıkarmanızı sağlar. Bu kapsamlı kılavuz, projenizi kurmanız ve kimlik belgesi görüntülerini okumak ve işlemek için IronOCR kullanmanız için gerekli adımları sağlar. Özelleştirme gereksinimlerinize uygun şekilde çıkarma sürecini adapte etmek için kod örnekleri ile deney yaparak kimlik belgesi verilerini işlemek için sorunsuz ve otomatik bir çözüm sağlayın.
Sıkça Sorulan Sorular
C# kullanarak kimlik belgelerinden nasıl metin çıkarabilirim?
IronSoftware'den özel bir OCR kütüphanesi olan IronOCR'yi kullanarak pasaport, kimlik kartları ve sürücü belgeleri gibi çeşitli kimlik belgelerinden metin çıkarabilirsiniz. IronOCR'yi Visual Studio'da NuGet Paket Yöneticisi aracılığıyla yükleyebilir ve metni görüntüler ve PDF'lerden okumak için metodlarını kullanabilirsiniz.
Kimlik belgeleri için OCR kullanmanın faydaları nelerdir?
OCR teknolojisi, IronSoftware'den gelen IronOCR gibi, kimlik belgelerinden metin çıkarımı işlemini otomatikleştirir, insan hatasını azaltır ve veri toplama verimliliğini artırır. Birden fazla dili ve belge formatını destekler, bu da onu finans, sağlık ve sınır kontrolü uygulamaları için ideal hale getirir.
C# projesinde OCR kurulumu için hangi adımlar gereklidir?
Bir C# projesinde OCR kurmak için Visual Studio'da yeni bir proje oluşturmanız, NuGet Paket Yöneticisi aracılığıyla IronOCR'yi yüklemeniz ve belgelerden metin okumak için API'sini kullanmanız gereklidir. IronOCR, OCR yeteneklerini entegre etmenize yardımcı olacak kapsamlı dokümantasyon ve örnekler sağlar.
Daha iyi OCR sonuçları için görüntü kalitesini nasıl geliştirebilirim?
IronOCR, görüntü kalitesini artırmak için Destekleme, Gürültü Giderme, İkili Yapma, Çözünürlüğü Artırma ve Genleşme gibi özellikler içerir. Bu filtreler, düşük kaliteli görüntülerden metin tanıma doğruluğunu artırarak güvenilir veri çıkarımı sağlar.
OCR teknolojisi kimlik belgelerinden barkod okuyabilir mi?
Evet, IronOCR kimlik belgelerinden barkod tanımayı destekler. QR kodları da dahil olmak üzere 20'den fazla barkod türünü okuyabilir, bu da hem metin hem de barkod verisi çıkarımı gerektiren uygulamalar için kullanışlıdır.
Kimlik doğrulamada OCR için belirli kullanım durumları var mı?
OCR, otomatik check-in, erişim kontrolü ve e-devlet hizmetleri gibi uygulamalar için kimlik doğrulamada yaygın olarak kullanılır. IronOCR, kimlik belgelerinden metin çıkarıp doğrulamak için gerekli araçları sağlar, güvenliği artırır ve süreçleri hızlandırır.
OCR ile çok dilli metin çıkarma işlemi nasıl yapılabilir?
IronOCR çok dilli desteği sunar, böylece çeşitli dillerdeki belgelerden metin çıkarabilirsiniz. Bu özellik, farklı dillerde belgelerin etkin bir şekilde işlenmesi gereken uluslararası uygulamalar için özellikle faydalıdır.
OCR kütüphaneleri için deneme sürümü mevcut mu?
Iron Software tarafından sunulan IronOCR, ücretsiz bir deneme sürümü sunar. Deneme lisans anahtarını almak için bir e-posta adresi sağlayarak, kütüphanenin özelliklerini satın alma taahhüdünde bulunmadan keşfedebilirsiniz.



