how to draw border
6 次查看(过去 30 天)
显示 更早的评论
hi there, i have four set of coordinate and i want to draw line to make a border. after that i want to crop it automatically at the border. here, i attach the illustration for further understanding. please help me.. thank you
2 个评论
Thomas
2012-4-27
are you performing these operation on an image, or are you actually plotting the points?
采纳的回答
Thomas
2012-4-27
Since you are performing your operations on an image
I'm assuming you know the coordinates and size of the rectangle you want..
I1=imread('myimage.jpg'); % import your image
%the following step is not necessary but just shows the boundary box..
imshow(I1);
hold on
w=[26 77];
x=[26 555];
y=[426 77];
z=[426 555];
Points = [w;x;z;y;w]; %in desired order
plot( Points(:,1), Points(:,2), 'r-'); % draw bounding box
hold off;
figure
I2=imcrop(I1,[26 77 400 478]) % crop the bounding box
imshow(I2) % show cropped image
4 个评论
更多回答(1 个)
Matt Kindig
2012-4-27
To draw the border, you can just use 'plot':
w=[26 77];
x=[26 555];
y=[426 77];
z=[426 555];
Points = [w;x;z;y;w]; %in desired order
plot( Points(:,1), Points(:,2), 'r-');
What do you mean you want to "crop" your data set at the border?
2 个评论
Thomas
2012-4-27
I guess the user means to say only see the boxed area in the plot..
In that case add the following line to the code
set(gca,'xlim',[min(Points(:,1)) max(Points(:,1))],'ylim',[min(Points(:,2)) max(Points(:,2))])
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!