版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《计算机视觉处理项目实战》✩精品课件合集✩精品课件合集第X章XXXX模块4图像直方图图像直方图绘制CONTENTS目录0102直方图基础绘制直方图直方图基础直方图,又称质量分布图,是一种统计报告图。一般用横轴表示数据类型,纵轴表示分布情况。由一系列高度不等的纵向条纹或线段表示数据分布的情况。直方图是数值数据分布的精确图形。直方图基础从统计学的角度来看,直方图用于统计图像内各个灰度级出现的次数。直方图的横坐标表示图像像素的灰度级,纵坐标表示像素灰度级的数量。RANGE要统计的灰度级范围。直方图中像素的灰度级范围一般为[0,255],0表示黑色,255表示白色。BINS灰度级的分组数量。在处理直方图时,将灰度级按一定范围进行划分得到的子集数量为BINS。DIMS绘制直方图时采集的参数数量。一般的直方图只采集灰度级,所以DIMS为1。绘制直方图OpenCV提供了img=img.ravel()函数来实现图片的降维,语法格式如下:r_img=img.ravel()img:通过cv2.imread()读取的图片对象。返回值:图片一维数据源。代码实例:r_clothes=clothes.ravel()绘制直方图参数说明如下:src为用于绘制直方图的图像数据,必须是一维数组。通常,OpenCV中的BGR图像是三维数组,可用ravel()函数将其转换为一维数组。bins为灰度级分组数量。matplotlib.pyplot.hist()函数可根据图像绘制直方图,其基本格式如下。matplotlib.pyplot.hist(src,bins)绘制直方图示例importcv2importmatplotlib.pyplotaspltclothes=cv2.imread(r"D:\Others\Docs\picture\clothes.jpg")r_clothes=clothes.ravel()plt.hist(r_clothes,256)plt.show()总结0102直方图基础绘制直方图二维直方图CONTENTS目录0102OpenCV中的二维直方图NumPy中的二维直方图OpenCV中的二维直方图OpenCV使用cv2.calcHist()函数来查找颜色直方图,在使用过程中需要注意:image参数指定的原图应从BGR色彩空间转换为HSV色彩空间,实际参数需用方括号括起来。histSize参数设置BINS值为[180,256]时,表示色相为180,饱和度为256。channels参数设置为[0,1]时,表示同时处理色相和饱和度。ranges参数设置为[0,180,0,256]时,表示色相值的取值范围为[0,180],饱和度的取值范围为[0,256]。OpenCV中的二维直方图示例importcv2img=cv2.imread('building.jpg')cv2.imshow('original',img) img2=cv2.cvtColor(img,cv2.COLOR_BGR2HSV) hist=cv2.calcHist([img2],[0,1],None,[180,256],[0,180,0,256])cv2.imshow('2Dhist',hist) cv2.waitKey(0)
OpenCV中的二维直方图cv2.calcHist()函数返回的颜色直方图是一个大小为180×256的二维数组,用cv2.imshow()函数显示时是一幅灰度图像,不能直接显示出颜色的分布情况。可以使用matplotlib.pyplot.imshow()函数绘制具有不同颜色的二维直方图。importmatplotlib.pyplotaspltplt.imshow(hist,interpolation='nearest')plt.show() 示例NumPy中的二维直方图NumPy的histogram2D()函数用于计算二维直方图,其基本格式如下。hist,xedges,yedges=np.histogram2D(x,y,bins,range)参数说明如下:hist为返回的直方图。xedges为返回的x的直方图的BINS边界值。yedges为返回的y的直方图的BINS边界值。x和y为原图对应通道转换成的一维数组。bins为BINS的值,如[180,256]。range为像素值范围,格式为“[[0,180],[0,256]]”。NumPy中的二维直方图示例#channels代表统计的色彩通道channels=[0]blue_hist=cv2.calcHist([clothes],channels,mask,histSize,ranges)plt.plot(blue_hist,'b')channels=[1]green_hist=cv2.calcHist([clothes],channels,mask,histSize,ranges)plt.plot(green_hist,'g')channels=[2]red_hist=cv2.calcHist([clothes],channels,mask,histSize,ranges)plt.plot(red_hist,'r')plt.show()总结0102OpenCV中的二维直方图NumPy中的二维直方图直方图均衡化CONTENTS目录0102直方图均衡化概述普通直方图均衡化03限制对比度自适应直方图均衡化直方图均衡化概述直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。通常用来增加许多图像的全局对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布直方图均衡化使图像外观更清晰、色彩更加均衡。它被广泛地应用在人脸识别、车牌识别等领域。1234普通直方图均衡化普通直方图均衡化主要是指将原图像的灰度级均匀地映射到全部灰度级范围内。OpenCV的cv2.equalizeHist(src)函数用于实现普通直方图均衡化,其基本格式如下。dst=cv2.equalizeHist(src)dst为直方图均衡化后的图像。src为原图像,必须是8位的单通道图像。参数说明如下普通直方图均衡化示例importcv2importmatplotlib.pyplotaspltimg=cv2.imread('bee.jpg',0) cv2.imshow('original',img) plt.figure('原图的直方图')plt.hist(img.ravel(),256) img2=cv2.equalizeHist(img)cv2.imshow('equalizeHist',img2) plt.figure('均衡化后的直方图')plt.hist(img2.ravel(),256) plt.show()
限制对比度自适应直方图均衡化
可对局部对比度进行限制,这就是限制对比度自适应直方图均衡化OpenCV的cv2.createCLAHE()函数用于创建CLAHE对象,其基本格式如下。retval=cv2.createCLAHE([clipLimit[,tileGridSize]])参数说明如下。retval为返回的CLAHE对象。clipLimit为对比度受限的阈值,默认值为40.0。tileGridSize为直方图均衡化的网格大小,默认值为(8,8)。
调用CLAHE对象的apply()方法,将其应用到图像中进行均衡化。限制对比度自适应直方图均衡化示例importcv2importmatplotlib.pyplotaspltimg=cv2.imread('clahe.jpg',0)cv2.imshow('original',img) img2=cv2.equalizeHist(img)cv2.imshow('equalizeHist',img2) clahe=cv2.createCLAHE(clipLimit=5) img3=clahe.apply(img)cv2.imshow('CLAHE',img3) cv2.waitKey(0)
总结0102直方图均衡化概述普通直方图均衡化03限制对比度自适应直方图均衡化图像模板匹配CONTENTS目录0102模板匹配概述模板匹配语法模板匹配概述模板匹配是一种最原始、最基本的模式识别方法它是图像处理中最基本、最常用的匹配方法模板匹配的操作方法是将模板图像在输入图像上滑动遍历所有的像素从而完成匹配操作研究某一特定对象的图案位于图像的什么地方,这就是一个匹配问题在图像A内寻找与图像B最相似的部分,一般将图像A称为输入图像,将图像B称为模板图像模板匹配具有自身的局限性,主要表现在它只能进行平行移动模板匹配语法OpenCV提供了cv2.matchTemplate()来实现图像的模板匹配,语法格式如下:result=cv2.matchTemplate(image,templ,method[,mask])image:8位或32位原始图像。templ:模板图像。method:匹配方法。mask:掩码。代码示例:rv=cv2.matchTemplate(img,template,cv2.TM_SQDIFF)模板匹配语法将模板匹配后得到的坐标值在原图中标注出来。OpenCV
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏住院医师规范化培训考试(心胸外科II阶段)题库历年参考题库含答案详解
- 2026正高面审答辩-正高006面审答辩内分泌学历年题库含答案详解
- 2026文物保护工程从业资格考试(责任设计师·古文化遗址古墓葬)历年参考题库含答案详解
- 2026教师职称-山西-山西教师职称(基础知识、综合素质、小学美术)历年参考题库含答案详解3套试卷
- 沉降课程设计
- 北京美术教培课程设计
- 城市轨道信号课程设计
- 送料装置纺织设计工艺课程设计
- 谣言传播风险评估方法课程设计
- 内容营销技师考试试卷及答案
- 《PLC应用技术(西门子S7-1200)第二版》全套教学课件
- 砂石料运输合作协议书范本
- 初中语文现代文阅读训练及答案二十篇
- FZT 90097-2017 染整机械轧车线压力
- Chapter-1工程英语翻译概述
- 新教师如何备课课件
- 2023年版雕塑工程量清单计价定额
- 测绘法规与工程管理(第2版)PPT完整全套教学课件
- 情态补语得专题教育课件
- 卫生专业技术人员职称制度改革介绍
- 人教版五年级语文上册全册完整课件【下载】
评论
0/150
提交评论