在Octave/Matlab中绘制图像上的点

pea*_*ach 0 matlab plot octave

我正在研究的一个项目有一个"老派"主题专家.他为我提供了XY轴上的重要图表.这些地块是手绘的,但非常仔细.我需要一种方法来将每个点的十进制值放入一个文件中.有了这个,我将使用matlab或octave的插值函数.

我的第一个选择是只是注视图并猜测每个点的值并将它们输入Excel或其他东西.我真的不想这样做.

在Matlab和Octave中,我知道有一个名为ginput的函数,用户可以使用该函数单击平面中的点来绘制它们.这越来越接近我想做的事情了.

为了确保最佳的准确性,我希望将中间数据库中的原始绘图放在ginput下面,就像背景图像一样.我会让ginput轴尽可能接近手绘轴,然后只需点击原始图像中的点来绘制它们.

有没有办法用Octave/Matlab做到这一点?也许另一个工具?

And*_*ndy 5

我之前用八度音程做过这一点,因为我必须将来自扫描数据表的传感器的光谱响应数字化.

img = imread ('datasheet.png');
imshow(img)
[X, Y, BUTTONS] = ginput ();
Run Code Online (Sandbox Code Playgroud)

然后我点击了4个角来计算尺度和原点的位置,然后根据我的需要计算数据点.当我完成后,我按下RETURN并将值设为X,Y,我计算回所需的单位.