Känna igen text på bild-OCR

Optical Character Recognition (OCR) är processen att extrahera text från bilder. Du kan ha bilder online och offline som du kan behöva extrahera textinformation från. Du kan utföra OCR på offlinebilder, men du kanske tänker att för att utföra OCR på onlinebilder måste du ladda ner dem. Tja, det krävs inte. I den här artikeln kommer du att lära dig hur du utför OCR på bilder med deras URL med C++.

C++ API för att utföra OCR på bilder från URL

Aspose.OCR for C++ är ett API för optisk teckenigenkänning som tillförlitligt kan utföra OCR-operationer på bilder och skannade dokument. API:et låter dig också utföra OCR på bilder från webbadresser. Du kan antingen installera API:t genom NuGet eller ladda ner det direkt från avsnittet Nedladdningar.

PM> Install-Package Aspose.OCR.Cpp

Känn igen text genom att utföra OCR på en bild från URL med C++

Följande är stegen för att utföra OCR på bilder från webbadresser.

Följande exempelkod visar hur man utför OCR på en bild från en URL med 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

	// Källfilens url
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Förbered buffert för resultat (i symboler, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Ställ in igenkänningsinställningarna
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Utför OCR-operationen på bilden.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

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

Känn igen text från valda bildområden genom att definiera igenkänningsområden med C++

Om du inte vill utföra OCR på hela bilden och vill få resultatet från specifika bildområden, kan du definiera igenkänningsområden för att göra just det. Följande är stegen för att ställa in igenkänningsområden för OCR-operationen.

The following sample code demonstrates how to use recognition areas to recognize text from specific areas of an image using 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

	// Source file url
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Define the Recognition areas
	rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };

	// Prepare buffer for result (in symbols, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Set the recognition settings
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Set the recognition areas
	settings.rectangles = rectangles;

	// Specify the size of the recognition areas array
	settings.rectangles_size = 2;

	// Perform the OCR operation on the image.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

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

Get a Free License

In order to try the API without evaluation limitations, you can request a free temporary license.

Conclusion

In this article, you have learned how to perform OCR on images from any URL address using C++. Furthermore, you have seen how to define recognition areas to perform OCR on only selected areas of the image. Aspose.OCR for C++ is a robust API that provides many additional features for performing OCR on images. You can explore the API in detail by visiting the official documentation. In case of any questions, please feel free to reach us on our free support forum.

See Also