本文分享内容来自图书《学习OpenCV 4:基于Python的算法实战》,该书内容如下:
第1章 OpenCV快速入门;
第2章 图像读写模块imgcodecs;
第3章 核心库模块core;
第4章 图像处理模块imgproc(一);
第5章 图像处理模块imgproc(二);
第6章 可视化模块highgui;
第7章 视频处理模块videoio;
第8章 视频分析模块video;
第9章 照片处理模块photo;
第10章 2D特征模块features2d;
第11章 相机标定与三维重建模块calib3d;
第12章 传统目标检测模块objdetect;
第13章 机器学习模块ml;
第14章 深度神经网络模块dnn
欢迎关注图书《深度学习计算机视觉实战》与《学习OpenCV4:基于Python的算法实战》。
OpenCV中提供了图像拼接的算法,其中hconcat函数是在水平方向做图像拼接,vconcat函数是在垂直方向做图像拼接。
hconcat函数的定义如下:
dst = hconcat(src, dst=None)
vconcat函数的定义如下:
dst = vconcat(src, dst=None)
两个函数的参数相同,参数说明如下:
src,输入图像或者输入图像组,对于hconcat函数图像组中的图像必须具有相同的高度和深度,对于hconcat函数图像组中的图像必须具有相同的宽度和深度;
dst,输出图像(返回值)。
水平和垂直两个方向的图像拼接案例代码如下:
import cv2
src = cv2.imread("src.jpg")
src1 = cv2.imread("src1.jpg")
#水平拼接图像
hconcat_result = cv2.hconcat([src, src1])
#垂直拼接图像
vconcat_result = cv2.vconcat([src, src1])
#图像显示
cv2.imshow("hconcat_result", hconcat_result)
cv2.imshow("vconcat_result", vconcat_result)
cv2.waitKey(0)
cv2.destroyAllWindows()
水平方向的图像拼接结果如图3.22所示。
垂直方向的图像拼接结果如图3.23所示。