您的位置:首页 > 编程语言 > MATLAB

毕业设计——人脸检测——MATLAB 在图片上画矩形框(已知矩形左上角坐标、长、宽)

2012-02-29 00:59 1726 查看
介绍:本函数是在一张图片上画矩形框。通过已知坐标,长度,宽度画了四条线。并可以在同一图片上画多个矩形框,代码如下:

%draw the lines
function drawline(img,FDB)

close all;
imshow(img);
hold on;
s=size(FDB);
n=1:1:s(2);

for i=n,
line([FDB{1,i} FDB{1,i}+FDB{3,i}],[FDB{2,i} FDB{2,i}],'Color','r');
%%%%need use {} 横线

line([FDB{1,i}+FDB{3,i} FDB{1,i}+FDB{3,i}],[FDB{2,i} FDB{2,i}+FDB{4,i}],'Color','r');

line([FDB{1,i}+FDB{3,i} FDB{1,i}],[FDB{2,i}+FDB{4,i} FDB{2,i}+FDB{4,i}],'Color','r');%竖线

line([FDB{1,i} FDB{1,i}],[FDB{2,i}+FDB{4,i} FDB{2,i}],'Color','r');
end


img是图片,使用前可以先读入图片,如:img=imread('test\01.jpg');

FDB是一个cell: FDB=cell(4,[]);里面从上往下,依次放置:矩形左上角坐标 'x',矩形左上角坐标 'y',宽 ‘w’,长'h'

注意的是:line()函数,比如说, 点a(0.3 0.4),点b(0.7 0.9),画两点之间的连线,使用line()函数如下:

line([0.3 0.7],[0.4 0.9],'Color','r' );

如果对此函数有使用不清楚的地方或者有更好的方法请留言
亦可以联系:hughdove@gmail.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: