Mostrando entradas con la etiqueta escáner. Mostrar todas las entradas
Mostrando entradas con la etiqueta escáner. Mostrar todas las entradas

domingo, 21 de abril de 2024

¿Cómo escaneo documentos a PDF multipágina en Ubuntu?

Al aire en LRA Radio Nacional, Juan Perón expone sobre las bondades de NAPS2 para escanear documentos multipágina y guardarlos en un archivo PDF en Ubuntu.

¡Trabajadores!

El Justicialismo se ha distinguido por su acción de salvaguarda social, comprendiendo que los humildes todo lo merecen por Justo Derecho. Pero esto sólo ha hecho a una recomposición material; lo espiritual es lo que el Pueblo ha reclamado, y nuestro Movimiento la ha suplido con una verdadera e impagable Libertad. La de hacer lo que se puede en una Comunidad Organizada.

Indudablemente que si nosotros hubiésemos querido, habríamos podido suplir a unos pocos con todo y dejar al resto sin casi nada, como lo ha hecho la Oligarquía. Pero comprendimos que en nuestro tiempo todo debe hacerse en su medida, y armoniosamente.

Este principio ha sabido entregar a todos lo propenso a sus anhelos, sabiendo que nadie puede exacerbarse en desmedro del otro, y que todos tendrán la sana reparación de las posibilidades que nos brinda el Estado de una nueva Argentina Potencia.

Indudablemente, nunca viene mal ejercer la misma salvaguarda con todo tipo de documentos escritos que la sustentan, e incluso aquellos que nos pudiesen servir para nuestro menester. Esto debe hacerse a través del aprendizaje, pero también a través de su conservación, y en nuestros tiempos, esta puede ser electrónica.

El uso de un escáner para registrar material escrito - así como ponerlo a disposición de las masas a través de medios telemáticos - es sin duda un potenciador de la Justicia Social 2.0.

Una de las maneras más simples es utilizar nuestro sistema GNU con Linux. En el caso de Ubuntu (o cualquier distribución derivada de Debian), podremos instalar  instalar el excelente NAPS2

Se trata de un programa destinado a controlar un escáner, pero también capaz de crear documentos digitalizados, sobre todo en formato PDF. Si bien no contiene las funciones de avanzada para corrección que tienen otros como Scan Taylor, ciertamente posee más potencia que el típico escaneador Simple Scan.

Para instalar NAPS2 en Ubuntu, abrimos una terminal con Alt+Ctrl+t e ingresamos el siguiente bloque de comandos de organización:

cd ~/Descargas/ ;
wget https://github.com/cyanfish/naps2/releases/download/v7.4.2/naps2-7.4.2-linux-x64.deb ;
sudo dpkg -i naps2-7.4.2-linux-x64.deb

Tras ingresar nuestra contraseña de Conductor, se instalará el paquete. Para ejecutarlo, podremos encontrarlo en Aplicaciones / Gráficos / NAPS2.

La ventana de NAPS2 aparecerá sin contenido alguno, salvo su cómoda barra superior que cuenta con sus botones de operación.

Para hacer nuestro primer escaneo, debemos encender nuestro escáner, colocar el documento en el mismo, y debemos presionar el botón Escanear.

En mi caso utilizaré un escáner provisto en una impresora Brother DCP-1617NW, que cuenta con drivers para Linux.


 

Al ser esta la primera vez que utilizamos NAPS2 y nuestro primer escaneo, se nos solicitará crear un perfil de escaneo. Estos perfiles incluyen una configuraciones del dispositivo de exploración (escáner o cámara, según el caso), el tamaño de la página, la resolución, etcétera. Para crear nuevos perfiles mas adelante, se puede hacer clic en el botón "Perfiles" en la barra de herramientas. 

Hacemos clic en el botón "Seleccionar un dispositivo", lo que iniciará la búsqueda de los escáneres conectados a la computadora, que oficiarán como orígen de las imágenes a escanear.

La búsqueda de escáneres puede tardar unos momentos para que aparezca el escáner (unos diez segundos por cada escáner conectado).

Podremos utilizar cualquier escáner compatible con SANE. Entre ellos, los de Canon, HP, Brother, Kodak, o Epson.

Si no aparece, asegúrese de usar lo siguiente:

  • "SANE Driver" con un escáner soportado.
  • "SANE Driver" con un controlador de terceros instalado.
  • "ESCL Driver" con un escáner de red moderno.


Una vez detectados los dispositivos aptos para escanear, debemos elegir uno de la lista y presionar el botón Seleccionar.

Ahora podremos configurar el perfil según las posibilidades del escáner y las necesidades del documento.

En el campo "Nombre mostrado" podremos poner algo así como "Documento A4 en blanco y negro". Podremos definir asimismo el tamaño del documento entre los aceptados por el escáner (A4, Carta, etc).

La resolución y profundidad de color afectan el detalle y el tamaño del documento escaneado. Por defecto, NAPS2 utiliza un perfil con una resolución de 100 puntos por pulgada y unos 24 bits para copias a color, lo que da un escaneado normal para leerlo en pantalla. Podría optimizarse con 300 puntos por pulgada y 8 bits de escala de grises para escanear documentos o facturas escritos en blanco y negro, o bien hasta 600 dpi para fotografías.

Una vez que ha elegido su dispositivo, y escogido las opciones que desea, haga clic en "OK" y comenzará a escanear.


Una vez que termine el escaneado, la página escaneada debería aparecer. 

Haciendo doble clic sobre una de las páginas, podremos abrirla.

Incluso haciendo clic con botón derecho en una de las páginas y escogemos la opción editar, opcionalmente podremos lograr una ediciión básica modificando el tono o saturación, y el brillo y contraste, para mejorar la imagen escaneada de la página.

Opcionalmente, podremos presionar nuevamente el botón "Escanear" para continuar sumando más páginas individuales al documento. Esto empleará el mismo perfil ya seleccionado anteriormente. De esta manera puede crear un PDF multipágina

