java - Android - openCV,获取图像的一部分 - 奇怪的行为

标签 java android opencv image-processing

我正在尝试获取从相机获取的部分图像。我正在使用下面的代码。当我返回 cameraFrame 时一切正常并且显示整个图像。但是当我使用下面的代码时,只显示黑色图像。我究竟做错了什么?当然,从 inputFrame.rgba 获得的图像的宽度和高度比我想要裁剪的要大。我正在使用 openCV 3.0。

public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
    Mat cameraFrame = inputFrame.rgba();

    Rect roi = new Rect(100, 100, 500, 500);
    Mat cropped = new Mat(cameraFrame, roi);
    return cropped;
}

最佳答案

我发现我做错了什么。 JavaCameraView/CameraViewBase 不显示具有为相机设置的其他分辨率的图像。

关于java - Android - openCV,获取图像的一部分 - 奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33996143/

相关文章:

java - 如何使用流获取嵌套集合中的所有元素

java - 在使用Web框架之前我需要了解JSP吗?

java - ArrayList<string> getIntent 导致应用程序崩溃

android - SYSTEM_ALERT_WINDOW 的运行时权限

c++ - 如何使用 OpenCV 细化具有粗糙水平线的图像?

java - java中同步方法的实现和错误行为

java - getView如何确定回收的convertView在List中的位置

java - 加载pdf文件时显示进度条

python - jupyter 上没有模块 cv

c++ - 为什么在返回对象 Mat 时堆损坏?