2016/7/26
实验需求,要在OpenCV中实现同一窗口显示多张图片,非常遗憾,OpenCV中似乎没有类似Matlab中类似的函数,本文实现了一种列表式组合多张图片的函数,为了提高灵活性,函数可以设置图片显示的列数和行数,以及是否使用边框隔开。
核心思路是根据需要显示的图像,创建一个新的大图像,使用ROI(感兴趣区域)操作将需要显示的图像复制到新的大图像里。
函数代码:
Mat combineImages(vector<Mat> imgs,//@parameter1:需要显示的图像组
int col,//parameter2:显示的列数
int row, //parameter3:显示的行数
bool hasMargin){
//parameter4:是否设置边框
int imgAmount = imgs.size();//获取需要显示的图像数量
int width = imgs[0].cols;//本函数默认需要显示的图像大小相同
int height = imgs[0].rows;//获取图像宽高
int newWidth, newHeight;//新图像宽高

本文介绍了如何在OpenCV中通过自定义函数实现在同一窗口显示多张图片,由于OpenCV官方并未提供类似Matlab的直接功能,作者采用创建大图像并利用ROI技巧来组合图片,同时允许设置图片的行列布局和边框选项。
最低0.47元/天 解锁文章
1214

被折叠的 条评论
为什么被折叠?



