Visboundaries usage- red outline
8 views (last 30 days)
Show older comments
hi i wrote this code
BW = imread('picture'.png)
B = bwboundaries(BW);
figure;
imshow(BW);
hold on;
visboundaries(B)
when i run this, the figure comes out and the boundaries show up but there is a red outline on the border of the image itself. how do i get rid of this line? I have attached a picture to show which line i mean
thank you very much!

0 Comments
Answers (2)
Image Analyst
on 16 Mar 2016
bwboundaries() is meant to work on a binary image, not a gray scale one. So, because you passed it a gray scale image, it took the white part as the foreground region and visboundaries() drew the boundaries around the white regions. To fix, try this
grayImage = imread('picture'.png)
BW = grayImage < 250; % or some value that works.
3 Comments
Image Analyst
on 16 Mar 2016
Again, it's outlining the white areas because white is foreground. If you don't want that, then invert BW before you call bwboundaries(). See what I did. I took the dark areas, not the bright areas.
hupaa san
on 3 Aug 2016
Hi, I run matlab example of 'activecontour' command on matlab version R2013a. but when I write 'visboundaries' command it show me this error:
Undefined function 'visboundaries' for input arguments of type 'char'.
and when I enter 'doc visboundaries' in command line window,there is no doc for 'visboundaries' in my matlab too. could u please guide me?
Thanks
1 Comment
Image Analyst
on 3 Aug 2016
You can get it when you upgrade. It was introduced in R2015a. Please upgrade, or else use plot().
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!