图像主颜色的识别方法、装置及图像匹配方法和服务器的制作方法

文档序号:6357050阅读:183来源:国知局
专利名称:图像主颜色的识别方法、装置及图像匹配方法和服务器的制作方法
技术领域
本申请涉及图像处理领域,特别涉及一种图像主颜色的识别方法及装置,以及一种图像匹配方法和服务器。
背景技术
随着多媒体技术和网络设备的发展,互联网上的图像数据迅速增长,对海量图像信息的管理以及检索已经成为当前研究的热点。而对于图像主颜色的识别也成为图像处理领域的一项很重要的技术。在现有技术中,传统的图像主颜色的识别方法利用人工文字标记的方式,但文字本身很难完全表达图像的丰富内容,而且人工标注的方式工作量巨大且具有主观性,这就 直接影响图像主颜色识别的准确性。现有技术还有另外一种采用颜色直方图统计的方式,来得到输入图片的主颜色。但颜色直方图一般采用传统的红绿蓝(Red,Green, Blue, RGB)色彩空间,由于颜色直方图反映的是图像颜色全局的统计信息,所描述的也是不同色彩在整幅图像中所占的比例,所以如果直接用整个颜色直方图来描述该图片,就需要对一幅图像中的所有像素点进行重复的统计和计算,这会使得图像主颜色识别过程中的计算量与存储量都十分巨大,进而使得图像主颜色的识别效率较低;而如果为了解决识别效率较低的问题,可以对颜色直方图进行量化压缩,但是这种方式又必须采用预先指定的量化阈值,这种情况只能适用于某些特殊场景,而无法通用于实际中的所有图像主颜色的识别。总之,目前需要本领域技术人员迫切解决的一个技术问题就是如何能够创新的提出一种图像主颜色的识别方法,以解决现有技术中的颜色直方图方式导致的识别效率较低以及不够通用的问题。

发明内容
本申请所要解决的技术问题是提供一种图像主颜色的识别方法及图像匹配方法,用以解决现有技术中的颜色直方图方式导致的识别效率较低以及不够通用的问题。本申请还提供了一种图像主颜色的识别装置及服务器,用以保证上述方法在实际中的实现及应用。为了解决上述问题,本申请公开了一种图像主颜色的识别方法,包括接收待识别主颜色的图像;采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色;对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色;根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。本申请公开了一种图像主颜色的识别装置,包括接收模块,用于接收待识别主颜色的图像;
分裂模块,用于采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色;合并模块,用于对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色;获取模块,用于根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。本申请公开了一种应用前述的图像主颜色的识别方法的图像匹配方法,预先构建图像特征数据库,所述图像特征数据库用于保存图像及其对应的主颜色描述符;所述主颜色描述符通过前述的图像主颜色的识别方法获取;包括获取用户输入的主颜色信息; 从所述图像特征数据库中匹配包括所述主颜色信息的主颜色描述符的图像; 获取从所述图像特征数据库中匹配得到的图像。本申请还公开了一种服务器,包括第一获取单元,用于获取用户输入的主颜色信息;匹配单元,用于从预先构建的图像特征数据库中匹配包括所述主颜色信息的主颜色描述符的图像;所述图像特征数据库用于保存图像及其对应的主颜色描述符;所述主颜色描述符通过权利要求I所述的图像主颜色的识别方法获取;第二获取单元,用于获取从所述图像特征数据库中匹配得到的图像。与现有技术相比,本申请包括以下优点采用本申请实施例,图像主颜色的描述符采用比较精简的向量结构来描述图片中较为显著的颜色集,包括一系列主颜色及其所占的比例,这样就使得在识别图像主颜色时,能够减少数据的存储量并减少计算量,从而使得图像主颜色的识别效率相对于现有技术有了较大提升,同时,因为本申请中不需要对待识别图像进行量化压缩操作,只是将图像的色彩空间转换为基于视觉模型建立的色彩空间,这样不仅可以使得本申请实施例的方法更为通用,进一步的还能够反映出更真实的图像主颜色。


