У меня есть изображение, которое я применяю Gaussian Blur для использования как библиотек cv2.GaussianBlur
, так и skimage.gaussian_filter
, но я получаю значительно разные результаты. Мне любопытно, почему, и что можно сделать, чтобы сделать skimage
больше похож на cv2
. Я знаю, skimage.gaussian_filter
- обертка вокруг scipy.scipy.ndimage.filters.gaussian_filter
. Чтобы четко сформулировать вопрос, почему две функции различны и что можно сделать, чтобы сделать их более похожими?Почему Gaussian Filter отличается между cv2 и skimage?
Вот мое тестовое изображение:
Вот cv2
версия (появляется размывание):
Вот версия skimage
/scipy
(кажется резче):
Детали:
skimage_response = skimage.filters.gaussian_filter(im, 2, multichannel=True, mode='reflect')
cv2_response = cv2.GaussianBlur(im, (33, 33), 2)
Так сигма = 2, и размер фильтра достаточно велик, что он не должен делать различие. Imagemagick covnert -gaussian-blur 0x2
визуально соглашается с cv2
.
Версия: cv2
= 2.4.10, skimage
= 0.11.3, scipy
= 0.13.3
Сумма сглаживания контролируется сигмой, а не размером. Пиксели не имеют прямого усреднения, они взвешиваются усредненным гауссовым ядром. Размер просто обрезает вычисления и skimage вычисляет размер, который составляет 4 * сигма. Варианты не должны быть проблемой. Это старая и базовая функциональность. – waldol1
Насколько я могу прочитать здесь, вы используете устаревший funtion gaussian_filter http://scikit-image.org/docs/dev/api/skimage.filters.html#skimage.filters.gaussian_filter, но вы правы, что это является базовой функциональностью. Вы также верно, что сигма коррелирует с размером ядра. Однако я не понимаю, почему сига из 2, которую вы используете в scikit, должна быть эквивалентна размеру ядра 33 в OpenCV. – tfv
Я не математик, но способ, которым я читал https://en.wikipedia.org/wiki/Gaussian_filter, [quote] «Гауссовское ядро требует значений 6 {\ sigma} -1, например, для {\ sigma} 3 ему требуется ядро длиной 17 ". Это означало бы, что ваш sima = 2 эквивалентен ядру размером 6 * 2-1 = 11. Извините, я не эксперт по этому вопросу, но вы можете просмотреть свои предположения о размерах. – tfv