Book Scan Wizard 2.0.2 - szkennelés feldolgozó program
Weblapja: http://sourceforge.net/projects/bookscanwizard/
Segédprogram a szkennelt képfájlok feldolgozásra. Képes PDF létrehozására és a Tesseract segítségével karakterfelismerésre (külön kell telepíteni).
A legagyobb különbség a ScanTailorhoz képest, hogy ez a program fixen megadandó koorinátákkal és egyéb számokkal dolgozik, amit nekünk kell összeállítani (méretre vágások, szín küszöbszint stb), míg a ScanTailor az ilyesmiket automatikusan detektálja és csak néha kell finomítani.
Főbb funkciói
- Oldalak beforgatása 90, -90 fokkal vagy tetszőleges szögben
- Perspektivikus torzítás javítása (keystone)
- Oldalak szélének levágása
- Fekete-fehérre vágás, egyéb színműveletek (pl. szintek)
- OCR, PDF készítés
- Parancssorból is futtatható
QR kódok
A program különlegessége a QR kódok használata. A QR kódokat a programból lehet kinyomtatni, majd szkennelés közben berakosgatni a szkennerbe, hogy bizonyos parancsokra utasítsuk a BookScanWizardot. Ezzel néhány lépés automatizálható.

- Redo the page set: Oldal-pár újrafényképezése. A legutóbb fényképezett kép-párt elveti és a következőkkel helyettesíti. Akkor hasznos, ha már szkennelés közben észrevettük, hogy nem lett jó.
- Adjust perspective: Perspektivikus torzítás javítása. Ez 4 QR kódot nyomtat amivel a program automatikusan detektálni tudja a használandó javítási paramétereket. De mivel nagyon pontosan be kell illeszteni a könyvbe, ezért egyszerűbb ezt a torzítást a programban javítani! Az ötlet feltalálója egyébként a módszert a fényképező és a szkenner pontatlan igazításának javítására használta!
- Change to black and white or grayscale: Átváltás fekete-fehér vagy szürke módra. Ez is elvégezhető a programban is.
- Flag page: Oldal megjelölése. Arra jó, hogy jelzést hagyjunk magunknak, hogy az szkennelt oldalon valamit majd ellenőrizni kell.
- Gray card: Szürke kártya. A következő oldal egy szürke-kártya. (fehéregyensúly referencia kártya) A program képes a szürke kártyára készített kép alapján a kép exponáltságának javítására.
- Skip this page: Oldal átugrása. Ezt lehet például teljesen üres oldalakra tenni, ha ki szeretnénk hagyni a végleges kimenetből. Ezt kivételesen nem egy oldal előtt vagy után kell használni, hanem rajta.
- End book: Könyv vége, ezt ragaszthatjuk akár a könyvtartóra is, így amikor kivesszük a könyvet készíthetünk egy könyv-vége jelet. Az ezek mentén történő automatikus szétválogatás még Title QR kóddal is megtámogatható, akkor egyből tudja a program, milyen nevű könyvtárakra rendezze szét a képeket.
Használata
Fontos, hogy a könyv szkennelése közben minél kevesebb dolgot állítsunk át. Példál ne vegyük ki a könyvet, lehetőleg ne kelljen utólag lapot pótolni. Ugyanis a program egy-egy lapon kijelölve (pl. bekeretezve) tudja végrehajtani a műveleteket az összes lapra, de ezek a kereteket összevissza kell mozgatnunk ha a könyvet is mozgattuk.
Fájlok előkészítése
Elsőként meg kell adunk a képfájlok helyét. Ha a páros és páratlan oldalakat két géppel fényképeztük de egy időben, akkor a következő két paranccsal lehet egy könyvtárba másolni, a C:\source\l és C:\source\r (left, right) képek esetén:
bsw -mergelr c:\source c:\merged
bsw -split -scale .25 c:\merged c:\sorted
Ha változtattunk bizonyos képeken, például hordótorzítás javítása,
akkor a képek nem lesznek időrendi sorrendben. Ilyenkor a -mergelr
mellett a -ignoretimes
-t is meg kell adni! (A két fényképezőnek órájának nem
kell szinkronban lennie.)
A lényeg, hogy a végén minden kép legyen a [munkakönyvtár]/source
alkönyvtárában,
és legyenek "párban" a jobb és bal oldalak képei.
Új projekt létrehozása
A program indítása után ez az ablak fogad, amelyben megadható a munkakönyvtár, a bemeneti képek helye, a kimenet és néhány más beállítás. A program ezekből készíti el az alap működési szkriptet, amelyet aztán tetszőlegesen módosíthatunk.
Projekt paraméterek megadása

