C#va .Net-da o'zbek OCR

Ushbu hujjatning boshqa versiyalari:

IronOCR - bu C#dasturiy ta'minoti .NET kodlovchilariga rasm va PDF hujjatlaridagi matnlarni 126 tilda, shu jumladan o'zbek tilida o'qish imkonini beradi.

Bu faqat .NET ishlab chiqaruvchilari uchun qurilgan va boshqa Tesseract dvigatellaridan tezligi va aniqligi bo'yicha muntazam ravishda ustun bo'lib turadigan rivojlangan Tesseract vilkasi.

IronOcr.Languages.Uzbek tilining mazmuni

Ushbu paketda .NET uchun 102 ta OCR tili mavjud:

  • O'zbek
  • UzbekBest
  • UzbekFast
  • O'zbek Kirillcha
  • UzbekCyrillicBest
  • O'zbekCyrillicFast

Yuklab olish

O'zbek tili to'plami [O'zbek]
* Download as Zip
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Uzbek/'> NuGet

O'rnatish

Biz qilishimiz kerak bo'lgan birinchi narsa - .NET loyihangizga o'zbek OCR paketini o'rnatish.

PM> Install-Package IronOCR.Languages.Uzbek

Kod namunasi

Ushbu C#kod misoli o'zbekcha matnni Image yoki PDF hujjatidan o'qiydi.

//PM> Install-Package IronOcr.Languages.Uzbek
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput(@"images\Uzbek.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
//PM> Install-Package IronOcr.Languages.Uzbek
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput(@"images\Uzbek.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
'PM> Install-Package IronOcr.Languages.Uzbek
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek
Using Input = New OcrInput("images\Uzbek.png")
Dim Result = Ocr.Read(Input)
Dim AllText As Var = Result.Text
End Using
VB   C#

Nega IronOCR ni tanlash kerak?

Iron OCR - o'rnatilishi oson, to'liq va yaxshi hujjatlashtirilgan .NET dasturiy ta'minoti.

Hech qanday tashqi veb-xizmatlardan, doimiy to'lovlardan yoki Internet orqali maxfiy hujjatlarni jo'natmasdan 99,8% + OCR aniqligiga erishish uchun IronOCR-ni tanlang.

Nima uchun C#ishlab chiquvchilari IronOCR-ni Vanilla Tesseract o'rniga tanlashadi:

  • Bitta DLL yoki Nuget sifatida o'rnating
  • Tesseract 5, 4 va 3 dvigatellari qutidan tashqarida.
  • Aniqlik darajasi 99,8% odatdagi Tesseract-dan sezilarli darajada ustundir.
  • Yonuvchan tezlik va MultiThreading
  • MVC, WebApp, Desktop, Console & Server dasturi mos keladi
  • Exes yoki C ++ kodlari bilan ishlash mumkin emas
  • To'liq PDF OCR-quvvatlash
  • OCR-ni deyarli har qanday rasm fayli yoki PDF-ni bajarish uchun
  • To'liq .Net Core, Standard va FrameWork-ni qo'llab-quvvatlash
  • Windows, Mac, Linux, Azure, Docker, Lambda, AWS-da joylashtiring
  • Shtrixli kodlar va QR kodlarni o'qing
  • OCR-ni XHTML formatida eksport qiling
  • OCR-ni qidiriladigan PDF-hujjatlarga eksport qiling
  • Ko'p ishlov berishni qo'llab-quvvatlash
  • 126 xalqaro tillarning barchasi Nuget yoki OcrData fayllari orqali boshqariladi
  • Tasvirlar, koordinatalar, statistika va shriftlarni ajratib oling. Faqat matn emas.
  • Tesseract OCR-ni tijorat va xususiy dasturlarda qayta tarqatish uchun foydalanish mumkin.

Iron OCR haqiqiy dunyo tasvirlari va fotosuratlar kabi nomukammal hujjatlar yoki raqamli shovqin yoki nomukammallikka ega bo'lishi mumkin bo'lgan past aniqlikdagi skanerlar bilan ishlashda porlaydi.

.NET platformasi uchun boshqa bepul OCR kutubxonalari, boshqa .net tesseract API va veb-xizmatlari ushbu haqiqiy foydalanish holatlarida unchalik yaxshi ishlamaydi.

Tesseract 5 bilan OCR - C#-da kodlashni boshlang

Quyidagi kod namunasi C#yoki VB .NET yordamida rasmdagi matnni o'qish qanchalik osonligini ko'rsatadi.

OneLiner

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
VB   C#

Salom dunyo sozlanishi

// PM> Install-Package IronOCR.Languages.Uzbek
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... siz istalgan sonli rasmlarni qo'shishingiz mumkin
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Uzbek
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... siz istalgan sonli rasmlarni qo'shishingiz mumkin
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Uzbek
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek
Using Input = New OcrInput()
Input.AddImage("images/sample.jpeg") var Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

C#PDF OCR

Xuddi shu yondashuvdan har qanday PDF-hujjatdan matn chiqarish uchun ham foydalanish mumkin.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Bundan tashqari, OCR-ga PDF-sahifaning aniq raqamlarini tanlashimiz mumkin

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF-ning har bir sahifasi uchun 1 ta sahifa
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Bundan tashqari, OCR-ga PDF-sahifaning aniq raqamlarini tanlashimiz mumkin

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF-ning har bir sahifasi uchun 1 ta sahifa
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Bundan tashqari, OCR-ga PDF-sahifaning aniq raqamlarini tanlashimiz mumkin

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' PDF-ning har bir sahifasi uchun 1 ta sahifa
End Using
VB   C#

MultiPage TIFF-lar uchun OCR

OCR Reading TIFF fayl formati, shu jumladan bir nechta sahifali hujjatlar. TIFF-ni to'g'ridan-to'g'ri qidirish mumkin bo'lgan matnli PDF-faylga aylantirish mumkin.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput()
input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Shtrixli kodlar va QR

Iron OCR-ning o'ziga xos xususiyati shundaki, u matnni skanerlash paytida hujjatlardagi shtrix kodlari va QR kodlarini o'qiy oladi. OcrResult.OcrBarcode sinfining OcrResult.OcrBarcode ishlab chiquvchiga har bir skaner qilingan shtrix-kod haqida batafsil ma'lumot beradi.

// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// turi va joylashuvi xususiyatlari ham ochiq
}
}
// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// turi va joylashuvi xususiyatlari ham ochiq
}
}
' using IronOcr;
Dim Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True

