Hlavní navigace

Grafika v UNIXu - tipy a triky pro skenování

Stanislav Brabec 21. 9. 2001

Dnes se dozvíme, co je to moiré a jak se mu vyhnout. Ukážeme si, jak lze napravit neostré obrázky a jak se retušuje Razítkem. Poznáme několik užitečných postupů při skenování problematických předloh.

Rozbíjíme rastr

Pokud skenujeme již vytištěné obrázky, může dojít k interferenci mezi rastrem obrázku a rozlišením zařízení. V časopisech občas najdeme obrázky, na kterých jasně vidíme toto typické moiré (čti moaré) vznikající popsanou interferencí. Abychom se mu vyhnuli, je vždy třeba rastr odstranit (rozbít). Moiré je totiž zrádný jev a jeho projevení je věc (pseudo)náhody – nemusí se objevit na obrazovce ani na zkušebním tisku, dokonce ani na digitálním nátisku, ale až na filmu.

Aby moiré nevzniklo již při skenování, je nutné naskenovat obrázek ve vyšším rozlišení (alespoň dvojnásobném), než je frekvence původního rastru, a následně jej programově zmenšit. Pro zmenšení nesmíme použít metodu nejbližší soused (pokud máme špičkový skener, který sám snižuje rozlišení lepším postupem, není tento krok nutný). Pro malá rozlišení (do 60–70 % frekvence rastru) to stačí. Pro větší rozlišení (do 250 %) pak musíme ještě použít filtry, které obrázek vyhladí. Vhodný je filtr zvaný medián (běžný nebo adaptivní), rozostření konvoluční tabulkou (vyplněnou čtvercově shodnými hodnotami) nebo nelineární filtr v režimu optimálního odhadu. Filtry můžeme používat opakovaně, dokud nebude obrázek hladký beze zbytků rastru (kontrolujeme nejméně v měřítku 1:1). Pro ještě větší rozlišení použijeme běžný nebo rekurzivní medián s příslušným průměrem rozostření, případně mnohokrát za sebou použijeme optimální odhad. Na rozbíjení rastru není příliš vhodné Gaussovo rozostření.

Gama korekci provádíme až po rozbití rastru. Před ním je účinek gama korekce nedefinovatelný. Nakonec obrázek ořízneme, protože pro okrajové pixely nelze rastr rozbít.

Pro lepší podání tmavých barev je možné při zpracování změnit bitovou hloubku. Vlastní skenování může být osmibitové (snímáme jen barevné tečky).

Všechny filtry k rozbíjení rastru obrázek lehce rozostří; můžeme jej však po těchto úpravách ještě doostřit.

Nejproblematičtější je rozbití rastru v obrázku s drobným textem. Často musíme sken ponechat ve vysokém rozlišení (nad 250 % frekvence rastru) a výše uvedené filtry mohou narušit i drobné linky textu. Lze tedy použít pouze standardní (nerekurzivní a neadaptivní) medián nebo ploché rozostření se sníženým průměrem. Můžeme přitom experimentovat s vhodnými prahovými hodnotami. Částečně rozbitý rastr pak lze vyhladit pomocí pomalého selektivního Gaussova rozostření.

Ukázka kompletního postupu: Budeme předpokládat rastr obrázku 150 LPI (linek na palec), požadované rozlišení 300 DPI (bodů na palec).

GIMP:

„Soubor->Získat->XSane [zařízení]“ – gama nastavíme na 1

„Obrázek->Velikost obrázku…“ Poměr 0,5. Rozlišení přepíšeme na 300 (aby se nezměnila informace o velikosti pro tisk).

„Filtry->Vylepšení->Vyčistit…“ Adaptivní: ano, Rekurzivní: ne, Poloměr: 3, Úroveň černé: –1, Úroveň bílé: 256 (ve starších verzích GIMPu lze poslední dvě hodnoty nastavit jen na 0 a 255)

Po první aplikaci filtru:

„Obrázek->Barvy->Úrovně…“ gama (prostřední hodnota horní lišty) na 2,2 (pro sRGB)

Pokud obrázek ještě není čistý, opakujeme „Filtry->Vylepšení->Vyčistit…“, dokud nedosáhne požadované čistoty.

NetPBM:

Jsou zde dvě ukázky s různými filtry. První je včetně změny bitové hloubky pro lepší podání tmavých barev. Velikost rozostřovacího čtverce pro pnmsmooth musí být dostatečná, aby pokryla celou buňku rastru.

scanimage --resolution=600 [další parametry] --mode=Color | \
pnmdepth 65535 | pnmscale .5 | \
pnmsmooth -size 3 3 | \
pnmgamma -cieramp | pnmdepth 255 >obrazek.ppm

Druhá možnost:

scanimage --resolution=600 [další parametry] --mode=Color | \
pnmscale .5 | \
pnmnlfilt .4 .8 | pnmnlfilt -.3 .7 | \
pnmgamma -cieramp >obrazek.ppm
Tabulka č. 198

