Aspose.OCR for C++
API de OCR de C++ para agregar capacidades de OCR
Integre la funcionalidad de OCR dentro de aplicaciones C y C++ mediante la API de OCR gratuita. Puede reconocer y extraer texto de imágenes escaneadas y archivos PDF, fotografías de teléfonos inteligentes, capturas de pantalla y áreas de imágenes.
A medida que la era digital continúa expandiéndose, se hace necesaria una extracción eficiente de texto a partir de imágenes, documentos escaneados y otras fuentes. Aquí es donde la tecnología de reconocimiento óptico de caracteres (OCR) juega un papel vital a la hora de convertir datos visuales en texto editable y con capacidad de búsqueda. Aspose.OCR para C++ surge como una solución poderosa que ofrece a los desarrolladores un conjunto de herramientas integral para integrar capacidades de OCR sin problemas en sus aplicaciones C++. Ya sea que los desarrolladores necesiten extraer texto de documentos escaneados, imágenes o incluso capturas de pantalla, Aspose.OCR proporciona una solución integral para manejar diversos requisitos de OCR.
Aspose.OCR para C++ ofrece un amplio conjunto de funciones de procesamiento de imágenes que mejoran la precisión del OCR y el proceso de reconocimiento. Hay varias características importantes que forman parte de la biblioteca, como procesa imágenes rotadas y ruidosas, reconoce texto en una gran cantidad de idiomas, reconocimiento por lotes de todas las imágenes, reconoce la imagen completa, extrae texto solo de áreas seleccionadas, identifica palabras o párrafos, guarda los resultados del reconocimiento en el disco, admite el preprocesamiento de imágenes, identifica los caracteres de una imagen, identifica caracteres de una imagen, lee solo ciertas áreas de una imagen, etc. Los desarrolladores de software pueden preprocesar imágenes aplicando filtros, ajustando el contraste y el brillo, enderezando y eliminando ruido, entre otras operaciones.
Aspose.OCR para C++ se puede integrar fácilmente en las aplicaciones del usuario, así como con otros productos Aspose. La biblioteca proporciona una API muy sencilla que permite a los desarrolladores incorporar sin problemas capacidades de OCR en sus proyectos de C++. Con sólo unas pocas líneas de código, los desarrolladores pueden inicializar el motor de OCR, cargar la imagen o el documento y extraer el texto. Está diseñado para ser multiplataforma y puede utilizarse para desarrollar aplicaciones multiplataforma para Windows, Linux y web. Al integrar Aspose.OCR en sus proyectos, los desarrolladores de software pueden mejorar la productividad, mejorar la accesibilidad de los datos y desbloquear nuevas posibilidades para el procesamiento y análisis de texto en sus aplicaciones.
Introducción a Aspose.OCR para C++
La forma recomendada de instalar Aspose.OCR para C++ es utilizar NuGet. Utilice el siguiente comando para una instalación sin problemas.
Instalar Aspose.OCR para C++ mediante el comando NuGet
NuGet\Install-Package Aspose.Ocr.Cpp -Version 23.4.0
Puede descargar la biblioteca directamente desde la Aspose.PDF página del producto
Extracción de texto eficiente en aplicaciones C++
Aspose.OCR para C++ proporciona un enfoque confiable y eficiente para extraer texto de una amplia variedad de formatos de archivo, incluidos documentos escaneados, imágenes, archivos PDF, TIFF de varias páginas, matriz de píxeles, recibos, etc. Utiliza sofisticados algoritmos de OCR para reconocer y extraer texto con alta precisión, preservando el formato y la estructura originales. La biblioteca admite una amplia gama de idiomas, lo que la hace adecuada para aplicaciones multilingües y permite a los desarrolladores extraer texto de diversas fuentes sin esfuerzo. El siguiente ejemplo muestra cómo extraer texto de una imagen TIFF mediante la API de C++.
¿Extraer texto de una imagen TIFF a través de la API de C++?
std::string image_path = "source.tiff";
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
RecognitionSettings settings;
settings.language_alphabet = language::ukr;
size_t res_len = aspose::ocr::page_tiff("1.tif;2.tif", buffer, len, set);
std::wcout << buffer;
Leer ciertas áreas de imágenes mediante C++
Aspose.OCR para C++ facilita a los desarrolladores de software leer un área particular de una imagen y extraer texto de esas áreas o regiones dentro de aplicaciones C++. Esta función es particularmente útil cuando solo necesita extraer texto de secciones específicas de una imagen y desea excluir contenido irrelevante. La biblioteca ofrece un método simple y eficiente para lograrlo. A continuación se muestra un fragmento de código de ejemplo que demuestra cómo leer ciertas áreas de imágenes usando Aspose.OCR para C++.
Extraer texto de regiones específicas dentro de una imagen mediante la API de C++
// Load the image
System::SharedPtr imageStream = System::MakeObject(new System::IO::FileStream(u"image.jpg", System::IO::FileMode::Open));
// Initialize OCR engine
System::SharedPtr ocrEngine = System::MakeObject();
// Set the image for OCR
ocrEngine->Image = imageStream;
// Set the rectangle coordinates for the specific area to read
System::SharedPtr areaRect = System::MakeObject(10, 10, 200, 100);
ocrEngine->Config->SetArea(areaRect);
// Perform OCR on the specified area
ocrEngine->Process();
// Retrieve the extracted text from the specific area
System::String extractedText = ocrEngine->Text;
// Display the extracted text
std::cout << "Extracted Text: " << extractedText.ToUtf8String() << std::endl;
Preprocesamiento de imágenes mediante API de C++
Aspose.OCR para C++ ha proporcionado una forma estandarizada de preparar su contenido para OCR y lograr resultados de OCR precisos. La biblioteca ofrece una variedad de técnicas avanzadas de preprocesamiento de imágenes. Estas técnicas mejoran la calidad de la imagen, corrigen la distorsión de la perspectiva, eliminan el ruido y optimizan el proceso de reconocimiento de texto. Al emplear el preprocesamiento de imágenes, los desarrolladores pueden mejorar significativamente la precisión del OCR, especialmente cuando se trata de imágenes o documentos desafiantes con diseños complejos. Se pueden aplicar varios filtros de preprocesamiento a la misma imagen para mejorar aún más la calidad del reconocimiento.
Eliminar el ruido de la imagen automáticamente antes del reconocimiento mediante la API de C++
// Recognition settings
std::string image_path = "source.png";
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
RecognitionSettings settings;
settings.auto_denoising = true;
size_t res_len = aspose::ocr::page_settings(image_path.c_str(), buffer, len, settings);
std::wcout << buffer;
// apply Preprocessing filter
std::string image_path = "source.png";
custom_preprocessing_filters filters_;
filters_.filter_1 = OCR_IMG_PREPROCESS_AUTODENOISING;
asposeocr_preprocess_page_and_save(image_path.c_str(), "result.png", filters_);
Guardar resultados de reconocimiento en otros formatos
Aspose.OCR para C++ permite a los desarrolladores de software reconocer texto de numerosos formatos de archivos populares, como PDF, JPEG, PNG, TIFF, BMP y más. La API permite a los desarrolladores guardar los resultados del reconocimiento en múltiples formatos para poder compartirlos, almacenarlos en una base de datos, mostrarlos o analizarlos. Los desarrolladores de software pueden guardar los resultados del reconocimiento como archivo, texto, JSON o XML. La biblioteca permite establecer umbrales de confianza en el reconocimiento, lo que permite a los desarrolladores de software filtrar texto con niveles de confianza bajos. Esta característica resulta invaluable cuando se trabaja con grandes volúmenes de texto, ya que garantiza que solo se extraigan resultados confiables y precisos. Los siguientes ejemplos muestran cómo guardar los resultados del reconocimiento como un archivo usando comandos de C++.
Guardar los resultados del reconocimiento como un documento de varias páginas mediante la API de C++
directory dir(".");
const string current_dir = dir.full_name();
const string image = current_dir + "p.png";
const size_t len = 6000;
wchar_t buffer[len] = { 0 };
RecognitionSettings settings;
settings.save_format = file_format::docx;
aspose::ocr::page_save(image.c_str(), "result.docx", settings);