Kako pretraživati i usporediti tekst u slikama s Aspose.OCR
Istraživanje ili usporedba teksta unutar slika je neophodna za usklađenost, digitalne arhive i automatiziranu klasifikaciju.Aspose.OCR Image Text Finder za .NET omogućuje vam da prepoznajete, pretražite i uspoređujete tekst slike s točnostom – kroz niz slučajeva korištenja od detekcije PII do pravnog pregleda.
Real-svjetski problem
Poduzeća često trebaju tražiti osjetljivu sadržaj, provjeriti potpis, ili usporediti tekst između različitih verzija slikovnih datoteka.
Pregled rješenja
Uz Aspose.OCR, možete tražiti određeni tekst ili uzorke (koristeći trake ili regex) u slikama, i usporediti tekstualni sadržaj dviju slika kako bi se utvrdile razlike.
Preduzeća
Trebat će vam:
- Visual Studio 2019 ili kasnije
- .NET 6.0 ili noviji (ili .Net Framework 4.6.2+)
- Aspose.OCR za .NET od NuGet
- Osnovne C# vještine
PM> Install-Package Aspose.OCR
Korak po korak provedba
Korak 1: Instaliranje i konfiguracija Aspose.OCR
Dodajte paket i potrebni nazivni prostori:
using Aspose.OCR;
Korak 2: Pripremite svoje slikovne datoteke
Postavite slike koje želite pretraživati ili usporediti.
string img1 = "document1.png";
string img2 = "document2.jpg";
Korak 3: Konfigurirajte opcije pretraživanja i usporedbe
Konfigurirajte postavke za pretraživanje teksta (string ili regex) i usporedbu.
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English; // Adjust as needed
Korak 4: Pronađite tekst u slici
Koristite ga ImageHasText
Metoda brzog i fleksibilnog pretraživanja teksta (podržava trake i regex):
AsposeOcr ocr = new AsposeOcr();
bool isFound = ocr.ImageHasText(img1, "Confidential", settings); // String search
Console.WriteLine($"Text found: {isFound}");
// Regex search example:
bool regexFound = ocr.ImageHasText(img1, @"\d{3}-\d{2}-\d{4}", settings); // e.g., US SSN pattern
Console.WriteLine($"Regex found: {regexFound}");
Korak 5: Usporedite tekst od dvije slike
Korištenje CompareImageTexts
Razlike u tekstualnom sadržaju:
int similarity = ocr.CompareImageTexts(img1, img2, settings, true); // true = case-insensitive
Console.WriteLine($"Image text similarity: {similarity}%");
Korak 6: Dodajte rješavanje pogrešaka
Uzimanje i rješavanje pogrešaka za robustnost proizvodnje:
try
{
AsposeOcr ocr = new AsposeOcr();
bool found = ocr.ImageHasText(img1, "PII", settings);
int sim = ocr.CompareImageTexts(img1, img2, settings, false);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Korak 7: Optimizacija za masovno pretraživanje ili usporedbu
- Procesiranje slika u pakiranjima pomoću asink ili paralelnih uzoraka
- Preproces slike (crop, čišćenje) za veću točnost
- Fine-tune regex za napredne scenarije
// Example: Search for a pattern in all images in a folder
foreach (string file in Directory.GetFiles("./archive", "*.png"))
{
bool found = ocr.ImageHasText(file, "Confidential", settings);
if (found) { Console.WriteLine($"Found in: {file}"); }
}
Sljedeći Članak 8: Popuniti primjer
using Aspose.OCR;
using System;
class Program
{
static void Main(string[] args)
{
try
{
string img1 = "contract1.png";
string img2 = "contract2.png";
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
AsposeOcr ocr = new AsposeOcr();
// Search for specific text
bool isFound = ocr.ImageHasText(img1, "NDA", settings);
Console.WriteLine($"Text found: {isFound}");
// Compare two images
int similarity = ocr.CompareImageTexts(img1, img2, settings, true);
Console.WriteLine($"Image text similarity: {similarity}%");
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
Korištenje slučajeva i aplikacija
Usklađenost i PII detekcija
Pronađite povjerljive podatke ili uzorke (kao što su ID-ovi, SSN-i) unutar digitalnih arhiva slike.
Pravna i ugovorna revizija
Usporedite ugovore ili dokumente na temelju slike za tekstovne razlike nakon potpisivanja ili uređivanja.
Digitalno upravljanje imovinom
Omogućite automatsko označavanje ili pretraživanje u velikim slikama za automatizaciju poslovnih procesa.
Zajednički izazovi i rješenja
Izazov 1: Fotografije s različitim stilovima teksta
Rješenje: Koristite slučajno neosjetljive i regex odgovarajuće; testirati na različitim fontovima / pozadini.
Sljedeći Članak Challenge 2: Large Batch Search
Rješenje: Koristite paralelne ili asinkronne radne tokove i predprocesne slike gdje je to moguće.
Izazov 3: Kompleksni uzorci ili uredeni tekst
Rješenje: Refinirajte regex i testirajte kroz uzorne slike; tune postavke za buke ili redigirane slike.
Razmatranje učinkovitosti
- Proces batha za brzinu na velikim arhivima
- Koristite kvalitetne izvorne slike za najbolju točnost
- Tune tražilice za minimiziranje lažnih pozitivnih
Najbolje prakse
- Ispitivanje svih pretraživanja i usporedbe uzoraka prvo
- Sigurno upravljati i prijaviti osjetljive informacije ili rezultate pretraživanja
- Redovito ažurirati Aspose.OCR za poboljšanje funkcionalnosti i točnosti
Napredni scenariji
Scenarij 1: Napredni Regex za uredništvo
bool found = ocr.ImageHasText(img1, @"(Account|Card)\s*#:?\s*\d{4,}", settings);
Scenarij 2: Mnogobrojna pretraživanja
settings.Language = Language.French;
bool isFound = ocr.ImageHasText(img1, "Confidentiel", settings);
zaključak
Aspose.OCR Image Text Finder za .NET omogućuje vam da učinkovito pretražite, otkrijete i usporedite tekst koji se temelji na slici – kroz arhive, zakonske i postupne radne tokove.
Pronađite više primjera u Aspose.OCR za .NET API reference .