【AR实验室】mulberryAR :添加连续图像作为输入

  • 时间:
  • 浏览:1
  • 来源:极速快3_快3计划三期必中_极速快3计划三期必中

本文转载请注明出处 —— polobymulberry-博客园

0x00 - 前言


事先mulberryAR如此利用手机相机实时捕捉图像作为系统的输入,这也比较符合用户的习惯。有后后在开发的过程中,有事先想对比两种法律方法的优劣,看看性能优化的程度,如此作为输入应该保证一致能够能。而实时捕捉的图像可能无法满足原来的要求,很久我添加了连续图像录制和连续图像作为系统输入的功能。功能两种实现起来也有很麻烦。

0x01 - 功能实现


1.图像录制功能

第一步,获取图片的存储位置。在app的Documents文件夹新建一个 Test文件夹,每一帧图像按照存储的顺序命名为0000.png、0001.png…

第二步,将图像存储为png格式。使用cv::imwrite函数将都要存储的cv::Mat对象存储到本地。

// 将图片压缩为png格式,压缩等级为0,。压缩等级越高,压缩程度越大,时间越长
std::vector<int> compressParams;
compressParams.push_back(CV_IMWRITE_PNG_COMPRESSION);
compressParams.push_back(0);
// recordImageFilePath为每帧图像存储的绝对路径
cv::imwrite([recordImageFilePath cStringUsingEncoding:NSUTF8StringEncoding], _imgMat, compressParams);

2.连续图像作为输入

第一步,获取本地存储的图像。根据png图片名称中的数字大小依次使用cv::imread函数获取图像作为输入。

第二步,将解析的图像作为输入。整个流程和实时捕捉图像的流程一致。

0x02 - 效果展示


选则 具体功能。1.实时捕捉 2.录制视频 3.视频文件(通过录制的视频作为输入)

分别为上述两种功能效果图:

1.实施捕捉

2.录制视频

3.视频文件(通过录制的视频作为输入)