matlab - 控制 MATLAB 中 MSERRegions.plot() 使用的颜色?

标签 matlab plot computer-vision matlab-cvst mser

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

这是一个示例图,用于阐明我想要做什么:

enter image description here

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

最佳答案

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

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

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

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

关于matlab - 控制 MATLAB 中 MSERRegions.plot() 使用的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10825850/

相关文章:

matlab - 将两个矩阵逐行相乘

matlab - 如何在 matlab 中按列向上移动单元格时摆脱 NaN

matlab - 设置 xticks 之间的标签

python - 绘制一维高斯分布函数

MYSQL - 如何根据范围对数据进行分组并对其进行计数

machine-learning - 机器学习和不同尺寸的图像

computer-vision - 人体 Action 识别和人体事件识别有什么区别?

matlab - Radon 变换矩阵表示

image-processing - 是否存在任何 map /无向图识别系统?

performance - 一种更快的方法来实现 intersect() 给我的东西?