1

请帮助解决 Matlab 初学者的挑战

图像是 AFAIU 通常定义为 [X;Y;3] 矩阵,作为 SCIRCLE1 的函数可以计算/返回表示圆的点的集合,但问题是点不是离散的,坐标是实数而不是像素

如何重新计算圆输出在图像坐标系中有效?即我怎样才能“像素化”它?

感谢您的关注,我真的错过了一些基本概念,并感谢您的帮助

约翰

4

3 回答 3

0

计算机视觉系统工具箱中的insertShape函数正是您所需要的。它允许您在图像中绘制矩形、圆形和多边形。

还有insertText, insertMarker, 和insertObjectAnnotation

于 2015-01-20T23:05:34.530 回答
0

好吧,下面是我在 Matlab 新闻组 BOTTOM LINE 上收到的答案-Matlab 中没有内置方式

======================================= 'getframe' 可用于合并轴,即使它更常用于创建电影帧。

MATLAB 在这方面确实很薄弱。有一些用于绘制到覆盖层中的原始函数(例如,如果你想画一个圆,则为 rectangle(),如果你想画一条线,则为 line()),但我不知道有什么真正的方法可以直接绘制到底层图片。所以你必须使用诸如getframe之类的“技巧”,然后应用逻辑操作。而且您必须小心,因为我认为当它为您提供叠加层的栅格化版本时,它可能是屏幕上图像的大小,而不是底层图像的真实原始矩阵大小(我必须重新检查这个)。

完整的线程在这里: http: //www.mathworks.com.au/matlabcentral/newsreader/view_thread/261232

于 2009-09-22T07:36:38.130 回答
0

我找到了这个例子,它为你提供了一种将简单的几何对象放到图片上的简单方法。

读取输入图像。

I = imread('cameraman.tif');

将矩形尺寸定义为[x y width height]

rectangle = int32([10 10 30 30]);

绘制矩形并显示结果。

J = step(shapeInserter, I, rectangle);
imshow(J); 

看到这个链接

顺便说一句..
我没有让你指出点不是离散的,图像是矩阵。我的看法。大同小异。您可以尝试更深入地解释它吗?

于 2012-12-27T18:42:19.090 回答