I have an image and want to make a rectangle around black part which is in the middle of image.
显示 更早的评论
I have an image and want to make a rectangle around black part which is in the middle of image.

回答(2 个)
Dishant Arora
2014-6-23
1 个投票
Go for connected component labelling and check out for bounding boxes parameter, plot it. For more information check out this demo by image analyst Image Segmentation Tutorial ("BlobsDemo")
Image Analyst
2014-6-23
1 个投票
What are you starting with? A gray scale image, or that binary image? If you have that binary image, you might want to call imclose() to connect some regions together, then call bwareaopen() to get rid of small noise regions, Then call regionprops and get the centroids and bounding boxes. Find the centroid closest to the center of the image and extract only that one with ismember.
9 个评论
abhishek
2014-6-23
Image Analyst
2014-6-23
Did you try what I said? Why does your binary image in your second image look much, much different than from your original question?
abhishek
2014-6-23
Image Analyst
2014-6-23
I don't have robust code for that, which will recognize any objects that doesn't "belong" in the image along the "path" that you want to travel. It would be very difficult, especially if the floor has different patterns and colorations.
abhishek
2014-6-24
Image Analyst
2014-6-24
[rows, columns] = size(binaryImage);
midx = columns/2; % Compute center of image.
midy = rows/2;
% Get centroids
labeledImage = bwlabel(binaryImage);
measurements = regionprops(labeledImage, 'Centroid');
abhishek
2014-6-25
Image Analyst
2014-6-25
Can't you just use the Pythagorean theorem? Or hypot()?
类别
在 帮助中心 和 File Exchange 中查找有关 Contrast Adjustment 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


