说明
OpenCV真是让我又爱又恨啊🤣
OpenCV在读取图片时,色彩读取顺序为BGR也就是算了(一般都为RGB)
之前在通过img.shape
得知其信息为(H,W,C)
,一直都是知道的但是都没注意,直到这次…
问题描述
通过两点确认范围,然后对图片数据进行选取操作。
如当前存在两点A(x1,y1)
、B(x2,y2)
分别为左上角和右下角点则应该可通过这两点确定选定区域,并可直接通过操作像素矩阵截取获取相应部分的图像,结果…忘了OpenCV-python通过cv2.imread()
读取后像素矩阵的维度顺序对应为(H,W,C)
,而我想当然的想通过img[x1:x2,y1:y2,:]
获取对应部分图像,自然就出现了些许问题。
解决分析
这个问题解决起来很简单,只需要将两个坐标维度的参数对调即可img[x1:x2,y1:y2,:]->img[y1:y2,x1:x2,:]
,也就是要将坐标思维(x,y)
翻转成(H,W)
😶 简称两级反转。