Vybavte své aplikace C++ pomocí OCR
OCR Mastery: Přeměna obrázků na text
Více vitrín >AsposeOCRInput source;
source.url = file_path_str.c_str();
vector<AsposeOCRInput> content = {source};
// Extract text from the image
AsposeOCRRecognitionResult result
= asposeocr_recognize(content.data(), content.size());
// Output the recognized text
size_t size = 0;
wchar_t* result = asposeocr_serialize_result(result, size);
> Install-Package Aspose.Ocr.Cpp
Proč Aspose.OMR pro C++?
Vytvářejte a rozpoznávejte strojově čitelné formy libovolného rozvržení a složitosti v místních aplikacích, webových službách nebo v cloudu. Naše řešení je vhodné pro projekty jakékoli velikosti – od jednoduchých průzkumů a kvízů až po závěrečné zkoušky a volby. Kliknutím na položky níže se dozvíte více o našich funkcích a výhodách.
Není potřeba žádné vybavení
Místo specializované OMR čtečky použijte svou stávající kancelářskou kopírku nebo dokonce fotoaparát chytrého telefonu.
Plná personalizace
Přizpůsobte si formuláře OMR přidáním automaticky generovaných QR kódů a čárových kódů, obrázků, podpisových polí a dalších.
Spolehlivé výsledky
Robustní algoritmy optické detekce značek ve spojení se schopností jemného doladění rozpoznávání zaručují 100% přesné výsledky.
Celé řešení
Aspose.OMR for C++ podporuje kompletní pracovní postup OMR – od návrhu formuláře až po rozpoznání jeho vyplněných tištěných kopií.
Přívětivé pro vývojáře
Naše API je extrémně snadno použitelné i pro nezkušené vývojáře. Jednoduchá OMR aplikace může být napsána v 10 řádcích kódu.
Ukázka živého kódu
Zažijte jednoduchost: Převeďte obrázek na text pomocí pouhých tří řádků kódu C++!
* Nahráním souborů nebo používáním služby souhlasíte s našimi Podmínky použití a Zásady ochrany osobních údajů.
Převést obrázek na text
Objevte další příklady > string file = "source.png";
AsposeOCRInput source;
source.url = file.c_str();
vector<AsposeOCRInput> content = {source};
RecognitionSettings settings;
settings.language_alphabet = language::eng;
size_t size = 0;
wchar_t* buffer = asposeocr_serialize_result(result, size);
wcout << wstring(buffer) << endl;
asposeocr_free_result(result);
C++ Power všude
Aspose.OCR pro C++ bezproblémově funguje na jakékoli platformě.
Podporované formáty souborů
Aspose.OCR for C++ může pracovat prakticky s jakýmkoli souborem můžete získat ze skeneru nebo fotoaparátu. Výsledky rozpoznávání jsou vráceny v nejoblíbenějších formátech pro výměnu souborů a dat, které lze uložit, importovat do databáze nebo analyzovat v reálném čase.
snímky
- JPEG
- PNG
- TIFF
- BMP
Dávkové OCR
- Multi-page PDF
- ZIP
- Folder
Výsledky rozpoznávání
- Text
- Microsoft Word
- Microsoft Excel
- RTF
- JSON
- XML
Instalace
Aspose.OCR pro C++ je distribuován jako balíček NuGet nebo jako soubor ke stažení s minimálními závislostmi. Snadno jej nainstalujte do svého projektu a jste připraveni rozpoznávat texty v několika podporovaných jazycích a ukládat výsledky rozpoznávání v různých formátech.
Požádejte o zkušební licenci , abyste mohli zahájit vývoj plně funkční aplikace OCR bez omezení.
C++ Výkon ve všech oblastech
Naše knihovna plně podporuje C++11 a novější, což umožňuje vašim aplikacím bezproblémově běžet na jakékoli platformě – stolní Windows, Windows Server, macOS, Linux a cloud.
28 Rozpoznávací jazyky
Naše C++ OCR API rozpoznává nepřeberné množství jazyků a populárních psacích skriptů, včetně smíšených jazyků:
Nechte detekci jazyka na knihovně nebo si jazyk definujte sami, abyste zvýšili výkon a spolehlivost rozpoznávání.
- Rozšířená latinská abeceda: chorvatština, čeština, dánština, holandština, angličtina, estonština, finština, francouzština, němčina, italština, lotyština, litevština, norština, polština, portugalština, rumunština, slovenština, slovinština, španělština, švédština;
- Azbuka: běloruská, bulharská, kazašská, ruská, srbská, ukrajinská;
- čínština: Více než 6 000 znaků;
- Hindština.
Funkce a schopnosti, které posilují
Aspose.OCR for C++ Objevte pokročilé funkce a možnosti Aspose.OCR pro C++.
Foto OCR
Extrahujte text z fotografií smartphonu s přesností na úrovni skenování.
PDF s možností vyhledávání
Převeďte jakýkoli sken na plně prohledávatelný a indexovatelný dokument.
Rozpoznávání URL
Rozpoznejte obrázek z adresy URL, aniž byste jej museli lokálně stahovat.
Hromadné rozpoznání
Přečtěte si všechny obrázky z vícestránkových dokumentů, složek a archivů.
Libovolné písmo a styl
Identifikujte a rozpoznávejte text ve všech oblíbených typech písma a stylech.
Dolaďte rozpoznávání
Upravte každý parametr OCR pro nejlepší výsledky rozpoznávání.
Kontrola pravopisu
Zlepšete výsledky automatickým opravováním chybně napsaných slov.
Najděte text v obrázcích
Hledejte text nebo regulární výraz v sadě obrázků.
Porovnejte texty obrázků
Porovnejte texty na dvou obrázcích bez ohledu na velikost písmen a rozvržení.
Omezit rozsah rozpoznávání
Omezte sadu znaků, které bude modul OCR hledat.
Zjistit vady obrazu
Automaticky najděte potenciálně problematické oblasti obrazu.
Rozpoznat oblasti
Najděte a čtěte pouze určité oblasti obrázku, ne celý text.
Ukázky kódu C++
Ponořte se do ukázek kódu a bezproblémově integrujte Aspose.OCR pro C++ do svých aplikací.
Zvládnutí instalace C++
Po instalaci můžete okamžitě začít používat Aspose.OCR pro C++ , i když s určitými omezeními. Dočasná licence ruší všechna omezení zkušební verze na 30 dní. Využijte toto období k zahájení vývoje plně funkční OCR aplikace, která vám umožní učinit informované rozhodnutí o nákupu Aspose.OCR pro C++ v pozdější fázi.
OCR pro fotografie C++
Překonejte problém aplikací OCR, kterým chybí rozšířené skenery. Naše API se může pochlubit výkonnými vestavěnými filtry pro předzpracování obrazu, které obratně zvládají otočené, zkosené a zašuměné obrázky. V kombinaci s podporou všech obrazových formátů zajišťuje spolehlivé rozpoznání i z fotografií ze smartphonu. Většina předzpracování a korekce obrazu je automatizovaná a vyžaduje váš zásah pouze v náročných případech. Můžete také předdefinovat oblasti obrázku, se kterými budete pracovat.
Nastavte vlastní úhel pro korekci zkosení a definujte oblasti rozpoznávání - C++
string file = "photo.png";
AsposeOCRInput source;
source.url = file.c_str();
std::vector<AsposeOCRInput> content = { source };
// Fine-tune recognition
RecognitionSettings settings;
settings.detect_areas_mode = detect_areas_mode_enum::PHOTO;
// Extract text from the photo
auto result = asposeocr_recognize(content.data(), content.size(), settings);
// Output the recognized text
wchar_t* buffer = asposeocr_serialize_result(result, buffer_size, export_format::text);
std::wcout << std::wstring(buffer) << std::endl;
// Release the resources
asposeocr_free_result(result);
Rozpoznejte text v určitých oblastech obrazu
Definujte specifické oblasti pro rozpoznávání textu a zvyšte přesnost. Přizpůsobte rozpoznávání tak, aby se zaměřovalo na kritické oblasti, a optimalizujte výsledky ve vašem pracovním postupu zpracování obrazu.
Definujte oblasti rozpoznávání pro OCR - C++
// Original image
std::string image_path = "../Data/Source/sample.png";
rect rectangles[2] = { {90, 186, 775, 95} , { 928, 606, 790, 160 } };
// Prepare buffer for result
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// Adjust skew angle
RecognitionSettings settings;
settings.format = export_format::text;
settings.rectangles = rectangles;
settings.rectangles_size = 2;
settings.skew = 5;
// Recognize image
size_t res_len = aspose::ocr::page_settings(image_path.c_str(), buffer, len, settings);
Převod naskenovaného dokumentu na upravitelný dokument
Zatímco mnoho podniků, organizací a jednotlivců aktivně pracuje na snížení své závislosti na papírových dokumentech, toto je stále nejrozšířenější formát pro ukládání a sdílení. Naskenované dokumenty zálohované fyzickými archivy jsou dostatečné pro dodržování předpisů, právní účely, dlouhodobé zálohování a redundanci. Často však vznikají obchodní případy pro vytváření nových dokumentů na základě existujícího naskenovaného obsahu nebo částí existujících dokumentů.Aspose.OCR for С++ usnadňuje převod naskenovaného obrázku nebo PDF založeného na obrázcích na upravitelný dokument DOCX nebo RTF nebo tabulku Microsoft Excel (XLSX). Obsah je rozpoznán s vysokou přesností a rychlostí, což vám šetří čas a námahu při ručním psaní a zajišťuje, že nedochází k lidským chybám, zejména při práci s velkými objemy textu.
Převeďte naskenovaný obrázek na vhodný textový dokument - C++
// Provide the folder with scanned pages
directory dir("./scans/");
const string current_dir = dir.full_name();
const string image = current_dir + "p.png";
const size_t len = 6000;
wchar_t buffer[len] = { 0 };
// Recognize and save results to Microsoft Word document
RecognitionSettings settings;
settings.save_format = file_format::docx;
asposeocr_page_save(image.c_str(), "result.docx", settings);
Detekce vad obrazu
Vady obrazu mohou významně ovlivnit přesnost OCR. Mohou být způsobeny kvalitou procesu získávání obrazu, podmínkami prostředí a hardwarem použitým k zachycení obrazu. Pro zlepšení přesnosti rozpoznávání je nezbytné předzpracovat a vylepšit snímky, aby se tyto defekty zmírnily, kdykoli je to možné.Aspose.OCR pro C++ může automaticky najít potenciálně problematické oblasti obrazu během rozpoznávání. Můžete zvýraznit problémové oblasti při náhledu obrázku a dokonce je OCR pomocí alternativního nastavení rozpoznávání získat lepší výsledek.
Rozpoznejte text na rozmazaných, zdeformovaných obrázcích a obrázcích s nízkým kontrastem - C++
// Provide the image
string file = "source.png";
AsposeOCRInput source;
source.url = file.c_str();
vector<AsposeOCRInput> content = {source};
// Activate detection of low-contrast areas
RecognitionSettings settings;
settings.defect_type = defect_type::ASPOSE_OCR_DETECT_DARK_IMAGES;
// Find and show low-contrast areas
AsposeOCRRecognitionResult result = asposeocr_recognize(content.data(), content.size(), settings);
for (size_t p_number = 0; p_number < result.pages_amount; ++p_number)
{
cout << "Page " << p_number << ";\n";
const auto& page = result.recognized_pages[p_number];
for (size_t defect_number = 0; defect_number < page.defects_count; ++defect_number)
{
const auto& defect_area = page.defect_areas[defect_number];
cout << "Low-contrast area " << defect_number << ":" << defect_area.area << std::endl;
}
}
// Release the resources
asposeocr_free_result(result);
Dávkové zpracování
OCR API vás osvobodí od rozpoznávání každého obrázku jeden po druhém tím, že nabízí různé metody dávkového zpracování, které vám umožní rozpoznat více obrázků v jednom volání:
- Rozpoznávání vícestránkových souborů PDF a TIFF.
- Rozpoznávání všech souborů ve složce.
- Rozpoznávání všech souborů v archivu.
Rozpoznat ZIP archiv - C++
// Provide a ZIP archive
string file = "pages.zip";
AsposeOCRInput source;
source.url = file.c_str();
std::vector<AsposeOCRInput> content = { source };
// Fine-tune recognition
RecognitionSettings settings;
settings.detect_areas_mode = detect_areas_mode_enum::COMBINE;
// Extract texts
auto result = asposeocr_recognize(content.data(), content.size(), settings);
Možnost detekce textu
Výsledky rozpoznávání můžete rozdělit na řádky a detekovat textové oblasti na stránce.
Detekce textu na obrázku - C++
size_t res_len = asposeocr_get_rectangles_number(image_path.c_str(), areas_type::lines, false);
rect* rectangles = new rect[res_len];
res_len = asposeocr_get_rectangles(image_path.c_str(), areas_type::lines, false, rectangles, res_len);