android直接利用opencv打开摄像头失败原因及解决方案
先说结论:
截止到目前2019.7.10,直接利用cv::videocapture(0)打开不支持!
替代方案:
1.利用Java的camera2(>5.0)https://developer.android.com/reference/android/hardware/camera2/package-summary
2.利用C++ NDK Camera(>7.0)https://developer.android.com/ndk/reference/group/camera
谷歌NDK可用例子https://github.com/googlesamples/android-ndk/tree/master/camera
3.如果是uvc摄像头,可以参考:https://github.com/saki4510t/UVCCamera
==================================================================
早在2018.7再opencv的issue里就有人提问,为啥安卓调用摄像头一直失败,ios和其他平台都没问题
下面讨论热烈,不仅打开摄像头不支持,安卓端打开视频也有问题
究其原因,主要是旧版NDK里没有摄像头的API
但是,从7.0开始NDK里又有API了,这就给打开摄像头带来了一丝可能性
2019.03开始opencv支持在安卓端打开视频了!
详情见pull:https://github.com/opencv/opencv/pull/14005
然而还是不支持打开摄像头(pull里也有人提问了)
大佬尝试配合最新NDK利用opencv打开摄像头,好像一个小哥测试了出了很多问题
https://github.com/komakai/opencv/tree/android-ndk-camera
或许再过几个月最新的master分支究支持直接打开opencv了,但是目前还是只能
更多相关文章
- android videoview 没有画面的一个原因
- android studio 版本修改无效解决方案
- res\drawable-hdpi\new.png:0: error: invalid symbol: 'new'
- (window)Android Studio安装以及Fetching android sdk component
- Android分割线divider(内含Android虚线分割线失效成实线解决方案)
- 【Android】编译CM10.1遇到的错误解决方案
- Android 启动APP黑屏解决方案
- android EditView不换行的原因
- Android Studio安装以及Fetching android sdk component informa