MATLAB vision.ShapeInserter()函数提供有关CustomBorderColor属性

时间:2015-05-14 17:47:41

标签: matlab computer-vision matlab-cvst

我正在尝试创建两个用于插入视频帧的形状。

blueBox = vision.ShapeInserter('Shape','Rectangles',...
                          'BorderColor','Custom',...
                          'CustomBorderColor',uint8([0 0 255]));

greenCircle = vision.ShapeInserter('Shape','Circles',...
                          'BorderColor','Custom',...
                          'Fill', true,...
                          'CustomBorderColor',uint8([200 255 50]));

每当我运行脚本时,MATLAB都会警告我CustomBorderColor属性。奇怪的是,它为greenCircle提供了警告信息,而不是blueBox

  

警告:CustomBorderColor属性与此无关   System对象的配置。

     
    

在C:\ Program Files \ MATLAB \ R2012a \ toolbox \ matlab \ system + matlab + system \ pvParse.p> pvParse     在25 C:\ Program     文件\ MATLAB \ R2012a \工具箱\ MATLAB \系统+ MATLAB +系统\ SystemProp.p> SystemProp.parseInputs     在639 C:\ Program     文件\ MATLAB \ R2012a \工具箱\ MATLAB \系统+ MATLAB +系统\ SystemProp.p> SystemProp.setProperties     在138 C:\ Program     文件\ MATLAB \ R2012a \工具箱\视觉\远景+视觉\ ShapeInserter.p> ShapeInserter.ShapeInserter     在254

  

然后我尝试将代码更改为:

greenCircle =vision.ShapeInserter('Shape','Circles', ...
                                  'Fill', true, ...
                                  'FillColor', 'Custom', ...
                                  'CustomFillColor', uint8([0 1 3]), ...
                                  'BorderColor','Custom', ...
                                  'CustomBorderColor',uint8([200 255 50])); 

但仍然收到警告信息:

  

警告:CustomBorderColor属性与此无关   System对象的配置。

     
    

在C:\ Program Files \ MATLAB \ R2012a \ toolbox \ matlab \ system + matlab + system \ pvParse.p> pvParse     在25 C:\ Program     文件\ MATLAB \ R2012a \工具箱\ MATLAB \系统+ MATLAB +系统\ SystemProp.p> SystemProp.parseInputs     在639 C:\ Program     文件\ MATLAB \ R2012a \工具箱\ MATLAB \系统+ MATLAB +系统\ SystemProp.p> SystemProp.setProperties     在138 C:\ Program     文件\ MATLAB \ R2012a \工具箱\视觉\远景+视觉\ ShapeInserter.p> ShapeInserter.ShapeInserter     在254

  

这是什么原因?

1 个答案:

答案 0 :(得分:2)

您收到此警告是因为'Fill'的{​​{1}}设置为true。您可以使用greenCircle'FillColor'来设置已填充的圆圈的颜色。

此外,如果你有MATLAB版本R2014a或更高版本,你可以使用'CustomFillColor'函数而不是insertShape。该功能更易于使用。