OpenCV从文本文件创建视频
OpenCV Creating Video From Text File
我正在尝试构建一个应用程序,该应用程序从网络摄像头或外部设备获取数据,将视频帧保存到文本文件中,然后从创建的文本文件中读取帧。
我不知道保存到文本文件是否是个好主意,我有一些建议。
到目前为止,我已经完成了保存到文本文件的操作。
我的问题是从文本文件中读取。基本上,我逐行阅读文本,但我不知道如何将这些文本转换为Mat对象。
到目前为止,我的代码是:
ifstream read_storage(new_vid_frm_path);
if(!read_storage.is_open()) {
perror("nnnttt(-)FAIL : Can't Open SavedVideoFrames.txtnnnttt");
return -1;
}
VideoWriter *vid = new VideoWriter(new_vid_frm_path,CV_FOURCC('P', 'I', 'M', '1'),30,Size(vc.get(CV_CAP_PROP_FRAME_WIDTH),vc.get(CV_CAP_PROP_FRAME_HEIGHT)));
Mat line;
vector<Mat> vid_frms;
while ( getline (read_storage,line) ) {
cout << line << 'n';
}
read_storage.close();
if(vid_frms.size() == 0){
printf("nnnttt(-)FAIL: Error In Framennnttt");
return -1;
}
for(size_t i = 0; i<vid_frms.size(); i++)
(*vid).write(vid_frms[i]);
printf("nnnttt(+)SUCCESS: Video Processing Complete nnnttt ");
你有没有建议我如何将这个字符串转换为Mat-obejct?
while ( getline (read_storage,line) ) {
cout << line << 'n';
}
谢谢。
顺便说一句,我看过这个解决方案,但我不明白。将字符串字节转换为cv::mat
我在c++中找不到字节类型,我认为String到Mat对象之间可能存在直接转换。
您可以将OpenCV中的任何内容(几乎)保存到.xml或.yml文本文件中,然后使用OpenCV xml/YAML FileStorage方法将其读回。
我强烈建议使用本机C++方法来处理文件。
它是专门为您处理所有这些腿部工作而设计的。
相关文章:
- 终端不会为C++文件创建.exe文件吗
- 如何从具有两列的.txt文件创建并行数组?
- 从 .lib 文件创建一个.dll文件
- 如何在 c++ 中通过 http 发送大型视频文件?
- 如何从输入文件 c++ 创建随机名称生成器
- 无法从 cso 文件创建顶点着色器(从 fx 文件创建)
- 如何为多个目录中的多个文件创建生成文件?
- 在编译时从 c++ 文件创建枚举
- 媒体基础将音频流添加到视频文件
- 帧提取 使用OpenCV的视频文件开头只有几秒钟
- 使用 OpenCV C++ 每 1 分钟创建新的视频文件
- 如何在运行时从 c++ 中的 DLL 文件创建对象?
- 如何检查给定文件是否是C++中的有效视频文件?
- 文件创建并不总是成功
- 创建可用的H.264视频文件
- 从多个视频部分创建单个视频文件
- C ++从多个视频文件创建1个视频
- 使用QT Creator-C++中的QPixmap序列创建视频文件
- 如何从磁盘加载Jpeg图像并创建视频文件?Avi等),而无需在c++中使用opencv
- OpenCV从文本文件创建视频