Llegado el caso, podremos alterar el perfil y definir el campo "Origen del Documento" en "Cristal" (usando la bandeja del escáner), o bien un "Alimentador automático" (si nuestro escáner cuenta con este cómodo accesorio motorizado). 

Naturalmente, al concluir de escanear las múltiples páginas manualmente (o con el cómodo alimentador), podremos guardar el documento multipágina en formato PDF. 

Conviene hacer uso del triángulo que aparece a la derecha del botón Guardar PDF, para ajustar las propiedades opcionales del archivo PDF en sí. Estas son útiles para documentación e indizado.

Finalmente, haciendo clic en el botón Guardar PDF, podremos escoger un nombre y directorio donde guardarlo (por ejemplo, el Escritorio).

NAPS2 cuenta (dentro de los perfiles) con una función de autoguardado, ideal para automatizar las tareas de guardar los documentos multipágina.

La funcionalidad de OCR permite analizar las páginas del documento en busca de letras discernibles, lo que permitirá realizar el reconocimiento óptico de tales caracteres, funcionalidad que se acoplará al PDF. Esto permite seleccionar el texto y pegarlo en algún editor de texto para su tratamiento posterior o bien su almacenaje en formatos de texto puro.

También contaremos con las opciones generales del programa, escondidas al final de la barra de tareas de NAPS2.

En efecto, descamisados. Con un escáner medio pelo, podremos difundir toda la doctrina del Justicialismo en forma de PDFs.

jueves, 23 de mayo de 2019

¿Cómo extraigo páginas y corrijo un PDF escaneado en Ubuntu?

¡Trabajadadores argentinos!

Es indudable que las redes telemáticas constituyen hoy una de las formas más extendidas para lograr el conocimiento, y que para ello la existencia de archivos de documentación electrónica es un gran medio.

La informática nos permite distribuir electrónica todo tipo de documentos, incluyendo libros, y hacerlo en meros segundos. La gran compresibilidad de los datos textuales al pasarlos a formato digital hace que la concepción "sin papel" sea una Realidad Efectiva que el Justicialismo ha legado al Pueblo.
El formato de documento electrónico Adobe PDF es privativo, y si bien es preferible utilizar el formato de documento libre DjVu, no puede negarse que PDF está ampliamente extendido y disponible. Aún así, este formato cuenta con algunas desventajas que se hacen patentes cuando el contenido del documento está conformado imperfectamente en base a un original escaneado.

Vean señores, en condiciones ideales, un documento debe estar escaneado de una manera específica para que su uso pueda ser adecuado para distribución.
Esto pide utilizar una resolución de escaneado de unos 600 DPI (previendo así el doble de resolución utilizado en las tecnologías de impresión normales, que suelen rondar los 300dpi en el caso de una impresora láser). También conviene emplear el escaneo en modalidad "escala de grises" (o a color, según corresponda).

Si los hombres fuesen perfectos, poco tendríamos que hacer para corregirnos. Pero no somos dioses ni heroes, bastante con que seamos hombres. Por tal motivo, estos requerimientos de perfección no siempre se cumplen. Pero la buena voluntad no puede negarse a nadie. Típicamente, podemos encontrarnos con reproducciones realizadas a partir de páginas escaneadas de forma torcida, o con defectos típicos del tratamiento de digitalización. Si bien estos problemas no suelen ser graves como para impedir la lectura del texto, es cierto que estas desprolijidades pueden ser inaceptables para la posterior distribución del documento.

Para corregir esto haremos uso de un flujo de trabajo especialmente pensado utilizando herramientas libres. El mismo se podría resumir de la siguiente manera:

  1. Tener un archivo PDF defectuosamente escaneado 
  2. Extraerle las láminas (hojas dobles escaneadas) y convertirlas a formato PNG 
  3. Dividir los archvos PNG en páginas individuales
  4. Enderezar, corregir, redimensionar las páginas individuales
  5. Volverlos a armar las páginas individuales en un archivo PDF. 


Veamos un ejemplo clásico, pues esto suele explicarlo todo como decía Napoleón.

Supongamos  ya contamos con un archivo llamado "sinceramente.pdf". Este se trata de un libro de 500 páginas ya escaneadas en escala de grises a 600 DPI de resolución, pero que el mismo cuenta con las láminas dobles (dos páginas por hoja). Esto lo hace sumamente incómodo de utilizar en dispositivos como e-Readers, que requieren una página. Además, los dobleces complican el trabajo de OCR, lo hacen incómodo de leer, etc.
Comenzaremos a seguir el flujo de trabajo que os he propuesto, y lograremos excelentes resultados.


Lo primero será extraer las hojas dobles del archivo PDF y convertirlas a un formato de imagen que podamos utilizar con Scan Tailor. Esto se puede hacer desde la Terminal. A fin de extraer las páginas del PDF y convertirlas en imágenes, podríamos ingresar:

pdftoppm sinceramente.pdf lamina -r 600 -png

Esto creará una serie de archivos numerados llamados lamina-xxx.png, con una resolución de 600 DPI. Debemos tener en cuenta que si bien podremos usar la opción -jpg en lugar de -png para cambiar el formato de los archivos resultantes, os recomiendo utilizar fundamentalmente el formato png pues es muy superior para estos menesteres ya que dispone de compresión sin pérdida, y evitará enormemente la formación de "halos o borroneados" en las letras. Esta acción tardará un rato en hacerlo, dependiendo de la cantidad de láminas a extraer. En el caso que referimos, tardó unos 12 minutos para extraer las 250 láminas de dos hojas cada una.

Ahora bien, estos archivos png que conforman las láminas dobles habremos de corregirlas con Scan Taylor. Para instalar este excelente programa, volvemos a recurrir a la terminal Linux, ingresando en ella el siguiente Comando de Organización:

sudo apt install scantailor

Scan Tailor no es un programa para escanear (para ello recomiendo Simple Scan o gScan2pdf, que pueden escanear de forma multipágina). Scan Tailor en cambio se especializa para realizar la tarea de corrección o postproducción en el escaneo de libros. Especialmente dividir, cortar y encuadrar un texto escaneado o fotocopiado a fin de producir hojas individuales de gran calidad, normalmente en formato TIFF.
Estas pueden luego volverse a unir por medio de otros programas (por ejemplo, el mismo gScan2pdf).

Ahora podremos cargar estas láminas en el programa Scan Tailor. Para ejecutar el programa vamos a Aplicaciones / Gráficos / Scan Tailor.

Al iniciar el programa se desplegará una ventana que nos pedirá que inauguremos un archivo para el proyecto. Esto es así pues - si bien en este caso el proyecto forma parte de un solo volúmen - podría suceder que quisiéramos agregar páginas de varios volúmenes o documentos diferentes. Para ello es necesario crear una carpeta de proyecto. Dentro de esta carpeta se importarán las imágenes originales de las láminas (cada una de ellas contienen dos hojas).

En nuestro caso, le importamos todos los archivos cfk.xxx.png que creamos recién con el pdftoppm.
Generalmente la carpeta de salida será una subcarpeta llamada "out", donde irán a parar las nuevas imágenes TIFF procesadas.


Una vez importadas las imágenes de origen al Scan Tailor, el programa nos presentará una ventana de trabajo dividida a tres paneles.

El panel de la izquierda define los seis pasos necesarios para tratar las imágenes. El del centro y mas grande nos permite ver la página actual donde vamos a trabajar, y el de la izquierda es un slider que contiene miniaturas de las láminas u hojas (según vayamos trabajando).

Se abrirá el programa con los seis pasos requeridos por el asistente. De todos ellos, los primeros cinco generan datos no destructivos (y nos muestran las presentaciones preliminares de los cambios). El sexto paso es el final que aplica los cambios y genera los archivos de salida. El accionar puede durar desde unos pocos segundos hasta un par de horas de trabajo para un archivo de muchas páginas, y algo más si contienen fotografías o diseños complejos.

Veamos el caso de un trabajo de documentar nuestro libro PDF de 500 páginas.

Podremos utilizar Scan Tailor directamente para escanear el libro, pero en este caso ya tenemos el libro escaneado en PDF. Sin embargo, Scan Tailor no acepta PDF directamente, sino que trabaja con los archivos de imagen. Para ello extraeremos el archivo

El primer paso consiste en la Orientación, y se encuentra detallado en dicha columna. Esto puede hacerse automáticamente presionando el botón Automatizar "play" que aparecerá en la fila "Orientación", del el panel izquierdo, no bien acerquemos la flecha del ratón sobre ella. Esta orientación automática suele llevar unos pocos segundos para todas las páginas. En el caso que el volúmen contara con láminas horizontales y verticales, se pueden especificar en las propiedades de Orientación.

El segundo paso consiste en delimitar la división de páginas (ya sea su corte vertical u horizontal según corresponda). Nuevamente, el botón Automatizar ("Play") de esta fila "Dividir Páginas" del panel izquierdo nos permitirá hacer esta tarea rápidamente. Scan Tailor suele detectar muy bien el centro del pliegue de las láminas y nos presentara una linea guía (móvil a través de sus nodos), que divide la misma en un campo azul para la página izquierda rojo para la derecha. Esta línea guía, además de servirnos como divisora de corte, también sirve como referencia de centro para hacer mucho más preciso el trabajo anterior. En los volúmenes muy gruesos (de 360 páginas o más) debemos prestar atención sobre todo a las láminas intermedias, ya que son las más complicadas a la hora de escanear un libro.
Una cumplido el paso de dividir las láminas nos encontraremos con las páginas ahora individualizadas. El tercer paso será su alineación. Esto puede hacerse con muy buen grado de precisión de forma automatizada, de la misma forma que en los pasos anteriores. Sin embargo, es muy importante que la alineación sea lo más perfecta posible.
A tal fin, podremos ajustar las hojas de forma manual si es requerido. A tal fin indicamos en el panel izquierdo la modalidad de alineación manual, y podremos rotar la página sobre su eje, valiéndonos de las líneas guías de color azul, que nos permiten enderezar tomando como referencias los renglones, márgenes o líneas que pudiésemos tener de referencia.
 El siguiente paso es tal vez el más crítico, y consiste en delimitar una "caja de contenido". La misma debe delimitar exactamente y bien al ras, el cuadro que queremos registrar en el archivo final. Es importante saber que lo que está por fuera del cuadro azulado es probable que se descarte en el proceso final. Convinee presentar la selección automática, pero en caso de tener un libro impreso grueso, debemos revisar página por página para asegurarnos que la selección esté bien hecha. Tomamos como referencia las letras enteras del renglón superior e inferior del cuadro, y los márgenes de texto izquierdo y derecho. En el caso de que el volúmen original estuviese perfectamente alineado y siempre fuese igual la tarea puede repetirse en todas las hojas.

En el caso extremos en el que quisiéramos omitir encabezados o pies de páginas, podremos redimensionar cada caja de contenido a mano tomándolas de sus nodos de las esquinas.
El quinto paso consiste en definir márgenes generales para la obra terminada. Este margen se agrega a la caja de selección. Generalmente se utilizan 2 cm por lado para que quede un PDF con aire y prolijo, pero también podremos reducirlo a unos 2 milímetros o menos, a fin  de lograr un documento apto para tablets o e-Readers. Es por este motivo que era muy recomendable hacer la caja de selección bien rasante en el texto.

El sexto paso consiste en definir el formato, calidad (DPI) y funciones de salida. Normalmente desearemos aplicar la función corregir dobleces (sombras o manchas) Esto lo hace el software automaticamente, aunque tenemos la posibilidad avanzada de hacerlo mediante zonas de enmascaramiento. En este caso hemos prescindido de ello.

