CN111401316B - 图像主色确定方法、装置、存储介质及电子设备 - Google Patents
图像主色确定方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111401316B CN111401316B CN202010285807.XA CN202010285807A CN111401316B CN 111401316 B CN111401316 B CN 111401316B CN 202010285807 A CN202010285807 A CN 202010285807A CN 111401316 B CN111401316 B CN 111401316B
- Authority
- CN
- China
- Prior art keywords
- color
- colors
- image
- subspaces
- representative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 239000003086 colorant Substances 0.000 claims abstract description 223
- 230000001815 facial effect Effects 0.000 claims description 39
- 230000008859 change Effects 0.000 claims description 19
- 238000013519 translation Methods 0.000 claims description 17
- 230000002194 synthesizing effect Effects 0.000 claims description 13
- 230000015572 biosynthetic process Effects 0.000 claims description 11
- 238000003786 synthesis reaction Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005484 gravity Effects 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000013535 sea water Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- CLOMYZFHNHFSIQ-UHFFFAOYSA-N clonixin Chemical compound CC1=C(Cl)C=CC=C1NC1=NC=CC=C1C(O)=O CLOMYZFHNHFSIQ-UHFFFAOYSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/162—Detection; Localisation; Normalisation using pixel segmentation or colour matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明实施方式涉及一种图像主色确定方法、装置、存储介质与电子设备,涉及图像处理技术领域。该方法包括:基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的所述颜色子空间,得到各所述颜色子空间中的像素点数量;对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各所述颜色子空间划分到其代表色所属的所述颜色类别中;分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色;按照各所述颜色类别中的像素点数量排列各所述颜色类别的主色,从中选取第二预设数量的所述主色,作为所述目标图像的主色。本发明能够提高图像主色的准确度,适用于颜色分布较为复杂的图像。
Description
技术领域
本发明的实施方式涉及图像处理技术领域,更具体地,本发明的实施方式涉及一种图像主色确定方法、图像主色确定装置、计算机可读存储介质及电子设备。
背景技术
本部分旨在为权利要求中陈述的本发明的实施方式提供背景或上下文,此处的描述不因为包括在本部分中就承认是现有技术。
主色是指图像中视觉感受最醒目的颜色或色调,确定图像主色在图像检索、图像合成、图像压缩等方面都有重要应用。
现有技术中,为了确定图像主色,一般对图像统计颜色直方图,由此得到不同颜色在整个图像中所占的比例,然后将占比最高的颜色确定为图像主色。
发明内容
然而,实际应用中,图像中的颜色分布可能较为复杂,例如图像中多个颜色都占有较高的比重,特别是这些颜色可能相互交织穿插,形成复杂的背景、图案或纹理,或者图像中存在多个相似颜色,如天空、海水一般由不同的蓝色融合而成,等等。针对这些较为复杂的情况,如果将直方图分块较多并提取出多个主色,很容易导致所提取的多个主色之间差别过大,将该多个主色搭配在一起很不协调。现有技术中为了避免上述问题一般选择将直方图进行较小的分块选取主色,但是这种方式会导致所选取的主色色值太单一,从而导致利用该主色组成的背景色均为纯色或近似纯色,视觉体验较差。
为此,非常需要一种改进的图像主色确定方法,可以解决现有技术中所选取的主色色值单一的问题,以确定出色彩搭配更协调、更接近图像颜色且色彩度更丰富的主色。
在本上下文中,本发明的实施方式期望提供一种图像主色确定方法、图像主色确定装置、计算机可读存储介质及电子设备。
根据本发明实施方式的第一方面,提供一种图像主色确定方法,包括:基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的所述颜色子空间,得到各所述颜色子空间中的像素点数量;对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各所述颜色子空间划分到其代表色所属的所述颜色类别中;分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色;按照各所述颜色类别中的像素点数量排列各所述颜色类别的主色,从中选取第二预设数量的所述主色,作为所述目标图像的主色;其中,任一所述颜色类别中的像素点数量为:所述颜色类别所包括的各所述颜色子空间中的像素点数量之和。
在一种可选的实施方式中,所述分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色,包括:在每个所述颜色类别中,以各所述颜色子空间中的像素点数量为权重,对各所述代表色进行加权平均,得到每个所述颜色类别的主色。
在一种可选的实施方式中,任一所述颜色子空间的代表色通过以下方式确定:对所述颜色子空间中的像素点求像素平均值,得到所述颜色子空间的代表色。
在一种可选的实施方式中,所述颜色子空间由所述颜色空间均匀划分得到,各所述颜色子空间具有相同的颜色跨度。
在一种可选的实施方式中,所述对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,包括:按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色;利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到所述第一预设数量的颜色类别。
在一种可选的实施方式中,所述按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色,包括:按照像素点数量由高到低排列各所述颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;从第二颜色子空间开始,依次计算每个所述颜色子空间的代表色与所述第一聚类中心颜色的距离;若所述距离大于预设颜色跨度,则确定所述代表色为聚类中心颜色;若所述距离小于所述预设颜色跨度,则跳过所述代表色,计算下一所述颜色子空间的代表色与所述第一聚类中心颜色的距离;得到第一预设数量的聚类中心颜色,所述第一预设数量的聚类中心颜色包括所述第一聚类中心颜色。
在一种可选的实施方式中,所述利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,包括:分别计算每个所述颜色子空间的代表色与各所述聚类中心颜色的距离,以将所述代表色划分到距离最近的所述聚类中心颜色所对应的颜色类别中。
在一种可选的实施方式中,所述颜色空间为RGB颜色空间,所述颜色子空间通过对所述RGB颜色空间的R、G、B分别进行K等分得到,K为大于或等于2的正整数。
在一种可选的实施方式中,所述第一预设数量小于所述颜色子空间的数量,所述第二预设数量小于所述第一预设数量。
在一种可选的实施方式中,所述目标图像通过以下方式获取:从待处理人脸图像中识别脸部区域和脸部特征点,所述脸部特征点至少包括眼部点、鼻部点和嘴部点;基于所述眼部点和所述嘴部点确定脸部中位线,根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数;按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框;通过所述裁剪框裁剪所述待处理人脸图像,得到所述目标图像。
在一种可选的实施方式中,所述眼部点包括两个眼角点,所述嘴部点包括两个嘴角点;所述基于所述眼部点和所述嘴部点确定脸部中位线,包括:将所述两个眼角点之间的中点和所述两个嘴角点之间的中点连接,得到所述脸部中位线。
在一种可选的实施方式中,所述根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数,包括:确定所述鼻部点在所述脸部中位线上的投影点;根据所述鼻部点和所述投影点之间的位置偏差确定所述调整参数。
在一种可选的实施方式中,所述根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数,包括:根据所述鼻部点与所述脸部中位线之间的偏差,以及预设的偏移系数,确定所述调整参数。
在一种可选的实施方式中,所述调整参数包括平移参数;所述按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框,包括:按照预设尺寸均匀拉伸所述脸部区域的轮廓框,并按照所述平移参数平移所述轮廓框,得到所述裁剪框。
在一种可选的实施方式中,所述预设尺寸满足:L=a*max(W,H);其中,L为所述预设尺寸;a为预设的拉伸系数,a>1;所述脸部区域的轮廓框为矩形,W和H分别为所述轮廓框的宽和高;所述裁剪框为边长为L的正方形。
在一种可选的实施方式中,在确定所述目标图像的主色后,所述方法还包括:根据所述主色生成背景图像;合成所述目标图像和所述背景图像。
在一种可选的实施方式中,所述根据所述主色生成背景图像,包括:将所述目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数;统计每个所述子图像中与所述主色处于同一色阶的像素数量,以qij表示子图像ij中与所述主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n;计算方向指数根据所述方向指数确定渐变方向;按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像。
在一种可选的实施方式中,所述根据所述方向指数确定渐变方向,包括:当f<T1或f>T3时,确定所述渐变方向为由上到下;当T1<f<T2时,确定所述渐变方向为左上到右下;当T2<f<T3时,确定所述渐变方向为左下到右上;其中,T1、T2和T3均为预设的比例阈值,且0<T1<T2<T3。
在一种可选的实施方式中,当时,确定所述渐变方向为由左到右。
在一种可选的实施方式中,如果F≥2,F为所述第二预设数量,则所述统计每个所述子图像中与所述主色处于同一色阶的像素数量,包括:统计每个所述子图像中与第一主色处于同一色阶的像素数量;所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色。
在一种可选的实施方式中,如果F≥2,F为所述第二预设数量,则所述按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像,包括:按照所述渐变方向,生成由第一主色渐变至第K主色的渐变色背景图像;所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色,所述第F主色为排在第F位的主色。
在一种可选的实施方式中,所述目标图像通过对艺人的人脸图像进行裁剪而得到;所述合成所述目标图像和所述背景图像,包括:合成所述目标图像和所述背景图像,得到所述艺人的歌曲的封面图像。
在一种可选的实施方式中,所述艺人的人脸图像通过以下方式获取:获取为歌曲生成封面图像的任务,确定所述歌曲的艺人名;根据所述艺人名搜索得到所述艺人的人脸图像。
根据本发明实施方式的第二方面,提供一种图像主色确定装置,包括:统计模块,用于基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的所述颜色子空间,得到各所述颜色子空间中的像素点数量;聚类模块,用于对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各所述颜色子空间划分到其代表色所属的所述颜色类别中;加权模块,用于分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色;排列模块,用于按照各所述颜色类别中的像素点数量排列各所述颜色类别的主色,从中选取第二预设数量的所述主色,作为所述目标图像的主色;其中,任一所述颜色类别中的像素点数量为:所述颜色类别所包括的各所述颜色子空间中的像素点数量之和。
在一种可选的实施方式中,所述加权模块,被配置为:在每个所述颜色类别中,以各所述颜色子空间中的像素点数量为权重,对各所述代表色进行加权平均,得到每个所述颜色类别的主色。
在一种可选的实施方式中,任一所述颜色子空间的代表色通过以下方式确定:对所述颜色子空间中的像素点求像素平均值,得到所述颜色子空间的代表色。
在一种可选的实施方式中,所述颜色子空间由所述颜色空间均匀划分得到,各所述颜色子空间具有相同的颜色跨度。
在一种可选的实施方式中,所述聚类模块包括:聚类中心确定单元,用于按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色;代表色聚类单元,用于利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到所述第一预设数量的颜色类别。
在一种可选的实施方式中,所述聚类中心确定单元,被配置为:按照像素点数量由高到低排列各所述颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;从第二颜色子空间开始,依次计算每个所述颜色子空间的代表色与所述第一聚类中心颜色的距离;若所述距离大于预设颜色跨度,则确定所述代表色为聚类中心颜色;若所述距离小于所述预设颜色跨度,则跳过所述代表色,计算下一所述颜色子空间的代表色与所述第一聚类中心颜色的距离;得到第一预设数量的聚类中心颜色,所述第一预设数量的聚类中心颜色包括所述第一聚类中心颜色。
在一种可选的实施方式中,所述代表色聚类单元,被配置为:分别计算每个所述颜色子空间的代表色与各所述聚类中心颜色的距离,以将所述代表色划分到距离最近的所述聚类中心颜色所对应的颜色类别中。
在一种可选的实施方式中,所述颜色空间为RGB颜色空间,所述颜色子空间通过对所述RGB颜色空间的R、G、B分别进行K等分得到,K为大于或等于2的正整数。
在一种可选的实施方式中,所述第一预设数量小于所述颜色子空间的数量,所述第二预设数量小于所述第一预设数量。
在一种可选的实施方式中,所述图像主色确定装置还包括目标图像获取模块;所述目标图像获取模块包括:特征点识别单元,用于从待处理人脸图像中识别脸部区域和脸部特征点,所述脸部特征点至少包括眼部点、鼻部点和嘴部点;调整参数确定单元,用于基于所述眼部点和所述嘴部点确定脸部中位线,根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数;轮廓框调整单元,用于按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框;人脸图像裁剪单元,用于通过所述裁剪框裁剪所述待处理人脸图像,得到所述目标图像。
在一种可选的实施方式中,所述眼部点包括两个眼角点,所述嘴部点包括两个嘴角点;所述调整参数确定单元,被配置为:将所述两个眼角点之间的中点和所述两个嘴角点之间的中点连接,得到所述脸部中位线。
在一种可选的实施方式中,所述调整参数确定单元,被配置为:确定所述鼻部点在所述脸部中位线上的投影点;根据所述鼻部点和所述投影点之间的位置偏差确定所述调整参数。
在一种可选的实施方式中,所述调整参数确定单元,被配置为:根据所述鼻部点与所述脸部中位线之间的偏差,以及预设的偏移系数,确定所述调整参数。
在一种可选的实施方式中,所述调整参数包括平移参数;所述轮廓框调整单元,被配置为:按照预设尺寸均匀拉伸所述脸部区域的轮廓框,并按照所述平移参数平移所述轮廓框,得到所述裁剪框。
在一种可选的实施方式中,所述预设尺寸满足:L=a*max(W,H);其中,L为所述预设尺寸;a为预设的拉伸系数,a>1;所述脸部区域的轮廓框为矩形,W和H分别为所述轮廓框的宽和高;所述裁剪框为边长为L的正方形。
在一种可选的实施方式中,所述装置还包括图像合成模块,用于根据所述目标图像的主色生成背景图像,以及合成所述目标图像和所述背景图像。
在一种可选的实施方式中,所述图像合成模块包括:目标图像划分单元,用于将所述目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数;色阶统计单元,用于统计每个所述子图像中与所述主色处于同一色阶的像素数量,以qij表示子图像ij中与所述主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n;方向指数计算单元,用于计算方向指数渐变方向确定单元,用于根据所述方向指数确定渐变方向;背景图像生成单元,用于按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像。
在一种可选的实施方式中,所述渐变方向确定单元,被配置为:当f<T1或f>T3时,确定所述渐变方向为由上到下;当T1<f<T2时,确定所述渐变方向为左上到右下;当T2<f<T3时,确定所述渐变方向为左下到右上;其中,T1、T2和T3均为预设的比例阈值,且0<T1<T2<T3。
在一种可选的实施方式中,所述渐变方向确定单元,被配置为:当时,确定所述渐变方向为由左到右。
在一种可选的实施方式中,如果F≥2,F为所述第二预设数量,则所述色阶统计单元,被配置为:统计每个所述子图像中与第一主色处于同一色阶的像素数量;所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色。
在一种可选的实施方式中,如果F≥2,F为所述第二预设数量,则所述背景图像生成单元,被配置为:按照所述渐变方向,生成由第一主色渐变至第F主色的渐变色背景图像;所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色,所述第F主色为排在第F位的主色。
在一种可选的实施方式中,所述目标图像通过对艺人的人脸图像进行裁剪而得到;所述图像合成模块,还用于合成所述目标图像和所述背景图像,得到所述艺人的歌曲的封面图像。
在一种可选的实施方式中,所述艺人的人脸图像通过以下方式获取:获取为歌曲生成封面图像的任务,确定所述歌曲的艺人名;根据所述艺人名搜索得到所述艺人的人脸图像。
根据本发明实施方式的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种图像主色确定方法。
根据本发明实施方式的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一种图像主色确定方法。
根据本发明实施方式的上述方法、装置、计算机可读存储介质及电子设备,基于预先划分的颜色子空间,统计目标图像中各像素点所属的颜色子空间,得到各颜色子空间中的像素点数量;然后对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各颜色子空间划分到其代表色所属的颜色类别中;再分别对每个颜色类别中的代表色进行加权,得到每个颜色类别的主色;最后按照各颜色类别中的像素点数量排列各颜色类别的主色,从中选取第二预设数量的主色,作为目标图像的主色。一方面,本方案通过颜色子空间的聚类得到颜色类别,颜色类别的划分与目标图像的颜色分布特征相适应,实现了对目标图像中相似颜色的聚类;当目标图像颜色分布复杂时,也能够实现合理且精准的颜色聚类。另一方面,对颜色类别中的代表色进行加权,所得到的主色与各代表色之间较为协调,所得到的主色不依赖于目标图像中的单一颜色;当目标图像颜色分布复杂时,主色色值更加丰富,颜色搭配更协调,从而准确模拟视觉对目标图像颜色的综合感受,主色的准确度较高。再一方面,本方案通过对目标图像中的像素点进行聚类和加权计算即可实现,计算量较低,实用性较高。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示出根据本发明实施方式的一种图像主色确定方法的流程图;
图2示出RGB颜色空间的示意图;
图3示出根据本发明实施方式划分颜色子空间的示意图;
图4示出根据本发明实施方式的一种颜色聚类的流程图;
图5示出根据本发明实施方式的另一种颜色聚类的流程图;
图6示出根据本发明实施方式的一种人脸图像调整方法的流程图;
图7示出根据本发明实施方式识别脸部区域和脸部特征点的示意图;
图8示出根据本发明实施方式进行人脸图像调整的示意图;
图9示出根据本发明实施方式确定鼻部点与脸部中位线之间偏差的示意图;
图10示出根据本发明实施方式的一种图像合成的流程图;
图11示出根据本发明实施方式的一种生成背景图像的流程图;
图12示出根据本发明实施方式对目标图像划分子图像的示意图;
图13示出根据本发明实施方式的渐变方向的示意图;
图14示出根据本发明实施方式合成目标图像与背景图像的示意图;
图15示出根据本发明实施方式的目标图像的像素点分布示意图;
图16示出根据本发明实施方式得到目标图像主色的示意图;
图17示出根据本发明实施方式得到歌曲封面图像的示意图;
图18示出了根据本发明实施方式的一种图像主色确定装置的结构方框图;
图19示出了根据本发明实施方式的存储介质的示意图;以及
图20示出了根据本发明实施方式的电子设备的结构方框图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提供一种图像主色确定方法、图像主色确定装置、计算机可读存储介质及电子设备。
在本文中,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐述本发明的原理和精神。
发明概述
本发明人发现,实际应用中,图像中的颜色分布可能较为复杂,例如图像中多个颜色都占有较高的比重,特别是这些颜色可能相互交织穿插,形成复杂的背景、图案或纹理,或者图像中存在多个相似颜色,如天空、海水一般由不同的蓝色融合而成,等等。针对这些较为复杂的情况,如果将直方图分块较多并提取出多个主色,很容易导致所提取的多个主色之间差别过大,将该多个主色搭配在一起很不协调。现有技术中为了避免上述问题一般选择将直方图进行较小的分块选取主色,但是这种方式会导致所选取的主色色值太单一,从而导致利用该主色组成的背景色均为纯色或近似纯色,视觉体验较差。
鉴于上述内容,本发明的基本思想在于:提供一种图像主色确定方法、图像主色确定装置、计算机可读存储介质及电子设备,基于预先划分的颜色子空间,统计目标图像中各像素点所属的颜色子空间,得到各颜色子空间中的像素点数量;然后对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各颜色子空间划分到其代表色所属的颜色类别中;再分别对每个颜色类别中的代表色进行加权,得到每个颜色类别的主色;最后按照各颜色类别中的像素点数量排列各颜色类别的主色,从中选取第二预设数量的主色,作为目标图像的主色。一方面,本方案通过颜色子空间的聚类得到颜色类别,颜色类别的划分与目标图像的颜色分布特征相适应,实现了对目标图像中相似颜色的聚类;当目标图像颜色分布复杂时,也能够实现合理且精准的颜色聚类。另一方面,对颜色类别中的代表色进行加权,所得到的主色与各代表色之间较为协调,所得到的主色不依赖于目标图像中的单一颜色;当目标图像颜色分布复杂时,主色色值更加丰富,颜色搭配更协调,从而准确模拟视觉对目标图像颜色的综合感受,主色的准确度较高。再一方面,本方案通过对目标图像中的像素点进行聚类和加权计算即可实现,计算量较低,实用性较高。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
需要注意的是,下述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
在音乐App(Application,应用程序)中,可以对歌曲生成封面图像:搜索演唱歌曲的艺人照片,通过本发明实施方式确定照片的主色,然后根据该主色生成对应的背景色,将照片与背景色合成一张个性化的封面图像。在图片检索的场景中,利用本发明实施方式对图片提取主色,以不同图片之间主色的相似性,对图片进行粗匹配,以缩小图片检索的范围,进而实施精确检索。
示例性方法
本发明的示例性实施方式首先提供一种图像主色确定方法,如图1所示,该方法可以包括以下步骤S110至S140:
步骤S110,基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的颜色子空间,得到各颜色子空间中的像素点数量。
颜色空间通过空间的形式对颜色进行描述,每种颜色在颜色空间中都有对应的坐标。本示例性实施方式中的颜色空间可以采用RGB(Red红,Green绿,Blue蓝)、HSV(Hue色调,Saturation饱和度,Value明度)、Lab(一种测定颜色的国际标准,Light亮度,a和b表示两个颜色通道)等。图2示出了RGB颜色空间的示意图,以三个坐标来描述颜色空间,三个坐标分别为RGB三个颜色分量,每个颜色分量用0~255表示,在RGB颜色模式下,每个颜色在RGB颜色空间中都有对应的点。
颜色空间中包含了所有的颜色,将其预先划分为颜色子空间,每个颜色子空间内的颜色相近。
在一种实施方式中,颜色子空间可以由颜色空间均匀划分得到,各颜色子空间具有相同的颜色跨度,即各颜色子空间的大小相同。图3为对RGB颜色空间进行均匀划分的示意图,通过分别对RGB颜色空间的R、G、B分别进行K等分,得到颜色子空间,K为大于或等于2的正整数。这样每个颜色子空间在R、G、B上的跨度均为256/K。举例来说,如k=8,对R、G、B分别进行8等分,颜色子空间共有8*8*8=512个,包括:(0,0,0)~(32,32,32)(即图3中的颜色子空间1),(32,0,0)~(64,32,32),(0,32,0)~(32,64,32),(0,0,32)~(32,32,64)等。此外也可以对R、G、B分别以不同的尺度进行等分,例如人眼对绿色最敏感,可以对G进行8等分,对R和B进行4等分,这样得到的颜色子空间也具有相同的颜色跨度,只是在R、G、B三个方向上的跨度不同。
在另一种实施方式中,也可以对颜色空间进行非均匀划分,例如在颜色亮度较高和较低的区域采用较大的跨度进行粗划分,颜色子空间的数量较少,在颜色亮度适中的区域采用较小的跨度进行细划分,颜色子空间的数量较多。
实际应用中可以根据颜色空间的特点进行具体划分,本发明对此不做限定。
目标图像是需要确定主色的图像。在预先确定颜色子空间的情况下,可以统计目标图像中每个像素点属于哪个颜色子空间,从而得到每个颜色子空间中的像素点数量。实质上,通过颜色子空间对目标图像的像素点进行了一次聚类。
当然,可能存在一些颜色子空间,没有任何像素点落入其中,即这些颜色子空间中的像素点数量为0,可以滤除这些颜色子空间,以减少后续计算量。
步骤S120,对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各颜色子空间划分到其代表色所属的颜色类别中。
其中,颜色子空间的代表色是指视觉上最能够概括该颜色子空间的颜色。在一种实施方式中,可以对颜色子空间中的像素点求像素平均值,得到颜色子空间的代表色,这样结合了目标图像的像素点,所得到的代表色能够反映目标图像的颜色特征。在另一种实施方式中,可以以颜色子空间的中心点作为代表色。
由于目标图像一般无法覆盖到所有的色系,其像素点在颜色子空间中的分布会出现局部稀疏的情况,如果用颜色子空间来表征像素点的分布,会存在一定的冗余信息。因此本示例性实施方式对颜色子空间进行聚类。先确定第一预设数量E,E小于颜色子空间的数量,具体可以根据经验或实际需求而定,例如颜色子空间的数量为512,E可以取值为8;然后将各颜色子空间的代表色聚合为E个颜色类别,例如可以采用K-means(K均值)算法,以第一预设数量E为K-means中的K值;对于各颜色子空间,将其划分到其代表色所属的颜色类别中,例如颜色子空间1的代表色属于颜色类别1,则颜色子空间1属于颜色类别1。
需要说明的是,在对代表色进行聚类时,一般需要计算颜色之间的距离。本示例性实施方式可以直接计算颜色空间中两颜色点之间的距离,也可以通过以下公式(1)进行颜色距离的度量:
其中,
ΔR=C1,R-C2,R (3)
ΔG=C1,G-C2,G (4)
ΔB=C1,B-C2,B (5)
C1,R表示颜色C1的R通道值,C2,G表示颜色C2的G通道值。为C1和C2的R通道平均值,ΔR、ΔG、ΔB分别为两颜色的R通道差值、G通道差值和B通道差值。
举例来说,在颜色空间的R、G、B分别进行K等分以划分颜色子空间的情况下,每个颜色子空间中相距最远的两个颜色之间的距离可以通过以下公式(6)计算得到:
在一种可选的实施方式中,参考图4所示,可以通过以下步骤S410和S420实现聚类:
步骤S410,按照像素点数量由高到低排列各颜色子空间,从中选取第一预设数量的颜色子空间,分别将其代表色作为聚类中心颜色,得到第一预设数量的聚类中心颜色。
在一种实施方式中,在确定第一预设数量E的情况下,按照像素点数量由高到低排列各颜色子空间后,从第一个开始,依次选取E个颜色子空间,其代表色即E个聚类中心颜色。
在另一种实施方式中,在依次选取E个颜色子空间时,可以设置一定的条件,满足条件的颜色子空间被选取,否则不被选取,这样所选取的E个颜色子空间不一定是排在最前的E个。
举例来说,可以参考图5所示,通过以下步骤S510至S550实现:
步骤S510,按照像素点数量由高到低排列各颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;
步骤S520,从第二颜色子空间开始,依次计算每个颜色子空间的代表色与第一聚类中心颜色的距离;
步骤S530,若距离大于预设颜色跨度,则确定该代表色为聚类中心颜色;
步骤S540,若距离小于预设颜色跨度,则跳过该代表色,计算下一颜色子空间的代表色与第一聚类中心颜色的距离;
步骤S550,最后得到第一预设数量的聚类中心颜色,其中包括第一聚类中心颜色。
其中,预设颜色跨度是根据经验或实际需求而设置的阈值,例如可以以公式(6)所计算768/K作为预设颜色跨度。以预设颜色跨度为衡量标准,确保所选取的聚类中心颜色与第一聚类中心颜色的距离大于预设颜色跨度,可以防止聚类中心颜色之间过于接近的情况。具体来说,按照颜色子空间的排列顺序,依次选取一个代表色,计算其与第一聚类中心颜色的距离,如果距离大于预设颜色跨度,则该代表色符合条件,将其添加为一个新的聚类中心颜色,如果距离小于预设颜色跨度,则该代表色不符合条件,不能作为聚类中心颜色。以此循环处理,直到选取了N个聚类中心颜色。
也可以对图5中的判断条件做一定更改,具体来说,当选取下一颜色子空间的代表色时,可以计算其与已确定的每个聚类中心颜色的距离,当这些距离均大于预设颜色跨度时,说明该代表色与已确定的每个聚类中心颜色均不相近,因此可以添加为一个新的聚类中心颜色。
步骤S420,利用聚类中心颜色对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别。
具体来说,在确定E个聚类中心颜色后,对于其余的颜色子空间的代表色,分别计算每个代表色与各聚类中心颜色的距离,以将代表色划分到距离最近的聚类中心颜色所对应的颜色类别中,从而完成颜色子空间的聚类过程,得到N个颜色类别。
在上述步骤S110和S120中,相当于对目标图像的像素点进行了两次聚类,第一次将像素点划分到所属的颜色子空间中,是依据颜色空间本身的特征进行均匀分割;第二次对颜色子空间进行聚类,是依据目标图像的颜色分布特征进行非均匀分割。由此,聚类中心颜色较多地分布于像素点密集的区域,且各聚类中心颜色之间具有一定的距离,从而对目标图像实现了较为合理且精准的颜色聚类。
步骤S130,分别对每个颜色类别中的代表色进行加权,得到每个颜色类别的主色。
其中,颜色类别的主色是指能够概括该颜色类别的一种颜色。由于每个颜色类别可能包含了多个颜色子空间,以颜色子空间的代表色作为颜色类别的主色可能较为片面,因此对代表色进行加权,得到颜色类别的主色。
在一种可选的实施方式中,步骤S130可以包括:在每个颜色类别中,以各颜色子空间中的像素点数量为权重,对各代表色进行加权平均,得到每个颜色类别的主色。举例来说,颜色类别1中包含Z个颜色子空间,其代表色分别为C1、C2、…、CZ,这Z个颜色子空间中的像素点数量分别为S1、S2、…、SZ。计算颜色类别1的主色如下:
通过代表色加权的方式得到主色,计算过程较为平滑,与目标图像的颜色较为协调。
步骤S140,按照各颜色类别中的像素点数量排列各颜色类别的主色,从中选取第二预设数量的主色,作为目标图像的主色。
其中,任一颜色类别中的像素点数量为:该颜色类别所包括的各颜色子空间中的像素点数量之和。例如上述颜色类别1,其像素点数量为Z个颜色子空间的像素点数量之和,即可见,颜色类别中的像素点数量越多,表示该颜色类别在目标图像中所占的比重越高。将各颜色类别的主色排序后,从第一个主色开始,选取第二预设数量的主色,作为最终得到的目标图像的主色。第二预设数量F为正整数,可以根据实际需求设置其数值,一般小于第一预设数量E。例如需要从目标图像中提取两个主色,则F=2,将像素点数量最多的两个颜色类别的主色作为目标图像的主色。
上述图像主色确定方法,可以适用于任意场景的图像,如人们日常拍摄的自然风景图像、建筑图像、人脸图像等。当应用于人脸图像时,人脸部分所占的比例过大或过小,容易导致所确定的主色不准确。本发明示例性实施方式还提供一种人脸图像调整方法,用于对待处理人脸图像进行调整,得到目标图像,该目标图像可用于确定主色。
参考图6所示,人脸图像调整方法可以包括以下步骤S610至S640:
步骤S610,从待处理人脸图像中识别脸部区域和脸部特征点。
其中,待处理人脸图像是指初始的人脸图像,例如可以是用户相册中选取的人脸图像,或是从互联网上搜索某个艺人名得到的艺人人脸图像。在待处理人脸图像中,除了人脸以外,还可能包含其他图像内容,如背景、周围的建筑、人的身体等,并且人脸不一定处于居中的位置。为了实现对脸部的调整,本示例性实施方式首先识别图像中的脸部区域和脸部特征点,例如可以采用RetinaFace(一种人脸识别算法),通过对待处理人脸图像进行卷积和人脸目标检测,输出脸部区域和脸部特征点。脸部特征点是指脸部具有代表性的关键点,一般可以包括眼部点、鼻部点和嘴部点。图7示出了识别脸部区域和脸部特征点的示意图,对每张图像进行识别处理,得到矩形的脸部区域的轮廓框,以及五个脸部特征点:两个眼角点(通常是左眼的左侧眼角和右眼的右侧眼角),一个嘴部点和两个嘴角点。由图7可见,在待处理人脸图像中,人脸的姿态非常多样,常常出现侧脸、半侧脸等情况,在这种图像中,所识别的眼角点、嘴角点可能位于脸部边界上,相当于一种近似处理。
步骤S620,基于眼部点和嘴部点确定脸部中位线,根据鼻部点与脸部中位线之间的偏差确定调整参数。
通常认为人脸是左右对称的,脸部中位线即左右两部分之间的对称轴。
在一种实施方式中,如果步骤S610得到两个眼部点和一个嘴部点,则可以将两个眼部点之间的中点和嘴部点连接,得到脸部中位线。
在另一种实施方式中,如果步骤S610得到两个眼角点和两个嘴角点,则可以将两个眼角点之间的中点和两个嘴角点之间的中点连接,得到脸部中位线。参考图8所示,在待处理图像中识别出两个眼角点u1和u2,两个嘴角点u3和u4,以及一个鼻部点u5,连接u1u2的中点和u3u4的中点,得到脸部中位线mid。
在待处理人脸图像中,如果人脸是正脸,则鼻部点位于脸部中位线上,或者距离脸部中位线很近;如果人脸是侧脸,则鼻部点与脸部中位线之间存在偏差,并且侧脸程度越高,偏差越大。因此本示例性实施方式根据鼻部点与脸部中位线之间的偏差确定调整参数,该偏差可以是鼻部点到脸部中位线的距离。
在一种可选的实施方式中,可以确定鼻部点在脸部中位线上的投影点,然后根据鼻部点和投影点之间的位置偏差确定调整参数。参考图9所示,将图8中的五个脸部特征点表示在平面坐标系中,假设u1、u2、u3、u4和u5的坐标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)和(x5,y5),则u1u2的中点坐标为:u3u4的中点坐标为: 由此得到脸部中位线mid为:
y-yc2=k(x-xc2) (8)
这里的k表示斜率,满足
鼻部点u5在mid上的投影点u5'可以是垂直投影点,也可以是u5沿与u1u2(或u3u4)平行的方向延伸到mid上所得到的交点。由于通过这几种方式所得到的投影点u5'的位置相差较小,可以近似认为是同一个点。采用点到直线的距离公式计算u5u5'的长度d,即鼻部点与脸部中位线之间的偏差:
将上述距离d分解到x和y方向上,有如下关系:
Δx=dcosθ,Δy=dsinθ (10)
其中,θ表示u1u2与x轴的夹角,满足:
Δx和Δy即调整参数,具体来说是平移参数,用于将人脸移动到图像居中的位置。
在一种可选的实施方式中,还可以根据鼻部点与脸部中位线之间的偏差,以及预设的偏移系数,确定调整参数。换而言之,在计算调整参数时,可以引入偏移系数。偏移系数用于确定调整的尺度,可以根据经验或实际需求而定。以λ1和λ2分别表示x和y方向的偏移系数,则调整参数为:
Δx=λ1dcosθ,Δy=λ2dsinθ (12)
步骤S630,按照上述调整参数对脸部区域的轮廓框进行调整,以得到裁剪框。
对脸部区域的轮廓框调整的目的主要有两方面:将人脸移动到图像居中的位置;使人脸在图像中所占的比例大小合适。
在一种实施方式中,调整参数包括平移参数,例如可以是上述Δx和Δy。在调整轮廓框时,可以按照预设尺寸均匀拉伸轮廓框,并按照平移参数平移轮廓框,得到裁剪框。其中,预设尺寸可以根据期望裁剪的图像尺寸而定,例如在裁剪头像或者其他相关场景中,用户选择了裁剪尺寸,即预设尺寸。此外,也可以根据脸部区域轮廓框的大小而定,这样可以实现脸部区域的自适应拉伸。例如预设尺寸可以满足:
L=a*max(W,H) (12)
其中,a为预设的拉伸系数,a>1,可以根据经验或实际需求而定,例如可以取a=2;脸部区域的轮廓框为矩形,W和H分别为轮廓框的宽和高;L为预设尺寸,裁剪框为边长为L的正方形。参考上述图8所示,脸部区域的轮廓框为中间较小的矩形框,其宽为W,高为H,且H>W;以a=2计算,则有L=2H;将矩形框向四周均匀拉伸,左右两边的拉伸量为:
上下两边的拉伸量为:
从而得到边长为L的正方形框。
再按照平移参数Δx和Δy进行平移,最终得到虚线所示的裁剪框。
在另一种实施方式中,也可以对脸部区域的轮廓框的角点计算调整量,通过对每个角点调整位置,得到裁剪框。例如,脸部区域轮廓框的左上角点为(xf1,yf1),右下角点为(xf2,yf2),这两个角点经过调整后的坐标分别为(xb1,yb1)、(xb2,yb2),有如下关系:
xb1=xf1-W′+λ1dcosθ (15)
yb1=yf1-H′+λ2dsinθ (16)
xb2=xf2+W′+λ1dcosθ (17)
yb2=yf,+H′+λ2dsinθ (18)
可见,对于每个坐标值的调整主要包括两部分:拉伸量和平移量。其中W'和H'分别表示在x方向和y方向上的拉伸量,如可以采用公式(13)和(14)计算。平移量由调整参数确定。偏移系数λ1和λ2还可以调整平移量与拉伸量之间的相对比例,起到类似于权重的作用,示例性的,λ1和λ2均可以设为50,实际应用中可以根据具体情况调节数值。通过公式(15)~(18)可以计算左上角点和右下角点调整后的位置,从而确定矩形的裁剪框。
步骤S640,通过上述裁剪框裁剪待处理人脸图像,得到目标图像。
将裁剪框所在的区域裁剪出来,得到待处理人脸图像的一幅子图像,即目标图像。由图8可见,虚线部分的裁剪框内,人脸的位置居中,大小也较为合适。
通过图6所示的方法,可以裁剪得到大小、位置均较为合适的人脸图像。可以应用于用户头像的自动裁剪,当用户上传照片做头像时,可以将照片自动裁剪为目标图像,以作为头像。也可以应用于生成歌曲的封面图像,通过对对应的艺人的人脸图像进行调整,得到较为美观的艺人人脸图像,添加背景或其他效果后得到歌曲的封面图像。
在一种可选的实施方式中,参考图10所示,在确定目标图像的主色后,还可以执行以下步骤S1010和S1020:
步骤S1010,根据目标图像的主色生成背景图像;
步骤S1020,合成目标图像和背景图像。
其中,背景图像可以是纯色背景、渐变色背景、纹理背景、图案背景等,其颜色需要和目标图像的主色相搭配,使得最终合成的图像较为美观。
在一种可选的实施方式中,参考图11所示,步骤S1010可以具体通过以下步骤S1110至S1150实现:
步骤S1110,将目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数。
其中,m表示将目标图像划分为m行,n表示将目标图像划分为n列,由此得到m*n个子图像,m和n可以根据经验或实际需求而设定,例如目标图像的尺寸越大,m和n越大。通常可以对目标图像进行均匀划分,使每个子图像的大小相等。图12示出了将目标图像均匀划分为2*2个子图像,子图像12表示位于目标图像中第1行、第2列
步骤S1120,统计每个子图像中与主色处于同一色阶的像素数量,以qij表示子图像ij中与主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n。
与主色处于同一色阶的其他颜色,视觉会对其产生与主色相近的感受。对每个子图像统计与主色处于同一色阶的像素数量q,可以得到主色所在色阶在各个子图像上的分布情况。
在一种可选的实施方式中,如果F≥2,F为第二预设数量,即从目标图像中确定了至少两个主色,则可以仅统计每个子图像中与第一主色处于同一色阶的像素数量。第一主色是在步骤S140中按照像素点数量从多到少排列各颜色类别的主色时,排在第一位的主色,也是目标图像中占比重最高的主色。
步骤S1130,计算方向指数。
具体可以通过以下公式(19)计算方向指数f:
在公式(19)中,分子项表示对目标图像中每一行的左右相邻两子图像计算q的差值(即与主色处于同一色阶的像素数量的差值),然后进行累加,再对不同行的差值进行累加,是对q在目标图像横向上的梯度进行度量;分母项表示对目标图像中每一列的上下相邻两子图像计算q的差值,然后进行累加,再对不同列的差值进行累加,是对q在目标图像纵向上的梯度进行度量;是对差值求平均。由此得到的方向指数f实际表示了q在横向与纵向上的梯度之比,可以体现出主色色阶在目标图像中的分布趋势。
步骤S1140,根据方向指数确定渐变方向。
一般可以用方向指数f与1进行比较,f>1说明主色色阶以横向分布为主要区域,可以确定横向的渐变方向(即由左到右),f<1说明主色色阶以纵向分布为主要区域,可以确定纵向的渐变方向(即由上到下)。
在一种可选的实施方式中,可以预先设置比例阈值T1、T2和T3,满足0<T1<T2<T3,作为衡量方向变化趋势的标准,其数值可以根据经验或实际需求而确定,例如T1=0.9,T2=1,T3=1.1。
当f<T1或f>T3时,确定渐变方向为由上到下,需要说明,由上到下和由下到上实质上是相同的渐变方向,本示例性实施方式不做特别区分。
当T1<f<T2时,确定渐变方向为左上到右下,需要说明,由左上到右下和由右下到左上实质上是相同的渐变方向,本示例性实施方式不做特别区分。
当T2<f<T3时,确定渐变方向为左下到右上,需要说明,由左下到右上和由右上到左下实质上是相同的渐变方向,本示例性实施方式不做特别区分。
此外,还可能存在一种特殊情况,即无法计算出有效的f值。对于该情况,可以确定渐变方向为由左到右。
图13示出了四种渐变方向的效果,依次为:由上到下,由左到右,由左上到右下,由左下到右上。
步骤S1150,按照上述渐变方向生成主色之间或者主色与预设颜色之间的渐变色背景图像。
渐变色背景图像可以基于两种或两种以上的颜色形成,在这些颜色之间按照线性插值的方法得到一系列的渐变色,得到渐变效果的背景图像。
在一种实施方式中,如果F≥2,F为第二预设数量,即从目标图像中确定了至少两个主色,则可以按照上述渐变方向,生成由第一主色渐变至第F主色的渐变色背景图像。第一主色为按照像素点数量从多到少排列各颜色类别的主色时,排在第一位的主色,第F主色为排在第F位的主色。例如从目标图像中确定了三个主色,则选取其中的第一主色和第三主色,形成由第一主色渐变为第三主色的背景图像。
在另一种实施方式中,如果从目标图像中仅确定了一个主色,则可以以该主色与预设颜色形成渐变色背景图像,预设颜色可以是白色、黑色等任意合适的颜色。
通过图11中的方式,可以得到与目标图像颜色梯度相适应的渐变方向,使得渐变色背景图像与目标图像在视觉上更加协调。
在合成目标图像和背景图像时,可以将目标图像置于背景图像中居中的位置,使得背景图像形成边缘背景的效果。例如在生成歌曲的封面图像时,目标图像通过对艺人的人脸图像进行裁剪而得到,如图14所示,最终合成目标图像和背景图像,得到该艺人的歌曲的封面图像,还可以添加文字或其他装饰效果等。
下面以生成歌曲封面图像的一个实例,对本示例性实施方式的方法过程做进一步说明。
首先获取为歌曲A生成封面图像的任务,确定演唱歌曲A的艺人名为B;
然后根据艺人名B搜索得到艺人B的人脸图像,可以在互联网上搜索,也可以在内部的图像数据库中搜索;
利用图6所示的方法对艺人B的人脸图像进行调整,得到图15中左侧的目标图像;
将目标图像的像素点映射到RGB颜色空间上,其分布如图15中右侧所示;
预先将RGB颜色空间划分为K*K*K个颜色子空间,此处K取8,则共有512个颜色子空间,利用公式(6)计算每个颜色子空间中的最大颜色距离为:
将每个像素点划分至对应的颜色子空间后,计算每个颜色子空间的代表色,以96为预设颜色跨度,通过图5所示的方法确定8个聚类中心颜色,再对颜色子空间进行聚类,得到8个颜色类别;
对8个颜色类别中的代表色进行加权,得到8个颜色类别的主色,并按照像素点数量由多到少排列,图16示出了排列靠前的5个主色,选取其中第一和第二主色,作为目标图像的主色;
通过计算目标图像的方向指数,确定渐变方向为由上到下,从而生成第一和第二主色之间的渐变色背景图像;
如图17所示,合成目标图像和背景图像,并添加文字、logo(标记)等,生成一张歌曲A的个性化封面图像。
由此,对于同一首歌曲,搜索得到艺人的不同照片,通过本示例性实施方式进行照片调整、主色确定以及背景图像合成,可以得到美观且多样化的封面图像。
示例性装置
在介绍了本发明示例性实施方式的方法之后,接下来,参考图18对本发明示例性实施方式的图像主色确定装置进行说明。
如图18所示,该图像主色确定装置1800可以包括:
统计模块1810,用于基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的颜色子空间,得到各颜色子空间中的像素点数量;
聚类模块1820,用于对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各颜色子空间划分到其代表色所属的颜色类别中;
加权模块1830,用于分别对每个颜色类别中的代表色进行加权,得到每个颜色类别的主色;
排列模块1840,用于按照各颜色类别中的像素点数量排列各颜色类别的主色,从中选取第二预设数量的主色,作为目标图像的主色;
其中,任一颜色类别中的像素点数量为:该颜色类别所包括的各颜色子空间中的像素点数量之和。
在一种可选的实施方式中,加权模块1830,被配置为:
在每个颜色类别中,以各颜色子空间中的像素点数量为权重,对各代表色进行加权平均,得到每个颜色类别的主色。
在一种可选的实施方式中,任一颜色子空间的代表色通过以下方式确定:
对该颜色子空间中的像素点求像素平均值,得到代表色。
在一种可选的实施方式中,颜色子空间由颜色空间均匀划分得到,各颜色子空间具有相同的颜色跨度。
在一种可选的实施方式中,聚类模块1820可以包括:
聚类中心确定单元,用于按照像素点数量由高到低排列各颜色子空间,从中选取第一预设数量的颜色子空间,分别将其代表色作为聚类中心颜色,得到第一预设数量的聚类中心颜色;
代表色聚类单元,用于利用聚类中心颜色对各颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别。
在一种可选的实施方式中,聚类中心确定单元,被配置为:
按照像素点数量由高到低排列各颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;
从第二颜色子空间开始,依次计算每个颜色子空间的代表色与第一聚类中心颜色的距离;
若距离大于预设颜色跨度,则确定该代表色为聚类中心颜色;
若距离小于预设颜色跨度,则跳过该代表色,计算下一颜色子空间的代表色与第一聚类中心颜色的距离;
最后得到第一预设数量的聚类中心颜色,第一预设数量的聚类中心颜色包括第一聚类中心颜色。
在一种可选的实施方式中,代表色聚类单元,被配置为:
分别计算每个颜色子空间的代表色与各聚类中心颜色的距离,以将代表色划分到距离最近的聚类中心颜色所对应的颜色类别中。
在一种可选的实施方式中,颜色空间为RGB颜色空间,颜色子空间通过对RGB颜色空间的R、G、B分别进行K等分得到,K为大于或等于2的正整数。
在一种可选的实施方式中,第一预设数量小于颜色子空间的数量,第二预设数量小于第一预设数量。
在一种可选的实施方式中,图像主色确定装置1800还包括目标图像获取模块1850。目标图像获取模块1850包括以下单元:
特征点识别单元,用于从待处理人脸图像中识别脸部区域和脸部特征点,脸部特征点至少包括眼部点、鼻部点和嘴部点;
调整参数确定单元,用于基于眼部点和嘴部点确定脸部中位线,根据鼻部点与脸部中位线之间的偏差确定调整参数;
轮廓框调整单元,用于按照调整参数对脸部区域的轮廓框进行调整,以得到裁剪框;
人脸图像裁剪单元,用于通过裁剪框裁剪待处理人脸图像,得到目标图像。
在一种可选的实施方式中,眼部点包括两个眼角点,嘴部点包括两个嘴角点。调整参数确定单元,被配置为:
将两个眼角点之间的中点和两个嘴角点之间的中点连接,得到脸部中位线。
在一种可选的实施方式中,调整参数确定单元,被配置为:
确定鼻部点在脸部中位线上的投影点;
根据鼻部点和投影点之间的位置偏差确定调整参数。
在一种可选的实施方式中,调整参数确定单元,被配置为:
根据鼻部点与脸部中位线之间的偏差,以及预设的偏移系数,确定调整参数。
在一种可选的实施方式中,调整参数包括平移参数。轮廓框调整单元,被配置为:
按照预设尺寸均匀拉伸脸部区域的轮廓框,并按照平移参数平移轮廓框,得到裁剪框。
在一种可选的实施方式中,预设尺寸满足:L=a*max(W,H);其中,L为预设尺寸;a为预设的拉伸系数,a>1;脸部区域的轮廓框为矩形,W和H分别为轮廓框的宽和高;裁剪框为边长为L的正方形。
在一种可选的实施方式中,图像主色确定装置1800还包括图像合成模块1860,用于根据目标图像的主色生成背景图像,以及合成目标图像和背景图像。
在一种可选的实施方式中,图像合成模块包括:
目标图像划分单元,用于将目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数;
色阶统计单元,用于统计每个子图像中与主色处于同一色阶的像素数量,以qij表示子图像ij中与主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n;
方向指数计算单元,用于计算方向指数
渐变方向确定单元,用于根据方向指数确定渐变方向;
背景图像生成单元,用于按照渐变方向生成主色之间或者主色与预设颜色之间的渐变色背景图像。
在一种可选的实施方式中,渐变方向确定单元,被配置为:
当f<T1或f>T3时,确定渐变方向为由上到下;当T1<f<T2时,确定渐变方向为左上到右下;当T2<f<T3时,确定渐变方向为左下到右上;其中,T1、T2和T3均为预设的比例阈值,且0<T1<T2<T3。
在一种可选的实施方式中,渐变方向确定单元,被配置为:
当时,确定渐变方向为由左到右。
在一种可选的实施方式中,如果F≥2,F为第二预设数量,则色阶统计单元,被配置为:
统计每个子图像中与第一主色处于同一色阶的像素数量;第一主色为按照像素点数量从多到少排列各颜色类别的主色时,排在第一位的主色。
在一种可选的实施方式中,如果F≥2,F为第二预设数量,则背景图像生成单元,被配置为:
按照渐变方向,生成由第一主色渐变至第F主色的渐变色背景图像;第一主色为按照像素点数量从多到少排列各颜色类别的主色时,排在第一位的主色,第F主色为排在第F位的主色。
在一种可选的实施方式中,目标图像通过对艺人的人脸图像进行裁剪而得到。图像合成模块1860,还用于合成目标图像和背景图像,得到艺人的歌曲的封面图像。
在一种可选的实施方式中,艺人的人脸图像通过以下方式获取:
获取为歌曲生成封面图像的任务,确定歌曲的艺人名;
根据艺人名搜索得到艺人的人脸图像。
此外,本发明实施方式的其他具体细节在上述图像主色确定方法的发明实施方式中已经详细说明,在此不再赘述。
示例性存储介质
参考图19对本发明示例性实施方式的存储介质进行说明。
如图19所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品1900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
该程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RE等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言-诸如Java、C++等,还包括常规的过程式程序设计语言-诸如"C"语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
示例性电子设备
参考图20对本发明示例性实施方式的电子设备进行说明。
图20显示的电子设备2000仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图20所示,电子设备2000以通用计算设备的形式表现。电子设备2000的组件可以包括但不限于:至少一个处理单元2010、至少一个存储单元2020、连接不同系统组件(包括存储单元2020和处理单元2010)的总线2030、显示单元2040。
其中,存储单元存储有程序代码,程序代码可以被处理单元2010执行,使得处理单元2010执行本说明书上述"示例性方法"部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元2010可以执行如图1、图4或图5所示的方法步骤等。
存储单元2020可以包括易失性存储单元,例如随机存取存储单元(RAM)2021和/或高速缓存存储单元2022,还可以进一步包括只读存储单元(ROM)2023。
存储单元2020还可以包括具有一组(至少一个)程序模块2025的程序/实用工具2024,这样的程序模块2025包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线2030可以包括数据总线、地址总线和控制总线。
电子设备2000也可以与一个或多个外部设备2100(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(I/O)接口2050进行。电子设备2000还包括显示单元2040,其连接到输入/输出(I/O)接口2050,用于进行显示。并且,电子设备2000还可以通过网络适配器2060与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器2060通过总线2030与电子设备2000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备2000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了装置的若干模块或子模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (44)
1.一种图像主色确定方法,其特征在于,包括:
基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的所述颜色子空间,得到各所述颜色子空间中的像素点数量;
对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各所述颜色子空间划分到其代表色所属的所述颜色类别中;
分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色;
按照各所述颜色类别中的像素点数量排列各所述颜色类别的主色,从中选取第二预设数量的所述主色,作为所述目标图像的主色;
其中,任一所述颜色类别中的像素点数量为:所述颜色类别所包括的各所述颜色子空间中的像素点数量之和;
在确定所述目标图像的主色后,所述方法还包括:
根据所述主色生成背景图像;
合成所述目标图像和所述背景图像;
其中,所述根据所述主色生成背景图像,包括:
将所述目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数;
统计每个所述子图像中与所述主色处于同一色阶的像素数量,以qij表示子图像ij中与所述主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n;
计算方向指数 ;
根据所述方向指数确定渐变方向;
按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像。
2.根据权利要求1所述的方法,其特征在于,所述分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色,包括:
在每个所述颜色类别中,以各所述颜色子空间中的像素点数量为权重,对各所述代表色进行加权平均,得到每个所述颜色类别的主色。
3.根据权利要求1所述的方法,其特征在于,任一所述颜色子空间的代表色通过以下方式确定:
对所述颜色子空间中的像素点求像素平均值,得到所述颜色子空间的代表色。
4.根据权利要求1所述的方法,其特征在于,所述颜色子空间由所述颜色空间均匀划分得到,各所述颜色子空间具有相同的颜色跨度。
5.根据权利要求4所述的方法,其特征在于,所述对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,包括:
按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色;
利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到所述第一预设数量的颜色类别。
6.根据权利要求5所述的方法,其特征在于,所述按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色,包括:
按照像素点数量由高到低排列各所述颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;
从第二颜色子空间开始,依次计算每个所述颜色子空间的代表色与所述第一聚类中心颜色的距离;
若所述距离大于预设颜色跨度,则确定所述代表色为聚类中心颜色;
若所述距离小于所述预设颜色跨度,则跳过所述代表色,计算下一所述颜色子空间的代表色与所述第一聚类中心颜色的距离;
得到第一预设数量的聚类中心颜色,所述第一预设数量的聚类中心颜色包括所述第一聚类中心颜色。
7.根据权利要求5所述的方法,其特征在于,所述利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,包括:
分别计算每个所述颜色子空间的代表色与各所述聚类中心颜色的距离,以将所述代表色划分到距离最近的所述聚类中心颜色所对应的颜色类别中。
8.根据权利要求4所述的方法,其特征在于,所述颜色空间为RGB颜色空间,所述颜色子空间通过对所述RGB颜色空间的R、G、B分别进行K等分得到,K为大于或等于2的正整数。
9.根据权利要求1所述的方法,其特征在于,所述第一预设数量小于所述颜色子空间的数量,所述第二预设数量小于所述第一预设数量。
10.根据权利要求1所述的方法,其特征在于,所述目标图像通过以下方式获取:
从待处理人脸图像中识别脸部区域和脸部特征点,所述脸部特征点至少包括眼部点、鼻部点和嘴部点;
基于所述眼部点和所述嘴部点确定脸部中位线,根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数;
按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框;
通过所述裁剪框裁剪所述待处理人脸图像,得到所述目标图像。
11.根据权利要求10所述的方法,其特征在于,所述眼部点包括两个眼角点,所述嘴部点包括两个嘴角点;
所述基于所述眼部点和所述嘴部点确定脸部中位线,包括:
将所述两个眼角点之间的中点和所述两个嘴角点之间的中点连接,得到所述脸部中位线。
12.根据权利要求10所述的方法,其特征在于,所述根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数,包括:
确定所述鼻部点在所述脸部中位线上的投影点;
根据所述鼻部点和所述投影点之间的位置偏差确定所述调整参数。
13.根据权利要求10所述的方法,其特征在于,所述根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数,包括:
根据所述鼻部点与所述脸部中位线之间的偏差,以及预设的偏移系数,确定所述调整参数。
14.根据权利要求10所述的方法,其特征在于,所述调整参数包括平移参数;
所述按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框,包括:
按照预设尺寸均匀拉伸所述脸部区域的轮廓框,并按照所述平移参数平移所述轮廓框,得到所述裁剪框。
15.根据权利要求14所述的方法,其特征在于,所述预设尺寸满足:
;
其中,L为所述预设尺寸;a为预设的拉伸系数,a>1;所述脸部区域的轮廓框为矩形,W和H分别为所述轮廓框的宽和高;所述裁剪框为边长为L的正方形。
16.根据权利要求1所述的方法,其特征在于,所述根据所述方向指数确定渐变方向,包括:
当f<T1或f>T3时,确定所述渐变方向为由上到下;
当T1<f<T2时,确定所述渐变方向为左上到右下;
当T2<f<T3时,确定所述渐变方向为左下到右上;
其中,T1、T2和T3均为预设的比例阈值,且0<T1<T2<T3。
17.根据权利要求1所述的方法,其特征在于,
当时,确定所述渐变方向为由左到右。
18.根据权利要求1所述的方法,其特征在于,如果F≥2,F为所述第二预设数量,则所述统计每个所述子图像中与所述主色处于同一色阶的像素数量,包括:
统计每个所述子图像中与第一主色处于同一色阶的像素数量;
所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色。
19.根据权利要求1所述的方法,其特征在于,如果F≥2,F为所述第二预设数量,则所述按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像,包括:
按照所述渐变方向,生成由第一主色渐变至第F主色的渐变色背景图像;
所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色,所述第F主色为排在第F位的主色。
20.根据权利要求1所述的方法,其特征在于,所述目标图像通过对艺人的人脸图像进行裁剪而得到;
所述合成所述目标图像和所述背景图像,包括:
合成所述目标图像和所述背景图像,得到所述艺人的歌曲的封面图像。
21.根据权利要求20所述的方法,其特征在于,所述艺人的人脸图像通过以下方式获取:
获取为歌曲生成封面图像的任务,确定所述歌曲的艺人名;
根据所述艺人名搜索得到所述艺人的人脸图像。
22.一种图像主色确定装置,其特征在于,包括:
统计模块,用于基于预先对颜色空间划分所得到的颜色子空间,统计目标图像中各像素点所属的所述颜色子空间,得到各所述颜色子空间中的像素点数量;
聚类模块,用于对各所述颜色子空间的代表色进行聚类,得到第一预设数量的颜色类别,并将各所述颜色子空间划分到其代表色所属的所述颜色类别中;
加权模块,用于分别对每个所述颜色类别中的所述代表色进行加权,得到每个所述颜色类别的主色;
排列模块,用于按照各所述颜色类别中的像素点数量排列各所述颜色类别的主色,从中选取第二预设数量的所述主色,作为所述目标图像的主色;
其中,任一所述颜色类别中的像素点数量为:所述颜色类别所包括的各所述颜色子空间中的像素点数量之和;
所述装置还包括图像合成模块,用于根据所述目标图像的主色生成背景图像,以及合成所述目标图像和所述背景图像;
所述图像合成模块包括:
目标图像划分单元,用于将所述目标图像划分为m*n个子图像,m和n均为大于或等于2的正整数;
色阶统计单元,用于统计每个所述子图像中与所述主色处于同一色阶的像素数量,以qij表示子图像ij中与所述主色处于同一色阶的像素数量,其中i、j分别表示子图像ij位于第i行、第j列,i≤m,j≤n;
方向指数计算单元,用于计算方向指数;
渐变方向确定单元,用于根据所述方向指数确定渐变方向;
背景图像生成单元,用于按照所述渐变方向生成所述主色之间或者所述主色与预设颜色之间的渐变色背景图像。
23.根据权利要求22所述的装置,其特征在于,所述加权模块,被配置为:
在每个所述颜色类别中,以各所述颜色子空间中的像素点数量为权重,对各所述代表色进行加权平均,得到每个所述颜色类别的主色。
24.根据权利要求22所述的装置,其特征在于,任一所述颜色子空间的代表色通过以下方式确定:
对所述颜色子空间中的像素点求像素平均值,得到所述颜色子空间的代表色。
25.根据权利要求22所述的装置,其特征在于,所述颜色子空间由所述颜色空间均匀划分得到,各所述颜色子空间具有相同的颜色跨度。
26.根据权利要求25所述的装置,其特征在于,所述聚类模块包括:
聚类中心确定单元,用于按照像素点数量由高到低排列各所述颜色子空间,从中选取第一预设数量的所述颜色子空间,分别将其代表色作为聚类中心颜色,得到所述第一预设数量的聚类中心颜色;
代表色聚类单元,用于利用所述聚类中心颜色对各所述颜色子空间的代表色进行聚类,得到所述第一预设数量的颜色类别。
27.根据权利要求26所述的装置,其特征在于,所述聚类中心确定单元,被配置为:
按照像素点数量由高到低排列各所述颜色子空间,确定第一颜色子空间的代表色为第一聚类中心颜色;
从第二颜色子空间开始,依次计算每个所述颜色子空间的代表色与所述第一聚类中心颜色的距离;
若所述距离大于预设颜色跨度,则确定所述代表色为聚类中心颜色;
若所述距离小于所述预设颜色跨度,则跳过所述代表色,计算下一所述颜色子空间的代表色与所述第一聚类中心颜色的距离;
得到第一预设数量的聚类中心颜色,所述第一预设数量的聚类中心颜色包括所述第一聚类中心颜色。
28.根据权利要求26所述的装置,其特征在于,所述代表色聚类单元,被配置为:
分别计算每个所述颜色子空间的代表色与各所述聚类中心颜色的距离,以将所述代表色划分到距离最近的所述聚类中心颜色所对应的颜色类别中。
29.根据权利要求25所述的装置,其特征在于,所述颜色空间为RGB颜色空间,所述颜色子空间通过对所述RGB颜色空间的R、G、B分别进行K等分得到,K为大于或等于2的正整数。
30.根据权利要求22所述的装置,其特征在于,所述第一预设数量小于所述颜色子空间的数量,所述第二预设数量小于所述第一预设数量。
31.根据权利要求22所述的装置,其特征在于,所述图像主色确定装置还包括目标图像获取模块;所述目标图像获取模块包括:
特征点识别单元,用于从待处理人脸图像中识别脸部区域和脸部特征点,所述脸部特征点至少包括眼部点、鼻部点和嘴部点;
调整参数确定单元,用于基于所述眼部点和所述嘴部点确定脸部中位线,根据所述鼻部点与所述脸部中位线之间的偏差确定调整参数;
轮廓框调整单元,用于按照所述调整参数对所述脸部区域的轮廓框进行调整,以得到裁剪框;
人脸图像裁剪单元,用于通过所述裁剪框裁剪所述待处理人脸图像,得到所述目标图像。
32.根据权利要求31所述的装置,其特征在于,所述眼部点包括两个眼角点,所述嘴部点包括两个嘴角点;
所述调整参数确定单元,被配置为:
将所述两个眼角点之间的中点和所述两个嘴角点之间的中点连接,得到所述脸部中位线。
33.根据权利要求31所述的装置,其特征在于,所述调整参数确定单元,被配置为:
确定所述鼻部点在所述脸部中位线上的投影点;
根据所述鼻部点和所述投影点之间的位置偏差确定所述调整参数。
34.根据权利要求31所述的装置,其特征在于,所述调整参数确定单元,被配置为:
根据所述鼻部点与所述脸部中位线之间的偏差,以及预设的偏移系数,确定所述调整参数。
35.根据权利要求31所述的装置,其特征在于,所述调整参数包括平移参数;
所述轮廓框调整单元,被配置为:
按照预设尺寸均匀拉伸所述脸部区域的轮廓框,并按照所述平移参数平移所述轮廓框,得到所述裁剪框。
36.根据权利要求35所述的装置,其特征在于,所述预设尺寸满足:
;
其中,L为所述预设尺寸;a为预设的拉伸系数,a>1;所述脸部区域的轮廓框为矩形,W和H分别为所述轮廓框的宽和高;所述裁剪框为边长为L的正方形。
37.根据权利要求22所述的装置,其特征在于,所述渐变方向确定单元,被配置为:
当f<T1或f>T3时,确定所述渐变方向为由上到下;
当T1<f<T2时,确定所述渐变方向为左上到右下;
当T2<f<T3时,确定所述渐变方向为左下到右上;
其中,T1、T2和T3均为预设的比例阈值,且0<T1<T2<T3。
38.根据权利要求22所述的装置,其特征在于,所述渐变方向确定单元,被配置为:
当时,确定所述渐变方向为由左到右。
39.根据权利要求22所述的装置,其特征在于,如果F≥2,F为所述第二预设数量,则所述色阶统计单元,被配置为:
统计每个所述子图像中与第一主色处于同一色阶的像素数量;
所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色。
40.根据权利要求22所述的装置,其特征在于,如果F≥2,F为所述第二预设数量,则所述背景图像生成单元,被配置为:
按照所述渐变方向,生成由第一主色渐变至第F主色的渐变色背景图像;
所述第一主色为按照像素点数量从多到少排列各所述颜色类别的主色时,排在第一位的主色,所述第F主色为排在第F位的主色。
41.根据权利要求22所述的装置,其特征在于,所述目标图像通过对艺人的人脸图像进行裁剪而得到;
所述图像合成模块,还用于合成所述目标图像和所述背景图像,得到所述艺人的歌曲的封面图像。
42.根据权利要求41所述的装置,其特征在于,所述艺人的人脸图像通过以下方式获取:
获取为歌曲生成封面图像的任务,确定所述歌曲的艺人名;
根据所述艺人名搜索得到所述艺人的人脸图像。
43.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~21任一项所述的方法。
44.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~21任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010285807.XA CN111401316B (zh) | 2020-04-13 | 2020-04-13 | 图像主色确定方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010285807.XA CN111401316B (zh) | 2020-04-13 | 2020-04-13 | 图像主色确定方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111401316A CN111401316A (zh) | 2020-07-10 |
CN111401316B true CN111401316B (zh) | 2023-08-15 |
Family
ID=71429494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010285807.XA Active CN111401316B (zh) | 2020-04-13 | 2020-04-13 | 图像主色确定方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111401316B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037303A (zh) * | 2020-08-31 | 2020-12-04 | 深圳市欢太科技有限公司 | 主题展示卡片的卡片底色生成方法、装置、设备及介质 |
CN112132212B (zh) * | 2020-09-22 | 2022-08-09 | 福州大学 | 一种容忍异常原料的木材原料选色方法 |
CN113284198A (zh) * | 2021-05-13 | 2021-08-20 | 稿定(厦门)科技有限公司 | 图像自动配色方法及装置 |
CN114120002A (zh) * | 2021-10-26 | 2022-03-01 | 北京达佳互联信息技术有限公司 | 图像颜色提取方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0721346A (ja) * | 1993-06-18 | 1995-01-24 | Fujitsu Ltd | 画像処理における限定色表示処理方法 |
CN106033547A (zh) * | 2015-03-12 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 颜色搭配评价方法、服饰搭配推荐方法及装置 |
CN110363124A (zh) * | 2019-07-03 | 2019-10-22 | 广州多益网络股份有限公司 | 基于人脸关键点与几何形变的快速表情识别及应用方法 |
CN110969170A (zh) * | 2019-12-03 | 2020-04-07 | 北京奇艺世纪科技有限公司 | 一种图像主题色提取方法、装置及电子设备 |
-
2020
- 2020-04-13 CN CN202010285807.XA patent/CN111401316B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0721346A (ja) * | 1993-06-18 | 1995-01-24 | Fujitsu Ltd | 画像処理における限定色表示処理方法 |
CN106033547A (zh) * | 2015-03-12 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 颜色搭配评价方法、服饰搭配推荐方法及装置 |
CN110363124A (zh) * | 2019-07-03 | 2019-10-22 | 广州多益网络股份有限公司 | 基于人脸关键点与几何形变的快速表情识别及应用方法 |
CN110969170A (zh) * | 2019-12-03 | 2020-04-07 | 北京奇艺世纪科技有限公司 | 一种图像主题色提取方法、装置及电子设备 |
Non-Patent Citations (1)
Title |
---|
周鲜成 ; 申群太 ; 王俊年 ; .基于微粒群的颜色量化算法.微电子学与计算机.2008,(03),第51-54页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111401316A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111401316B (zh) | 图像主色确定方法、装置、存储介质及电子设备 | |
US10762608B2 (en) | Sky editing based on image composition | |
CN109618222B (zh) | 一种拼接视频生成方法、装置、终端设备及存储介质 | |
US7835580B2 (en) | Album creating apparatus, album creating method and program therefor | |
KR102115328B1 (ko) | 전역 대조도 기반 영상 매팅을 통한 영상 내부의 관심 객체 추출 장치 및 방법 | |
US6807286B1 (en) | Object recognition using binary image quantization and hough kernels | |
US20150332112A1 (en) | Method and apparatus for image processing | |
CN112132058B (zh) | 一种头部姿态估计方法及其实现系统、存储介质 | |
US20070018994A1 (en) | Texture encoding apparatus, texture decoding apparatus, method, and program | |
US7817161B2 (en) | Texture synthesis using dimensionality-reduced appearance space | |
US9626585B2 (en) | Composition modeling for photo retrieval through geometric image segmentation | |
US20180357819A1 (en) | Method for generating a set of annotated images | |
US20110013837A1 (en) | Hierarchical recursive image segmentation | |
EP4137991A1 (en) | Pedestrian re-identification method and device | |
US20110050723A1 (en) | Image processing apparatus and method, and program | |
CN103718172A (zh) | 图像处理装置、程序、图像处理方法及摄像装置 | |
JP2012530319A (ja) | 準複製画像検索のための方法およびシステム | |
Hu et al. | Robust subspace analysis for detecting visual attention regions in images | |
CN102576461A (zh) | 评估数字图像的美学质量 | |
CN110517270B (zh) | 一种基于超像素深度网络的室内场景语义分割方法 | |
US20160371867A1 (en) | Optimizing photo album layouts | |
CN101388020A (zh) | 一种基于内容的复合型图像检索方法 | |
CN112634125A (zh) | 一种基于离线人脸数据库的自动面部替换方法 | |
Rahman et al. | Real-time face-priority auto focus for digital and cell-phone cameras | |
CN111415396A (zh) | 一种图像生成方法、装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |