使用光谱测量进行织物验证的制作方法

文档序号:22467195发布日期:2020-10-09 21:50阅读:125来源:国知局
使用光谱测量进行织物验证的制作方法

背景

本公开的实施例涉及织物验证,并且更具体而言,涉及使用光谱测量的织物验证。



技术实现要素:

根据本公开的实施例,提供了用于织物验证的方法和计算机程序产品。在各个实施例中,从近红外光谱仪接收织物样本的近红外吸收光谱。从光谱中提取出多个特征。多个特征被提供给经训练的分类器。经训练的分类器提供指示织物样本与参考织物样本的相似性的相似性得分。

在各个实施例中,近红外光谱仪包括手持式光谱仪。在各个实施例中,向经训练的分类器提供多个特征包括将多个特征发送到远程织物验证服务器,并且从经训练的分类器获得相似度得分包括从织物验证服务器接收相似度得分。在各个实施例中,所述发送和接收是经由广域网执行的。

在各个实施例中,从光谱中提取多个特征包括降噪。

在各个实施例中,从近红外光谱仪接收波长、强度和/或反射率,并且提取多个特征还包括从波长、强度和/或反射率中提取特征。

在各个实施例中,经训练的分类器包括人工神经网络。在各个实施例中,提取多个特征包括主成分分析。在各个实施例中,提取多个特征包括应用人工神经网络。在各个实施例中,人工神经网络包括至少一个卷积层。在各个实施例中,人工神经网络包括多个1d卷积层。

在各个实施例中,从经训练的分类器获得织物材料成分、编织类型、线数、纱线粗细和/或颜色。在各个实施例中,获得相似性得分包括将从参考样本提取的特征提供给经训练的分类器。在各个实施例中,相似度得分被提供给用户。在各个实施例中,向用户提供织物材料成分、编织类型、线数、纱线粗细和/或颜色。

附图说明

图1是根据本公开实施例的用于织物验证的示例性系统的示意图。

图2图示了根据本公开实施例的用于织物验证的处理。

图3图示了根据本公开实施例的用于织物验证的方法。

图4图示了根据本公开实施例的用于织物验证的方法。

图5a-5c图示了根据本公开实施例的神经网络的示意图。

图6描绘了根据本公开实施例的计算节点。

具体实施方式

织物验证是纺织品和服装检查中的重要步骤。在织物验证期间,将物品生产中使用的所有材料与所请求的材料相匹配,以核实正确性。织物验证一般在纺织品生产期间发生。在手动检查处理中,审核员会去给定的工厂仔细检查生产项目,以在交付给分销商之前确保产品质量。当前的验证处理一般由经验丰富的检查员或经认证的实验室执行,这既昂贵又费时。

为了解决这些缺点和替代方法的其它缺点,本公开提供了一种框架,该框架用于通过使用光谱测量设备来核实从给定的参考织物制成纺织品样本集合。

对于每种参考织物,其nir(近红外光谱法)光谱被收集并存储。如下面进一步详细阐述的,然后可以应用高效的机器学习方法来恒定地计算给定样本与参考织物的光谱数据之间的匹配概率。因为光谱信号可能对环境噪声以及特定的用于收集光谱信号数据的方法敏感,因此即使样本的光谱与参考光谱不完全匹配,也可以使用机器学习方法将样本与参考织物进行匹配。即使样本是从相同的织物上取得的,对应的光谱值(例如,吸收率或反射率)也可以具有可观察到的变化。在各个实施例中,机器学习可以用于从光谱数据中提取重要图案,然后计算两种织物(例如,参考织物和样本)之间的光谱相似度。

基于匹配概率,可以采取各种动作。例如,在匹配概率超过预定阈值(例如,70%、80%、90%)的情况下,可以向用户提供织物是预期的指示。在匹配概率低于预定阈值的情况下,可以向用户提供织物不符合预期的指示。在这种情况下,可以建议用户采取补救或报告措施。审核员可以将匹配结果通知对应的品牌或零售商,然后他们可以选择适当的措施(例如,通过/未通过当前检查或建议进行其它重新检查)。

本文描述的方法显著降低了验证处理的成本并使检查失败的风险最小化。

在各个实施例中,提供了一种框架,该框架用于通过将纺织品样本与参考织物进行比较以确保样本具有预期特点来进行织物验证。

在各个实施例中,检查员从被检查的物品中提取纺织品样本,并使用光谱测量设备来收集样本的对应nir光谱。在各个实施例中,光谱数据由测量设备提供给本地计算设备(例如,移动电话或个人计算机)。在一些实施例中,测量设备与计算设备集成在一起。在一些实施例中,测量设备例如经由蓝牙与计算设备无线通信。在一些实施例中,测量设备经由有线连接与计算设备通信。

