颜色直方图
- 格式:docx
- 大小:16.74 KB
- 文档页数:2
调色直方图的原理和使用方法
调色直方图是用来显示图像中颜色分布情况的工具,它的原理是将图像中不同颜色的像素点按照其亮度值进行排序,并统计每个亮度值对应的像素数量。
通过调色直方图,我们可以直观地了解图像中各个颜色的占比,从而方便我们进行图像处理和调整。
使用调色直方图的方法如下:
1. 打开需要调整的图像,并选择直方图功能。
2. 将直方图分别对应红、绿、蓝三色进行展示。
3. 查看直方图中各个颜色的占比情况,根据需要调整图片的亮度、对比度、色彩等参数。
4. 根据需要不断调整,直到达到理想的效果为止。
需要注意的是,调色直方图只是提供了对图像的一种基本分析,对于不同的图像素材需要采用不同的调整方法。
histogram matching 匀色算法直方图匹配(Histogram Matching)是一种用于调整图像颜色分布的图像处理技术,以使其与参考图像的颜色分布相匹配。
匹配的目标是使图像的颜色分布更均匀,从而改善图像的视觉质量。
以下是直方图匹配的一般算法步骤:
1. 计算直方图:对于待处理图像和参考图像,首先计算它们的颜色直方图。
颜色直方图表示图像中各个颜色级别的分布情况。
2. 累积分布函数:计算待处理图像和参考图像的颜色分布的累积分布函数(CDF)。
CDF表示颜色级别的累积分布情况,可用于比较两个图像的颜色分布。
3. 匹配直方图:对于每个颜色级别,将待处理图像的CDF映射到参考图像的CDF。
这意味着将待处理图像的颜色级别映射到参考图像中的相应颜色级别。
这个映射可以通过简单的插值或其他变换方法来实现。
4. 调整图像:使用新的CDF映射,对待处理图像中的颜色级别进行调整,以匹配参考图像的颜色分布。
这通常涉及重新分配颜色级别的像素值。
5. 输出结果:输出调整后的图像,其颜色分布应与参考图像匹配。
直方图匹配的目标是改善图像的视觉一致性,使其具有与参考图像相似的颜色特性。
这在图像处理、计算机视觉和计算机图形学中用于各种应用,包括颜色校正、图像合成和图像增强。
基于颜色直方图的图像检索算法研究一、引言如今,在数字化的时代,图片已经成为信息传播和展示的重要媒体之一。
然而,在大量图片的海洋中,如何快速、准确地搜索所需图片,对于我们来说依然是一个挑战。
图像检索就是一种解决方案,其目标是根据用户提供的检索信息,从图片集合中找到相应图片。
然而,图像检索由于其数据量大、复杂度高等问题而难以实现。
本文将探讨基于颜色直方图的图像检索算法及其实现。
二、图像特征提取在图像检索中,图像特征提取是至关重要的步骤。
一种常用的方法是利用颜色直方图提取图像特征。
颜色直方图是一种从图像中获取颜色信息的直方图表示方法。
为了方便处理,通常将图像颜色分离为若干个离散的颜色区域。
对于一张彩色图像,将其转化为HSV色彩空间,然后对其进行颜色量化,将HSV色彩空间中的颜色映射到离散的颜色区域内,生成颜色直方图。
对于一张图像$I$,颜色直方图可以表示为:$$H(I)=\{\binom{h_1}{w_1},\binom{h_2}{w_2},\ldots,\binom{h_ n}{w_n}\}$$其中,$\binom{h_i}{w_i}$是直方图的一维表示,$h_i$为颜色值,$w_i$为像素数量。
三、图像相似度度量在图像检索中,图像相似度度量是另一个关键步骤。
对于基于颜色直方图的图像检索,可以使用直方图距离(Histogram Distance)作为相似度度量。
直方图距离是一种度量两张颜色直方图之间相似度的方法,其定义为两张颜色直方图之间的Euclidean Distance。
对于图像$I$和$J$:$$d(I,J)=\frac{1}{2}\sum_{i=1}^{n}(\binom{h_{i}}{w_{i}}-\binom{q_{i}}{w_{i}})^{2}$$其中,$\binom{h_{i}}{w_{i}}$和$\binom{q_{i}}{w_{i}}$分别为$I$和$J$的颜色直方图中的第$i$个bin的高度。
∑==N j ij i P N 11μ颜色矩和颜色直方图基本概念笔记
1颜色矩
颜色矩是以数学方法为基础的,通过计算矩来描述颜色的分布。
通常直接在RGB 空间计算。
其颜色分布的前三阶矩表示为:
2 颜色直方图
设一幅图像包含M 个像素,图像的颜色空间被量化成N 个不同颜色。
颜色直方图H 定义为:
i i h p =
h i 为第i 种颜色在整幅图像中具有的像素数。
归一化为: p i =h i/M
由于RGB 颜色空间与人的视觉不一致,可将RGB 空间转换到视觉一致性空间。
除了转换到前面提及的HSI 空间外,还可以采用一种更简单的颜色空间:
其中max=255。
彩色图像变换成灰度图像的公式为:
g=(R+G+B)/3
其中R,G,B 为彩色图像的三个分量,g 为转换后的灰度值。
∑=-=N j i ij i P N 1212])(1[μσ∑=-=N j i ij i P N
1313])(1[μσ。
冠层特征提取方法引言冠层特征提取是计算机视觉领域的一个重要研究方向,其目的是从图像或视频中提取出冠层的特征信息,以便进行进一步的分析和应用。
冠层特征提取方法在医学影像分析、物体识别、行为识别等领域都有广泛的应用。
本文将介绍一些常用的冠层特征提取方法,并对其优缺点进行分析。
一、基于纹理特征的冠层特征提取方法1. 灰度共生矩阵(GLCM)灰度共生矩阵是一种基于冠层纹理特征的统计方法,通过统计图像中像素灰度值之间的关系,提取出冠层的纹理特征。
GLCM能够计算出冠层的对比度、能量、熵等特征,但对于冠层纹理复杂的图像效果不佳。
2. Gabor滤波器Gabor滤波器是一种基于冠层纹理的频域滤波方法,通过在不同尺度和方向上对图像进行滤波,提取冠层的纹理特征。
Gabor滤波器能够有效地提取出冠层的纹理信息,但计算复杂度较高。
3. 尺度不变特征变换(SIFT)SIFT是一种基于局部特征的冠层特征提取方法,通过检测图像中的关键点,并提取出关键点周围的局部特征描述子,实现对冠层的纹理特征提取。
SIFT具有尺度不变性和旋转不变性,但对于冠层纹理变化较大的情况下效果不佳。
二、基于颜色特征的冠层特征提取方法1. 颜色直方图颜色直方图是一种基于冠层颜色特征的统计方法,通过统计图像中各个颜色的像素数量,提取冠层的颜色分布特征。
颜色直方图能够有效地提取出冠层的颜色信息,但对于颜色信息变化较多的情况下效果不佳。
2. 色彩矩色彩矩是一种基于冠层颜色特征的统计方法,通过计算图像中各个颜色的均值、方差、偏度等统计量,提取冠层的颜色特征。
色彩矩能够有效地提取出冠层的颜色信息,但对于颜色信息分布不均匀的情况下效果不佳。
三、基于形状特征的冠层特征提取方法1. 边缘检测边缘检测是一种基于冠层形状特征的方法,通过检测图像中的边缘信息,提取出冠层的形状特征。
边缘检测能够有效地提取出冠层的形状信息,但对于冠层形状复杂的情况下效果不佳。
2. 轮廓描述子轮廓描述子是一种基于冠层形状特征的方法,通过对冠层轮廓进行采样,并提取出采样点的特征描述子,实现对冠层的形状特征提取。
常用的特征描绘子特征描述子是计算机视觉领域中的一种技术,用于对图像或视频中的对象进行描述和识别。
它们可以根据对比度、纹理、形状等特征对对象进行唯一、稳定和可重复的描述。
在下面,我将介绍一些常用的特征描述子。
1. 尺度不变特征变换(Scale-Invariant Feature Transform,SIFT):SIFT是一种常用的特征描述子,能够提取出在尺度、旋转和光照变化等条件下具有独特性的图像特征。
它使用高斯差分金字塔的图像梯度来检测兴趣点,并通过局部邻域的直方图统计来描述这些点的特征。
2. 加速稳健特征(Speeded Up Robust Features,SURF):SURF是另一种基于尺度不变特征的描述子。
它通过使用快速哈尔小波变换来加速特征提取,并使用各方向图像积分将梯度信息捕捉到特征描述子中。
3. 方向梯度直方图(Histogram of Oriented Gradients,HOG):HOG是一种用于检测和识别图像中物体的特征描述子。
它基于图像的局部梯度方向和强度来描述对象的形状。
HOG特征在行人检测和行为识别等任务中得到了广泛应用。
4. 颜色直方图(Color Histogram):颜色直方图是用来描述图像中颜色分布的一种特征描述子。
它将图像中的像素按照颜色分布统计到不同的直方图区间内,以实现对颜色特征的描述。
颜色直方图在图像检索和物体识别等任务中常用。
5. 尺度不变特征点变换(Scale-Invariant Feature Point Transform,SIFTPT):SIFTPT是一种基于尺度不变特征点的描述子。
它通过检测图像中的兴趣点和特征点,并描述其周围的局部区域,以实现对图像的描述和识别。
6. 零均值归一化亮度梯度(Zero-mean Normalized Gradient,ZMNG):ZMNG是一种用于图像识别和目标跟踪的特征描述子,它通过归一化图像的亮度梯度来捕捉图像中的纹理和形状特征。
颜色计数函数知识点总结一、颜色计数函数的基本概念1. 颜色空间颜色计数函数使用颜色空间来表示和计算像素的颜色。
常见的颜色空间包括RGB、HSV、Lab等。
RGB是红绿蓝颜色空间,将颜色表示为红、绿、蓝三个分量的组合。
HSV颜色空间包括色相、饱和度和亮度三个分量,更符合人类对颜色的感知。
Lab颜色空间则更加接近人眼感知颜色的方式。
2. 颜色直方图颜色直方图是颜色计数函数计算的基础数据。
它是对图像中每种颜色的分布和数量的统计信息。
直方图可以用来表示图像中不同颜色的分布和数量,为颜色计数函数提供了数据基础。
3. 颜色计数算法颜色计数函数通过对图像中像素的颜色进行统计和计数来得到各种颜色的像素数量。
常见的颜色计数算法包括简单的遍历算法、直方图算法和K-means算法等。
这些算法在不同场景和要求下有着不同的适用性和性能。
二、颜色计数函数的算法及实现1. 简单遍历算法简单遍历算法是颜色计数函数最直接的实现方式。
它通过遍历图像中的每个像素,统计每种颜色的像素数量。
这种方法对于小尺寸图像和少量颜色比较适用。
然而,对于大尺寸图像和复杂场景,简单遍历算法的计算时间和空间复杂度较高,不够高效。
2. 直方图算法直方图算法是一种基于颜色直方图统计的颜色计数方法。
它将图像像素的颜色值映射到直方图中的柱状图上,从而统计各种颜色的像素数量。
直方图算法的优势在于利用了直方图的数据结构,可以高效地统计大量像素的颜色信息。
同时,直方图算法可以方便地进行直方图的分析和处理,是颜色计数函数中常用的算法之一。
3. K-means算法K-means算法是一种聚类算法,可以用于图像颜色计数函数中。
它能够将图像中的像素按照颜色进行聚类,从而实现颜色数量的统计。
K-means算法需要指定聚类的数量,具有较好的可扩展性和适用性。
三、颜色计数函数的应用1. 图像分割颜色计数函数常用于图像分割中。
通过颜色计数函数统计不同颜色的像素数量,可以实现对图像中不同区域和对象的分割。
基于颜色直方图与SIFT多层次图像匹配检测1引言在机器识别事物的过程中,常需将已知图像与陌生图像的全部或部分在空间上对准,根据已知模式的图像在一幅陌生图像中寻找对应该模式的子图像,这一过程就是匹配。
我们将已知图像或已知模式的图像称作模板,在陌生图像中可能与它对应的子图称作该模板的匹配子图像。
图像匹配在近几十年来一直是人们研究的热点和难点,它是在变换空间中寻找一种或多种变换,使来自不同时间、不同传感器或者不同视角的同一场景的两幅或多幅图像在空间上一致,目前已经应用于许多领域。
在现实世界应用中,图像匹配检测面临着光照,视角等变化,局部遮挡,背景复杂与运算量巨大等挑战。
图像匹配的方法很多。
一般分为两大类。
一类是基于灰度匹配的方法,另一类是基于特征匹配的方法。
(1) 基于灰度匹配的方法。
也称作相关匹配算法,用空间二维滑动模板进行图像匹配,不同算法的区别主要体现在模板及相关准则的选择方面。
基于灰度相关匹配能够获得较高的定位精度,但是它的运算量大.难以达到实时性要求。
而且,在模板图像与待匹配图像之间存在光照、视角变化、局部遮挡时,基于灰度的匹配方法往往无法取得理想的匹配效果。
(2) 基于特征匹配的方法。
首先在原始图像中提取特征,然后再建立两幅图像之间特征的匹配对应关系。
常用的特征匹配基元包括点、线、区域等显著特征。
图像特征相比象素点数量上少得多,特征间的匹配度量随位置变化尖锐,容易找出准确的匹配位置,特征提取能大大减少噪声影响,对灰度变化、形变和遮挡有较强的适应力。
是图像匹配的主流进展方向。
针对图像匹配的特点,本文提出了一种基于彩色图像颜色直方图特征与SIFT关键点特征的多层次图像匹配方法。
图像的SIFT关键点特征是一种尺度不变的特征,对于光照变化以及仿射变换也具有一定的不变性,但是在源图像较大时提取图像的SIFT 特征并进行匹配检测是一件耗时巨大的工作。
本文引入颜色直方图特征,首先确定模板图像在待配图像中的候选区域,再在图像的候选区域中求图像的SIFT特征并与模板图像进行匹配检测。
图像检索中的特征提取与分类算法研究图像检索是一个重要的计算机视觉任务,其目标是根据用户提供的查询图像,从数据库中检索出与之相似的图像。
在图像检索中,特征提取与分类算法是关键的研究内容。
本文将介绍图像检索中常用的特征提取与分类算法,并进行相关的研究探讨。
一、特征提取算法特征提取是图像检索中最重要的步骤之一,它用于从图像中提取出具有区分度和信息量的特征。
常用的特征提取算法包括颜色直方图、纹理特征和形状特征等。
1. 颜色直方图颜色直方图是一种描述图像颜色分布的直方图,通过统计图像中各个颜色的像素个数来表示图像的特征。
常用的颜色空间包括RGB、HSV和Lab等。
颜色直方图具有计算简单、对图像缩放和旋转不敏感的特点,因此被广泛应用于图像检索中。
2. 纹理特征纹理特征描述了图像中局部区域的纹理结构,用于区分图像中不同的纹理属性。
常用的纹理特征包括灰度共生矩阵(Gray-level Co-occurrence Matrix, GLCM)、局部二值模式(Local Binary Patterns,LBP)和方向梯度直方图(Orientation Gradient Histogram, OGH)等。
这些特征可以通过计算灰度或梯度等信息来表征图像的纹理特征。
3. 形状特征形状特征用于描述图像中物体的形状特点,常用的形状特征包括边缘特征、尺度不变特征变换(Scale Invariant Feature Transform, SIFT)和速度不变特征(Binary Robust Invariant Scalable Keypoints, BRISK)等。
这些特征可以通过提取图像的边缘或角点等局部特征来表征图像的形状特征。
二、分类算法特征提取之后,需要采用分类算法对提取到的特征进行分类,从而将查询图像与数据库中的图像进行匹配。
常用的分类算法包括k近邻算法、支持向量机(Support Vector Machine, SVM)和深度学习算法等。
计算机视觉技术中的颜色分析方法随着计算机视觉技术的快速发展,人们越来越关注如何利用计算机对图像和视频中的颜色进行准确的分析和处理。
颜色是人类感知世界的重要因素之一,它在很多应用领域中都扮演着至关重要的角色,包括图像检索、图像编辑、医学图像分析等。
因此,颜色分析方法在计算机视觉领域具有重要意义。
一、颜色表示方法在计算机视觉领域,常用的颜色表示方法是:RGB色彩空间、HSV色彩空间和Lab色彩空间。
1. RGB色彩空间:RGB色彩模型是一种将颜色表示为红色、绿色和蓝色三个分量的方法。
每个分量的取值范围是0到255之间,它们的组合可以表示不同的颜色。
2. HSV色彩空间:HSV色彩模型是一种将颜色表示为色调(Hue)、饱和度(Saturation)和亮度(Value)三个分量的方法。
色调表示颜色在色环上的位置,饱和度表示颜色的纯度,亮度表示颜色的明暗程度。
3. Lab色彩空间:Lab色彩模型是一种基于人类视觉感知的颜色空间,它包括明度(L)、对比度(a)和色度(b)三个分量。
Lab色彩空间可以更好地描述颜色的亮度和对比度。
这些颜色表示方法各有优劣,根据具体的应用场景,选择适合的颜色表示方法会更有利于颜色分析的准确性和性能。
二、颜色特征提取在计算机视觉领域,颜色特征提取是指从图像或视频中提取具有代表性的颜色信息。
常用的颜色特征提取方法包括颜色直方图、颜色矩和颜色梯度等。
1. 颜色直方图:颜色直方图是一种统计图,用于表示图像中每种颜色出现的频率。
可以将图像中的每个像素点的颜色值映射到直方图中对应的位置,通过统计每个颜色值的频率来得到颜色直方图。
颜色直方图可以用来描述图像中不同颜色的分布情况。
2. 颜色矩:颜色矩是通过对颜色直方图进行数学处理得到的特征。
常用的颜色矩包括均值、标准差和相关性等。
颜色矩可以描述图像中颜色的分布和变化情况。
3. 颜色梯度:颜色梯度表示图像中颜色变化的程度。
常用的颜色梯度算法包括Sobel算子、Prewitt算子和Canny边缘检测算法等。
颜色直方图的计算、显示、处理、对比及反向投影(How to Use Histogram? Calculate, Show, Process, Compare and BackProject)作者:王先荣前言颜色直方图直观的显示了图像在色彩空间的分布状况,本文将讨论在EmguCv及OpenCv中跟直方图相关的一些基本操作,包括:计算、显示、处理、对比及反向投影,并谈谈在实践过程中得到的一些经验。
如无特别说明,下文所提的直方图均指颜色直方图。
直方图的计算EmguCv将OpenCv的一系列直方图函数封装到了类DenseHistogram里面,可以用方法Calculate方便的计算图像的直方图。
不过值得注意的是,该方法接受的第一个参数是“单通道”图像数组;而一般情况下的图像都是3通道的,在计算之前我们需要用Image<TColor,TDepth>.Split方法将其分解成单通道图像,然后选择需要参与直方图计算的通道。
下面有几段计算直方图的代码,分别计算单通道(红色)直方图、色调和饱和度直方图。
计算直方图///<summary>///计算直方图(红色)///</summary>private void CalcHistRed(){//计算int rBins = 256;RangeF rRange = new RangeF(0f, 255f);Image<Bgr, Byte> imageSource = new Image<Bgr, By te>((Bitmap)pbSource.Image);Image<Gray, Byte> imageRed = imageSource.Split() [2];DenseHistogram hist = new DenseHistogram(rBins, rRange);hist.Calculate(new IImage[] { imageRed }, false, null);//显示pbHistogram.Image = GenerateHistImage(hist).Bitm ap;//释放资源imageSource.Dispose();imageRed.Dispose();hist.Dispose();}///<summary>///计算直方图(色调和饱和度)///</summary>private void CalcHistHs(){//计算int hBins = 180;RangeF hRange = new RangeF(0f, 179f); //色调的范围在0~180之间int sBins = 256;RangeF sRange = new RangeF(0f, 255f);Image<Bgr, Byte> imageSource = new Image<Bgr, By te>((Bitmap)pbSource.Image);Image<Hsv, Byte> imageHsv = imageSource.Convert< Hsv, Byte>(); //将色彩空间从BGR转换到HSVImage<Gray, Byte>[] imagesHsv = imageSource.Spli t(); //分解成H、S、V三部分DenseHistogram hist = new DenseHistogram(new int [] { hBins, sBins }, new RangeF[] { hRange, sRange });hist.Calculate(new IImage[] { imagesHsv[0], imag esHsv[1] }, false, null);//显示pbHistogram.Image = GenerateHistImage(hist).Bitm ap;//释放资源imageSource.Dispose();imageHsv.Dispose();foreach (Image<Gray, Byte> image in imagesHsv)image.Dispose();hist.Dispose();}直方图的显示我们可以用以下方式来查看直方图:(1)使用HistogramViewer窗体显示直方图;(2)使用HistogramBox控件显示直方图;(3)用自己写的方法将直方图转换成图像,然后显示出来。
图片搜索原理
图片搜索的原理是通过特定算法对图像进行分析和比对,以找到与待搜索图像相似的图像。
以下是一些主要的图片搜索算法和技术:
1. 颜色直方图(Color Histogram): 将图像的颜色信息表示为
直方图,然后比较不同图像之间的直方图相似度。
2. 尺度不变特征变换(Scale-invariant Feature Transform,SIFT): 提取图像中的关键点和局部特征,并计算其在图像空
间中的尺度、方向和描述子等特征,通过对比这些特征来找到相似图像。
3. 高斯模糊算法(Gaussian Blur): 将图像进行高斯模糊处理,去除细节信息,然后比较不同图像之间的模糊程度来判断相似度。
4. 神经网络算法(Neural Networks): 使用深度学习技术,构
建卷积神经网络(Convolutional Neural Networks,CNN)模型,通过训练模型来识别和比对图像。
5. 局部二值模式(Local Binary Patterns,LBP): 提取图像的
局部纹理特征,将每个像素与其相邻像素进行比较,并将结果编码为二进制模式,通过对比这些模式来找到相似图像。
这些算法和技术可以单独使用,也可以组合使用,根据具体应用和需求选择适合的方法来进行图片搜索。
基于颜色直方图的图像检索(实验分析)1.概述在过去的十几年间,有许多知名机构都对图像检索系统进行了深入的研究,病开发出了相应的检索系统,例如IBMAlmaden研究中心研制的QBIC系统,Virage公司研发的VIRAGE系统,麻省理工大学多媒体实验室研发的Photobook系统,哥伦比亚大学研发的ViualSeek系统,斯坦福大学研发的WBIIS系统,U.C.伯克利分校研发的Blobworld系统等等。
2.相关知识2.1.RGB颜色空间RGB颜色模型中每种颜色都是由红绿蓝三种颜色组成。
这种颜色模型在许多CRT显示器和彩色光栅图形设备中被广泛使用。
这三种颜色被认为是其他颜色的添加剂,对于所需要的颜色通过对这三种颜色进行不同的比例进行相加即可得到。
RGB模型可以用如下的颜色坐标系表示。
注意从(0,0,0)到(1,1,1)的对角线,白色代表了灰阶,RGB色彩模式俯视从白色开始的。
2.2.HSV颜色空间(也称HIS颜色空间)HSV字母分别代表了色度(Hue),饱和度(Saturation),色调。
上面的锥形图说明HSV的颜色模型。
Value代表了颜色的强度,他是从图像信息中分离出来,可以表示相关信息的部分。
色度和饱和度代表了颜色在人眼中的生理特征。
色度与红色等颜色从0到1的表示不同,色度是从红色通过黄,绿,青,蓝,洋红色,再回到红色。
饱和度的区分是从0到1,他通过值大小来影响颜色的饱和度。
对于色调,也是从0到1,随着他的增大,图像的颜色就会越来越亮。
2.3.颜色模型之间的转换为了针对特定的应用更好的使用颜色,颜色空间的颜色转换是非常必要的。
一个好的颜色空间必须能够很好的表示两种颜色之间的颜色差别。
也就是说,数值表示的颜色可以近似的表示人类可以感觉的颜色的差别。
2.4.距离3.算法原理一个图像的颜色直方图是通过统计图像各个颜色的像素个数构成的。
其处理过程:1、选择颜色空间;2、对颜色空间进行量化;3、统计直方图;4、推到直方图的距离函数;5、通过索引指出最相近的图像。
C#图像颜⾊域判断以及颜⾊直⽅图识别⽅法算法原理:颜⾊特征的提取由于该算法会将很多图⽚,尤其是⼈脸识别为海边风景,我们⾸先添加了⼀个限制条件。
取典型的海颜⾊亮蓝⾊,其RGB值分别为0≤R≤100,100≤G≤255,150≤B≤255,当亮蓝⾊颜⾊区域超过图像区域3%的时候才进⾏下⼀步提取图像颜⾊直⽅图。
否则就不是海边风景类型。
先提取输⼊图像的颜⾊特征,即统计图像中每种颜⾊的像素的数⽬。
在本软件中,使⽤GetPixel()对图像按像素提取颜⾊信息。
但是,对24位的RGB图像来说,其颜⾊空间(即不同的颜⾊数⽬)是224=256×256×256=16777216。
在实际应⽤中, 若直接选⽤此值,数据量巨⼤, 特征提取缓慢, 同时也会使特征库⾮常庞⼤。
为此, 可将颜⾊空间等距离分组(在该系统中分为16000种颜⾊值)取值,然后再统计每组中对应的像素数⽬,从⽽得到整个图像的颜⾊直⽅图, 这样, 图像的颜⾊直⽅图可以存在⼀个有16000个元素数组中。
2.1.2 图像相似度的度量⽐较两幅图像是否相似,就是计算两幅图像的欧式距离。
假设输⼊图像的直⽅图⽤G(g1,g2…… ,g N) 表⽰,数据库中的标准图像直⽅图⽤S(s1,s2,……s N) 表⽰,可以将这两个直⽅图看作欧⽒空间的两个点,利⽤欧⽒距离来描述它们的相似性,即:Ed(G,S)= ,其中N 为颜⾊级数,Ed(G,S)的值越接近0,则两幅图像越相似。
如果两幅图像完全⼀致,则Ed(G,S)=0。
在本系统中,则是两个分别代表输⼊图像和标准图像的颜⾊直⽅图的数组,按照上述公式计算距离d,当d<0.07时,认为输⼊图⽚与标准图⽚是相似的,可以把输⼊图⽚归类到标准图⽚的⼀类。
优缺点分析l 算法简单易于理解,同时执⾏效率很⾼;l 加⼊2.1.1的第⼀条限制条件后,对输⼊图⽚的判断成功率很⾼;l 对于⾮蓝⾊为主的海景,如黄昏或者晚上的海景以及沙滩等不能成功识别,蓝⾊为主的图⽚也会导致误识别。
颜⾊直⽅图(ColorHistogram)数字成像中的颜⾊直⽅图是对给定图像中具有相同颜⾊的像素的频率进⾏计算的⼀种⽅法。
这种⽅法通常被转换成⼀个图形,以帮助分析和调整图像中的平衡。
⼏乎所有的照⽚编辑软件和⼤量的数码相机都具有颜⾊直⽅图的查看数字成像中的颜⾊直⽅图是对给定图像中具有相同颜⾊的像素的频率进⾏计算的⼀种⽅法。
这种⽅法通常被转换成⼀个图形,以帮助分析和调整图像中的平衡。
⼏乎所有的照⽚编辑软件和⼤量的数码相机都具有颜⾊直⽅图的查看或编辑功能选项。
通过调整颜⾊直⽅图编辑图像有助于通过将图像内部的外围颜⾊更改为更常见的颜⾊来澄清和增强图像。
可以使⽤颜⾊直⽅图校正数码摄影中的⾊彩平衡。
数码影像中的每个像素由三个决定其颜⾊的相关值组成:红⾊值、蓝⾊值和绿⾊值。
这些值的范围从0到255,其中0表⽰⽆,255表⽰最⼤值。
如果这三个值都为零,则像素是⿊⾊的;如果三个都是255,则像素是⽩⾊的。
直⽅图确定图像中每种颜⾊有多少像素。
它还显⽰颜⾊中有多少像素是按强度显⽰的。
直⽅图有许多⽤途。
最显著的是,它可⽤于图像编辑,以帮助通过合并颜⾊,图像看起来更专业。
如果图像主要由中间⾊调组成,则可以调整颜⾊直⽅图,以便将上下颜⾊更改为绝对⽩⾊或⿊⾊。
这会提⾼图像中的对⽐度,并使可见中间⾊调看起来更具活⼒,因为它们由⿊⾊和⽩⾊的实⼼区域。
它还可以通过将不同颜⾊的⼩像素区域转换为彩⾊的实⼼区域来减少像素化。
在数码相机上,拍摄图像后可以显⽰颜⾊直⽅图这可能⾮常有⽤,因为相机上的显⽰(通常是液晶显⽰器(LCD))可能⽆法准确显⽰图⽚的重要元素。
查看直⽅图有助于确定图像是否曝光过度或曝光不⾜。
然⽽,并⾮每个相机都有直⽅图选项,有些相机确实有直⽅图选项只提供不总是有效的亮度直⽅图。
通常不建议对相机使⽤颜⾊直⽅图,除⾮检查过度曝光,即使这样也可能不准确。
相反,应该使⽤照⽚编辑软件的直⽅图功能检查相机的图像,然后将其与直⽅图进⾏⽐较在相机上视觉校准相机如何确定其颜⾊直⽅图。
颜色直方图, HSV直方图, histogram bins
颜色特征是在图像检索中应用最为广泛的视觉特征,主要原因在于颜色往往和图像中所包含的物体或场景十分相关。
此外,与其他的视觉特征相比,颜色特征对图像本身的尺寸、方向、视角的依赖性较小,从而具有较高的鲁棒性。
面向图像检索的颜色特征的表达涉及到若干问题。
首先,我们需要选择合适的颜色空间来描述颜色特征;其次,我们要采用一定的量化方法将颜色特征表达为向量的形式;最后,还要定义一种相似度(距离)标准用来衡量图像之间在颜色上的相似性。
在本节中,我们将主要讨论前两个问题,并介绍颜色直方图、颜色矩、颜色集、颜色聚合向量以及颜色相关图等颜色特征的表示方法。
1 颜色直方图
颜色直方图是在许多图像检索系统中被广泛采用的颜色特征。
它所描述的是不同色彩在整幅图像中所占的比例,而并不关心每种色彩所处的空间位置,即无法描述图像中的对象或物体。
颜色直方图特别适于描述那些难以进行自动分割的图像。
当然,颜色直方图可以是基于不同的颜色空间和坐标系。
最常用的颜色空间是RGB颜色空间,原因在于大部分的数字图像都是用这种颜色空间表达的。
然而,RGB空间结构并不符合人们对颜色相似性的主观判断。
因此,有人提出了基于HSV空间、Luv空间和Lab空间的颜色直方图,因为它们更接近于人们对颜色的主观认识。
其中HSV空间是直方图最常用的颜色空间。
它的三个分量分别代表色彩(Hue)、饱和度(Saturation)和值(Value)。
计算颜色直方图需要将颜色空间划分成若干个小的颜色区间,每个小区间成为直方图的一个bin。
这个过程称为颜色量化(color quantization)。
然后,通过计算颜色落在每个小区间内的像素数量可以得到颜色直方图。
颜色量化有许多方法,例如向量量化、聚类方法或者神经网络方法。
最为常用的做法是将颜色空间的各个分量(维度)均匀地进行划分。
相比之下,聚类算法则会考虑到图像颜色特征在整个空间中的分布情况,从而避免出现某些bin中的像素数量非常稀疏的情况,使量化更为有效。
另外,如果图像是RGB 格式而直方图是HSV空间中的,我们可以预先建立从量化的RGB空间到量化的HSV空间之间的查找表(look-up table),从而加快直方图的计算过程。
上述的颜色量化方法会产生一定的问题。
设想两幅图像的颜色直方图几乎相同,只是互相错开了一个bin,这时如果我们采用L1距离或者欧拉距离(见3.1.1节)计算两者的相似度,会得到很小的相似度值。
为了克服这个缺陷,需要考虑到相似但不相同的颜色之间的相似度。
一种方法是采用二次式距离[4](见3.1.3节)。
另一种方法是对颜色直方图事先进行平滑过滤,即每个bin中的像素对于相邻的几个bin也有贡献。
这样,相似但不相同颜色之间的相似度对直方图的相似度也有所贡献。
选择合适的颜色小区间(即直方图的bin)数目和颜色量化方法与具体应用的性能和效率要求有关。
一般来说,颜色小区间的数目越多,直方图对颜色的分辨能力就越强。
然而,bin的数目很大的颜色直方图不但会增加计算负担,也不利于在大型图像库中建立索引。
而且对于某些应用来说,使用非常精细的颜色空间划分方法不一定能够提高检索效果,特别是对于不能容忍对相关图像错漏的那些应用。
另一种有效减少直方图bin的数目的办法是只选用那些数值最大(即像素数目最多)的bin来构造图像特征,因为这些表示主要颜色的bin能够表达图像中大部分像素的颜色。
实验证明这种方法并不会降低颜色直方图的检索效果。
事实上,由于忽略了那些数值较小的bin,颜色直方图对噪声的敏感程度降低了,有时会使检索效果更好。
两种采用主要颜色构造直方图的方法可以在文献[5,6]中找到。
2 颜色矩
另一种非常简单而有效的颜色特征使由Stricker 和Orengo所提出的颜色矩(color moments) [7]。
这种方法的数学基础在于图像中任何的颜色分布均可以用它的矩来表示。
此外,由于颜色分布信息主要集中在低阶矩中,因此仅采用颜色的一阶矩(mean)、二阶矩(variance)和三阶矩(skewness)就足以表达图像的颜色分布。
与颜色直方图相比,该方法的另一个好处在于无需对特征进行向量化。
因此,图像的颜色矩一共只需要9个分量(3个颜色分量,每个分量上3个低阶矩),与其他的颜色特征相比是非常简洁的。
在实际应用中为避免低次矩较弱的分辨能力,颜色矩常和其它特征结合使用,而且一般在使用其它特征前起到过滤缩小范围(narrow down)的作用。
3 颜色集
为支持大规模图像库中的快速查找,Smith和Chang提出了用颜色集(color sets)作为对颜色直方图的一种近似[8]。
他们首先将RGB颜色空间转化成视觉均衡的颜色空间(如HSV空间),并将颜色空间量化成若干个bin。
然后,他们用色彩自动分割技术将图像分为若干区域,每个区域用量化颜色空间的某个颜色分量来索引,从而将图像表达一个二进制的颜色索引集。
在图像匹配中,比较不同图像颜色集之间的距离和色彩区域的空间关系(包括区域的分离、包含、交等,每种对应于不同得评分)。
因为颜色集表达为二进制的特征向量,可以构造二分查找树来加快检索速度,这对于大规模的图像集合十分有利。
4 颜色聚合向量
针对颜色直方图和颜色矩无法表达图像色彩的空间位置的缺点,Pass[9]提出了图像的颜色聚合向量(color coherence vector)。
它是颜色直方图的一种演变,其核心思想是将属于直方图每一个bin的像素进行分为两部分:如果该bin内的某些像素所占据的连续区域的面积大于给定的阈值,则该区域内的像素作为聚合像素,否则作为非聚合像素。
假设αi与βi分别代表直方图的第i个bin中聚合像素和非聚合像素的数量,图像的颜色聚合向量可以表达为<(α1, β1), (α2, β2), …, (αN, βN)>。
而<α1 + β1, α2 + β2, …, αN +βN > 就是该图像的颜色直方图。
由于包含了颜色分布的空间信息,颜色聚合向量相比颜色直方图可以达到更好的检索效果。
5 颜色相关图
颜色相关图(color correlogram)是图像颜色分布的另一种表达方式[16]。
这种特征不但刻画了某一种颜色的像素数量占整个图像的比例,还反映了不同颜色对之间的空间相关性。
实验表明,颜色相关图比颜色直方图和颜色聚合向量具有更高的检索效率,特别是查询空间关系一致的图像。
如果考虑到任何颜色之间的相关性,颜色相关图会变得非常复杂和庞大(空间复杂度为O(N2d))。
一种简化的变种是颜色自动相关图(color auto-correlogram),它仅仅考察具有相同颜色的像素间的空间关系,因此空间复杂度降到O(Nd)。