信息处理装置、信息处理程序和信息处理方法与流程

文档序号:20167388发布日期:2020-03-24 21:54阅读:241来源:国知局
本发明涉及信息处理装置、信息处理程序和信息处理方法。
背景技术
::以往,存在通过遗传编程(geneticprogramming)自动生成图像处理程序的技术,该图像处理程序执行期望的图像处理。该技术使用输入图像和作为目标的处理结果(目标图像等),通过遗传编程来优化图像处理程序。此外,作为图像处理程序的自动生成之一,提出有进行图像的等级(class)分类(类别分类)的图像分类程序的自动生成法(例如,参考专利文献1等)。通过使用图像分类程序,例如,能够将图像中拍摄的对象物分类为合格品和不合格品的2个等级。现有技术文献专利文献专利文献1:国际公开第2017/068675号技术实现要素:发明要解决的问题在现有的合格与否判定算法自动生成中,使用多张学习图像和仅表示该多张学习图像中所拍摄的对象物是合格品还是不合格品的教导数据来实施学习。但是,在这样的方法中,有时除了作为原来判断为不合格品的原因的部分以外,还将与合格与否无关的差异作为合格与否判定基准用于学习,有可能导致判定精度的下降。在1个侧面中,本发明的目的在于提供一种可自动生成能够高精度地对图像进行分类的图像分类程序的信息处理装置、信息处理程序和信息处理方法。用于解决问题的手段在一个方式中,信息处理装置根据遗传编程自动生成组合了元素滤波器的图像分类程序,其中,该信息处理装置具有:受理部,其受理学习图像中包含特征性的部分的特征区域的指定;第1数据生成部,其生成第1数据,该第1数据表示对所述学习图像进行分割后的各个分割区域与所述特征区域之间的重叠度;第2数据生成部,其通过规定的图像分类程序对所述学习图像进行图像转换,根据所获得的图像,计算各个所述分割区域的图像特征量,生成表示与各个所述分割区域对应的所述图像特征量的第2数据;计算部,其计算所述第1数据与所述第2数据之间的类似度;以及处理部,其将根据所述类似度对所述规定的图像分类程序进行评价的结果用于所述遗传编程的执行。发明效果可生成能够高精度地对图像进行分类的图像分类程序。附图说明图1是示出第1实施方式的图像分类装置的硬件结构的一例的图。图2是示出在遗传编程中处理的个体的树结构滤波器列的基本结构的例子的图。图3的(a)~图3的(c)是用于说明ng区域的教导方法的图。图4的(a)~图4的(d)是用于说明ng区域的指标化的图,图4的(e)是用于说明分割区域的图像特征量的指标化的图。图5的(a)、图5的(b)是用于说明类似度计算的具体例的图(其一)。图6的(a)、图6的(b)是用于说明类似度计算的具体例的图(其二)。图7的(a)~图7的(f)是用于说明ng部分的估计的图。图8是示出图像分类装置具备的处理功能的结构例的框图。图9是示出程序生成部的处理过程的例子的流程图。图10是示出图9的步骤s28的具体处理的流程图(其一)。图11是示出图9的步骤s28的具体处理的流程图(其二)。图12是示出图像检查处理部的处理过程的例子的流程图。图13是用于说明第1实施方式中用于提取图像特征分布数据(图像特征分布指标)的生成用的图像特征量的滤波器的图。图14的(a)~图14的(e)是用于说明针对虚拟的ng图像实施学习和合格与否判定后的结果的图(其一)。图15是用于说明针对虚拟的ng图像实施学习和合格与否判定后的结果的图(其二)。图16是用于说明针对虚拟的ng图像实施学习和合格与否判定后的结果的图(其三)。图17是示出第2实施方式的概要的图。图18的(a)~图18的(e)是示出对第2实施方式的学习和合格与否判定进行测试后的结果的图。图19是示出第2实施方式中教导ng区域的情况下的ng部分的估计结果的图。图20是用于说明第3实施方式的图。图21是用于说明第4实施方式的图。具体实施方式《第1实施方式》以下,根据图1~图16,对作为信息处理装置的图像分类装置的第1实施方式详细地进行说明。第1实施方式的图像分类装置具有根据遗传编程自动生成组合了元素滤波器后的图像分类程序的功能、和执行所生成的图像分类程序从而执行图像分类处理的功能。图1是示出第1实施方式的图像分类装置100的硬件结构的一例的图。图像分类装置100具有处理器101、ram102、hdd103、图形(graphic)处理装置104、输入接口105、读取装置106、通信接口107和网络接口108。图像分类装置100的各部与总线109连接。处理器101对图像分类装置100整体进行控制。处理器101也可以是多处理器。处理器101例如为cpu(centralprocessingunit:中央处理装置)、mpu(microprocessingunit:微处理单元)、dsp(digitalsignalprocessor:数字信号处理器)、asic(applicationspecificintegratedcircuit:专用集成电路)、pld(programmablelogicdevice:可编程逻辑器件)等。此外,处理器101也可以为cpu、mpu、dsp、asic、pld中的2个以上的元素的组合。ram102被用作图像分类装置100的主存储装置。ram102中临时存储有使处理器101执行的os(operatingsystem:操作系统)的程序、应用程序中的至少一部分。此外,ram102中存储有处理器101进行的处理所需的各种数据。hdd103被用作图像分类装置100的辅助存储装置。在hhd103中存储有os程序、应用程序和各种数据。另外,作为辅助存储装置,还能够使用ssd(solidstatedrive:固态硬盘)等其他种类的非易失性存储装置。显示装置104a与图形处理装置104连接。图形处理装置104依照来自处理器101的命令,使图像显示在显示装置104a的画面上。作为显示装置,存在液晶显示器、有机el(electroluminescence)显示器等。输入装置105a与输入接口105连接。输入接口105将从输入装置105a输出的信号发送到处理器101。作为输入装置105a,存在键盘、指示设备等。作为指示设备,存在鼠标、触摸面板(touchpanel)、平板(tablet)、触摸板(touchpad)、轨迹球(trackball)等。在读取装置106上装卸可移动型记录介质106a。读取装置106读取在可移动型记录介质106a中所记录的数据并发送到处理器101。作为可移动型记录介质106a,存在光盘、光磁盘、半导体存储器等。通信接口107与所连接的外部器件之间进行数据的收发。在本第1实施方式中,照相机107a作为外部器件与通信接口107连接,通信接口107将从照相机107a发送的图像数据发送到处理器101。网络接口108经由网络108a与其他装置之间进行数据的收发。图像分类装置100通过遗传编程自动地生成用于将输入图像分类为多个等级中的1个的图像分类程序。在基于所生成的图像分类程序的图像分类处理中例如包含判定输入图像中所拍摄的产品、部件是合格品还是不合格品的处理、判定输入图像中是否拍摄有面部的处理等。利用图像分类程序实现的处理包含通过使用学习图像的学习而生成识别器的识别器生成处理和根据学习图像来生成输入到识别器中的特征信息的预处理。在实现高精度的图像分类方面,以下两点很重要:从学习图像中提取何种特征量来使用;以及根据所获得的特征量生成何种识别器。图像分类装置100通过遗传编程,搜索识别器的生成算法与预处理算法的最佳组合。由此,可生成实现能够进行高精度的图像分类的识别器的处理的图像分类程序。(在遗传编程中处理的个体)图2是示出在遗传编程中处理的个体的树结构滤波器列的基本结构的例子的图。如图2所示,利用设定有程序模块作为各节点的元素的树结构来表示个体,在该树结构中,对输入图像施加各种图像转换以生成特征提取图像,从所生成的图像中提取图像特征量,组合图像特征量而生成特征向量,利用svm识别器来执行用于判定ok图像和ng图像的学习或判定。另外,ok图像是拍摄有合格品的图像,ng图像表示拍摄有不合格品的图像。此外,表示个体的树结构分别被划分为包含1个以上的相邻层级的区间(处理)。在本第1实施方式中,树结构从其叶侧(图2的上侧)朝向根侧(图2的下侧)划分为图像转换处理、图像特征量提取处理、输入数据生成处理、svm识别器生成处理。另外,svm识别器生成处理中包含svm参数设定处理、svm识别器生成处理、适合度(fitness)计算处理。这里,图像转换处理、图像特征量提取处理、输入数据生成处理与用于生成输入到识别器中的数据的预处理相对应。在图像转换处理中,使用图像转换滤波器将输入图像转换成适合于特征提取。另外,作为图像转换滤波器,可以应用平滑滤波器(smoothfilter)、sobel滤波器、laplace滤波器、and滤波器、sub滤波器、add滤波器、or滤波器、erode滤波器、dilate滤波器、threshold滤波器等。图像特征量提取处理是使用特征提取滤波器从通过图像转换处理转换后的图像中提取特征量的处理。作为特征提取滤波器,可应用计算平均亮度的滤波器、计算亮度直方图的滤波器、执行fft(fastfouriertransformation:快速傅里叶变换)的滤波器等。此外,还可以应用区域分割数等控制参数不同的相同种类的滤波器。输入数据生成处理是根据在图像特征量提取处理中所提取的特征量来生成用于输入到识别器中的输入数据(特征向量)的处理。作为用于生成输入到识别器中的输入数据的输入数据生成模块,例如,可以使用输入数量分别为1、2的程序模块、执行输入数据的归一化、输入数据的压缩等的程序模块。svm参数设定处理例如包含设定学习参数的绝对值的处理和设定学习参数的相对值的处理。所设定的绝对值根据使用所设定的相对值的加减法、调度等而增减,由此,确定用于生成识别器的学习参数。svm识别器生成处理确定要使用的核函数(kernelfunction)、动作模式。作为核函数,例如、可应用linear核、polynomial核、rbf(radialbasisfunction:径向基函数)核、sigmoid核等。此外,作为动作模式,确定树结构和svm识别器的学习、输入图像的合格与否判定。适合度计算处理依照通过svm识别器生成处理生成的识别器信息,根据通过输入数据生成处理而生成的输入数据来执行判定学习图像的合格与否(ok图像或ng图像)的分类处理,对分类处理的分类结果与学习图像中所附加的标签所表示的合格与否进行比较,判定分类结果是正确、还是不正确。而且,适合度计算处理使用交叉验证等来多次执行判定并计算针对学习图像的正确率,根据计算出的正确率,计算个体的适合度。这里,适合度是表示自动生成的树结构滤波器列的输出结果与作为目标的图像识别结果以何种程度一致的指标。在本第1实施方式中,在适合度计算处理中,在计算各个体的适合度时,还考虑惩罚项(penaltyterm)。作为惩罚项,可应用识别器的特征维数、树结构的尺寸(树结构所包含的节点数或节点的最大层级数)、使用svm识别器的情况下的支持向量数等。例如,一般来说,与能够获得的数据相比,识别器的复杂度越大,越容易产生过度学习。因此,例如,校正成特征维数越大、并且树结构的尺寸越大、并且支持向量数越大,正确率越减小,来计算适合度。另外,特征维数能够根据在输入数据生成处理中所设定的输入数据生成模块来判别。通过这样根据惩罚项来校正正确率,能够准确地评价学习结果的优劣,能够生成分类精度高的图像分类程序。另外,之后叙述详细内容,但是,在适合度计算处理中,还考虑基于用户在图像上指定的ng区域的位置与能够从通过图像转换处理而转换后的图像获得的特征量的分布之间的类似度的惩罚项。该情况下,如果类似度较大,则减小惩罚项的值,如果类似度较小,则增大惩罚项的值。通过以上述的方式分别设定图2的树结构的节点,生成个体。图像分类装置100首先在生成个体组所包含的多个初始个体之后,根据从该个体组中选择出的母个体而生成子个体,将适合度高的子个体更换为个体组内的母个体。图像分类装置100反复执行这样的处理,将具有一定值以上(预先确定的阈值以上)的适合度的个体作为最佳个体输出。在这样的处理中,在使母个体进化并生成子个体时,通过母个体的交叉或母个体、子个体的突然变异,变更母个体的1个以上的节点的元素。在变更某个节点的元素以使母个体进化的情况下,变更后的元素成为针对该节点所属的区间而预先准备的程序模块。例如,在通过突然变异而变更图像转换处理的元素的情况下,从与图像转换处理对应的图像转换滤波器中选择变更后的元素。通过这样的处理,对各区间中的处理算法的组合进行优化。例如,对用于提取输入到识别器中的特征量的处理算法与用于生成识别器的处理算法的组合进行优化。其结果,可选择用于图像分类的适当的识别器的种类、学习参数,并且能够提取适合于向该识别器的输入的特征量。因此,能够生成分类精度高的图像分类程序。(处理的概要)接着,对本第1实施方式中的处理的概要进行说明。在本第1实施方式中,在使用学习图像的学习时,用户输入学习图像(ng图像)中的、作为被判定为ng的根据的ng区域,并教导给图像分类装置100。另外,设为用户精通于合格与否判定的基准,通过目视确定ng区域,经由输入装置105a输入ng区域的坐标。而且,图像分类装置100计算学习图像内的ng区域的位置与对学习图像进行转换后的图像的特征量的分布之间的类似度。并且,图像分类装置100考虑计算出的类似度,计算个体的适合度,并用于基于遗传编程的图像分类程序的学习。以下,对上述各处理详细地进行说明。(1)ng区域的教导方法以下,对用户指定ng区域并教导给图像分类装置100的方法进行说明。另外,ng区域是学习图像中包含特征性的部分(伤痕、异物)的区域。图3的(a)中示出学习图像的一例。图3的(a)的学习图像中存在矩形的对象物,将该对象存在的区域称作关注区域(roi:regionofinterest)。另外,在本第1实施方式中,作为原则,在图像内的任意位置处设定有roi,仅将该roi内作为对象进行学习、检查等,但是,roi也可以是图像整体。这里,假设在学习图像的ok图像中,对象物中不存在异物、伤痕(参照图3的(a)),ng图像中存在异物、伤痕(参照图3的(b))。该情况下,假设在用户教导ng区域时,将在图3的(b)中用虚线框表示的矩形区域指定为ng区域。这样,通过使ng区域成为矩形区域,能够简化教导作业,能够使后述的ng区域的指标化的计算简单。该情况下,如在图3的(b)的右端的图中所示,也可以在异物、伤痕复杂地分布的情况下,教导多个矩形区域(ng区域),也可以如在图3的(b)的从右起第2个图中所示,教导1个大的矩形区域(ng区域)。此外,还可以如在图3的(b)的左端的图中所示,不将一部分异物、伤痕包括在内来教导矩形区域(ng区域)。另外,在本第1实施方式中,前提在于,不限于在学习之后所提供的检查图像(未知图像)中的与学习图像相同的位置处存在ng区域,不限于存在相同的ng(异物、伤痕)。另外,不限于矩形区域,如图3的(c)所示,用户也可以按照圆、椭圆形状等除了矩形以外的基本图形来教导ng区域。(2)ng区域的指标化接着,根据图4的(a)~图4的(d),对图像分类装置100对以上述的方式教导的ng区域进行指标化的处理进行说明。图4的(a)中示出了圆形的部件(对象物)存在于图像中央附近的ng图像。图4的(a)的ng图像为在对象物的表面描绘出作为打痕或异物的椭圆的测试图像(学习图像)。针对该学习图像,用户将在图4的(a)中用白色的粗线矩形框表示的区域作为ng区域来进行教导。此外,假设如图4的(b)的白色的细线矩形框那样设定该图像的roi。另外,以下,假设有时还以roi的范围内的意思单纯地使用“图像内”的用语。针对图像中的roi,设定分割区域。例如,当横向分割为m份、纵向分割为n份时,roi被分割为m×n个区域。在图4的(b)中示出分割为5×5个区域的例子。另外,假设用户能够设定分割数量。但是,不限于此,分割数量也可以预先确定。假设对分割区域分别标注编号(参照图4的(c))。对这样的分割区域进行所教导的ng区域的指标化。在图4的(c)中,黑色的粗线矩形框(对应于图4的(a)的白色的粗线矩形框)为ng区域。这里,求出如各分割区域中ng区域占据多少比率的值作为指标值。图4的(d)是示出所求出的指标值的图表。根据图4的(d)的图表,示出了所教导的ng区域分布于图像内的哪里,指标值在各分割区域中取0.0~1.0的值。另外,不限定于此,指标值还能够设为表示ng区域在各个分割区域中以何种比率被分割的值。该情况下,全部分割区域中的指标值的合计为1.0。另外,在存在多个矩形区域(ng区域)的情况下,也能够同样地进行指标化。以下,将如图4的(d)那样表示图像内的ng区域的分布的数据称作“ng教导区域数据”或“ng教导区域指标”等。另外,ng教导区域数据(ng教导区域指标)可以说是对学习图像进行分割后的各个分割区域与ng区域的重叠度的第1数据。(3)分割区域的图像特征量的指标化接着,根据图4的(e),对基于图像分类装置100的分割区域的图像特征量的指标化处理进行说明。图4的(e)是示出通过后述的图像转换处理获得的特征提取图像(转换图像)的特征量在各分割区域中如何分布的图表。在图4的(e)的例子中示出如下例子:假设特征提取图像为原图像本身,计算各分割区域中的平均亮度作为图像特征量。在本第1实施方式中,如图2所示,利用各种特征提取滤波器从特征提取图像中提取图像特征量并生成合格与否判定的识别器,在合格与否判定中成为重要的图像。另外,作为分割区域的特征量,除了各分割区域中的平均亮度以外,还可以使用偏差(variation)的标准偏差、范围(最大值与最小值之差)等。以下,如图4的(e)所示,假设将表示转换图像中的图像特征量在各分割区域中如何分布的数据称作“图像特征分布数据”或“图像特征分布指标”等。另外,图像特征分布数据(图像特征分布指标)也可以说是表示根据转换图像计算出的每个分割区域的图像特征量的第2数据。(4)ng区域指标与图像特征分布指标之间的类似度在上述的(2)、(3)中所获得的2个指标(图4的(d)、图4的(e))成为分别表示ng区域如何分布和图像特征量如何分布的指标。如果这些指标类似,则可以说通过图像转换而获得的图像准确地提取出了ng部分的特征。因此,在本第1实施方式中,对如该类似度高的图像转换处理进行学习。这里,能够将2个指标视作向量,并作为余弦类似度、归一化相关值而求出2个指标的类似度。以下,根据图5和图6,对类似度计算的具体例进行说明。图5的(a)、图5的(b)的上段示出ng图像的输入图像(学习图像)。此外,图5的(a)、图5的(b)的中段示出用白色矩形框表示ng区域的输入图像和在学习早期阶段对各输入图像进行图像转换之后的特征提取图像。并且,图5的(a)、图5的(b)的下段示出ng教导区域指标和图像特征分布指标。此外,图6的(a)、图6的(b)中示出学习最后阶段中的、与图5的(a)、图5的(b)对应的图。这里,在图5、图6的例子中,ng教导区域指标为ng区域在各分割区域内占据的比率,图像特征量为转换图像的各分割区域内的平均亮度。图5、图6的最下段示出通过归一化相关运算求出ng教导区域指标与图像特征分布指标之间的类似度而得到的结果。如图5的(a)、图5的(b)所示,在学习早期阶段,ng图像2的类似度还非常小。另一方面,当到达学习最后阶段时,如图6的(a)、图6的(b)所示,ng图像1和ng图像2的类似度都接近1.0,可知学习最后阶段更能够在特征提取图像中仅准确地提取出ng部分。另外,在本第1实施方式中,如图2所示,有时在树结构滤波器列中存在多个枝,因此,对于ng区域的类似度,也仅计算枝的数量个。因此,需要计算综合了多个类似度后的类似度(综合类似度),作为该方法,作为一例,考虑如以下的(a)、(b)的方法。另外,综合类似度按照每张ng图像来计算。(a)关于多个枝的类似度的绝对值的平均值、最大值或最小值(b)关于多个枝的类似度的平均值、最大值或最小值(5)适合度的定义接着,对考虑以上述的方式求出的类似度(综合类似度)的适合度的计算方法进行说明。为了如从图5的(a)、图5的(b)的状态(学习早期阶段)至图6的(a)、图6的(b)的状态(学习最后阶段)那样推进学习,在类似度高的情况下减小基于类似度的惩罚项的值,对如下式(1)的适合度进行定义。此外,如下式(2)所示,基于类似度的惩罚项定义成伴随类似度提高(接近1.0)而逐渐接近零。另外,在计算惩罚量时,需要根据每个上述的ng图像的综合类似度求出惩罚量。这时,可以对各ng图像的综合类似度单纯地进行平均,也可以取各ng图像的综合类似度的权重平均。作为加权的基准,考虑与ng区域的面积对应的权重系数等。适合度=正确率-识别器的惩罚项-基于类似度的惩罚项……(1)该适合度表示自动生成的程序的评价值,并且是适合度越高越好的程序。基于类似度的惩罚项=1.0-类似度的ng图像整体的平均值……(2)如通过式(2)所示的那样,类似度越高,该惩罚项越小。因此,用式(1)表示的适合度被校正为作为各项的合计而提高。这里,作为正确率,可以使用关于学习图像的交叉验证的正确率。以下,将基于ng教导区域数据与图像特征分布数据之间的类似度的惩罚简称作“基于类似度的惩罚项”。另外,使基于类似度的惩罚项以适当的形式反映到适合度,因此,也可以针对基于类似度的惩罚项施加固定或可变的权重系数。例如,在类似度的计算中使用归一化相关运算,求出多个枝的类似度的绝对值的平均值作为综合类似度,设类似度的惩罚项为1.0-(多个枝的类似度的绝对值的平均值)。该情况下,为了成为适当的适合度而优选使权重系数成为0.1~0.3左右。另外,也可以设为以类似度越高、惩罚值越小的方式将类似度的值转换为负,或转换为倒数。(6)ng部分的估计接着,对图像分类装置100对ng部分的估计方法进行说明。另外,假设在估计ng部分时,基于遗传编程的图像分类程序的学习已经完成。另外,ng部分表示分割区域中的、存在伤痕、异物的可能性高的分割区域。在ng部分的估计中,也与图4的(b)、图4的(c)同样,使用各个分割区域的图像特征量。但是,在图4的(b)、图4的(c)中,以ng图像的图像特征量为对象,与此相对,在本处理中,根据ok图像,求出图像特征量。即,在本处理中,如图7的(a)所示,针对学习用的ok图像的roi(白色的实线矩形框)也与之前同样地实施区域分割。而且,针对学习用的各个ok图像,在通过图像转换获得特征提取图像之后,在各分割区域中计算图像特征量的分布(平均和标准偏差)。如图7的(b)那样表示以这样的方式获得的图像特征量的分布。另外,图7的(b)的数据作为正常分布(正常范围)在学习时预先保存。另一方面,在学习后的合格与否判定时,同样如图7的(d)那样根据图7的(c)所示的检查对象的图像(对象图像),求出各分割区域的图像特征量,根据与图7的(b)的差分,计算相对于正常分布的异常得分(score)。异常得分能够通过例如下式(3)求出。图像特征异常得分=(对象图像的图像特征量-正常分布平均值)/正常分布标准偏差……(3)该异常得分按照每个分割区域求出,因此,能够如图7的(e)那样表示。在本第1实施方式中,将异常得分大于规定的阈值的分割区域估计为ng部分。图7的(f)中示出将在图7的(e)中异常得分为阈值(=3)以上的分割区域估计为ng部分并将该分割区域与对象图像重叠而显示的例子。在图7的(f)中,用白色的矩形框表示估计出的ng部分。(图像分类装置100的处理功能)图8是示出图像分类装置100具备的处理功能的结构例的框图。图像分类装置100具有图像输入部111、作为判定部的图像检查处理部112、程序生成部120和存储部150。例如通过由图像分类装置100的处理器101执行规定的程序(包括图像分类程序),实现图像输入部111、图像检查处理部112和程序生成部120的处理。存储部150例如作为图像分类装置100的ram102的存储区域来实现。图像输入部111取得照相机107a拍摄的图像的数据,并输出到程序生成部120或图像检查处理部112。程序生成部120通过遗传编程生成图像分类程序,将与所生成的图像分类程序对应的数据(最佳个体的数据)保存到存储部150中。另外,之后对程序生成部120的内部结构进行叙述。图像检查处理部112经由图像输入部111取得照相机107a拍摄的图像的数据。此外,图像检查处理部112读出存储部150所存储的图像分类程序的数据(最佳个体的数据),使用所读出的图像分类程序判定所取得的图像的合格与否。图像检查处理部112将判定结果显示在例如显示装置104a上。存储部150存储学习图像、由程序生成部120生成的图像分类程序的数据(最佳个体的数据)。学习图像中附加有表示学习图像的合格与否(ok图像或ng图像)的标签(label)。作为学习图像,可以使用图像输入部111从照相机107a所取得的图像。这里,针对程序生成部120的详细内容进一步进行说明。程序生成部120具有作为处理部的gp(geneticprogramming:遗传编程)学习控制部121、图像转换部122、作为第3数据生成部的图像特征量提取部123、输入数据生成部124、识别器参数设定部125、识别器生成部126、作为受理部的ng区域输入部127、分割区域设定部128、作为第1数据生成部的ng区域指标计算部129、作为第2数据生成部的分割区域特征量提取部130、作为计算部的类似度计算部131和适合度计算部132。gp学习控制部121控制基于遗传编程的程序生成处理整体的执行。例如,gp学习控制部121执行初始个体的生成、个体的进化处理等处理。图像转换部122依照在个体的树结构中的图像转换处理的节点所设定的图像转换滤波器,执行针对输入图像的图像转换处理。图像特征量提取部123依照在个体的树结构中的图像特征量提取处理的节点所设定的特征提取滤波器,执行从图像转换后的输入图像提取的特征量提取处理。输入数据生成部124依照在个体的树结构中的输入数据生成处理的节点所设定的程序模块,根据图像的特征量来生成输入到识别器中的输入数据。识别器参数设定部125执行如下处理:依照在个体的树结构中的svm参数设定处理的节点所设定的绝对值和相对值,设定识别器的学习参数。识别器生成部126执行如下处理:依照在个体的树结构中的svm识别器生成处理的节点所设定的核函数、动作模式,使用由识别器参数设定部125设定的学习参数,通过学习生成识别器。ng区域输入部127受理用户经由输入装置105a输入的ng区域的指定,向ng区域指标计算部129输入ng区域的信息(坐标)。如在图4的(b)中用白色的虚线所示,分割区域设定部128针对roi设定分割区域。ng区域指标计算部129计算如图4的(d)所示的ng教导区域指标。分割区域特征量提取部130提取各个分割区域的图像特征量,计算如图4的(e)所示的图像特征分布指标。类似度计算部131通过归一化相关运算计算ng教导区域指标(图4的(d))与图像特征分布指标(图4的(e))之间的类似度。适合度计算部132根据类似度计算部131计算出的类似度,计算适合度。接着,使用流程图,说明图像分类装置100的处理。(程序生成部120的处理)图9是示出程序生成部120的处理过程的例子的流程图。在图9的处理中,首先,在步骤s10中,gp学习控制部121生成多个初始个体,将表示所生成的初始个体的信息存储到存储部150中。以下,将存储部150所存储的个体称作“个体组”。作为初始个体的生成过程,基本上,在个体的树结构的各处理中设定节点,各节点的元素从与节点所属的处理对应的程序模块中选择并设定。接着,在步骤s12中,分割区域设定部128进行分割区域的设定。具体而言,分割区域设定部128对roi设定成沿纵向进行几等分,沿横向进行几等分。另外,分割区域设定部128可以根据用户的输入进行分割区域的设定,也可以根据预先确定的条件进行分割区域的设定。在本实施方式中,假设将roi分割为5×5区域。接着,在步骤s14中,gp学习控制部121从存储部150读出学习图像。该情况下,例如,gp学习控制部121从存储部150读出ok图像或ng图像作为1张学习图像。接着,在步骤s16中,gp学习控制部121取得合格与否正确数据。该情况下,gp学习控制部121从附加于学习图像的标签中取得合格与否正确数据(是ok图像、还是ng图像的信息)。接着,在步骤s18中,ng区域输入部127取得ng区域的数据。该情况下,ng区域输入部127根据来自用户的输入,取得ng区域的数据作为教导数据,并输入到ng区域指标计算部129。接着,在步骤s20中,ng区域指标计算部129进行ng区域的指标化。即,ng区域指标计算部129生成如图4的(d)所示的ng教导区域数据(ng教导区域指标)。接着,在步骤s22中,gp学习控制部121判断存储部150中所存储的学习图像是否结束、即是否读出全部学习图像。在该步骤s22的判断为否定的情况下,返回步骤s14,执行步骤s14~s22的处理作为针对下一个学习图像的处理。另一方面,在步骤s22的判断为肯定的情况下,转移到步骤s24。接着,在步骤s24中,gp学习控制部121从个体组中所包含的个体中随机选择2个母个体。接着,在步骤s26中,gp学习控制部121使用所选择的母个体生成2个以上的规定数量的子个体。例如、gp学习控制部121通过在所选择的2个母个体之间进行交叉,生成2个以上的规定数量的子个体。此外,gp学习控制部121使所生成的各子个体中的任意节点产生突然变异,变更该节点的元素。接着,在步骤s27中,gp学习控制部121选择所生成的1个子个体。接着,在步骤s28中,执行进化过程处理的子例程。在进化过程处理的子例程中,执行遵循图10、图11的流程图的处理。在图10、图11的处理中,首先,在步骤50中,gp学习控制部121从存储部150读出学习图像。接着,在步骤s52中,图像转换部122使用所选择的子个体,对在步骤s50中所读出的学习图像进行图像转换。接着,在步骤s54中,图像特征量提取部123根据转换后的图像,提取图像特征量。这里,在本第1实施方式中,如图13所示,使用与在子个体中图像特征量提取处理中所设定的滤波器(在图13中,f1、f3)不同的滤波器(f0),提取图像特征量。另外,滤波器f0是在各子个体中共同的(固定的)滤波器。即,滤波器f1、f3通过交叉、突然变异进行学习并逐渐发生变化,但是,滤波器f0不发生变化。另外,向滤波器f0的输入是通过图像转换处理而转换后的特征提取图像,并且是与输入到svm识别器的特征提取图像相同的图像。接着,在步骤s56中,输入数据生成部124根据子个体,生成输入到识别器中的输入数据。接着,在步骤s58中,分割区域特征量提取部130计算各个分割区域的图像特征量,生成如图4的(e)所示的图像特征分布数据(图像特征分布指标)。接着,在步骤s60中,类似度计算部131判断学习图像是否为ng图像。在该步骤s60的判断为肯定的情况下,转移到步骤s62,在否定的情况下,转移到步骤s64。在步骤s60的判断为肯定并转移到步骤s62时,类似度计算部131从存储部150读出与当前所读出的学习图像对应的图像特征分布数据(图像特征分布指标),计算与在步骤s56中所生成的ng教导区域数据(ng教导区域指标)之间的类似度。另外,类似度计算部131预先将计算出的类似度存储到存储部150中。然后,转移到步骤s66。另一方面,在步骤s60的判断为否定并转移到步骤s64时,图像特征量提取部123将图7的(b)所示的图像特征分布数据(图像特征分布指标)作为正常范围计算用而存储到存储部150中。在步骤s64之后,转移到步骤s66。当转移到步骤s66时,gp学习控制部121判断学习图像是否已结束、即是否在步骤s50中读出了全部学习图像。在该步骤s66的判断为否定的情况下,返回步骤s50,反复进行步骤s50~s66的处理·判断,直到步骤s66的判断为肯定为止。另一方面,当步骤s66的判断为肯定时,转移到图11的步骤s70。当转移到图11的步骤s70时,图像特征量提取部123计算图像特征分布数据的正常范围。具体而言,图像特征量提取部123从存储部150取得多个正常范围计算用的图像特征分布数据(图7的(b)),计算基本统计量(平均值、标准偏差等),设为图像特征分布数据的正常范围。另外,图像特征分布数据的正常范围可以说是第3数据,该第3数据表示根据对ok图像进行图像转换所获得的图像而计算出的各分割区域的图像特征量。接着,在步骤s72中,识别器参数设定部125进行识别器的学习参数的设定。接着,在步骤s74中,识别器生成部126生成识别器。接着,在步骤s76中,gp学习控制部121计算正确率。即,使用例如交叉验证法判定各个学习图像是ng图像、还是ok图像,计算该判定结果与附加于各学习图像的表示合格与否的标签一致的比率作为正确率。接着,在步骤s78中,gp学习控制部121计算识别器的惩罚项。接着,在步骤s80中,如上所述,类似度计算部131进行图像特征分布数据与ng教导区域数据之间的类似度(综合类似度)的计算。接着,在步骤s82中,适合度计算部132计算基于计算出的类似度(综合类似度)的惩罚项。然后,在步骤s84中,适合度计算部132根据上式(1),计算适合度。如上所述,在进行图10、图11的处理(步骤s28的处理)之后,转移到图9的步骤s30。当转移到步骤s30时,gp学习控制部121判断是否已选择所生成的全部子个体。在该步骤s30的判断为否定的情况下,返回步骤s26,通过反复执行步骤s27~s30,执行针对所生成的全部子个体的步骤s28的处理。另一方面,在步骤s30的判断为肯定的情况下,转移到步骤s32。当转移到步骤s32时,gp学习控制部121从在步骤s26中所生成的子个体中选择适合度最高的子个体作为要使其生存的子个体。并且,gp学习控制部121从剩余的子个体中进一步选择一个要使其生存的个体。在该选择处理中,例如,以与适合度对应的概率选择个体。gp学习控制部121将在步骤s24中所选择的母个体更换为要使其生存的2个个体。即,可以说gp学习控制部121在步骤s32中将基于ng教导区域数据(ng教导区域指标)与图像特征分布数据(图像特征分布指标)之间的类似度的子个体的适合度用于遗传编程。接着,在步骤s34中,gp学习控制部121判断母个体的最大适合度是否大于阈值。在该步骤s34的判断为否定的情况下,返回步骤s24,但是在肯定的情况下,转移到步骤s36。当转移到步骤s36时,gp学习控制部121将最佳个体、即适合度为最大的个体保存到存储部150中。该个体中还包含表示在步骤s28的处理中所生成的识别器的识别器信息。通过以上的处理,学习处理结束。(图像检查处理部112的处理)接着,遵循图12的流程图,对使用通过学习处理而获得的个体(最佳个体)的图像检查处理部112的处理进行说明。在图12的处理中,首先,在步骤s102中,图像检查处理部112从存储部150读出最佳个体的信息,根据所读出的信息,将最佳个体的树结构设定为用于图像检查的树结构。接着,在步骤s104中,图像检查处理部112根据所读出的最佳个体的信息,将最佳个体的识别器设定为用于图像检查的识别器。接着,在步骤s106中,图像检查处理部112从存储部150读出图像特征分布数据的正常范围。另外,这里读出的图像特征分布数据的正常范围是在步骤s70中计算出的数据。接着,在步骤s108中,图像检查处理部112经由图像输入部111取得检查对象的图像。该图像例如是利用照相机107a拍摄的图像。接着,在步骤s110中,图像检查处理部112使用在步骤s102中所设定的图像转换滤波器,对检查对象的图像进行图像转换。此外,在步骤s112中,图像检查处理部112依照所设定的特征提取滤波器,提取转换后的图像的特征量。并且,在步骤s114中,图像检查处理部112将特征量数据输入到识别器。而且,在步骤s116中,图像检查处理部112执行利用识别器进行的分类。即,图像检查处理部112将转换后的图像分类为ok图像或ng图像。接着,在步骤s118中,图像检查处理部112计算分割区域的图像特征量。接着,在步骤s120中,图像检查处理部112进行以分割区域为单位的ng部分的估计。即,如图7的(e)所示,图像检查处理部112以分割区域为单位求出异常得分,将异常得分超过预先确定的阈值的分割区域估计为ng部分。另外,本步骤s120的处理可以说是判定检查对象的图像的各分割区域的正常或异常的处理。然后,在步骤s122中,图像检查处理部112将图像检查结果输出到显示装置104a上。图像检查结果中除了合格与否判定结果(ok图像或ng图像)以外,还包含在步骤s120中所估计的ng部分的信息(如图7的(f)所示,重叠显示了ng部分的检查对象的图像)。如上所述,当到步骤s122为止的处理结束时,结束图12的所有处理。(具体例)图14~图16中示出针对虚拟的ng图像实施学习和合格与否判定后的结果。在本例子中,如图14的(a)所示,利用40张学习图像(20张ok图像、20张ng图像)进行学习,利用160张未知的评价用图像(80张ok图像、80张ng图像)调查判定精度。图14的(b)示出学习图像的ok图像的例子,图14的(c)示出学习图像的ng图像的例子。与图4的(a)同样,ng图像为如在圆形的对象物的表面描绘出作为打痕或异物的椭圆的测试图像。如图14的(b)所示,用户针对ng图像,利用矩形来教导ng区域。此外,roi的分割数量设为5×5。图14的(d)中示出不教导ng区域而仅教导ok或ng的正确答案并进行学习的情况下的合格与否判定结果(正确率),图14的(e)中示出教导ng区域、ok或ng的正确答案并进行学习的情况下的合格与否判定结果(正确率)。另外,在图14的(d)、图14的(e)中,还包含学习早期阶段、中间阶段中的学习结果在内,示出针对评价用图像进行合格与否判定后的结果。另外,世代编号越小,越表示学习早期阶段,世代编号越大,越表示学习最后阶段。根据图14的(d)、图14的(e)可知,进行ng区域的教导并学习(图14的(e))更能够提高最终的正确率,此外,由于在早期阶段达到正确率100%,因此能够缩短学习时间。图15是示出分别针对不教导ng区域的情况下的最终世代(第400世代)的ok图像和ng图像实施ng部分的估计后的结果的图。此外,图16是示出分别针对教导ng区域的情况下的最终世代(第268世代)的ok图像和ng图像实施ng部分的估计后的结果的图。另外,图15、图16的ng图像是在无ng区域教导的情况下被判定(错误判定)为ok图像并在有ng区域教导的情况下被判定为ng图像的ng图像。如对图15的中段与图16的中段进行比较可知,在不教导ng区域而进行学习的情况下,在特征提取图像中,提取与判定无关的对象物的外径部分作为特征部分,在教导ng区域而进行学习的情况下,能够限定于ng部分而提取出特征部分。此外,如对图15的下段与图16的下段进行比较可知,在教导ng区域而进行学习的情况下(图16),能够仅将存在伤痕、异物的部分估计为ng部分,但是,在不教导ng区域而进行学习的情况下(图15),无法将存在伤痕、异物的部分估计为ng部分,并且会将存在伤痕、异物的部分以外的部分估计为ng部分。另外,在图15的下段和图16的下段中示出:白线矩形的线越粗,异常得分越大。如上所述,确认了在教导ng区域而进行学习的情况下,合格与否判定的精度更高、并且ng部分的估计也更准确。如以上所说明的那样,根据本第1实施方式,在根据遗传编程自动生成图像分类程序时,图像分类装置100受理学习图像的ng区域的输入(s18),生成表示对学习图像(roi)进行分割后的各个分割区域与ng区域的重叠度的ng教导区域数据(ng教导区域指标)(s20)。此外,图像分类装置100通过规定的图像分类程序(子个体)对学习图像进行图像转换,根据所获得的图像计算各个分割区域的图像特征量,生成与各个分割区域对应的图像特征分布数据(图像特征分布指标)(s58)。而且,图像分类装置100计算ng教导区域数据(ng教导区域指标)与图像特征分布数据(图像特征分布指标)之间的类似度(s80),将根据类似度对图像分类程序(子个体)进行评价后的结果(适合度)用于执行遗传编程(s82、s84)。由此,在本第1实施方式中,能够优先地学习如在所教导的ng区域中显著出现差异的图像转换处理,因此,能够获得基于真正的ng部分的学习结果(图像分类程序),并且,还能够实现学习速度的高速化。此外,通过根据学习结果进行图像的合格与否判定,能够提高判定精度。此外,在本第1实施方式中,图像分类装置100使用自动生成的图像分类程序,对全部分割区域为正常的学习图像进行图像转换,根据所获得的图像,计算图像特征量分布数据的正常范围(s106),根据检查对象的图像的图像特征分布数据与正常范围的比较结果,估计检查对象的图像的ng部分(s120)。由此,能够以分割区域为单位高精度地估计检查对象的图像内的ng部分。此外,区域的分割、图像特征分布数据的计算方法与学习时是共同的,因此,能够抑制计算成本等。此外,在本第1实施方式中,用户指定的ng区域为矩形、圆形、椭圆形等简单形状,因此,能够减轻教导作业的负担,并且能够使ng区域的指标化的计算简单。《第2实施方式》以下,根据图17~图19,对第2实施方式进行说明。在上述的第1实施方式中,将原图像作为学习图像直接输入到树结构滤波器列,但是,在本第2实施方式中,如图17所示,针对原图像进行预先处理,将实施预先处理后的图像作为学习图像输入。输入图像的预先处理是针对原图像抑制图像整体的平均亮度的偏差的处理,例如,以1张图像为单位进行平均差分处理或归一化处理。这里,平均差分处理是调整平均亮度的处理,归一化处理是在进行平均差分处理之后除以亮度的偏差的处理。在图像整体的平均亮度发生偏差的情况下,以1张图像为单位进行平均差分处理、归一化处理是有效的。此外,作为输入图像的预先处理,也可以不以1张图像为单位,而例如使用学习时的ok图像全体的平均图像来实施平均差分处理或归一化处理。在使用ok图像全体的平均图像来生成平均差分图像的情况下,即使不对输入图像全部进行转换而进行特征提取,也能够获得该图像特征量与正常分布相比的变化量。因此,即使通过简单的图像转换,也能够提高ng区域与图像特征量之间的类似度。图18示出对本第2实施方式的学习和合格与否判定进行测试后的结果。如图18的(a)所示,用于该测试的原图像是在圆形部件的表面产生有伤痕不良的图像,即使是ok图像,也存在许多个较小的伤痕,因此,仅将规定的长度、规定的粗细以上的线段处理为ng。图18的(b)示出针对ng图像教导ng区域的例子。此外,图18的(c)示出针对图18的(b)的原图像进行预先处理并根据其结果获得的输入图像。在该测试中,作为预先处理,在以1张图像为单位调整平均亮度之后,采用取得与ok图像全体的平均图像之间的差分的处理。另外,由于利用绝对值求出与ok图像全体的平均图像之间的差分,所以,如果与平均图像一致,则转换为零、比平均亮度亮的像素、比平均亮度暗的像素均为零以上的亮度值。与第1实施方式(图14的(a))同样,图18的(d)、图18的(e)示出使用40张学习图像,根据全部相同的初始个体在无ng区域的教导和有ng区域的教导双方进行学习,对160张评价用图像的合格与否判定进行比较后的结果。如图18的(d)、图18的(e)所示可知,在平均判定精度和最终判定精度双方中,教导ng区域而进行学习的方法能够获得更高的精度。图19示出教导ng区域的情况下的ng部分的估计结果。在本测试中,可知ok图像中也存在少量较小的伤痕等,因此,在ok图像和ng图像中均略多地估计出ng部分,但是,能够在ng图像中准确地估计ng部分。《第3实施方式》接着,根据图20,对第3实施方式进行说明。在本第3实施方式中,如图20所示,针对原图像执行自动地进行位置对准的预先处理,设实施预先处理后的图像为输入图像。即,在本第3实施方式中,预先给出对象物体的图像作为模板图像,在预先处理中,gp学习控制部121将在原图像上通过模板匹配检索出的位置设定为roi。而且,将设定有roi的图像作为输入图像,执行与第1实施方式相同的处理。这样,例如,能够在实际的生产线的外观检查等中,结合对象物的位置偏离等自动地准确设定roi。另外,也可以将在学习时所生成的ok图像的平均图像作为模板图像来保存,在合格与否判定时使用该模板图像来设定roi。另外,在本第3实施方式中,gp学习控制部121作为提取部发挥功能,该提取部通过使用原图像和模板图像的模板匹配,从原图像中提取roi。《第4实施方式》在上述第1实施方式和第2、第3实施方式中,准备与树结构滤波器列独立的特征提取滤波器,作为在计算各区域的图像特征量时使用的特征提取滤波器(图13的滤波器f0)。与此相对,在本第4实施方式中,将滤波器f0的功能组装到树结构滤波器列中。图21示出第4实施方式的树结构滤波器列。在本第4实施方式中,预先准备提取分割区域的特征量的多个滤波器,使用所准备的多个滤波器中的任意滤波器作为图21中的用点线圆表示的滤波器(在图21中,使用滤波器f4)。另外,该图像特征提取滤波器(f4)可以与通常的滤波器同样一边进行学习一边通过突然变异进行变更,也可以通过1个滤波器进行固定。在任意一个情况下,该特征提取滤波器的输出被用作计算与ng教导区域之间的类似度时的图像特征量,并且还被用作生成svm识别器时的图像特征量。(变形例)以下说明变形例。(1)分割区域的图像特征量在图4的(e)等的处理中,提取出各分割区域的图像特征量,但是,可以使用各分割区域内的平均亮度、亮度的偏差、亮度范围或这些的组合作为该图像特征量。(2)ng教导区域数据与图像特征量分布数据之间的类似度运算在根据图4的(d)、图4的(e)等的数据计算类似度的情况下,除了上述的归一化相关值、余弦类似度以外,还可以使用差分平方和、差分绝对值和等求出向量之间的距离的各种运算。另外,需要根据运算的种类,调整对适合度的反映方法。另外,上述的处理功能可以通过计算机实现。该情况下,提供记述有处理装置应该具有的功能的处理内容的程序。由计算机执行该程序,由此,在计算机上实现上述处理功能。记述有处理内容的程序能够预先记录在计算机可读取的记录介质(其中,除了载波以外)中。在使程序流通的情况下,例如,以记录有该程序的dvd(digitalversatiledisc:数字多功能盘)、cd-rom(compactdiscreadonlymemory:cd只读存储器)等可移动型记录介质的形式来销售。此外,还能够预先将程序存储到服务器计算机的存储装置中,并经由网络从服务器计算机向其他计算机传输该程序。执行程序的计算机例如将可移动型记录介质中所记录的程序或从服务器计算机传输的程序存储到自己的存储装置中。而且,计算机从自己的存储装置读取程序,执行遵循程序的处理。另外,计算机还能够从可移动型记录介质直接读取程序,执行遵循该程序的处理。此外,计算机还能够在每次从服务器计算机传输程序时,依次执行遵循所接收到的程序的处理。上述的实施方式是本发明的优选实施例。但是,不限于此,可以在不脱离本发明主旨的范围内实施各种变更。标号说明100:图像分类装置(信息处理装置);112:图像检查处理部(判定部);121:gp学习控制部(处理部、提取部);123:图像特征量提取部(第3数据生成部);127:ng区域输入部(受理部);129:ng区域指标计算部(第1数据生成部);130:分割区域特征量提取部(第2数据生成部);131:类似度计算部(计算部)。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1