Автоматизирано оконтрастяване на сканирани изображения

Търсене и предлагане на помощ при сканиране. Теми за началната работа при цифровизацията.
Правила
Уважавайте другите участници и се отнасяйте с тях така, както бихте желали те да се отнасят с вас!
Отговор
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Автоматизирано оконтрастяване на сканирани изображения

Мнение от нт »

Автоматизирано оконтрастяване на сканирани (заснети с цифрова камера) изображения.

В текста по-долу ще се опитам систематично да покажа типичните проблеми и начините за разрешаването им при работа със сканиран текст.
В постингът ще има доста 'картинки', но без тях изложението, мисля, ще бъде много по-неясно.

За начало и получаване на мотивация нека сравним четивността и контраста на изображението преди и след манипулацията в графичен редактор.

Изображение

След обработката буквите са контрастни и лесни за разбиране за ОЦР програмата. Макар да ни изглеждат назъбени, точно това е, което ОЦР програмите искат да 'видят'. Давайки им готова сдъвкана храна спестяваме време за импортиране и си осигуряваме значително по-предсказуеми резултати при разчитането.

Нека обработим изображението с три различни графични редактора с цел по-добро разбиране на това какво правим, а също така и откриване на аналогичните функции при подобни други програми.

Изборът ми падна върху:
1. платеният, но много популярен Photoshop (в моя случай музейната версия 5.0)
2. безплатният GIMP
3. и прекрасната безплатна програма XnView (v. 1.92.1) http://www.xnview.com/

И в трите случая целта ни е както да получим контрастен образ, така и да се подготвим и приложим след това манипулациите върху множество изображения автоматизирано.

Моля, дори да не се интересувате от варианта с Photoshop прочетете този постинг, защото там има важни обяснения, които в останалите липсват.
Последната и единствена промяна е направена от нт на 11 март 2008, 06:55.
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

Photoshop

Системата за автоматизация на Photoshop се нарича Actions. Принципът на действие е, че по време на работа над индивидуален файл системата записва стъпките, които потребителят извършва, след което този Action може да бъде приложен на цяла директория с изображения.

1. Отваряме сканираното (заснето с камера) изображение във Photoshop

2. От панелът actions избираме new set и го именуваме примерно OCR
Изображение

3. Кликайки на малкия триъгълник горе вдясно избираме New Action...
Изображение
именуваме го и натискаме RECORD
Изображение
Червената лампа за запис светва и от този момент нататък системата записва нашите действия. Изисква се известна практика и познание, ако искаме да редактираме Action-a си или да го запишем на части. В този случай ще процедираме направо и внимателно, за да не допуснем грешки и да трябва да повтаряме всичко отначало.

4. Първото нещо, което ще направим е да конвертираме изображението в Greyscale image, т.е. образ, който има само стойности на сивото. Това се прави от менюто IMAGE > MODE > GRAYSCALE
Изображение
При така получения файл няма вече защо да се опасяваме от цветни разсейки, а и файловия размер намалява 3 пъти.

5. След това ротираме, за да 'изправим' образа: IMAGE > ROTATE CANVAS > 90CW
Изображение

6. Следващата стъпка е може би най-съществената - настройване на нивата на черно, бяло и сиво. Levels, на английски. Тази функция дава по-добър контрол от предпочитаната от широките народни маси и напомняща настройките на телевизор Brightnes / Contrast.
Изображение

В отворилата се диалогова кутия внимателно настройваме плъзгачите, така че да запазим максимално от буквите, а да загубим максимално фона. След което кликаме ОК.
Изображение

При тази стъпка оконтрастихме изображението до голяма степен, но то все още съдържа както чисто бели и чисто черни пиксели, така и стойности на сивото. В следващата стъпка ще премахнем и тях.

7. Командата Threshold (праг на черно/бялото) определя къде е границата от която един сив пиксел да бъде третиран като черен, а друг като бял.
Избираме IMAGE > ADJUST > THRESHOLD...
Изображение

