在Android上使用opencv将摄像头获取并处理的图片转成视频

编程入门 行业动态 更新时间:2024-10-11 19:18:01

在Android上使用opencv将摄像头获取并处理的图片<a href=https://www.elefans.com/category/jswz/34/1767796.html style=转成视频"/>

在Android上使用opencv将摄像头获取并处理的图片转成视频

核心代码:

//该回调函数是button的回调函数,实现的功能是点击button就缓存已保存的图片为视频
private void addCallBack() {int fps = 10;int ifourcc = VideoWriter.fourcc('M','J','P','G');org.opencv.core.Size cvSize = new org.opencv.core.Size(cropCopyBitmap.getWidth(),cropCopyBitmap.getHeight());String path = Environment.getExternalStorageDirectory()+"/123/";//需要确保根目录有123这个文件String name = System.currentTimeMillis() + ""+ new Random().nextInt(1000000) + ".avi";String filename = path + name;VideoWriter writer = new VideoWriter(filename, ifourcc, fps, cvSize);if(writer.isOpened())Toast.makeText(getApplicationContext(),"successful!!!",Toast.LENGTH_SHORT).show();else {Toast.makeText(getApplicationContext(),"The opening fail!!!",Toast.LENGTH_SHORT).show();}for (int i = 0; i < matVideo.size(); i++) {writer.write(matVideo.get(i));//matVideo是该类的成员变量,在此之前已经缓存了Mat视频帧信息。//String pathName = path + i + ".jpg";//imwrite(pathName,matVideo.get(i));}writer.release();Toast.makeText(getApplicationContext(),"视频已缓存",Toast.LENGTH_SHORT).show();matVideo.clear();}

注意事项:

  1. 首先确保读写SD卡的权限被授予(我被它坑了一天)。
  2. 确保路径能够正确访问,最好是使用Android提供的文件API;其次文件名还是用数字吧,可以避免斜杠和字母组成转义字符啥的。
  3. 解码格式问题。我尝试了很多种,目前就('M','J','P','G')成功。

其他问题我已经在上篇博客中已提到,上篇。

尝试的解码格式种类如下(有兴趣的也可以去试试):

  • CV_FOURCC('P','I','M','1') = MPEG-1 codec
  • CV_FOURCC('M','J','P','G') = motion-jpeg codec
  • CV_FOURCC('M', 'P', '4', '2') = MPEG-4.2 codec
  • CV_FOURCC('D', 'I', 'V', '3') = MPEG-4.3 codec
  • CV_FOURCC('D', 'I', 'V', 'X') = MPEG-4 codec
  • CV_FOURCC('U', '2', '6', '3') = H263 codec
  • CV_FOURCC('I', '2', '6', '3') = H263I codec
  • CV_FOURCC('F', 'L', 'V', '1') = FLV1 codec

更多推荐

在Android上使用opencv将摄像头获取并处理的图片转成视频

本文发布于:2024-03-04 04:14:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1708241.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:转成   摄像头   图片   视频   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!