Java 您可以使用什么方法替换Imgproc.connectedComponents()?

Java 您可以使用什么方法替换Imgproc.connectedComponents()?,java,android-studio,opencv,image-processing,connected-components,Java,Android Studio,Opencv,Image Processing,Connected Components,我在Android Studio中使用Opencv 2.4.10,connectedComponents方法仅在Opencv 3.0及以上版本中可用。我想知道是否有类似的方法可以用来替换connectedComponents(),这些方法是什么 我正在开发一个实时应用程序,可以使用android摄像头跟踪路过的人。目前,我可以从背景中提取前景(或分割运动)。但是一些检测到的前景被分成了几个部分,所以我需要connectedComponents()方法来连接应该分组在一起的blob。但正如我前面所

我在Android Studio中使用Opencv 2.4.10,connectedComponents方法仅在Opencv 3.0及以上版本中可用。我想知道是否有类似的方法可以用来替换connectedComponents(),这些方法是什么

我正在开发一个实时应用程序,可以使用android摄像头跟踪路过的人。目前,我可以从背景中提取前景(或分割运动)。但是一些检测到的前景被分成了几个部分,所以我需要connectedComponents()方法来连接应该分组在一起的blob。但正如我前面所说,它在我的Opencv版本中不可用。请帮忙

这只是我的代码片段:

 Core.absdiff(frameGray, bgModelGray, differenceGray);

 differenceGray.convertTo(mGray, CvType.CV_8UC1) ;                                
 Imgproc.threshold(mGray, mGray, 0, 255, Imgproc.THRESH_OTSU); 

 Mat erodeElement = Imgproc.getStructuringElement(Imgproc.MORPH_RECT, new Size(5, 5), new Point(3, 3));
 Mat dilateElement = Imgproc.getStructuringElement(Imgproc.MORPH_RECT, new Size(3, 3));
 Imgproc.erode(mGray, mGray, erodeElement);
 Imgproc.dilate(mGray, mGray, dilateElement);

 contours.clear();
 Imgproc.findContours(mGray, contours, hierarchy, Imgproc.RETR_TREE, Imgproc.CHAIN_APPROX_SIMPLE);
 Imgproc.drawContours(mRgba, contours, -1, new Scalar(0, 0, 255), 2);


能否显示样本输出图像?这是我的应用程序的一个示例视频,
findContours
没有给你什么,你需要什么?我不确定我是否理解“连接应该分组在一起的blob”这一点。@bicker请查看我添加的图像,“检测到的人的屏幕截图…”我的问题是,由于blob中存在间隙,因此有多个边界框绘制给一个人。我只需要用一个边界框将此人围起来。为了做到这一点,人的二元前景应该连接在一起,作为一个对象/人计算。好的,你建议如何使用连接的组件来实现这一点?