推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

基于OpenCV-Python的图像分割技术的设计和应用

更新时间:2019-12-24 16:46:06 大小:2M 上传用户:songhuahua查看TA发布的资源 标签:opencv图像分割python 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

在图像处理中,图像关键信息的自动化分割提取有着重要的意义。在Open CV环境下,通过对图像设定HSV阀值,生成前期掩图,然后通过腐蚀膨胀算法对掩图进行再次处理,最后将背景区域遍历成目标颜色,完成图像的分割。结果表明通过阀值算法对图像进行处理可以有效的提取图像关键信息。


部分文件列表

文件名 大小
基于OpenCV-Python的图像分割技术的设计和应用.pdf 2M

部分页面预览

(完整内容请下载后查看)
技术交流  
ELECTRONICS WORLD  
基于OpenCV-Python的图像分割技术的设计和应用  
杭州市职业病防治院 周 宇  
【摘要】在图像处理中,图像关键信息的自动化分割提取有着重要的意义。在OpenCV环境下,通过对图像设定HSV阀值,生成前期掩图,  
然后通过腐蚀膨胀算法对掩图进行再次处理,最后将背景区域遍历成目标颜色,完成图像的分割。结果表明通过阀值算法对图像进行处理可  
以有效的提取图像关键信息。  
【关键词】OpenCV;图像处理;阀值分割;掩图;Python  
Design and Application of image segmentation Technology based on opencv-python  
Zhou Yu  
HangZhou Hospital for the Prevention and Treatment of Occupation Diseaseshangzhou 310014China)  
Abstract  
In image processingthe automatic segmentation of image key information is of great significance.In OpenCv environmentthrough the  
set HSV threshold images,the early stage of the generated mask graphand then through the corrosion expansion algorithm of mask graph processing  
againfinally to traverse the background area into the target color,complete the image segmentation.The results show that the image processing can ef-  
fectively extract the key information.  
Keywords  
OpenCVImage ProcessingThreshold SegmentationMask ImagePython  
0  引言  
2  开发环境的配置  
图像分割技术一直以来都是图像处理中的的热点领域。相应  
2.1 下载Python  
的算法有阀值分割算法、边缘检测算法、模糊集算法等。[1]由于  
阀值分割算法的易用性,使它处于图像分割算法中的重要位置。  
阀值分割就是确定一个阀值将图像的背景和前景划分开来,阀值  
分割算法的一个前提条件就是图像的直方图具有明显的峰,这样  
就可以通过阀值将图像二值化,因而适用于反差较大的图像。[2]  
如图1所示。  
登录,根据相应的开发平台,下载Python,建议  
选择Python3.X版本,因为Python3.X2.X版本作了较大的版本升级  
Python未来的发展方向。  
2.2 安装OpenCV  
Windows CMD模式下,通过Python集成的pip方法安装  
OpenCVpip install OpenCV-PythonPython就会自动安装OpenCV  
开发包。  
3  程序实现  
3.1 打开图像并缩放  
#通过cv2.imread()打开本地的一张图像  
img=cv2.imread(E:\XX.jpg)  
#获取图像的行列和通道  
rows,cols,channels = img.shape  
#设置图像的缩放比例  
cv2.resize(img,None,fx = 0.5,fy = 0.5)  
3.2 图像模式转换  
#将图像由BGR模式转换成HSV模式  
cv2.cvtColor(img,cv2.COLOR_BGR2HSV)  
3.3 设置图像阀值  
图1 图3的直方图  
1  OpenCV  
#根据图像背景颜色,设置蓝色最低和最高阀值  
blue_min = numpy.array([78,43,46])  
blue_max = numpy.array([110,255,255])  
3.4 二值化处理  
OpenCV是一个开源的计算机视觉库,可以跨平台运行,此外  
它还为C++JavaPythonMATLAB等语言提供了接口,包含众  
多图像处理函数库,极度简化了计算机视觉软件的开发。[3]  
#根据阀值将图像做二值化处理,低于blue_min将被设置为0,  
116  
技术交流  
ELECTRONICS WORLD  
高于blue_max则为1如图4所示。  
cv2.inRange(hsvblue_minblue_max)  
4  图像相似度比对  
3.5 掩图的形态学处理  
图像的腐蚀与膨胀,其实就是一个卷积核结构从头到尾进行  
图像矩阵遍历,并将中心点所在像素赋予卷积核区域内像素最大值  
或最小值的过程,如图2所示。腐蚀和膨胀是对白色高亮部分而言  
的,膨胀就是图像中的高亮部分进行膨胀,效果图比原图有更大的  
高亮区域。腐蚀就是原图中高亮部分被腐蚀,效果图拥有比原图更  
小的高亮区域。[4]  
灰度直方图能够很好的实现归一化,且计算量相对较小便于观  
察相识度。首先初始化一个大小为256的数组,然后根据图片像素  
值完成灰度频率统计,最后将两张直方图输出在一张图像上通过观  
察曲线拟合情况判断图片相识度。[6]如图6所示。  
图2 图像矩阵遍历  
#图像腐蚀:卷积内核沿着图像移动,将内核覆盖的区域的最  
小像素提取,当原图像与卷积核对应的像素都为1,那么中心元素  
就保持原来的值,反之为零。[5]  
图6 原图像与结果图像的直方图  
腐蚀定义:  
5  结束语  
(1)  
#图像膨胀:与腐蚀原理相反,卷积内核划过图像覆盖区域的  
最大像素提取,并代替中心点位置的像素。对应的原图像的像素值  
中只要有一个是1,中心元素的像素值就是1。膨胀就是求局部最大  
值的操作,卷积核与图像卷积,即计算卷积核覆盖区域的像素最大  
值,并把这个最大值赋值给指定参考点的像素。[5]  
膨胀定义:  
利用OpenCV中提供的函数库,可以使图像分割技术变得便  
捷。通过对比原图像和处理后的结果图像发现图像细节特征保留完  
好。观察图6,除了0256级灰度区域直方图曲线偏离,其余前景  
部分曲线拟合度较高,综上表明固定阀值的图像分割技术具有很大  
的实用价值。  
参考文献  
(2)  
#腐蚀去除白噪声  
[1]周崟.数字图像处理中分割方法的研究思路构架[J].信息通  
信,2017,(2):48-49.  
erode = cv2.erode(mask,None,iterations = 1)  
cv2.imshow(erode,erode)  
[2]任晓娜.基于Otsu算法的图像阀值自动选取算法研究与应用[J].  
电子设计工程,2015,23(11):75-81.  
#膨胀可以使两个分开的块相连  
dilate = cv2.dilate(erode,None,iterations = 1)  
cv2.imshow(dilate,dilate)  
[3]César Domínguez,Jónathan Heras,Vico Pascual.IJ-OpenCV:  
Combining ImageJ and OpenCV for processing images in biomedicine[J].  
Computers in Biology and Medicine,2017,(84):189-194.  
[4]Gary Bradsk,Adrian Kaehler.学习OpenCV [M].北京:清华大学  
出版社,2009.  
3.6 遍历替换  
#遍历图像各像素点,将背景颜色替换为目标颜色  
for i in range(rows):  
for j in range(cols):  
[5]Rafael C.Gonzalez,Richard E.Woods,Steven L.Eddins.数字图像  
处理的MATLAB实现(第2版)[M].北京:清华大学出版社,2013.  
[6]李凯,张烨.基于Matlab直方图技术的图像增强方法研究[J].自  
动化与仪器仪表,2017,(10):45-48.  
if dilate[i,j] == 255:  
img[i,j] = (0,0,255)#通过BGR通道替换背景颜色,如图5所示。  
作者简介:  
周宇,男,大学本科,电子信息工程专业,杭州市职业病防治  
院助理工程师,从事计算机视觉研究。  
图3 原图  
图4 掩图  
图5 结果图像  
117  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载