任务描述
制作一幅RGB色分离的艺术图
根据给定的RGB图像,实现将原图、仅R通道的图像、仅G通道的图像和仅B通道的图像进行拼接,形成一幅新的RGB色分离的艺术图
关键代码及实现细节:
opencv读取图像时,图像第一个通道为B,第二个通道为G,第三个通道为R,所以在处理时要特别注意
在这里,我是使用numpy赋值的形式完成的,这种方法更便于理解,当然也可以使用hstack和vstack分别实现水平和垂直方向的拼接。
for i in range(c):
fin_img[:h, :w, i] = img[:, :, i]
fin_img[h:2*h, :w, i] = G_img[:, :, i]
fin_img[:h, w:2*w, i] = R_img[:, :, i]
fin_img[h:2*h, w:2*w, i] = B_img[:, :, i]
效果展示
要实现四幅图像的拼接效果