声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: hanwangabc

[图像处理] 怎样根据选定的点画成闭合曲线?

[复制链接]
 楼主| 发表于 2008-6-12 17:56 | 显示全部楼层
谢谢各位,假如我在第一张图像上选了几个点,然后根据上面的方法连成线,把坐标位置保存了,即假如在第一张图像的这些坐标:
146,148,141,125,123,
155,170,174,167,158
画曲线,现在想把保存的这些坐标在其他的图像上画出同样的曲线,怎么办?
回复 支持 反对
分享到:

使用道具 举报

发表于 2008-6-12 20:47 | 显示全部楼层
tu1.jpg
回复15楼
上图中的浏览是用来上传附件的,如果图片大小超过限制,用Windows自带的画图工具处理一下

回复16楼
首先,用dlmread命令将保存的坐标值读出来;
其次,参考下面的命令在其它的图像上画图
hold on
t = 1:n+1;
ts = 1: 0.1: n+1;
xys = spline(t,xy,ts);
plot(xys(1,:),xys(2,:),'b-');

[ 本帖最后由 ch_j1985 于 2008-6-12 20:49 编辑 ]
 楼主| 发表于 2008-6-12 23:51 | 显示全部楼层
太感谢了,要获在得某个坐标(x,y)中的像素值是不是用I(x,y),其中I=imread(filename)?文件是灰度图像
发表于 2008-6-13 07:03 | 显示全部楼层
 楼主| 发表于 2008-6-13 10:13 | 显示全部楼层
如何求曲线上某点的切线和法线?还有我把后面的图像用前面的坐标把曲线画出来,想把结果图像村到指定文件夹中,用语句
  1. if ~exist('myDemo')%创建目录,把图像存储到指定目录myDemo中
  2.                  mkdir('myDemo');
  3.            end
  4.            paths=[pwd,'\myDemo\'];
  5.            saveas(gcf,[paths,'myDemo',num2str(i),'.bmp']);%存储图像到目录
复制代码

保存后的图像有失真,能不能用imwrite把图像保存到指定的文件夹?
发表于 2012-8-31 19:58 | 显示全部楼层
非常感谢各位,但是在选点的时候发现最后一个点很难喝第一个点完全重合,我将楼主的代码稍微改了下,最后一个点就直接赋值为第一个点,曲线就可以闭合了。
hold on
xy = [];
n = 0;
%左键选点
%右键选最后一个点
bt = 1;
while bt == 1
    [xi,yi,bt] = ginput(1);
    plot(xi,yi,'r.')
    n = n+1;
    xy(:,n) = [xi;yi];
end
n=n+1;
xy(:,n)=xy(:,1);
t = 1:n;
ts = 1: 0.1: n;
xys = spline(t,xy,ts);
plot(xys(1,:),xys(2,:),'b-');
hold off
发表于 2012-8-31 20:02 | 显示全部楼层
非常感谢各位,但是在选点的时候发现最后一个点很难喝第一个点完全重合,我将楼主的代码稍微改了下,最后一个点就直接赋值为第一个点,曲线就可以闭合了。
hold on
xy = [];
n = 0;
%左键选点
%右键选最后一个点
bt = 1;
while bt == 1
    [xi,yi,bt] = ginput(1);
    plot(xi,yi,'r.')
    n = n+1;
    xy(:,n) = [xi;yi];
end
n=n+1;
xy(:,n)=xy(:,1);
t = 1:n;
ts = 1: 0.1: n;
xys = spline(t,xy,ts);
plot(xys(1,:),xys(2,:),'b-');
hold off
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-30 01:33 , Processed in 0.059113 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表