##名称:利用videowriter实现多张连续图片合成avi视频
##平台:QT5.7.1+OpenCV3.2.0
##日期:2017年12月10日 /**************新建QT控制台程序**************/
#include <QCoreApplication>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace std;
using namespace cv; int main()
{
Mat image;
char filename[]; //定义数组,其中数组大小大于等于图片的个数
int isColor = ; //如果为0 ,可输出灰度图像
int fps = ; //设置输出视频的帧率
//int frameWidth = image.cols; //单帧图片的宽
//int frameHeight = image.rows; //单帧图片的高 VideoWriter writer("/home/ttwang/images/video_out.avi", VideoWriter::fourcc('M', 'J', 'P', 'G'), fps,
Size(, ),isColor); for(unsigned int i=;i<;i++)
{
sprintf(filename,"/home/ttwang/images/image%d.jpg",i);//第二个参数是指定图片路径和图片名的一般式(image%d)
image=imread(filename);//导入图片
if (image.empty())
{
break;
}
waitKey();
//cout << image.channels() << endl; //为了解决问题而打印查看图片的通道
//cout << image.size() << endl; //为了解决问题而打印图片的尺寸
writer.write(image); //
}
}
错误调试分析:

#起初定义单帧图片尺寸时,读取原图的行和列,如下定义时:
int frameWidth = image.cols; //单帧图片的宽
int frameHeight = image.rows; //单帧图片的高 #VideoWriter的参数Size()如是这样读:
Size(frameWidth,frameHeight) #出现如下错误:
OpenCV Error: Assertion failed (img.cols == width && img.rows == height && channels == ) in write,
file /home/ttwang/opencv-3.2./modules/videoio/src/cap_mjpeg_encoder.cpp, line 调试语句:
#.打印图片的通道数看是否为3
cout << image.channels() << endl;
打印输出:
说明没有错误
#.可能是单帧尺寸不对,
cout << image.size() << endl;
打印输出:640X360
为此将Size()的参数改为 Size(,) 编译通过
对于为什么我那样定义是错的,始终没有搞明白,希望有人解答

opencv3.2.0实现连续图片合成avi视频的更多相关文章

  1. Matlab从一系列图片导出AVI视频,导出GIF动图

    平台:Win7,Matlab 2014a 从一系列图片导出AVI视频的M代码如下: clear all; % 清除变量 % 官方示例,命令窗口输入“doc VideoWriter” writerObj ...

  2. Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现

    Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现 暂时还未有时间开发这效果,所以先贴出来. 先贴一张效果图,这是一张手机截屏: 左上方的风景图:背景图片 右上方的人物图:前景图 ...

  3. 我的复杂的OpenCV编译之路(OpenCV3.1.0 + VS2010 + Win7)

    教程:www.cnblogs.com/jliangqiu2016/p/5597501.html 这里主要记载我编译遇到的错误及解决方法. OpenCV3.1软件下载:https://sourcefor ...

  4. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置

    摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...

  5. 学习 opencv---(1) opencv3.1.0 组件结构浅析

    本系列是根据 浅墨大神 的opencv系列而写的,,应该大部分内容会一样..如有侵权还请告知........... 开发环境:win7 + VS2013 + opencv3.1.0 至于OpenCV组 ...

  6. C# 图片的裁剪,两个图片合成一个图片

    图片的裁剪,两个图片合成一个图片(这是从网上摘的) /// <summary>         /// 图片裁剪,生成新图,保存在同一目录下,名字加_new,格式1.png  新图1_ne ...

  7. android 文字图片合成

    引用:http://blog.csdn.net/cq361106306/article/details/8142526 两种方法: 1.直接在图片上写文字 String str = "PIC ...

  8. win10下vs2015配置Opencv3.1.0过程详解

    下载安装Opencv3.1.0 下载Opencv3.1.0,进入官网,点击opencv for windows即可下载.  点击运行下载好的文件.实际上,opencv的安装程序就是解压缩文件,个人因为 ...

  9. php 图片添加文字水印 以及 图片合成(微信快码传播)

    1.图片添加文字水印: $bigImgPath = 'backgroud.png'; $img = imagecreatefromstring(file_get_contents($bigImgPat ...

随机推荐

  1. pods报错修复方法

    ### Error ``` RuntimeError - [!] Xcodeproj doesn't know about the following attributes {"inputF ...

  2. 关于JSON基础的总结

    本文总结自百度百科 JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集. 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数 ...

  3. css网页布局 --- 左边固定,右边自适应

    div的布局统一如下: <body> <div class="wrap"> <div class="left"></d ...

  4. Java之IO(零)总结

    转载请注明原出处:http://www.cnblogs.com/lighten/p/7274378.html 1.前言 本章是对之前所讲述的整个Java的IO包的一个总结,抽出个人认为比较重要的知识点 ...

  5. Spring Security构建Rest服务-0702-个性化用户认证流程2

    登录成功后的处理AuthenticationSuccessHandler: 认证成功后,默认情况下spring security会继续访问之前访问的url,如果想自定义处理逻辑,用默认的就不行了.此时 ...

  6. php 实现繁体转简体代码效率对比

    第一份代码: <?php Header("Content-Type:text/html;charset=utf-8"); function microtime_float() ...

  7. SourceTree跳过Atlassian账号,免登陆,跳过初始设置

    SourceTree 安装之后需要使用账号登陆以授权,并且是强制登陆. 登录过程非常漫长,并未在不FQ的情况下是不能成功的,下面记录一下跳过登录的方法. 装之后,转到用户本地文件夹下的 SourceT ...

  8. filebeat+ELK日志系统

    架构图 filebat logstash elasticsearch 基于elasticsearch6.3.2 elasticsearch(一) 之 elasticsearch初识 elasticse ...

  9. java主线程结束和子线程结束之间的关系

    (一)Main线程是个非守护线程,不能设置成守护线程. 这是因为,main线程是由java虚拟机在启动的时候创建的.main方法开始执行的时候,主线程已经创建好并在运行了.对于运行中的线程,调用Thr ...

  10. rake aborted! You have already activated rake 10.1.0, but your Gemfile requires rake 10.0.3. Using bundle exec may solve this.

    问题: wyy@wyy:~/moumentei-master$ rake db:createrake aborted!You have already activated rake 10.1.0, b ...