一种基于提升树的实木地板颜色的自动排序方法
文献发布时间:2023-06-19 16:12:48
技术领域
本发明涉及计算机辅助排序方法,具体涉及一种基于提升树的实木地板颜色的自动排序方法。
背景技术
实木地板的颜色是实木地板表面的重要评价指标,在生产地板时应考虑实木地板是否存在同一张地板上是否颜色变化较大带来的产品品质问题,在铺设实木地板时也需要充分考虑区域内实木地板的颜色协调一致。
传统的人工颜色分选方式多依赖人工识别,人工颜色分选很难实现长时间连续分选,且随着工作时间的增加容易产生混淆。因此,需要提供一种实木地板颜色自动分选以及颜色深浅自动排序的方法。
发明内容
本发明所要解决的技术问题是针对上述现有技术的不足提供一种基于提升树的实木地板颜色的自动排序方法,本基于提升树的实木地板颜色的自动排序方法以初步建立实木地板颜色深浅序列为先验知识,提取实木地板颜色特征,然后使用梯度提升决策树对实木地板颜色特征进行回归,实现实木地板颜色的无级分类,同时,还能实现实木地板颜色深浅自动排序。
为实现上述技术目的,本发明采取的技术方案为:
一种基于提升树的实木地板颜色的自动排序方法,其特征在于,包括:
步骤1、采集多张实木地板表面图像并对实木地板表面图像进行预处理;
步骤2、对预处理后的多张实木地板图像进行颜色空间变换,变换至Lab颜色空间和HSV颜色空间;
步骤3:对多张实木地板图像在RGB颜色空间内进行颜色深浅对比,由浅至深依次对多张实木地板图像进行排序,得到实木地板图像的颜色深浅序列;
步骤4:根据实木地板图像的颜色深浅序列设定每张实木地板图像颜色深度值;
步骤5:分别提取实木地板图像的RGB颜色空间的一阶矩、二阶矩和各通道的背景色、Lab颜色空间的一阶矩、二阶矩和各通道的背景色以及HSV颜色空间的一阶矩、二阶矩和各通道的背景色,共计27个颜色特征值,将该27个颜色特征值组成该实木地板图像的颜色特征向量;
步骤6:将提取的所有实木地板图像的颜色特征向量的数据集划分为测试集、验证集和训练集;
步骤7:基于梯度提升决策树建立实木地板颜色回归树数学模型,将训练集中实木地板图像的颜色特征向量作为回归树数学模型的输入,训练集中实木地板图像的颜色深度值作为回归树数学模型的输出,进而对回归树数学模型进行训练,得到训练完成的回归树数学模型,将验证集中实木地板图像的颜色特征向量输入至训练完成的回归树数学模型中,得到对应实木地板图像的颜色深度值,计算通过验证集回归得到的实木地板图像的颜色深度值与步骤4中设定的对应实木地板图像的颜色深度值的均方根误差,以最小化均方根误差为训练完成的回归树数学模型的超参数进行调优,得到调优后的最优回归树数学模型;
步骤8:将所有待测的实木地板图像的颜色特征向量输入最优回归树数学模型,计算得到多个实木地板图像的颜色深度值;
步骤9:根据步骤8求出的多个实木地板图像的颜色深度值的大小将实木地板图像的颜色进行在线排序。
作为本发明进一步改进的技术方案,所述的步骤3具体为:
3.1、加载待排序的实木地板图像文件列表;
3.2、计算待排序的实木地板总数量为N;
3.3、首先选取两张实木板材图像,则已排序实木地板图像数P设置为2,在图像展示区展示选取的两张实木板材图像,将两张实木板材图像进行颜色深浅对比,由浅至深依次对两张实木地板图像进行排序,获得最初始的实木地板图像的颜色深浅序列;
3.4、判断N张实木地板图像是否均排序完成,即在P=N时结束流程,否则,将已排序好的实木地板图像的颜色深浅序列记为当前序列,执行步骤3.5;
3.5、在图像展示区左侧展示当前序列中索引为第P/2向上取整处的实木地板图像,将已排序实木地板图像数目P加一,从所有未排序的实木地板图像中随机加载一张实木地板图像并展示在图像展示区右侧;
3.6、将图像展示区右侧展示的实木地板图像与图像展示区左侧展示的实木地板图像进行颜色深浅对比,若图像展示区左侧展示的实木地板图像的颜色比图像展示区右侧展示的实木地板图像的颜色深,则执行步骤3.7,否则,执行步骤3.8;
3.7、在当前序列中将位于图像展示区左侧展示的实木地板图像前方的实木地板图像的颜色深浅序列记为子序列;若该子序列中不存在实木地板图像,则在当前序列中,将图像展示区右侧展示的实木地板图像排列在图像展示区左侧展示的实木地板图像的前方,并执行步骤3.4,若该子序列中存在实木地板图像,则执行步骤3.9;
3.8、在当前序列中将位于图像展示区左侧展示的实木地板图像后方的实木地板图像的颜色深浅序列记为子序列;若该子序列中不存在实木地板图像,则在当前序列中,将图像展示区右侧展示的实木地板图像排列在图像展示区左侧展示的实木地板图像的后方,并执行步骤3.4,若该子序列中存在实木地板图像,则执行步骤3.9;
3.9、计算子序列中实木地板图像的数量Q,在图像展示区左侧重新展示子序列中索引为第Q/2向上取整处的实木地板图像,执行步骤3.6。
作为本发明进一步改进的技术方案,所述的步骤4具体为:
4.1、判断实木地板图像的颜色深浅序列的颜色深浅变化是否均匀,若实木地板图像的颜色深浅序列中颜色深浅变化均匀,则执行步骤4.2,否则,执行步骤4.3;
4.2、令实木地板图像的颜色深度值为[0,1],实木地板图像的颜色深浅序列中颜色最深的实木地板图像的颜色深度值记为1,实木地板图像的颜色深浅序列中颜色最浅的实木地板图像的颜色深度值记为0,设某张实木地板图像在实木地板图像的颜色深浅序列中索引为第R张,则该实木地板图像的颜色深度值为(R-1)/(N-1),其中N大于1;
4.3、令实木地板图像的颜色深度值为[0,1],其中实木地板图像的颜色深浅序列中颜色最深的实木地板图像的颜色深度值记为1,从实木地板图像的颜色深浅序列中除去颜色最深的实木地板图像后得到剩余的实木地板图像的颜色深浅序列,在剩余的实木地板图像的颜色深浅序列中设定B个分界点,则剩余的实木地板图像的颜色深浅序列被分为B+1个区段序列,每个区段序列内的实木地板图像的颜色深浅变化均匀,在剩余的实木地板图像的颜色深浅序列中索引为第o个区段序列内存在u张实木地板图像,那么第o个区段中索引为第f张实木地板图像的颜色深度值为:
本发明的有益效果为:
(1)采用两两对比方法最终得到实木地板图像的颜色深浅序列,简化了实木地板颜色排序任务,两两对比方法中,每次对比只需要对比两张实木地板图像的深浅减少了在大批量实木地板图像情况下造成的模糊,从而提高了实木地板颜色序列初排的可靠性。
(2)通过设置分界点减少采集实木地板样本不均衡问题,防止相近颜色实木地板过多造成的实木地板颜色判定区域畸变,提高实木地板颜色深度判定精确度。
(3)利用梯度提升决策树模型输入实木地板图像的颜色特征向量进行回归,最终得到实木地板图像颜色深度值,其中相同深度值的实木地板图像即为相同颜色的实木地板,实现实木地板颜色分选,并以颜色深度值为标度对实木地板图像自动排序,最终实现实木地板图像按照颜色深浅自动排序。颜色深度值越大,实木地板图像的颜色越深。
(4)本发明与现有的人工颜色分选相比,减少了人工劳动力,且解决了工颜色分选很难实现长时间连续分选的问题,本发明可以实现实木地板颜色的无级分类,同时可以始终保持高准确率。
附图说明
图1为颜色深浅对比流程图。
图2为图像展示区界面图。
图3为实木地板图像的颜色深浅序列中划分分界点示意图。
图4为本方法的整体算法流程图。
具体实施方式
下面根据附图对本发明的具体实施方式作出进一步说明:
图4是本方法的流程图,如图4所示,一种基于提升树的实木地板颜色的自动排序方法,包括以下步骤:
步骤1、采集N张实木地板表面图像作为样本并对实木地板表面图像进行预处理;预处理包括:对实木地板进行边缘检测,提取边缘四个角点,进行矩形矫正,以此去除图片中的背景,最终得到实木地板的完整无背景图像。
步骤2、对预处理后的N张实木地板图像进行颜色空间变换,变换至Lab颜色空间和HSV颜色空间。具体包括:
2.1、Lab颜色空间变换方法:
2.1.1、先进行XYZ颜色空间转换:
2.1.2、然后进行Lab颜色空间转换:
L
a
b
其中:
其中:Y
2.2、HSV空间颜色转换方法:
V=C
步骤3:对N张实木地板图像在RGB颜色空间内进行颜色深浅对比,由浅至深依次对N张实木地板图像进行排序,得到实木地板图像的颜色深浅序列。
步骤3具体为:如图1所示,
3.1、加载待排序的实木地板图像文件列表;
3.2、计算待排序的实木地板总数量N;
3.3、首先选取两张实木板材图像,则已排序实木地板图像数P设置为2,如图2所示,在图像展示区展示选取的两张实木板材图像,将两张实木板材图像进行颜色深浅对比,由浅至深依次对两张实木地板图像进行排序,获得最初始的实木地板图像的颜色深浅序列;
3.4、判断N张实木地板图像是否均排序完成,即在P=N时结束流程,否则,将已排序好的实木地板图像的颜色深浅序列记为当前序列,执行步骤3.5;
3.5、在图像展示区左侧展示当前序列中索引为第P/2向上取整处的实木地板图像(即如图2中显示的展示区左侧图像),将已排序实木地板图像数目P加一,从所有未排序的实木地板图像中随机加载一张实木地板图像并展示在图像展示区右侧(即如图2中显示的展示区右侧图像);
3.6、将图像展示区右侧展示的实木地板图像与图像展示区左侧展示的实木地板图像进行颜色深浅对比,若图像展示区左侧展示的实木地板图像的颜色比图像展示区右侧展示的实木地板图像的颜色深,则执行步骤3.7,否则,执行步骤3.8;
3.7、在当前序列中将位于图像展示区左侧展示的实木地板图像前方的实木地板图像的颜色深浅序列记为子序列(即将当前序列中较图像展示区左侧展示的实木地板图像颜色浅的实木地板图像的颜色深浅序列记为子序列);若该子序列中不存在实木地板图像,则在当前序列中,将图像展示区右侧展示的实木地板图像排列在图像展示区左侧展示的实木地板图像的前方,并执行步骤3.4,若该子序列中存在实木地板图像,则执行步骤3.9;
3.8、在当前序列中将位于图像展示区左侧展示的实木地板图像后方的实木地板图像的颜色深浅序列记为子序列(即将当前序列中较图像展示区左侧展示的实木地板图像颜色深的实木地板图像的颜色深浅序列记为子序列);若该子序列中不存在实木地板图像,则在当前序列中,将图像展示区右侧展示的实木地板图像排列在图像展示区左侧展示的实木地板图像的后方,并执行步骤3.4,若该子序列中存在实木地板图像,则执行步骤3.9;
3.9、计算子序列中实木地板图像的数量Q,在图像展示区左侧重新展示子序列中索引为第Q/2向上取整处的实木地板图像,执行步骤3.6。
步骤4:根据实木地板图像的颜色深浅序列设定每张实木地板图像颜色深度值。
步骤4具体为:
4.1、判断实木地板图像的颜色深浅序列的颜色深浅变化是否均匀,若实木地板图像的颜色深浅序列中颜色深浅变化均匀,则执行步骤4.2,否则,执行步骤4.3;
4.2、令实木地板图像的颜色深度值为[0,1],实木地板图像的颜色深浅序列中颜色最深的实木地板图像的颜色深度值记为1,实木地板图像的颜色深浅序列中颜色最浅的实木地板图像的颜色深度值记为0,设某张实木地板图像在实木地板图像的颜色深浅序列中索引为第R张,则该实木地板图像的颜色深度值为(R-1)/(N-1),其中N大于1;
4.3、令实木地板图像的颜色深度值为[0,1],其中实木地板图像的颜色深浅序列中颜色最深的实木地板图像的颜色深度值记为1,从实木地板图像的颜色深浅序列中除去颜色最深的实木地板图像后得到剩余的实木地板图像的颜色深浅序列,在剩余的实木地板图像的颜色深浅序列中设定B个分界点,其中分界点为实木地板颜色大类的分界点,则剩余的实木地板图像的颜色深浅序列被分为B+1个区段序列,设置分界点时需保证每个区段序列内的实木地板图像的颜色深浅变化均匀,在剩余的实木地板图像的颜色深浅序列中索引为第o个区段序列内存在u张实木地板图像,那么第o个区段中索引为第f张实木地板图像的颜色深度值为:
例如,如果存在颜色深浅变化不均匀的实木地板图像的颜色深浅序列样本如图3所示,则可以通过设置不均的插值方法进行标签设置,如图3所示,其中分界点为实木地板颜色大类的分界点,将颜色最浅的实木地板图像至第1个分界点(即如图3中的分界点1)之间的实木地板图像颜色深浅序列划分为第一个区段序列,且第一个区段序列内包含颜色最浅的实木地板图像,第一个区段序列内实木地板图像的颜色深度值按照第一个区段序列内的实木地板图像数在[0,0.33]区间内均匀插值,第1个分界点至第2个分界点(即如图3中的分界点2)之间的实木地板图像颜色深浅序列划分为第二个区段序列,第二个区段序列内实木地板图像的颜色深度值按照第二个区段序列内的实木地板图像数在(0.33,0.67]区间内均匀插值,第2个分界点至颜色最深的实木地板图像之间的实木地板图像颜色深浅序列划分为第三个区段序列,且第三个区段序列不包含颜色最深的实木地板图像,第三个区段序列内实木地板图像的颜色深度值按照第三个区段序列内的实木地板图像数在(0.67,1)区间内均匀插值。
步骤5:分别提取实木地板图像的RGB颜色空间的一阶矩、二阶矩和各通道的背景色、Lab颜色空间的一阶矩、二阶矩和各通道的背景色以及HSV颜色空间的一阶矩、二阶矩和各通道的背景色,共计27个颜色特征值,将该27个颜色特征值组成该实木地板图像的颜色特征向量;27个颜色特征值包含RGB、Lab、HSV九个通道中每个通道的一阶矩、二阶矩以及各通道的背景色(即颜色直方图的峰值对应的像素值)。
步骤5具体为:
5.1、实木地板图像一阶颜色矩采用一阶原点矩,计算方式为:
5.2、实木地板图像二阶颜色矩采用二阶中心距的平方根,计算方式为:
其中p
5.3、实木地板图像背景色采用图像中占比颜色成分最多的成分,计算方式为像素值中出现次数最多的三个值的均值。
步骤6:将提取的所有实木地板图像的颜色特征向量的数据集按照1:1:3划分为测试集、验证集和训练集。
步骤7:基于梯度提升决策树建立实木地板颜色回归树数学模型,将训练集中实木地板图像的颜色特征向量作为回归树数学模型的输入,训练集中实木地板图像的颜色深度值(即通过步骤4计算得到的颜色深度值)作为回归树数学模型的输出,进而对回归树数学模型进行训练,得到训练完成的回归树数学模型,将验证集中实木地板图像的颜色特征向量输入至训练完成的回归树数学模型中,得到对应实木地板图像的颜色深度值,计算通过验证集回归得到的实木地板图像的颜色深度值与步骤4中设定的对应实木地板图像的颜色深度值的均方根误差,以最小化均方根误差为训练完成的回归树数学模型的超参数进行调优,得到调优后的最优回归树数学模型。
7.1、令训练数据集为:
T={(x
其中x
7.2、将所有实木地板图像的颜色特征向量组成的空间划分为K个互不相交的颜色空间区域C
7.3、建立提升树模型:
7.4、采用均方根误差作为模型的损失函数:
令当前模型拟合数据的残差r=y-g
7.5、使用前向分布算法求解g
g
在前向分布算法的第m步给定当前模型g
7.6、对每个特征向量计算残差:
对r
对j=1,2,…,J计算;
7.7、更新回归树模型g
g
7.8、迭代M次后得到回归树数学模型,即提升树模型
步骤8:将所有待测的实木地板图像的颜色特征向量输入最优回归树数学模型,计算得到多个实木地板图像的颜色深度值;颜色深度值相同的实木地板图像即为相同颜色的实木地板图像,从而实现颜色自动分选。
步骤9:根据步骤8求出的多个实木地板图像的颜色深度值的大小将实木地板图像的颜色进行在线排序。即将颜色深度值从小至大依次对实木地板图像进行排序,得到实木地板图像的颜色深浅序列。
本发明的保护范围包括但不限于以上实施方式,本发明的保护范围以权利要求书为准,任何对本技术做出的本领域的技术人员容易想到的替换、变形、改进均落入本发明的保护范围。