четверг, 25 июня 2009 г.

Статья на хабре про обработку картинок

Увидел вот статейку интересную с названием "Фильтрация изображений методом свертки". Дай, думаю, пока есть чуток времени - напишу на питоне из исходных условий (заранее скажу что то ли автор слукавил, то ли еще чего, но картинки у меня чуть иными получаются, чуть режче)).

Сразу столкнулся с некоторыми проблемами и "нехваткой условий", что ли, продублирую свой комментарий к этому посту на хабре:

Конечно да. Решил таки написать на питончике этот скрипт просто по описанному вами алгоритму — не получилось до конца, пришлось таки текст программы читать. Чего именно не хватало:

1. Что делать на границе? Первый же пиксель (0, 0) и я в ступоре. Оказалось что пиксели изображения недостающие надо пропускать (это еще очевидно), но неочевидным оказалось то, что сумму сетки тоже надо брать только ту, что на пиксели наложена (тоесть не учитывать некоторое на границе как и в случае с изображением).
2. Деление на ноль (а как по коду оказалось — если меньше нуля то тоже надо единицу ставить)
if (kSum <= 0) kSum = 1;

А в целом — спасибо огромное, куча позитива и все такое). Вот, собственно, программка: dpaste.com/hold/59566/ (привентил прогресс-бар на всякий случай, брать его здесь code.google.com/p/python-progressbar/)


Не знаю что там со скоростью работы (у меня довольно медленно, секунд 20), но писать на питоне - одно удовольствие. Каждый раз по новой убеждаюсь.

Комментариев нет: