AForge.net-BlobCounter得到不同的结果”;分区“;在两个图像之间

AForge.net-BlobCounter得到不同的结果”;分区“;在两个图像之间,.net,image-processing,aforge,.net,Image Processing,Aforge,我正在尝试写一些东西,它将接受2个图像并返回一个数组(或某种集合),每个元素表示图像之间的差异 例如,如果我在源图像中有一张背景照片和一个人站在右侧的照片,而不是同一张照片,但与第一张照片的区别是,该人站在左侧,那么我将返回一组1,其中包含更改开始的XY坐标以及更改的宽度和高度 我发现AForge有一个BlobCounter类用于此目的,但无法确切理解我应该给出什么-在文档中的示例()中,我只看到一个图像的处理-但没有比较。我找不到更好的例子了 我在这里遗漏了什么(我是图像处理新手)。在这里的一

我正在尝试写一些东西,它将接受2个图像并返回一个数组(或某种集合),每个元素表示图像之间的差异

例如,如果我在源图像中有一张背景照片和一个人站在右侧的照片,而不是同一张照片,但与第一张照片的区别是,该人站在左侧,那么我将返回一组1,其中包含更改开始的XY坐标以及更改的宽度和高度

我发现AForge有一个BlobCounter类用于此目的,但无法确切理解我应该给出什么-在文档中的示例()中,我只看到一个图像的处理-但没有比较。我找不到更好的例子了


我在这里遗漏了什么(我是图像处理新手)。

在这里的一篇帖子中找到了解决方案:以及

以下是我的解决方案:

// create filter
ThresholdedDifference filter = new ThresholdedDifference(60);
// apply the filter
filter.OverlayImage = currentImg;
Bitmap resultImage = filter.Apply(_lastImg);

// create an instance of blob counter algorithm
BlobCounter bc = new BlobCounter();
// process binary image
bc.ProcessImage(resultImage);
Rectangle[] rects = bc.GetObjectsRectangles();
// process blobs
foreach (Rectangle rect in rects)
{
    string a = String.Empty;
}