2009-06-10 4 views
3

Я возился с манипуляциями с изображениями, в основном используя Python. Сейчас я не слишком беспокоюсь о производительности, поскольку я просто делаю это для удовольствия. До сих пор я могу загружать растровые изображения, объединять их (в соответствии с некоторой функцией) и делать некоторый ДЕЙСТВИТЕЛЬНО грубый анализ (найти самые яркие/темные точки, такие вещи).Каков наилучший способ «размазать» изображение программным путем?

Я хотел бы иметь возможность сделать снимок, создать набор контрольных точек (которые я могу более или менее делать сейчас), а затем размыть изображение, начиная с контрольной точки и перемещаясь в определенном направлении , То, что я не уверен в этом, - это сам процесс смазывания. Какой хороший алгоритм для этого?

ответ

1

Один из методов заключается в применении Gaussian blur (или какого-либо другого размытия) к каждой точке области, определяемой вашими контрольными точками.

+0

Это половина того, что я пытаюсь сделать. Наверное, я должен был быть более конкретным. Я пытаюсь «нажимать» область изображения вокруг, подобно инструменту smudge в GIMP или Photoshop. –

1

Одним из способов было бы создать сетку, в которой перемещаются ваши контрольные точки, а затем использовать методы сопоставления текстур для отображения изображения обратно на искаженную сетку.

2

Попробуйте PythonMagick (привязки библиотеки ImageMagick для Python). Если вы не можете найти его в репозиториях вашего дистрибутива, заберите его здесь: http://www.imagemagick.org/download/python/

Он имеет больше функций эффекта, чем вы можете встряхнуть палку.

0

Я могу поручиться за гауссовское размытие, упомянутое выше, его довольно просто реализовать и обеспечивает довольно приличный результат размытия.

Джеймс

0

Этот вопрос довольно старый, но я недавно получил заинтересован в этом сам предмет поэтому, возможно, это может быть полезным для кого-то. Я применил кисть «smudge», используя Imagick for PHP, которая примерно основана на технике смазывания, описанной в этом paper. Если вы хотите проверить код, не стесняйтесь взглянуть на проект: Magickpaint

Смежные вопросы