0
我試圖實現使用Python和openCV
的「LOG斑點探測器」。 的想法是創建10-15級別的日誌過濾器,他們每個人都適用於我原來的灰度圖像並保存圖像尺寸height
X width
X numOfLevels
的數組,然後找到3D陣列上的局部最大值。我不知道如何將這些保存在數組中。Python中像陣列 OpenCV的 numpy的
我試着做到以下幾點:
myImage = cv2.imread('butterfly.jpg')
gray_image = cv2.cvtColor(myImage, cv2.COLOR_BGR2GRAY)
sigma = 2
k = 2**(0.25)
std2 = float(sigma**2)
arr = []
for i in range(10):
filt_size = 2*np.ceil(3*sigma)+1
H = log_filt(filt_size, sigma)
H *= sigma**2
dst = cv2.filter2D(gray_image,-1,H)
arr.append(dst)
cv2.imshow('Gray', dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
sigma = sigma * k
std2 = float(sigma**2)
plt.imshow(H,interpolation='nearest')
不過,如果我嘗試採取的圖像,並使用cv2.imshow(arr[0])
我收到以下錯誤:
TypeError: Required argument 'mat' (pos 2) not found
我在做什麼這裏錯了嗎?
有沒有更好的方式來保存這些數組?
也許使用np.array
不知何故?
請總是包括完整的錯誤追溯,而不僅僅是錯誤消息。 – cel