gpt4 book ai didi

android - 如何使用 Android Native OpenCV 在纵向 View 中使用前置摄像头

转载 作者:太空狗 更新时间:2023-10-29 15:07:46 27 4
gpt4 key购买 nike

我正在尝试在 Android 中使用 native OpenCV(最新版本:OpenCV-2.4.7-android-sdk)。 OpenCV 提供的所有样本都使用后置摄像头和风景 View 。我需要进行以下更改:

  1. 前置摄像头
  2. 肖像
  3. 录制视频

首先我添加代码“mOpenCvCameraView.setCameraIndex(1);”使用前置摄像头。它可以工作,但屏幕上显示的图像是旋转的(头朝下)。我必须在 OpenCV 中使用翻转功能才能让它正确显示。但是,图像数据也将被翻转。那就是如果我想做图像处理。我必须进行转置和翻转操作。我试过这些步骤。这真的很费时间。即使我什么都不做,视频也不是实时的。

其次,为了避免翻转过程,我尝试通过修改 XML 文件“android:screenOrientation="portrait"”来使用纵向 View 。它也可以工作,但问题是,只有部分图像可以显示在屏幕上。看起来图像被裁剪了。这个问题很常见。我用谷歌搜索了很多但仍然找不到解决方案。我发现如果我在 Android 中使用 CameraView 类,它将使用默认的相机应用程序。很好,但我不知道如何通过 OpenCV 操作图像数据,因为我是 Jave/Android 的新手。

最后,我想把处理后的图片保存成视频。我注意到 OpenCV 没有提供这个功能。

谁能帮我解决这个问题?谢谢。

最佳答案

可以看看我的解决方案here.

我只是在进入“onCameraFrame”事件后操作图像。

简而言之:我转换了输入矩阵,翻转它并改变大小以适应屏幕。

希望对您有所帮助。

关于android - 如何使用 Android Native OpenCV 在纵向 View 中使用前置摄像头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20220531/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com