opencv简单卷积运用

Posted tangjunjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv简单卷积运用相关的知识,希望对你有一定的参考价值。

import  cv2 as cv

import numpy as np

img=cv.imread(\'learn.jpg\',cv.IMREAD_GRAYSCALE)

cv.imshow(\'first image\',img)
img_size=img.shape
print(img_size)

imgkernel=np.array([[-2,-1,0],
[-1, 1,1],
[ 0, 1,2]]
)

print(imgkernel)
#利用CV的卷积核卷积图像

dst=cv.filter2D(img,-1,imgkernel)
cv.imshow(\'filter img\',dst)
print(dst.shape) #可以查看数组没变,说明为same方式卷积

img_dst=np.hstack((img,dst))

cv.imshow(\'merge img\',img_dst)

cv.waitKey()
cv.destroyAllWindows()

 

import  cv2 as cv

import numpy as np
img=cv.imread(\'learn.jpg\',cv.IMREAD_GRAYSCALE)
cv.imshow(\'first image\',img)
img_size=img.shape
print(img_size)
imgkernel=np.array([[-2,-1,0],
[-1, 1,1],
[ 0, 1,2]]
)
# print(imgkernel)
#利用CV的卷积核卷积图像
dst=cv.filter2D(img,-1,imgkernel)
# cv.imshow(\'filter img\',dst)
# print(dst.shape) #可以查看数组没变,说明为same方式卷积
img_dst=np.hstack((img,dst))
cv.imshow(\'merge img\',img_dst)
img_cany=cv.Canny(img,100,200)
# print(img_cany)
# cv.imshow(\'canny image\',img_cany)
img_dst_canny=np.hstack((img_cany,img_cany))
img_total=np.vstack(( img_dst,img_dst_canny))
cv.imshow(\'all image\',img_total)
cv.waitKey()
cv.destroyAllWindows()

 

import  cv2 as cv
import numpy as np
img=cv.imread(\'learn.jpg\',cv.IMREAD_GRAYSCALE)
# cv.imshow(\'first image\',img)
# img_size=img.shape
# print(img_size)
imgkernel=np.array([[-2,-1,0],
[-1, 1,1],
[ 0, 1,2]]
)
# print(imgkernel)
#利用CV的卷积核卷积图像
dst=cv.filter2D(img,-1,imgkernel)
# cv.imshow(\'filter img\',dst)
# print(dst.shape) #可以查看数组没变,说明为same方式卷积
img_dst=np.hstack((img,dst))
# cv.imshow(\'merge img\',img_dst)
img_cany=cv.Canny(img,100,200)
# print(img_cany)
# cv.imshow(\'canny image\',img_cany)
img_dst_canny=np.hstack((img_cany,img_cany))
img_total=np.vstack(( img_dst,img_dst_canny))
# cv.imshow(\'all image\',img_total)
ret,threshold=cv.threshold(img,100,200,0)
print(ret)
print(threshold)
cv.imshow(\'threshold\',threshold)
img1=threshold-img
ret1,threshold1=cv.threshold(img1,10,200,0)
print(ret1)
cv.imshow(\'threshold1\',threshold1)
cv.waitKey()
cv.destroyAllWindows()







以上是关于opencv简单卷积运用的主要内容,如果未能解决你的问题,请参考以下文章

2D 卷积 - 与 opencv 的输出相比,结果错误

什么是 OpenCV 的最佳卷积神经网络 (CNN) 库? (带有简单的实现和示例)

《学习OpenCV3》第10章 滤波与卷积

opencv:图像卷积

用 OpenCV 去卷积?

OpenCV 卷积边缘处理问题