Cómo leer imágenes
El OCR, o reconocimiento óptico de caracteres, es una tecnología que se utiliza para reconocer y extraer texto de imágenes. Esta tecnología es especialmente útil para digitalizar documentos impresos, ya que permite extraer y trabajar con el contenido textual de páginas escaneadas, fotografías u otros archivos de imagen.
IronOCR admite varios formatos de imagen, como jpg, png, gif, tiff y bmp. También dispone de filtros de imagen para mejorar la capacidad de lectura.
Cómo leer imágenes
- Descargar una biblioteca C# para leer imágenes
- Admite imágenes en varios formatos, como jpg, png, gif, tiff y bmp
- Instanciar el OcrImageInput para introducir una imagen
- Utiliza el
Leer
método para realizar el reconocimiento óptico de caracteres en la imagen de entrada - Especifique la región de recorte para definir el área de lectura
Instalar con NuGet
Install-Package IronOcr
Ejemplo de lectura de imágenes
Comience por instanciar la clase IronTesseract para habilitar el OCR. Utilice la sentencia 'using' para crear un objeto OcrImageInput, especificando la ruta del archivo de imagen. Así se garantiza la correcta eliminación de los recursos cuando ya no se necesitan. IronOCR soporta imágenes de entrada en varios formatos, incluyendo jpg, png, gif, tiff y bmp. Por último, utilice el método Read
para realizar el OCR.
:path=/static-assets/ocr/content-code-examples/how-to/input-images-read.cs
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("Potter.png");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("Potter.png")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
![Leer imagen PNG](/static-assets/ocr/how-to/input-images/read-png.webp)
Visite el Cómo leer GIF y TIFF de varias páginas/cuadros para saber más sobre la lectura de imágenes TIFF y GIF.
Importar imágenes como bytes
Aparte de la ruta de archivo, la clase OcrImageInput también acepta información de imagen en forma de bytes, AnyBitmap, Stream, así como Image. AnyBitmap es un objeto bitmap de tipo IronSoftware.Drawing.AnyBitmap.
:path=/static-assets/ocr/content-code-examples/how-to/input-images-import-byte.cs
using IronOcr;
using System.IO;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Read byte from file
byte[] data = File.ReadAllBytes("Potter.tiff");
// Import image byte
using var imageInput = new OcrImageInput(data);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
Imports System.IO
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Read byte from file
Private data() As Byte = File.ReadAllBytes("Potter.tiff")
' Import image byte
Private imageInput = New OcrImageInput(data)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
Especificar región de exploración
También se acepta un CropRectangle al instanciar la clase OcrImageInput. Esto le permite especificar qué región del documento de imagen debe ser OCR'ed. Dependiendo del documento de imagen, especificar la región a escanear puede mejorar significativamente el rendimiento. En el ejemplo de código que proporciono, especifico que sólo deben leerse el número de capítulo y el título.
:path=/static-assets/ocr/content-code-examples/how-to/input-images-read-specific-region.cs
using IronOcr;
using IronSoftware.Drawing;
using System;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Specify crop region
Rectangle scanRegion = new Rectangle(800, 200, 900, 400);
// Add image
using var imageInput = new OcrImageInput("Potter.tiff", ContentArea: scanRegion);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Output the result to console
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports IronSoftware.Drawing
Imports System
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Specify crop region
Private scanRegion As New Rectangle(800, 200, 900, 400)
' Add image
Private imageInput = New OcrImageInput("Potter.tiff", ContentArea:= scanRegion)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
' Output the result to console
Console.WriteLine(ocrResult.Text)
Resultado OCR
![Leer región específica](/static-assets/ocr/how-to/input-images/read-specific-region.webp)