【问题标题】:Controlling the color used by MSERRegions.plot() in MATLAB?在 MATLAB 中控制 MSERRegions.plot() 使用的颜色?
【发布时间】:2012-05-30 23:59:13
【问题描述】:

我想通过用不同颜色绘制多个 MSER 区域来可视化它们的分区,但是计算机视觉工具箱中的 MSERRegions.plot() 方法不接受 'Color' 参数。使用hold all 也不会导致后续绘图循环显示颜色。 (所有区域椭圆总是以亮绿色绘制。)

这是一个示例图,以阐明我正在尝试做的事情:

我已将下面的区域划分为三个单独的组,并且我想用不同的颜色绘制每个组。有没有简单的方法来做到这一点?

【问题讨论】:

    标签: matlab plot computer-vision matlab-cvst mser


    【解决方案1】:

    一个简单但“hackish”的方法是获取AxesChildren 对象,然后设置这些对象的颜色。

    childrenObjs = get(gca,'Children');
    set(childrenObj, 'Color', desiredColor);
    

    首先,您需要确保子对象确实具有颜色属性,如果它们是用线绘制的,那么它们会。您可以通过调用handle(child) 来确定子对象的类型。

    最后,如果您想为每个组设置特定颜色,只需在绘制第一组后设置颜色即可。让第二组查看哪些手柄是新的,并仅在新手柄上设置颜色。对第三组再做一次。

    【讨论】:

    • 正如你所说,这有点像黑客......但它确实完成了工作。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2020-01-25
    • 2017-12-28
    • 1970-01-01
    • 2020-09-26
    • 2014-01-23
    • 2018-08-03
    • 2015-08-22
    • 1970-01-01
    相关资源
    最近更新 更多