Második képen meg kell adni, hogy melyik oldalt merre kell forgatni (utólag is módosítható).
Oldalak forgatásának megadása

Ha bejelöltük a QR kódok keresését, akkor a program rákérdez, hogy
most nézze-e át a képeket. Válasszunk igent. Ennek kimenetét egy barcodes.csv
nevű fájlba ki is menti.
Ha kész, találkozhatunk a program főképernyőjével.
A program áttekintése
A program "parancs szkriptet ír" a képkezelési feladatok elvégzésére. A szkript létrehozását bizonyos egér műveletekkel végezhetjük, de elkészülő parancsokba néha manuálisan is bele kell írogatunk.
A "Help" menüben vagy F1 megnyomására megnézhetők az egyes parancsok és paraméterezésük. Ha egy parancson állt a kurzor, akkor annak a súgóját jeleníti meg.
Fontos figyelni arra, hogy az elkészülő szkripten hol áll a kurzor, az mert
egyes parancsok a kurzor soráig futnak le. Próbaként az imént létrejött szkriptben
álljunk a Page Rotations
szekció végére, majd nyomjuk meg a Preview
gombot.
Ekkor a forgatás előnézetét láthatjuk, a többi művelet nem hajtódik végre.
Az előnézetben megjelenő műveleteket a program felső sorában ki-bekapcsolhatjuk.
Például következő két pontban leírt funkciók
eredménye csak akkor jelenik meg a Preview
lenyomása után, ha a Perspective
és
a Crops
be van jelölve a felső sorban. Bizonyos esetekben pedig kötelező,
hogy ezek egyike-másika be legyen kapcsolva, hiszen például a vágás
koordinátáit hiába mutatjuk meg a programnak, ha nem az előtte végrehajtódó
perspektivikus javítás
eredményén kattogunk!
Programírás kattintgatással...

Perspektivikus torzítás
Válasszunk ki egy oldalt a könyv elején és ezen kattintsunk a négy
sarkára, óramutató járásával megegyező irányban. (Tapasztalatom szerint
az elrontott kijelölést a Cut
menüvel lehet törölni.)
Jobb gomb, Fix perspektive
- ezzel
létre fog jönni a szükséges perspektíva javítási és vágási parancs. A beszúrt
konfiguráció sor valami ilyesmi lesz:
Pages = left
Perspective = 123,398, 2295,401, 2254,3621, 82,3599
Az ilyen sorokra jobb gombbal kattintva is végezhető művelet. Például
Copy points to viewer
-rel a koordináta visszamásolható a képre.
Érdemes néhány másik lapon is ellenőrizni a perspektíva javítást majd
egy jobb oldalra is megcsinálni ugyanezt. a program magától létrehozza a
szükséges Pages=right
sorokat, a parancs létrehozása előtt mozgassuk
oda a kurzort ahova szeretnénk.
Ha bizonyos oldalakon nem jók ezek a paraméterek, akkor azon megismételve a dolgot
a korábbi pl Pages=left
+ Percpective
alatt állva, az újabb oldaltól életbe
lépő javítási parancsot hoz létre a program. Ehhez egy speciális StartPage
parancsot fog beszúrni a program, amivel átértelmezi az előző "Pages" parancsot
és az adott oldaltól már a következő paramétersorral dolgozik.
Ha pontosítani akarjuk, hogy melyik oldalakra vonatkozzon, akkor például a bal oldali lapok kiválasztása, 001, 003, 005...,099-ig:
Pages = left 001-100
vagy például minden oldal kiválasztása a 234-es kivételével:
Pages = -IMG_233,IMG_235-
De ilyen megadásoknál nagyon figyeljünk arra, hogy semmiképpen se
legyen átfedés. Ez nem úgy működik mint a StartPage
, hanem a Pages-ben
megadottnak megfelelő oldalakra mindenképp végrehajtja a következő
parancsokat, akkor is, ha 2-3 perspektivikus javításnak egymás után semmi
értelme nincs!
Vágás
Mivel a vágás koordinátáit az előnézeti képen fogjuk megadni, fontos, hogy
a felső sorban kapcsoljuk be a Perspektive
előnézetet és a kurzorral
álljunk a perspektivikus javítási műveletek alatt. Csak így dolgozunk
valóban abban a koordináta rendszerben és kép pozícióval amivel a program is fog!
A vágás Crop
menüpont csak akkor jelenik meg a jobb gomb menüben, ha
pontosan téglalap területet jelöltünk ki. Ehhez töröljük a meglévő kijelölést
(Cut
) és jelöljünk a bal-felső majd a jobb-alsó sarokba kattintva.
Perspektivikus torzítás és vágás

