CN116452686A - 基于自适应聚类和线性规划最优化选点的点画生成方法 - Google Patents
基于自适应聚类和线性规划最优化选点的点画生成方法 Download PDFInfo
- Publication number
- CN116452686A CN116452686A CN202310197951.1A CN202310197951A CN116452686A CN 116452686 A CN116452686 A CN 116452686A CN 202310197951 A CN202310197951 A CN 202310197951A CN 116452686 A CN116452686 A CN 116452686A
- Authority
- CN
- China
- Prior art keywords
- point
- points
- color
- clustering
- distance
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005457 optimization Methods 0.000 title claims abstract description 25
- 238000010422 painting Methods 0.000 title claims abstract description 8
- 230000003044 adaptive effect Effects 0.000 title claims description 17
- 239000003086 colorant Substances 0.000 claims abstract description 16
- 238000009792 diffusion process Methods 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 claims description 7
- 230000001174 ascending effect Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 238000003064 k means clustering Methods 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 2
- 238000002474 experimental method Methods 0.000 abstract description 8
- 230000000007 visual effect Effects 0.000 abstract description 4
- 238000007639 printing Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 11
- 238000005070 sampling Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 239000000523 sample Substances 0.000 description 3
- 101100285899 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SSE2 gene Proteins 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229910052754 neon Inorganic materials 0.000 description 1
- GKAOGPIIYCISHV-UHFFFAOYSA-N neon atom Chemical compound [Ne] GKAOGPIIYCISHV-UHFFFAOYSA-N 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于自适应聚类和线性规划最优化选点的点画生成方法,该算法首先采用超像素预处理图像,将原图像划分为颜色接近的超像素块,减小问题处理规模。但该像素块依然存在颜色跳跃子集,进一步依据颜色密度峰值自适应聚类方法将超像素块划分为更小的像素子聚类,并用三角形手肘法验证,确保在子聚类内部颜色无明显跳跃。然后依据子聚类内部颜色均值确定生成采样半径,最后,根据图像相似度指标SSIM确定线性规划最优目标的选点模型,实验证明,在视觉效果和SSIM、PSNR评分等方面,本发明所提出的彩色点画生成算法均优于现有大部分方法,在低成本彩色/黑白打印,像素画方面有着广泛的应用。
Description
技术领域
本发明属于数字图像处理技术领域,涉及一种彩色点画图像的生成算法,尤其涉及基于自适应聚类和线性规划最优化选点的点画生成方法。
背景技术
点画是计算机图形学领域中应用最广泛的一种非真实感渲染技术。作为用点表示图像的艺术,关键问题之一是点的位置。一般来说,同一集合内它们应该均匀分布,同时具有一定的随机性,蓝噪声采样方法提供了这些特性,并被广泛应用于图形学领域。而彩色点画因其每个通道应同时保证均匀分布使得绘制更加困难。现有方法将彩色点画视为多类蓝噪声采样问题,并以较长的处理时间为代价以提供高质量的结果。
目前,点画算法在低成本彩色和黑白打印、霓虹灯广告图像以及空中无人机构建点画图像方面亦有广阔的应用前景。
较为传统的计算机辅助生成点画的方法通过在色调较亮的区域,绘制半径和灰度值较大且稀疏的点;而在较暗区域,则通过大量密集且半径较小的点来表现。这种算法能够再现画家的创作过程,提高了绘制效果,但在彩色图像的颜色渐变层次控制以及图像的边缘细节等方面,还存在着一些缺陷。例如在黑白点画中颜色的层次感往往被忽略,在彩色点画中,我们必须考虑这一重要因素。公开号为CN115619884A的中国发明专利,基于超像素与颜色背包算法的点画生成方法及设备提出了采用超像素方法初步分割图像,因为超像素由一系列位置相邻且颜色、亮度、纹理等特征相似的像素点组成的小区域。这些小区域可以保留图像的有效信息,且一般不会破坏图像中物体的边界信息。但是,在超像素内部,依然存在着部分颜色差异较大的点,经过验证,以256色灰度计算,在部分图像的超像素内部颜色最大差值达到70。其中黑白点画中采用的方法为固定的将超像素集合进一步划分为2个子聚类,但实验表明,2个子聚类并非是最好的划分结果,经验证,大部分子聚类的最佳划分为2,3,4之间浮动(不超过4)。因此,现有的点画生成方法生成的点画图像质量较低。
发明内容
为了进一步提升彩色生成点画的质量,本发明公开了一种基于超像素自适应聚类和线性规划最优化选点算法。该算法在初步超像素划分图像的基础上,进一步使用基于密度峰值的自适应聚类方法得到最佳聚类个数并划分,并根据每个子聚类的颜色均值作为子聚类内部选点的最佳间隔距离,在选点的同时依据SSIM指标,建立目标优化模型,采用数学优化器gurobi实现模型选点,使点保持分布均匀的同时,保持颜色渐变层次,以提高所生成的点画图像的可视化效果。
为了实现本发明的技术效果,本发明的技术方案为:一种基于自适应聚类和线性规划最优化选点的点画生成方法,包括以下步骤:
步骤1,采用SLIC超像素算法对图像进行初步划分,将输入图像分割为一系列具有边界清晰且空间紧凑的超像素块,在后续的处理中用超像素块代替像素作为基本单位进行操作;
步骤2,采用基于颜色密度峰值自适应聚类算法和三角形手肘法进一步将超像素块自适应划分为合适的子聚类,
步骤3,采用基于SSIM值的目标优化模型选取子聚类中最合适的点;
步骤4,所有选中的点赋予原图中的原色,其余点改为背景色,形成新的彩色点画图像。
进一步的,步骤2中基于颜色密度峰值自适应聚类算法的具体实现方式如下;
步骤2.1,首先进行预处理,获得密度决策图;
步骤2.2,然后进行预聚类,将决策图中的点按其密度的升序排序,计算最大密度差和平均密度差,将决策图中最大密度变化点左侧的数据点视为噪声点并剔除,选取密度大于平均值和扩散距离大于平均值的点作为初始聚类中心,其中平均值是由剔除噪声点后的所有数据点的密度值求平均得到,记聚类中心点列表为即初始聚类有k个;
步骤2.3,最后根据初始聚类中心的点对点距离进行合并聚类。
进一步的,步骤2.1中获得密度决策图的具体实现方式如下;
2.2.1,记每个超像素点集合为I,集合内部内的点由三元组构成,pi=(xi,yi,ci),i分别代表不同的点号,ci代表该点不同的颜色,xi,yi分别代表该点的横坐标和纵坐标;
定义计算任意两点i和j之间的颜色距离dij,由欧式距离和颜色差值的指数相乘构成;
2.1.2,根据高斯核函数定义局部点密度ρi:
设定截断距离为dc,dc的计算公式为:
2.1.3,计算任意点的扩散距离
对于密度最高的数据点pi,扩散距离δi是像素点对之间所有距离的最大值,对于任何其他像素点,扩散距离δi是从其到密度大于它的所有像素点的所有距离的最小值,因此像素点pi的扩散距离可以按以下两种情况计算:
2.1.4,以密度ρ为横坐标,扩散距离δ为纵坐标,绘制决策图。
进一步的,步骤2.3的具体实现方式如下;
2.3.1,设预聚类得到的初始聚类有k个,类别分别为{class1,class2,...,classk},len为类别的个数,初始值为k,初始距离中心的点对点距离然后按升序排列;设初始分类方法对应的存在时长序列为{alive1,alive2,...,alivek},初始值全部为0,设置最长持续时间max_last_time=-1;
2.3.2,当k>1时,循环执行以下操作:
依次查找初始聚类中心点队列中最近的两个聚类中心点设为p1_centermin_1,p2_centermin_2,两个点对应的类别classid分别属于类别p1class1和p1clsss2,跳过聚类中心点距离为-1的聚类对,初始聚类之间距离不为-1;
若p1class1≠p1class2,则p1class1=len+1和p1class2=len+1,并设置这2个类中所有点的类别属性为新的类别,类别号为len+1,并将新类别号加入到类别号表{class1,class2,...,classk}中得到{class1,class2,...,classk,len+1},即表明这2个类别合并成1个新聚类,类别号len增加1,而当前聚类总数k=k-1,标记总的分类数少了1,并设置这2个最近聚类中心点距离为-1;
若在同一类中,p1class1=p1class2,则k不变;
将对应于此类类别数的分类方法存在时长加1,alivek=alivek+1;
若当前alivek>max_last_time,则max_last_time=alivek,用pointsrecord记录下含有新类别标号的聚类中心点序列,记录最大存在时长时的聚类中心点新的分类情况;
直到k=1时循环结束;
2.3.3,根据2.3.2的pointsrecord最后存储的聚类中心表的类别结果classid显示计算聚类个数,最终结果作为最佳聚类个数,合并后的多个属于同一类中的中心点可任选一个作为中心点。
进一步的,步骤2中三角形手肘法是一种基于聚类误差平方和SSE与K-means聚类的最优K值选择算法,用于获得一组数据点的最佳聚类数。
进一步的,步骤2中三角形手肘法的具体实现方式如下;
步骤2a,依次设置最大尝试聚类数n,作为K-means聚类的预置参数来划分初始聚类,每次划分的结果为KCn={C1,...,Cn};
步骤2b,计算聚类误差平方和SSE;
公式(5)中,Ci是第i个聚类,p是Ci中的像素点,mi是Ci的聚类中心,SSE是所有样本的聚类误差,并计算SSE的值,形成一个值列表{SSE1,SSE2,...,SSEn};
步骤2c,将值列表{SSE1,SSE2,...,SSEn}归一化,SSE值对应于纵坐标,下标{1,2,...n}对应于横坐标,连线成折线图;
步骤2d,从第1个点开始,每相邻的3个点连成一个三角形,ai,bi,ci分别代表三角形的三条边长,通过公式(6)计算各肘点之间的余弦值;
其中,βi为相邻3个点中间的点对应的夹角;
步骤2e,根据余弦值序列分别求出反余弦对应的角度:{α2,α3,...,αn-1};
步骤2f,求id=index(min{α2,α3,...,αn-1}),计算得到的肘点间的最小夹角的索引即为潜在的最优聚类数。
进一步的,步骤3中SSIM值的计算方式如下;
给定两张图像x和y,SSIM将从三个方面比较图像x,y的相似性:亮度l(x,y),对比度c(x,y)和结构s(x,y),用均值估算亮度,标准差估算对比度,协方差估算结构相似程度,最终x和y的相似度为这三者的函数积;其中,μx及μy、σx及σy分别为x和y的平均值和标准差,σxy为x和y的协方差;
C1、C2、C3是正值常数,用于防止公式出现除0异常;
C1=(K1*L)*(K1*L)
C2=(K2*L)*(K2*L)
C3=C2/2
默认K1=0.01,K2=0.03,L=255;
综上三个函数的乘积即为SSIM函数SSIM(x,y),如下式所示:
进一步的,步骤3的具体实现方式如下;
设置子聚类中点的集合为P,pi为P中任意一个点,P={p1,p2...,PN};N表示集合中点的个数,每个点pi有3个属性(coordinate_xi,coordinate_yi,ci),分别表示点pi的横坐标、纵坐标,颜色号,其中ci变化范围为0-255,coordinate_xi变化范围为wmin~wmax,wmin~wmax为横坐标最小值和最大值,coordinate_yi变化范围为wmin~wmax,hmin~hmax为纵坐标最小值和最大值最小值和最大值;
计算子聚类内部各个点之间的距离矩阵Dis_Matrix;
表示点pi和点pj之间的距离;
设置决策变量为xi,xi为0-1的变量,表示第i个点被选中保留原色,则xi=1,否则未被选中xi=0;设置指示变量为:yij,uij,wij,z,最终目标函数是使得所有选中的点和未被选中的点的颜色与原图中的颜色差值最小,即:
其中,选中的点与原图颜色一致,与原图像像素差值为0,而未被选中的点为白色背景色,白色像素点灰度值为255;
上述目标函数满足如下约束:
约束1,所有的被选中的点个数必须小于总点数的γ倍;
约束2,设置指示变量yij约束,yij为所有子聚类点对之间的距离,若点pi,pj之一未被选中,即xi和xj至少有一个为0,则yij为0,2个点均选中即xi和xj都为1,则yij为两点间欧式距离;
约束3,设置指示变量wij约束,wij为1指示出了所有变量yij大于ε的点,即pi,pj都被选中的点,wij为0指示出了所有变量yij大于ε的点,即pi,pj至少有一点未被选中;
wij=1 if yij≥ε
约束4,设置指示变量wij约束;
wij=0 if yij<ε
其中,e为设置的常数;
约束5,设置指示变量uij约束,uij代表所有点对之间的新距离,与原始欧式距离不同的是,pi,pj有未被选中的点时,uij非常大,而两点均被选中时,uij为正常的欧式距离,这样就屏蔽了所有未被选中的点对:
uij=yij+(1-wij)*M
M为设置的一个整数;
约束6,设置指示变量z约束,z为被选中点对距离uij序列的最小值;
z=min(uij)
约束7,设置指示变量uij上限约束,所有被选中的点对距离的最大值必须小于2倍的颜色半径;
约束8,设置指示变量uij下限约束,所有被选中的点对距离的最小值必须大于颜色半径;
进一步的,颜色半径的计算公式如下;
其中,r(color)即为颜色半径参数color表示子聚类的颜色均值。
本发明提出了一种基于超像素自适应聚类和线性规划最优化选点算法的彩色点画生成方法。该技术基于原始图像,以计算机为工具,能够以接近实时的速度生成具有自身艺术风格等特有属性的艺术点画图像。通过实验表明,在相同条件下,本发明方法在生成艺术点画方面能够取得较好的效果,不仅能采用较少的像素,降低成本,而且能产生高质量的点画效果,因此在低成本彩色/黑白打印,像素画方面有着广泛的应用。
附图说明
图1为本发明实施例的流程示意图;
图2为本发明与结构感知算法对比结果图;
图3为本发明与基于IVS半径调整算法对比结果图;
图4为本发明与数字彩色板色调算法对比结果图;
图5为lenna.png图片彩色点画效果对比图;
图6为线性规划最优化选点效果对比图;
图7为SSE关系折线夹角变化图;
图8为与l(x,y)与c(x,y)函数三维曲面构建图。
具体实施方式
为了便于本领域普通技术人员理解和实施例本发明,下面结合附图及实例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
请见图1,本发明提供的一种基于超像素自适应聚类和线性规划最优化选点算法的彩色点画生成方法,包括以下步骤:
步骤一:采用SLIC超像素算法对图像进行初步划分,将输入图像分割为一系列具有边界清晰且空间紧凑的数百个超像素,在后续的图像处理中用超像素块代替像素作为基本单位进行操作;
步骤二:采用基于颜色密度峰值自适应聚类算法和三角形手肘法进一步将超像素自适应划分为合适的子聚类,
步骤三:采用基于SSIM值的目标优化模型选取子聚类中最合适的点。
步骤四:所有选中的点赋予原图中的原色,其余点改为背景色,形成新的彩色点画图像。
步骤一中已经得到超像素图像,针对超像素聚类使用自定义的颜色密度峰值聚类自适应算法进一步划分为子聚类,具体实现方式如下:
预处理:每个超像素点集合为I,集合内部内的点由三元组构成。pi=(xi,yi,ci),i分别代表不同的点号,ci代表该点不同的颜色,xi,yi分别代表该点的横坐标和纵坐标。
1.定义计算任意两点i和j之间的颜色距离dij,由欧式距离和颜色差值的指数相乘构成,其中,两点间的颜色差值是影响距离的主要因素。
2.根据高斯核函数定义局部点密度ρi。
即使得聚类间密度差距较大,该密度估计方法也能很好的区分其密度。高斯核函数定义如下:
设定截断距离为dc;
该算法的敏感参数dc为截断距离,实际上是簇类中心的邻域半径,其选取是基于超像素图像区域的中心点位置,此值的大小影响算法的计算复杂度,可以依据需求调整大小。dc的计算公式为:
3.计算任意点的扩散距离
对于密度最高的数据点pi,扩散距离δi是像素点对之间所有距离的最大值,对于任何其他像素点,扩散距离δi是从其到密度大于它的所有像素点的所有距离的最小值。因此像素点pi的扩散距离可以按以下两种情况计算:
4.绘制ρ-δ决策图以密度ρ为横坐标,扩散距离δ为纵坐标,绘制决策图。
5.预聚类:
步骤1:所有点按密度递增排序
将决策图中的点按其密度的升序排序,计算最大密度差和平均密度差。
步骤2:将决策图中最大密度变化点左侧的数据点被视为噪声点并剔除;
步骤3:选取密度大于平均值和扩散距离大于平均值的点作为初始聚类中心,使得尽可能高密度和高内聚距离的点作为初始聚类中心,其中平均值是由剔除噪声点后的所有数据点的密度值求平均得到。记聚类中心点列表为初始聚类有k个。通常初始簇的数量远大于实际簇的数量。设初始聚类数中心列表中每个点为
6.合并聚类:
步骤1:设上一步5中得到的初始聚类有k个,类别分别为{class1,class2,...,classk},len为类别的个数,初始值为k,初始距离中心的点对点距离然后按升序排列;设初始分类方法对应的存在时长序列为{alive1,alive2,...,alivek},初始值全部为0,例如:alive5表示分类为5类的时长,设置最长持续时间max_last_time=-1。
步骤2:当k>1时,循环执行,
依次查找初始聚类中心点队列中最近的两个聚类中心点设为p1_centermin_1,p2_centermin_2,两个点对应的类别classid分别属于类别p1clsss1和p1clsss2,跳过聚类中心点距离为-1的聚类对,初始聚类之间距离不为-1。
若p1class1≠p1class2(如果它们不在同一类中),则p1class1=len+1和p1class2=len+1,并设置这2个类中所有点的类别属性为新的类型,类型号为len+1,并将新类号加入到类别号表{class1,class2,...,classk}中,即变为{class1,class2,...,classk,len+1},即表明这2个类别合并成1个新聚类,类别号len增加1,而当前聚类总数k=k-1,标记总的分类数少了1,并设置这2个最近集群中心点距离为-1。
若在同一类中,p1class1=p1class2,则k不变。
将对应于此类类别数的分类方法存在时长加1,alivek=alivek+1。
若当前alivek>max_last_time,则max_last_time=alivek,用pointsrecord记录下含有新类别标号的集群中心点序列,记录最大存在时长时的聚类中心点新的分类情况;
直到k=1时循环结束。
步骤3:根据步骤2的pointsrecord的最后存储的聚类中心表的类别结果classia显示计算聚类个数;最终结果作为最佳聚类个数。合并后的多个属于同一类中的中心点可任选一个作为中心点。
7.基于三角形的手肘法验证
手肘法是一种基于误差平方和SSE(聚类误差平方和)和K-means聚类的最优K值选择算法,用于获得一组数据点的最佳聚类数,通常适用于相对较小K值的情况。手肘法的核心思想是:当聚类个数K增加时,样本的分割将更加细致,各聚类的聚合程度会随之增加,其误差平方和SSE也会随之减小。当聚类个数K远远小于实际聚类数目时,K的不断增大会导致各聚类的聚合程度,因此SSE会大幅度下降,而当K达到实际聚类数量时,各个聚类的聚合程度已趋于稳定,即使再增加K值也没有较大的变化幅度,因此SSE的下降幅度会骤减,且随着K值的继续增大而趋于稳定。即SSE和K的关系折线图是一个手肘的形状,通过比较每个簇的误差平方和SSE,形成肘部角度最极端差异对应的K值为最优K值。同时,为了防止当关系折线图比较平滑,图中具有不明显的肘点(如图3所示,肘点的取值不明确)这样的特殊情况,而导致的K值确定出现偏差,进而影响最终的聚类结果,计算关系折线图中的各个肘点的角度主要通过人工观察来确定最佳拐点,实际使用并不便捷。因此,在验证最佳聚类时,我们设计了基于三角形夹角序列自动判断的手肘法。
算法步骤如下:
步骤1:依次设置最大尝试聚类数n。n的取值范围为1-7。作为K-means聚类的预置参数来划分初始聚类。每次划分的结果为KCn={C1,...,Cn}
步骤2:计算误差平方和SSE
公式(5)中,Ci是第i个聚类,p是C中的像素点,mi是Ci的聚类中心,SSE是所有样本的聚类误差,通常用于量化聚类误差,代表了聚类效果的优劣。将n依次取值为1、2、3、4、5、6、7,并计算SSE的值,形成一个值列表{SSE1,SSE2,...,SSEn},n=7。
步骤3:将值列表{SSE1,SSE2,...,SSEn}归一化,SSE值对应于纵坐标,下标{1,2,...n}对应于横坐标,连线成折线图,如图7所示。
步骤4:从第1个点开始,每3点连成一个三角形,并计算各个以SSEi连线构成的角度例如:∠(SSE1,SSE2,SSE3),表示SSE2为顶点,三边依次为a2,b2,c2,依次计算各肘点SSEi相邻点间的欧氏距离,以及最长边的距离。ai,bi,ci分别代表三角形的三条边长,通过公式6计算各肘点之间的余弦值。
其中,βi为相邻3个点中间的点对应的夹角;
步骤4:根据余弦值序列分别求出反余弦对应的角度:{α2,α3,α4,α5,α6}
步骤5:求id=index(min{α2,α3,α4,α5,α6})计算得到的肘点间的最小夹角的索引即为潜在的最优聚类数。。
因SSE曲线的夹角通常为钝角,在钝角列表中夹角最小的角体现了折线的最大变化率。
8.为保证每个子聚类中选出的点能够最接近原图,我们将SSIM中的优化指标作为选点的最优目标。即能体现出层次感,使得少量的突变颜色点也能够得到一定的概率显示,又能够使得点的密集度能够体现出颜色的深浅。改进算法以子聚类中的颜色均值color定义选点的间隔半径,半径公式设置如下:
给定两张图像x和y,SSIM将从三个方面比较图片x,y的相似性:亮度l(x,y),对比度c(x,y)和结构s(x,y)。用均值估算亮度,标准差估算对比度,协方差估算结构相似程度。最终x和y的相似度为这三者的函数积。其中,μx及μy、σx及σy分别为x和y的平均值和标准差,σxy为x和y的协方差。
C1、C2、C3是正值常数,用于防止公式出现除0异常。
C1=(K1*L)*(K1*L)
C2=(K2*L)*(K2*L
C3=C2/2 (8)
默认K1=0.01,K2=0.03,L=255。
综上三个函数的乘积并设定C3=C2/2并经过简化后得到即为SSIM函数,SSIM(x,y)如(12)式所示。
分析SSIM的计算过程,设输入图像的子像素点原始列表为P1={x1,x2...xn},采样点集P2={y1,y2...ym},P1数列为灰度图中的源像素点,每个点xi的取值在[0,255]之间,而P2数列为选中的保留的源像素画点。设像素画为在白色背景下构造,则每个点的取值yi初始值全部为255。根据公式(12)构建的三维曲面图可以看出,如图8所示,当设μx=μy时,l(x,y)将取最高值1,亦即两个图像像素越接近相等,该值越高。c(x,y)中的σx,σy亦具有同样属性。
SSIM优化指标模型建立的过程如下:
设子聚类中点的集合为P,pi为P中任意一个点,P={p1,p2...,pN};N表示集合中点的个数,每个点pi有3个属性(coordinate_xi,coordinate_yi,ci),分别表示点pi的横坐标、纵坐标,颜色号,其中ci变化范围为(0-255),coordinate_xi变化范围为wmin~wmax,wmin~wmax为横坐标最小值和最大值,coordinate_yi变化范围为wmin~wmax,hmin~hmax为纵坐标最小值和最大值最小值和最大值。采用公式(*)建立子聚类内部各个点之间的距离矩阵Dis_Matrix。表示点pi和点pj之间的距离,计算方法如下:
设置一个大整数M=999,为后续求点对之间距离最小值使用,公式(18)中使用。
决策变量:
xi:0-1变量,表示第i个点被选中保留原色,则xi=1,否则未被选中xi=0。
指示变量:yij,uij,wij,z
目标函数:所有选中的点和未被选中的点的颜色与原图中的颜色差值最小。因选中的点与原图颜色一致,与原图像像素差值为0,而未被选中的点为白色背景色,白色像素点灰度值为255。
约束1:所有的被选中的点个数必须小于总点数的0.7(这个可以依据需求修改上限)。
约束2:设置指示变量yij约束。yij为所有子聚类点对之间的距离。若点pi,pj之一未被选中(即xi和xj至少有一个为0),则yij为0,2个点均选中(即xi和xj都为1),则yij为2点间欧式距离。
约束3:设置指示变量wij约束。与约束4一起,wij为1指示出了所有变量yij大于0.02的点(即pi,pj都被选中的点)。wij为0指示出了所有变量yij大于0.02的点(即pi,pj至少有一点未被选中)。
wij=1 if yij≥0.02 (16)
约束4:设置指示变量wij约束。与约束3配合使用。
wij=0 if yij<0.02 (17)
约束5:设置指示变量uij约束。uij代表所有点对之间的新距离,与原始欧式距离不同的是,pi,pj有未被选中的点时,uij非常大,而2点均被选中时,为正常的欧式距离。这样就屏蔽了所有未被选中的点对。
uij=yij+(1-wij)*M (18)
约束6:设置指示变量z约束,z为被选中点对距离uij/序列的最小值。
z=min(uij) (19)
约束7:设置指示变量uij上限约束,所有被选中的点对距离的最大值必须小于2倍的颜色半径。
约束8:设置指示变量uij下限约束。所有被选中的点对距离的最小值必须大于颜色半径。
本发明的效果可以用以下对比实验来说明:
1.实验条件:实验采用Python3.8实现,在i72.40GHz CPU、8.0GB内存、Windows 10平台上进行测试。
2.实验内容和结果如下:
本发明与主流的结构感知算法、基于IVS半径调整算法、数字彩色半色调算法这三个现有算法进行对比,使用结构相似性(structural similarity,SSIM)和峰值信噪比(peak signal-to-noise ratio,PSNR)对点画质量进行评分,所有使用的测试对比图像均来自对应文献。
实验结果如图2-4所示,图2与表1列出了本文算法与结构感知算法基于测试图像a、b的对比结果。图3与表2列出了本文算法与基于IVS半径调整算法在测试图像c、d、e的对比结果。图4与表3列出了本文算法与数字彩色半色调算法在测试图像f、g、h的对比结果。所有图像均由半径相同的点绘制而成。从数值误差SSIM和PSNR可以发现,本文算法生成的点画质量更高,且该算法实现平均用时更快,能够达到实时绘制的效果,最终生成的点画质量在视觉效果和数值评分上也均优于其他方法。
表1本文算法与结构感知算法对比结果
表2本文算法与基于IVS半径调整算法对比结果
表3本文算法与数字彩色半色调算法对比结果
综上,通过实验表明,在相同条件下,本发明方法在生成艺术点画方面能够取得较好的效果。不仅能采用较少的像素,降低成本,而且能产生高质量的点画效果。
优化选点实验:以图5中lenna.png为例,取101号超像素,优化选点结果为:lenna.png原图为256*256=65636个点,本方法为33295个点,精简约49%像素点。
线性规划最优化选点实验:先采用Bridson采样法随机生成的均匀样本图像共1007个点,图像宽度为1.0,高度为1.0,点之间间隔为0.025,选定新点间隔半径为0.05,采用线性规划最优化选点法后的采样点为223个点,由图6中可以看出,在保持点之间距离扩大的同时,保持了各点的均匀性。
相比于现有技术,本发明本身步骤大大简化,在视觉效果和SSIM、PSNR评分等方面,本发明所提出的点画生成算法均优于现有方法。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (9)
1.基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于,包括以下步骤:
步骤1,采用SLIC超像素算法对图像进行初步划分,将输入图像分割为一系列具有边界清晰且空间紧凑的超像素块,在后续的处理中用超像素块代替像素作为基本单位进行操作;
步骤2,采用基于颜色密度峰值自适应聚类算法和三角形手肘法进一步将超像素块自适应划分为合适的子聚类,
步骤3,采用基于SSIM值的目标优化模型选取子聚类中最合适的点;
步骤4,所有选中的点赋予原图中的原色,其余点改为背景色,形成新的彩色点画图像。
2.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤2中基于颜色密度峰值自适应聚类算法的具体实现方式如下;
步骤2.1,首先进行预处理,获得密度决策图;
步骤2.2,然后进行预聚类,将决策图中的点按其密度的升序排序,计算最大密度差和平均密度差,将决策图中最大密度变化点左侧的数据点视为噪声点并剔除,选取密度大于平均值和扩散距离大于平均值的点作为初始聚类中心,其中平均值是由剔除噪声点后的所有数据点的密度值求平均得到,记聚类中心点列表为即初始聚类有k个;
步骤2.3,最后根据初始聚类中心的点对点距离进行合并聚类。
3.如权利要求2所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤2.1中获得密度决策图的具体实现方式如下;
2.2.1,记每个超像素点集合为I,集合内部内的点由三元组构成,pi=(xi,yi,ci),i分别代表不同的点号,ci代表该点不同的颜色,xi,yi分别代表该点的横坐标和纵坐标;
定义计算任意两点i和j之间的颜色距离dij,由欧式距离和颜色差值的指数相乘构成;
2.1.2,根据高斯核函数定义局部点密度ρi:
设定截断距离为dc,dc的计算公式为:
2.1.3,计算任意点的扩散距离
对于密度最高的数据点pi,扩散距离δi是像素点对之间所有距离的最大值,对于任何其他像素点,扩散距离δi是从其到密度大于它的所有像素点的所有距离的最小值,因此像素点pi的扩散距离可以按以下两种情况计算:
2.1.4,以密度ρ为横坐标,扩散距离δ为纵坐标,绘制决策图。
4.如权利要求2所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤2.3的具体实现方式如下;
2.3.1,设预聚类得到的初始聚类有k个,类别分别为{class1,class2,…,classk},len为类别的个数,初始值为k,初始距离中心的点对点距离然后按升序排列;设初始分类方法对应的存在时长序列为{alive1,alive2,…,alivek},初始值全部为0,设置最长持续时间max_last_time=-1;
2.3.2,当k>1时,循环执行以下操作:
依次查找初始聚类中心点队列中最近的两个聚类中心点设为p1_centermin_1,p2_centermin_2,两个点对应的类别classid分别属于类别p1class1和p1class2,跳过聚类中心点距离为-1的聚类对,初始聚类之间距离不为-1;
若p1class1≠p1class2,则p1class1=len+1和p1class2=len+1,并设置这2个类中所有点的类别属性为新的类别,类别号为len+1,并将新类别号加入到类别号表{class1,class2,…,classk}中得到{class1,class2,…,classk,len+1},即表明这2个类别合并成1个新聚类,类别号len增加1,而当前聚类总数k=k-1,标记总的分类数少了1,并设置这2个最近聚类中心点距离为-1;
若在同一类中,p1class1=p1class2,则k不变;
将对应于此类类别数的分类方法存在时长加1,alivek=alivek+1;
若当前alivek>max_last_time,则max_last_time=alivek,用pointsrecord记录下含有新类别标号的聚类中心点序列,记录最大存在时长时的聚类中心点新的分类情况;
直到k=1时循环结束;
2.3.3,根据2.3.2的pointsrecord最后存储的聚类中心表的类别结果classid显示计算聚类个数,最终结果作为最佳聚类个数,合并后的多个属于同一类中的中心点可任选一个作为中心点。
5.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤2中三角形手肘法是一种基于聚类误差平方和SSE与K-means聚类的最优K值选择算法,用于获得一组数据点的最佳聚类数。
6.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤2中三角形手肘法的具体实现方式如下;
步骤2a,依次设置最大尝试聚类数n,作为K-means聚类的预置参数来划分初始聚类,每次划分的结果为KCn={C1,…,Cn};
步骤2b,计算聚类误差平方和SSE;
公式(5)中,Ci是第i个聚类,p是Ci中的像素点,mi是Ci的聚类中心,SSE是所有样本的聚类误差,并计算SSE的值,形成一个值列表{SSE1,SSE2,…,SSEn};
步骤2c,将值列表{SSE1,SSE2,…,SSEn}归一化,SSE值对应于纵坐标,下标{1,2,…n}对应于横坐标,连线成折线图;
步骤2d,从第1个点开始,每相邻的3个点连成一个三角形,ai,bi,ci分别代表三角形的三条边长,通过公式(6)计算各肘点之间的余弦值;
其中,βi为相邻3个点中间的点对应的夹角;
步骤2e,根据余弦值序列分别求出反余弦对应的角度:{α2,α3,…,αn-1};
步骤2f,求id=index(min{α2,α3,…,αn-1}),计算得到的肘点间的最小夹角的索引即为潜在的最优聚类数。
7.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤3中SSIM值的计算方式如下;
给定两张图像x和y,SSIM将从三个方面比较图像x,y的相似性:亮度l(x,y),对比度c(x,y)和结构s(x,y),用均值估算亮度,标准差估算对比度,协方差估算结构相似程度,最终x和y的相似度为这三者的函数积;其中,μx及μy、σx及σy分别为x和y的平均值和标准差,σxy为x和y的协方差;
C1、C2、C3是正值常数,用于防止公式出现除0异常;
C1=(K1*L)*(K1*L)
C2=(K2*L)*(K2*L)
C3=C2/2
默认K1=0.01,K2=0.03,L=255;
综上三个函数的乘积即为SSIM函数SSIM(x,y),如下式所示:
8.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:步骤3的具体实现方式如下;
设置子聚类中点的集合为P,pi为P中任意一个点,P={p1,p2…,pN};n表示集合中点的个数,每个点pi有3个属性(coordinate_xi,coordinate_yi,ci),分别表示点pi的横坐标、纵坐标,颜色号,其中vi变化范围为0-255,voordinate_xi变化范围为wmin~wmax,wmin~wmax为横坐标最小值和最大值,coordinate_yi变化范围为wmin~wmax,hmin~hmax为纵坐标最小值和最大值最小值和最大值;
计算子聚类内部各个点之间的距离矩阵Dis_Matrix;
表示点pi和点pj之间的距离;
设置决策变量为xi,xi为0-1的变量,表示第i个点被选中保留原色,则xi=1,否则未被选中xi=0;设置指示变量为:yij,uij,wij,z,最终目标函数是使得所有选中的点和未被选中的点的颜色与原图中的颜色差值最小,即:
其中,选中的点与原图颜色一致,与原图像像素差值为0,而未被选中的点为白色背景色,白色像素点灰度值为255;
上述目标函数满足如下约束:
约束1,所有的被选中的点个数必须小于总点数的γ倍;
约束2,设置指示变量yij约束,yij为所有子聚类点对之间的距离,若点pi,pj之一未被选中,即xi和xj至少有一个为0,则yij为0,2个点均选中即xi和xj都为1,则yij为两点间欧式距离;
约束3,设置指示变量wij约束,wij为1指示出了所有变量yij大于ε的点,即pi,pj都被选中的点,wij为0指示出了所有变量yij大于ε的点,即pi,pj至少有一点未被选中;
wij=1 if yij≥ε
约束4,设置指示变量wij约束;
wij=0 if yij<ε
其中,ε为设置的常数;
约束5,设置指示变量uij约束,uij代表所有点对之间的新距离,与原始欧式距离不同的是,pi,pj有未被选中的点时,uij非常大,而两点均被选中时,uij为正常的欧式距离,这样就屏蔽了所有未被选中的点对;
uij=yij+(1-wij)*M
M为设置的一个整数;
约束6,设置指示变量z约束,z为被选中点对距离uij序列的最小值;
z=min(uij)
约束7,设置指示变量uij上限约束,所有被选中的点对距离的最大值必须小于2倍的颜色半径;
约束8,设置指示变量uij下限约束,所有被选中的点对距离的最小值必须大于颜色半径;
9.如权利要求1所述的基于自适应聚类和线性规划最优化选点的点画生成方法,其特征在于:颜色半径的计算公式如下;
其中,r(color)即为颜色半径参数color表示子聚类的颜色均值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310197951.1A CN116452686A (zh) | 2023-03-03 | 2023-03-03 | 基于自适应聚类和线性规划最优化选点的点画生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310197951.1A CN116452686A (zh) | 2023-03-03 | 2023-03-03 | 基于自适应聚类和线性规划最优化选点的点画生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116452686A true CN116452686A (zh) | 2023-07-18 |
Family
ID=87130996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310197951.1A Pending CN116452686A (zh) | 2023-03-03 | 2023-03-03 | 基于自适应聚类和线性规划最优化选点的点画生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116452686A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117411947A (zh) * | 2023-12-15 | 2024-01-16 | 安徽中科大国祯信息科技有限责任公司 | 基于云边协同的水务数据快速传输方法 |
-
2023
- 2023-03-03 CN CN202310197951.1A patent/CN116452686A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117411947A (zh) * | 2023-12-15 | 2024-01-16 | 安徽中科大国祯信息科技有限责任公司 | 基于云边协同的水务数据快速传输方法 |
CN117411947B (zh) * | 2023-12-15 | 2024-02-23 | 安徽中科大国祯信息科技有限责任公司 | 基于云边协同的水务数据快速传输方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114219805B (zh) | 一种玻璃缺陷智能检测方法 | |
WO2007055359A1 (ja) | クラスタリングシステム、及び、それを備える画像処理システム | |
CN106447676A (zh) | 一种基于快速密度聚类算法的图像分割方法 | |
CN113554629A (zh) | 基于人工智能的带钢红锈缺陷检测方法 | |
CN111986125A (zh) | 一种用于多目标任务实例分割的方法 | |
CN111986126B (zh) | 一种基于改进vgg16网络的多目标检测方法 | |
CN116452686A (zh) | 基于自适应聚类和线性规划最优化选点的点画生成方法 | |
CN113888536B (zh) | 一种基于计算机视觉的印刷品重影检测方法及系统 | |
CN114170418B (zh) | 一种以图搜图的汽车线束连接器多特征融合图像检索方法 | |
CN113052859A (zh) | 基于自适应种子点密度聚类超像素分割方法 | |
CN111242957A (zh) | 一种数据处理方法、装置及计算机存储介质和电子设备 | |
CN113902613A (zh) | 一种基于三支聚类语义分割的图像风格迁移系统及其方法 | |
CN107274425B (zh) | 一种基于脉冲耦合神经网络的彩色图像分割方法及装置 | |
CN115033721A (zh) | 基于大数据的图像检索方法 | |
CN114972799A (zh) | 一种基于多偏光岩石薄片的长石矿物智能识别方法 | |
CN110853030B (zh) | 生物反应器病毒感染细胞质量评价方法 | |
CN113223098B (zh) | 图像颜色分类的预处理优化方法 | |
CN116994721A (zh) | 一种数字病理切片图的快速处理系统 | |
CN115457050A (zh) | 一种基于超像素的古代壁画图像优化分割方法及系统 | |
CN111429436B (zh) | 一种基于多尺度注意力和标签损失的本质图像分析方法 | |
CN114792329A (zh) | 一种基于中智聚类和超像素的彩色图像分割方法和装置 | |
Ristic et al. | Image segmentation method based on self-organizing maps and K-means algorithm | |
Peng et al. | A hierarchical distributed genetic algorithm for image segmentation | |
CN117799341B (zh) | 一种加热策略确定方法以及相关装置 | |
CN116956097B (zh) | 基于K-means的专家画像分析方法及系统 |
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 |