如何以编程方式定位图像中徽标的应用

时间:2016-07-20 18:56:48

标签: c# image detection

我想要定位在现有图像上放置徽标。所以我有很多不同的衬衫图像。我想带上用户提供的徽标,并在衬衫上找到放置徽标的位置。

我已经合成了徽标。但我发现并非所有衬衫照片都相同或成比例。因此,使用设置坐标并不总是有效。

我摆弄了边缘检测。所以,好吧,现在我的图像是黑色的,衬衫周围有白色边框...我很遗憾下一步在哪里进行边缘检测以及如何绘制目标区域。或者这是否只是错误的方法。

我在C#工作。但我可以转换来自任何其他语言的建议。

1 个答案:

答案 0 :(得分:0)

我只是继续前进并跳过我正在做的过于细致的边缘检测,并使用AForge的.Net库来检测衬衫的角落,然后获得这些角落的装订矩形。然后我将从那里开始使用标准偏移。这应该让我到达我需要去的地方。希望。

        AForge.Imaging.SusanCornersDetector scd = new AForge.Imaging.SusanCornersDetector();
        List<AForge.IntPoint> corners = scd.ProcessImage(FilterMap);
        AForge.IntPoint XYMin, XYMax;
        AForge.Math.Geometry.PointsCloud.GetBoundingRectangle(corners, out XYMin, out XYMax);

        Console.WriteLine("min X: " + XYMin.X.ToString() + " Y: " + XYMin.Y.ToString());
        Console.WriteLine("max X: " + XYMax.X.ToString() + " Y: " + XYMax.Y.ToString());