Ahhoz, hogy a jobb és bal oldalakat ugyanakkorára vágjuk, illetve
minden oldalt ugyanakkorára vágjunk. Használjuk a Copy points to viewer
menüt, hogy a már meglévő keretet áthozzuk egy másik oldalra, majd ott
a belsejében megfogva helyre igazítható.
A pontos igazítást segíti, ha a az első vágási
keret létrehozásakor CTRL-lel kattintva piros jelző-keresztet helyezzünk el,
például az első karakteren és ezzel tároljuk a Crop-ot. Így a
másik oldalra áthozáskor a piros keresztet kell az első karakterre mozgatni.
Az ilyen jelzős koordináták reg
-ként jelennek meg:
StartPage = 01
Crop = 164,482, 2218,3495 reg: 231,691
Küszöbszint és egyéb szín műveletek
Fontos, hogy a Filters
(szűrők) szekcióhoz érve már a Crops
felső
előnézeti pipa is be legyen jelölve, mert bizonyos szűrők csak ekkor
működnek helyesen.
A Color = bw 40
értékkel 40-es fényerőnél vágja fekete-fehérre a képet.
Ezzel kell kísérletezni, hogy a lehető legjobb értéket érje el. Mindig
használjuk az adott pontig való lefuttatást, ha ellenőrizni szeretnénk,
hogy adott végeredményt pontosan mikből tevődik össze.
A küszöbszint vágás minőségén javíthatunk, ha előtte a kép színein javítunk.
Erre egy jó módszer, ha a jobb egérgomb menüben az Auto RGB Levels
-t
használjuk. Illetve, a Tools -> Filter dialog
menüben is kísérletezhetünk
szintek vágásával.
A MedianFilter
segítségével pedig magányos fekete pöttyöket távolíthatunk
el a képről. Példa egy filter összeállításra:
Pages all
Levels = 20.4,73.3, 19.6,70.6, 10.2,54.5
Color = gray
MedianFilter = 5
Color = bw 55
Jelenleg nekem a szürkítés nem működik, eltünteti a képet.
Egyéb parancsok
A parancsokról a súgó F1 gombbal érhető el. Néhány érdekesebb:
LoadLRImages = ignore_times E:\Books\The....
: ignore_times esetén, a betöltési sorrendhez nem veszi figyelembe a fájlok idejét, ami akkor hasznos, ha módosítottunk fájlokat és az idejük és már nem követi a szkennelési sorrendet.OCR = language=hun
: karakterfelismerés magyar nyelven. (A tesseractnak telepítve kell lennie. Ha nincs benne a PATH-ban akkor az ORC első paramétereben a teasseract könyvtárát kell megadni!)CreatePDF = book.pdf Options=2-UP,Scrolling,UseTitle
: PDF létrehozása, sok opciója van.
Ha a bal és a jobb oldali fényképezőnk nem egyforma megapixeles akkor így egységesíthetjük a képeket:
Pages = left
SetSourceDPI = 400
Pages = right
SetSourceDPI = 550
ScaleToDPI= 300
De valószínű, hogy a következő parancs is megoldja, és ez alapból belekerül:
Pages = all
# This will ensure the left and right pages are exactly the same size.
ScaleToFirst=
Linkek
Angolul
- My process using BookScanWizard - a program készítőjétől
- Bemutató video