Rozpoznat text na obrázku OCR

Optické rozpoznávání znaků (OCR) je proces extrahování textu z obrázků. Můžete mít online a offline obrázky, ze kterých možná budete muset extrahovat textové informace. U offline obrazů můžete provádět OCR, ale možná si myslíte, že chcete-li provádět OCR u online obrazů, budete si je muset stáhnout. No, to není nutné. V tomto článku se dozvíte, jak provádět OCR na obrázcích pomocí jejich URL v C++.

C++ API pro provádění OCR na obrázcích z adresy URL

Aspose.OCR for C++ je rozhraní API pro optické rozpoznávání znaků, které dokáže spolehlivě provádět operace OCR na obrázcích a naskenovaných dokumentech. Rozhraní API vám také umožňuje provádět OCR na obrázcích z adres URL. Rozhraní API můžete nainstalovat buď prostřednictvím NuGet, nebo si jej stáhnout přímo ze sekce Downloads.

PM> Install-Package Aspose.OCR.Cpp

Rozpoznejte text pomocí OCR na obrázku z adresy URL pomocí C++

Následují kroky k provedení OCR na obrázcích z adres URL.

Následující ukázkový kód ukazuje, jak provést OCR na obrázku z adresy URL pomocí C++.

#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif

int main()
{
#ifdef _WIN32
	_setmode(_fileno(stdout), _O_U16TEXT);
#else
	setlocale(LC_CTYPE, "");
#endif

	// Adresa URL zdrojového souboru
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Připravte vyrovnávací paměť pro výsledek (v symbolech, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Nastavte nastavení rozpoznávání
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Proveďte operaci OCR na obrázku.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

	std::wcout << buffer << L"\n";
}

Rozpoznejte text z vybraných oblastí obrázku definováním oblastí rozpoznávání pomocí C++

Pokud nechcete provádět OCR na celém obrázku a chcete získat výsledek z konkrétních oblastí obrázku, můžete definovat oblasti rozpoznávání. Následují kroky pro nastavení oblastí rozpoznávání pro operaci OCR.

Následující ukázkový kód ukazuje, jak používat oblasti rozpoznávání k rozpoznání textu z konkrétních oblastí obrázku pomocí C++.

#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif

int main()
{
#ifdef _WIN32
	_setmode(_fileno(stdout), _O_U16TEXT);
#else
	setlocale(LC_CTYPE, "");
#endif

	// Adresa URL zdrojového souboru
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Definujte oblasti rozpoznávání
	rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };

	// Připravte vyrovnávací paměť pro výsledek (v symbolech, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Nastavte nastavení rozpoznávání
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Nastavte oblasti rozpoznávání
	settings.rectangles = rectangles;

	// Zadejte velikost pole oblastí rozpoznávání
	settings.rectangles_size = 2;

	// Proveďte operaci OCR na obrázku.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

	std::wcout << buffer << L"\n";
}

Získejte bezplatnou licenci

Abyste mohli API vyzkoušet bez omezení hodnocení, můžete požádat o bezplatnou dočasnou licenci.

Závěr

V tomto článku jste se naučili, jak provádět OCR na obrázcích z libovolné adresy URL pomocí C++. Dále jste viděli, jak definovat oblasti rozpoznávání pro provádění OCR pouze ve vybraných oblastech obrazu. Aspose.OCR for C++ je robustní API, které poskytuje mnoho dalších funkcí pro provádění OCR na obrázcích. Rozhraní API můžete podrobně prozkoumat na oficiální dokumentaci. V případě jakýchkoli dotazů nás neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také