计算机视觉之图像处理
实验-直方图、直方图均衡化、高斯滤波
0、库及图片
①库
1)PIL:PIL (Python Imaging Library)图像库提供了很多常用的图像处理及很多有用的图像基本操作。PIL库下载地址[www.pythonware.com/products/pil/]。
2)pylab:pylab将所有的功能函数全部导入其单独的命名空间内。由于pylab是matplotlib中的一部分,所以直接下载matplotlib库。Matplotlib是开源的,可以在[matplotlib.sourceforge.net]上下载。
3)PCV:经过查阅资料
下载PCV库文件数据,下载地址:https://github.com/Li-Shu14/PCV

4)SciPy:SciPy是一个开源的数学工具包,它是建立在NumPy的基础上的。它提供了很多有效的常规操作,包括数值综合、最优化、统计、信号处理以及图像处理。正如接下来所展示的,SciPy库包含了很多有用的模块。SciPy库可以再[http://scipy.org/Download]下载。
②原始图片

1、(直方图)图片读入并显示灰度图
①基本原理
直方图概念:图像的直方图描述图像的灰度级和对应灰度级在图像中出现的次数(频率)的关系,通过直方图可以进行图像分割、检索、分类等操作。
②代码
# -*- coding: utf-8 -*-
from PIL import Image
from pylab import *
# 添加中文字体支持
from matplotlib.font_manager import FontProperties
font = FontProperties(fname=r"c:\windows\fonts\SimSun.ttc", size=14)
figure()
pil_im = Image.open(r'C:\Users\ltt\Documents\Subjects\大三下\计算机视觉(蔡国榕)\xx.jpg')
gray()
subplot(121)
title(u'原图',fontproperties=font)
axis('off')
imshow(pil_im)
pil_im = Image.open(r'C:\Users\ltt\Documents\Subjects\大三下\计算机视觉(蔡国榕)\xx.jpg').convert('L')
subplot(122)
title(u'灰度图',fontproperties=font)
axis('off')
imshow(pil_im)
show()
③结果

④总结
出现问题:IOError: [Errno 22] invalid mode ('rb') or filename经过查阅:
解决方法:
需要在文件名的引号前加一个r

这篇博客介绍了如何使用Python进行数字图像处理,包括直方图、直方图均衡化和高斯滤波。作者详细讲解了直方图的基本原理,展示了如何计算和显示图像直方图,并讨论了直方图均衡化的步骤和效果。此外,还探讨了高斯滤波的原理及其在图像模糊中的应用,通过不同标准差的实验比较了模糊程度。

335

被折叠的 条评论
为什么被折叠?