为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I是本申请的一种图像主颜色的识别方法实施例I的流程图;图2是本申请方法实施例I中步骤102的流程图;图3是本申请方法实施例I中将默认主颜色分裂为多于两个初始主颜色的流程图;图4是本申请方法实施例I中步骤103的流程图;图5是本申请方法实施例I中步骤103的流程图;图6是本申请的一种图像主颜色的识别方法实施例2的流程图;图7是本申请的具体例子中的分区示意图8是应用前述识别图像的主颜色的方法进行图像匹配的方法实施例的流程图;图9是本申请的一种图像主颜色的识别装置实施例I的结构框图;图10是本申请识别装置实施例I中分裂模块的一个结构框图;图11是本申请识别装置实施例I中分裂模块的另一个结构框图;图12是本申请识别装置实施例I中合并模块的结构框图;
图13是本申请识别装置实施例I中获取模块的结构框图;图14是本申请的服务器实施例的结构框图;图15是本申请的服务器实施例中第一获取单元的结构框图。
具体实施例方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请可用于众多通用或专用的计算装置环境或配置中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。本申请可以包括,针对待识别主颜色的图像,先采用分裂聚类算法将预设的默认主颜色分裂为至少两个初始主颜色,再对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色,最后再根据各个最终主颜色下像素数量的比例输出所述最终主颜色的描述符。由此可以看出,在本申请中,无需采用颜色直方图来描述整幅图像的色彩信息,而是通过包括一系列主颜色及其所占的比例的主颜色描述符来描述图片中较为显著的颜色集,这样就减少了在识别图像主颜色中的运算量和存储量,从而提升图像主颜色识别的效率。参考图1,示出了本申请一种图像主颜色的识别方法实施例I的流程图,可以包括以下步骤步骤101 :接收待识别主颜色的图像。在实际应用中,待识别主颜色的图像可以是计算机能够识别的图像,例如图像格式为JPEG、TIFF、RAW或者BMP等的图像。步骤102 :采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色。在本步骤中采用的分裂聚类算法采用自顶向下的策略,这与凝聚的层次聚类算法相反,分裂聚类算法的原理具体为首先将所有的对象置于一个簇中,然后逐渐细分为越来越小的簇,直到每个对象在单独的一个簇中,或者达到一个预设的终止条件,该终止条件可以例如达到了某个希望的簇数目或者两个簇之间的距离超过了某个阀值等。具体在实际应用中,参考图2,在分裂的初始主颜色为两个的情况下,所述步骤102在实际应用中具体可以包括步骤201 :将各像素点的平均分量值作为默认主颜色的原始分量值。本步骤在具体实施时,又可以细分为如下两个子步骤子步骤BI :将所述预设的默认主颜色作为当前主颜色,并将所述图像的各个像素点作为所述当前主颜色的像素点集合。在计算机对图像的主颜色进行识别时,需要将原始的待识别图像从RGB色彩空间 转换为基于视觉模型建立的色彩空间,例如LUV色彩空间、HSV色彩空间(色相、饱和度、明度,Hue、Saturation, Value)或者CIE-LAB色彩空间等。其中,在LUV色彩空间中,L分量表示像素点的亮度,U和V分量表示色度坐标。对于一般的图像,U和V分量的取值范围为-100到+100,亮度为O到100。而LAB色彩空间中,L分量表示像素点的明度值;A分量表示像素点的红/绿值,B分量表示像素点的黄/蓝值。在本申请的实施例中,以LUV色彩空间为例进行介绍,但是本领域技术人员可以从LUV色彩空间很容易的想到本申请在其他基于视觉模型建立的色彩空间中的实现。在本步骤中,需要初始设置一个默认的主颜色,该默认主颜色的L、U、V上的各初始分量设置为0,并且将所述图像的所有像素点都归类于所述默认主颜色的像素点集合。子步骤B2 :将所述像素点集合下各像素点在基于视觉模型建立的色彩空间模型的各分量平均值对应替换该默认主颜色的原始分量值。在本步骤中将所述图像的所有像素点在L、U和V各分量上的平均值,作为所述默认主颜色的各分量值,替换默认主颜色的原始分量值O、和0、0。假设所述图像的各像素点在L、U和V各分量上的平均值分别为(20,30,40),则本步骤中替换后的默认主颜色的各分量值也为(20,30,40)。步骤202 :计算所述像素点集合中各像素点的分量值与替换后的默认主颜色的各分量值的平均偏差。在本步骤中,需要计算出所述像素点集合中各个像素点的各分量值,与所述(20,
30.40)的平均偏差。具体可以先累加该默认主颜色下各像素点的分量值对应与所述(20,
30.40)的偏差,并将累加和除以默认主颜色下的像素点总个数得到的平均值作为平均偏差。步骤203 :按照所述平均偏差将所述默认主颜色的各分量值拆分为两个初始主颜色的各分量值。假设在步骤203中得到的平均偏差为D,并将默认主颜色分裂为两个初始主颜色X1 (L、U、V)与X2 (L、U、V),则分裂后的两个初始主颜色的各分量值可以通过下列公式来计算LX1 = Lx+factor*D, Lx2 = Lx-factor*D, Ux2 = Ux-factor*D, Uxi = Ux+factor*D, Vxi =Vx+factor*D, Vx2 = Vx-factor*D。其中,factor 为预设的因子,例如 0. 25。在实际应用中,因为默认主颜色不一定就是图像最终真正的主颜色,所以在识别图像主颜色的过程中,为了获取图像准确的主颜色,需要对默认主颜色进行验证和进一步的扩充。在本步骤中,将默认主颜色拆分为两个初始主颜色即是检测默认主颜色是否为图像最终主颜色的预处理步骤。
图3中的流程是将默认主颜色分裂为多于两个初始主颜色的流程图,参考图3,在分裂的初始主颜色多于两个的情况下,在所述步骤203之后,还可以包括以下步骤步骤301 :将所述拆分后的初始主颜色作为当前主颜色,计算所述图像的各个像素点在基于视觉模型建立的色彩空间的各分量值与所述当前主颜色对应的分量值的欧式距离。当分裂的初始主颜色多于两个时,需要再将步骤204分裂得到的两个初始主颜色再进行分裂,则将步骤204中的两个初始主颜色作为当前主颜色,再分别计算所述图像的各个像素点在L、U、V方向上的各分量值与所述两个初始主颜色的欧氏距离。步骤302 :将欧式距离小于第一阈值的像素点归类于对应的初始主颜色,形成两个初始主颜色的像素集合。在实际应用中,需要预先设置第一阈值,而如果某个像素点和对应的各分量值如 果与某个主颜色的各分量值的欧式距离小于这个第一阈值,则认为这个像素点所呈现的颜色就是这个主颜色,本步骤则将类似的像素点归类于对应的初始主颜色,这样就形成了分裂得到的两个初始主颜色的像素点集合。步骤303 :将各个初始主颜色的像素集合下各像素点的各分量平均值对应替换各初始主颜色的初始分量值。然后再计算各个像素点集合中的各个像素点的各分量平均值,并将计算得到的平均值作为初始主颜色的初始分量值。步骤304 :计算各个初始主颜色的像素集合中各像素点与初始主颜色的平均偏差。本步骤中再计算各个初始主颜色的像素点集合中各像素点与初始主颜色的平均偏差,其中,计算方式可以与步骤203中介绍的相同。步骤305 :将最大的平均偏差对应的初始主颜色分裂为两个主颜色。对于计算出平均偏差的初始主颜色,将相对最大的平均偏差对应的初始主颜色分裂为两个主颜色,其中,可以采用步骤204中介绍的分裂方式。步骤306 :判断分裂后的主颜色总个数是否达到预设值,如果是,则进入步骤307,如果否,则将所述分裂后的所有主颜色作为当前主颜色,进入步骤301。最后判断分裂了其中一个初始主颜色之后的主颜色总个数,是否达到了预设值,例如四个,如果分裂后的初始主颜色是四个,则将将分裂后的总个数达到预设值的初始主颜色作为最终分裂得到的至少两个初始主颜色。需要说明的是,如果本步骤中判断的主颜色总个数没有达到预设值,则需要将分裂得到的所有初始主颜色作为当前主颜色,再执行步骤301,重复执行分裂过程,最终当主颜色的总个数达到预设值时,就停止分裂过程。步骤307 :将分裂后的总个数达到预设值的初始主颜色作为最终分裂得到的至少两个初始主颜色。在分裂得到了最终的至少两个初始主颜色之后,对于分裂得到的所述至少两个初始主颜色,最后还要再判断是否需要对其中的一些初始主颜色进行步骤103的合并操作。步骤103 :对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色。
对于步骤103的实现,在实际应用中可以采用凝聚聚类算法,参考图4,所述步骤103在实际应用中具体可以包括步骤401 :分别计算分裂得到的至少两个初始主颜色两两之间的欧氏距离。步骤402 :判断最小的欧式距离是否小于预设值,如果是,则进入步骤403,如果否,则进入步骤408。在本步骤需要判断最小的欧式距离的值是否小于预设值,例如,小于100,则将计算出最小的欧式距离的两个初始主颜色进行合并。步骤403 :将存在最小的欧式距离的两个初始主颜色合并为一个合并主颜色,该合并主颜色的各分量值为合并前两个初始主颜色的各分量值的平均值。
在实际应用中,因为拆分后的多个初始主颜色有可能是同一个主颜色,或者拆分后的初始主颜色之间因为欧氏距离较近所以可以认为是一个主颜色,所以在具体实施时需要考虑多个初始主颜色之间是否存在合并的可能性。在本步骤中,合并后的合并主颜色的各分量值为合并前两个初始主颜色的各分量值的平均值。步骤404 :计算图像的各个像素点与执行合并后的剩余主颜色对应分量的欧式距离。再依次计算所述图像中的所有像素点与执行合并后的各个主颜色对应分量的欧式距离。步骤405 :按照计算得到的欧式距离将各像素点归类于各个剩余主颜色,形成各个剩余主颜色的像素点集合。再依据像素点与各个主颜色计算得到的欧式距离将各个像素点分别归类于各个剩余主颜色,这样就得到了各个剩余主颜色的像素点集合。其中,各像素点都归类于最近的欧氏距离对应的剩余主颜色。步骤406 :将各个剩余主颜色的分量值调整为对应的像素点集合中所包括的各个像素点的分量平均值。本步骤再根据步骤405中得到的像素点集合调整剩余主颜色的各个分量值。步骤407 :将步骤406中得到的剩余主颜色作为最终主颜色。步骤408 :直接将所述初始主颜色作为最终主颜色。在得到最终主颜色之后,该最终主颜色即是可以表示待识别图像主颜色的颜色,因此,再继续执行步骤104。步骤104 :根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。步骤104中的比例可以理解为各主颜色下像素的数量,例如主颜色A包含100个像素,主颜色B包含200个像素,主颜色C包含100个像素,则比例为I : 2 1(亦可归一化为25%,50%,25% ),同时,所述主颜色的描述符就为F = {Ci,pj,i = 1,2,…,N,P e [O, I],其中,F为描述符,Ci为第i个主颜色,Pi为比例。参考图5,所述步骤104在实际应用中具体可以包括步骤501 :根据所述各个最终主颜色对应的像素点集合中的像素点总个数计算各个主颜色的比例。步骤502 :将所述各个主颜色比例与其各分量值作为主颜色描述符存储在预置的数据库中。主颜色描述符得到之后可以存储在预置的数据库中,与现有技术中的颜色直方图相比,该数据库中只需存储主颜色描述符,因此,数据库的存储量大大减少。采用本申请实施例,图像主颜色的描述符采用向量结构来描述图片中较为显著的颜色集,本申请实施例中的主颜色描述符包括一系列主颜色及其所占的比例,这样就使得在识别图像主颜色时,能够减少数据的存储量;并且因为本申请实施例中不需要针对图像的所有像素点进行计算,而预先设置了一个默认主颜色从而可以采用凝聚聚类算法,并最终只获取最终主颜色的描述符,也能够减少计算量,从而使得图像主颜色的识别效率相对于现有技术有了较大提升,同时,因为本申请中不需要对待识别图像进行量化压缩操作,只是将图像的色彩空间转换为基于视觉模型建立的色彩空间,这样不仅可以使得本申请实施例的方法更为通用,进一步的还能够反映出更真实的图像主颜色。参考图6,示出了本申请一种图像主颜色的识别方法实施例2的流程图,在本实施 例2中,为默认主颜色只分裂为两个初始主颜色的实施例,本实施例具体可以包括以下步骤步骤601 :接收待识别主颜色的图像。步骤602 :将所述预设的默认主颜色作为当前主颜色,并将所述图像的各个像素点作为所述当前主颜色的像素点集合。步骤603 :将所述像素点集合下各像素点在基于视觉模型建立的色彩空间模型的各分量平均值对应替换该默认主颜色的原始分量值。步骤604 :计算各个初始主颜色的像素集合中各像素点与替换后的默认主颜色的各分量值的平均偏差。步骤605 :按照所述平均偏差将所述默认主颜色的各分量值拆分为两个初始主颜色的各分量值。步骤606 :计算分裂得到的所述两个初始主颜色的欧氏距离。步骤607 :判断该欧式距离是否小于预设值,如果是,则进入步骤608,如果否,则进入步骤612。步骤608 :将该两个初始主颜色合并为一个合并主颜色,该合并主颜色的各分量值为合并前两个初始主颜色的各分量值的平均值。如果分裂得到的两个初始主颜色之间的欧式距离小于一个预设值,则可以将其合并为一个合并主颜色,则本实施例中的最终主颜色只有一个。步骤609 :计算图像的各个像素点与执行合并后的剩余主颜色对应分量的欧式距离。需要说明的是,对于步骤609来讲,如果最终主颜色只有一个的话,可以不需执行本步骤,即是直接从步骤608进入步骤610。步骤610 :按照计算得到的欧式距离将各像素点归类于执行合并后的剩余主颜色,形成剩余主颜色的像素点集合,其中,各像素点都归类于最近的欧氏距离对应的剩余主颜色。在实际应用中,如果是多个剩余主颜色的话,可以按照各像素点归类于最近的欧氏距离对应的主颜色的原则,如果剩余主颜色只有一个,则将所有像素点都归为该一个剩余主颜色的像素点集合。步骤611 :将各个主颜色的分量值调整为对应的像素点集合中所包括的各个像素点的分量平均值。此时,再将该一个最终主颜色对应的像素点集合中分量平均值作为主颜色的最终分量值。步骤612 :将执行合并后的剩余主颜色作为最终主颜色,或者直接将分裂得到的所述两个初始主颜色作为最终主颜色。最后将执行合并操作后的一个剩余主颜色作为最终主颜色,或者直接将欧式距离大于预设值的两个初始主颜色作为最终主颜色。
步骤613 :根据所述各个最终主颜色对应的像素点集合中的像素点总个数计算各个主颜色的比例。需要说明的是,在只有一个最终主颜色的情况下,该一个最终主颜色输出的描述符为该唯一的主颜色以及比例(此时为100% )。步骤614:将所述各个主颜色比例与其各分量值作为主颜色描述符进行输出。在本实施例中,将图像默认的主颜色分裂两个初始主颜色,并通过对这两个初始主颜色的合并来识别图像主颜色,与现有技术相比,本实施例提升了图像主颜色的识别效率。为了方便本领域技术人员更好的理解本申请,下面以分裂后的主颜色大于两个为例子对本申请在实际应用中的实施过程进行详细介绍,本例子具体可以包括以下步骤步骤Al :接收待识别主颜色的图像。步骤A2 :预先对待处理图像进行分区,并针对各区域的像素点设置不同的权重。在本步骤中需要预先将步骤701接收到的图像划分成NXN个子区块,针对不同的区块,再依照人眼的敏感程度,设置不同的权重。例如,对大多数图像而言,用户最感兴趣的应该是中央,因此该区域所选取的权重应该最大,而边缘区域的权重应该最小。所述N的取值可以依据实际情况变化。参考图7所示,为N = 4的情况下一种分区示意图,图中中间区域的权重为4,依次可以看出,四个角落的四个小区域的权重为1,而其他区域的权重为2。步骤A3:将所述预设的默认主颜色作为当前主颜色,并将所述图像的各个像素点作为所述当前主颜色的像素点集合。在本实施例中,假设待识别图像共有21个像素,这21个像素的L、U、V各分量值如下所示:(0,0,0), (10,10,10)、(20,20,20)、(30,30,30)、(40,40,40)、(50,50,50)、(60,60,60)、(70,70,70)、(80,80,80)、(90,90,90)、(100,100,100)、(110,110,110)、(120,120,120)、(130,130,130)、(140,140,140)、(150,150,150)、(160,160,160)、(170,170,170)、(180,180,180)、(190,190,190)、(200,200,200),同时,假设设置默认主颜色的 L、U、V 各分量值为(0,0,0)。本步骤需要将21个像素划分到默认主颜色,所以所有21种颜色都被划分到(0,0,0)所对应的像素点集合中。步骤A4 :将所述像素点集合下各像素点在基于视觉模型建立的色彩空间模型的各分量平均值对应替换该默认主颜色的原始分量值。在本步骤中,计算得到的21个像素点在LUV色彩空间的各分量值为(100,100,100),则将主颜色的LUV分量值更新为(100,100,100)。
步骤A5 :计算各个初始主颜色的像素集合中各像素点与替换后的默认主颜色的各分量值的平均偏差。具体在实际应用中,即是累积各主颜色的分量值与对应的像素点的分量值的偏差,并除以该主颜色对应的像素点集合中像素点的总个数得到平均值。其计算公式可以为
权利要求
1.一种图像主颜色的识别方法,其特征在于,该方法包括 接收待识别主颜色的图像; 采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色; 对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色; 根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。
2.根据权利要求I所述的方法,其特征在于,在分裂的初始主颜色为两个的情况下,所述采用分裂聚类算法将所述图像预设的默认主颜色分裂为两个初始主颜色,包括 将各像素点的平均分量值作为默认主颜色的原始分量值; 计算各个初始主颜色的像素集合中各像素点与替换后的默认主颜色的各分量值的平均偏差; 按照所述平均偏差将所述默认主颜色的各分量值拆分为两个初始主颜色的各分量值。
3.根据权利要求2所述的方法,其特征在于,在分裂的初始主颜色大于两个的情况下,所述采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色,还包括 将所述拆分的两个初始主颜色作为当前主颜色,计算所述图像的各个像素点在基于视觉模型建立的色彩空间的各分量值与所述当前主颜色对应的分量值的欧式距离; 将欧式距离小于第一阈值的像素点归类于对应的初始主颜色,形成个初始主颜色的像素集合; 将初始主颜色的像素集合下各像素点的各分量平均值替换该初始主颜色的初始分量值; 计算各个初始主颜色的像素集合中各像素点与初始主颜色的平均偏差; 将最大的平均偏差对应的初始主颜色分裂为两个初始主颜色;再将所述分裂后的两个初始主颜色作为当前主颜色,重复执行分裂过程,直至分裂后的初始主颜色的总个数达到预设值。
4.根据权利要求3所述的方法,其特征在于,所述对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色,包括 对于分裂得到的所述至少两个初始主颜色,分别计算两两主颜色之间的欧氏距离;判断最小的欧式距离是否小于预设值,如果否,则直接将所述初始主颜色作为最终主颜色;如果是,则将存在最小的欧式距离的两个初始主颜色合并为一个合并主颜色,该合并主颜色的各分量值为合并前两个初始主颜色的各分量值的平均值; 计算图像的各个像素点与执行合并后的剩余主颜色对应分量的欧式距离; 按照计算得到的欧式距离将各像素点归类于执行合并后的剩余主颜色,形成各个剩余主颜色的像素点集合,其中,各像素点都归类于最近的欧氏距离对应的剩余主颜色; 将各个主颜色的分量值调整为对应的像素点集合中所包括的各个像素点的分量平均值; 重新计算合并后的剩余主颜色与其他未合并的初始主颜色之间的欧式距离,并触发所述判断最小的欧式距离是否小于预设值的步骤。
5.根据权利要求I所述的方法,其特征在于,所述根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符,包括 根据所述各个最终主颜色对应的像素点集合中的像素点总个数计算各个主颜色的比例; 将所述各个主颜色比例与其各分量值作为主颜色描述符存储至预置的数据库中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括 预先对待处理图像进行分区,并针对分区后的各区域的像素点设置不同的权重;则所述根据各个最终主颜色下像素数量的比例输出所述最终主颜色的描述符,包括对于各个最终主颜色,就依据所述各个最终主颜色对应的像素点集合中的像素点总个数以及像素点的权重计算各个主颜色的比例; 将所述各个主颜色比例与其各分量值作为主颜色描述符进行输出。
7.一种应用权利要求I所示的图像主颜色的识别方法的图像匹配方法,其特征在于,预先构建图像特征数据库,所述图像特征数据库用于保存图像及其对应的主颜色描述符;所述主颜色描述符通过权利要求I所述的图像主颜色的识别方法获取;包括 获取用户输入的主颜色信息; 从所述图像特征数据库中匹配包括所述主颜色信息的主颜色描述符的图像; 获取从所述图像特征数据库中匹配得到的图像。
8.根据权利要求7所述的方法,其特征在于,所述获取用户输入的主颜色信息,包括 直接接收用户选择的颜色信息,或者, 接收用户提交的原始图像,并识别所述原始图像的主颜色。
9.一种图像主颜色的识别装置,其特征在于,该装置包括 接收模块,用于接收待识别主颜色的图像; 分裂模块,用于采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色; 合并模块,用于对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色; 获取模块,用于根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。
10.根据权利要求9所述的装置,其特征在于,在分裂的初始主颜色为两个的情况下,所述分裂模块包括 预处理子模块,用于将各像素点的平均分量值作为默认主颜色的原始分量值; 计算平均偏差子模块,用于计算各个初始主颜色的像素集合中各像素点与替换后的默认主颜色的各分量值的平均偏差; 拆分子模块,用于按照所述平均偏差将所述默认主颜色的各分量值拆分为两个初始主颜色的各分量值。
11.根据权利要求9所述的装置,其特征在于,在分裂的初始主颜色大于两个的情况下,所述分裂模块还包括 第一计算子模块,用于将所述拆分的两个初始主颜色作为当前主颜色,计算所述图像的各个像素点在基于视觉模型建立的色彩空间的各分量值与所述当前主颜色对应的分量值的欧式距离;第一生成子模块,用于将欧式距离小于第一阈值的像素点归类于对应的初始主颜色,形成个初始主颜色的像素集合; 所述替换子模块,还用于将初始主颜色的像素集合下各像素点的各分量平均值替换该初始主颜色的初始分量值; 所述计算平均偏差子模块,还用于计算各个初始主颜色的像素集合中各像素点与初始主颜色的平均偏差; 分裂子模块,用于将最大的平均偏差对应的初始主颜色分裂为两个初始主颜色;再将所述分裂后的两个初始主颜色作为当前主颜色,重复执行分裂过程,直至分裂后的初始主颜色的总个数达到预设值。
12.根据权利要求11所述的装置,其特征在于,所述合并模块,包括 第二计算子模块,用于对于分裂得到的所述至少两个初始主颜色,分别计算两两主颜色之间的欧氏距离; 第一判断子模块,用于判断最小的欧式距离是否小于预设值,如果是,则将存在最小的欧式距离的两个初始主颜色合并为一个合并主颜色,该合并主颜色的各分量值为合并前两个初始主颜色的各分量值的平均值; 第三计算子模块,用于计算图像的各个像素点与执行合并后的剩余主颜色对应分量的欧式距离; 第二生成子模块,用于按照计算得到的欧式距离将各像素点归类于执行合并后的剩余主颜色,形成各个剩余主颜色的像素点集合,其中,各像素点都归类于最近的欧氏距离对应的剩余主颜色; 调整子模块,用于将各个主颜色的分量值调整为对应的像素点集合中所包括的各个像素点的分量平均值; 触发子模块,用于触发所述计算欧式距离子模块重新计算合并后的剩余主颜色与其他未合并的初始主颜色之间的欧式距离,并触发所述判断模块。
13.根据权利要求9所述的装置,其特征在于,所述获取模块,包括 计算比例子模块,用于根据各个所述各个主颜色对应的像素点集合中的像素点总个数计算各个主颜色的比例; 存储子模块,用于将所述各个主颜色比例与其各分量值作为主颜色描述符存储至预置的数据库中。
14.根据权利要求13所述的装置,其特征在于,还包括 设置模块,用于预先对待处理图像进行分区,并针对各区域的像素点设置不同的权重; 则所述计算比例子模块,还用于对各个最终主颜色,依据所述各个最终主颜色对应的像素点集合中的像素点总个数以及像素点的权重计算各个主颜色的比例。
15.一种服务器,其特征在于,该服务器包括 第一获取单元,用于获取用户输入的主颜色信息; 匹配单元,用于从预先构建的图像特征数据库中匹配包括所述主颜色信息的主颜色描述符的图像;所述图像特征数据库用于保存图像及其对应的主颜色描述符;所述主颜色描述符通过权利要求I所述的图像主颜色的识别方法获取;第二获取单元,用于获取从所述图像特征数据库中匹配得到的图像。
16.根据权利要求15所述的服务器,其特征在于,所述获取模块包括接收子单元,用于直接接收用户选择的颜色信息,或者,识别子单元,用于接收用户提交的原始图像,并识别所述原始图像的主颜色。
全文摘要
本申请提供了图像主颜色的识别方法、装置及图像匹配方法和服务器,所述图像主颜色的识别方法包括接收待识别主颜色的图像;采用分裂聚类算法将所述图像预设的默认主颜色分裂为至少两个初始主颜色;对分裂得到的所述至少两个初始主颜色采用凝聚聚类算法进行合并,以得到满足预设条件的最终主颜色;根据各个最终主颜色下像素数量的比例获取所述最终主颜色的描述符。采用本申请的识别方法、装置以及匹配方法和服务器,能够减少数据的存储量并减少计算量,从而使得图像主颜色的识别效率相对于现有技术有了较大提升。
文档编号G06T7/00GK102722880SQ20111007743
公开日2012年10月10日 申请日期2011年3月29日 优先权日2011年3月29日
发明者薛晖 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1