Scansione
In questa pagina sono raccolte informazioni, procedure e software utili a eseguire il passaggio da libro cartaceo a una sua copia digitale. Questa operazione permette da un lato di arricchire la biblioteca digitale e dall'altro di creare copie cartacee da un libro originale; il processo come descritto prevede che dopo la scansione il documento sia elaborato per renderlo più facilmente fruibile da chi lo userà dopo di te. Le operazioni di post-produzione sono utili soprattuto quando si voglia ristampare e rilegare il libro o digitalizzarlo tramite un OCR, ma non sono indispensabili.
Scansione
Post-produzione
La post produzione può essere eseguita con diversi programmi free. Alcuni di questi permettono di svolgere solo alcune semplici operazioni molto rapidamente altri invece, più pesanti sia in termini di risorse che di tempo, assistono l'intera post produzione del documento. Le operazioni principali da svolgere in questa fase sono: riorientare correttamente le pagine, dividere le scansioni qualora siano state fatte a due pagine per foglio, selezionare l'area della scansione che dovrà finire nel pdf, inserire i margini e comprimere il pdf a dimensioni che lo rendano usabile. Di seguito una collezione di toolchain che possono essere utili per queste operazioni.
Scantailor
Sicuramente il software più completo, ha moltissime opzioni e può fare praticamente tutte le operazioni elencate sopra. Scantailor è pacchettizzato sia su arch che su debian e può essere quindi installato tramite il gestore di pacchetti. E' molto intuitivo e ha una wiki in cui è spiegato il workflow. Per lavorare con scantailor dopo aver scannerizzato un documento sulla Develop Ineo250 è necessario dividere il pdf in una serie di immagini .png. Questo può essere fatto così: si copia il pdf multipagina in una nuova cartella e quindi lo si divide in tanti pdf contenenti una singola pagina:
$ pdftk multipage_document.pdf burst
questo genera tanti file quanti sono le pagine nominati come pg_001.pdf, pg_002.pdf, ecc. Questi possono essere convertiti in png usando:
$ for i in *.pdf; convert -density 300 $i "${i%.pdf}.png";
Così si ottengono le immagini da dare in pasto a scantailor. L'output di scantailor sono una serie di immagini tiff che possono essere compattate in un unico .pdf generando prima una .tiff multipagina:
$ tiffcp out_di_scantailor/*.tiff multipage.tiff
e poi convertendola in un pdf:
$ tiff2pdf megatiff.tiff megapdf.pdf
Briss
Briss è un programma in Java che prende in input un pdf, e permette di selezionare da ciasucna pagina una o più aree che corrisponderanno alle pagine del pdf in output. E' un programma molto semplice e intuitivo che è comodo quando si devono fare solo modifiche veloci su un documento già allineato ecc. Per lanciarlo è sufficiente usare da linea di comando:
$ java -jar briss.jar
dalla cartella dove si è scompattato il software.
OCR
Il passo finale della digitalizzazione è il processo di riconoscimento dei caratteri. Migliore è la qualità della scansione e migliore è stato il loro post-processing e migliore è l'accuratezza che ci si può aspettare da un'operazione OCR.
Tesseract OCR
È il software più completo, può fare OCR in molte lingue diverse e sono disponibili molti pacchetti di trained data per varie lingue.
OCRopus
È un progetto open inizialmente basato su Tesseract e ora dotato di un proprio motore OCR; è in forte crescita.
Pypdfocr
È uno script in Python che combina l'azione di GhostScript, ImageMagick, Poppler e Tesseract OCR. Prende in input un PDF e scrive in output un PDF identico ma con un layer OCR. L'utilizzo è estremamente semplice e nella maggior parte dei casi basta specificare la lingua e dare:
$ pypdfocr -l eng mybeautifulbook.pdf
Per rendere più veloce l'operazione, nel caso in cui il documento abbia già subito un processo di post-produzione come quello indicato nella sezione precedente, allora si può dare:
$ pypdfocr -l eng --skip-preprocess mybeautifulbook.pdf
Il processo è estremamente pesante dal punto di vista computazionale: nel caso in cui si stia lavorando con un PC portatile, potrebbe essere necessaria l'alimentazione da rete elettrica. Potrebbe essere inoltre utile monitorare periodicamente la temperatura della CPU e posizionare la macchina in modo che il sistema di raffreddamento massimizzi il flusso d'aria.