Saltar al pie de página

Empieza con OCR para Azure

C# + VB.NET: Idiomas intl. Idiomas intl.
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

ocrTesseract.Language = OcrLanguage.Arabic;

using (var ocrInput = new OcrInput())
{
    ocrInput.LoadImage(@"images\arabic.gif");
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}

// Example with a Custom Trained Font Being used:

var ocrTesseractCustomerLang = new IronTesseract();
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata");
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest);

using (var ocrInput = new OcrInput())
{
    ocrInput.LoadPdf(@"images\mixed-lang.pdf");
    var ocrResult = ocrTesseractCustomerLang.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()

ocrTesseract.Language = OcrLanguage.Arabic

Using ocrInput As New OcrInput()
	ocrInput.LoadImage("images\arabic.gif")
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using

' Example with a Custom Trained Font Being used:

Dim ocrTesseractCustomerLang = New IronTesseract()
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata")
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest)

Using ocrInput As New OcrInput()
	ocrInput.LoadPdf("images\mixed-lang.pdf")
	Dim ocrResult = ocrTesseractCustomerLang.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using
Install-Package IronOcr

IronOCR Language Support

IronOCR supports 125 international languages. Other than English, which is installed by default, additional language packs can be added to your .NET project via NuGet or downloaded from our Languages Page.

Most languages are available in Fast, Standard (recommended), and Best quality. The Best quality option may offer more accurate results, but will also be slower in processing time.

Explore OCR in Multiple Languages with IronOCR.

C# + VB.NET: Objetos de resultados Objetos de resultados
using IronOcr;
using IronSoftware.Drawing;

// We can delve deep into OCR results as an object model of
// Pages, Barcodes, Paragraphs, Lines, Words and Characters
// This allows us to explore, export and draw OCR content using other APIs/
var ocrTesseract = new IronTesseract();

ocrTesseract.Configuration.ReadBarCodes = true;

using var ocrInput = new OcrInput();
var pages = new int[] { 1, 2 };
ocrInput.LoadImageFrames("example.tiff", pages);

OcrResult ocrResult = ocrTesseract.Read(ocrInput);
foreach (var page in ocrResult.Pages)
{
    // Page object
    int PageNumber = page.PageNumber;
    string PageText = page.Text;
    int PageWordCount = page.WordCount;
    // null if we dont set Ocr.Configuration.ReadBarCodes = true;
    OcrResult.Barcode[] Barcodes = page.Barcodes;
    AnyBitmap PageImage = page.ToBitmap(ocrInput);
    double PageWidth = page.Width;
    double PageHeight = page.Height;
    double PageRotation = page.Rotation; // angular correction in degrees from OcrInput.Deskew()

    foreach (var paragraph in page.Paragraphs)
    {
        // Pages -> Paragraphs
        int ParagraphNumber = paragraph.ParagraphNumber;
        string ParagraphText = paragraph.Text;
        AnyBitmap ParagraphImage = paragraph.ToBitmap(ocrInput);
        int ParagraphX_location = paragraph.X;
        int ParagraphY_location = paragraph.Y;
        int ParagraphWidth = paragraph.Width;
        int ParagraphHeight = paragraph.Height;
        double ParagraphOcrAccuracy = paragraph.Confidence;
        OcrResult.TextFlow paragrapthText_direction = paragraph.TextDirection;
        foreach (var line in paragraph.Lines)
        {
            // Pages -> Paragraphs -> Lines
            int LineNumber = line.LineNumber;
            string LineText = line.Text;
            AnyBitmap LineImage = line.ToBitmap(ocrInput);
            int LineX_location = line.X;
            int LineY_location = line.Y;
            int LineWidth = line.Width;
            int LineHeight = line.Height;
            double LineOcrAccuracy = line.Confidence;
            double LineSkew = line.BaselineAngle;
            double LineOffset = line.BaselineOffset;
            foreach (var word in line.Words)
            {
                // Pages -> Paragraphs -> Lines -> Words
                int WordNumber = word.WordNumber;
                string WordText = word.Text;
                AnyBitmap WordImage = word.ToBitmap(ocrInput);
                int WordX_location = word.X;
                int WordY_location = word.Y;
                int WordWidth = word.Width;
                int WordHeight = word.Height;
                double WordOcrAccuracy = word.Confidence;
                foreach (var character in word.Characters)
                {
                    // Pages -> Paragraphs -> Lines -> Words -> Characters
                    int CharacterNumber = character.CharacterNumber;
                    string CharacterText = character.Text;
                    AnyBitmap CharacterImage = character.ToBitmap(ocrInput);
                    int CharacterX_location = character.X;
                    int CharacterY_location = character.Y;
                    int CharacterWidth = character.Width;
                    int CharacterHeight = character.Height;
                    double CharacterOcrAccuracy = character.Confidence;
                    // Output alternative symbols choices and their probability.
                    // Very useful for spellchecking
                    OcrResult.Choice[] Choices = character.Choices;
                }
            }
        }
    }
}
Imports IronOcr
Imports IronSoftware.Drawing