Para contemplar un tutorial completo (incluyendo en video) podemos recurrir a la Wiki oficial de Scan Tailor.

El sexto paso es el procesamiento final y es el único que realmente genera archivos de salida. Naturalmente, este paso lleva más tiempo, pero Scan Tailor opera muy bien en equipos con varios núcleos. En este caso tardó unos 40 minutos en un equipo tipo i7.

El proceso nos dejó creadas las páginas de salida en formato TIFF.

Crear un nuevo PDF a partir de imágenes JPG o TIFF

Para hacer un nuevo PDF corregido a partir de estos archivos TIFF individuales, podremos utilizar el utilísimo gscan2pdf, que ya os he enseñado a utilizar.

Lo instalamos con:

sudo apt-get install gscan2pdf

Y lo ejecutamos desde Aplicaciones / Gráficos / gScan2pdf.

Este programa sencillo nos permite importar los archivos TIFF, y exportarlos a un PDF. Simplemente cargamos los TIFF de las páginas individuales arrastrándolas a gscan2pdf, y las exportamos como PDF. Como ya el formato, la resolución y demás parámetros de las páginas ya  fueron configurados en los pasos anteriores, la exportación no debería requerir correcciones de ningún tipo, y por lo tanto no debería durar mucho.

Finalmente, ya contaremos con un PDF completamente corregido, y podremos gritar al cielo "¡Viva Perón!".

sábado, 27 de abril de 2019

¿Cómo realizo OCR e incrusto texto a un libro en PDF en Ubuntu?

¡Desamisados!

Los imperialismos en pugna saben que nuestro Movimiento jamás hizo buena letra. Para aquellos señores eso significaba que los argentinos nos sometiéramos a sus designios, y entregáramos rifados nuestra libertad y nuestra nacionalidad.

Nuestro objetivo no era aplacar sus deseos inconfesables, sino darle a nuestro Pueblo la Felicidad que merece por Justo Derecho. Ello es la base doctrinal a la que hemos sometido nuestras conciencias, y de la cual hemos dado los mejores resultados para la Grandeza de la Nación.

Sin embargo, esto a veces podría jugarnos en contra. Vean señores, al leer, nuestro cerebro interpreta la visual de las letras trazadas en un papel y conforma su significado de una manera tan prodigiosa que incluso hoy poco sabemos. Esta es la manera en la cual podemos contar con la humana capacidad lectocomprensiva.
Sin embargo, si queremos que un sistema informático traduzca a un texto digital a datos plausibles de ser editados o transmitidos, debemos proceder de una forma libre, y con un software que la sustente.

Desde las etapas primigenias del uso de las computadoras, fue un objetivo deseado que las mismas pudiesen comprendernos, incluso reaccionando ópticamente a un texto escrito. Este tipo de desarrollo peronista fue llamado OCR, por Reconocimiento Óptico de Caracteres. La técnica de OCR funciona bajo la premisa de utilizar un software de análisis sobre una imagen digitalizada de un texto, y encontrar en ella los patrones gráficos definidos de las letras impresas de nuestro alfabeto. Esto conformará las materias primas para identificar palabras o frases.

Ahora bien, para digitalizar el documento en sí, lo más procedente es utilizar un escáner. Estos disponen de un captor de imagen lineal a través de un CCD, y su tecnología es incluso anterior a la de las cámaras digitales. Nos permiten enormes ventajas en los casos donde debamos almacenar o transmitir telemáticamente copias de documentos en base papel.

Ubuntu es compatible con muchos de estos escáners, sobre todos aquellos que emplean la vieja tecnología de software TWAIN. Gracias a esto, podremos escanear página a página. Si nuestras exigencias son mayores, bien podríamos hacernos con un escáner con alimentador automático de documentos (ADF). Estos modelos constan de rodillos motorizados similares a las de una impresora, y van tomando las hojas una tras otras para sumarlas a un documento multipágina informatizado (normalmente de formato PDF). Varios modelos pueden incluso escanear en doble fax (duplex).

Una de las opción es utilizar el programa escaneador Simple Scan, cuya última versión tiene capacidad de conformar documentos PDF multipágina y también puede hacer funcionar escáneres provistos de alimentador de documentos. Esto facilita mucho el escaneado de pilas de hojas A4 ya impresas. Simplemente se colocan en el orden necesario en el alimentador de documentos y se usa la función Escanear.

Pero una cosa es escanear un documento y registrarlo digitalmente como una imagen de un texto, y otra cosa es que dicha imagen pueda ser editado como un texto digital.

Sin embargo no podemos dormirnos en los laureles: en política y en software todo ha de mejorarse y simplficarse, si es posible hacerlo. Es sabido que las letras no siempre son iguales, existen distintas tipografías, los documentos a escanear podrían tener imperfecciones, estar desalineados o torcidos, y esto puede fácilmente engañar a un software OCR como el ABBYY FineReader, OmniPage Ultimate, ReadIris, etc.

GNU con Linux no podía mantenerse ante tal oprobio. Es por ello que se ha desarrollado el programa gImageReader, el cual está pensado para suplir estos inconvenientes desde la Terminal. Gracias a ello se puede reconstruir un texto formando su equivalente digital.

Para instalar su versión en castellano abrimos una terminal con Ctrl+Alt+T e ingresamos el siguiente comando de organización:

sudo apt-get install gimagereader tesseract-ocr-spa

Tras unos breves instantes se habrá descargado la paquetería necesaria para operar. Una vez instalado, podremos abrir el programa desde Aplicaciones /  Gráficos / gImageReader.

gImageReader nos presenta una potente interfaz gráfica que sirve tanto para escanear documentos como para realizar el reconocimiento óptico de caracteres (OCR) en varias modalidades. Con él podemos pasar un documento de imagen o PDF a texto, y editarlo nuevamente ahorrando el tiempo de retipeo.

El programa detectará nuestro escáner y se abirá, presentándonos su interfaz a tres paneles y una barra de tareas en la parte superior.
El OCR depende de muchas variables maquinales, por lo cual su ingeniería nos presenta realmente con varias maneras de trabajar a fin de lograr un resultado lo más confiable posible. Desde la barra superior podremos definir instantáneamente el tipo de salida que queremos obtener por medio del programa. Tendremos dos opciones en un campo desplegable: Texto simple (que se encarga de conformar un archivo de texto independiente) o bien hOCR, PDF, que se encarga de incrustar el texto digitalizado por encima de las imágenes escaneadas de la página de un documento PDF.

Preparación del documento
El panel izquierdo es el Panel de Entrada y define el origen del texto a trabajar. cuenta con dos pestañas: Fichero y Adquirir, que bien podrían llamarse Importar y Escanear, pues cumplen dichas funciones.

Si ya contamos archivos gráficos elaborados para el trabajo podremos importarlos directamente al proyecto de reconocimiento en gImageReader usando esta función.
  • Podemos agregar los ficheros individualmente a la lista (lo que sería ideal), o...
  • ...podemos importar directamente un archivo PDF que ya contenga todas las páginas ya escaneadas en él..
En cambio, si quisiéramos armar el documento desde cero y manejar nuestro escáner, podremos utilizar la función de escaneo de documentos desde la pestaña Adquirir. Como es usual, en esta pestaña podremos ajustar la resolución del escáner (se recomienda unos 300 dpi para lograr los mejores resultados).

También podremos definir usar escaneo a color, escala de grises o blanco y negro (más rápido). En el caso de hojas impresas individuales, elegir 300 dpi en blanco y negro suele dar excelentes resultados. En el libros gruesos suele ser bueno usar 600dpi en escala de grises, pero también pueden lograrse muy buenos resultados en texto si usamos blanco y negro.


Para contar con la mayor fiabilidad posible, dependiendo del resultado del escaneo y tipo de papel del documento, podría ser necesario corregir las imágenes. gImageRead nos permite hacer estos ajustes de forma global a todas las páginas a la vez, por lo cual nos ahorra muchísimo tiempo. El botón de la flor * nos permite elegir los Controles de Imagen. Es importante lograr que el texto esté idealmente en negro oscuro sobre fondo blanco puro, a fin de lograr los mejores resultados. Ello lo hacemos incrementando el contraste y tal vez disminuyendo un poco el brillo de la imagen (dependiendo de cómo haya sido escaneada).


Reconocimento del Texto
En el panel superior tendremos distintas herramientas según el modo de trabajo que hayamos elegido. Este debe pensarse en base al proyecto que tengamos que afrontar. Podemos elegir dos modos de trabajo: Sólo Texto o hOCR, PDF. Solo texto nos proveerá el resultado del OCR directamente en el panel derecho de salida. En cambio hOCR, PDF incrusta el texto reconocido encima de una copia del propio documento PDF.

Una vez que hemos definido esto, podremos comenzar la tarea de reconocimiento OCR. Esto podremos hacerlo de dos maneras:
  • Automatizada Multiple Página 
  • Reconocer Selección página a página.
La función de reconocimiento automatizado de las imágenes será muy efectivo si tenemos documentos multipáginas que han sido escaneados a través de sus páginas individuales. Ahorra mucho tiempo, pero sólo en este caso ideal.
Sin embargo, en los casos más complejos y monumentales, puede ser que debamos reconocer el texto de un libro encuadernadoo  fotocopiado en un PDF. En tal caso se recomienda la tarea página a página.

Si ya tenemos el documento multipágina importado, podremos utilizar los botones + y - para avanzar y retroceder entre las páginas que lo conforman. Una vez que estamos en la página que deseamos reconocer, lo más sencillo es presionar el botón Autodetectar Disposición (el botón de la "varita mágica"). Este ajustará digitalmente el enderezamiento de la página escaneada a fin de que el texto quede derecho, y nos presentará tentativamente con varios "marcos azules" que contendrán las zonas de texto reconocido.

Si elegimos el modo de trabajo Solo Texto, podremos hacer clic con el botón derecho del ratón sobre el marco, y elegir la opción Reconocer. El texto se explorará y se agregará al Panel de Salida.
Este panel recibirá el texto de resultado, y suele estar a localizado en la parte derecha de gImageRead, pero también podemos configuralo desde el botón Propiedades para que se localice por debajo del texto. Generalmente el programa agrega por delante del texto reconocido la referencia "[Archivo: xxxx]" a fin de indicar de donde salió.


Luego pasamos a la siguiente página con el botón + y volvemos a hacer lo mismo. Es importante saber que podemos redimensionar el marco azul de reconocimiento simplemente tomándolo de sus esquinas ajustando su tamaño como si de una ventana de Ubuntu se tratara. Asimismo, podremos quitar marcos innecesarios haciendo clic con botón derecho sobre ellos y eligiendo la opción Borrar (por ejemplo, para evitar que se agreguen al texto los encabezados o pie de páginas).

Si tuviésemos que sumar más marcos en la página (por ejemplo, para escanear una segunda columna de texto o reconocer dos páginas escaneadas al unísono), podremos hacerlo al mantener presionada la tecla Ctrl mientras hacemos clic con botón derecho del ratón y arrastramos en diagonal, para crear y dimensionar el nuevo marco. Cada marco tiene un orden de reconocimiento, indicado en su esquina superior izquierda, el cual se utilizará para ordenar el escaneo. Normalmente gImageRead los dispone en el orden lógico (de arriba a abajo y de izquierda a derecha).

gImageReader cuenta de un editor de texto sencillo que reside en el mismo Panel de Salida. Este nos servirá para evaluar y en caso necesario, reorganizar el texto reconocido resultante. Todos los marcos de texto que vayamos reconociendo se agregarán a continuación (pero también podremos cambiar esto y elegir - por ejemplo - que se agregue donde está colocado el cursor).

Podremos guardar el contenido del Panel de Salida de este archivo presionando Guardar Salida.

