2013-03-16 4 views
0

Я использовал гауссовское размытие, используя матрицы/ядра. У меня 3x3, 5x5 и 7x7. Однако в Corel PhotoPaint можно использовать Gaussian Blur с параметром от 0,1 до 250,0. Для значения 250 это делает изображение полностью размытым и работает мгновенно. Я попытался применить размытие 7x7 7 раз, но это занимает много времени, и изображение так же размыто, как Gaussian Blur 4.0 от Corel.Как сделать параметризованное размытие по Гауссу?

Как я могу настроить гауссовское размытие, параметризованное как одно из Corel и размытие изображений быстро?

I am using a bit optimized C code from Rosetta и 7x7 matrix from Wikipedia

I also used this routine to create 51x51 kernel но результат сравним с Corel по Гаусс = 15,0 и занимает около 30 секунд (что в 30 раз медленнее, чем Corel).

+0

Я думаю, что код, псевдо-код или общее описание вашего алгоритма размытия могут быть полезны. Если ваш алгоритм размытия - O (N^2), то я думаю, что есть оптимизации. – angelatlarge

+0

Я думаю, что также может быть важно четко определить, что означают параметры размытия. У меня сложилось впечатление, что нужны два параметра: пиксели будут размыты (вызовите эту область размытия или параметр 'N') и размер квадрата, который будет рассмотрен для определения нового значения размытого пикселя (назовем это' M'). В вашем размытии 3x3 есть 'N' = 3 или' M' = 3? – angelatlarge

+0

@angelatlarge Я думаю, что мой M равен 3 (размер моего ядра), а N - 400 (размер изображения составляет около 400x400). – Tom

ответ

2

Вы должны помнить, что двумерное размытие по Гауссу является разделимым преобразованием?

Он может быть реализован как два отдельных преобразования 1D. Также, check this out.

+0

Да, но я не был уверен, что так будет быстрее. Кроме того, я не могу найти описания алгоритма для этого. Везде есть только 2-й Гаусс. – Tom

+0

Хорошо, я нашел так называемую «функцию Гаусса», которая сгенерировала 1d ядер, и похоже, что это делает работу. Я смотрел на «1d gaussian», что было неправильно. – Tom

+1

Рад, что я могу помочь! –

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

  • Нет связанных вопросов^_^