【发布时间】:2020-03-01 08:56:07
【问题描述】:
当我必须使用 opencv 锐化图像时,我使用:
#Create our shapening kernel
kernel_sharpening = np.array([[0,-1,0],
[-1, 5,-1],
[0,-1,0]])
# applying the sharpening kernel to the input image & displaying it.
sharpened = cv2.filter2D(image, -1, kernel_sharpening)
在上面的代码中锐化的是我们的结果图像。正如您在上面的代码中看到的,我使用名为 filter2D 的 opencv 函数来执行输入图像与内核的卷积,结果我得到了锐化的图像。
最近我浏览了这个关于图像超分辨率的链接(link)
发现 Keras 有类似 filter2D 的东西,Keras 称之为 Conv2D。
其语法如下:
dis2 = Conv2D(filters=64, kernel_size=3, strides=2, padding='same')(dis1)
我的问题是 opencv filter2D 和 Keras Conv2D 有什么区别?
(我假设两者都在图像与内核的卷积中起到相同的作用,我可能错了,请纠正)
【问题讨论】:
标签: python opencv keras deep-learning computer-vision