作业帮 > 综合 > 作业

怎样用matlab显示图像各点的x、y坐标以及灰度值,还有图像的中心点坐标X*=(x1+x2+x3+x4……+xn)/n

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/21 10:09:24
怎样用matlab显示图像各点的x、y坐标以及灰度值,还有图像的中心点坐标X*=(x1+x2+x3+x4……+xn)/n,以及y*
读入一幅图像后,我想将图像各点的x,y坐标值和灰度值表示出来,每个点都类似于(—,—,—)这种形式,别人写的代码如下:
clc
A=imread('Cameraman.bmp');
N=size(A);%矩阵大小
n=N(1,1);
m=N(1,2);
B=reshape(A,m*n,1);%转换为一维数据
C=zeros(m*n,3);
%求出(x,y,f(x,y))矩阵
for i=1:m*n
C(i,1)=fix(i/n)+1;
C(i,2)=i-m*fix(i/n);
C(i,3)=B(i,1);
end
K=C(1:10,1:end)
结果:
K =
1 1 156
1 2 160
1 3 156
1 4 160
1 5 156
1 6 155
1 7 156
1 8 159
1 9 158
1 10 155
为什么就显示了十个点的坐标和灰度值呢?怎样才能把图像上每个点的坐标和灰度值都表示出来,和图像的像素有关吗,应该在程序中怎么设置,(比如320×240的图像怎么设置)另外,图像中物体的中心点坐标X*=(x1+x2+x3+x4……+xn)/n y*=(y1+y2+y3+y4……+yn)/n 用什么程序才能显示啊 请高手赐教,小弟感激不尽
将最后一行K=C(1:10,1:end)改为K=C就行了;
求得X*,Y*,在该点画个小圆或特殊颜色就可以了
再问: 已有详细解答,不过还是要谢谢这位大虾的帮助