在一些实施例中,本地计算设备与远程织物验证服务器通信以验证数据。如下面进一步阐述的,织物验证服务器可以包括学习系统,该学习系统被配置为验证数据属于给定织物。在一些实施例中,服务器将验证结果提供回本地计算设备,本地计算设备又将验证结果显示给用户。

在一些实施例中,特征向量被提供给学习系统。基于输入特征,学习系统生成一个或多个输出。在一些实施例中,学习系统的输出是特征向量。

在一些实施例中,学习系统包括svm。在其它实施例中,学习系统包括人工神经网络。在一些实施例中,使用训练数据对训练系统进行预训练。在一些实施例中,训练数据是回顾性数据。在一些实施例中,回顾性数据被存储在数据存储库中。在一些实施例中,可以通过手动策展(curation)先前生成的输出来附加地训练学习系统。

在一些实施例中,学习系统是经训练的分类器。在一些实施例中,经过训练的分类器是随机决策森林。但是,应该认识到的是,根据本公开,各种其它分类器适合使用,包括线性分类器、支持向量机(svm)或诸如经常性神经网络(rnn)之类的神经网络。

合适的人工神经网络包括但不限于前馈神经网络、径向基函数网络、自组织映射、学习向量量化、经常性神经网络、hopfield网络、boltzmann机器、回声状态网络、长期短期记忆、双向经常性神经网络、分层经常性神经网络、随机神经网络、模块化神经网络、关联神经网络、深度神经网络、深度置信网络、卷积神经网络、卷积深度信念网络、大型记忆存储和检索神经网络、深层boltzmann机器、深层堆叠网络、张量深层堆叠网络、尖峰和板块限制boltzmann机器、复合分层深度模型、深度编码网络、多层内核机器或深层q网络。

现在参考图1,图示了根据本公开实施例的用于织物验证的示例性系统。系统100包括光谱测量设备102、本地计算设备108、验证服务器112和数据存储库110。

在一些实施例中,光谱测量设备102包括手持式光谱仪。在一些实施例中,手持式光谱仪包括诸如来自得克萨斯仪器公司(texasinstrument)的dlpnirscannanomodule之类的设备(http://www.ti.com/tool/dlpnirnanoevm)。注意的是,术语“光谱仪”和“分光仪”在本领域中一般可互换使用。

在一些实施例中,本地计算设备108包括平板电脑、智能电话、pda、膝上型计算机或个人计算机。在一些实施例中,本地计算设备108和光谱测量设备102被集成。在一些实施例中,本地计算设备108和光谱测量设备102经由有线或无线网络连接。在一些实施例中,无线网络是个人局域网(pan),诸如蓝牙。

在一些实施例中,本地计算设备108经由有线或无线网络与服务器112通信。在一些实施例中,经由蜂窝数据或wifi来提供本地计算设备108与服务器112之间的连接。

审核员检查被检查的物品,诸如t恤104。提取纺织品样本106。在一些实施例中,使用测量装设备102提取样本。测量设备102搜集样本104的光谱数据。如上所述,可以在近红外(nir)中收集光谱数据。

将来自光谱测量设备102的光谱数据提供给本地计算设备108(在一些实施例中可以是移动电话)。在各个实施例中,光谱数据可以包括各种信息,包括但不限于湿度、温度、移位向量系数、曝光、pga增益、波长、吸收率、反射率、参考信号和/或样本信号。在各个实施例中,本地计算设备可以接收样本织物和参考织物的光谱数据(例如,波长、吸收率和/或反射率)。在各个实施例中,本地计算设备可以将一个或多个滤波器应用于数据,以例如过滤掉任何环境噪声。在各个实施例中,除了这些光谱信号的一阶和二阶导数之外,原始光谱数据(例如,波长、吸收率和/或反射率)也可以从光谱测量设备提供给本地计算设备。本地计算设备处理光谱,然后发送到织物验证服务器112。在一些实施例中,验证服务器112被配置为将学习系统应用于输入光谱数据以便确定织物类型。在一些实施例中,学习系统输出检测到的织物类型以显示给用户。在一些实施例中,学习系统输出匹配所选择的参考织物的概率。在一些实施例中,学习系统输出匹配多个参考织物的概率。

在各个实施例中,验证服务器被配置为将学习系统应用于输入光谱数据,以便确定织物的各种特征。这些特征可以包括织物材料成分、编织类型、线数、纱线粗细和/或颜色。在一些实施例中,学习系统输出针对多个特征的检测到的值。在一些实施例中,学习系统基于检测到的特征输出匹配所选择的参考织物的概率。

在各个实施例中,分类器包括用于根据样本和参考织物的光谱数据来计算两个潜在特征的第一部件。在各个实施例中,输入数据是根据光谱信息计算的一维(1d)向量。在各个实施例中,可以减少来自初始数据的适用特征的数量,以提高计算性能并防止过度拟合。在各个实施例中,主成分分析(pca)可以用于输入数据。pca是用在特征工程处理中的降维技术,以将大量变量(可能是相关的)减少到包含初始数据中的重要信息的较小特征集。例如,输入光谱数据可以包括288个吸光度值点以及光谱信号的一阶和二阶导数的对应值,从而它可以具有数百个维度。使用pca将这个维度从光谱信息降低到较小的值(例如,8或16)可以增强分类器的性能,尤其是当一个参考织物中只有少量样本时。

在各个实施例中,深度神经网络可以用于特征提取。在各个实施例中,,可以通过如本领域中已知的将适当的深度网络应用于1d输入数据来实现特征提取。例如,从光谱输入数据中,可以通过用不同窗口尺寸(例如,3、5、7)和最大池化层(例如,窗口尺寸为2且步数为3)以及多个完全连接的层(例如,4个完全连接的层)来遍历多个一维卷积神经网络以及来计算最终特征,多个完全连接的层的本征向量的尺寸恰好是最终特征向量的期望尺寸(例如,4、8或16)。在各个实施例中,特征提取的输出是最终的固定尺寸的向量。

在各个实施例中,分类器包括用于测量两个计算出的本征向量之间的相似度的第二部件,以确定这些织物在用户选择的阈值下有多相似。对于第二部件,有多种方法来测量两个向量之间的相似度,诸如例如相关性、余弦相似度、欧氏距离、极端提升机(extremeboostingmachine)、catboost、lightgbm和深度神经网络。图5a、5b和5c图示了根据本公开各种实施例的用于光谱相似性确定的示例性神经网络的示意图。例如,如图5a、5b和5c所示,在特征提取步骤之后,从参考织物和样本织物(a1和a2)两者中提取对应的特征向量。通过计算这两个向量之间每个坐标之差的绝对值来确定新向量|a1-a2|。在各个实施例中,使用relu激活功能,所得的新向量可以穿过一个或多个(例如,3个)完全连接的层。在各个实施例中,神经网络可以在末端包括完全连接的层以估计参考织物与样本织物的相似性。在各个实施例中,在确定相似性得分之后,得出样本织物与给定参考织物相似或不相似的结论的最终决定取决于所选择的阈值。例如,如果选择99%的阈值,那么如果计算出的相似性得分大于或等于99%,那么可以将样本织物确定为与参考织物相同的织物。

现在参考图2,图示了根据本公开实施例的用于织物验证的处理。输入纺织品样本202被提供给验证处理204,从而提供验证结果212。织物验证204采用机器学习模型。从光谱仪提取的光谱数据在206处被预处理以减少环境噪声和数据收集处理的影响。特征提取208可以使用从光谱测量设备收集的各种信号,包括波长、强度、吸收率和反射率。例如,波长和对应的吸光度或反射率值可以用于执行特征计算。在一些实施例中,使用pca(主成分分析)。在一些实施例中,使用不同波长间隔之间的吸光度值的直方图。在一些实施例中,使用深度卷积特征图。在一些实施例中,使用多种类型的特征的组合。

在210处训练分类器以识别多个参考织物中的每一个。

将认识到各种降噪方法可以被用作预处理步骤的一部分。例如,平滑、低通滤波、具有或不具有参考通道的主成分分析(pca)、样条插值和块平均可以用于本文所述系统中的降噪。

现在参考图3,图示了根据本公开的实施例的用于织物验证的方法。方法300的计算步骤可以在检查现场本地执行,可以由例如云服务器的远程服务器执行,或者可以在本地计算设备和远程服务器之间共享。在310处,光谱测量设备从纺织品样本收集光谱数据。输入纺织品可以由具有不同成分、规格、颜色、经纱或纬纱的各种物体组成。在320处,从光谱数据生成特征向量。如以上所讨论的,可以使用pca或直方图计算来计算这些特征。在一些实施例中,一维卷积神经网络的一个或多个滤波器的多个特征图被用于提取固定尺寸的输出向量。在330处,使用在操作320处计算出的固定尺寸向量,训练分类器以验证纺织品样本是否具有与参考样本相同的成分。

对于每种参考织物,收集多个样本的光谱数据。在一些实施例中,它们被存储在数据存储库中,然后用于训练。在一些实施例中,机器学习模型(例如,监督学习或非监督学习)可以被应用于所存储的数据。对于给定的测试样本,特征被提取并提供给经训练的分类器以测量测试样本的光谱与训练样本的相似度。在各个实施例中,分类器的输出是与测试样本与一种或多种参考织物的相似度对应的相似度得分。可以将相似度得分与预定阈值进行比较,以确定对匹配或不匹配的确定。阈值可以试探性地选择,或者可以在训练期间自适应地计算。在各个实施例中,相似性得分可以在范围[0,1]中。在各个实施例中,可以针对具体织物的每个参考数据集自适应地选择阈值,以使得提出的机器学习模型的准确性、auc和f1得分可以最大化。在各个实施例中,相似度得分大于或等于所选择的阈值的任何样本都可以被认为“匹配”参考织物。

现在参考图4,图示了用于织物验证的方法。在401处,接收织物样本的近红外吸收光谱。在402处,从光谱中提取多个特征。在403处,将多个特征提供给经训练的分类器。在404处,经训练的分类器提供指示织物样本与参考织物样本的相似度的相似度得分。

现在参考图6,示出了计算节点的示例的示意图。计算节点10仅是合适的计算节点的一个示例,并且不旨在对本文描述的实施例的使用范围或功能提出任何限制。无论如何,计算节点10都能够实现和/或执行上文阐述的任何功能。

在计算节点10中,存在计算机系统/服务器12,其可与众多其它通用或专用计算系统环境或配置一起操作。众所周知,适于与计算机系统/服务器12一起操作的计算系统、环境和/或配置的示例包括但不限于:个人计算机系统、服务器计算机系统、瘦客户端、厚客户端、手持或膝上设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络pc、小型计算机系统、大型计算机系统和包括上述任意系统或设备的分布式云计算技术环境,等等。

计算机系统/服务器12可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。一般而言,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、部件、逻辑、数据结构等。计算机系统/服务器12可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质中。

如图6所示,计算节点10中的计算机系统/服务器12以通用计算设备的形式示出。计算机系统/服务器12的部件可以包括但不限于:一个或者多个处理器或者处理单元16、系统存储器28、连接不同系统部件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、使用多种总线结构中的任意总线结构的处理器或者局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线、外围部件互连(pci)总线、外围部件互连高速(pcie)和高级微控制器总线体系架构(amba)。

计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是可以被计算机系统/服务器12访问的任意可获得的介质,包括易失性和非易失性介质、可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。计算机系统/服务器12还可以包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(未显示,通常称为“硬盘驱动器”)。虽然未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(诸如cd-rom、dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。如以下将被进一步描述和描绘的,存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40可以被存储在存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用、其它程序模块以及程序数据。操作系统、一个或者多个应用、其它程序模块以及程序数据中的每一个或某种组合中可以包括网络环境的实现。程序模块42一般执行本文所描述的实施例中的功能和/或方法。

计算机系统/服务器12还可以与一个或多个外部设备14通信,诸如键盘、指示设备、显示器24等;一个或多个使用户能够与计算机系统/服务器12交互的设备;和/或使计算机系统/服务器12能够与一个或多个其它计算设备通信的任何设备(例如,网卡、调制解调器等)。这种通信可以经由输入/输出(i/o)接口22发生。还有,计算机系统/服务器12可以经由网络适配器20与诸如局域网(lan)、通用广域网(wan)和/或公共网络(例如,互联网)之类的一个或多个网络通信。如图所描绘的,网络适配器20经由总线18与计算机系统/服务器12的其它部件通信。应当理解的是,虽然未示出,但是其它硬件和/或软件部件可以与计算机系统/服务器12结合使用。示例包括但不限于:微代码、设备驱动程序、冗余处理单元、外部磁盘驱动器阵列、raid系统、磁带驱动器和数据存档存储系统等。

本公开可以实施为系统、方法和/或计算机程序产品。该计算机程序产品可以包括计算机可读存储介质(或介质),其上具有计算机可读程序指令,用于使处理器执行本公开的各方面。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的示例(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其它自由传播的电磁波、通过波导或其它传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如互联网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言(诸如smalltalk、c++等),以及常规过程式编程语言(诸如“c”语言或类似的编程语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用互联网服务提供商来通过互联网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。

本文参考根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应该理解的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令能够使得计算机、可编程数据处理装置和/或其它设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的(一个或多个)逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

已经出于说明的目的给出了对本公开的各种实施例的描述,但是并不旨在是详尽的或限制于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是清晰的。选择本文使用的术语是为了最好地解释实施例的原理、实际应用或对市场中发现的技术的技术改进,或者使本领域其他技术人员能够理解本文公开的实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1