Filtros de corrección de imágenes en C# para una mejor lectura de OCR

This article was translated from English: Does it need improvement?
Translated
View the article in English

Los filtros de corrección de imagen son técnicas de procesamiento digital de imágenes utilizadas para mejorar la calidad y las características de una imagen, particularmente con el fin de mejorar el reconocimiento y la extracción de texto. Los filtros de corrección de imagen disponibles en IronOcr son afilar, mejorar resolución, eliminar ruido, dilatar y erosionar.

Estos filtros de corrección de imagen desempeñan un papel fundamental en la preprocesamiento de imágenes antes del OCR, ya que ayudan a optimizar la imagen para una extracción de texto precisa al mejorar la calidad y la visibilidad del texto y al reducir el ruido o artefactos no deseados.

Inicio rápido: Aplicar filtro de afilado para texto claro

Usa el OcrImageInput de IronOCR para afilar una imagen borrosa con una sola línea de código. Este inicio rápido muestra qué tan rápido puedes mejorar la claridad de la imagen y prepararte para un OCR preciso con un esfuerzo mínimo.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronOCR con el gestor de paquetes NuGet

    PM > Install-Package IronOcr

  2. Copie y ejecute este fragmento de código.

    new IronOcr.OcrImageInput("sample.png").Sharpen().SaveAsImages("output.png");
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronOCR en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Ejemplo de filtro de nitidez

Este filtro aumenta el contraste a lo largo de los bordes en la imagen, dándoles una apariencia más definida. Mejora la claridad del texto y los detalles, facilitando así que el software OCR reconozca caracteres.

Para aplicar el filtro de afilado, invoca el método Sharpen del objeto OcrImageInput.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-sharpen-filter.cs
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Apply sharpen filter
imageInput.Sharpen();

// Export filtered image
imageInput.SaveAsImages("sharpen.jpg");
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Apply sharpen filter
imageInput.Sharpen()

' Export filtered image
imageInput.SaveAsImages("sharpen.jpg")
$vbLabelText   $csharpLabel

Para mayor comodidad, puedes exportar la imagen filtrada usando el método SaveAsImages. A continuación se muestra una comparación de la imagen antes y después de aplicar el filtro de afilado.

Sample image
Sharpen filter applied

Ejemplo de filtro de resolución mejorada

Este filtro está diseñado para aumentar la densidad de píxeles de una imagen, mejorando efectivamente su nitidez y claridad. Puede ser especialmente útil para mejorar la legibilidad del texto en imágenes de baja resolución.

Invoca el método EnhanceResolution para aplicar el filtro de mejora de resolución. Este método acepta el DPI objetivo, con 225 DPI como valor predeterminado.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-enhance-resolution-filter.cs
// Apply enhance resolution filter
imageInput.EnhanceResolution();
' Apply enhance resolution filter
imageInput.EnhanceResolution()
$vbLabelText   $csharpLabel
Sample image
Enhance resolution filter applied

Ejemplo de filtro de eliminación de ruido

Los filtros de eliminación de ruido reducen el nivel de ruido o artefactos no deseados en una imagen. La reducción de ruido es crucial para el OCR, ya que ayuda a aislar el texto de la interferencia del fondo, lo que conduce a un reconocimiento más limpio y preciso.

Para aplicar el filtro de eliminación de ruido, utiliza el método DeNoise. La morfología predeterminada es 2x2. Para aplicar un algoritmo de eliminación de ruido más fuerte, pasa 'true' para habilitar una morfología de 3x3.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-denoise-filter.cs
// Apply denoise filter
imageInput.DeNoise();
' Apply denoise filter
imageInput.DeNoise()
$vbLabelText   $csharpLabel
Sample image
Denoise filter applied

Ejemplo de filtro dilatador

La dilatación expande las regiones más brillantes (primer plano) de una imagen. Ayuda a engrosar y resaltar el texto, haciéndolo más prominente y fácil de interpretar por el software OCR.

Para aplicar el filtro de dilatación, utiliza el método Dilate. La morfología predeterminada es 2x2, y al establecer 'true' se habilita la opción 3x3.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-dilate-filter.cs
// Apply dilate filter
imageInput.Dilate();
' Apply dilate filter
imageInput.Dilate()
$vbLabelText   $csharpLabel
Sample image
Dilate filter applied

Ejemplo de filtro de erosión

La erosión reduce el tamaño de las regiones brillantes de una imagen, útil para refinar caracteres y líneas, especialmente cuando son gruesas o están distorsionadas.

