java - 在 OpenCV (openCv4Android) 中使用 Imgproc.calcHist 进行反投影(backgorund 减法)

标签 java android opencv background-subtraction

我目前正在开发 Android 应用程序,想要进行反向投影。我正在遵循的教程是:

http://docs.opencv.org/doc/tutorials/imgproc/histograms/back_projection/back_projection.html#back-projection

我遇到的问题是当我使用 Imgproc.calcHist(...) 时。我似乎无法弄清楚应该向该函数传递哪些参数,该函数目前如下所示,并且在断言失败时给我一个 OpenCV 错误:

listHueList = new ArrayList<Mat>() {{ add(mHueMat);}};
ch = new MatOfInt(0,0); 
mMaskMat = new Mat();
mHistMat = new Mat();
range = new MatOfFloat(0, 256);
Imgproc.calcHist(listHueList, ch, mMaskMat, mHistMat, new MatOfInt() , range);

有人可以将上面教程链接中的参数转换为我可以通过 Java 语法轻松使用的参数吗?

谢谢

最佳答案

看看这段代码。这对我有用!

java.util.List<Mat> matList = new LinkedList<Mat>();
            matList.add(image_gray);
            Mat histogram = new Mat();
            MatOfFloat ranges=new MatOfFloat(0,256);
            Imgproc.calcHist(
                    matList, 
                    new MatOfInt(0), 
                    new Mat(), 
                    histogram , 
                    new MatOfInt(25), 
                    ranges);
            System.out.println("histogram\n"+histogram.dump());

关于java - 在 OpenCV (openCv4Android) 中使用 Imgproc.calcHist 进行反投影(backgorund 减法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15360889/

相关文章:

java - 如何关闭 MarkLogic Java API 日志记录?

java - dataTable sortBy 函数不起作用(primefaces)

android - Unresolved reference MergeAdapter

android - 如何从 FirebaseRecyclerAdapter 或 Firebase Reference Android 中排除项目

android - 如何在android opencv中将 mask 应用于实时相机

JavaFX - 修改子节点大小后更新 BorderPane 的大小

java - 我的 java 程序有一些问题

android - 使用 Robotium 测试 PreferenceActivity

java - 为 JavaCameraView 使用自定义类会使应用程序崩溃

opencv - 从图像点计算 x,y 坐标 (3D)