Я пытаюсь научить свою камеру быть сканером: я делаю снимки напечатанного текста, а затем преобразую их в растровые изображения (а затем в djvu и OCR). Мне нужно вычислить порог, для которого пиксели должны быть белыми, а какие черными, но я застрял из-за неравномерного освещения. Например, если пиксели в центре достаточно темные, я могу получить черные пиксели по углам.
То, что я хотел бы сделать при относительно простых предположениях, - это компенсировать неравномерное освещение перед установкой порога. Точнее:
Предположим, один или два источника света, возможно, один с постепенным изменением интенсивности света на поверхности (окружающий свет), а другой с обратным квадратом (прямой свет).
Предположим, что все белые части бумаги имеют одинаковую отражательную способность / альбедо / что угодно.
Найдите некоторый алгоритм для оценки степени освещенности каждого пикселя, и из этого восстановите отражательную способность каждого пикселя.
По отражающей способности пикселя классифицировать его как белый или черный
Я понятия не имею, как написать алгоритм для этого. Я не хочу прибегать к подгонке методом наименьших квадратов, так как я бы как-то хотел игнорировать темных пикселей при оценке освещенности. Я также не знаю, сработает ли алгоритм.
Все полезные советы будут проголосованы!
РЕДАКТИРОВАТЬ : Я определенно подумал о том, чтобы нарезать изображение на достаточно большие куски, чтобы они по-прежнему выглядели как «текст на белом фоне», но достаточно малы, чтобы освещение одной части было менее равномерно Я думаю, что если я затем интерполирую пороги, чтобы не было разрыва между границами подизображения, я, вероятно, получу что-то наполовину приличное. Это хорошее предложение, и мне придется попробовать его, но оно все еще оставляет мне проблему с тем, где провести черту между белым и черным. Еще мысли?
EDIT : Вот некоторые снимки экрана из GIMP, показывающие различные гистограммы и «лучшее» пороговое значение (выбранное вручную) для каждой гистограммы. В двух из трех достаточно одного порога для всего изображения. В третьем, однако, верхний левый угол действительно нуждается в другом пороге: