Saltar al contenido principal
Un elemento de tipo cadena de caracteres se utiliza para buscar cadenas de dígitos. Si la calidad de la imagen es muy buena, incluso se puede especificar una expresión regular como alfabeto. Pero si la calidad de las imágenes del lote varía, debemos especificar la lista de caracteres que pueden reconocerse en el campo correspondiente. Si la calidad de las imágenes o de la impresión no es satisfactoria, los dígitos pueden reconocerse erróneamente como otros caracteres. Por ejemplo, “8” puede reconocerse como “B”, “7” como ”?”, “5” como “S”, “4” como “H” o como la combinación de letras “LI”, etc. Esto puede ocurrir si los dígitos están “pegados”, algo habitual cuando los documentos se rellenan con una máquina de escribir. El grado de correspondencia entre los resultados del reconocimiento y los caracteres reales depende de la calidad de la imagen. Si existe una tendencia a interpretar mal los caracteres en todas o en la mayoría de las imágenes procesadas, debe agregar estas variantes de reconocimiento al alfabeto en la ventana Edit Alphabet del elemento correspondiente cadena de caracteres. Al especificar estos caracteres, le indica al programa que no penalice la hipótesis si estos caracteres aparecen en el área de búsqueda.
Desde luego, no es necesario especificar* todas*las posibles variantes de reconocimiento. Si la calidad de las imágenes es mala, encontrar todas esas variantes puede ser una tarea extremadamente laboriosa. Si, debido a la baja calidad de la imagen, los resultados del reconocimiento son impredecibles, debe ejecutar la búsqueda utilizando otras propiedades del elemento, como la longitud de la cadena, la longitud de los espacios en la cadena, etc.
Especifique los caracteres cuyos contornos sean similares a los de los dígitos. La probabilidad de reconocimiento incorrecto de esos caracteres es mayor que la del resto. Si es necesario, también puede especificar otros caracteres si suelen confundirse con dígitos. Consideremos el proyecto 1.fsp (carpeta Digital strings\Project1). El proyecto tiene 3 páginas.
  • Página 1: el dígito 4 se reconoce como la combinación de letras “LI”;
  • Página 2: la subcadena 13 se reconoce como la letra “å”;
  • Página 3: el dígito 0 se reconoce como “a”, 2 y 5 se reconocen como “S”, 6 y 8 como “B”.
Para detectar la cadena de dígitos, creamos un elemento de tipo cadena de caracteres, lo llamamos DigitalString y especificamos solo dígitos como alfabeto. Establecimos en 20 el porcentaje máximo de caracteres no numéricos. Después de ejecutar el procedimiento de emparejamiento de FlexiLayout en todas las páginas, el campo de dígitos de la página 3 no se detectó por completo. El valor de calidad de la hipótesis es de aproximadamente 0.98. En las páginas 1 y 2, la cadena se detectó. Pero, como contiene caracteres no alfabéticos, las hipótesis correspondientes fueron penalizadas y su calidad quedó en 0.978 y 0.982 respectivamente. Ahora veamos los resultados del emparejamiento de FlexiLayout si agregamos al alfabeto los caracteres que se reconocieron erróneamente en lugar de dígitos: L, I, e, a, B, S. El resultado del emparejamiento de FlexiLayout puede verse en el proyecto 2.fsp (carpeta %public%\ABBYY\FlexiCapture\12.0\Samples\FLS\Tips and Tricks\Digital strings\Project2). Los demás ajustes de los proyectos son idénticos. Como puede ver, la cadena de la página 3 se ha detectado por completo y la calidad de todas las hipótesis generadas es 1.