Usa el método Erode para aplicar el filtro de erosión. Al igual que con los métodos anteriores, la morfología predeterminada es 2x2, y al establecer 'true' se habilita el 3x3.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-erode-filter.cs
// Apply erode filter
imageInput.Erode();
' Apply erode filter
imageInput.Erode()
$vbLabelText   $csharpLabel
Sample image
Erode filter applied

Archivos PDF con capacidad de búsqueda

Además de las opciones para filtrar imágenes, IronOcr brinda a los desarrolladores la flexibilidad de guardar el PDF modificado con los filtros activados o desactivados. El método SaveAsSearchablePdf permite que se incluya una bandera booleana como segundo parámetro para determinar si desea guardar con filtros o no.

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-searchable-pdf.cs
using IronOcr;

var ocr = new IronTesseract();
var ocrInput = new OcrInput();

// Load a PDF file
ocrInput.LoadPdf("invoice.pdf");

// Apply gray scale filter
ocrInput.ToGrayScale();
OcrResult result = ocr.Read(ocrInput);

// Save the result as a searchable PDF with filters applied
result.SaveAsSearchablePdf("outputGrayscale.pdf", true);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Preguntas Frecuentes

¿Cómo mejorar la calidad de imagen para mejores resultados OCR?

Puede mejorar la calidad de la imagen para obtener mejores resultados de OCR usando IronOCR aplicando varios filtros de corrección de imagen como afilar, aumentar resolución, reducir el ruido, dilatar y erosionar. Estos filtros mejoran la claridad del texto y reducen el ruido, facilitando una extracción de texto más precisa.

¿Cuáles son los beneficios de usar filtros de mejora en preprocesamiento de imagen?

Los filtros de mejora en IronOCR incrementan el contraste de los bordes, mejorando la claridad y legibilidad del texto en las imágenes. Esta mejora es crucial para aumentar la precisión del reconocimiento de texto en OCR.

¿Cómo aumento la resolución de una imagen para el procesamiento OCR?

Para aumentar la resolución de una imagen para el procesamiento OCR en IronOCR, use el filtro de mejorar resolución, que incrementa la densidad de píxeles, mejorando la nitidez y claridad de imágenes de baja resolución.

¿Qué pasos debo seguir para reducir el ruido en imágenes antes de OCR?

Para reducir el ruido en imágenes antes de OCR con IronOCR, aplique el método `DeNoise`. Para una reducción de ruido más fuerte, puede habilitar una morfología 3x3 configurando la opción a 'true'.

¿Cómo afecta el filtrado de dilatación la visibilidad del texto en imágenes?

El filtrado de dilatación en IronOCR expande las regiones más brillantes de una imagen, haciendo el texto más prominente y ayudando al proceso de OCR a interpretar los caracteres de manera más efectiva.

¿Cuál es el método para refinar el texto usando filtros de erosión?

Para refinar el texto usando filtros de erosión en IronOCR, use el método `Erode`. Este filtro reduce el tamaño de las regiones brillantes, ayudando a refinar caracteres y líneas gruesas o distorsionadas en la imagen.

¿Qué configuración de DPI se recomienda para mejorar la resolución de la imagen?

La configuración de DPI predeterminada para el filtro de mejorar resolución en IronOCR es de 225 DPI. Sin embargo, puede especificar un DPI diferente según sus necesidades para optimizar la claridad de la imagen.

¿Es posible ajustar la intensidad del efecto de dilatación en IronOCR?

Sí, puede ajustar la intensidad del efecto de dilatación en IronOCR habilitando una morfología 3x3 más fuerte durante la aplicación del filtro de dilatación, lo cual se hace configurando la opción a 'true'.

¿Cómo puedo comenzar a usar filtros de corrección de imagen en .NET C#?

Para comenzar a usar filtros de corrección de imagen en .NET C#, descargue la biblioteca IronOCR a través de NuGet, importe sus imágenes, aplique los filtros deseados como afilar o reducir ruido, y luego exporte las imágenes mejoradas para el procesamiento OCR.

Chaknith Bin
Ingeniero de Software
Chaknith trabaja en IronXL e IronBarcode. Tiene un profundo conocimiento en C# y .NET, ayudando a mejorar el software y apoyar a los clientes. Sus conocimientos derivados de las interacciones con los usuarios contribuyen a mejores productos, documentación y experiencia en general.
¿Listo para empezar?
Nuget Descargas 5,167,857 | Version: 2025.11 recién lanzado