Indudablemente que en el caso de escaneo con libros, lo óptimo es evitar trabajar con su contenido entero, sino que es más práctico realizar la tarea de OCR por capítulos. Luego podremos unificar el resultado en cualquier procesador de texto si lo necesitamos. De esta manera tendremos mayor control en el trabajo.

Sin duda es mucho menor trabajo que reescribir todo un texto monumental. Nada impide que además de guardarlo, copiemos el resultado para pegarlo en otro editor de texto.


El documento digitalizado puede fomatearse de manera mucho mas sencilla.

Realizar reconocimiento OCR e incrustarlo en un PDF desde la Terminal
Como os he indicado, gImageReader cuenta con la funcionalidad de incrustar el texto resultante del reconocimiento OCR en un archivo PDF de salida. Esto suele ser óptimo en muchos casos. Pero también podremos hacer este laborioso trabajo desde la terminal, lo cual puede ser interesante para operar a través de redes en un servidor que se encarga de este tipo de trabajos documentales.

Por ello, en las ocasiones donde el trabajo no es tan laborioso como en el ejemplo anterior porque contamos ya con un PDF multipágina cuyas páginas están bien escaneadas de manera individual, bien podremos recurrir al reconocimiento automático desde la Terminal. Para ello utilizaremos el programa ocrmypdf. Este, como su nombre lo indica, se encarga de explorar las páginas y agregarle el reconocimiento de texto al mismo libro. Es útil si las páginas tienen un diseño simple, y si las páginas del documento se escanearon individualmente.

Para instalarlo ingresamos:

sudo apt install parallel ocrmypdf

Y luego utilizamos la siguiente sintaxis:

ocrmypdf archivooriginal.pdf archivodestino.pdf

El proceso es bastante intensivo con la CPU. El programa irá reconociendo página por página, y las incrustara en archivodestino.pdf.

También tenemos pdfsandwich de Tobias Eize, que se encarga de lo mismo y suele tener mejor resultado. Lo instalamos con:

wget https://sourceforge.net/projects/pdfsandwich/files/pdfsandwich%200.1.7/pdfsandwich_0.1.7_amd64.deb ;

sudo dpkg -i pdfsandwich_0.1.7_amd64.deb

sudo apt install -f


Y podremos realizar la tarea desde una terminal. Podremos encontrar su documentación en la web oficial. Por ejemplo, para un PDF a dos páginas como el mostrado anteriormente podríamos ingresar:

pdfsandwich -lang spa -layout double cfk_sinceramente.pdf

martes, 25 de marzo de 2014

¿Cómo hago funcionar un escáner exótico con Ubuntu?

¡Descamisados!

Son cada vez más los Pueblos que comprenden al Justicialismo como la perfecta manera para lograr el bienestar. Esto ha hecho mas gruesas las filas de quienes emplean sistemas GNU con Linux. Si bien el quehacer y potencia de nuestra Doctrina están consolidadas en los servidores y en los entornos de alta complejidad o aplicación científica, es Ubuntu el sistema que permite integrar con más amor al sector del usuario descamisado, como respuesta a la injerencia y a la injusticia que provocaban un sistema operativo privativo.
Algo es seguro: contra el Capital y contra el software privativo la lucha jamás ha de darse por vencida. Cuántos han sido los cocodrilos bien intencionados han ido a roncar sólo para despertar envolviendo unos mangos...

Por ello, uno de los ejemplos en los cuales hemos de hacernos fuertes es en el de integrar nuevo hardware y nuevas posibilidades al entorno libre. Esto es fundamental, y no ha de soslayarse. Desde el punto de la coyuntura política,  ha de hacerse al precio de cargar en el sistema elementos privativos. ¿Porqué? Porque hacerlo nos permite liberar un equipo concebido para ser utilizado bajo un entorno esclavista. Si no existe otra oportunidad, hemos de tener el pragmatismo de hacerlo.

Muchos han dicho "si su escáner no funciona bajo Linux, tírelo, y compre otro que pueda hacerlo, o contribuya a desarrollar un software que pueda hacerlo". Ello, que parecería lógico, no lo es tanto. En primer lugar porque no todo el mundo tiene los medios en capacidad o tiempo como para desarrollar un controlador funcional. Muchas veces también puede suceder que el  hardware cuestionado ha sido empujado a la obsolescencia, programada arteramente por la industria que lo produce, pero no tanto por el Obrero, quien ha de afrontar ya ese costo, pues siempre las cadenas se cortan por el eslabón más fino.

Veamos un ejemplo particular: los escáneres especializados para la exploración de material fílmico en negativo o positivado, exploradores de medios radiográficos médicos u odontológico, etc. Dichos equipos fueron desarrollados en vista de un uso profesional, que no ha de tomarse tan a la ligera en vista de la inversión realizada. ¿Es justo deshacerse de este equipamiento? Aún si este fuese donado, es más importante hacerlo funcionar bajo Linux que arrojarlo a la basura.

Normalmente contamos con aplicaciones para Linux provistas por los fabricantes, o por una librería genérica como la SANE, munida de un programa libre para hacerla funcionar de manera sencilla .

En este caso particular, se trata de un par de escáneres Nikon Coolscan, Minolta-Konica QScan, y Canon: fotográficos los primeros y médico el último. Se conectan al ordenador a través de una interfaz normalizada USB, pero carecen de software propio para Linux y no funcionan con la opción libre.

