数字图像处理-图像的形态学处理(2)

1 实验一

1.1 实验题目

读入一幅图像,用函数 bwmorph 进行图像的细化和提取骨架操作,并输出显示其结果。

1.2 程序源代码

Matlab 复制代码
clc;
close all;
clear all;
I = imread('xihua.jpg');
I=rgb2gray(I);%图像灰度化
figure;imshow(I)
title('原始图像','FontSize',14)
%骨架化二值图像:为了使原始图像适合于骨架化,对图像进行反转,以使对象变亮而背景变暗。 然后,将结果图像二值化。
Icomplement = imcomplement(I);
BW = imbinarize(Icomplement);
figure;imshow(BW)
title('二值图像','FontSize',14)
%骨架提取
bw_skel=bwmorph(BW,'skel',Inf); %二值图像的骨架化
figure;imshow(bw_skel)
title('骨架提取图像','FontSize',14)
%细化
result2 = bwmorph(BW,'thin',Inf);
figure;
imshow(result2)
title('细化后的图像','FontSize',14)

1.3 运行结果

2 实验二

2.1 实验题目

使用顶帽变换对图像纠正阴影,并进行图像分割。

2.2 程序源代码

Matlab 复制代码
% 使用顶帽变换
clc
clear
f=imread('yinying.jpg');
subplot(221),imshow(f);
title('原始图像');
se=strel('disk',20);%产生结构元素
%顶帽变换是指原始图像减去其开运算的图像
%而开运算可用于补偿不均匀的背景亮度,所以用一个大的结构元素做开运算后
%然后用原图像减去这个开运算,就得到了背景均衡的图像,这也叫做是图像的顶帽运算
f1=imtophat(f,se);%使用顶帽变换
subplot(222),imshow(f1);
title('使用顶帽变换后的图像');
%图像分割(二值分割)
thresh = graythresh(f1);%自动确定二值化阈值
f2 = im2bw(f1,thresh);%对图像二值化
subplot(223),imshow(f2);
title('进行图像分割后的结果');

2.3 运行结果

相关推荐
2501_905967334 小时前
双目视觉:CREStereo论文超详细解读
人工智能·python·计算机视觉·双目视觉
AI即插即用5 小时前
超分辨率重建(论文精读) | CVPR 2025 LSRNA:利用隐空间超分与噪声对齐,打破扩散模型生成 4K 图像的效率瓶颈
图像处理·人工智能·深度学习·计算机视觉·视觉检测·超分辨率重建
海天一色y5 小时前
基于CNN实现Mnist手写数字识别
人工智能·深度学习·计算机视觉
CoovallyAIHub6 小时前
英伟达CES 2026炸场:没有新显卡,却掏出了让全球AI公司彻夜难眠的“算力核弹”
深度学习·算法·计算机视觉
给算法爸爸上香6 小时前
yolo26目标检测尝鲜测试
人工智能·yolo·目标检测·计算机视觉·yolo26
t198751286 小时前
红外弱小目标检测MATLAB程序
目标检测·计算机视觉·matlab
CoovallyAIHub7 小时前
如何用10%的标注数据,达到可媲美全监督模型的性能?AAAI 2026论文揭秘BCSI三大创新设计
深度学习·算法·计算机视觉
mahtengdbb17 小时前
基于YOLO11-RepNCSPELAN的伪装物体检测与识别研究
人工智能·计算机视觉·目标跟踪
8K超高清7 小时前
CES 2026科技看点
网络·人工智能·科技·数码相机·计算机视觉
管牛牛7 小时前
图像灰度变换
人工智能·计算机视觉