我試圖在圖像上應用Sobel濾鏡來使用scipy檢測邊緣。我在Windows 7旗艦版(64位)上使用Python 3.2(64位)和scipy 0.9.0。目前,我的代碼如下:使用scipy應用Sobel濾鏡
import scipy
from scipy import ndimage
im = scipy.misc.imread('bike.jpg')
processed = ndimage.sobel(im, 0)
scipy.misc.imsave('sobel.jpg', processed)
我不知道我做錯了什麼,但處理後的圖像看起來並不像它應該什麼。圖像'bike.jpg'是灰度(模式'L'而不是'RGB')圖像,因此每個像素只有一個與之相關的值。
可惜我不能張貼在這裏的圖像,但(沒有足夠的聲譽),但我提供了下面的鏈接:
原圖(bike.jpg): http://s2.postimage.org/64q8w613j/bike.jpg
SciPy的篩選(sobel.jpg): http://s2.postimage.org/64qajpdlb/sobel.jpg
預期輸出: http://s1.postimage.org/5vexz7kdr/normal_sobel.jpg
我顯然會正確■ omewhere!有人可以告訴我在哪裏。謝謝。
是的,我想越過0軸(DX)的衍生物。我實際上試圖實現Canny邊緣檢測器,並且在使用Sobel算子計算梯度時遇到了問題。非常感謝!我需要改變精度。 – Feanor