0

我正在使用 matlab 对图像进行修改。我在 Matlab 上加载了一个图像。(图像可能具有不同的分辨率)将图像转换为灰度然后将图像的矩阵转换为双倍。

我在图像上绘制了网格线(我已经在堆栈溢出的某处发布了如何执行此操作的代码)。

我的问题是,由于在 X 轴和 Y 轴上设置图像,我可能有 1000 个正方形。

我想为该图像中的正方形编号。

Matlab 有没有画数字的选项?我很高兴收到有关此的任何信息(除了作为一个点击猴子并在油漆上写 0 到 1000 哈哈...)。

干杯小号

4

2 回答 2

7

这是一个将文本标签放在网格中间的图像上的代码示例:

x = imread('cameraman.tif');
image(x)
axis image
grid on
%# grid domains
xg = 0:50:200;
yg = 0:50:200;
%# label coordinates
[xlbl, ylbl] = meshgrid(xg+25, yg+25);
%# create cell arrays of number labels
lbl = strtrim(cellstr(num2str((1:numel(xlbl))')));
text(xlbl(:), ylbl(:), lbl(:),'color','w',...
    'HorizontalAlignment','center','VerticalAlignment','middle');

在此处输入图像描述

于 2011-12-07T16:16:11.297 回答
3

采用text

text是用于创建文本图形对象的低级函数。用于 text在指定位置放置字符串。

text(x,y,'string')将引号中的字符串添加到点 ( x, y)指定的位置,x并且y必须是 double 类的数字。

于 2011-12-07T16:02:54.390 回答