1

Python コードを使用して、一般的なカーネル = 1 (cv2 を使用) だけで画像のラプラシアンを見つけました。今、新しいカーネルを使用したいのですarray([0,-1,0][-1,5,-1][0,-1,0])が、持っているコードを使用してそれを実装する方法や、カーネルを呼び出す新しいコードを作成する方法がわかりません。

ksize = 1
scale = 1
delta = 0
ddepth = cv2.CV_64F

img = cv2.imread('/Users//Desktop/Programming/image.tif')
img = cv2.GaussianBlur(img,(3,3),0)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

gray_lap = cv2.Laplacian(gray,ddepth,ksize = ksize,scale = scale,delta = delta)
dst = cv2.convertScaleAbs(gray_lap)

plt.imshow(dst, cmap = 'gray')
4

2 に答える 2

5

私は Python の OpenCV バインディングに精通していませんが、カスタム畳み込みカーネルの場合はfilter2D. 自分でカーネルを 3x3 配列として構築します。このチュートリアルは C++ ですが、役に立ちそうです。

于 2014-03-19T21:10:24.583 に答える