opencv-python入门
-
图像的读取/展示/保存
cv2.imread(file: str) cv2.imshow(windowName: str, data: numpy.ndarray) cv2.imwrite(data: numpy.ndarray, file: str)
其中
cv2.imwrite
需要与cv2.waitKey()
以及cv2.destroyWindow(windowName)
配合使用。 -
使用
cv2.imshow
函数时,可能出现的问题:src_depth != CV_16F && src_depth != CV_32S in function 'convertToShow'
就我个人而言,这是由于待展示的图像数据中使用了非法的数据格式造成的。在进行图像拼接并且加入自定义色块的时候,可使用numpy.asarray
创建满足要求的图像数据,但是一定要记得指定数据类型dtype=np.uint8
,否则虽然可以存储,但是在展示的时候无法通过数据类型检查。 - 图像拼接
np.concatenate(data: tuple, axis=0)
将需要拼接的图像在非拼接维度转化为相同的大小,然后指定拼接维度(
axis
)。默认为0,即正数第一个维度。 需要注意的是opencv和numpy所使用的坐标格式相反,numpy同数学矩阵一样以行作为第一坐标(即y值),列作为第二坐标(即x值),与图像,亦即通常使用的笛卡尔直角坐标系相反。