基于opencv的图像拼接(四): 基于stitch类的离线图像拼接
来源:互联网 发布:手机网络抓包工具 编辑:程序博客网 时间:2024/06/10 22:00
获取的拼接的连续图像放在两个文件夹,运用stitch类连续拼接
程序效果:
单看每一张效果都还是不错的,但是连续播放就不行了,每次变换矩阵还是不一样的,所以一般离线图像拼接还是以第一帧图像为基准计算变换矩阵,进行后续帧数的拼接。
但是为什么“单看每一张效果都还是不错的,但是连续播放就不行了”,我也不是很清楚,希望大神懂的可以教教我
附上代码,代码比较简单:
#include <iostream> #include <opencv2/highgui/highgui.hpp> #include <opencv2/legacy/legacy.hpp> #include <opencv2/stitching/stitcher.hpp> #include <vector> using namespace std; using namespace cv; void stitch(vector<Mat> imgs,Mat& resultMat) { bool flag = true; Stitcher stitcher = Stitcher :: createDefault(flag); Stitcher::Status status = stitcher.stitch(imgs, resultMat); } int main() { bool stop = false; vector<Mat>imgs; Mat resultMat1; const int count = 150; char image_name1[1000]; char image_name2[1000]; char image_name3[1000]; for (int i = 1; i <= count; i++) { sprintf(image_name1, "..\\pica\\7(%d).jpg", i); //放在当前文件夹pica中,图片顺序分别为7(1),7(2).....7(i)sprintf(image_name2, "..\\picb\\6(%d).jpg", i);Mat img1 = imread(image_name1);Mat img2 = imread(image_name2);if(img1.empty())cout << "empty" << endl;//resize(img1, img1, Size(640, 480));//resize(img2, img2, Size(640, 480));imgs.push_back(img1); imgs.push_back(img2); stitch(imgs, resultMat1); sprintf(image_name3, "..\\stitch\\1(%d).jpg", i);resize(resultMat1, resultMat1, Size(480, 320)); imwrite(image_name3,resultMat1);imgs.clear(); } return 0; }
拼接效果:
阅读全文
1 0
- 基于opencv的图像拼接(四): 基于stitch类的离线图像拼接
- 基于opencv的图像拼接(二): stitch 类
- 基于opencv的图像拼接(三): 基于stitch类的实时图像拼接
- 基于OpenCV的图像拼接
- 基于OpenCV全景图像拼接
- 基于DCMTK和OpenCV的DR图像拼接
- image stitch(国外开源的图像拼接)
- 基于计算机视觉的高精度图像拼接
- 基于图像的碎纸拼接技术
- 基于SIFT特征的全景图像拼接
- 基于SIFT特征的全景图像拼接
- 基于SIFT特征的全景图像拼接
- 基于SIFT特征的全景图像拼接
- 基于matlab的图像拼接方法
- 基于OpenCV1.1的图像拼接
- 基于SIFT特征的全景图像拼接
- 基于SIFT特征的全景图像拼接
- 基于SIFT特征的全景图像拼接
- Oracle:序列
- JS-引用类型
- 安卓AudioRecord实现录音和播放,可以暂停和获取声音的大小,格式为amr和wav,可以对音频进行加密
- 浅析debugfs文件系统调试阶段gpio使用范例
- HNOI2008 BZOJ1010 玩具装箱toy
- 基于opencv的图像拼接(四): 基于stitch类的离线图像拼接
- Direct3D9之二学习资源篇
- 多态(Polymorphism)的实现机制(下)--Java篇
- docker报错FATA [0000] Get http:///var/run/docker.sock/v1.17/version:dial unix /var/run/docker.sock(FAT
- 【hdu 2066】 一个人的旅行
- 运算符与分支结构
- Linux-使用命令安装gcc/g++, gdb, vim
- 数据结构代码实现(循环队列的实现,数组)
- JQuery划过表格变色