android - 在 Android 的 OpenCV 中从相机获取 Mat 图片

标签 android opencv opencv4android

我在 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/

相关文章:

java - 使用 Dagger 2 进行 Android 单元测试

c++ - OpenCV CvSVM.predict() 决策函数取值

python - 计算矩形面和边缘屏幕之间的距离

android - OpenCV,安卓 : cannot edit pixels of camera frame converted to HLS colorspace

android - 使用 Opencv 从 Android 中的 CameraGLSurfaceView 拍照

java - 使用 Ant 编译时为 "cannot find symbol"

android - 获取 TextView 中文本的大小

android - 如何使用 OpenCV 检测 Passport 页面的边界?

android - 转换为字节后图像尺寸变小

python - 将连接的组件分离到多个图像