' We can delve deep into OCR results as an object model of
' Pages, Barcodes, Paragraphs, Lines, Words and Characters
' This allows us to explore, export and draw OCR content using other APIs/
Private ocrTesseract = New IronTesseract()

ocrTesseract.Configuration.ReadBarCodes = True

Dim ocrInput As New OcrInput()
Dim pages = New Integer() { 1, 2 }
ocrInput.LoadImageFrames("example.tiff", pages)

Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
For Each page In ocrResult.Pages
	' Page object
	Dim PageNumber As Integer = page.PageNumber
	Dim PageText As String = page.Text
	Dim PageWordCount As Integer = page.WordCount
	' null if we dont set Ocr.Configuration.ReadBarCodes = true;
	Dim Barcodes() As OcrResult.Barcode = page.Barcodes
	Dim PageImage As AnyBitmap = page.ToBitmap(ocrInput)
	Dim PageWidth As Double = page.Width
	Dim PageHeight As Double = page.Height
	Dim PageRotation As Double = page.Rotation ' angular correction in degrees from OcrInput.Deskew()

	For Each paragraph In page.Paragraphs
		' Pages -> Paragraphs
		Dim ParagraphNumber As Integer = paragraph.ParagraphNumber
		Dim ParagraphText As String = paragraph.Text
		Dim ParagraphImage As AnyBitmap = paragraph.ToBitmap(ocrInput)
		Dim ParagraphX_location As Integer = paragraph.X
		Dim ParagraphY_location As Integer = paragraph.Y
		Dim ParagraphWidth As Integer = paragraph.Width
		Dim ParagraphHeight As Integer = paragraph.Height
		Dim ParagraphOcrAccuracy As Double = paragraph.Confidence
		Dim paragrapthText_direction As OcrResult.TextFlow = paragraph.TextDirection
		For Each line In paragraph.Lines
			' Pages -> Paragraphs -> Lines
			Dim LineNumber As Integer = line.LineNumber
			Dim LineText As String = line.Text
			Dim LineImage As AnyBitmap = line.ToBitmap(ocrInput)
			Dim LineX_location As Integer = line.X
			Dim LineY_location As Integer = line.Y
			Dim LineWidth As Integer = line.Width
			Dim LineHeight As Integer = line.Height
			Dim LineOcrAccuracy As Double = line.Confidence
			Dim LineSkew As Double = line.BaselineAngle
			Dim LineOffset As Double = line.BaselineOffset
			For Each word In line.Words
				' Pages -> Paragraphs -> Lines -> Words
				Dim WordNumber As Integer = word.WordNumber
				Dim WordText As String = word.Text
				Dim WordImage As AnyBitmap = word.ToBitmap(ocrInput)
				Dim WordX_location As Integer = word.X
				Dim WordY_location As Integer = word.Y
				Dim WordWidth As Integer = word.Width
				Dim WordHeight As Integer = word.Height
				Dim WordOcrAccuracy As Double = word.Confidence
				For Each character In word.Characters
					' Pages -> Paragraphs -> Lines -> Words -> Characters
					Dim CharacterNumber As Integer = character.CharacterNumber
					Dim CharacterText As String = character.Text
					Dim CharacterImage As AnyBitmap = character.ToBitmap(ocrInput)
					Dim CharacterX_location As Integer = character.X
					Dim CharacterY_location As Integer = character.Y
					Dim CharacterWidth As Integer = character.Width
					Dim CharacterHeight As Integer = character.Height
					Dim CharacterOcrAccuracy As Double = character.Confidence
					' Output alternative symbols choices and their probability.
					' Very useful for spellchecking
					Dim Choices() As OcrResult.Choice = character.Choices
				Next character
			Next word
		Next line
	Next paragraph
Next page
Install-Package IronOcr

IronOCR returns an advanced result object for each page it scans using Tesseract 5. This contains location data, images, text, statistical confidence, alternative symbol choices, font-names, font-sizes decoration, font weights, and position for each:

  • Page
  • Paragraph
  • Line of Text
  • Word
  • Individual Character
  • Barcode

Explore How to Read OCR Results with IronOCR

Human Support related to API de Azure OCR

Soporte Humano Directo Desde Nuestro Equipo de Desarrollo

Ya sean consultas sobre productos, integración o licencias, el equipo de desarrollo de productos Iron está disponible para apoyar todas tus preguntas. Ponerse en contacto y comenzar un diálogo con Iron para aprovechar al máximo nuestra biblioteca en tu proyecto.

Hacer una pregunta
Image To Text related to API de Azure OCR

Motor de lectura OCR para Azure en .NET

Su solución principal de OCR de Microsoft Azure para procesar imágenes imperfectas

Ya sea páginas de pasaportes, facturas, extractos bancarios, correo, tarjetas de visita o recibos; El reconocimiento óptico de caracteres (OCR) es un área de investigación basada en el reconocimiento de patrones, visión por computadora y aprendizaje automático. Las empresas utilizan OCR de manera transversal para extraer texto en sistemas de contabilidad y finanzas, digitalización empresarial, gestión de contenido empresarial y sistemas de informes de datos.

Además de construir otras historias de éxito. IronOCR agrega valor a Google Tesseract y a los servicios cognitivos de Microsoft 2021 Azure con IronOCR, una biblioteca OCR nativa de C#.

Si está buscando convertir imágenes del mundo real con un 99 por ciento de precisión, siga leyendo para ver cómo IronOCR le permite construir una aplicación de reconocimiento óptico de caracteres eficiente, precisa, escalable y casi humana.

IronOCR es la diferencia entre un reconocimiento óptico de caracteres competitivo en el mercado y líder en el mercado

El reconocimiento óptico de caracteres (OCR) se considera un fenómeno resuelto debido a la inmensa confianza que diferentes APIs afirman hacia la protección. Sin embargo, los diversos productos a menudo son rígidos e inexactos, fallando en aplicaciones del mundo real. Del mismo modo, Tesseract OCR funciona con texto impreso por máquina, de alta resolución y perfecto.

Suena bien?

Solo que el mundo real no siempre tiene texto impreso y escrito a mano perfectamente con alta resolución. En su lugar, el texto girado, desalineado, baja DPI, ruido de fondo y todas las desventajas de las imperfecciones digitales son atendidas por IronOCR, incluyendo la extracción de texto escrito a mano de archivos de imágenes. Garantizamos un documento 99.8 - 100 por ciento preciso y buscable con soporte multiplataforma que incluye Windows, Linux, macOS, Microsoft Azure, AWS y Docker; hay una razón por la cual los desarrolladores de C# eligen IronOCR sobre Tesseract OCR (básico): se trata de agregar valor.

¡Prepárese con lo mejor!

Además de lo anterior, IronOCR le equipa para procesar documentos de imágenes rápidamente. Si eso no es todo, las características de la API de IronOCR también incluyen lo siguiente:

  • Extraer texto impreso a través de OCR en casi cualquier archivo, imagen o PDF con una precisión excepcional y a gran velocidad.
  • Extracción de texto de PDF e imágenes en documentos buscables con una representación visual y espacial perfecta.
  • No requiere ejecutables o código C++.
  • Soporte completo de OCR para PDF.
  • Compatible con aplicaciones MVC, WebApp, de escritorio, consola y servidor.
  • Soporte completo de .NET Core, Standard y Framework.
  • Leer usando C# y VB .NET.
  • Exportar documentos OCR a XHTML.
  • Soporte para multihilo.
  • Soporte para 125 idiomas internacionales: paquetes de idiomas listos para usar y construcciones personalizadas.
  • Extrae imágenes, coordenadas, estadísticas, fuentes y mucho más.
  • Redistribuye Tesseract OCR dentro de aplicaciones comerciales y propietarias.
  • Funciona localmente, sin necesidad de SaaS.
  • Excelente alternativa al servicio de OCR de los servicios cognitivos de Microsoft.

Funciones virtualmente ilimitadas: IronOCR es 'la' herramienta de reconocimiento óptico de caracteres (OCR) para el espacio de trabajo digital

Pase de la instalación .dll nativa o ejecutables a una única fuente de verdad: desarrolle utilizando una sola biblioteca de componentes nativa de .NET utilizando simples APIs de C# que soportan:

  • .NET Framework 4.5 y superior.
  • .NET Standard 2.0 y superior (incluyendo 3.x y .NET 5 Beta).
  • .NET Core 2.0 y superior (incluyendo 3.x y .NET 5 Beta).
  • .NET 5.
  • Xamarin para macOS.

El arte de la API de IronOCR no termina ahí. Puede seguir explorando nuestra ventaja técnica más. Reducimos las complejidades del negocio, paso a paso, desarrollando soluciones confiables para optimizar aplicaciones de procesamiento de documentos y maximizando los ingresos comerciales al ofrecer características líderes en la industria:

  • Capacidades API OCR puras de .NET.
  • Operación OCR local, sin nube significa más seguridad.
  • Crear recursos de escaneo optimizados de baja calidad, con ruido y distorsión.
  • Leer PDFs, TIFFs de múltiples páginas.
  • Puede guardar cualquier muestra de escaneo OCR en un documento PDF o XHTML que los usuarios pueden buscar.
  • Texto plano, datos de código de barras y una clase de resultado de OCR que contiene párrafos, líneas, palabras y caracteres.

Borde de la API IronOCR: ¿Cumpla la visión por computadora?

Nuestro proceso de reconocimiento óptico de caracteres comienza con el preprocesamiento automático de imágenes para mejorar el archivo de imagen que mejora la tasa de respuesta de extracción. IronOCR agrega valor a su trabajo al permitir a los usuarios extraer el archivo de imagen base de ejemplo en la versión óptima de sí mismo. IronOCR cubre todas las bases:

Mejora de resolución

Como el servicio IronOCR funciona de forma óptima en archivos de imagen de 300DPI (puntos por pulgada), cualquier imagen que esté significativamente fuera del rango de 200-300 DPI se re-muestrea para ajustarse dentro del rango objetivo.

Esto se traduce en una reducción de muestreo de imágenes de 600 DPI a 300 DPI o un aumento de muestreo de imágenes de 100 DPI a 200 DPI con un 99 por ciento de confianza.

Binarización

Como los servicios cognitivos de IronOCR están diseñados para funcionar en imágenes monocromáticas, cualquier imagen en color o en escala de grises se convierte a monocromática, utilizando un algoritmo de binarización adaptativa.

El algoritmo compara las densidades de píxeles dentro de un área para determinar el umbral a utilizar para convertir píxeles a monocromáticos.

Auto-rotación y alinear

IronOCR busca líneas de texto y patrones de caracteres para alinear automáticamente y rotar los recursos de imagen de entrada a la orientación deseada.

Eliminación de ruido adaptativa

Con IronOCR, los archivos de imagen se analizan automáticamente para detectar la presencia y cantidad de ruido. El ruido son básicamente las 'motas' que se encuentran en las imágenes escaneadas. Nuestro algoritmo adaptativo luego elimina el ruido basado en el tamaño de las partículas de ruido.

Tan pronto como el archivo de imagen de muestra se preprocesa, IronOCR divide el archivo de imagen de entrada en diferentes zonas de procesamiento.

Zonificación

Otra etapa de pre-preparación implica dividir la imagen de referencia en diferentes zonas lógicas. IronOCR inicialmente localiza texto e imágenes dentro de la imagen con la ayuda del espacio en blanco y patrones; la región del texto se separa de las imágenes.

Luego se particiona en zonas: párrafos, columnas y bloques de texto. Las imágenes y los píxeles restantes no textuales se identifican para ser omitidos durante el reconocimiento de texto e incluidos en la salida inteligente. IronOCR luego marca las zonas de texto como tablas con la ayuda de líneas de cuadrícula y bloques de texto.

Capacidades de reconocimiento de texto