В отворилата се диалогова кутия внимателно настройваме плъзгача така че буквите да бъдат максимално плътни и четливи, без да се зацапват, но също и без да се разкъсват. Винаги при неравно осветен текст част от страницата е по-бледа, така че търсим средно разумно положение.
Изображение

Остават ни само още две малки настройки.

8. Първо да оправим резолюцията на заснетия от фотоапарат файл. Камерите работят с екранна резолюция, докато ОЦР програмите искат да им се подават изображения с 300dpi.
(Обяснение, което може да бъде прескочено в червено) Важно е да разбираме какви са взаимовръзките между размера на едно изображение в пиксели и печатарската резолюция. Предполагам, че в мрежата има достатъчно писано по въпроса. Аз ще опитам да го обясня най-просто така: Печатарската резолюция е информацията колко големи (колко раздалечени един от друг) да бъдат отпечатани съществуващите в нашето изображение пиксели.
Примерно, ако имаме файл с размери 100х100 пиксела и резолюция 100dpi - този файл ще бъде отпечатан с размер 1 х 1 инча. Ако печатарската резолюция на същия файл бъде променена на 200dpi, той ще бъде отпечатан с размери 0,5 x 0,5 инча. Намаляването на размера ще доведе до по-фино зърно и по-качествен на вид макар и по-дребен, т.нар. по-високорезолюционен отпечатък. Filesize остава непроменен, защото пикселите са същите на брой, само информацията как да бъдат отпечатани е променена...


Отвараме диалогова кутия от менюто IMAGE > IMAGE SIZE... и правим следните настройки
Изображение
Важно е опцията resample image да бъде изключена, т.е. да не променяме по същество изображението на пикселно ниво. Въвеждаме стойност 300dpi и даваме ОК.

9. Последна стъпка. Конвертираме още веднъж изображението в още по-нисък bit per pixel режим.
Изображение

10. Записваме файлът SAVE AS... като TIF без компресия или PNG със същото име.

11. Стопираме записа на Action от черното квадратче на палетата actions.
Изображение
Така записаните от нас стъпки се виждат изброени по-горе.

12. Можем да изпробваме така записаният Action върху друг файл, който да отворим във Photoshop и да му приложим поредицата от команди. Бутонът > play ще проиграе бързо това, което ние досега така дълго и внимателно обяснявахме.
Ако сме доволни от резултата, можем да запазим action-a като файл от същото триъгълно бутонче горе вдясно на палетата.

13. Обработка на папка с изображения използвайки току-що записания action.
От менюто FILE > AUTOMATE > BATCH... извикваме тази диалогова кутия
Изображение
В по-новите версии на Photoshop тя е значително усложнена и предлага много по-богата функционалност, но така или иначе това което нас ни интересува е source и target директориите. След като посочим къде са нашите оригинални файлове и къде искаме да бъдат записани модифицираните, даваме ОК и компютърът започва работа над изображенията едно по едно.
Може да се наложи да се справите с документацията на версията на Photoshop, която ползвате за настройките на тази точно диалогова кутия.

Ето така записаният action за всеки, който желае да го ползва на готово или да експериментира с редактирането му http://www.uploading.com/files/JFGSHFAX/OCR.zip.html

Заключение: Така подготвените TIFF файлове не изискват почти никаква обработка от Fine Reader-a и биват импортирани от програмата мълниеносно. Освен това разчитаемостта ще се увеличи значително.

Action-ите могат лесно да бъдат дублирани и редактирани. Това, което ще различава една книга от друга е контраста на букви/хартия, т.е. единствено настройките в т. 6 и може би т. 7 може да се наложи да бъдат променени.
Последната и единствена промяна е направена от нт на 11 март 2008, 07:05.
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

GIMP

Положението с GIMP e аналогично на това при Photoshop, с изключение на системата му за Batch Processing, която не е така лесна за употреба.
Как да си запишете и изпълните batch в GIMP погледнете тук http://www.gimp.org/tutorials/Basic_Batch/

Тъй като смятам програмата за не така подходяща и значително по-усложнена по отношение на обработката на многобройни изображения в сравнение с другата безплатна алтернатива - XnView - ще дам настройките при GIMP само в текстов вид без илюстрации.

1. Отваряме изображението

2. и 3. оставам празни, за да могат останалите стъпки да бъдат аналогични на описаните в туториала за Photoshop.

4. От менюто IMAGE избираме MODE > GRAYSCALE

5. От менюто IMAGE избираме TRANSFORM > ROTATE 90 DEGREES CW

6. Levels при GIMP се намира в меню TOOLS > COLOR TOOLS > LEVELS
Настройваме по подобие на описаното в т. 6 за Photoshop
Инструментът работи по абсолютно същият начин и стойностите са същите

7. Threshold при GIMP се намира в меню TOOLS > COLOR TOOLS > THRESHOLD
Настройваме по подобие на описаното в т. 7 за Photoshop
Инструментът работи по абсолютно същият начин и стойностите са същите

8. Настройваме резолюцията на 300dpi от диалоговата кутия
IMAGE > SCALE IMAGE
като задаваме стойности за X resolution и Y resolution 300 и внимаваме image size - размерът в пиксели да остане непроменен.

9. GIMP е силно ограничен откъм цветови пространства и модели. Истински еднобитов режим липсва. Ако все пак искаме, можем да ползваме
IMAGE > MODE > INDEXED...
и там да изберем BLACK AND WHITE (1 BIT) PALETTE
и за COLOR DITHERING: NONE

10. Записваме файлът като TIF, compression: NONE
Последната и единствена промяна е направена от нт на 11 март 2008, 10:14.
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

XnView - http://www.xnview.com/
вероятно това е най-добрата от трите алтернативи - лека, бърза и безплатна

Методът тук е леко по-различен.
Първо ще установим какви стойности ни трябват за различните настройки, а после ще създадем съответният Batch с нужните параметри.

1. Отваряме файла в тъй наречения Viewer на XnView, т.е. в режим на показване на едно изображение, а не Browser-a с thumbnails.

2. От меню IMAGE > ROTATE > 90 RIGHT завъртаме текста
Изображение

3. От IMAGE > CONVERT TO GREY избираме 256 GREY SCALE
Изображение

4. Oт IMAGE > SET DPI настройваме печатарската резолюция на 300
Изображение

5. В XnView за съжаление нямаме нито истинки Levels, нито Threshold, но съвсем добър резултат може да се получи ако ползваме
IMAGE > ADJUST > BRIGTHNESS / CONTRAST / GAMMA / BALANCE
Изображение
Целта ни е да получим максимално контрастен образ, както е описано в т. 6 и т. 7 при туториала за Photoshop.

Записваме си на листче стойностите за brightness и contrast.

6. Обръщаме изображението в еднобитово.
Изображение

7. Записваме го FILE > SAVE AS като TIF без компресия или PNG
С това упражението по обработка на единична страница приключва.

8. Batch. Преминаваме в т.нар. Browser mode на XnView. Селектираме поредица от изображения, може да бъде част от директорията или всички.
От менюто TOOLS избираме BATCH PROCESSING
В отворилата се диалогова кутия има два таба.

Първият General е за избор на файлов формат и дестинация за новите файлове. Избираме TIF или PNG

Вторият таб Transformations ни дава възможност да задаваме поредица от задачи. Отляво избираме и добавяме надясно.
Изображение
като за DPI, Brightness и Contrast въвеждаме стойностите, които сме си записали предварително на лист хартия :)

9. Можем да запазим така създаденият Batch скрипт за следваща употреба
Ето този, който създадох аз http://www.uploading.com/files/95TFWV9V ... h.zip.html

10. Натискаме бутона GO и компютъра започва да работи вместо нас.

Заключение: Това ми се струва най-лесният вариант с приемливо качество. Все пак Photoshop дава повече контрол и резултатът от там е по-добър. Ако ОЦР програмата се справя достатъчно добре с файлове излезли от XnView това вероятно е и идеалното решение.
Аз лично смятам тази програма за брилянтна и незаменима!
Последната и единствена промяна е направена от нт на 11 март 2008, 07:11.
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

Ето на края и пълният обработен файл, който бихте могли да тествате на своята ОЦР програма. Би трябвало да се импортира лесно и да няма проблеми при разчитането.

Изображение

PS. Ако сметнете, че темата е полезна, моля, който има възможност да прехвърли двата нищожни zip файла, съдържащи action-a за Photoshop и скрипта за XnView на постоянен хостинг, защото иначе скоро ще изчезнат.
Моля също модераторите да оправят правописни грешки, където забележат. Аз сега също ще огледам.
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

Баланс на бялото при цифрови фотоапарати - Custom White Balance

Сетих се нещо, което пропуснах да спомена в началото, макар да не е пряко свързано с обработката на изображенията...

Повечето от съвременните цифрови фотоапарати дават възможност за избор на няколко автоматични и няколко полуавтоматични режима на снимане. Моделите от по-висок клас дават възможност и за напълно ръчни настройки.
Много важен компонент за правилното експониране и цветопредаване е т. нар. White Balance или 'баланс на бялото'. Изходна точка 'нула' за белия цвят в зависимост от цветната температура на светлината, с която обекът е осветен.

Направете справка с ръководството на вашия апарат и ако той има възможност за Custom White Balance, разучете как се използва. Принципно това би трябвало да сведе до минимум нуждата от последваща обработка на снимките. Идеята на Custom White Banalce-a e да се покаже на камерата бял лист на съответното осветление, най-добре титулна страница от книгата и да и се каже, че това е цветът, който искаме да бъде бял. Тогава целият механизъм на експозиция на камерата ще бъде така настроен, че да предава този цвят като бял, а останалите като относителни на него.

Надявам се, че това е също полезна информация и насока, в която да проучите вашите устройства. Аз имам опит само от висок клас цифрови апарати и не съм съвсем сигурен как точно са реализирани тези функции в потребителския клас, но знам със сигурност, че много от моделите имат Custom White Balance. Той е достъпен само при полу автоматични и ръчни режими на снимане от типа на P (Program Auto Еposure), A / Av (Aperture Priority) и т.н.

Успех на всички, които тепърва тръгват по дългия и стръмен път на обработката на цифрови изображения!
Гост

Мнение от Гост »

абе това xnview в раздела за настройка на цветовете много прилича на ирфанвюто, не мислите ли?
piki
Мнения: 65
Регистрация: 08 септември 2007, 11:35

Мнение от piki »

Качил съм двата скрипта на:
http://utenti.lycos.it/sadjoker/mylib

Доста от дълго е този хостинг... едно 5-6 години не е мърдал.
Дано и занапред да е така :D
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

piki написа:Качил съм двата скрипта на:
http://utenti.lycos.it/sadjoker/mylib
...
Благодаря, piki!
Аватар
Boman
Мнения: 89
Регистрация: 03 февруари 2007, 08:24

Мнение от Boman »

Предлагам ви тази версия за подобряване на страниците като допълнение на нт като използвам Paint.NET. Програмата изисква .NET Framework 2.0 да е инсталирана

Предимства:
Постига най-добри резултати за най-кратко време; изключително лесна за използване; бърза; безплатна.

Недостатъци:
Няма batch режим; изисква Windows XP или Vista; записва файловете в 32 битов цвят.

За целта ще използваме наготово същата примерна картинка от оригиналното ръководство на нт:
(ocrp01qf7.png)
Изображение

1. Отворете файла за обработка и го увеличете или намалете на екрана, за да виждате добре как изглежда страницата.

2. Щракнете на Black and White в менюто Adjustments.

3. От главното меню Adjustments изберете Levels.

