我有这个 NativeCameraView :
<org.opencv.android.NativeCameraView
android:id="@+id/tutorial1_activity_native_surface_view"
android:layout_width="350px"
android:layout_height="350px"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
opencv:camera_id="front" />
Run Code Online (Sandbox Code Playgroud)
通过更改opencv:camera_id="front"为opencv:camera_id="back",我可以在设计时从前置摄像头更改为后置摄像头(我可以称之为编译时吗?!)
但现在我需要在运行时在它们之间切换?是否可以?
小智 5
允许访问活动类中的以下变量:
private CameraBridgeViewBase mOpenCvCameraView; //exists as is in opencv samples
private int mCameraId = 0; //add this one
Run Code Online (Sandbox Code Playgroud)
以下方法将切换视图。诀窍是禁用相机视图,设置相机索引(在我的情况下 0 和 1 都有效),然后重新启用相机视图。
private void swapCamera() {
mCameraId = mCameraId^1; //bitwise not operation to flip 1 to 0 and vice versa
mOpenCvCameraView.disableView();
mOpenCvCameraView.setCameraIndex(mCameraId);
mOpenCvCameraView.enableView();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4210 次 |
| 最近记录: |