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
- Reconocer texto realizando OCR en una imagen desde URL usando C++
- Reconocer texto de áreas de imagen seleccionadas definiendo áreas de reconocimiento usando 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.
- Prepare el búfer para el resultado.
- Establezca la Configuración de reconocimiento.
- Realice OCR en la imagen utilizando el método asposeocr\page\from\uri (const char \ uri, wchar\t \ buffer, size\t buffer\size, RecognitionSettings settings).
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.
- Defina las áreas de reconocimiento en una matriz de estructura rect.
- Prepare el búfer para el resultado.
- Establezca el valor del miembro de estructura RecognitionSettings.rectangles igual a la matriz de áreas de reconocimiento definida anteriormente.
- Establezca el valor del miembro de estructura RecognitionSettings.rectangles\size igual al tamaño de la matriz de áreas de reconocimiento.
- Realice OCR en la imagen usando el método asposeocr\page\from\uri (const char \ uri, wchar\t \ buffer, size\t buffer\size, RecognitionSettings settings).
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.