4. Щракнете върху десния плъзгач в средата на скалата и го провлачете докрай до долу.(1) В същото време картинката става черна на екрана. Сега хванете левия плъзгач по същия начин и го влачете надолу докато фонът стане бял и ви харесат буквите.(2) Затворете настройката като потвърдите с OK.(3)

Изображение

Забележка: В идеалния случай буквите са плътни и непрекъснати, но не много дебели и не са залепени една за друга.

5. За да смените резолюцията на 300 dpi отидете на Resize в менюто Image. В полето Resolution сменете мерната единица на pixels/inch (ако е pixels/cm)(1) и после напишете 300.(2) Потвърдете промяната с OK.(3)

Изображение

6. Запишете файла като tif или png. Tif е за предпочитане.
Ето крайния резултат:

Изображение

7. Използвайте batch режима на XnView или IrfanView, за да презапишете наведнъж всички обработени картинки като черно-бели (2 bit). Ако не знаете как, ще трябва да го добавим като отделно ръководство.

Единственото неудобство на програмата е, че обработката не може да се приложи върху повече от една картинка едновременно, но затова пък помни настройката на Levels, така че ако заредите веднага следващата картинка, плъзгачите на Levels са вече настроени от предишния път.

Допълнение: Същият резултат можете да постигнете с настройката Curves вместо Levels от менюто Adjustments, но изисква малко повече опит и търпение. Можете да опитате. Не забравяйте да използвайте оригиналната картинка. Като отворите настройката Curves щракнете някъде върху долната половина на линията, за да създадете точка на нея. Създайте още една точка в горната половина част на линията. Тогава провлачете точките една по една така, че линията да стане почти вертикална. Това е мястото, където се изисква малко повече експериментиране, докато свикнете.

Изображение
Закон на Мърфи: ако мнението ми във форума може да бъде разбрано погрешно, то това ще стане!
Аватар
нт
Мнения: 176
Регистрация: 04 февруари 2007, 01:53

Мнение от нт »

Благодаря за допълнението, Boman!
PYMEH

Re: Автоматизирано оконтрастяване на сканирани изображения

Мнение от PYMEH »

моля те, ъплоудни екшъна на фотошопа пак "Ето така записаният action за всеки, който желае да го ползва на готово или да експериментира с редактирането му http://www.uploading.com/files/JFGSHFAX/OCR.zip.html " или ми го метни на [email protected], че в последното оконтрастяване се омазвам лошо.
taurus
Мнения: 72
Регистрация: 28 март 2012, 00:26

Автоматизирано изрязване на наборното поле

Мнение от taurus »

Гледам, че хора сканират/снимат книги, но във формат, който е приемлив само за четене през компютър...
Искам да се опитам да намеря лесен начин за сканиране и форматиране и след това удобно за четене с ел. четец.

Има ли такъв Action, който автоматично да изрязва само наборното поле, а не една по една страници ръчно да ги изрязваш?
При нужда от хоризонтиране на страниците - може ли и това да става автоматично?

Идеята ми е ако няма да се обработва през OCR, поне да може да се чете лесно на ел. четец.
Вече има и 6.8", които без проблем могат в лендскейп режим да се прегледа на два раза една страница - с то с нормален шрифт. Единственото което ще е като недостатък е прелистването/рефрешването (понеже ще е изображение, а не текст), но новите четци са вече доста бързи в това отношение.

Първата книга, която мисля да снимам ще е такава, която е отпечатана с много дребен шрифт и е мазохизъм да се чете...


Сега търся приложение за самоснимане, през определен интервал (да речем 5сек, в които да подготвя следващата страница, без да натискам всеки път бутона на телефона, но все пак има и самоснимачка (3, 5, 10сек).

Камерата на телефона ми е добра - има 5М и 8М резолюция, ръчен фокус, монохроматичен режим (ч/б), ISO (100-800).
LG G2 mini
Отговор

Обратно към

Кой е на линия

Потребители, разглеждащи форума: 0 гости