Using input = New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' turi va joylashuvi xususiyatlari ham ochiq
Next Barcode
End Using
VB   C#

Tasvirlarning aniq yo'nalishlari bo'yicha OCR

Iron OCR-ning barcha skanerlash va o'qish usullari biz sahifaning yoki sahifalarning qaysi qismidan matnni o'qishni xohlayotganimizni aniq ko'rsatib beradi. Bu standartlashtirilgan shakllarni ko'rib chiqishda juda foydalidir va juda ko'p vaqtni tejash va samaradorlikni oshirishi mumkin.

Hosil viloyatlariga foydalanish uchun, biz uchun bir tizim mos yozuvlar kiritish kerak bo'ladi System.Drawing biz foydalanishingiz mumkin, shunday qilib, System.Drawing.Rectangle ob'ektni.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Olchamlari pxda

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Olchamlari pxda

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Olchamlari pxda

Input.Add("document.png", ContentArea)

Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Past sifatli skanerlash uchun OCR

Iron OCR OcrInput klassi oddiy Tesseract o'qiy olmaydigan skanerlarni tuzatishi mumkin.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew(); // aylanish va istiqbolni tuzatadi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew(); // aylanish va istiqbolni tuzatadi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew() ' aylanish va istiqbolni tuzatadi
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR natijalarini qidiriladigan PDF sifatida eksport qiling

Ko'chiriladigan matn satrlari bilan PDF-ga rasm. Qidiruv tizimlari va ma'lumotlar bazalari tomonidan indekslanishi mumkin.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput()
input.Title = "Quarterly Report" input.AddImage("image1.jpeg")
input.AddImage("image2.png")
input.AddImage("image3.gif")

Dim Result = Ocr.Read(input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

PDF formatida qidirish uchun TIFF

TIFF hujjatini (yoki rasm fayllarining biron bir guruhini) to'g'ridan-to'g'ri intranet, veb-sayt va Google qidiruv tizimlari tomonidan indeksatsiya qilinishi mumkin bo'lgan qidiriladigan PDF-ga o'tkazing.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput()
input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

OCR natijalarini HTML sifatida eksport qiling

OCR tasvirini XHTML formatiga o'tkazish.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek
Using Input = New OcrInput()
input.Title = "Html Title" input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(input)
Result.SaveAsHocrFile("results.html")
End Using
VB   C#

OCR tasvirni yaxshilash filtrlari

IronOCR OCR ishlashini yaxshilash uchun OcrInput moslamalari uchun noyob filtrlarni taqdim etadi.

Rasmni yaxshilash kodi misoli

OCR natijalarini yaxshiroq va tezroq chiqarish uchun OCR kirish tasvirlarini yuqori sifatga keltiradi.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew(); // aylanish va istiqbolni tuzatadi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew(); // aylanish va istiqbolni tuzatadi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' raqamli shovqin va yomon skanerlashni to'g'rilaydi
Input.Deskew() ' aylanish va istiqbolni tuzatadi
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR tasvir filtrlari ro'yxati

IronOCR-ga o'rnatilgan OCR ishlashini yaxshilash uchun kirish filtrlariga quyidagilar kiradi.

  • OcrInput.Rotate (ikki daraja) - Tasvirlarni soat yo'nalishi bo'yicha bir necha darajaga aylantiradi. Soatning teskari yo'nalishi bo'yicha salbiy raqamlardan foydalaning.
  • OcrInput.Binarize () - Ushbu rasm filtri har bir pikselni qora yoki oq rangga aylantirib, o'rtasini ochmaydi . Matnning fon bilan kontrasti juda past bo'lgan OCR ishlashini yaxshilashi mumkin
  • OcrInput.ToGrayScale () - Ushbu rasm filtri har bir pikselni kulrang rang soyasiga aylantiradi. OCR aniqligini oshirish ehtimoldan yiroq, ammo tezlikni oshirishi mumkin
  • OcrInput.Contrast () - kontrastni avtomatik ravishda oshiradi. Ushbu filtr ko'pincha past kontrastli skanerlarda OCR tezligini va aniqligini yaxshilaydi.
  • OcrInput.DeNoise () - Raqamli shovqinni olib tashlaydi. Ushbu filtr faqat shovqin kutilgan joyda ishlatilishi kerak.
  • OcrInput.Invert () - har qanday rangni teskari tomonga o'zgartiradi . Masalan, Oq qora rangga aylanadi: qora oq rangga ega bo'ladi.
  • OcrInput.Dilate () - kengaytirilgan morfologiya. Dilatatsiya tasvirdagi ob'ektlar chegaralariga piksellar qo'shadi. Erodening qarshisida
  • OcrInput.Erode () - kengaytirilgan morfologiya. Eroziya ob'ekt chegaralaridagi piksellarni olib tashlaydiOpposite of Dilate
  • OcrInput.Deskew () - Rasmni yuqoriga ko'tarish va to'g'ri burchakli qilib aylantiradi. Bu OCR uchun juda foydali, chunki skess skanerlash uchun Tesseract bardoshliligi 5 darajagacha bo'lishi mumkin.
  • OcrInput.DeepCleanBackgroundNoise () - Og'ir fonni shovqinlarni yo'qotish. Ushbu filtrdan faqat hujjatning orqa fonidagi shovqin ma'lum bo'lgan taqdirda foydalaning, chunki bu filtr toza hujjatlarning OCR aniqligini pasayishiga olib keladi va protsessor juda qimmatga tushadi.
  • OcrInput.EnhanceResolution - past sifatli tasvirlarning o'lchamlarini yaxshilaydi. Ushbu filtr tez-tez talab qilinmaydi, chunki OcrInput.MinimumDPI va OcrInput.TargetDPI avtomatik ravishda past aniqlikdagi yozuvlarni ushlaydi va hal qiladi.

CleanBackgroundNoise. Bu biroz vaqt talab qiladigan parametr; ammo, bu kutubxonani raqamli tasvir ichidagi raqamli shovqinlarni, qog'oz burmalarni va boshqa kamchiliklarni avtomatik ravishda tozalashga imkon beradi, aks holda uni boshqa OCR kutubxonalari o'qiy olmaydi.

EnhanceContrast - bu Iron OCR-ning rasm fonida matn kontrastini avtomatik ravishda oshirishi, OCR aniqligini oshirishi va umuman OCR tezligi va ishlash tezligini oshiradigan parametr.

EnhanceResolution - bu past aniqlikdagi rasmlarni avtomatik ravishda aniqlaydigan (275 dpi dan past bo'lgan) rasmni avtomatik ravishda yuqori darajaga ko'taradigan va keyin OCR kutubxonasi tomonidan mukammal o'qilishi uchun barcha matnni keskinlashtiradigan sozlama. Ushbu operatsiyaning o'zi ko'p vaqt talab qiladigan bo'lsa-da, odatda rasmdagi OCR operatsiyasining umumiy vaqtini qisqartiradi.

Til Iron OCR 22 xalqaro til paketlarini qo'llab-quvvatlaydi, va til sozlamalari bir OCR operatsiya uchun qo'llanilishi uchun bir yoki bir necha bir necha tilni tanlash uchun foydalanish mumkin.

Strategy Iron OCR ikkita strategiyani qo'llab-quvvatlaydi. Hujjatni tez va aniqroq skanerdan o'tkazishga yoki jumlada so'zlarning bir-biriga statistik bog'liqligiga qarab, OCR matnining aniqligini avtomatik ravishda yaxshilash uchun ba'zi sun'iy intellekt modellaridan foydalanadigan rivojlangan strategiyadan foydalanishni tanlashimiz mumkin. .

ColorSpace - bu biz OCR-ni kul rang yoki rangda tanlashimiz mumkin bo'lgan parametr. Odatda, kul rang eng yaxshi variant. Biroq, ba'zida o'xshash rangga ega bo'lgan, lekin juda boshqacha rangdagi matnlar yoki fonlar mavjud bo'lganda, to'liq rangli bo'shliq yaxshi natijalarni beradi.

DetectWhiteTextOnDarkBackgrounds. Odatda, barcha OCR kutubxonalari oq fonda qora matnni ko'rishni kutishadi. Ushbu parametr Iron OCR-ga negativlarni yoki oq matnli quyuq sahifalarni avtomatik ravishda aniqlash va ularni o'qish imkonini beradi.

InputImageType. Ushbu parametr ishlab chiquvchiga OCR kutubxonasini to'liq hujjatni yoki skrinshot kabi parchani ko'rib chiqayotganligi to'g'risida ko'rsatma berishiga imkon beradi.

RotateAndStraighten - bu temir OCR-ga nafaqat aylantiriladigan, balki matnli hujjatlarning fotosuratlari kabi istiqbolga ega bo'lgan hujjatlarni o'qishning noyob qobiliyatini ta'minlaydigan rivojlangan sozlama.

ReadBarcodes - bu Iron OCR-ga avtomatik ravishda shtrix-kodlarni va QR-kodlarni sahifalarda o'qish imkonini beradigan, shuningdek, qo'shimcha vaqt yukini qo'shmasdan matnni o'qiydigan foydali xususiyatdir.

Rang chuqurligi. Ushbu parametr OCR kutubxonasi rangning chuqurligini aniqlash uchun pikselga qancha bit ishlatishini aniqlaydi. Rangning yuqori chuqurligi OCR sifatini oshirishi mumkin, ammo OCR ishini bajarish uchun zarur bo'lgan vaqtni ko'paytiradi.

126 ta til to'plami

Iron OCR ushbu veb-saytdan yoki NuGet Package Manager- dan yuklab olish mumkin bo'lgan DLL sifatida tarqatiladigan til paketlari orqali 126 ta xalqaro tillarni qo'llab-quvvatlaydi.

Tillarga nemis, frantsuz, ingliz, xitoy, yapon va boshqa tillar kiradi. MRZ, MICR pasportlari, moliyaviy ma'lumotlar, avtoulov raqamlari va boshqa ko'plab narsalar uchun maxsus til paketlari mavjud. Siz har qanday tesseract ".traineddata" faylidan foydalanishingiz mumkin, shu jumladan o'zingiz yaratgan fayllardan.

Til misoli

Boshqa OCR tillaridan foydalanish.

// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Agar kerak bo'lsa, rasm filtrlarini qo'shing
// Bunday holda, hatto o'ylangan kiritish juda past sifatga ega
// IronTesseract an'anaviy Tesseract qila olmaydigan narsalarni o'qiy oladi.

var Result = Ocr.Read(input);

// Konsol arab tilini Windows-da osongina chop eta olmaydi.
// Buning o'rniga diskka saqlaylik.
Result.SaveAsTextFile("arabic.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Agar kerak bo'lsa, rasm filtrlarini qo'shing
// Bunday holda, hatto o'ylangan kiritish juda past sifatga ega
// IronTesseract an'anaviy Tesseract qila olmaydigan narsalarni o'qiy oladi.

var Result = Ocr.Read(input);

// Konsol arab tilini Windows-da osongina chop eta olmaydi.
// Buning o'rniga diskka saqlaylik.
Result.SaveAsTextFile("arabic.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic

Using input = New OcrInput()
input.AddImage("img/arabic.gif")
' Agar kerak bo'lsa, rasm filtrlarini qo'shing
' Bunday holda, hatto o'ylangan kiritish juda past sifatga ega
' IronTesseract an'anaviy Tesseract qila olmaydigan narsalarni o'qiy oladi.

Dim Result = Ocr.Read(input)

' Konsol arab tilini Windows-da osongina chop eta olmaydi.
' Buning o'rniga diskka saqlaylik.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Ko'p tilli misol

Bir vaqtning o'zida bir nechta tillardan foydalanib OCR qilish ham mumkin. Bu haqiqatan ham ingliz tilidagi metadata va Unicode hujjatlaridagi urllarni olishga yordam beradi.

// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Uzbek);

// Biz istalgan tilni qo'shishimiz mumkin

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Uzbek);

// Biz istalgan tilni qo'shishimiz mumkin

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.Uzbek)

' Biz istalgan tilni qo'shishimiz mumkin

Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
VB   C#

OCR natijalarining batafsil ob'ektlari

Iron OCR har bir OCR ishlashi uchun OCR natijasi ob'ektini qaytaradi. Odatda, dasturchilar ushbu ob'ektning matn xususiyatidan faqat rasmdan skaner qilingan matnni olish uchun foydalanadilar. Biroq, OCR natijalari DOM bundan ancha rivojlangan.

using IronOcr;
using System.Drawing; //Yig'ish ma'lumotnomasini qo'shing

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Muhim

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Katta, batafsil API topish uchun bu erda o'rganing:
// - Sahifalar, bloklar, parafaflar, qatorlar, so'zlar, belgilar
// - Rasmlarni eksport qilish, shriftlar koordinatalari, statistik ma'lumotlar
}
using IronOcr;
using System.Drawing; //Yig'ish ma'lumotnomasini qo'shing

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Uzbek;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Muhim

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Katta, batafsil API topish uchun bu erda o'rganing:
// - Sahifalar, bloklar, parafaflar, qatorlar, so'zlar, belgilar
// - Rasmlarni eksport qilish, shriftlar koordinatalari, statistik ma'lumotlar
}
Imports IronOcr
Imports System.Drawing 'Yig'ish ma'lumotnomasini qo'shing

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Uzbek
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Muhim

Using Input = New OcrInput("images\sample.tiff")
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Katta, batafsil API topish uchun bu erda o'rganing:
' - Sahifalar, bloklar, parafaflar, qatorlar, so'zlar, belgilar
' - Rasmlarni eksport qilish, shriftlar koordinatalari, statistik ma'lumotlar
End Using
VB   C#

Ishlash

IronOCR qutidan tashqarida ishlaydi, kirish tasvirlarini sozlash yoki qattiq o'zgartirish zaruriyati yo'q.

Tezlik yonmoqda: IronOcr.2020 + 10 baravar tezroq va oldingi tuzilishlarga qaraganda 250% kamroq xatolarga yo'l qo'yadi.

Ko'proq ma'lumot olish

C #, VB, F # yoki boshqa har qanday .NET tilidagi OCR haqida ko'proq bilish uchun, iltimos, temir OCR dan qanday foydalanish mumkinligi haqida haqiqiy dunyo misollarini keltiradigan jamoat qo'llanmalarimizni o'qing va undan qanday qilib eng yaxshi natijalarga erishish kerakligini bilib oling. ushbu kutubxona.

.NET ishlab chiquvchilari uchun to'liq mos yozuvlar mavjud.