代碼:
import matplotlib.pyplot as plt
import pylab
import cv2
import numpy as np
img = plt.imread("jpeg.jpeg") #在這裡讀取圖檔
plt.imshow(img) #顯示讀取的圖檔
pylab.show()
fil_0 = np.array([[ -1,-1, 0], #這個是設定的濾波,也就是卷積核
[ -1, 0, 1],
[ 0, 1, 1]])
fil_1 = np.array([[ -1,0, 1], #這個是設定的濾波,也就是卷積核
[ -2, 0, 2],
[ -1, 0, 1]])
fil_2 = np.array([[ -1,-2, -1], #這個是設定的濾波,也就是卷積核
[ 0, 0, 0],
[ 1, 2, 1]])
res_0 = cv2.filter2D(img,-1,fil_0) #使用opencv的卷積函數
plt.imshow(res_0) #顯示卷積後的圖檔
plt.imsave("res_0.jpg",res_0)
res_1 = cv2.filter2D(img,-1,fil_1) #使用opencv的卷積函數
plt.imshow(res_1) #顯示卷積後的圖檔
plt.imsave("res_1.jpg",res_1)
res_2 = cv2.filter2D(img,-1,fil_2) #使用opencv的卷積函數
plt.imshow(res_2) #顯示卷積後的圖檔
plt.imsave("res_2.jpg",res_2)
pylab.show()
原始圖檔:
三種卷集核卷積出來的效果:
注意看牆上的字,最左邊這幅圖對輪廓的提取比較好,中年的對豎直線特征提取的更好,而最右邊的則對橫線特征提取的更好。
不知道這張能不能過審,但是明顯網襪的紋理特征更能說明問題