moiré
Nerozbijeme-li rastr, může v tisku způsobit moiré.

čistý obrázek
Po rozbití rastru budeme mít jistotu, že se moiré nemůže objevit.

ukázka rastru
Původní tiskový rastr.

ukázka rozbití rastru
Rozbitý rastr.

(obrázek z knihy Cesta do říše Velkého chána, Kvasnička a Hampl, 1998)

Čistit nebo retušovat?

To je dilema každého skeneristy. Každá nečistota se objeví ve skenu jako rušivá tečka. Nepracujeme-li v bezprašné místnosti, občasným problémům se neubráníme ani při pečlivém čištění. Pro čištění je ideální látková nebo papírová utěrka, která nepouští chlupy. Čistíme-li vlhkou cestou, nesmí čistič zanechávat mastný povrch ani nesmí vytvářet různé konzervační povlaky.

GIMP: Máme dvě možnosti – automatickou opravu pomocí „Filtry->Vylepšení->Vyčistit…“ (je nutné experimentálně najít vhodné nastavení – viz též minulý díl) nebo ruční překrytí Razítkem.

ukázka retuše razítkem
Rychlokurs retušování Razítkem: Poblíž vadného místa nabereme tlačítkem Control podobný vzorek. Poté jej přeneseme (s vhodnou velikostí stopy) na vadné místo. Celý obrázek si prohlédneme nejméně v měřítku 1:1 a (na ukázce 2:1).

Automatické vyčištění předlohy nám také přijde vhod, pokud náš skener neumí čistě seskenovat fotografie na hrubém papíře a pokryje je řadou bílých plošek. V tomto případě je vhodné skenovat v co nejvyšším rozlišení a experimentovat s automatickým čištěním ihned po naskenování a po případném zmenšení.

Newtonovy kroužky a přilepené fotografie

Přilepení fotografie způsobuje na skenu typické tmavší fleky. Jejich původcem jsou stopy mastnoty na fotografii nebo na desce skeneru, případně vlhkost. Lze se bránit dvojím způsobem – buď dokonalým odmaštěním (a vysušením) fotografie a skeneru a snížením přítlaku na fotografii, nebo spolehlivěji, kvalitněji a nákladněji s pomocí těkavého smáčedla. Lze též použít retušovací Razítko.

S Newtonovými kroužky (jemnými soustřednými barevnými kruhy) se setkáme hlavně při skenování filmů. Boj s nimi je problematický – ve specializovaných prodejnách je možné zakoupit sprej proti Newtonovým kroužkům.

Černá a bílá lepenková podložka

Pokud je jednostranná předloha na tenkém papíře, bílá podložka odstraní ze skenu výraznou kresbu papíru.

Častým problémem je též prokopírování rubu předlohy. Tomu lze naopak zabránit podložením předlohy černou podložkou. Výjimkou je levný hlazený papír týdeníků, kde černá podložka nepravidelně prosvítá. Zde volíme vhodný šedý podklad.

Výborně nám poslouží ochranné lepenkové desky, mezi něž někteří výrobci vkládají pauzovací papíry a fólie.

Boj s neostrostí

Častým problémem levných skenerů a fotoaparátů je neostrost. Uvádím zde několik metod k částečné kompenzaci tohoto problému. S případným mírným šumem si opět poradí pomalé selektivní Gaussovo rozostření. Pro silné doostření je lépe pracovat s gama nekorigovanými prostory.

Při skenování obrázku, který bude doostřován, nezapomeňte na několik pixelů rezervy na okraji obrázku, aby měl filtr dostatek vzorků pro svou činnost. Okrajové pixely nelze doostřit a je vhodné je oříznout.

Jednoduché doostření

Funguje na principu zvýšení odlišnosti jednotlivých pixelů od průměrné hodnoty okolí. Filtr je velmi rychlý, zvýraznění je velmi vysoké. Nepříjemný je pouze zřetelný nárůst šumu v obrázku.

GIMP: „Filtry->Vylepšení->Doostřit…“

Maskování neostrosti

Filtr rozostří obrázek Gaussovým rozostřením, poté zjistí rozdíl oproti původnímu obrázku, vynásobí jej zadaným koeficientem a přičte k původnímu obrázku. Ve výsledku je méně šumu, lze doostřit i více rozostřené obrázky. Je pomalejší než jednoduché zaostření. Při vyšším stupni doostření se však kolem hran objevuje nežádoucí obrys. Alternativní metoda používá Laplaceův operátor.

GIMP: „Filtry->Vylepšení->Maskovat rozostření…“

Convert: -sharpen

Nelineární filtr – zvýraznění hran

Nelineární filtr s hodnotou alfa mezi −0,1 a −0.9. postupuje podobně jako jednoduché doostření, avšak nepracuje lineárně. Má opět problémy s šumem, ale pro malé stupně rozostření dává velmi dobré výsledky.

