崇州 网站建设 有限公司网站注册费
- 作者: 五速梦信息网
- 时间: 2026年03月21日 11:32
当前位置: 首页 > news >正文
崇州 网站建设 有限公司,网站注册费,品牌建设书籍,珠海营销型网站建设公司1. 图像的直方图均衡 1.1 实验目的与要求 (1)理解直方图均衡的原理与作用; (2)掌握统计图像直方图的方法; (3)掌握图像直方图均衡的方法。 1.2 实验原理及知识点 直方图均衡化是通过灰度变换将一幅图象转换为另一幅均衡直方图#xff0c;即在每个灰度级上都具有相同的象素…1. 图像的直方图均衡 1.1 实验目的与要求 (1)理解直方图均衡的原理与作用; (2)掌握统计图像直方图的方法; (3)掌握图像直方图均衡的方法。 1.2 实验原理及知识点 直方图均衡化是通过灰度变换将一幅图象转换为另一幅均衡直方图即在每个灰度级上都具有相同的象素点数的过程。图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图拉伸和直方图均衡化是两种最常见的间接对比度增强方法。直方图拉伸是通过对比度拉伸对直方图进行调整从而“扩大”前景和背景灰度的差别以达到增强对比度的目的这种方法可以利用线性或非线性的方法来实现直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。直方图均衡的缺点是1、变换后图像的灰度级减少某些细节消失2、某些图像如直方图有高峰经处理后对比度不自然的过分增强。 1.3 实验仪器与软件 (1) PC计算机 (2) MatLab或opencv (3) 实验所需要的图片 (注意: 示例代码中的如 rice.png,pout.tif 等图片一般可以直接使用不需要准备,这些图片是安装matlab后就有的示例图片,如果读不了可以尝试修改一下文件名的后缀,如.png,.jpg或者.tif,也可以在本报告中另存图片在工作目录上) 1.4 实验报告要求 描述实验的基本步骤用数据和图片给出各个步骤中取得的实验结果和源代码并进行必要的讨论必须包括原始图像及其计算/处理后的图像。 1.5 实验内容及步骤 (1) 直方图显示 读入图像‘rice.png’在一个窗口中显示灰度级n64128和256的图像直方图。 % 读入图像 image imread(rice.png); % 显示灰度级为64的直方图 subplot(3,1,1); imhist(image, 64); title(Histogram with 64 Gray Levels); % 显示灰度级为128的直方图 subplot(3,1,2); imhist(image, 128); title(Histogram with 128 Gray Levels); % 显示灰度级为256的直方图 subplot(3,1,3); imhist(image, 256); title(Histogram with 256 Gray Levels); (2)直方图灰度调节 利用函数imadjust调解图像灰度范围观察变换后的图像及其直方图的变化。 % 读入图像 image imread(rice.png); % 对图像进行灰度范围调节 adjusted_image imadjust(image); % 显示原图像 subplot(2,2,1); imshow(image); title(Original Image); % 显示原图像的直方图 subplot(2,2,2); imhist(image); title(Original Histogram); % 显示调节后的图像 subplot(2,2,3); imshow(adjusted_image); title(Adjusted Image); % 显示调节后的图像的直方图 subplot(2,2,4); imhist(adjusted_image); title(Adjusted Histogram); (3)直方图均衡化 分别对图像‘pout.tif’和‘tire.tif’进行直方图均衡化处理比较处理前后图像及直方图分布的变化。 % 读入图像1 image1 imread(pout.tif);% 读入图像2 image2 imread(tire.tif);% 对图像1进行直方图均衡化 equalized_image1 histeq(image1);% 对图像2进行直方图均衡化 equalized_image2 histeq(image2);% 显示处理前的图像和直方图 subplot(2,4,1); imshow(image1); title(Original Image 1);subplot(2,4,2); imhist(image1); title(Original Histogram 1);subplot(2,4,5); imshow(image2); title(Original Image 2);subplot(2,4,6); imhist(image2); title(Original Histogram 2);% 显示处理后的图像和直方图 subplot(2,4,3); imshow(equalized_image1); title(Equalized Image 1);subplot(2,4,4); imhist(equalized_image1); title(Equalized Histogram 1);subplot(2,4,7); imshow(equalized_image2); title(Equalized Image 2);subplot(2,4,8); imhist(equalized_image2); title(Equalized Histogram 2); 4读取一幅彩色图像图片自己准备对RGB图像的每个通道进行直方图均衡化,对均衡化后进行重新合并成彩色图像展示不同阶段的图像效果。另将RGB图像转换为HSV图像rgb2hsv函数分别对三分量的图像行直方图均衡化最后合并成新的彩色图像分析不同阶段的图像效果。 % 读入彩色图像 rgb_image imread(你的图片文件路径);% 对RGB图像的每个通道进行直方图均衡化 equalized_R histeq(rgb_image(:,:,1)); equalized_G histeq(rgb_image(:,:,2)); equalized_B histeq(rgb_image(:,:,3));% 合并三个通道成彩色图像 equalized_rgb_image cat(3, equalized_R, equalized_G, equalized_B);% 显示不同阶段的图像效果 subplot(2,3,1); imshow(rgb_image); title(Original RGB Image);subplot(2,3,2); imshow(equalized_R); title(Equalized Red Channel);subplot(2,3,3); imshow(equalized_G); title(Equalized Green Channel);subplot(2,3,4); imshow(equalized_B); title(Equalized Blue Channel);subplot(2,3,5); imshow(equalized_rgb_image); title(Equalized RGB Image);% 将RGB图像转换为HSV图像 hsv_image rgb2hsv(rgb_image);% 分别对HSV图像的三分量进行直方图均衡化 equalized_h histeq(hsv_image(:,:,1)); equalized_s histeq(hsv_image(:,:,2)); equalized_v histeq(hsv_image(:,:,3));% 合并三个通道成新的彩色图像 equalized_hsv_image cat(3, equalized_h, equalized_s, equalized_v);% 转回RGB图像 equalized_rgb_from_hsv hsv2rgb(equalized_hsv_image);% 显示不同阶段的图像效果 figure; subplot(1,2,1); imshow(equalized_rgb_image); title(Equalized RGB Image);subplot(1,2,2); imshow(equalized_rgb_from_hsv); title(Equalized RGB Image from HSV); (5)自行设计程序实现图像的直方图均衡选做,即不使用matlab或其它库内的相关函数实现。 选做就是不做 2. 图像的形态学操作 2.1 实验目的与要求 目的学习常见的数学形态学运算基本方法了解腐蚀、膨胀、开运算、闭运算取得的效果培养处理实际图像的能力。 2.2 实验原理及知识点 数学形态学是一种基于形状的图像处理理论和方法数学形态学图像处理的基本思想是选择具有一定尺寸和形状的结构元素并提取图像中相关形状结构的图像分量以达到对图像分析和识别的目的。 膨胀和腐蚀是数学形态学图像处理的两个基本运算其他数学形态学运算或算法均是以这两种基本运算为基础。二值图像形态学的基本运算包括膨胀、腐蚀、开运算、闭运算和击中击不中运算。在基本运算的基础上设计了多种二值形态学的实用算法例如去噪、边界提取、孔洞填充、连通分量的提取、骨架、凸包、细化、粗化、剪枝。灰度形态学的基本运算包括灰度膨胀、灰度腐蚀、灰度的开运算和闭运算在基本的运算的基础上灰度图像形态学的主要算法有顶帽变换、底帽变换和灰度形态学重构。数学形态学算法具有利于并行实现的结构适合于并行操作且硬件上容易实现。 在二值图像形态学中结构元素是一个由0值和1值组成的矩阵。每一个结构元素有一个原点结构元素中的原点指定待处理像素的位置。结构元素中的1值定义了结构元素的邻域输出图像中对应原点的值建立在输入图像中相应像素及其邻域像素比较的基础上。在以下操作中设Α表示二值图像B表示结构元素使用结构元素B对二值图像A进行操作。 2.2.1 膨胀 膨胀是将与物体接触的所有背景点合并到该物体中使边界外部向外扩张的过程。通过膨胀可以填充图像中的小孔及在图像边缘外的小凹陷部分。 2.2.2 腐蚀 腐蚀和膨胀是对偶操作。腐蚀是移除图像中目标边界的像素使边界向内部收缩的过程。利用腐蚀操作可以消除小且无意义的物体。 2.2.3 开运算 2.2.4 闭运算 2.3 实验仪器与软件 (1) PC计算机 (2) MatLab或opencv (3) 实验所需要的图片 2.4 实验报告要求 描述实验的基本步骤用数据和图片给出各个步骤中取得的实验结果和源代码并进行必要的讨论必须包括原始图像及其计算/处理后的图像。 2.5 实验内容及步骤 1图像膨胀 a)对包含矩形对象的二进制图像进行膨胀操作。 BWzeros(9,10); BW(4:6,4:7)1; imshow(BW,notruesize) sestrel(square,3); BW2imdilate(BW,se); figure,imshow(BW2,notruesize) b)改变上述结构元素类型(如line, diamond, disk等)重新进行膨胀操作。 Line: BWzeros(9,10); BW(4:6,4:7)1; imshow(BW,notruesize) sestrel(line,3,3); BW2imdilate(BW,se); figure,imshow(BW2,notruesize) 2图像腐蚀 a) 对图像‘circbw.tif’(系统自带图像可以直接读取)进行腐蚀操作。 BW1imread(circbw.tif); sestrel(arbitrary,eye(5)); BW2imerode(BW1,se); imshow(BW1) figure,imshow(BW2) b) 对图像‘text.tif’进行腐蚀操作。我的MATLAB没有自带text.tif,我换成了其他 BWimread(text.tif); sestrel(line,11,90); BW2imerode(BW3,se); imshow(BW) figure,imshow(BW2) (3)膨胀与腐蚀的综合使用 a) 从原始图像‘circbw.tif’中删除电流线,仅保留芯片对象。 方法一先腐蚀(imerode)再膨胀(imdilate) BW1imread(circbw.tif); imshow(BW1) sestrel(rectangle,[40 30]); %选择适当大小的矩形结构元素 BW2imerode(BW1,se); %先腐蚀,删除较细的直线 figure,imshow(BW2) BW3imdilate(BW2,se); %再膨胀,恢复矩形的大小 figure,imshow(BW3) 方法二使用形态开启函数(imopen)。 BW1imread(circbw.tif); imshow(BW1) sestrel(rectangle,[30,20]); BW2imopen(BW1,se); %开启操作 figure,imshow(BW2) b)改变结构元素的大小重新进行开启操作观察处理结果。 sestrel(‘rectangle’,[20 10]); sestrel(‘rectangle’,[50 40]); c)置结构元素大小为[4 3],同时观察形态开启(imopen)与闭合(imclose)的效果总结形态开启与闭合在图像处理中的作用。 Iimread(circbw.tif); imshow(I) sestrel(rectangle,[4 3]); I1imopen(I,se); %开启操作 I2imclose(I,se); %闭合操作 figure,imshow(I1) figure,imshow(I2) (4)利用数学形态学函数bwmorph(BW,skel,Inf)对下面二值图像的目标提取骨架并分析骨架结构。其中BW表示二值图像。 图片自提计算机视觉实验一图像基础处理资源-CSDN文库 % 读入二值图像替换your_binary_image.png为实际图像文件名 BW imread(your_binary_image.png);% 提取骨架 skeleton bwmorph(BW, skel, Inf);% 显示原始图像和骨架 figure; subplot(1, 2, 1); imshow(BW); title(Original Binary Image);subplot(1, 2, 2); imshow(skeleton); title(Skeleton);% 分析骨架结构 % 可以进行一些骨架结构分析如检测骨架中的交叉点和端点。 % 以下是一个示例来检测和可视化骨架的交叉点和端点% 检测骨架的交叉点 branchpoints bwmorph(skeleton, branchpoints);% 检测骨架的端点 endpoints bwmorph(skeleton, endpoints);% 可视化交叉点和端点 [r_branch, c_branch] find(branchpoints); [r_end, c_end] find(endpoints);% 显示骨架交叉点和端点 figure; imshow(skeleton); hold on;% 交叉点用红色表示 plot(c_branch, r_branch, ro, MarkerSize, 10);% 端点用蓝色表示 plot(c_end, r_end, bo, MarkerSize, 10);title(Skeleton with Branchpoints and Endpoints); 3.实验参考图像
相关文章
-
崇州 网站建设 有限公司wordpress建站双语
崇州 网站建设 有限公司wordpress建站双语
- 技术栈
- 2026年03月21日
-
崇信县门户网站领导之窗wordpress模板手机
崇信县门户网站领导之窗wordpress模板手机
- 技术栈
- 2026年03月21日
-
崇信县门户网站领导动态美工培训班费用一般多少
崇信县门户网站领导动态美工培训班费用一般多少
- 技术栈
- 2026年03月21日
-
崇州市建设局网站wordpress 图片上传插件
崇州市建设局网站wordpress 图片上传插件
- 技术栈
- 2026年03月21日
-
崇左北京网站建设HTML5移动端手机网站开发
崇左北京网站建设HTML5移动端手机网站开发
- 技术栈
- 2026年03月21日
-
崇左北京网站建设网站单页制作
崇左北京网站建设网站单页制作
- 技术栈
- 2026年03月21日






