matlab 读图片坐标

来源:百度知道 编辑:UC知道 时间:2024/05/14 04:14:17
各位大虾好》
小虾有个问题,现在我有一幅图片,是一个2次函数的曲线,我想用matlab读出这个曲线上的点,请问如何做。我在matlab的文件-》import data,后显示的是三维的数组,不能画出图来,所以我想问问,如何能把我得那个2次函数的曲线读出来,读成2维的坐标,或者分别读出横坐标,纵坐标,谢谢》!!!

1,用windows画笔存储为单色位图
2,图片跟.m文件放到同一文件夹。假设文件名是my_im.bmp。

im=imread('my_im.bmp'); %读入图片

index=find(im==1); %找出图形中的“黑点”的坐标。该坐标是一维数据。

s=size(im); %读出图片大小
[y,x]=ind2sub(s,index); %转化成二维坐标。x是点的横坐标,y是点的纵坐标。

%------------------------
%import data是行不通的。你原来的图像是红、绿、蓝三个矩阵,读进来当然是3维的。即使你读进来是一个256*256的矩阵,你也学要通过find函数找出其中的点,然后再转换坐标。

>>a=imread('cameramn.tif');
>>[m n]=find(im>22 & im<23);%大概取那些曲线的像素值
>>plot(n,m,'r.', 'Markersize', 2);
一定要注意m,n的位置哦

:)

用grinput命令就可以了

有一定难度