Reconocer texto en imagen OCR

El reconocimiento óptico de caracteres (OCR) es el proceso de extraer texto de imágenes. Es posible que tenga imágenes en línea y fuera de línea de las que necesite extraer información de texto. Puede realizar OCR en imágenes sin conexión, pero podría estar pensando que para realizar OCR en imágenes en línea, tendría que descargarlas. Bueno, eso no es obligatorio. En este artículo, aprenderá cómo realizar OCR en imágenes usando su URL con C++.

API de C++ para realizar OCR en imágenes desde URL

Aspose.OCR for C++ es una API de reconocimiento óptico de caracteres que puede realizar operaciones de OCR de manera confiable en imágenes y documentos escaneados. La API también le permite realizar OCR en imágenes de URL. Puede instalar la API a través de NuGet o descargarla directamente desde la sección Descargas.

PM> Install-Package Aspose.OCR.Cpp

Reconocer texto realizando OCR en una imagen desde URL usando C++

Los siguientes son los pasos para realizar OCR en imágenes de URL.

El siguiente código de ejemplo muestra cómo realizar OCR en una imagen desde una URL usando 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

	// URL del archivo de origen
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Preparar el búfer para el resultado (en símbolos, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Establecer la configuración de reconocimiento
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Realice la operación de OCR en la imagen.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

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

Reconocer texto de áreas de imagen seleccionadas definiendo áreas de reconocimiento usando C++

Si no desea realizar OCR en toda la imagen y desea obtener el resultado de áreas específicas de la imagen, puede definir áreas de reconocimiento para hacer precisamente eso. Los siguientes son los pasos para establecer áreas de reconocimiento para la operación de OCR.

El siguiente código de ejemplo demuestra cómo usar áreas de reconocimiento para reconocer texto de áreas específicas de una imagen usando 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

	// URL del archivo de origen
	const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

	// Definir las áreas de Reconocimiento
	rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };

	// Preparar el búfer para el resultado (en símbolos, len_byte = len * sizeof(wchar_t))
	const size_t len = 4096;
	wchar_t buffer[len] = { 0 };

	// Establecer la configuración de reconocimiento
	RecognitionSettings settings;
	settings.format = export_format::text;

	// Establecer las áreas de reconocimiento
	settings.rectangles = rectangles;

	// Especifique el tamaño de la matriz de áreas de reconocimiento
	settings.rectangles_size = 2;

	// Realice la operación de OCR en la imagen.
	size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);

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

Obtenga una licencia gratis

Para probar la API sin limitaciones de evaluación, puede solicitar una licencia temporal gratuita.

Conclusión

En este artículo, aprendió cómo realizar OCR en imágenes desde cualquier dirección URL usando C++. Además, ha visto cómo definir áreas de reconocimiento para realizar OCR solo en áreas seleccionadas de la imagen. Aspose.OCR for C++ es una API robusta que proporciona muchas características adicionales para realizar OCR en imágenes. Puede explorar la API en detalle visitando la documentación oficial. Si tiene alguna pregunta, no dude en comunicarse con nosotros en nuestro foro de soporte gratuito.

Ver también