1.本发明涉及图像处理方法、学习装置以及图像处理装置等。
背景技术:2.以往,已知使用机器学习来进行各种图像处理的方法。这里的图像处理例如是指图像分类处理、物体检测处理等。此外,也已知在生成学习完毕模型的学习处理中进行图像扩展的方法。
3.例如非专利文献1公开了一种将卷积神经网络(cnn:convolutional neural network)应用于大规模图像分类的方法。另外,非专利文献1公开了一种通过进行随机裁剪(random crop)、左右反转、颜色校正这样的图像扩展来实现过学习的抑制的方法。
4.现有技术文献
5.专利文献
6.非专利文献1:alex krizhevsky,ilya sutskever,and geoffrey e.hinton:"imagenet classification with deep convolutional neural networks",advances in neural information processing systems 25,pp.1097-1105(2012)
技术实现要素:7.发明要解决的问题
8.通过基于图像扩展而生成扩展图像,并使用包含该扩展图像的训练数据进行机器学习,从而即便在成为处理对象的应用图像发生变动的情况下,也能够使用学习完毕模型进行高精度的图像处理。但是,在应用图像发生了超过图像扩展时的图像变动范围的变动的情况下,处理精度可能大幅下降。
9.用于解决问题的手段
10.本公开的一方案涉及一种图像处理方法,其中,通过对输入图像应用第1图像扩展而生成第1扩展图像,通过对所述输入图像应用与所述第1图像扩展不同的第2图像扩展而生成第2扩展图像,通过向神经网络输入所述第1扩展图像而生成第1输出,通过向所述神经网络输入所述第2扩展图像而生成第2输出,计算表示所述第1输出与所述第2输出的差异度的输出差异度,基于所述输出差异度,更新所述神经网络的各层中的权重系数。
11.例如,能够通过处理器来执行如下的处理:通过对输入图像应用第1图像扩展而生成第1扩展图像,通过对所述输入图像应用与所述第1图像扩展不同的第2图像扩展而生成第2扩展图像,通过向神经网络输入所述第1扩展图像而生成第1输出,通过向所述神经网络输入所述第2扩展图像而生成第2输出,计算表示所述第1输出与所述第2输出的差异度的输出差异度,基于所述输出差异度,更新所述神经网络的各层中的权重系数。
12.本公开的另一方案涉及一种图像处理方法,是使用了神经网络的图像处理方法,其中,所述神经网络是在将多个扩展图像输入到所述神经网络时使用如下误差而学习的,该误差包含与多个所述扩展图像对应的多个输出之间的差异度,多个所述扩展图像是通过
对一个输入图像应用多个不同的图像扩展而生成的,在所述图像处理方法中,通过向所述神经网络输入第1应用图像而生成第1应用输出,基于所述第1应用输出而生成第1识别结果,通过向所述神经网络输入第2应用图像而生成第2应用输出,基于所述第2应用输出而生成第2识别结果,在所述第1应用图像和所述第2应用图像拍摄有对应的被摄体、并且所述第1应用图像与所述第2应用图像的差异为色调、明亮度及平滑化程度中的至少一个的情况下,所述第1识别结果与所述第2识别结果成为相同。
13.本公开的另一方案涉及一种学习装置,其中,所述学习装置包括:取得部,其取得输入图像;以及处理部,其基于所述输入图像来进行机器学习,所述处理部进行如下处理:通过对所述输入图像应用第1图像扩展而生成第1扩展图像,通过对所述输入图像应用与所述第1图像扩展不同的第2图像扩展而生成第2扩展图像,通过向神经网络输入所述第1扩展图像而生成第1输出,通过向所述神经网络输入所述第2扩展图像而生成第2输出,计算表示所述第1输出与所述第2输出的差异度的输出差异度,基于所述输出差异度,更新所述神经网络的各层中的权重系数。
14.本公开的另一方案涉及一种图像处理装置,其中,所述图像处理装置包括:存储部,其存储学习完毕模型;以及处理部,其基于所述学习完毕模型而进行针对应用图像的图像处理,所述学习完毕模型是通过如下处理进行学习的:通过对输入图像应用第1图像扩展而生成第1扩展图像,通过对所述输入图像应用与所述第1图像扩展不同的第2图像扩展而生成第2扩展图像,通过向神经网络输入所述第1扩展图像而生成第1输出,通过向所述神经网络输入所述第2扩展图像而生成第2输出,计算表示所述第1输出与所述第2输出的差异度的输出差异度,基于所述输出差异度,更新所述神经网络的各层中的权重系数。
附图说明
15.图1是通过本实施方式的方法来抑制处理精度的下降的说明图。
16.图2是学习装置的结构例。
17.图3是处理部的详细结构例。
18.图4是对学习处理进行说明的流程图。
19.图5(a)、图5(b)是对神经网络进行说明的图。
20.图6(a)是示出输入图像的例子的示意图,图6(b)、图6(c)是示出扩展图像的例子的示意图,图6(d)是输入图像的具体例,图6(e)、图6(f)是扩展图像的具体例。
21.图7是求出输出误差和输出差异度的处理的说明图。
22.图8是针对1张输入图像的图像扩展的例子。
23.图9是针对1张输入图像的图像扩展的另一例。
24.图10是学习的重复次数与误差的关系图。
25.图11是第2神经网络的结构例。
26.图12是第2神经网络的另一结构例。
27.图13是图像处理装置的结构例。
28.图14是说明使用了学习完毕模型的推论处理的流程图。
29.图15是内窥镜装置的结构例。
具体实施方式
30.以下,对本实施方式进行说明。另外,以下说明的本实施方式并非不合理地限定权利要求书所记载的内容。并且,在本实施方式中说明的全部结构不一定是必须构成要件。
31.1.本实施方式的方法
32.近年来,广泛已知使用机器学习进行图像分类处理、物体检测处理的方法。图像分类处理是指将图像分类为若干类别的处理,例如是对该图像的主要被摄体进行分类的处理。广泛已知判定图像中的被摄体是猫还是狗这样的图像分类处理。另外,物体检测处理是指与图像中的被摄体的类别一起判定该被摄体的图像上位置的处理。例如,已知对包围给定的类别的被摄体的区域进行检测的方法、针对图像的各像素来判定该像素对应于哪个类别的被摄体的方法等。以下,将图像分类处理和物体检测处理统一记作针对图像的识别处理。
33.如非专利文献1等所公开的那样,在使用了深度学习技术的识别处理中,使用如下方法:通过向学习完毕的神经网络输入图像而输出表示识别对象相似度的分数,基于该分数来决定最终的识别结果。
34.在作为输入的图像中发生了色调、明亮度、平滑化程度等的变动的情况下,即便该变动较小,从学习完毕模型输出的分数也可能大幅变动。尤其是如之后使用图5(a)、图5(b)叙述的那样,神经网络由多层的线性结合构成,因此,可能由于输入中的小变动而使输出的分数大幅变化。即,可能由于色调等的小变动而使识别结果不同,导致识别结果变得不稳定。于是,使用如下的图像扩展,即,通过对用于学习处理的图像进行颜色校正处理、明度校正处理、平滑化处理等,从而生成虚增了图像张数的扩展图像。通过进行将包含扩展图像的图像组作为训练数据的学习,能够实现使用了学习完毕模型的处理的精度提高。
35.但是,针对图像扩展的范围、具体而言用于图像扩展的参数的下限值和上限值,需要慎重研究。将图像扩展为颜色校正处理的情况作为例子进行说明。颜色校正处理例如是指变更图像的色相h的处理,该情况下的图像扩展的参数是色相的变动量δh。以δh成为-10度≦δh≦10度的范围内的值的方式进行了图像扩展。
36.图1是说明使测试图像的变动量变化的情况下的识别处理结果的变化的图。测试图像是指用于确认使用了学习完毕模型的推论处理的精度的图像,狭义上是赋予了正确答案标签的图像。这里的推论处理如上述那样是识别处理,正确答案标签是确定作为识别对象的被摄体的类别、位置的信息。图1的横轴表示附加于测试图像的色相h的变动量。图1的纵轴表示灵敏度。这里的灵敏度是指,通过使用学习完毕模型的识别处理而检测到的识别对象的数量相对于存在于测试图像中的识别对象的数量的比例。即,表示灵敏度越高,则越能够进行精度高的识别处理。
37.图1的a1表示现有方法的识别结果。如a1所示,在测试图像的变动量为
±
10度的情况下,灵敏度成为与变动量为0度的情况相同程度的高值。与此相对,在测试图像的变动量成为
±
20度的情况下,灵敏度下降。另外,在测试图像的变动量成为
±
30度的情况下,灵敏度进一步下降。根据图1的a1可知,在测试图像的变动量为在图像扩展中假定的变动量的范围内的情况下,能够实现精度充分高的识别处理。另一方面,在测试图像的变动量大于在图像扩展中假定的变动量的情况下,识别处理的精度会大幅下降。
38.在图1中,针对使用了正确答案已知的测试图像的例子进行了说明,但是,在将实
际环境中取得的未知的图像作为对象的识别处理中也可以说是同样的。此外,在图1中针对识别处理的精度进行了说明,但是,在将学习完毕模型应用于识别处理以外的图像处理的情况下也是同样的。即,期望将图像扩展中的参数的范围设定为覆盖实际环境中的图像的变动量。以下,将在实际环境中取得的图像并且是成为应用了学习完毕模型的推论处理的对象的图像记作应用图像。
39.但是,难以取得应用图像的变动量的情况也较多。例如,考虑在新型的内窥镜装置(内窥镜系统)中搭载进行使用了学习完毕模型的推论处理的功能。在新型的内窥镜装置中,例如摄像元件、光源、透镜等的结构可能与旧型的内窥镜装置不同,所拍摄的图像的趋势也不同。因此,认为生成新型的内窥镜装置专用的学习完毕模型有助于提高精度。但是,如果不将内窥镜装置的插入部插入到生物体内,则无法拍摄生物体内图像,因此,在该内窥镜装置的制造阶段中难以大量取得使用新型的内窥镜装置拍摄到的图像。因此,在充分蓄积学习用的图像之前,在新型的内窥镜装置中留用使用由旧型的内窥镜装置拍摄到的图像进行机器学习得到的学习完毕模型是现实的。但是,如上所述,既然难以大量取得由新型的内窥镜装置拍摄到的图像,则预测使用新型的内窥镜装置的情况下的图像的变动量是困难的。即,即便想要通过图像扩展来吸收新型的内窥镜装置和旧型的内窥镜装置的差异,用于图像扩展的参数的设定也较难,识别处理等图像处理的精度可能下降。另外,这里例示了内窥镜装置,但即便在通常的数码相机等中,有时也不容易在机器学习的执行时准确地预测用户的摄像环境,实际环境中的图像的变动量预测仍旧困难。
40.考虑以上情况,在本实施方式中执行以下的处理。本实施方式的图像处理方法通过对输入图像应用第1图像扩展而生成第1扩展图像,通过对该输入图像应用与第1图像扩展不同的第2图像扩展而生成第2扩展图像。此外,在本实施方式的方法中,通过向神经网络输入第1扩展图像而生成第1输出,通过向该神经网络输入第2扩展图像而生成第2输出。然后,计算表示第1输出与第2输出的差异度的输出差异度,基于输出差异度,更新神经网络的各层中的权重系数。更具体而言,以减小输出差异度的方式进行权重系数的更新。
41.具体而言,本实施方式的图像处理方法生成用于执行针对应用图像的图像处理的学习完毕模型。即,在本实施方式的图像处理方法中,重复执行了上述第1扩展图像和第2扩展图像的生成、第1输出和第2输出的生成、输出差异度的计算、基于输出差异度的权重系数的更新的各处理的结果是,输出学习完毕模型。例如将学习完毕模型向之后使用图13叙述的图像处理装置40输出,图像处理装置40使用该学习完毕模型,执行针对应用图像的图像处理,例如关注被摄体的识别处理。
42.由于第1扩展图像和第2扩展图像是应用了不同的图像扩展的图像,因此,另一方的色度、明亮度等相对于一方发生了变动。因此,根据现有方法,第1输出与第2输出可能大幅不同。但是,在本实施方式中,进行使第1输出与第2输出之差变小的机器学习。因此,能够抑制由于输入中的小变动而使输出的分数大幅变化的情况,使识别结果稳定。换言之,能够针对向神经网络输入的图像的变动而提高鲁棒性。即,在向神经网络输入内窥镜图像而进行息肉的检测时,即便在特殊症状或者没有从息肉的正面观察而是倾斜观察的情况下,识别的精度也难以降低。
43.图1的a2是应用了本实施方式的方法的情况下的识别处理结果。在测试图像的变动量为0度或
±
10度的情况下,灵敏度是与a1所示的现有方法相同的程度。但是,在测试图
像中的变动量为
±
20度或
±
30度的情况下,如a2所示,与现有方法相比,抑制了灵敏度的减小幅度。即,根据本实施方式的方法,即便在由于无法预测实际环境中的图像的变动量而使该变动量超过图像扩展的范围的情况下,也能够抑制使用学习完毕模型的图像处理的精度下降。
44.另外,本实施方式的方法能够应用于使用了作为所生成的学习完毕模型的神经网络的图像处理方法。关于这里的神经网络,在将通过对一个输入图像应用多个不同的图像扩展而生成的多个扩展图像输入到该神经网络时,使用包含与多个扩展图像对应的多个输出之间的差异度在内的误差而被学习。在图像处理方法中,通过向神经网络输入第1应用图像而生成第1应用输出,基于第1应用输出而生成第1识别结果。另外,通过向神经网络输入第2应用图像而生成第2应用输出,基于第2应用输出而生成第2识别结果。这里,在拍摄第1应用图像与第2应用图像对应的被摄体、并且第1应用图像与第2应用图像的差异为色调、明亮度及平滑化程度中的至少一方的情况下,在本实施方式的图像处理方法中,第1识别结果与第2识别结果之差相同或大致相同。大致相同表示第1识别结果与第2识别结果之差成为给定的阈值以下。另外,色调例如是色相,明亮度例如是亮度或明度,平滑化程度例如是对比度值等。
45.另外,第1应用输出是被输入了第1应用图像的情况下的神经网络的输出。在例如神经网络的输出层为公知的softmax层的情况下,第1应用输出是表示识别结果是给定的被摄体的可信度的概率数据。第2应用输出也是同样的。第1识别结果是基于第1应用输出而求出的信息。例如通过选择作为第1应用输出的多个概率数据中的值最大的概率数据而取得第1识别结果。例如在进行对息肉与除此以外的被摄体进行分类的图像分类处理的情况下,第1应用输出是指作为息肉的概率数据和作为息肉以外的概率数据这2个数值,基于哪一个值较大来判定是否为息肉。针对第2应用输出和第2识别结果也是同样的。
46.如上所述,在本实施方式的方法中,即便被输入的应用图像的色调、明亮度、平滑化程度存在变动,也降低了神经网络的输出差。因此,第1应用输出与第2应用输出之差变得充分小。在根据应用输出求出识别结果时,大多情况下应用输出的微小差异不会成为问题。例如在如上述那样求出概率数据的最大值的情况下,如果满足作为息肉的概率数据大于作为息肉以外的概率数据这样的条件,则无论具体数值是多少,识别结果都成为息肉。即,在本实施方式的学习处理方法中,第1识别结果与第2识别结果成为相同。
47.但是,在进行物体检测处理的情况下,检测结果例如为包含被摄体的矩形区域。相对于图像分类处理的识别结果为是否为息肉等的相对粗略的识别结果,以更加细微的粒度检测作为物体检测处理的识别结果的矩形区域的位置、尺寸。具体的粒度依赖于神经网络的模型,但例如也能够以1个像素单位进行检测。另外,在进行分割的情况下,以1个像素单位来判定该像素对应于哪个被摄体。在物体检测处理的情况下,识别结果较细,因此,还假定第1应用输出与第2应用输出之差无法被吸收且第1识别结果与第2识别结果变得不相同的情况。但是,由于抑制了第1应用输出与第2应用输出之差,因此,期待第1识别结果与第2识别结果大致相同。例如,在识别结果表示矩形区域的情况下,位置或尺寸之差成为规定像素数以下。或者,在以像素单位确定被摄体的情况下,在第1识别结果和第2识别结果中确定出的被摄体不同的像素成为规定像素数以下。
48.2.系统结构例
49.本实施方式的方法也可以应用于学习装置10。如图2所示,学习装置10包括取得输入图像的取得部20、以及基于输入图像进行机器学习的处理部30。但是,学习装置10不限于图2的结构,能够实施它们的一部分结构要素的省略、其他结构要素的追加等各种变形。
50.取得部20取得用于机器学习的输入图像。另外,取得部20也取得与输入图像对应起来的正确答案标签。例如,在外部设备中执行针对输入图像的正确答案标签的赋予,取得部20从该外部设备取得输入图像和正确答案标签。该情况下的取得部20是与外部设备进行通信的通信接口。或者,也可以在学习装置10中对输入图像赋予正确答案标签,学习装置10包括蓄积赋予结果的未图示的存储部。该情况下的取得部20是用于从存储部读出被赋予正确答案标签的输入图像的接口。这里的存储部存储数据或程序等各种信息。存储部可以是半导体存储器,也可以是寄存器,也可以是磁存储装置,还可以是光学式存储装置。
51.处理部30由下述的硬件构成。硬件能够包含处理数字信号的电路和处理模拟信号的电路中的至少一方。例如,硬件能够由安装于电路基板的1个或多个电路装置、或者1个或多个电路元件构成。1个或多个电路装置例如为ic等。1个或多个电路元件例如为电阻、电容器等。
52.另外,处理部30也可以由下述的处理器实现。本实施方式的学习装置10包含存储信息的存储器、以及基于存储器所存储的信息进行动作的处理器。信息例如是程序和各种数据等。处理器包含硬件。关于处理器,能够使用cpu(central processing unit:中央处理单元)、gpu(graphics processing unit:图形处理单元)、dsp(digital signal processor:数字信号处理器)等各种处理器。存储器可以为sram(static random access memory:静态随机存取存储器)、dram(dynamic random access memory:动态随机存取存储器)等半导体存储器,也可以为寄存器,也可以为硬盘装置(hdd:hard disk drive)等磁存储装置,还可以为光盘装置等光学式存储装置。例如,存储器存储有计算机可读取的命令,通过由处理器执行该命令,从而实现处理部30的各部功能作为处理。这里的命令可以是构成程序的命令组的命令,也可以是对处理器的硬件电路指示动作的命令。
53.处理部30执行第1扩展图像的生成、第2扩展图像的生成、第1输出的生成、第2输出的生成、输出差异度的计算、神经网络的各层中的权重系数的更新的各处理。
54.图3是处理部30的详细结构例。处理部30包含图像扩展部31、神经网络应用部33、输出差异度计算部35、输出误差计算部37、以及权重系数更新部39。但是,处理部30不限于图3的结构,能够实施它们的一部分结构要素的省略、其他结构要素的追加等各种变形。例如处理部30还可以包含在开始机器学习时将神经网络初始化的初始化部等结构。
55.图像扩展部31从取得部20取得输入图像,对该输入图像应用图像扩展。图像扩展部31进行通过对输入图像应用第1图像扩展而生成第1扩展图像的处理、以及通过对该输入图像应用第2图像扩展而生成第2扩展图像的处理。图像扩展部31将第1扩展图像和第2扩展图像向神经网络应用部33输出。
56.神经网络应用部33进行通过向神经网络输入第1扩展图像而生成第1输出的处理、以及通过向神经网络输入第2扩展图像而生成第2输出的处理。神经网络应用部33将第1输出和第2输出向输出差异度计算部35和输出误差计算部37输出。
57.输出差异度计算部35基于第1输出和第2输出来计算输出差异度。输出差异度计算部35将输出差异度向权重系数更新部39输出。
58.输出误差计算部37从取得部20取得与输入图像对应的正确答案标签。输出误差计算部37基于第1输出、第2输出、正确答案标签来计算输出误差。输出误差计算部37将输出误差向权重系数更新部39输出。另外,输出误差也可以是基于第1输出和正确答案标签的误差,也可以是基于第2输出和正确答案标签的误差,还可以是这两方。
59.权重系数更新部39基于包含输出差异度的整体误差来更新神经网络的各层的权重系数。另外,整体误差也可以包含输出差异度和输出误差。
60.另外,本实施方式的学习装置10和后述的图像处理装置40等也可以通过程序来实现其处理的一部分或大部分。在该情况下,通过cpu等处理器执行程序来实现本实施方式的学习装置10等。具体而言,读出非暂时性的信息存储装置所存储的程序,由cpu等处理器执行读出的程序。这里,信息存储装置存储程序和数据等,其功能能够由dvd或cd等光盘、hdd(hard disk drive:硬盘驱动器)、或者非易失性存储器或ram等存储器等实现。信息存储装置是计算机可读取的装置。而且,cpu等处理器基于信息存储装置所存储的程序来进行本实施方式的各种处理。即,在信息存储装置中,存储用于使计算机作为本实施方式的各部而发挥功能的程序。计算机是具备操作部、处理部、存储部、输出部的装置。
61.3.详细处理
62.图4是对本实施方式的学习处理进行说明的流程图。当开始该处理时,首先在步骤s101中,进行将神经网络初始化的处理。另外,在附图中将神经网络适当记作nn。
63.图5(a)是对神经网络进行说明的示意图。神经网络具有输入数据的输入层、基于来自输入层的输出而进行运算的中间层、以及基于来自中间层的输出而输出数据的输出层。在图5(a)中,例示出中间层为2层的网络,但中间层也可以为1层,还可以为3层以上。另外,各层所包含的节点数量不限于图5(a)的例子,能够实施各种变形。另外,如果考虑精度,则本实施方式的学习期望使用利用了多层神经网络的深层学习(深度学习)。这里的多层狭义上为4层以上。
64.如图5(a)所示,给定的层所包含的节点与相邻的层的节点结合。在各结合中设定有权重。各节点将前级的节点的输出与权重相乘,求出相乘结果的合计值。进而,各节点对合计值与偏置相加,通过对相加结果应用活性化函数来求出该节点的输出。通过从输入层朝向输出层依次执行该处理来求出神经网络的输出。神经网中的学习是决定适当的权重系数的处理。这里的权重系数包含上述权重和偏置(bias)。在学习中已知有误差逆传播法等各种方法,在本实施方式中,能够广泛应用这些方法。
65.更具体而言,本实施方式的神经网络是卷积神经网络(以下记载为cnn)。通过使用cnn,能够生成适合于图像处理的学习完毕模型。
66.图5(b)是说明cnn的示意图。cnn包含进行卷积运算的卷积层和池化层。卷积层是进行滤波器处理的层。池化层是进行将纵向、横向的尺寸缩小的池化运算的层。在图5(b)所示的例子中,cnn是将基于卷积层和池化层的运算分别进行多次的网络。另外,虽然在图5(b)中未明示,但基于活性化函数的运算处理也与图5(a)同样地进行。另外,本实施方式的cnn也可以包含基于全连接层的运算。全连接层是指进行前一层的全部节点与给定的层的节点结合的情况下的运算处理的层,对应于上面使用图5(a)叙述的各层的运算。另外,在输出层中也可以使用广泛知晓的softmax层。此外,能够对cnn的具体结构实施各种变形。cnn的卷积层中的权重系数是滤波器的参数。即,cnn中的学习包含用于卷积运算的滤波器的学
习。
67.在本实施方式中,例如作为神经网络,也可以使用以vgg-16为基础的cnn。此外,作为cnn,也可以使用导入了identity mapping(im:恒等映射)的residualnetwork(残量网络)。此外,各种cnn是已知的,在本实施方式中能够广泛应用各种cnn。另外,vgg-16和residual network是公知的方法,因此,省略详细的说明。
68.例如使用平均0、标准偏置wscale/√(ci
×k×
k)的正态随机数来执行步骤s101中的cnn的初始化。另外,wscale是尺度参数,ci是卷积层的输入通道数,k是卷积核大小。此外,作为卷积层的权重系数的初始值,也可以使用通过与本实施方式中使用的图像数据库不同的大规模图像数据库而学习完毕的卷积层的权重系数。由此,即便在输入图像的张数少的情况下,也能够进行高性能的学习。另外,本实施方式的图像数据库是包含多个输入图像的数据库,例如是拍摄到息肉的图像的集合。
69.接着,在步骤s102和s103中,取得部20取得输入图像和与该输入图像对应的正确答案标签。在进行图像分类处理的情况下,正确答案标签是表示在图像上是否包含各分类类别对象的2值数据。在进行物体检测处理的情况下,正确答案标签例如是确定包含检测对象的矩形区域的信息。确定矩形区域的信息可以是1个坐标值、纵向尺寸、横向尺寸的组,也可以是对角线上的2个坐标值的组。或者正确答案标签也可以是表示是否按照与图像上的各点对应的每个候选框而包含检测对象的2值数据的数组。另外,本实施方式的神经网络也可以对输入的图像进行图像转换处理。该情况下的正确答案标签是理想的转换结果的图像。
70.接着在步骤s104中,图像扩展部31通过对输入图像应用第1图像扩展而生成第1扩展图像。第1图像扩展包含颜色校正处理、明度校正处理、平滑化处理、锐化处理、噪声附加处理以及仿射转换处理中的至少1个处理。即,第1图像扩展可以是这些处理中的任意1个处理,也可以是2个以上的处理的组合。
71.颜色校正处理例如是色相h的校正处理。图像扩展部31基于下式(1),将rgb的像素值转换成hsv颜色空间。h是色相(hue),s是彩度(saturation),v是明度(value)。下式(1)中的r、g、b表示输入图像的红绿蓝的像素值。另外,max表示rgb的像素值中的最大值,min表示rgb的像素值中的最小值。
72.[数式1]
[0073][0074][0075]
v=max
[0076]
...(1)
[0077]
图像扩展部31进行将计算出的h变更了δh的处理。这里的δh是颜色校正处理中的参数,在下限值以上且上限值以下的范围内随机地决定值。在下限值为-10度且上限值为
+10度的情况下,例如-10以上且+10以下的整数值中的任意1个值被选择为δh。如上所述,在本实施方式的方法中,即便实际环境中的图像的变动量超过图像扩展中的变动量,也抑制了精度下降,因此,无需过度扩宽参数的范围。
[0078]
明度校正处理例如是伽马校正处理。例如图像扩展部31基于下式(2),进行针对明度v的伽马校正处理。v’表示伽马校正处理后的明度。在γ=1的情况下维持原始的明度,γ越大则明度越下降,γ越小则明度越增加。γ是明度校正处理中的参数。图像扩展部31通过在预先设定的下限值以上且上限值以下的范围内随机地决定γ的值来进行伽马校正处理。
[0079]
[数式2]
[0080][0081]
另外,图像扩展部31在颜色校正处理后或伽马校正处理后,基于下式(3)进行向rgb的像素值的重新转换。下式(3)中的r’、g’、b’表示重新转换后的红绿蓝的像素值。floor(x)表示x以下的最大的整数。
[0082]
[数式3]
[0083][0084][0085]
p=v
′×
(1-s) q=v
′×
(1-s
×
f) t=v
′×
(1-s
×
(1-f))
[0086]
...(3)
[0087]
平滑化处理例如是使用了平滑化滤波器的滤波器处理。平滑化滤波器例如是平滑化程度可变的滤波器。平滑化程度例如是高斯滤波器中的σ的值,σ越大则平滑化程度越大。这里的σ是平滑化处理中的参数。另外,已知有各种平滑化滤波器和决定该滤波器的平滑化程度的参数,在本实施方式中能够广泛应用它们。图像扩展部31在预先设定的下限值以上且上限值以下的范围内决定平滑化处理的参数,执行由该参数确定的平滑化处理。
[0088]
或者也可以是,平滑化滤波器例如是平滑化程度固定的滤波器,图像扩展部31通过随机地决定该平滑化滤波器的应用次数来变更平滑化程度。在该情况下,应用次数是平滑化处理的参数,应用次数越少则平滑化程度越小。例如,通过应用几次σ固定的高斯滤波器,能够进行平滑化程度的调整。
[0089]
锐化处理例如是使用了边缘强调滤波器等锐化滤波器的滤波器处理。通过对锐化滤波器变更滤波器的参数、应用次数,也能够变更锐化程度。即,滤波器参数或应用次数是锐化处理的参数。图像扩展部31在预先设定的下限值以上且上限值以下的范围内决定锐化处理的参数,执行由该参数确定的锐化处理。
[0090]
噪声附加处理是对输入图像附加噪声成分的处理。例如,能够通过进行使用了高
斯滤波器的滤波器处理来执行附加高斯噪声的处理。即,上述的平滑化处理能够认为是噪声附加处理的一方式。在该情况下,σ和滤波器的应用次数是噪声附加处理的参数。另外,噪声附加处理也可以是附加脉冲噪声的处理。例如图像扩展部31通过进行将输入图像的规定比例的像素的像素值变更为最小值或最大值的处理来对输入图像附加脉冲噪声。在像素值为8比特数据的情况下,最小值为0且最大值为255。在该情况下,变更像素值的像素的比例为噪声附加处理的参数,能够通过变更该参数来调整噪声的附加程度。另外,除了针对图像的噪声附加处理以外的处理也被广泛知晓,在本实施方式中能够广泛应用这些处理。图像扩展部31在预先设定的下限值以上且上限值以下的范围内决定噪声附加处理的参数,执行由该参数确定的噪声附加处理。
[0091]
仿射转换处理是进行图像的尺寸调整、旋转、平行移动的处理,具体而言,图像扩展部31进行矩阵运算。通过变更用于仿射转换的矩阵的各要素的值,能够调整尺寸调整率、旋转角度、平行移动量。即,矩阵的要素是仿射转换的参数。另外,已知在仿射转换中能够将矩阵分解为多个,也可以将各矩阵的要素作为参数。图像扩展部31在预先设定的下限值以上且上限值以下的范围内决定仿射转换的参数,执行由该参数确定的仿射转换处理。另外,本实施方式的仿射转换无需进行尺寸调整、旋转及平行移动的全部,也可以进行任意1个,还可以将2个组合。
[0092]
通过进行以上那样的图像扩展,能够生成包含各种色调、明亮度、平滑化程度、锐化程度、噪声量、尺寸、角度、以及图像上位置的识别对象在内的扩展图像。
[0093]
另外,在步骤s105中,图像扩展部31通过对输入图像应用第2图像扩展而生成第2扩展图像。第2图像扩展包含颜色校正处理、明度校正处理、平滑化处理、锐化处理、噪声附加处理及仿射转换处理中的至少1个处理。即,图像扩展部31进行与s104同样的种类的图像转换作为第2图像扩展。但是,图像扩展部31通过变更用于图像扩展的参数来生成与第1扩展图像不同的第2扩展图像。另外,这里为了简化说明,针对第1图像扩展和第2图像扩展是相同种类的处理且用于该处理的参数不同的例子进行说明。但是,如之后作为变形例叙述的那样,在第1图像扩展和第2图像扩展中,图像转换的组合也可以不同。
[0094]
图6(a)是示出输入图像的例子的示意图。图6(a)是生物体内图像的例子,b1是与大肠的内壁对应的区域,c1是息肉区域。图6(b)是示出第1扩展图像的例子的示意图,图6(c)是示出第2扩展图像的例子的示意图。图6(b)、图6(c)也同样,b2和b3对应于大肠的内壁,c2和c3是息肉区域。这里,第1图像扩展和第2图像扩展中的图像转换均是明度校正处理。在将第1图像扩展中的γ设为γ1且将第2图像扩展中的γ设为γ2的情况下,1<γ1<γ2。因此,图6(b)所示的第1扩展图像及图6(c)所示的第2扩展图像的明度与输入图像的明度相比均下降,第2扩展图像的下降程度比第1扩展图像的下降程度大。通过进行这样的图像扩展,能够将比输入图像暗的图像包含在机器学习的对象中。因此,能够提高较暗地拍摄到的息肉的检测精度等。
[0095]
另外,图6(d)是输入图像的例子,图6(e)、图6(f)分别是基于输入图像的扩展图像的例子。另外,在图6(d)~图6(f)中,例示出与生物体内图像不同的普通图像。生成图6(e)的扩展图像的图像扩展中的图像转换是明度校正处理。这里的γ为1<γ,图6(e)所示的扩展图像的明度比输入图像的明度下降。生成图6(f)的扩展图像的图像扩展中的图像转换是平滑化处理。通过平滑化处理,图6(f)所示的扩展图像成为与输入图像相比模糊程度增加
的图像。
[0096]
返回图4的流程图继续说明。在步骤s106中,神经网络应用部33通过向神经网络输入第1扩展图像而生成第1输出。另外,在步骤s106中,神经网络应用部33通过向神经网络输入第2扩展图像而生成第2输出。另外,在最开始进行s106的处理的情况下,神经网络的权重系数成为在s101中被初始化后的值。在第二次以后进行s106的处理的情况下,权重系数成为通过后述的s110的处理而更新后的值。
[0097]
图7是对神经网络的应用处理和后述的整体误差的运算处理进行说明的图。如图7所示,通过向神经网络输入第1扩展图像和第2扩展图像,来取得第1输出和第2输出。在图7的例子中,第1输出是针对4
×
3的各区域,将表示该区域为息肉的可信度的概率数据对应起来的信息。这里为了简化说明,将要素数设为4
×
3,但例如输出数据也可以包含与输入图像的像素数相当的要素。针对第2输出也是同样的。
[0098]
接着,在步骤s107中,输出误差计算部37基于第1输出和第2输出中的至少1个输出和由取得部20取得的正确答案标签,来计算神经网络的输出误差。正确答案标签例如是如图7所示那样针对4
×
3的各区域,在该区域为息肉的情况下将1对应起来,在该区域不为息肉的情况下将0对应起来的信息。具体而言,正确答案标签是包含与输出数据相同的要素数的信息。另外,正确答案标签例如是与输入图像对应起来的正确答案标签本身。但是,在进行物体检测处理的情况下且在进行仿射转换作为图像扩展的情况下,通过该仿射转换,息肉等检测对象物的位置、尺寸会发生变化。因此,在物体检测处理中进行包含仿射转换的图像扩展的情况下,期望与该仿射转换相应地修正正确答案标签。或者在进行物体检测处理的情况下,也可以从图像扩展省略仿射转换。
[0099]
输出误差是表示第1输出与正确答案标签的误差的信息(d1)、或者表示第2输出与正确答案标签的误差的信息(d2)、或者这两方。输出误差可以是sigmoid cross entropy,也可以是softmax cross entropy。这些输出误差在进行图像分类处理、物体检测处理的情况下是合适的。例如在进行2值分类的情况下使用sigmoid cross entropy,在进行多类分类的情况下使用softmax cross entropy。另外,输出误差也可以为平方误差等。平方误差等在将神经网络用于图像转换处理时是合适的。但是,使用了神经网络的处理与输出误差的关系不限于上述的关系,本实施方式的输出误差能够应用各种方式的误差。
[0100]
接着,在步骤s108中,输出差异度计算部35计算第1输出与第2输出的差异度即输出差异度。输出差异度是第1输出与第2输出之差越大则值越大的数值信息。输出差异度计算部35基于按照第1输出与第2输出的每个要素计算出的平方误差而求出输出差异度。例如输出差异度是每个要素的平方误差的和。或者输出差异度计算部35也可以基于按照第1输出与第2输出的每个要素计算出的huber误差而求出输出差异度。例如输出差异度是每个要素的huber误差的和。huber误差能够通过下式(4)而求出。在下式(4)中,a表示第1输出,b表示第2输出。通过使用huber误差,能够减小偏离值的影响。另外,输出差异度计算部35也可以基于第1输出与第2输出的互相关而求出输出差异度。例如输出差异度是互相关函数的倒数。根据图7的例子,第1输出与第2输出分别是二维排列的数据,求出2个二维排列的互相关函数的方法被广泛知晓。因此,通过应用这些方法,能够运算第1输出与第2输出的互相关函数。通过使用互相关函数的倒数,能够考虑输出所包含的要素间的关联性。此外,输出差异度计算部35也可以使用第1输出的概率分布与第2输出的概率分布之间的kl散度作为输出
差异度。即,输出差异度计算部35也可以使用第1输出的概率分布与第2输出的概率分布之间的距离作为输出差异度。
[0101]
[数式4]
[0102][0103]
如以上那样,在本实施方式的方法中,能够求出表示第1输出与第2输出的差异度的信息作为输出差异度,此时,能够应用各种方法。
[0104]
接着,在步骤s109中,权重系数更新部39计算包含输出差异度的整体误差,基于该整体误差来计算神经网络的各层中的误差。步骤s109中的处理相当于求出使各层中的权重系数变化时的整体误差的变化量即梯度(偏微分)的处理。另外,作为有效求出梯度的方法,已知有误差逆传播法,在本实施方式中,也能够使用误差逆传播法。但是,也可以通过误差逆传播法以外的方法来求出梯度。
[0105]
具体而言,权重系数更新部39求出输出误差与输出差异度的加权和作为整体误差。如上所述,输出误差是基于第1输出及第2输出中的至少1个输出和正确答案标签而计算的。例如,在将第1输出与正确答案标签的误差(d1)作为输出误差的情况下,整体误差是输出误差(d1)与输出差异度(d3)的加权和。输出差异度与输出误差的权重例如都为1/2。但是,权重不限于此,能够实施各种变形。或者,整体误差也可以是第2输出与正确答案标签的误差(d2)与输出差异度(d3)的加权和。另外,整体误差也可以是d1~d3这3项的加权和。
[0106]
然后,在步骤s110中,权重系数更新部39更新神经网络的各层中的权重系数,使得减小整体误差。例如权重系数更新部39将权重系数的梯度与学习率ρ相乘,从当前的权重系数的值减去相乘结果,由此更新各权重系数。
[0107]
在现有方法中,根据输出误差而求出整体误差。因此,现有方法即便能够进行使输入了图像时的输出接近正确答案标签这样的学习,也未考虑扩展图像间的关系。与此相对,在本实施方式中,将输出误差与输出差异度的加权和作为整体误差。因此,除了能够进行减少输出误差的方向的学习、即输入了图像时的输出接近正确答案标签这样的学习之外,还能够进行减少输出差异度的方向的学习。即,在将通过对同一输入图像应用不同的2个图像扩展而生成的2个扩展图像输入到神经网络时,进行使与它们对应的输出之间的差异度接近0这样的学习。由此,能够减小色调、明亮度、平滑化程度等与输入图像的变动对应的输出的变动。结果是,即便在应用图像中的变动超过图像扩展中的变动量的情况下,也能够抑制使用了学习完毕模型的图像处理的精度下降。关于具体例,如上使用图1的a1所述。
[0108]
另外,在步骤s110的处理后,在步骤s111中,处理部30判定是否满足了结束条件。结束条件例如是指权重系数的更新次数达到给定的次数。在未满足结束条件的情况下(s111中的否),处理部30返回步骤s102,重复进行以上所述的步骤s102~步骤s110的处理。例如处理部30从多个输入图像中选择新的输入图像,将选择出的输入图像作为对象执行上述处理。在满足了结束条件的情况下(s111中的是),处理部30结束神经网络的学习。另外,处理部30也可以向神经网络输入赋予了正确答案标签的测试图像组,在正确答案率超过给定的阈值的情况下,判定为满足了结束条件。
[0109]
4.学习处理中的变形例
[0110]
以下,对学习处理中的若干变形例进行说明。
[0111]
4.1从1张输入图像生成的扩展图像的张数
[0112]
图8是对基于1张输入图像的图像扩展进行说明的图。例如在进行明度校正处理作为图像扩展的情况下,如图8所示,通过使用值不同的x种γ而生成x张扩展图像。而且,这里的x为2以上的整数,也可以为3以上。在该情况下,x张扩展图像中的2张被选择为第1扩展图像和第2扩展图像。
[0113]
基于1张输入图像而输出的第1扩展图像与第2扩展图像的组不限于1组。例如,也可以以将图8中的扩展图像1与扩展图像2作为第1组且将扩展图像3与扩展图像4作为第2组的方式,基于1张输入图像而输出多组第1扩展图像与第2扩展图像的组,针对各组进行上述的处理。在生成x张扩展图像的情况下,第1扩展图像与第2扩展图像的组能够输出最大x(x-1)/2组。
[0114]
另外在机器学习中,能够利用成为扩展图像的生成源的输入图像。例如也可以将第1扩展图像和第2扩展图像中的任意一方变更为输入图像。在该情况下,能够进行减少将输入图像和扩展图像分别输入到神经网络时的输出之间的差异度这样的学习。因此,与将2个扩展图像的输出之间的差异度设为输出差异度的情况同样,能够抑制因图像变动引起的精度的下降。在该情况下,根据包含输入图像和基于该输入图像的x张扩展图像的合计x+1张图像来选择第1扩展图像和第2扩展图像。即,基于1张输入图像,第1扩展图像和第2扩展图像的组能够输出最大x(x+1)/2组。
[0115]
另外,在图4中,说明了在将步骤s102~步骤s110所示的处理进行1次时逐次生成第1扩展图像和第2扩展图像的例子。但是,也可以统一进行生成扩展图像的处理。例如处理部30预先进行根据1张输入图像生成x张扩展图像的处理,预先将由生成的多个扩展图像构成的扩展图像组蓄积于存储部。在该情况下,步骤s102~步骤s105的处理能够置换为从存储部所存储的扩展图像组中选择适当的2张图像作为第1扩展图像和第2扩展图像的处理。另外,处理部30也能够预先统一进行针对多个输入图像分别求出x张扩展图像的处理。此外,本实施方式的处理流程不限于图4,能够实施各种变形。
[0116]
4.2第1图像扩展与第2图像扩展的另一例
[0117]
另外,在图6(a)~图6(c)、图8中,针对图像扩展为明度校正处理的例子进行了说明。但是,针对输入图像的图像扩展也可以组合2个以上的处理。
[0118]
图9是对图像扩展的另一例进行说明的图。图像扩展部31针对输入图像进行以γ1~γz为参数的伽马校正处理和以δh1~δhz为参数的颜色校正处理。z是2以上的整数。这里,在着眼于给定的扩展图像i和扩展图像j的情况下,生成多个相同的扩展图像的必要性较低,因此,以满足γi≠γj和δhi≠δhj中的至少一方的方式设定参数。i和j分别为1以上且z以下,并且是满足i≠j的整数。
[0119]
图像扩展部31输出扩展图像1~扩展图像z中的2张扩展图像作为第1扩展图像和第2扩展图像。在该情况下,第1扩展图像和第2扩展图像是分别相同的2个处理的组合,并且与该2个处理对应的2个参数中的至少一方不同。在该情况下,第1扩展图像和第2扩展图像可能关于明度和色调这两方发生变动,但根据本实施方式的方法,能够抑制因该变动引起的神经网络的输出变动。
[0120]
此外,在图像扩展中生成与输入图像一致的扩展图像的必要性低,因此,以满足γi≠1和δhi≠0中的至少一方的方式设定参数。换言之,也可以是,如果δhi≠0,则容许成为γi=1,也可以是,如果γi≠1,则容许成为δhi=0。即,在图9的例子中,也可以省略伽马校正处理和颜色校正处理中的任意一方。
[0121]
在该情况下,扩展图像1~扩展图像z是仅进行了明度校正处理的的图像、仅进行了颜色校正处理的图像、进行了明度校正处理和颜色校正处理的图像中的任意一方。因此,关于第1扩展图像和第2扩展图像,不仅考虑是处理的组合相同而参数不同这样的情况,还考虑是从一开始处理的组合就不同这样的情况。这里的处理的组合是确定图像扩展所包含的处理的信息,根据上述例子,为“仅明度校正处理”、“仅颜色校正处理”、“明度校正处理和颜色校正处理”中的任意一方。例如,考虑如下情况:第1扩展图像是对输入图像进行了明度校正处理的图像,第2扩展图像成为对输入图像进行了颜色校正处理的图像。
[0122]
但是,如上所述,“仅明度校正处理”能够考虑是“明度校正处理和δh=0的颜色校正处理”,“仅颜色校正处理”能够考虑是“γ=1的明度校正处理和颜色校正处理”。即,处理的组合不同的情况包含在2个相同处理的组合且与该2个处理对应的2个参数中的至少一方不同的情况中。另外,在图9中,针对明度校正处理和颜色校正处理这2个处理进行了说明,但如上所述,图像扩展也可以包含3个以上的处理。
[0123]
4.3图像扩展范围的调整处理
[0124]
图10是表示重复进行了学习的情况下的误差的减少程度的图。图10的横轴是学习的重复次数(迭代),纵轴表示误差。学习的重复次数相当于权重系数的更新次数,例如是图4的步骤s110的执行次数。
[0125]
图10的e1表示不使用输出差异度而进行了使输出误差减少这样的学习的情况下的该输出误差的减少程度。根据图7的例子,相当于进行了如下的学习处理的情况,在该学习处理中,将包含表示第1输出与正确答案标签的误差的信息(d1)以及表示第2输出与正确答案标签的误差的信息(d2)且不包含输出差异度(d3)的误差作为整体误差。
[0126]
在与e1所示的方法进行了比较的情况下,在本实施方式的方法中,在整体误差中包含输出差异度这一点不同。通过进行减小输出差异度的学习,能够抑制因应用图像的变动引起的精度下降。但是,不仅仅是输出误差,也需要使输出差异度减少,因此,学习可能变难。例如如e2所示,在本实施方式的方法中,与不使用输出差异度的e1相比,误差难以减少。具体而言,在学习的初始阶段,误差的减少幅度可能变小,或者值收敛了时的误差可能变大。另外,值收敛表示成为了误差的变化量相对于学习的重复次数的增加而足够小的状态。
[0127]
尤其是在第1扩展图像与第2扩展图像之间的变动过大的情况下,第1输出与第2输出的差异度也容易变大,因此,更加难以进行使输出差异度接近0这样的学习。
[0128]
因此,在本实施方式中,决定第1图像扩展的第1参数和决定第2图像扩展的第2参数的差异也可以在给定的范围内。这样,由于抑制了第1扩展图像与第2扩展图像间之差,因此,能够提高使用了输出差异度的学习的收敛程度。关于学习的收敛程度高,可以是误差的减少幅度大,也可以是收敛时的误差的值小,还可以是这两方。
[0129]
例如在第1图像扩展和第2图像扩展是相同处理的情况下,将该处理中的参数的差异设定为给定的阈值以下。如果处理为伽马校正处理,则第1图像扩展中的γ与第2图像扩展中的γ的差分绝对值成为给定的伽马阈值以下。例如如上所述,在设定伽马校正处理中
的伽马的下限值与上限值时,以上限值与下限值的差分成为伽马阈值以下的方式设定上限值和下限值。这样,即便在图像扩展部31在下限值和上限值的范围内随机地决定了γ的值的情况下,也保证了用于生成第1扩展图像的γ与用于生成第2扩展图像的γ的差分绝对值成为伽马阈值以下。但是图像扩展部31也可以首先决定用于第1扩展图像的γ,以与该γ的差分成为伽马阈值以下的方式来决定用于第2扩展图像的γ,能够对具体的处理实施变形。
[0130]
另外,在第1图像扩展和第2图像扩展为2个以上的处理的组合的情况下,针对各个处理,将参数的差异设定为给定的阈值以下。如果处理为伽马校正处理和颜色校正处理,则将各参数设定为,第1图像扩展中的γ与第2图像扩展中的γ的差分绝对值成为给定的伽马阈值以下,并且第1图像扩展中的δh与第2图像扩展中的δh的差分绝对值成为给定的色相阈值以下。
[0131]
或者,也可以基于γ的差分和δh的差分,来运算表示第1参数与第2参数之间的差异的评价值。第1图像扩展和第2图像扩展以该评价值成为阈值以下的方式设定各参数。
[0132]
另外,在第1图像扩展与第2图像扩展的处理的组合不同的情况下,如上所述,针对不执行的处理看作是使用不使输入图像变动这样的参数而进行处理即可。不使输入图像变动的参数例如如上述那样为γ=1,δh=0。此外,在平滑化处理中,将高斯滤波器的应用次数设为0,在锐化处理中,将边缘强调滤波器的应用次数设为0,由此维持输入图像的平滑化程度和锐化程度。此外,在噪声附加处理中,通过将脉冲噪声设为0,即,将使像素值变化的像素的比例设为0,来维持输入图像的噪声量。另外,在仿射转换处理中,通过将用于仿射转换的矩阵要素中的对角成分设为1,将除此以外设为0,来维持输入图像的尺寸、角度、位置。
[0133]
具体而言,在将输出误差或整体误差作为判定对象误差的情况下,基于权重系数的更新处理中的判定对象误差的减少程度,来设定给定的范围。这样,能够基于学习的进展程度、收敛程度,来决定在第1图像扩展与第2图像扩展之间容许的参数的差异。
[0134]
例如处理部30将给定的范围例如参数的下限值和上限值设定为初始值。然后,进行使包含输出差异度和输出误差的整体误差减少这样的学习处理,判定判定对象误差的减少程度。在判定为判定对象误差充分减少的情况下,判定为该下限值和上限值适当。另一方面,在误差的减少幅度小的情况下,判定为由于给定的范围过宽而使学习变得困难。因此,处理部30将给定的范围更新得较窄。例如进行使下限值增加的处理及使上限值减少的处理中的至少一方。另外,在图像扩展为多个处理的组合的情况下,也可以针对全部处理的参数来更新上限值、下限值,还可以针对一部分处理的参数来更新上限值、下限值。
[0135]
另外,也可以是,在像这样使用实际的误差的减少程度来调整给定的范围的情况下,在图4中,在满足了步骤s111的结束条件时,判定判定对象误差的减少程度。即,也可以在学习完成时,根据判定对象误差减少了何种程度来判定给定的范围是否合适。但是在给定的范围过宽的情况下,需要在缩窄该给定的范围之后,再次重复进行步骤s102~s110的处理。即,设定给定的范围时的学习结果可能根据判定对象误差的减少程度而被废弃。如图10所示,能够根据学习初始阶段(e3)的误差的减少幅度、具体而言根据图表的斜率来判定误差的减少程度。或者,即便是误差未充分收敛的e4这样的重复次数,也能够根据误差的值的大小来判定减少程度。即,判定判定对象误差的减少程度时的学习的重复次数也可以是比学习的结束条件少的次数。
[0136]
此外,判定对象误差的减少程度是高还是低的判定也可以通过与固定的阈值的比
较来进行。但是,误差的减少程度根据用于神经网络的结构或学习的图像等而变化。因此,在使用了固定的阈值的情况下,可能不能准确地进行误差是否充分减少的判定。
[0137]
因此,处理部30也可以使用图10的e1所示的信息作为比较对象。具体而言,处理部30根据基于输出误差而更新了神经网络的各层中的权重系数的情况下的输出误差(e1)的减少程度、与基于包含输出差异度的整体误差而更新了神经网络的各层中的权重系数的情况下的判定对象误差(e2)的减少程度的比较处理,来设定给定的范围。这样,通过使用输出差异度,能够适当地判定学习以何种程度变得困难。尤其是如果考虑到比较对象是输出误差,则也可以将整体误差中的输出误差用作判定对象误差。这样,成为输出误差彼此的比较,因此能够高精度地判定误差的减少程度的高低。
[0138]
4.4图像扩展区域
[0139]
另外,图像扩展部31也可以将输入图像中的一部分区域设定为图像扩展区域。然后,图像扩展部31通过对输入图像的图像扩展区域应用第1图像扩展而生成第1扩展图像,通过对输入图像的图像扩展区域应用第2图像扩展而生成第2扩展图像。这样,能够将图像扩展限定为输入图像的一部分的区域而进行应用。
[0140]
例如由内窥镜装置拍摄的生物体内图像的周缘区域比中央区域暗,容易成为低对比度。因此,在应用图像的周缘区域存在成为识别对象的被摄体的情况下,该被摄体被拍摄得不清晰。例如图像扩展部31将图像的周缘区域设定为图像扩展区域,执行降低明度的明度校正处理和平滑化程度高的平滑化处理。由此,能够提高不清晰的被摄体的识别精度。
[0141]
或者,在生物体内图像中,在被摄体镜面反射后的照明光向对物透镜入射,从而容易产生亮点。亮点是指亮度高的区域,例如是发生了泛白的区域。尤其是在摄像部与被摄体处于正对的位置关系的情况下,在图像的中央区域容易产生亮点。在该情况下,图像扩展部31将图像的中央区域设定为图像扩展区域,执行附加将像素值设为最大值的脉冲噪声的噪声附加处理。这样,即便在图像中产生亮点的情况下,也能够提高被摄体的识别精度。
[0142]
另外,以上的处理是一例,将图像的周缘区域设定为图像扩展区域的情况下的图像扩展不限定于明度校正处理和平滑化处理。将图像的中央区域设定为图像扩展区域的情况下的图像扩展不限定于噪声附加处理。
[0143]
此外,也可以根据不同的观点来设定图像扩展区域。例如在将输入图像中的拍摄到关注被摄体的区域设为关注区域的情况下,也可以基于关注区域来设定图像扩展区域。如果从与摄像方式无关地提高关注被摄体的识别精度这样的观点出发,则最好将关注区域设定为图像扩展区域。另外,关注被摄体是指对用户来说观察的优先顺位比其他被摄体相对高的被摄体。例如,在输入图像为生物体内图像且用户为进行治疗的医生的情况下,关注被摄体是粘膜部或病变部。如上所述,关注被摄体也可以是息肉。此外,作为另一例,如果医生想要观察的对象为气泡或粪便,则关注被摄体成为该气泡或粪便。用户应关注的对象根据其观察目的而不同,但无论如何,在该观察时,对用户来说观察的优先顺位比其他被摄体相对高的被摄体都成为关注被摄体。
[0144]
但是,在输入图像中,也存在关注区域与背景区域的对比度差较小的情况。这样的被摄体难以通过用户的目视而检测到,期望成为使用了机器学习的识别处理的对象。在该情况下,在对关注区域进行了包含平滑化处理的图像扩展的情况下,本来就小的对比度差会变得更小。结果是,用于检测关注区域的学习可能变得困难。在假定这样的情况时,图像
扩展部31从图像扩展的对象中排除关注区域。即,将输入图像中的排除了关注区域的区域设定为图像扩展区域。
[0145]
此外,输出误差计算部37也可以使用输入图像中的一部分区域来计算输出误差。例如,在将输入图像中的拍摄到关注被摄体的区域设为关注区域的情况下,也可以在与关注区域对应的区域计算输出误差。
[0146]
4.5第2神经网络
[0147]
另外,神经网络应用部33也可以通过向与神经网络共享一部分构造的第2神经网络输入第1扩展图像而生成第3输出,通过向第2神经网络输入第2扩展图像而生成第4输出。神经网络应用部33将第3输出和第4输出向输出差异度计算部35输出。
[0148]
输出差异度计算部35计算表示第3输出与第4输出的差异度的第2输出差异度。第2输出差异度是第3输出与第4输出之差越大则值越大的数值信息。与上述输出差异度同样,能够基于平方误差、huber误差、互相关函数等而计算第2输出差异度。输出差异度计算部35将第2输出差异度向权重系数更新部39输出。
[0149]
权重系数更新部39基于第2输出差异度来更新神经网络的各层中的权重系数。另外,也可以将输出差异度用于神经网络的各层中的权重系数的更新。例如权重系数更新部39基于输出误差、输出差异度以及第2输出差异度的加权和来计算整体误差,以使该整体误差减少的方式更新神经网络的各层的权重系数。
[0150]
图11是对第2神经网络、第3输出及第4输出进行说明的图。与上面使用图7叙述的例子同样,通过向神经网络输入第1扩展图像而生成第1输出,通过向神经网络输入第2扩展图像而生成第2输出。基于第1输出和第2输出而求出输出差异度。另外,神经网络所包含的矩形分别表示神经网络中的1个层,可以是卷积层,也可以是池化层,还可以是除此以外的层。
[0151]
例如如图11所示,本实施方式中的第2神经网络对应于神经网络的输入层至给定的中间层(f1)。在输入了第1扩展图像的情况下,f1所示的中间层的输出被输入到其下一层(f2),并且作为第3输出向输出差异度计算部35输出。同样,在输入了第2扩展图像的情况下,f1所示的中间层的输出被输入到其下一层(f2),并且作为第4输出向输出差异度计算部35输出。
[0152]
这样,能够进行减小第1输出与第2输出之差并且减小第3输出与第4输出之差这样的学习。第2输出差异度有助于减少f1及f1的前一级的层中的误差。不仅抑制了神经网络的输出,还抑制了中间层中的变动,因此能够构筑图像变动更强的神经网络。
[0153]
另外,在图11中说明了f1所示的中间层的输出直接被用作第3输出或第4输出的例子。但是,第2神经网络的结构不限于此。
[0154]
图12是对第2神经网络、第3输出及第4输出进行说明的另一图。例如第2神经网络也可以包含神经网络的输入层至给定的中间层(f1),并且包含层(f3),该层(f3)不包含在神经网络中。在图12的例子中,f1所示的中间层的输出被输入到f31所示的层。然后经过f3所示的各层中的处理从f32所示的输出层输出第3输出或第4输出。另外,这里说明了f3包含多个层的例子,但f3也可以为1个层。
[0155]
在图12所示的例子中,也抑制了中间层中的变动,因此,能够构筑图像变动更强的神经网络。另外,在图12中,将f1设为中间层,但也可以变更为输出层。即,也可以通过向f3
所示的1个或多个层输入第1输出或第2输出而输出第3输出或第4输出。
[0156]
5.作为推论装置的图像处理装置
[0157]
以上,说明了进行基于输出差异度的学习处理的图像处理方法以及学习装置10。本实施方式的方法能够应用于如下的图像处理方法:取得应用图像,向神经网络输入该应用图像,由此生成输出,基于该输出,进行将应用图像作为对象的识别处理。另外,这里例示了识别处理,但针对应用图像的图像处理也可以为图像转换处理。或者本实施方式的方法能够应用于基于学习结果进行针对应用图像的处理的图像处理装置40。
[0158]
图13是图像处理装置40的结构例。图像处理装置40包含图像取得部50、处理部60以及存储部70。图像取得部50取得应用图像。存储部70存储由学习装置10生成的学习完毕模型。学习完毕模型被用作作为人工智能软件的一部分的程序模块。
[0159]
处理部60对应用图像进行基于学习完毕模型的推论处理。这里的推论处理对应于针对应用图像的图像处理,可以是图像分类处理、物体检测处理等识别处理,也可以是应用图像的图像转换处理。处理部60以按照来自存储部70所存储的学习完毕模型的指令而输出针对作为输入的应用图像的图像处理的结果的方式进行动作。
[0160]
处理部60与学习装置10的处理部30同样地由各种硬件、处理器实现。存储部70可以为半导体存储器,也可以为寄存器,也可以为磁存储装置,还可以为光学式存储装置。另外,处理部60也可以包含用于进行基于学习完毕模型的处理的专用硬件。如果为使用神经网络的例子,则处理部60也可以包含进行卷积运算中的滤波器处理、全连接层中的积和运算处理的电路装置。电路装置例如能够由fpga(field-programmable gate array:现场可编程门阵列)等实现。在该情况下,存储部70存储权重系数作为学习完毕模型,包含上述电路装置的处理部60按照该权重系数进行动作,由此进行识别处理等。或者,存储部70也可以存储用于进行滤波器处理或积和运算处理的程序以及上述权重系数这两方作为学习完毕模型。这样,能够对用于使处理部60按照来自存储部70所存储的学习完毕模型的指令进行动作的具体结构实施各种变形。
[0161]
此外,图像处理装置40可以为1个装置,也可以包含多个装置。例如,也可以通过pc等终端装置与服务器系统协作地进行动作来实现图像处理装置40。此外,存储部70可以为rom也可以为ram。具体而言,写入到存储部70的学习完毕模型可以为不可改写,也可以为能够改写。在能够改写的情况下,例如,学习完毕模型的信息被汇集在服务器系统中,图像处理装置40的存储部70存储从服务器系统取得的学习完毕模型。在该情况下,能够在服务器系统侧管理学习完毕模型,因此,更新处理等变得容易。
[0162]
这里,存储部70所存储的学习完毕模型通过对输入图像应用第1图像扩展而生成第1扩展图像,通过对输入图像应用与第1图像扩展不同的第2图像扩展而生成第2扩展图像,通过向神经网络输入第1扩展图像而生成第1输出,通过向神经网络输入第2扩展图像而生成第2输出,计算表示第1输出与第2输出的差异度的输出差异度,基于输出差异度,更新神经网络的各层中的权重系数,由此进行学习。更具体而言,学习完毕模型是通过使用图4执行上述的各步骤而学习的模型。
[0163]
这样,能够使用以输出差异度变小的方式学习的学习完毕模型,来执行针对应用图像的图像处理。即便在应用图像中产生色度、明亮度的变动并且该变动超过图像扩展中的输入图像的变动量,也能够抑制图像处理的精度下降。
[0164]
此外,实现本实施方式的图像处理装置40所进行的处理的程序例如能够存储在作为计算机可读取的介质的信息存储装置中。这里的程序包含学习完毕模型。信息存储装置例如能够由光盘、存储卡、hdd或半导体存储器等实现。处理部60基于信息存储装置所存储的程序来进行包含识别对象的检测处理的各种处理。即,信息存储装置存储用于使计算机作为图像处理装置40发挥功能的程序。计算机是具备输入装置、处理部、存储部、输出部的装置。程序是用于使计算机执行图像处理装置40中的处理、尤其是处理部60中的处理的程序。
[0165]
图14是对图像处理装置40中的处理进行说明的流程图。当开始该处理时,在步骤s201中,图像取得部50取得应用图像。
[0166]
接着,在步骤s202中,处理部60通过向作为学习完毕模型的神经网络输入应用图像而生成输出。步骤s202中的处理与图4的步骤s106同样,是按照所设定的权重系数进行的卷积运算等。
[0167]
然后,在步骤s203中,处理部60基于步骤s202的输出来执行识别处理。步骤s203中的识别结果可以如上述那样为确定在图像中拍摄到的被摄体的类别的信息,也可以为能够确定至被摄体的位置的信息。
[0168]
另外,处理部60也可以取得由内窥镜装置拍摄到的生物体内图像作为应用图像,向学习完毕模型输入生物体内图像,由此进行以生物体内图像为对象的识别处理。识别对象是在生物体内图像中拍摄到的关注被摄体。如上所述,关注被摄体是对用户来说观察的优先度比其他被摄体高的被摄体。这样,在生物体内图像的观察中,能够提高作为识别对象的关注被摄体的识别精度。在该情况下,图像处理装置40也可以包含在拍摄生物体内图像的内窥镜装置中。
[0169]
图15是内窥镜装置12的结构例。内窥镜装置12包含插入部100、外部i/f部200、系统控制装置300、显示部400以及光源装置500。
[0170]
插入部100是向体内插入的部分。插入部100包含对物光学系统110、摄像元件120、致动器130、照明透镜140、光导150、af(auto focus:自动聚焦)开始/结束按钮160。
[0171]
光导150将来自光源520的照明光引导至插入部100的前端。照明透镜140向被摄体照射由光导150引导的照明光。对物光学系统110使从被摄体反射的反射光作为被摄体像而成像。对物光学系统110包含对焦透镜111,能够根据对焦透镜111的位置来变更被摄体像所成像的位置。致动器130基于来自af控制部360的指示来驱动对焦透镜111。另外,af不是必须的,内窥镜装置12也可以为不包含af控制部360的结构。
[0172]
摄像元件120接受经由对物光学系统110的来自被摄体的光。摄像元件120可以为单色传感器,也可以为具备彩色滤波器的元件。彩色滤波器可以为广泛知晓的拜耳滤波器,也可以为补色滤波器,还可以为其他的滤波器。补色滤波器是指包含蓝色、品红色及黄色的各色滤波器的滤波器。
[0173]
af开始/结束按钮160是用于使用户对af的开始/结束进行操作的操作接口。外部i/f部200是用于进行针对内窥镜装置12的来自用户的输入的接口。外部i/f部200例如包含af控制模式的设定按钮、af区域的设定按钮、图像处理参数的调整按钮等。
[0174]
系统控制装置300进行图像处理和系统整体的控制。系统控制装置300包含a/d转换部310、预处理部320、检测部330、后处理部340、系统控制部350、af控制部360、存储部
370。系统控制装置300例如包含图13的图像处理装置40。a/d转换部310对应于图13的图像取得部50。存储部370对应于图13的存储部70。预处理部320、检测部330、后处理部340等对应于图13的处理部60。
[0175]
a/d转换部310将从摄像元件120依次输出的模拟信号转换成数字的图像,并向预处理部320依次输出。预处理部320对从a/d转换部310依次输出的摄像图像进行各种校正处理,并向检测部330、af控制部360依次输出。校正处理例如包含白平衡处理、降噪处理等。
[0176]
检测部330按照存储部370所存储的学习完毕模型进行动作,由此根据作为应用图像的摄像图像进行关注被摄体的识别处理。在学习完毕模型为神经网络的情况下,检测部330使用通过学习而决定的权重系数,对作为输入的应用图像进行正向的运算处理。然后,基于输出层的输出,输出识别处理的结果。
[0177]
后处理部340进行基于检测部330中的检测处理结果的后处理,将后处理后的图像向显示部400输出。这里的后处理考虑应用图像中的识别对象的强调、表示检测结果的信息的附加等各种处理。
[0178]
系统控制部350与摄像元件120、af开始/结束按钮160、外部i/f部200、af控制部360相互连接,对各部进行控制。具体而言,系统控制部350进行各种控制信号的输入输出。af控制部360使用从预处理部320依次输出的应用图像进行af控制。
[0179]
显示部400依次显示从后处理部340输出的图像。显示部400例如是液晶显示器或el(electro-luminescence:电发光)显示器等。光源装置500包含发出照明光的光源520。光源520可以是氙气光源,也可以是led,还可以是激光光源。另外,光源520也可以是其他光源,发光方式不受限定。
[0180]
另外,图像处理装置40不限定于包含在内窥镜装置12中的图像处理装置。例如图像处理装置40也可以是与内窥镜装置12分体设置且能够与内窥镜装置12进行通信的pc、服务器系统等。
[0181]
另外,如上述那样对本实施方式详细进行了说明,但本领域技术人员能够容易理解可进行实体上不脱离本实施方式的新事项及效果的很多变形。因此,这样的变形例全部包含在本公开的范围内。例如,在说明书或附图中,至少一次与更加广义或同义的不同用语一起记载的用语在说明书或附图的任何部位都能够置换为该不同的用语。另外,本实施方式和变形例的全部组合也包含在本公开的范围内。另外、学习装置、图像处理装置等的结构和动作等也不限定于本实施方式中说明的结构和动作,能够实施各种变形。
[0182]
标号说明
[0183]
10
…
学习装置,12
…
内窥镜装置,20
…
取得部,30
…
处理部,31
…
图像扩展部,33
…
神经网络应用部,35
…
输出差异度计算部,37
…
输出误差计算部,39
…
权重系数更新部,40
…
图像处理装置,50
…
图像取得部,60
…
处理部,70
…
存储部,100
…
插入部,110
…
对物光学系统,111
…
对焦透镜,120
…
摄像元件,130
…
致动器,140
…
照明透镜,150
…
光导,160
…
af开始/结束按钮,200
…
外部i/f部,300
…
系统控制装置,310
…
a/d转换部,320
…
预处理部,330
…
检测部,340
…
后处理部,350
…
系统控制部,360
…
af控制部,370
…
存储部,400
…
显示部,500
…
光源装置,520
…
光源。