我在 Python 和 C 的 OpenCV 方面有一点经验,但在 Java 方面零经验,尤其是在 Android Studio 方面。现在,我想使用 openCV 制作一个应用程序。
谁能教我如何打开相机,捕捉图像,然后以 Mat 类型返回图像以供以后处理?
如果之前有人问过这个问题,我很抱歉。我一直在寻找答案,但对遇到的答案/代码始终不满意
最佳答案
是这样的:
public class yourclass extends AppCompatActivity implements CameraBridgeViewBase.CvCameraViewListener2 {
Mat mRgba;
Mat mGray;
@Override
public void onCameraViewStarted(int width, int height) {
mRgba = new Mat(height, width, CvType.CV_8UC4);
mGray = new Mat(height, width, CvType.CV_8UC1);
}
@Override
public void onCameraViewStopped() {
mRgba.release();
mGray.release();
}
/* this is the important part */
@Override
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) {
Log.i(TAG,"onCameraFrame before inputFrame");
Mat rgb;
int red =rgb[0], green=rgb[1], blue=rgb[2];
return rgb;
}
关于android - 在 Android 的 OpenCV 中从相机获取 Mat 图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41175869/