每次显示图片都要创建新窗口,再显示,比较麻烦,有两种方法简化,一种是封装一个函数,另一种是多张图片在一个窗口显示,我来尝试下第二种方法
src=cv.imread("./patrick.jpg")
cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)
gray=cv.cvtColor(src,cv.COLOR_BGR2GRAY)
RGB=cv.cvtColor(src,cv.COLOR_BGR2RGB)
HSV=cv.cvtColor(src,cv.COLOR_BGR2HSV)
HLS=cv.cvtColor(src,cv.COLOR_BGR2HLS)
# 图片拼接
h1=np.hstack((src,RGB))
h2=np.hstack((HSV,HLS))
v=np.vstack((h1,h2))
cv.imshow("input image",v)
cv.waitKey(0)
cv.destroyAllWindows()
结果:
分别为原图,RGB图,HSV图,HSL图
缺陷:只能拼接通道数,大小相同的图片,本质是矩阵的拼接