基于hvs的图像彩色区域检测【字数:10060】
摘 要在图像处理中,彩色图像通常在人工图像分析中特别重要,为了适应不同的应用场合,我们开发了许多不同的颜色空间,其中HSV颜色空间符合人眼视觉特性,而一般计算机处理图像时都是采用的RGB模型,因此我们将图像从RGB模型转换到HSV模型以后再对它进行处理,将颜色分为色调(H),饱和度(S),明度(V)三个分量,绘制直方图后通过查询颜色表以及多次试验的方式,取得每幅彩色图像的三个分量的阈值范围,并根据阈值范围绘制二值模板,用去除小对象、与半径为4的圆形进行闭运算、空洞填充对二值模板图像进行优化,并将优化后二值模板图像乘以原始RGB图像得出最终需要检测到图像颜色区域。本论文应用MATLAB软件,由用户指定任意一幅彩色图像中的任意一种颜色,我们将图像中指定的颜色的区域都显示出来,不要的颜色不显示。
目 录
1 绪论 1
1.1研究背景和意义 1
1.2发展状况 2
1.3 本文的主要工作 2
2 相关理论与公式 3
2.1 数字图像处理概念 3
2.2 HSV模型 3
2.3 RGB模型与HSV模型的转换 4
2.3 MATLAB简介 5
3 算法、程序与流程 6
3.1 编程思路(流程、函数分析) 6
3.2 整体算法 12
4 实验结果分析 13
4.1 实验结果及图像 13
结语 16
致谢 17
参考文献 17
附录 19
附录一 程序代码 19
1 绪论
1.1研究背景和意义
一幅图像中往往包含了很多信息,它可以在一定程度上客观的反映自然景物,相比较看文字,人眼可以通过图像快速的获取自己想要的信息,因此说图像是人类视觉的基础也不为过,我们对图像进行处理的主要目的就是为了让我们人眼可以更加方便快速的获取图像中的信息。如果图像很多的话,光用人眼一张张的看往往费时费力,而且看多了容易出错,我们可以把图像先交给计算机,让计算机先提取出图像中用户感兴趣的区域,而每个看图像的人都有他自己观察图像的侧重点,[1]我们可以采用人机交互的方式,先把对图像感兴趣的区 *好棒文|www.hbsrm.com +Q: @351916072@
域的定义交给用户,再由计算机自动提取出这些区域,最后显示出来,采用这样的方法以用户为中心,能准确捕获用户检索意图,提升用户对图像信息提取的效率。[2]
彩色图像相比较简单的灰度图像,不仅包括亮度信息,往往还包含更多例如饱和度、色调等等的信息[3],同时用户可以通过彩色图像快速的获取自己想要的信息,但是彩色图像因为数据量大,且各个分量相关性大,不易分割等缺点,以之前的技术无法直接处理彩色图像,但随着科学技术的发展,这些问题都得到了有效的解决,因此我们很有必要设计一种新的方式以检测出图像的彩色区域,让人们可以快速的理解图像要表达的内容,获取我们想要提取的信息。
考虑到人眼的视觉特性,人们观察彩色的方式一般是从色调、饱和度、明度这三个方面综合决定的,比如红色可以是浅红色和深红色等等。如果将要检测的图像的彩色区域,用目前显示器之类使用的RGB色系来表达,显然与人对颜色的理解方式不一致,而且不容易获得准确的参数。但如果在HSV颜色空间基于彩色分割一幅图像,就要容易很多,并且可以在单独的平面上执行处理。转换后的H、S、V这三个相互独立的分量可以将复杂的三维搜索问题转变为三个一维搜索[4]。本文为了在色调图像中分离出感兴趣的颜色区域,将饱和度作为一个模板图像,并基于色调的阈值分割出想要的颜色区域,并在此基础上进一步优化算法,给出了本系统较准确的设计方案。
1.2发展状况
随着科技的发展,彩色图像的应用越来越多,颜色检测则是彩色图像处理中的一个重要的工作,颜色检测的方法有很多种,目前最常见的检测方法有四大类,分别是基于阈值、聚类、区域、特定理论进行检测的[5]。不管是基于阈值的直方图阈值法或最大类间方差法,还是基于聚类的K均值聚类或模糊C均值聚类,还是基于区域的区域生长和区域合并或是分水岭分割算法[6],甚至是相互结合的方法,都是一些应用广泛的颜色检测的方法了,但这些方法还不是特别智能,随着生物工程的出现以及遗传学的突破,现阶段国内外研究使用的,是基于某些特定理论来进行分割,一般来说有三种,一种基于人工神经网络,它可以自行学习,有很强的自适应性,同时采用并行处理的方式,可以处理大数据,还有一种是基于遗传算法,同样的具有很强自适应性,它可以并行搜索全局中的最优解,对于复杂且目标不明确的情况使用效果最佳,最后还有一种是基于颜色模型分割,只有确定颜色空间以后才可以继续下个操作。[9]
1.3 本文的主要工作
本课题为基于HVS的图像彩色区域检测,即用Matlab软件设计图像彩色区域的分离的算法,并且分离出的颜色更贴合人眼观察色彩的方式。先由用户选择想要检测的颜色,软件自动检测出用户感兴趣的颜色,并将用户选择的颜色进行显示,而用户不需要的颜色都变成黑色的不显示。考虑到通常颜色都是在RGB空间表述的,而用户观察颜色时HSV空间更贴合视觉特性,因此要进行颜色空间的转换,再在HSV空间根据颜色特性分离出要检测的颜色并显示。目前,已经有很多前辈设计出分割图像的算法,本论文设计了一种结合色度、饱和度、明度三个分量的阈值进行分割的方法,相比较常用的只基于色度进行颜色检测的方法,所得的结果更加精确,分割的效率更高。
2 相关理论与公式
2.1 数字图像处理概念
一幅图像就是一个二维函数。二维函数的元素是空间坐标,这个位置的图像的亮度值或者灰度值就是这个任意坐标处的幅度,我们将有限的离散的空间坐标和幅值组成的图像叫数字图像。对数字图像进行处理的过程就叫数字图像处理[11]。
2.2 HSV模型
颜色空间又叫彩色模型,通过不同的标准,对同一种彩色进行通常可以接受的方式来说明,其实就是坐标系统和子空间的说明[6],系统中的每种颜色都是由单个点来表示的。这些彩色模型根据面向对象的不同,可以采用不同的模型[7],一般认为RGB模型是理想的图像颜色生成模型,通常彩色摄像机的图像获取、监视器屏幕上显示的图像都是采用这个模型的,而CMY(青、粉红、黄)模型或CMYK(青、粉红、黄、黑)往往应用于彩色打印机领域,[5]为了更加方便人们对彩色的描述以及解释,还存在HSV(色调、饱和度、明度)或HSI(色调、饱和度、亮度)等等。
目 录
1 绪论 1
1.1研究背景和意义 1
1.2发展状况 2
1.3 本文的主要工作 2
2 相关理论与公式 3
2.1 数字图像处理概念 3
2.2 HSV模型 3
2.3 RGB模型与HSV模型的转换 4
2.3 MATLAB简介 5
3 算法、程序与流程 6
3.1 编程思路(流程、函数分析) 6
3.2 整体算法 12
4 实验结果分析 13
4.1 实验结果及图像 13
结语 16
致谢 17
参考文献 17
附录 19
附录一 程序代码 19
1 绪论
1.1研究背景和意义
一幅图像中往往包含了很多信息,它可以在一定程度上客观的反映自然景物,相比较看文字,人眼可以通过图像快速的获取自己想要的信息,因此说图像是人类视觉的基础也不为过,我们对图像进行处理的主要目的就是为了让我们人眼可以更加方便快速的获取图像中的信息。如果图像很多的话,光用人眼一张张的看往往费时费力,而且看多了容易出错,我们可以把图像先交给计算机,让计算机先提取出图像中用户感兴趣的区域,而每个看图像的人都有他自己观察图像的侧重点,[1]我们可以采用人机交互的方式,先把对图像感兴趣的区 *好棒文|www.hbsrm.com +Q: @351916072@
域的定义交给用户,再由计算机自动提取出这些区域,最后显示出来,采用这样的方法以用户为中心,能准确捕获用户检索意图,提升用户对图像信息提取的效率。[2]
彩色图像相比较简单的灰度图像,不仅包括亮度信息,往往还包含更多例如饱和度、色调等等的信息[3],同时用户可以通过彩色图像快速的获取自己想要的信息,但是彩色图像因为数据量大,且各个分量相关性大,不易分割等缺点,以之前的技术无法直接处理彩色图像,但随着科学技术的发展,这些问题都得到了有效的解决,因此我们很有必要设计一种新的方式以检测出图像的彩色区域,让人们可以快速的理解图像要表达的内容,获取我们想要提取的信息。
考虑到人眼的视觉特性,人们观察彩色的方式一般是从色调、饱和度、明度这三个方面综合决定的,比如红色可以是浅红色和深红色等等。如果将要检测的图像的彩色区域,用目前显示器之类使用的RGB色系来表达,显然与人对颜色的理解方式不一致,而且不容易获得准确的参数。但如果在HSV颜色空间基于彩色分割一幅图像,就要容易很多,并且可以在单独的平面上执行处理。转换后的H、S、V这三个相互独立的分量可以将复杂的三维搜索问题转变为三个一维搜索[4]。本文为了在色调图像中分离出感兴趣的颜色区域,将饱和度作为一个模板图像,并基于色调的阈值分割出想要的颜色区域,并在此基础上进一步优化算法,给出了本系统较准确的设计方案。
1.2发展状况
随着科技的发展,彩色图像的应用越来越多,颜色检测则是彩色图像处理中的一个重要的工作,颜色检测的方法有很多种,目前最常见的检测方法有四大类,分别是基于阈值、聚类、区域、特定理论进行检测的[5]。不管是基于阈值的直方图阈值法或最大类间方差法,还是基于聚类的K均值聚类或模糊C均值聚类,还是基于区域的区域生长和区域合并或是分水岭分割算法[6],甚至是相互结合的方法,都是一些应用广泛的颜色检测的方法了,但这些方法还不是特别智能,随着生物工程的出现以及遗传学的突破,现阶段国内外研究使用的,是基于某些特定理论来进行分割,一般来说有三种,一种基于人工神经网络,它可以自行学习,有很强的自适应性,同时采用并行处理的方式,可以处理大数据,还有一种是基于遗传算法,同样的具有很强自适应性,它可以并行搜索全局中的最优解,对于复杂且目标不明确的情况使用效果最佳,最后还有一种是基于颜色模型分割,只有确定颜色空间以后才可以继续下个操作。[9]
1.3 本文的主要工作
本课题为基于HVS的图像彩色区域检测,即用Matlab软件设计图像彩色区域的分离的算法,并且分离出的颜色更贴合人眼观察色彩的方式。先由用户选择想要检测的颜色,软件自动检测出用户感兴趣的颜色,并将用户选择的颜色进行显示,而用户不需要的颜色都变成黑色的不显示。考虑到通常颜色都是在RGB空间表述的,而用户观察颜色时HSV空间更贴合视觉特性,因此要进行颜色空间的转换,再在HSV空间根据颜色特性分离出要检测的颜色并显示。目前,已经有很多前辈设计出分割图像的算法,本论文设计了一种结合色度、饱和度、明度三个分量的阈值进行分割的方法,相比较常用的只基于色度进行颜色检测的方法,所得的结果更加精确,分割的效率更高。
2 相关理论与公式
2.1 数字图像处理概念
一幅图像就是一个二维函数。二维函数的元素是空间坐标,这个位置的图像的亮度值或者灰度值就是这个任意坐标处的幅度,我们将有限的离散的空间坐标和幅值组成的图像叫数字图像。对数字图像进行处理的过程就叫数字图像处理[11]。
2.2 HSV模型
颜色空间又叫彩色模型,通过不同的标准,对同一种彩色进行通常可以接受的方式来说明,其实就是坐标系统和子空间的说明[6],系统中的每种颜色都是由单个点来表示的。这些彩色模型根据面向对象的不同,可以采用不同的模型[7],一般认为RGB模型是理想的图像颜色生成模型,通常彩色摄像机的图像获取、监视器屏幕上显示的图像都是采用这个模型的,而CMY(青、粉红、黄)模型或CMYK(青、粉红、黄、黑)往往应用于彩色打印机领域,[5]为了更加方便人们对彩色的描述以及解释,还存在HSV(色调、饱和度、明度)或HSI(色调、饱和度、亮度)等等。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/508.html