笔记代码

""" ROI 感兴趣区域 """
import cv2
import numpy as np

img = cv2.imread('img.jpg')
cv2.namedWindow('Image', cv2.WINDOW_AUTOSIZE)
cv2.imshow('Image', img)
cut = img[20:200, 20:200]
img_copy = img.copy()
cv2.imshow('CUT', cut)
cut_reverse = cv2.cvtColor(cut, cv2.COLOR_BGR2GRAY)
cv2.imshow('cut reverse', cut_reverse)
# 我们这里面需要注意一件事情就是下面的cut_back 为三通道的灰度图片
cut_back = cv2.cvtColor(cut_reverse, cv2.COLOR_GRAY2BGR)
cv2.imshow('cut back', cut_back)
# 必须通道数相同才能进行下面的操作,不能直接使用灰度图片操作
img[20:200, 20:200] = cut_back
cv2.imshow('changed', img)
# 这里尝试直接将切割之后的图像处理之后再添加回源图像
img_copy[20:200, 20:200] = cut/2
cv2.imshow('img copy', img_copy)

cv2.waitKey(0)
cv2.destroyAllWindows()

效果截图