如何使用 Matlab 视觉工具箱和步进函数绘制多个形状?
How to draw multiple shapes using Matlab vision toolbox and step function?
我正在尝试使用这些函数将 2 个形状(圆形和矩形)插入图像。但我无法做到这一点。
这是我的代码
J = step(shapeInserter, I, bbox); %bbox is rectangle which is already defined
J = step(shapeInserter, I, circle); %circle is circle which is already defined
imwrite(J,'image.jpg','jpg'); % it draws only the circle
我有很长的路要保存矩形图像然后再次加载以绘制圆并重新保存。我希望避免这样做,因为它真的很耗时。
我正在尝试做这样的事情(类似于绘图函数)
hold on
%draw circle
%draw rectangle
hold off
imwrite(J,'image.jpg','jpg');
请指教,谢谢
vision.ShapeInserter
对象有一个属性Shape
,可以设置为
'Rectangles'
'Circles'
'Lines'
'Polygons'
默认设置为'Rectangles'
。要使用同一个 ShapeInserter 对象放置一个圆,您必须首先通过调用 release(shapeInserter);
并通过 set(shapeInserter,'Shape','Circles')
修改 Shape 属性 来释放它。然后就可以再次调用step方法插入圆了。
这是一个小例子:
I = imread('cameraman.tif');
rectangle = int32([10,10,50,60]);
circle = int32([200,200,40]);
shapeInserter = vision.ShapeInserter('Fill',true);
J = step(shapeInserter,I,rectangle);
release(shapeInserter);
set(shapeInserter,'Shape','Circles');
K = step(shapeInserter,J,circle);
imshow(K);
我完全不了解 Matlab 图像的东西,但这里有一些非常简单的方法:
frame=imread( '/home/omido/DeepLearning/matlab_segmentation/track/track/Image2.jpg' );
result = insertShape(frame, 'FilledRectangle', [100,100,100,100], 'Color', 'green');
result = insertShape(result, 'FilledRectangle', [200,200,200,200] , 'Color', 'yellow');
imshow(result);
这是结果:
和之前的回答一样,有多种形状,你可以找到它们here。
我正在尝试使用这些函数将 2 个形状(圆形和矩形)插入图像。但我无法做到这一点。 这是我的代码
J = step(shapeInserter, I, bbox); %bbox is rectangle which is already defined
J = step(shapeInserter, I, circle); %circle is circle which is already defined
imwrite(J,'image.jpg','jpg'); % it draws only the circle
我有很长的路要保存矩形图像然后再次加载以绘制圆并重新保存。我希望避免这样做,因为它真的很耗时。
我正在尝试做这样的事情(类似于绘图函数)
hold on
%draw circle
%draw rectangle
hold off
imwrite(J,'image.jpg','jpg');
请指教,谢谢
vision.ShapeInserter
对象有一个属性Shape
,可以设置为
'Rectangles'
'Circles'
'Lines'
'Polygons'
默认设置为'Rectangles'
。要使用同一个 ShapeInserter 对象放置一个圆,您必须首先通过调用 release(shapeInserter);
并通过 set(shapeInserter,'Shape','Circles')
修改 Shape 属性 来释放它。然后就可以再次调用step方法插入圆了。
这是一个小例子:
I = imread('cameraman.tif');
rectangle = int32([10,10,50,60]);
circle = int32([200,200,40]);
shapeInserter = vision.ShapeInserter('Fill',true);
J = step(shapeInserter,I,rectangle);
release(shapeInserter);
set(shapeInserter,'Shape','Circles');
K = step(shapeInserter,J,circle);
imshow(K);
我完全不了解 Matlab 图像的东西,但这里有一些非常简单的方法:
frame=imread( '/home/omido/DeepLearning/matlab_segmentation/track/track/Image2.jpg' );
result = insertShape(frame, 'FilledRectangle', [100,100,100,100], 'Color', 'green');
result = insertShape(result, 'FilledRectangle', [200,200,200,200] , 'Color', 'yellow');
imshow(result);
这是结果:
和之前的回答一样,有多种形状,你可以找到它们here。