I = imread('火焰2.jpg');
figure
mainfc;
subplot(231)
imshow(I)
title('原图')
% 获取尺寸
[M,N,C]=size(I);
%% HSV颜色分割部分
% 原图像转换为HSV模型
hsv=rgb2hsv(I);
subplot(232)
imshow(hsv)
title('hsv分量图')
% 分别获取H、S、V分量
h=hsv(:,:,1);
s=hsv(:,:,2);
v=hsv(:,:,3);
%% 分割出火焰部分
% OTSU获取阈值分割
thr_sourse=graythresh(v);
if thr_sourse<0.3
thr=thr_sourse*2.8;
elseif thr_sourse<0.4;
thr=thr_sourse*1.8;
else
thr=thr_sourse*1.5;
end
% 分割
I_bw_v=im2bw(v,0.8);
subplot(233)
imshow(I_bw_v)
title('分割图')
%% 形态学处理部分
% 设置去噪参数
set_area=50;
% 去噪
I_bw=bwareaopen(I_bw_v,set_area);
subplot(234)
imshow(I_bw)
title('去噪图')
% 填充
I_bw=imfill(I_bw,'holes');
% 膨胀操作,参数10
SE=ones(12);
I_bw=imdilate(I_bw,SE);
% 填充
I_bw=imfill(I_bw,'holes');
subplot(235)
imshow(I_bw)
title('填充')
% 设置去噪参数
set_area=10000;
% 去噪
I_bw=bwareaopen(I_bw,set_area);
%% 定位和识别部分
% 显示
subplot(236)
imshow(I);
title('标定')
hold on
% 定位和标定
STATS = regionprops(I_bw,'basic');
% 标定每个对象
for j=1:length(STATS)
% 标记
rectangle('Position',STATS(j).BoundingBox,'EdgeColor','g','LineWidth',4);
end
薰衣草之夏龙
- 粉丝: 309
- 资源: 26
最新资源
- MybatisPlus
- 利用深度学习中的语义分割技术(特别是 DeeplabV3 和 DeeplabV3+)进行视杯与视盘的分割任务(含完整的程序和代码
- Python 计算机视觉中KL散度的实现及应用(含完整的程序和代码详解)
- Python LoRA 微调技术的实现、流程和代码示例(含完整的程序和代码详解)
- jdk13-windows-x64安装包
- Python 基于 mmsegmentation 进行语义分割任务的项目(含完整的程序和代码详解)
- mmsegmentation 框架实现语义分割任务,contract-dilation=True 的参数配置(含完整的程序和代码
- 车型识别系统系统方案过程算法实现.zip
- Python 使用 TensorFlow 和 VGG19 模型,实现一个图像风格迁移系统(含完整的程序和代码详解)
- 车牌识别系统算法系统实现过程方案.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