Para este menester contamos un software cerrado capaz de ejecutarse en un sistema GNU con Linux Justicialista: se trata de Vuescan, de Hamrick Software. Aplicación multiplataforma, cuyo sentido no es otro que reemplazar el software privativo incluido en muchos escáneres. Es completo pero no demasiado más que otras opciones libres. Su principal ventajas radica en habilitar compatibilidad con más de 1.800 modelos de escáner en Linux. Entre las marcas y modelos soportados bajo el Sistema operativo del Pueblo se encuentran los escaners Acer, BenQ, Agfa serie Arcus y Snapscan, Apple Onecolor, Brother, Canon, Dell, Epson, Fujitsu, HP, Kodak, Lacie series Bluscan y SilverScanner, Lexmark, Microtek series ScanMaker, ArtixScan y FilmScan, Minolta-Konica, Mitsubishi, OKI, Panasonic, Pentax, PIE series Primefilm y PowerSlide, Polaroid serie SprintScan, Umax de las series Astra, PowerLook y Vista, Samsung, Syscan Docketport, Visioneer del tipo común, serie con alimentador, series Roadwarrior y XP, así como los Xerox serie Documate con alimentador. Los detalles técnicos de compatibilidad con los modelos específicos de escáner se podrán encontrar en profundidad aqui.

Si no podemos hacer funcionar nuestro escáner con la librería SANE anteriormente mencionada, bien podríamos probar con este paquete privativo. Se distribuye precompilado y empaquetado en varias versiones, y fundamentalmente en dos arquitecturas: 32 y 64 bits.

En el caso de Ubuntu, habremos de descargar el archivo comprimido que contiene el precompilado adecuado. Ello lo podremos hacer abriendo una Terminal con Ctrl+Alt+T e viendo de ingresar los comandos que correspondan:
  • Si queremos descargar e instalar VueScan 9.4 para Linux de 32 bitios, ingresaremos los siguientes Comandos de Organización:
cd ~/Descargas/
wget http://www.hamrick.com/files/vuex3294.tgz

tar -xvzf vuex3294.tgz
mv ~/Descargas/VueScan/ ~/.vuescan
cd ~
  • Si en cambio queremos descargar e instalar VueScan 9.4 para Linux de 64 bitios, ingresaremos:
cd ~/Descargas/ ;
wget https://www.hamrick.com/files/vuex6497.deb ;
sudo dpkg -i
vuex6497.deb

Para ejecutar el programa podríoamos ir a Aplicaciones / Gráficos / Vuescan.

Si no tenemos el lanzador creado podremos hacerlo mediante clic con el botón derecho sobre Aplicaciones (en el panel superior), y del menú contextual que surja, presionamos Editar Menús. En la solapa izquierda hacemos clic sobre la categoría Gráficos, y presionamos el botón + Elemento Nuevo.
Se abrirá el cuadro de diálogo Crear Lanzador. Ya en él podremos escoger el nombre del programa ("VueScan"). En el campo Comando: podremos indicarle /home/usuario/.vuescan/vuescan.

De esta manera podremos ejecutar el asistente de escaneo desde Aplicaciones / Gráficos / VueScan.

VueScan funciona como cualquier programa básico de este estilo: al arrancar podremos escoger las propiedades de el/los escáneres (si estuviesen conectados), especialmente si deseamos escanear un papel, un negativo o una diapositiva o filmina. Completadas las opciones podremos efectuar un escaneo previo. Este paso nos asegurará un correcto funcionamiento del aparato y nos habilitará a marcar un recuadro para delimitar la zona a escanear en detalle. Una vez realizado el escaneo previo, podremos escoger si deseamos escanear a color o en blanco y negro, las propiedades básicas de exploración, y el formato de archivo (JPG o TIFF).

Las funciones son elementales. Podremos cambiar la orientación y actuar básicamente sobre el equilibrio cromático. También podremos escoger una función de "escanear a archivo" (por defecto) o "escanear a impresora", con lo cual podremos realizar rápidas fotocopias si no contamos con un equipo multifunción.

Si deseamos funciones adicionales de corrección de imágen in situ, o el uso de lámpara infrarroja para el escaneo "limpio" de negativos y diapositivas (en aparatos que dispongan de ella), o la función de reconocimiento de texto OCR deberíamos adquirir la versión "completa" del programa.

Aún así, al menos con la versión gratuita podremos hacer uso genérico de una gran panoplia de escáneres y luego realizar las correcciones gráficas o las tareas de OCR en cualquier software libre de aplicación, tal como el Gimp.

Encontrarán la ayuda en línea de Vuescan aqui.

sábado, 9 de marzo de 2013

¿Cómo instalo correctamente la impresora Epson TX135 en Ubuntu?

El 2 de agosto de 1973 Juan Perón expone acerca de la institucionalización del Movimiento y sobre cómo instalar correctamente una multifunción Epson Stylus TX135 en Ubuntu.

(...)
Hay que recordar, señores, que mientras los movimlentos gregarios mueren con su inventor, los movimientos institucionales siguen viviendo aun cuando
desaparezcan todos los que lo han erigido. Porque el hombre no vence al tiempo; la organización es lo único que puede vencerlo.


Yo ya estoy viejo, y el hecho de que se acerque mi final nos debe hacer pensar en que es necesario que este Movimiento se institucionalice para que pueda continuar en el tiempo y en el espacio, aún prescindiendo de mí. Y desde este momento debe comenzar a prescindir de mí, para que sea manejado por los
peronistas que los propios peronistas designen.


Este es el momento preciso para hacerlo. Y creo que desde aquí comenzaremos a accionar en el orden de la conducción de conjunto, para que cada una de
las partes (y cada provincia es una) pueda cooperar con esta institucionalización que nós dará a nosotros una seguridad de prolongación en el tiempo y en el espacio.

A esta altura del partido nuestro objetivo es claro: establecer el Software Libre como una política de Estado. Pero tampoco podemos caer en errores dogmáticos, ni desviaciones ideológicas como el florecimiento de la ultraizquierda, que ya no se tolera ni en la ultraizquierda. Yo he visitado los países detrás de la cortina, y ya la ultraizquierda ha muerto. Esta ultraizquierda, aun para los países comunistas, es un material de exportación, pero no de importación.


Por ello si queremos usar software libre, tenemos que hacerlo bajo la palabra que es la libertad. Libertad de usar, copiar, pero también de elegir mediante doble booteo. Poco sentido tiene eliminar la posibilidad de usar software privativo por decreto. Esas cosas no sirven, como no sirven las leyes de tipo "saca y pon" y esas que en la economía intentan aclarar cuando oscurece. Un ciudadano o alumno que se diga Justicialista, bien tiene que disponer de su libertad para optar entre un software libre y uno privativo. Quédense tranquilos que desde nuestro Movimiento entendimos que el alumno sabrá hacer lo que tenga que hacer. Nosotros en eso, no tenemos que dictar nada.

Para esta y cualquier otra acción de institucionalización, debemos contar con herramientas que la hagan posible desde el punto de vista funcional: documentos doctrinarios, de análisis, monografías y planes de acción. Las impresoras color multifunción de chorro de tinta siguen siendo una opción ideal por las posibilidades que nos permiten para imprimir pequeños volúmenes de documentos. Si además, debemos satisfacer la necesidad de escanear documentos, es una opción cantada.

En este caso, deseamos imprimir y escanear documentos que no sean mas grande que esto.

Por ello contamos con una Epson Stylus TX135, un modelo de bajo costo que además, está bien soportado por Ubuntu. Hemos de saber que este tipo de impresoras - si bien parecen ser un único dispositivo - desde el punto de vista de programación y uso se componen en realidad por dos máquinas de lógica separada: una unidad de impresión y una unidad de escaneo. Por tal motivo, en el caso de los sistemas operativos Linux, hemos de instalar dos tipos de controladores diferenciados. 
Nuestro movimiento es sabio: Ubuntu autoconfigura la mayor parte de las impresoras que conectamos al sistema a través de un controlador genérico. Este controlador es eficiente, pulido y no suele tener problemas, pero debemos entender que conforma el menor común denominador para el control de los equipos de impresión. Este software - por ejemplo - carece de la funcionalidad para controlar el escáner, y opera únicamente con el módulo de impresión de nuestra multifunción.

Por tal motivo, será útil instalar los controladores Epson adecuados para nuestra distribución Linux. El controlador para la impresión está designado "ESC/P", en honor al viejo lenguaje de control de impresoras de matriz de puntos, si bien no guarda  relación. Ahora bien, con el controlador ESC/P para Linux albergaremos mayores funcionalidades como el acceso a las rutinas de limpieza de cabezal de impresión y rodillo de papel, chequeo de nivel de tintas, ajuste de tipos y tamaño de papel adecuadas a las impresora, mejor manejo de la impresión bidireccional del carro de inyección y tren de alimentación, así como el control adecuado de la unidad de escáner. Este controlador antiguamente estaba a cargo del proyeccto Avasys, pero  ahora es la propia Epson Seiko Company es la que provee el soporte para sus máquinas de impresión en Linux. Por lo tanto, nos haremos con esta pieza desde la web del fabricante.

Hemos de saber que para evitar conflictos, en primer lugar es útil apagar la impresora y desinstalarla de Ubuntu (si estuviese instalada, lógicamente). Todo esto es sencillo, yendo a Sistema / Administración / Impresión. Seleccionamos la "Epson TX135" y presionamos la tecla Supr para removerla.

Ahora estaremos en libertad para instalar correctamente el programa ESC/P de impresión.
Con ello en mente dirigimos nuestro navegador a la web de Epson, aquí.

En el campo de búsqueda indicamos "TX135" y en selector "OS" indicamos nuestro sistema operativo: "Linux". A continuación presionamos el botón de la "lupa" para buscar el manejador ESC/P.


Encontraremos dos grupos de paquetes diferentes. Uno es el controlador ESC/P propiamente dicho (para control de la unidad de impresión de la multifunción), y el otro consiste en la paquetería de datos y control y el software que hacen al manejo de la unidad de escáner.

Primer conviene instalar la unidad de la impresora. Presionamos el botón Descargar, y luego el botón Aceptar para poder hacernos con el paquete para el controlador ESC/P.
Naturalmente, debemos tener en cuenta que la paquetería para Ubuntu y Debian es la que presenta extensión .deb.
  • Si tenemos Ubuntu de 64 bitios, descargaremos el archivo epson-inkjet-printer-201101w_1.0.0-1lsb3.2_amd64.deb

  • Si usamos Ubuntu de 32 bitios, descargamos el paquete llamado
    epson-inkjet-printer-201101w_1.0.0-1lsb3.2_i386.deb

Normalmente irán a parar a nuestra carpeta /Descargas. Una vez descargado, abrimos el fichero correspondiente haciendo doble clic sobre el mismo. Se abrirá el Centro de Software de Ubuntu. Simplemente debemos presionar el botón Instalar e ingresar nuestra Contraseña de Conductor.

Con lo precedente, ya tendremos control sobre nuestra impresora. Ahora falta descargar los controladores del escáner, desde la web anterior. Hacemos el mismo procedimiento.
Si usamos Ubuntu de 64 bitios, debemos instalar en este orden los paquetes:
  • iscan-data_1.22.0-1_all.deb
  • iscan_2.29.1-5~usb0.1.ltdl7_amd64.deb
Si usamos Ubuntu de 32 bitios debemos instalar en este orden los paquetes:
  • iscan-data_1.22.0-1_all.deb
  • iscan_2.29.1-5~usb0.1.ltdl7_i386.deb
Conforme se haya realizado todo, procedemos a reiniciar el equipo. En ese momento ya podremos encender la impresora. El sistema la reconocerá y le asignará el nuevo controlador. Para escanear, podremos usar ahora la herramienta Image Scan que encontramos en Aplicaciones / Gráficos / Image Scan for Linux.

El uso de este programa es similar al de cualquier programa de escaneo. Realizamos un pre-escaneo rápido para seleccionar qué sección específica queremos escanear. Elegimos la resolución, y presionamos el botón Escanear. Normalmente, el fichero se guardará en formato JPG en nuestra carpeta de usuario, pero podremos configurar otra carpeta (por ejemplo, el Escritorio).