Realice múltiples pasos interconectados que convierten parches de píxeles en hilos de texto de una línea que los usuarios pueden buscar. Esto incluye segmentación de caracteres, clasificación adaptativa, referencias de diccionario y otros procesos relacionados que contribuyen al texto extraído óptimo.

Parámetros múltiples probados y verificados

Con el servicio API de IronOCR, hemos probado nuestra herramienta a través de múltiples ejemplos de archivos de datos en varios idiomas que incluyen niveles de palabras, precisión de símbolos y retención de diseño en formatos de Microsoft Office. Aunque algunos parámetros se prueban automáticamente; otros incluyen verificaciones visuales.

Conéctese con IronOCR - la solución ideal de servicios cognitivos OCR

IronOCR le permite agregar capacidades OCR multiplataforma con múltiples formatos de entrada a una cadena de texto plano que puede buscar. Para aumentar su productividad con IronOCR, comience con nuestra documentación gratuita de tutorial que le guiará a través del uso de IronOCR. Descargue nuestro instalador de paquetes NuGet hoy, y explore con una clave de prueba gratuita o conéctese con soporte personal 24/7. Escale sus necesidades con nuestra licencia de por vida, sin importar el tamaño de su equipo.

Funciona con .NET, VB.NET, C#

Ver Licencias
Soporta:
  • El marco .NET 4.0 y superior admite C#, VB, F#
  • Microsoft Visual Studio. Icono IDE de desarrollo .NET
  • Soporte de Instalador NuGet para Visual Studio
  • Compatible con asistente de lenguaje C# JetBrains ReSharper
  • Compatible con la plataforma de alojamiento Microsoft Azure C# .NET

Licenciamiento y Precios

Licencias de desarrollo comunitario gratuitas. Licencias comerciales desde $749.

Licencias de Biblioteca para Proyecto C# + VB.NET

Proyecto

Licencia de Biblioteca C# + VB.NET para Desarrolladores

Desarrollador

Licenciamiento de Biblioteca C# + VB.NET para Organizaciones

Organización

Licenciamiento de Biblioteca C# + VB.NET para Agencias

Agencia

Licenciamiento de Biblioteca C# + VB.NET para SaaS

SaaS

Licenciamiento de Biblioteca C# + VB.NET para OEM

OEM

Ver Opciones Completas de Licencia  

Tutoriales OCR de Nuestra Comunidad .NET

Alternativa de Tesseract en .NET | IronOCR

C# Tesseract OCR

Jim Baker es un ingeniero de desarrollo en Iron desarrollando para el producto OCR

Comparación IronOCR y Tesseract en .NET

Jim ha sido una figura líder en el desarrollo de IronOCR. Jim diseña y construye algoritmos de procesamiento de imágenes y métodos de lectura para OCR.

Ver comparación
Texto a imagen en .NET | Tutorial

C# OCR ASP.NET

Gemma Beckford - Ingeniera de Soluciones de Microsoft

Texto de imágenes para .NET

Aprenda cómo el equipo de Gemma usa IronOCR para leer texto de imágenes para su software de archivo. Gemma comparte sus propios ejemplos de código.

Imagen a texto tutorial de .NET
Miles de desarrolladores usan IronOcr para...

Sistemas de Contabilidad y Finanzas

  • # Recibos
  • # Informes
  • # Impresión de Facturas
Agregar Soporte de PDF a Sistemas de Contabilidad y Finanzas ASP.NET

Digitalización de Negocios

  • # Documentación
  • # Pedidos y Etiquetado
  • # Reemplazo de Papel
Casos de Uso de Digitalización de Negocios C#

Gestión de Contenidos Empresariales

  • # Producción de Contenidos
  • # Gestión de Documentos
  • # Distribución de Contenidos
Soporte de PDF CMS .NET

Aplicaciones de Datos e Informes

  • # Seguimiento del Rendimiento
  • # Mapeo de Tendencias
  • # Informes
Informes PDF en C#
Desarrolladores de Componentes .NET Empresariales de Iron Software

Miles de corporaciones, gobiernos, PYMEs y desarrolladores confían en los productos de Iron software.

El equipo de Iron tiene más de 10 años de experiencia en el mercado de componentes de software .NET.

Marval
ANZ
Vireq
Foley
Medcode
Nexudus
GE
Equinor