GIMP: „Filtry->Vylepšení->NL Filtr…“

NetPBM: pnmnlfilt

Iterativní metody

Jde o varianty předchozích metod, avšak doostření není provedeno najednou, ale v několika postupných krocích (s nižšími nastavenými hodnotami). Za cenu zpomalení získáme mírné vylepšení ostrosti.

Analytické metody a doostření neuronovou sítí

Tyto metody zde uvádím pro úplnost, neboť se s nimi běžně nesetkáváme. Fyzikální proces rozostření je analyticky nasimulován rovnicemi. Do rovnic je dosazen výstupní obraz jako známá hodnota a původní obraz jako neznámá. Výsledkem je soustava integrálních rovnic o statisících neznámých, která se pak numerickými metodami vyřeší. Jde o výpočetně náročnou metodu, vyžadující navíc vysoké bitové hloubky. V běžné praxi není tato metoda k ničemu, ale software pro zpracování výstupu z tomografu používá právě tento princip.

Podobně pracuje i doostření neuronovou sítí. Na modelových případech se síť učí z rozostřeného obrazu vytvářet zaostřený. Pokud se poté vyskytne stejný typ rozostření, neuronová síť jej zaostří.

Tabulka č. 199

neostrý obrázek
Detail snímku z minulého dílu. Levný skener snímá neostře.

maskování rozostření
Maskování rozostření. Nejsou problémy s šumem, ale na hranách již dochází ke vzniku jemné kontury. (GIMP: Maskování rozostření 5,0/0,5/0)

iterativní maskování rozostření
Opakováním maskování rozostření s nižšími hodnotami dosáhneme lepší ostrosti a vznik kontury oddálíme. (vícekrát GIMP: Maskování rozostření 1,7/0,12/0)

iterativní maskování rozostření v lineárním prostoru
Předchozí operace provedená v lineárním prostoru (ostatní ukázky byly připraveny v gama korigovaném prostoru). Je patrná vyšší ostrost ve stínech. GIMP je však pouze osmibitový, a tak na tmavých barvách narostl kvantizační šum.

doostření
Doostřením obrázku se neostrost též částečně kompenzuje. Zároveň však narůstá šum. (GIMP: Doostření 70 %)

iterativní doostření
Opakováním slabšího doostření lze při stejném šumu dosáhnout lepší ostrosti. (mnohokrát GIMP: Doostření 10 %)

nelineární filtr
Nelineární filtr. Ostrost je dobrá, opět jsou problémy s šumem. (GIMP: NL Filtr vylepšení hran 0,8/1,0)

iterativní nelineární filtr
Opakování nelineárního filtru s nižšími hodnotami příliš zlepšení nepřináší. (vícekrát GIMP: NL Filtr vylepšení hran 0,33/1,0)

Pérovky v šedích, černobíle v barvách

Chceme-li skenovat tenké čáry levným skenerem, často se stane, že čáry zcela zmizí. Abychom se tomu vyhnuli, naskenujeme fotografii v šedích, provedeme doostření a teprve potom převedeme obrázek do čárové grafiky.

Chceme-li černobíle naskenovat barevnou předlohu, zjistíme, že u mnoha levných skenerů je tmavost barev v černobílém režimu v rozporu s jejich vnímáním (příliš světlá zelená či tmavá červená ap.). Pak je lepší obrázek naskenovat barevně a teprve v počítači jej převést do šedí.

Příště dokončíme povídání o skenerech a poté se zaměříme na výstupní zařízení.

Našli jste v článku chybu?

21. 9. 2001 12:33

Stanislav Brabec (neregistrovaný)

Máte úplnou pravdu. Nějak se mi to spletlo s Gaussovým rozostřením a při korektuře jsem to přehlédl.

Požádám redakci, zdali by to ještě neopravila, abych nemystifikoval čtenáře.



21. 9. 2001 9:55

Stoural (neregistrovaný)

Obavam se, ze krouzky, o kterych se zminujete jsou celkem znamym fyzikalnim jevem zvanym Newtonovy krouzky!

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

120na80.cz: Rakovina oka. Jak ji poznáte?

Rakovina oka. Jak ji poznáte?

Vitalia.cz: Jak vybrat ořechy do cukroví a kde mají levné

Jak vybrat ořechy do cukroví a kde mají levné

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

DigiZone.cz: Flix TV má set-top box s HEVC

Flix TV má set-top box s HEVC

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Podnikatel.cz: Babiš: E-shopy z EET možná vyjmeme

Babiš: E-shopy z EET možná vyjmeme

Lupa.cz: Seznam mění vedení. Pavel Zima v čele končí

Seznam mění vedení. Pavel Zima v čele končí

Lupa.cz: Google měl výpadek, nejel Gmail ani YouTube

Google měl výpadek, nejel Gmail ani YouTube

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Vitalia.cz: Chtějí si léčit kvasinky. Lék je jen v Německu

Chtějí si léčit kvasinky. Lék je jen v Německu

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka