【问题标题】:Random object detection matlab随机物体检测matlab
【发布时间】:2013-11-29 11:26:06
【问题描述】:

我想使用 matlab 生成一个随机图像,其中包含要检测的对象和随机位置的杂波图像。然后我想在杂乱的图像下检测这个随机生成的对象,并根据对象的形状勾勒出对象的轮廓。我试图在 mathworks 上寻找代码,但我能找到的只是检测一个对象并在检测到的对象周围绘制一个矩形框。我要做的是检测对象并绘制检测到的对象的轮廓。

谁能建议我如何做到这一点。谢谢

【问题讨论】:

    标签: matlab image-processing object-detection


    【解决方案1】:

    您可能想看看“行进广场”算法。一个有据可查的示例位于此处:http://devblog.phillipspiess.com/2010/02/23/better-know-an-algorithm-1-marching-squares/
    然后,您从算法中获得的坐标可以再次用作在另一个图像中放置轮廓像素的坐标。

    很遗憾,我无法为您提供任何 Matlab 代码(只是将其移植到 Fortran),但鉴于对算法的讨论,实现它应该很简单。
    从我使用“行进广场”的经验中得到的一些建议:

    1. 为了便于对算法进行编程,请先将图像转换为黑白图像。这提供了要检测的简洁轮廓。
    2. 初始位置对于轮廓检测过程的成功至关重要。您可能希望使用某种过滤函数来确定对象(即集群)的近似中心。从那里向一个方向(北、南、西、东)走,直到到达边界并从那里开始算法。

    edit:你在 MatlabCentral 中见过 isocontour 吗? http://www.mathworks.com/matlabcentral/fileexcahange/30525-isocontour

    【讨论】:

      【解决方案2】:

      尝试使用图像处理工具箱中的activecontour 函数。

      【讨论】:

        猜你喜欢
        • 2021-04-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-30
        • 2013-12-15
        • 2011-08-06
        • 1970-01-01
        相关资源
        最近更新 更多