matlab实现把二值图片内多个小白块圈在一个大的矩形框内
时间: 2024-03-10 22:46:34 浏览: 33
可以使用MATLAB中的regionprops函数来实现该功能。具体步骤如下:
1. 读入二值图片,并对其进行二值化处理。
2. 使用bwlabel函数将二值图片中的所有小白块进行标记(每个小白块标记为一个不同的整数)。
3. 使用regionprops函数获取所有小白块的属性信息,包括中心点坐标、面积等。
4. 对于所有小白块,找到它们的最小包围矩形框(通过计算每个小白块所在像素的最小外接矩形来实现)。
5. 根据所有小白块的最小包围矩形框,计算出一个包含它们的大矩形框,作为所有小白块的总体包围框。
6. 将大矩形框绘制到原始图像上,并显示处理后的图像。
以下是MATLAB代码示例:
```matlab
% 读入二值图片
img = imread('binary_image.png');
% 对图片进行二值化处理
bw_img = imbinarize(img);
% 对二值图片中的所有小白块进行标记
labeled_img = bwlabel(bw_img);
% 获取所有小白块的属性信息
stats = regionprops(labeled_img, 'Area', 'BoundingBox', 'Centroid');
% 计算所有小白块的最小包围矩形框,并找到它们的总体包围框
min_x = Inf;
min_y = Inf;
max_x = 0;
max_y = 0;
for i = 1:length(stats)
% 获取当前小白块的最小包围矩形框
bbox = stats(i).BoundingBox;
% 更新总体包围框的位置
min_x = min(min_x, bbox(1));
min_y = min(min_y, bbox(2));
max_x = max(max_x, bbox(1) + bbox(3));
max_y = max(max_y, bbox(2) + bbox(4));
end
% 绘制总体包围框到原始图像上
imshow(img);
hold on;
rectangle('Position', [min_x, min_y, max_x - min_x, max_y - min_y], 'EdgeColor', 'r', 'LineWidth', 2);
hold off;
```
上述代码实现了将二值图片中的所有小白块圈在一个大的矩形框内的功能。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)