一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

通过基于用户输入所生成的人工智能模型来生成虚拟缺陷图像的计算机程序、方法和装置与流程

2021-10-24 09:03:00 来源:中国专利 TAG:生成 人工智能 缺陷 装置 模型


1.本发明的实施例涉及一种通过基于用户输入所生成的人工智能模型,生成虚拟缺陷图像的计算机程序、方法和装置。


背景技术:

2.通常,需要对工厂生产的产品检测是否有缺陷。近来,为降低生产线的自动化等费用做出了诸多努力,随之对自动化产品质量检测的关注度也日益提高。例如,将计算机视觉应用于机械、机器人、处理器或质量控制的机器视觉(machine vision)技术正在迅猛发展。
3.原有的机器视觉技术不使用人工智能,而仅使用了模板匹配(template matching),其包括简单地从产品的图像(例如,照片)中选出能够作为标准的模板或与模板进行比较的技术。例如,原有的机器视觉方法是,比较能够作为标准的图像和产品图像的像素值后,对何种像素值差异范畴属于缺陷的规则进行算法化处理,或测量产品图像特定部分的长度后,对长度是何范畴时属于缺陷的规则进行算法化处理。即,以不使用人工智能的机器视觉为例,其存在对所有会出现的缺陷进行算法化非常繁琐,并且很难检测出没有规则的非典型缺陷(即,无法制定规则的缺陷)的问题。
4.另一方面,随着近来人工智能技术的发展,对于将人工智能应用于机器视觉以使人工智能检测出非典型缺陷(无法制定规则的缺陷)技术的关注度日益提高。


技术实现要素:

5.技术问题
6.如上所述,当训练用于检测产品缺陷的人工智能模型时,为了用于学习的数据,需要多个有缺陷的产品图像(例如,照片)。例如,学习数据越多,缺陷检测人工智能模型的性能就越好。
7.但是在一般的生产线,很难获得大量有缺陷的产品图像(以下简称为缺陷图像)。尤其是,生产线初期缺陷图像的数量极少,无法训练有效的缺陷检测人工智能模型,因而在生产线初期可能更加无法使用所述人工智能模型。
8.另一方面,当通过对极少的缺陷图像(即,真实存在的缺陷图像)做少许变换来增加学习数据时,由于这种方法是对原有缺陷图像进行变换,因此无法生成从没有过的新的缺陷图像。另外,不同产品可能发生的特征性缺陷或精细的缺陷无法显示出规则,因此很难生成具有从没有过的新缺陷的产品图像。
9.本发明是为了改善所述问题而构思出的,旨在提供一种通过基于用户输入而生成的人工智能模型,生成虚拟缺陷图像的计算机程序、方法和装置。
10.但是所述问题是示例性的,本发明的范围并不限于此。
11.技术方案
12.根据本发明一实施例的电子装置的操作方法,其中,虚拟缺陷图像生成方法可以
包括:学习虚拟缺陷图像生成模型的操作,其至少基于对应于第一产品的第一正常图像、缺陷图像以及用户输入来实现;以及生成虚拟缺陷图像的操作,其利用所述学习的虚拟缺陷图像生成模型,通过对应于第二产品的第二正常图像来实现。所述生成虚拟缺陷图像的操作可以包括:生成所述虚拟缺陷图像的操作,其利用预设形状的缺陷区域信息并通过所述虚拟缺陷图像生成模型来实现;以及生成所述虚拟缺陷图像的操作,其利用基于用户直接绘制将要生成缺陷的区域的输入的手动区域信息,并通过所述虚拟缺陷图像生成模型来实现。
13.根据一实施例,所述第一产品和所述第二产品可以类型完全相同,或者类型相同但规格或版本不同。
14.根据一实施例,所述第一正常图像和所述第二正常图像可以彼此相同或不同。
15.根据一实施例,所述学习虚拟缺陷图像生成模型的操作可以包括,对所述第一产品可能发生的多个缺陷类型进行设置的操作。
16.根据一实施例,所述生成虚拟缺陷图像的操作可以包括,对于所述设置的多个缺陷类型中的至少一部分,基于用户输入来接收如下信息的操作,即,可能分别发生所述至少一部分多个缺陷类型的缺陷区域有关信息。
17.根据一实施例,所述学习虚拟缺陷图像生成模型的操作可以包括:收集数据库并进行预处理的操作,其基于包括所述第一产品在内的多个不同版本的产品第一正常图像和缺陷图像来实现;以及学习所述虚拟缺陷图像生成模型的操作,其通过在所述多个不同版本的产品中仅选出一部分产品来实现。
18.根据本发明一实施例的计算机程序可以存储到计算机可读存储介质中,使得利用计算机执行上述操作。
19.根据本发明一实施例的非

暂时性(non

transitory)计算机

可读(computer

readable)存储(storage)介质(medium),可以存储用于执行上述操作的一个或多个程序。
20.通过以下附图、权利要求书和详细描述,除上述描述以外的其它方面、特征和优点将变得更加明确。
21.发明效果
22.根据如上所述的本发明一实施例的装置、方法和计算机程序,可以基于用户输入并按照用户所需来学习对应各种类型产品的虚拟缺陷图像生成模型,并且利用学习的虚拟缺陷图像生成模型来生成所述用户所需的产品虚拟缺陷图像。
23.另外,可以通过正常图像来全新生成具有新缺陷的虚拟缺陷图像,而非变换原有的缺陷图像。
24.另外,可以通过一次学习就生成各种类型的缺陷。
25.另外,可以通过基于用户输入所进行的一次学习,就可以学习能够在自动模式(auto mode)下生成虚拟缺陷图像和在手动模式(manual mode)下生成虚拟缺陷图像的一个虚拟缺陷图像生成模型。
26.另外,可以在一个项目中聚集类型相同但详细特征不同的产品后一次一并学习。
27.另外,根据本发明一实施例的装置、方法和计算机程序,在学习生成模型时,可以基于从多个产品或多种缺陷类型中仅选出学习所需的用户输入,来学习各种模型。
28.当然,本发明的范围不因所述效果而受到限制。
附图说明
29.图1示出根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的功能结构示例。
30.图2示出根据本发明一实施例的包括虚拟缺陷图像生成过程和其使用示例的整体过程s10的示例。
31.图3示出根据本发明一实施例的用于生成虚拟缺陷图像的程序16的功能结构示例。
32.图4示出根据本发明一实施例的生成模块22在自动模式和手动模式下的操作示例。
33.图5示出根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的操作示例。
34.图6示出根据本发明一实施例的用于学习虚拟缺陷图像生成模型的电子装置10的操作示例。
35.图7示出根据本发明一实施例的用于生成虚拟缺陷图像的程序16中一画面a7的示例。
36.图8示出根据本发明一实施例的电子装置10建立数据库,以学习虚拟缺陷图像生成模型的操作示例。
37.图9示出一个或多个版本产品的示例性示意图。
38.图10至图12示出根据本发明一实施例的建立数据库的多个画面的示例。
39.图13示出根据本发明一实施例的电子装置10对数据库进行预处理,以学习虚拟缺陷图像生成模型的操作示例。
40.图14至图18示出根据本发明一实施例的用于进行预处理的电子装置10的多个画面的示例。
41.图19示出根据本发明一实施例的用于学习虚拟缺陷图像生成模型的画面a19的示例。
42.图20示出根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的操作示例。
43.图21至图26示出根据本发明一实施例的用于执行自动模式生成的电子装置10的多个画面的示例。
44.图27为示出自动模式生成的多个虚拟缺陷图像的示例。
45.图28至图30示出根据本发明一实施例的用于执行手动模式生成的多个画面的示例。
46.图31示出以手动模式生成的多个虚拟缺陷图像的示例。
47.图32至图34为根据本发明一实施例的在生成虚拟缺陷图像时,自动模式生成更有效的情况与手动模式生成更有效的情况的示例性示意图。
具体实施方式
48.可以对本发明进行各种变形,并且本发明可以有各种实施例,因此在附图中示出了具体的实施例并将在详细描述中对此进行详细描述。通过参考附图和后续详细描述的实
施例,本发明的效果和特征以及其实现方法将变得显而易见。但是本发明不限于以下公开的实施例,并且可以以各种形式实现。
49.以下将参考附图详细描述本发明的实施例,并且在参考附图进行描述时,对相同或对应的组件赋予相同的附图标记并省略对其的重复描述。
50.在以下实施例中,第一、第二等术语用于区分一个组件与另一个组件,其并不具有限制性。
51.在以下实施例中,单数表达包括复数表达,除非另有明确说明。
52.在以下实施例中,“包括”或“具有”等术语表示说明书中描述的特征或组件存在,并且不预先排除一个或多个其它特征或组件被添加的可能性。
53.为了便于描述,附图中的组件尺寸可以被放大或缩小。例如,为了便于描述,任意示出了附图中所示的每个组件的尺寸和厚度,因此本发明不必然限于所示的内容。
54.在以下实施例中,当描述区域、组件、块、模块等连接时,不仅指多个组件、块、模块直接连接的情况,还包括多个其它组件、块、模块夹置于多个组件、块、模块中间而连接的情况。
55.图1为根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的功能结构框图。
56.参考图1,电子装置10可以包括通信模块11、处理器12、显示装置13、输入装置14以及存储器15。存储器15可以存储程序16,所述程序16可以学习虚拟缺陷图像生成模型,并利用学习的虚拟缺陷图像生成模型从正常图像生成虚拟缺陷图像。
57.因此,电子装置10是可以在处理器12执行程序16时,随之生成虚拟缺陷图像的装置。电子装置10可以包括,例如便携式通信设备(如智能手机、笔记本电脑)、计算机装置、平板电脑等。但是电子装置10不限于上述设备。
58.另外,电子装置10不限于上述组件,其它组件可以添加至电子装置10或其一部分组件可以被省略。
59.通信模块11可以支持电子装置10与外部电子装置(例如,其它电子装置或服务器)间建立有线或无线通信信道以及通过建立的通信信道来进行通信。通信模块11可以包括一个或多个通信处理器,所述通信处理器独立于处理器12(例如,应用处理器)而运行并支持有线通信或无线通信。根据一实施例,通信模块11可以包括无线通信模块(例如,蜂窝通信模块、短距离无线通信模块或全球导航卫星系统(gnss,global navigation satellite system)通信模块)或有线通信模块(例如,局域网(lan,local area network)通信模块或电力线通信模块),并且可以利用相应的通信模块并通过短距离无线通信网络(例如,蓝牙、wifi直连或红外数据协会(irda,infrared data association)或远程通信网络(例如,蜂窝网络、互联网或计算机网络(例如,局域网(lan)或广域网(wan)),与外部电子装置进行通信。上述各种类型的通信模块11可以由一个芯片或分别由单独的芯片来实现。
60.根据本发明一实施例的电子装置10的虚拟缺陷图像生成操作的至少一部分,可以通过经由通信模块11的与服务器(未示出)之间的无线通信信道来执行。例如,在电子装置10基于用户输入来学习虚拟缺陷图像生成模型并生成虚拟缺陷图像的过程中,其可以与服务器(未示出)发送和接收至少一部分数据。
61.处理器12可以驱动例如软件(例如,程序16)来控制连接至处理器12的电子装置10
的至少一个其它组件(例如,硬件或软件的组件),并且可以执行各种数据处理和操作。处理器12可以将从其它组件(例如,输入装置14)接收的指令或数据加载到存储器15(例如,易失性存储器)并进行处理,且将结果数据存储到存储器15(例如,非易失性存储器)中。
62.存储器15可以存储被电子装置10的至少一个组件(例如,处理器12)使用的各种数据,例如,对软件(例如,程序16)以及与之相关指令的输入数据或输出数据。存储器15可以包括易失性存储器或非易失性存储器。
63.根据本发明的一实施例,存储器15可以存储程序16,其中所述程序16可以至少基于用户输入来学习虚拟缺陷图像生成模型,并通过学习的虚拟缺陷图像生成模型来生成虚拟缺陷图像。
64.程序16是存储到存储器15中的软件,其可以包括一个或多个程序。例如,如后续在图2和图3中的描述,程序16可以包括开发模块21和生成模块22,其中所述开发模块21学习虚拟缺陷图像生成模型,所述生成模块22利用学习的虚拟缺陷图像生成模型来生成虚拟缺陷图像,并且如开发模块21和生成模块22可以包括多个下层模块般,所述程序16也可以包括多个模块。
65.显示装置13是用于通过视觉向电子装置10的用户提供信息的装置,其可以包括例如显示器和用于控制显示器的控制电路。根据一实施例,显示装置13可以包括触摸电路(touch circuitry)。
66.根据本发明的一实施例,显示装置13可以显示对应于程序16执行的多个画面。显示装置13可以显示用于接收用户输入的图形用户界面(gui,graphic user interface),所述用户输入用于学习虚拟缺陷图像生成模型和生成虚拟缺陷图像。
67.输入装置14可以从电子装置10的外部(例如,用户)接收将用于电子装置10至少一个组件(例如,处理器12)的指令或数据。输入装置14可以包括例如鼠标、键盘、触摸屏、按键、麦克风等。
68.图2为根据本发明一实施例的包括虚拟缺陷图像生成过程s11和其使用示例的整体过程s10的流程示意图。
69.参考图2,根据本发明一实施例的整体过程s10包括,利用学习数据e1来学习虚拟缺陷图像生成模型的过程s1,利用学习的生成模型e2来生成虚拟缺陷图像的过程s2,将生成的虚拟缺陷图像e3作为学习数据来学习缺陷检测模型的过程s3,以及利用学习的缺陷检测模型e4来检测产品缺陷的过程s4。
70.在图2中,方形块可以指例如处理器12的执行或操作,并且椭圆块可以指例如用于所述操作或由所述操作计算出的要素(例如,因素(factor)、道具、模型,数据)。
71.另一方面,本说明书中的虚拟缺陷图像是指,通过将虚拟缺陷草图添加至产品的正常图像而生成的具有缺陷的虚拟产品图像。本说明书中的虚拟缺陷图像生成模型是指,可以从正常图像生成虚拟缺陷图像的人工智能模型,并且可以至少基于对程序16的用户输入来学习所述虚拟缺陷图像生成模型。本说明书中的缺陷检测模型是指,可以将生成的虚拟缺陷图像作为学习数据,从而在实际产品图像中检测产品是否有缺陷的人工智能模型。缺陷检测模型同样可以至少基于对程序16的用户输入来生成。
72.根据本发明一实施例的电子装置10(例如,处理器12)可以执行例如学习虚拟缺陷图像生成模型的操作s1,生成虚拟缺陷图像的操作s2,以及学习缺陷检测模型的操作s3。作
为s3的结果而生成的缺陷检测模型e4,例如可以用于在实际生产线中检测产品缺陷s4。
73.程序16可以包括开发模块21和生成模块22,所述开发模块21利用学习数据e1学习虚拟缺陷图像生成模型s1并输出虚拟缺陷图像生成模型e2,所述生成模块22利用虚拟缺陷图像生成模型e2来生成虚拟缺陷图像s2,从而输出虚拟缺陷图像e3。另外,程序16可以进一步包括检测模块(或分类模块)(未示出),所述检测模块(或分类模块)利用所述输出的虚拟缺陷图像e3来学习缺陷检测模型(s3),从而输出缺陷检测模型e4。对开发模块21和生成模块22的详细描述将在后续附图中进行。
74.根据一实施例,s1、s2、s3以及s4均可以是基于彼此不同的人工智能的操作。例如,用于利用基于用户输入的学习数据e1来学习虚拟缺陷图像生成模型s1的人工智能模型(未示出)可以内嵌于程序16中。另外,生成虚拟缺陷图像的操作s2可以通过作为s1的结果而生成的人工智能模型e2来执行。另外,将作为s2的结果而生成的虚拟缺陷图像e3作为学习数据,来学习缺陷检测模型s3的人工智能模型(未示出)可以内嵌于程序16中。另外,检测产品缺陷的操作s4可以通过作为s3的结果而生成的人工智能模型e4来执行。
75.根据本发明的一实施例,生成模块22生成虚拟缺陷图像的过程s2包括,以自动模式生成的过程s221和以手动模式生成的过程s222。
76.以自动模式生成的过程s221是指,利用正常图像和预设缺陷区域的信息并通过虚拟缺陷图像生成模型e2来自动生成虚拟缺陷图像的过程。
77.以手动模式生成的过程s222是指,利用正常图像和基于用户直接绘制将要生成缺陷的区域的输入的手动区域信息,并通过所述虚拟缺陷图像生成模型e2来生成虚拟缺陷图像的过程。
78.根据一实施例,可以利用一个(相同的)虚拟缺陷图像生成模型e2来执行自动模式生成s221和手动模式生成s222。
79.另一方面,自动模式生成s221和手动模式生成s222可以是可选过程,而非有序过程。因此,根据对程序16(或处理器12)的用户输入并通过一个(相同的)虚拟缺陷图像生成模型e2,既可以以自动模式生成虚拟缺陷图像,也可以以手动模式生成虚拟缺陷图像。当然,也可以通过以自动模式生成并存储虚拟缺陷图像和以手动模式生成并存储虚拟缺陷图像,并利用以自动模式和手动模式生成的虚拟缺陷图像来学习缺陷检测模型s3。
80.图3为根据本发明一实施例的用于生成虚拟缺陷图像的程序16的功能结构框图。
81.参考图3,程序16可以包括开发模块21和生成模块22。如图2中的描述,开发模块21可以学习(或开发)虚拟缺陷图像生成模型,并且生成模块22可以利用学习的虚拟缺陷图像生成模型来生成虚拟缺陷图像。尽管未示出,但是程序16可以进一步包括检测模块(或分类模块),所述检测模块(或分类模块)可以利用生成的虚拟缺陷图像来学习缺陷检测模型。
82.开发模块21和生成模块22可以基于用户输入来执行操作。例如,开发模块21和生成模块22可以基于用户输入来执行预设操作或预存储(例如,编程)的操作。由于开发模块21和生成模块22基于用户输入来操作,因此可以根据用户需求(例如,各种类型的产品)来使用程序16,并且程序16可以用于各种领域而非特定领域。
83.根据本发明的一实施例,开发模块21可以包括数据库模块211、预处理模块212以及训练模块213。但这只是示例性的,每个模块功能的至少一部分功能可以被合并构成,或每个模块可以由多个下层模块构成。
84.数据库模块211可以收集和存储(或临时存储)数据库,以建立用于学习虚拟缺陷图像生成模型的数据库。
85.数据库模块211接收并存储例如产品识别信息(例如,名称)以作为所述数据库,并加载一个或多个正常图像和缺陷图像以学习虚拟缺陷图像生成模型,且可以接收和存储缺陷类型有关信息。另外,数据库模块211可以对所述加载的正常图像和缺陷图像标记缺陷类型。
86.另一方面,本说明书中的正常图像是指被确定为正常的实际产品图像。本说明书中的缺陷图像是指被确定为有缺陷的实际产品图像。本说明书中的缺陷类型是指,产品可以具有的缺陷种类,并且其可以由用户输入来列出。例如,程序16(或处理器12)可以通过用户来接收缺陷类型并将其编目,例如,其可以存储缺陷类型信息。缺陷类型可以以各种方式存在,例如弯曲、划痕,异物(例如,污渍或污染)以及具有特定颜色的异物等。
87.对数据库模块211操作的详细描述将在图8及以下进行。
88.预处理模块212可以对所述收集的数据库执行预处理,以学习虚拟缺陷图像生成模型。
89.以所述预处理为例,预处理模块212例如可以从加载的一个或多个正常图像中设置代表图像,并将加载的一个或多个正常图像和缺陷图像以所述代表图像为准进行对齐,且接收和存储代表图像中可能分别发生缺陷类型的缺陷区域有关信息。
90.对预处理模块212操作的详细描述将在图13及以下进行。
91.训练模块213可以基于所述数据库和所述预处理,学习(或训练)虚拟缺陷图像生成模型。训练模块213例如可以利用所述对齐的一个或多个正常图像和缺陷图像,所述标记有关信息以及所述缺陷区域有关信息,执行所述学习或训练。
92.根据本发明的一实施例,生成模块22可以包括自动模式模块221和手动模式模块222。但这只是示例性的,各个模块功能中的至少一些功能可以被集成配置,或各个模块可以由多个下层模块构成。
93.根据一实施例,自动模式模块221和手动模式模块222可以单单有功能区分(或模式区分或算法区分)。根据一实施例,可以利用由开发模块21生成的一个虚拟缺陷图像生成模型来均执行自动模式生成操作s221和手动模式生成操作s222。例如,在自动模式下,可以进一步利用存储在开发模块21中的草图生成器223(参考图4)来执行自动模式生成操作s221。
94.根据一实施例,生成模块22可以通过自动模式模块221并利用正常图像、预设缺陷区域的有关信息以及从开发模块21输出的虚拟缺陷图像生成模型e2来生成虚拟缺陷图像。
95.另外,生成模块22可以通过手动模式模块222并利用正常图像和用户直接绘制缺陷发生区域的输入以及所述虚拟缺陷图像生成模型e2,生成虚拟缺陷图像。
96.另一方面,在生成模块22中使用的第二正常图像可以与在开发模块21中使用的第一正常图像相同,但也可以不同。对此,将在图5及以下进行详细描述。
97.另一方面,在自动模式和手动模式下生成模块22的每个操作示例将在图4中进行详细描述。
98.图4为根据本发明一实施例的生成模块22在自动模式和手动模式下的操作流程示意图。
99.参考图4,生成模块22可以以自动模式或手动模式操作。自动模式和手动模式是可选过程,而非有序过程。因此,根据对程序16(或处理器12)的用户输入并通过一个虚拟缺陷图像生成模型,既可以以自动模式生成虚拟缺陷图像vdi,也可以以手动模式生成虚拟缺陷图像vdi。当然,也可以通过以手动模式生成并存储虚拟缺陷图像vdi和以自动模式生成并存储虚拟缺陷图像后,利用生成的多个虚拟缺陷图像vdis来学习缺陷检测模型。
100.根据本发明的一实施例,在开发模块21学习的一个相同的虚拟缺陷图像生成模型,可以均用于自动模式和手动模式。即,一个虚拟缺陷图像生成模型既可以以自动模式生成虚拟缺陷图像vdi,也可以以手动模式生成虚拟缺陷图像vdi。
101.根据本发明的一实施例,在自动模式下,草图生成器223可以利用预设缺陷区域信息和虚拟缺陷图像生成模型来生成虚拟缺陷草图vds1。草图生成器223可以是例如包括在生成模块22中的一个逻辑、算法、人工智能模型或模块。
102.具体地,在虚拟缺陷图像生成步骤(s2)中的自动模式下,可以将每个缺陷类型可能发生的缺陷区域设置为预先指定(例如,编程)的一定的形状。例如,在自动模式下,用户可以在产品的正常图像上利用预先指定的一定的形状(例如,直线、四角形边缘、圆形边缘、四角形区域(area)、圆形区域)来设置缺陷区域。可以将如上所述设置的缺陷区域称为所述预设缺陷区域信息。
103.在自动模式下,生成模块22(例如,草图生成器223)可以利用所述预设缺陷区域信息和学习的虚拟缺陷图像生成模型来生成虚拟缺陷草图vds1。草图生成器223可以在预设缺陷区域(例如,直线、四角形边缘、圆形边缘、四角形区域、圆形区域)内通过虚拟缺陷图像生成模型,自由或自动生成虚拟缺陷草图vds1。
104.虚拟缺陷草图vds1可以说是已除去产品图像并仅有虚拟缺陷的草图。虚拟缺陷草图vds1不仅可以包括形状,还可以包括有关其位置和缺陷类型的信息。图4示出了虚拟缺陷草图vds的示例。
105.此后,图像生成器224可以通过将虚拟缺陷草图vds1添加到正常图像oi(例如,通过重叠或合成处理)来生成虚拟缺陷图像vdi。
106.根据本发明的一实施例,在手动模式下,生成模块22利用基于用户直接绘制(即,绘制草图)虚拟缺陷发生区域的手动区域信息,和所述相同的虚拟缺陷图像生成模型来生成虚拟缺陷草图vds2。在手动模式下,由于用户直接对虚拟缺陷发生的手动区域绘制草图,因此不需要像自动模式一样预先设置缺陷区域信息。因此,在手动模式下可以不使用缺陷区域信息。
107.另外,在手动模式下,由于在用户直接绘制草图的手动区域生成对应的虚拟缺陷草图vds2,因此不需要草图生成器223。因此,在手动模式可以不使用草图生成器223。
108.另一方面,当用户绘制手动区域草图时,可以指定将在所述手动区域发生的缺陷种类,即,缺陷类型。因此,手动区域信息可以包括例如缺陷类型信息,或可以与缺陷类型信息相互作用或匹配。
109.在自动模式下,生成模块22可以利用所述手动区域信息和虚拟缺陷图像生成模型,生成与所述手动区域信息对应的虚拟缺陷草图vds2。虚拟缺陷草图vds2可以是已除去产品图像并仅有虚拟缺陷的草图。虚拟缺陷草图vds2不仅可以包括形状,还可以包括有关其位置和缺陷类型的信息。
110.此后,图像生成器224可以通过将虚拟缺陷草图vds2添加到正常图像oi(例如,通过重叠或合成处理)来生成虚拟缺陷图像vdi。图像生成器224的操作在自动模式和手动模式下可以是共同的。
111.图5为根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的操作流程示意图。图5的操作可以由处理器12通过程序16来执行。
112.参考图5,在s21中,处理器12可以通过开发模块21并至少基于产品的第一正常图像、缺陷图像以及用户输入,学习虚拟缺陷图像生成模型。在s22中,处理器12可以通过生成模块22并利用学习的虚拟缺陷图像生成模型,从第二正常图像生成虚拟缺陷图像。在s23中,处理器12可以通过生成模块22将生成的虚拟缺陷图像存储到存储器15中。存储的虚拟缺陷图像可以用作例如学习数据,以学习缺陷检测模型。
113.用于生成模型学习步骤s21(或开发模块21)的第一正常图像,可以与用于虚拟缺陷图像生成步骤s22(或生成模块22)的第二正常图像相同或不同。
114.例如,在s21中,开发模块21需要产品的第一正常图像和所述产品的缺陷图像,以学习虚拟缺陷图像生成模型。因此,当获得了相当数量(例如,数张至数十张及其以上,但并不限于此)的产品正常图像和缺陷图像时,所述产品的正常图像可以在开发模块21中用作第一正常图像。
115.与此相反,在s22中生成模块22不需要缺陷图像。生成模块22是用于利用虚拟缺陷图像生成模型,从正常图像(即,第二正常图像)全新生成完全虚拟的缺陷图像(即,虚拟缺陷图像)的模块。因此,在生成模块22中使用的第二正常图像不必与在开发模块21中加载的第一正常图像相同。
116.以下,第一正常图像将指代在生成模型学习步骤s21中(或在开发模块21中)用作学习数据的正常图像。以下,第二正常图像将指代在虚拟缺陷图像生成步骤s22中(或在生成模块22中)用作虚拟缺陷图像生成基础的正常图像。
117.根据一实施例,第一正常图像和第二正常图像可以彼此相同。在该实施例中,第一正常图像中的产品和第二正常图像中的产品自然是同一产品。
118.根据另一实施例,可以使用同一产品但彼此不同的第一正常图像和第二正常图像。即,在相同类型、相同版本产品的多个正常图像中,可以将不同的正常图像分别用作第一正常图像和第二正常图像。
119.又根据另一实施例,当存在广义上类型相同但详细特征(例如,规格或版本)不同的第一产品和第二产品时,第一产品的正常图像可以用作第一正常图像,第二产品的正常图像可以用作第二正常图像。因此,当要生成缺陷图像不存在或极少的第二产品的虚拟缺陷图像时,可以利用缺陷图像充足的第一产品来学习虚拟缺陷图像生成模型,然后通过所述学习的虚拟缺陷图像生成模型,从第二产品的正常图像(即,第二正常图像)生成第二产品的虚拟缺陷图像。
120.图6为根据本发明一实施例的用于学习虚拟缺陷图像生成模型的电子装置10的操作流程示意图。图6的操作可以是s21的具体示例,其可以由处理器12来执行,并且可以通过程序16的开发模块21来执行。
121.参考图6,在s211中,处理器12可以通过开发模块21(例如,数据库模块211)来收集和存储(或临时存储)数据库。这是为了建立用于学习虚拟缺陷图像生成模型的数据库。对
s211具体操作的描述将在图8及以下进行。
122.在s212中,处理器12可以通过开发模块21(例如,预处理模块212)对所述收集的数据库进行预处理。所述预处理是为学习虚拟缺陷图像生成模型而进行的预处理。对s212具体操作的描述将在图13及以下进行。
123.在s213中,处理器12可以通过开发模块21(例如,训练模块213)并基于所述数据库和所述预处理来学习(或训练)虚拟缺陷图像生成模型。
124.图7为根据本发明一实施例的用于生成虚拟缺陷图像的程序16中一画面a7的示意图。
125.参考图7,运行程序16后处理器12可以控制显示装置13,使得其显示用于创建虚拟缺陷图像生成模型新项目的画面a7。画面a7可以包括,用于生成虚拟缺陷图像的图标71和用于利用生成的虚拟缺陷图像来学习缺陷检测模型的图标72。例如,处理器12可以基于对用于生成虚拟缺陷图像的图标71的用户输入,显示开发器图标73和生成器图标74,所述开发器图标73用于进入作为程序16(或处理器12、存储器15)下层模块的开发模块21,所述生成器图标74用于进入作为其另一个下层模块的生成模块22。用于学习缺陷检测模型的图标72可以对应于检测模块(或分类模块)(未示出)。
126.处理器12接收对开发器图标73的用户输入后,可以通过开发模块21进入学习虚拟缺陷图像生成模型的过程s1。例如,开发模块21可以创建学习虚拟缺陷图像生成模型的项目。通过所述项目中的学习虚拟缺陷图像生成模型的过程s1,开发模块21可以输出并存储学习的虚拟缺陷图像生成模型e2。
127.处理器12接收对生成器图标74的用户输入后,可以通过生成模块22进入利用所述存储的虚拟缺陷图像生成模型e2来生成虚拟缺陷图像的过程s2。例如,生成模块22可以创建从正常图像(第二正常图像)生成虚拟缺陷图像的项目。在所述项目中,生成模块22可以生成并存储一个或多个虚拟缺陷图像e3。
128.图8为根据本发明一实施例的电子装置10建立数据库,以学习虚拟缺陷图像生成模型的操作流程示意图。图10至图12为根据本发明一实施例的建立数据库的多个画面示意图。
129.图8的操作可以是图6中s211的具体示例,其可以由处理器12执行,并且可以通过程序16的开发模块21(例如,数据库模块211)来执行。
130.参考图8,在s2111中,处理器12可以通过开发模块21(例如,数据库模块211)接收一个或多个版本产品分别的识别信息(例如,名称)并进行存储。其中,一个或多个版本的产品可以是指,广义上类型相同但详细特征(例如,规格或版本)不同的一个或多个产品。例如,一个或多个版本的产品可以是指,形状、颜色以及发生的缺陷类型相似的多个产品。
131.例如,项目不必通过相同类型、相同版本产品的多个图像(即,第一正常图像和缺陷图像)来学习虚拟缺陷图像生成模型。所述项目可以通过类型相同但详细规格和版本不同的多个产品来学习一个虚拟缺陷图像生成模型。
132.因此,处理器12可以在s2111中存储一个或多个版本产品分别的识别信息并进行区分。
133.例如,图9为一个或多个版本产品的示意图。参考图9,为了学习虚拟缺陷图像生成模型,所述项目可以使用作为第一产品的第一晶体管91的多个图像(即,第一正常图像和缺
陷图像)和作为第二产品的第二晶体管92的多个图像。
134.参考图10,画面a10示出接收一个或多个版本产品分别的识别信息(例如,名称)的画面。例如,处理器12在接收到对用于编辑学习所需产品的图标101的用户输入后,可以显示(例如,覆盖(overlay))编辑窗口102,所述编辑窗口102可以用于添加或删除一个或多个产品,或更改多个产品的显示顺序,或修改多个产品的识别信息(例如,名称)。参考编辑窗口102,例如,第一产品可以是34ah电池,第二产品可以是37ah电池。
135.根据一实施例,如上所述,当使用多个版本产品的多个图像并通过一个项目来学习一个虚拟缺陷生成模型时,相比于使用一个类型、一个版本产品的多个图像来学习虚拟缺陷图像生成模型,模型的性能可能更优秀。
136.另外,例如,当获得的第一产品的正常图像和缺陷图像充足(例如,数十张及其以上),但第二产品的正常图像和缺陷图像不够充足时,如果要生成第二产品的缺陷检测模型,就能很好地适用本功能。当然,也可以仅通过第一产品的多个图像来学习虚拟缺陷图像生成模型,并利用所述虚拟缺陷图像生成模型,从第二产品的正常图像生成第二产品的虚拟缺陷图像。但是,例如,如果均使用第一产品和第二产品来学习模型,并利用所述模型从第二产品的正常图像生成第二产品的虚拟缺陷图像,则可以获得质量更好的第二产品的虚拟缺陷图像。
137.根据一实施例,可以通过将形状、颜色以及缺陷类型相似的多个版本的多个产品添加至一个项目来提高学习效果。
138.另一方面,建立数据库的多个画面(a10、a11、a12)中,用于显示数据库的图标103可以被突出显示。
139.再次参考图8,在s2112中,处理器12可以通过开发模块21(例如,数据库模块211),对一个或多个版本产品分别加载一个或多个第一正常图像和缺陷图像。所述加载可以包括基于用户输入的输入和存储。如上所述,第一正常图像可以指用于学习虚拟缺陷图像生成模型的正常图像。如上所述,正常图像是指被确定为正常的实际产品图像。如上所述,缺陷图像是指被确定为有缺陷的实际产品图像。
140.如果添加了类型相同但详细特征不同的第一产品和第二产品,处理器12则可以通过程序16并基于用户输入来接收,对应第一产品的一个或多个第一正常图像和缺陷图像,对应第二产品的一个或多个第一正常图像和缺陷图像。
141.例如参考图11,示出了用于建立数据库的一画面a11示例。为了便于说明,在图11及以下将示例性描述在项目中仅利用一个版本的产品(例如,pcb基板)来学习虚拟缺陷图像生成模型的多个画面。
142.画面a11可以包括“pcb基板”作为产品的识别信息示例而被显示的产品区域114。如果登记或添加了除“pcb基板”之外的第二产品,产品区域114中的“pcb基板”下面就会显示第二产品的识别信息(例如,pcb基板2),从而可以显示产品列表。所述第二产品可以是例如详细特征或规格与第一产品不同的另一个pcb基板。
143.产品区域114可以包括图标110,所述图标110可以基于用户输入来加载对应于每个产品的多个图像(即,产品的一个或多个第一正常图像和缺陷图像)。例如,所述用于加载图像的图标110可以包括第一图标111、第二图标112以及第三图标113。处理器12可以基于对第一图标111的用户输入来分别加载图像,可以基于对第二图标112的用户输入从文件夹
加载图像,可以基于对第三图标113的用户输入,从项目(例如,另一个项目)中加载预先存储的图像。
144.加载的图像可以包括一个或多个第一正常图像以及一个或多个缺陷图像。优选地,为了学习质量,可以分别加载多个(例如,数十张及其以上)第一正常图像和缺陷图像。但是,所述多个缺陷图像的数量可能不足以直接用作缺陷检测模型e4的学习数据。
145.画面a11可以包括加载的多个图像的列表或图像列表区域115,所述图像列表区域115可以显示加载的多个图像的有关信息。尽管图11中未示出,但图像列表区域115可以显示加载的多个图像的列表。如果登记了除“pcb基板”之外的第二产品,图像列表区域115中则可以仅显示例如当前激活的产品的图像列表。当前激活的产品可以是指例如在产品区域114中选择的产品。
146.另一方面,图11的图像列表区域115中当前显示了对于加载的多个图像的标记有关信息,对标记的详细描述将在图12中进行。
147.例如,在画面a11中,加载到图像列表区域115的多个图像的列表中被选择(或被激活)的图像可以显示于图像区域118。显示于图像区域118的图像可以是正常图像,也可以是缺陷图像。
148.再次参考图8,在s2113中,处理器12可以通过开发模块21(例如,数据库模块211)接收并存储一律适用于一个或多个版本产品的缺陷类型有关信息。
149.例如参考图11,画面a11可以包括显示缺陷类型有关信息的缺陷类型区域116。如上所述,缺陷类型可以是指产品中可能发生的多个缺陷类型。缺陷类型可以基于用户输入来设置或生成。在本说明书中,任意信息(例如,缺陷类型、缺陷区域等)“生成”可以包括,处理器12响应通过用户界面(ui)生成相应信息的用户输入,从而生成并存储可识别的对应所述信息的识别信息。
150.基于用户输入生成缺陷类型后,处理器12可以存储缺陷类型有关信息。缺陷类型有关信息可以包括,例如,缺陷类型的识别编号、缺陷类型的识别名称以及缺陷类型的识别颜色119等,并且可以基于用户输入来输入。
151.参考缺陷类型区域116,识别为“pcb基板”的产品可以包括划痕(scratch)、凹痕(dent)、裂纹(crack)、烟灰(soot)的缺陷类型。但是,缺陷类型不限于此,并且可以根据产品的特性并基于用户输入来进行各种设置。例如,尽管在本实施例中未示出,但是例如弯曲(bent)、特定颜色的异物等也可以设置为缺陷类型。弯曲可以是可适用于诸如刀片之类的产品的缺陷类型。特定颜色的异物可以是例如因特定粘合剂或特定电解质的泄漏而引起的污渍或污染等。但不限于此。
152.在本项目中,如果除第一产品(识别信息:pcb基板)之外额外登记了第二产品,缺陷类型应一律适用于第一产品和第二产品。例如,第二产品(例如,pcb基板2)也应能发生划痕、凹痕、裂纹以及烟灰的缺陷。
153.根据一实施例,可以通过将缺陷类型根据形状和颜色等进行分类来提高学习性能。
154.另一方面,缺陷类型的“识别颜色”可以不同于“缺陷颜色”。“缺陷颜色”可以是指特定的异物在缺陷图像中实际显现的颜色。“识别颜色”可以基于“用户输入”来进行设置。缺陷类型的识别颜色119可以是用于,当随后通过生成模块22来生成虚拟缺陷图像时,显示
每个虚拟缺陷图像包括何种缺陷类型的标识。
155.例如,缺陷类型区域116可以包括缺陷类型编辑图标117。处理器12接收对缺陷类型编辑图标117的用户输入后可以显示(覆盖)编辑窗口(未示出),所述编辑窗口可以用于添加或删除缺陷类型,或更改多个缺陷类型的显示顺序,或修改缺陷类型的识别名称,或更改缺陷类型的识别颜色。即,用户可以通过缺陷类型编辑图标117编辑缺陷类型有关信息。
156.再次参考图8,在s2114中,处理器12可以通过开发模块21(例如,数据库模块211)来对加载的第一正常图像和缺陷图像进行正常或缺陷类型的标记。
157.例如参考图12,画面a12示出对图像区域118中显示的图像进行标记的多个画面示例。
158.图像区域118可以显示标记工具图标121。例如,用户可以对加载的多个图像分别进行标记,当图像区域118中显示的图像为正常图像时,可以利用标记工具图标121将其标记为正常。另外,图像区域118中显示的图像为缺陷图像时,用户可以选择图像具有的缺陷类型,并使用标记工具图标121在图像上标识(例如,利用输入装置14进行标识)相应缺陷类型发生的区域,从而进行标记。
159.例如,当图像区域118中显示的图像具有裂纹类型缺陷时,用户可以在缺陷类型区域116中选择相应的缺陷类型(即,裂纹),并利用标记工具图标121在显示的图像中直接绘制或着色裂纹缺陷发生的区域,即施加用户输入。此时,所述绘制的区域或着色的区域(即,发生缺陷的区域)可以以相应于缺陷类型识别颜色119的颜色来显现。例如,当裂纹缺陷类型的识别颜色119为红色时,如果用户
160.绘制或着色图像中发生裂纹缺陷的区域,其可能会显示为红色。但不限于此。
161.根据一实施例,一张缺陷图像也可以包括多个缺陷类型。标记信息区域122中可以显示,显示图像的标记信息(例如,缺陷类型有关信息或显示图像为正常图像的信息)。
162.例如,当在一张缺陷图像上进行了多个缺陷类型的标记时,标记信息区域122中可以显示与多个缺陷类型相应的所有信息。
163.例如,当执行标记操作时,处理器12可以对每个图像匹配标记信息(例如,缺陷类型有关信息,相应缺陷类型发生区域的有关信息,或显示图像为正常图像的信息)并进行存储。
164.如在图8至图12进行的描述,可以建立用于学习虚拟缺陷图像生成模型的数据库s211。建立数据库的多个画面(a10、a11、a12)中,显示数据库的图标103可以被突出显示。
165.图13为根据本发明一实施例的电子装置10对数据库进行预处理,以学习虚拟缺陷图像生成模型的操作流程示意图。图14至图18为根据本发明一实施例的进行预处理的多个画面示意图。
166.图13的操作可以是图6中s212的具体实施例,其可以由处理器12执行,并且可以通过程序16的开发模块21(例如,预处理模块212)来执行。
167.参考图13,在s2121中,处理器12可以通过开发模块21(例如,预处理模块212)在加载的一个或多个第一正常图像中设置代表图像。代表图像可以作为对齐多个图像s2122的标准,并且可以用于设置每个缺陷类型可能发生的区域s2123,即缺陷区域s2123。可以从多个正常图像(即,多个第一正常图像)中设置代表图像。
168.例如参考图14,示出了设置代表图像有关的画面a14。例如,可以利用存储的标记
信息,聚集多个正常图像(即,标记为正常的图像)后显示于图像列表区域115。基于从所述正常图像列表中选择一个正常图像的用户输入,可以在图像区域118中显示选择的正常图像。例如,基于对代表图像设置图标141的用户输入,显示于图像区域118的正常图像(即,test_good_008.png)可以被设置为代表图像并存储。
169.再次参考图13,在s2122中,处理器12可以通过开发模块21(例如,预处理模块212)以所述设置的代表图像为准,对齐(align)加载和标记的多个第一正常图像和缺陷图像。例如,可以对齐图像列表区域115中列出的多个图像。
170.根据一实施例,对齐(alignment)可以用三种类型中的一种来执行。三种类型包括不对齐(none)型、转换(trans)型以及仿射(affine)型。不对齐型是不执行对齐的选项。转换型是通过图像的平移来进行对齐的选项。仿射型是通过将图像旋转、调整大小以及平移来执行对齐的选项。
171.例如参考图14,画面a14可以包括对齐选项区域142。对齐选项区域142中可以显示用于进行不对齐型的不对齐图标143,用于进行转换型对齐的转换图标144,以及用于进行仿射型对齐的仿射图标145。
172.当处理器12接收到对不对齐图标143的用户输入时,可以对标记的多个图像不进行对齐的情况下进入下一步骤。例如,当所有标记的多个图像都很好地对齐时,用户可以选择不对齐图标143。
173.参考图15中的(a),当选择了对齐选项区域142中的转换图标144时,可以在代表图像上显示作为对齐标准的零件或零件的位置信息。优选地,零件(或零件的位置信息)的数量可以设置为三个。但不限于此。例如,当选择了对齐选项区域142中的转换图标144时,可以通过添加键151和选择键152来选择零件(或零件的位置),并且可以通过删除键153来删除对零件的选择。例如,可以如图16中的长短交替虚线所示般选择零件(或零件的位置)。
174.当以转换型进行对齐时,处理器12可以从多个图像中识别出零件(或零件的位置信息),并根据识别出的零件的位置信息将多个图像对应于代表图像的配置来平移,从而进行对齐。当所有图像的尺寸相同时,可以适用转换型。
175.参考图15中的(b),当选择了对齐选项区域142中的仿射图标145时,可以在代表图像上设置产品区域。例如,当选择了对齐选项区域142中的仿射图标145时,可以通过关注区域设置键154将产品占据的区域设置为关注区域(roi,region of interest)。例如,可以如图16中的长短交替虚线所示般选择产品占据的区域,即关注区域(roi)。
176.在以仿射型进行对齐时,处理器12可以对多个图像中的至少一部分进行变形,以使分别显示在所述多个图像中的产品占据的区域具有与所述关注区域(roi)相同的形状。
177.参考图14,当结束对齐选项区域142中关于对齐选项的选择时,处理器12可以基于对对齐图标146的用户输入,对相应产品的所有已标记的多个图像进行对齐。
178.当多个产品添加到本项目中时,处理器12可以基于用户输入,对每个产品执行所述对齐过程。对每个产品可以适用不同的对齐选项。
179.处理器12可以通过程序16来对未正确进行对齐的图像加以另外的标识,并且可以基于用户输入来删除所述未正确进行对齐的图像。
180.另一方面,执行预处理的多个画面(a14、a17、a18)中,显示预处理的图标147可以被突出显示。
181.再次参考图13,在s2123中,处理器12可以通过开发模块21(例如,预处理模块212)接收和存储每个缺陷类型在所述设置的代表图像上可能发生的缺陷区域有关信息。
182.例如参考图17,处理器12可以通过画面a17接收在所述设置的代表图像171上设置缺陷区域的用户输入。例如,在设置缺陷区域的步骤中,图像区域118可以显示多个缺陷区域设置图标172,其用于在代表图像171上设置缺陷区域。
183.例如,用户在缺陷类型区域116中选择任意的缺陷类型后,可以在代表图像171上利用多个缺陷区域设置图标172来标识相应的缺陷类型可能发生的区域。多个缺陷区域设置图标172允许用户以预定的一定形状(例如,直线、四角形边缘、圆形边缘、四角形区域(area)、圆形区域)来标识缺陷区域。
184.缺陷区域可以是指对应于缺陷类型的缺陷可能发生的区域。缺陷区域不同于为进行标记而标识的发生缺陷的区域。进行标记的步骤中,在每个缺陷图像上标识每个缺陷发生的区域。但是,标识缺陷区域可以是将每个缺陷类型可能发生的区域分别标识在代表图像上。
185.例如,在矩形产品(例如,pcb板)的整个区域可能发生凹痕(dent)缺陷时,用户可以通过程序16的用户界面(ui)执行如下用户输入。用户在缺陷类型区域116中选择凹痕缺陷类型后,在多个缺陷区域设置图标172中选择可以绘制矩形区域的一个图标,就可以对代表图像171中可能发生凹痕缺陷的整个产品区域(即,矩形区域)绘制缺陷区域。在代表图像上绘制的缺陷区域,可以用相应缺陷类型(凹痕)的识别颜色(例如,黄色)来绘制。
186.再例如参考图18的画面a18,当产品(例如,pcb基板)的边缘处可能发生裂纹(crack)缺陷以及产品边缘处的边界为直线时,用户可以通过程序16的用户界面(ui)执行如下用户输入。
187.用户在缺陷类型区域116中选择裂纹缺陷类型后,在多个缺陷区域设置图标172中选择可以绘制直线的一个图标,就可以在代表图像171中可能发生裂纹缺陷的pcb基板的边缘处(即,直线区域)绘制缺陷区域。如图所示,可以对一个缺陷类型(例如,裂纹)设置多个缺陷区域。在代表图像上绘制的缺陷区域,可以用相应缺陷类型(例如,裂纹)的识别颜色(例如,红色)来绘制。
188.再次参考图13,在s2124中,处理器12可以通过开发模块21(例如,训练模块213)并利用对齐的一个或多个第一正常图像和缺陷图像、标记有关信息、缺陷区域有关信息,学习虚拟缺陷图像生成模型。s2124可以是与图6中s213相应的操作。
189.例如参考图19,示出了用于进行学习的画面a19。可以通过画面a19输入各种学习参数。
190.参考画面a19,根据一实施例,学习可以由前阶段(pre

stage)和主阶段(main stage)两个步骤构成。前阶段显示在开始学习之前执行必要预处理任务的迭代,并且可以设置重复次数。主阶段的学习重复次数也可以基于用户输入来设置。
191.每当学习以可视化间隔(visualization interval)次数重复时,就可以确认已学习的模型所生成的样品图像。所述可视化间隔次数也可以由用户来输入。
192.根据本发明的一实施例,可以在训练画面a19中显示的产品区域191,选择用于学习的至少一个产品。
193.根据本功能,对多个版本的多个产品(例如,第一产品、第二产品等)一并执行数据
库收集s211(参考图6)和预处理s212后,在学习步骤s213可以从多个版本的多个产品中选择用于学习的多个产品,逐步学习(或生成)多个模型。根据本功能,也可以从所述多个模型中选择性能最好的模型,并将其用作虚拟缺陷图像生成模型。
194.同样地,可以在训练画面a19中显示的缺陷类型区域192,选择用于学习的至少一个缺陷类型。可以根据所述缺陷类型的选择,学习各种版本的模型。
195.图20为根据本发明一实施例的用于生成虚拟缺陷图像的电子装置10的操作流程示意图。图20的操作可以由处理器12通过程序16来执行。
196.参考图20,在s21中,处理器12可以通过程序16(例如:开发模块21)并至少基于第一正常图像、缺陷图像以及用户输入来学习虚拟缺陷图像生成模型。这与上述在图5中的s21、图6及其以下附图中描述的内容相符。
197.在s21中,处理器12通过程序16(例如,生成模块22)并基于用户输入,既可以以自动模式生成虚拟缺陷图像s221,也可以以手动模式生成虚拟缺陷图像s222。例如,自动模式生成s221是指,利用第二正常图像和预设缺陷区域有关信息,并通过虚拟缺陷图像生成模型来生成虚拟缺陷图像。例如,手动模式生成s222是指,利用第二正常图像以及基于用户直接绘制将要生成缺陷的区域的输入的手动区域信息,并通过所述同一虚拟缺陷图像生成模型来生成虚拟缺陷图像。在图4中对此进行了描述,并且在以下附图中也将进行详细描述。
198.在s23中,处理器12可以通过程序16(例如,生成模块22)将生成的虚拟缺陷图像存储到存储器15中。存储的虚拟缺陷图像可以用作例如学习数据,以学习缺陷检测模型。
199.另一方面,以下将详细描述自动模式生成s221和手动模式生成s222的操作。
200.图21至图27为根据本发明一实施例的用于执行自动模式生成的多个画面的示意图。
201.首先,为了利用在s21中生成并存储的虚拟缺陷图像生成模型来生成虚拟缺陷图像,处理器12可以接收对图7中画面a7的生成器图标74的用户输入。基于接收对生成器图标74的用户输入,处理器12可以进入生成虚拟缺陷图像的过程s2。
202.此后,可以基于选择自动模式的一定的用户输入来显示图21的画面a21。画面a21可以显示,在相应项目中学习并存储的各种虚拟缺陷图像生成模型的列表219。在虚拟缺陷图像生成模型的列表219中可以选择用于生成虚拟缺陷图像的模型。
203.在产品区域218可以显示用于学习所述选择模型的一个或多个版本的多个产品的列表。在产品区域218中显示的一个或多个版本的多个产品中,可以选择用于生成虚拟缺陷图像的产品。
204.如果对产品区域218中一定的图标(加载新产品)例如,处理器12可以基于对所述图标的用户输入,显示(例如,覆盖)用于登记(或添加)新产品的窗口(未示出)。
205.例如,即使仅将第一产品的图像用于学习虚拟缺陷图像生成模型,也可以在生成步骤s2中仅利用与第一产品类型相同但详细特征(例如,版本或规格)不同的第二产品的第二正常图像,并通过所述学习的虚拟缺陷图像生成模型来生成第二产品的虚拟缺陷图像。
206.基于用户的选择,与所选的虚拟缺陷图像生成模型以及所选的产品有关的信息可以加载于程序16(例如:生成模块22)。
207.此后参考图22,作为虚拟缺陷图像生成基础且对应于所述所选产品的多个模板图像,可以加载于模板图像区域229。模板图像是所选产品的正常图像,并且可以被称为上述
描述中的第二正常图像。如图22,模板图像可以是一个,但也可以加载多个模板图像。例如,为了基于模板图像而生成的虚拟缺陷图像的多样性,可以使用多个模板图像。
208.为了生成虚拟缺陷图像,当加载多个模板图像(即,多个第二正常图像)时,有必要对齐多个模板图像。如果用于学习的产品被选择(或被加载),在开发模块21的预处理过程中设置的对齐信息就可以原样适用。
209.另一方面,当加载的是未用于学习的新产品时,可能需要在本步骤(s221,自动模式生成步骤)重新执行一个或多个模板图像的代表图像设置以及所述多个模板图像的对齐。例如,可以通过对齐选项区域228,将多个模板图像对应于代表图像(即,代表模板图像)的配置来进行对齐。对齐方法可以与图14至图16中描述的对齐方法相符。因此,不进行描述。
210.此后参考图23,为自动模式生成,可能通过画面a23需要每个缺陷类型可能发生的区域,即缺陷区域。即,可能需要每个缺陷类型的缺陷区域信息。如果用于学习的产品被选择(或被加载),在开发模块21的预处理过程中设置的缺陷区域信息就可以原样适用。
211.另一方面,当加载的是未用于学习的新产品时,可能需要在本步骤(s221,自动模式生成步骤)重新对一个或多个模板图像的代表图像设置缺陷区域信息。例如,用户可以在缺陷类型区域239中选择缺陷类型后,利用多个缺陷区域设置图标238,设置或标识每个缺陷类型可能发生的缺陷区域。
212.另一方面,在本步骤中可以仅设置,可以与学习模型的过程中设置的缺陷区域相互作用的缺陷区域。例如,作为缺陷区域,直线和四角形边缘可以彼此相互作用。再例如,作为缺陷区域,四角形区域(area)和圆形区域可以彼此相互作用。例如,如果在学习过程中(即,开发步骤)中将四角形区域设置为特定缺陷类型的特定区域,在本步骤(即,自动模式生成步骤)中仅可以将四角形区域或圆形区域设置为所述缺陷类型的缺陷区域。
213.另一方面,设置缺陷区域可以是用于自动模式生成的必要过程。在自动模式下,生成模块22可以在如上设置的缺陷区域范围内自由或自动生成虚拟缺陷草图,并且可以将虚拟缺陷草图重叠或合成到模板图像上。缺陷区域的设置方法可以与图17至图18中描述的缺陷区域设置方法相符,因此不进行详细描述。
214.此后,可以通过图24中画面a24的生成键249,以自动模式生成虚拟缺陷图像。以自动模式生成虚拟缺陷图像的过程可以与图4中描述的自动模式生成过程相符,因此进行简单描述并略过详细描述。
215.在自动模式下,处理器12可以利用所述设置的缺陷区域信息和虚拟缺陷图像生成模型来生成虚拟缺陷图像s221。例如,处理器12可以利用所述设置的缺陷区域信息和虚拟缺陷图像生成模型来生成虚拟缺陷草图vds。例如,虚拟缺陷草图vds可以是为了使任一缺陷类型自由地配置于其可能发生的缺陷区域上而生成的草图。虚拟缺陷草图vds可以包括例如颜色信息、形状信息以及配置(位置)信息(例如,像素信息)。此后,处理器12可以通过将所述虚拟缺陷草图重叠或合成到加载于模板图像区域229中的第二正常图像(即,模板图像),来生成虚拟缺陷图像。
216.处理器12可以基于接收对画面a24中生成键249的用户输入,显示图25的画面a25。处理器12可以通过第一输入栏251接收将要生成的虚拟缺陷图像的数量。处理器12可以通过第二输入栏252接收将在每张图像上生成的缺陷最大数量。处理器12可以接收每个缺陷
类型将要生成的权重(weight)。处理器12可以通过滑块253接收将要生成的每个缺陷类型的缺陷最小尺寸。处理器12可以在接收到对生成键254的用户输入后,开始生成虚拟缺陷图像。
217.之后生成的多个虚拟缺陷图像可以显示于图26的画面a26。画面a26的生成图像列表区域261可以显示生成的多个虚拟缺陷图像的列表。当点击显示于生成图像列表区域261的一个虚拟缺陷图像时,可以在图像区域262显示相应的虚拟缺陷图像。在显示的虚拟缺陷图像中可以显示细边框,以指示生成的缺陷(例如,裂纹)位置。细边框可以以例如生成的缺陷类型(例如,裂纹)的识别颜色(例如,红色)来显示。
218.图27为示出以自动模式生成的多个虚拟缺陷图像vdi的示意图。左上图可以表现烟灰(soot),右上图可以表现划痕(scratch),左下图可以表现凹痕(dent),右下图可以表现裂纹(crack)。
219.再参考图26,用户可以利用例如多个虚拟缺陷编辑图标263来删除生成的虚拟缺陷(即,虚拟缺陷草图vds1)。根据用户输入,可以在一个虚拟缺陷图像中生成多个虚拟缺陷,并且用户可以利用多个虚拟缺陷编辑图标263,仅删除所要删除的虚拟缺陷。
220.另外,用户可以从显示于生成图像列表区域261的多个生成的虚拟缺陷图像中,直接删除一个虚拟缺陷。
221.处理器12可以基于接收对导出键264的用户输入,将生成(以及编辑)的多个虚拟缺陷图像存储到指定的路径中。
222.以下,将详细描述关于手动模式生成s222的操作。图28至图30为根据本发明一实施例的用于执行手动模式的多个画面示意图。
223.参考图28,可以通过画面a28的模板图像区域281,加载一个或多个第二正常图像(即,模板图像),以产生缺陷。图像区域282可以显示,从模板图像区域281中列出的多个第二正常图像中选择的第二正常图像。
224.另一方面,画面a28可以显示缺陷类型区域283,所述缺陷类型区域283显示与当前加载的模型(即,虚拟缺陷图像生成模型)有关的已存储的多个缺陷类型。
225.手动模式下,处理器12可以基于用户直接在第二正常图像上绘制(即,绘制草图)缺陷发生区域输入的手动区域信息,在所述绘制的手动区域上生成缺陷类型。
226.例如,用户可以从包括在缺陷类型区域283中的缺陷类型中选择要生成的缺陷类型,并使用缺陷区域草图图标284,在显示的图像(即,第二正常图像或模板图像)上直接绘制相应缺陷类型的形状草图。此后,处理器12可以通过将对应于所述草图形状的虚拟缺陷插入到模板图像中,来生成虚拟缺陷图像。图4中对此进行了描述,并且也可能与如上所述的进行标记的操作相似。
227.通过所述手动模式生成操作,可以生成精致或形状复杂的虚拟缺陷。
228.另一方面,处理器12可以基于对生成建285的用户输入,显示图29的画面a29。如果选择了对应于“在每个模板图像中生成所有手动标记”的按键291,就可以按照用户绘制的每个缺陷类型的缺陷区域来生成缺陷。如果解除对所述按键291的选择,就可以输入要在一个模板图像上生成的缺陷最大数量。此时,如果在一个模板图像上绘制了8个缺陷并将所述最大缺陷数量设置为2,虚拟缺陷图像生成模型就可以自动生成多个虚拟缺陷图像,以使每个虚拟缺陷图像分别具有1~2个缺陷。
229.根据一实施例,可以通过显示于画面a29的一个区域292,从适用了用户绘制草图的模板图像中选择要生成为虚拟缺陷图像的模板图像。此后,可以通过对生成键293的用户输入,以手动模式生成多个虚拟缺陷图像。
230.之后生成的多个虚拟缺陷图像可以显示于图30的画面a30。在屏幕a30的生成图像列表区域301,可以显示生成的多个虚拟缺陷图像的列表。当点击显示于生成图像列表区域301的一个虚拟缺陷图像时,可以在图像区域302显示相应的虚拟缺陷图像。在显示的虚拟缺陷图像中可以显示细边框,以指示生成的缺陷位置。细边框可以以例如生成的缺陷类型的识别颜色来显示。
231.图31为示出以手动模式生成的多个虚拟缺陷图像的示意图。
232.再参考图30,用户可以利用例如多个虚拟缺陷编辑图标303来删除生成的虚拟缺陷(即,虚拟缺陷草图vds2)。可以在一个虚拟缺陷图像上生成多个虚拟缺陷草图,并且用户可以利用多个虚拟缺陷编辑图标303,仅删除所要删除的虚拟缺陷。
233.另外,用户也可以从显示于生成图像列表区域301的一个或多个生成的虚拟缺陷图像中,直接删除一个虚拟缺陷。
234.处理器12可以基于接收对导出键304的用户输入,将生成(以及编辑)的多个虚拟缺陷图像存储到指定的路径中。
235.图32至图34为示出根据本发明实施例的在生成虚拟缺陷图像时,自动模式生成更有效时与手动模式生成更有效时的示意图。
236.参考图32,示出了任意产品320(例如,电池的顶部)的示意图。
237.图33示出了对于所述产品320,自动模式生成更有利或其可执行的示例。第一示例331示出了对所述产品320中四方形形状的第一部分321,可以设置四角形区域(area)缺陷区域的示例。第二示例332示出了对所述产品320中圆形形状的第二部分322,可以设置圆形区域缺陷区域的示例。
238.例如,在所述第一部分321和第二部分322的区域内,可以发生划痕或异物(或有色异物)的缺陷类型。因此,用户例如可以选择(或激活)将划痕或异物作为缺陷类型并利用预先提供的图标,在第一部分321上标出四角形区域的缺陷区域,在第二部分322上标出圆形区域的缺陷区域。
239.第三示例333示出了对所述产品320的第三部分323,可以设置直线缺陷区域的示例。第三部分323可以是例如第一部分321边缘的一部分。第四示例334示出了对所述产品320中圆形形状的第二部分322,可以设置圆形边缘缺陷区域的示例。
240.例如,在所述第三部分324和第二部分322的边缘处,可能发生粘合剂或特定电解质的泄漏,或由所述泄漏引起的污染等。因此,在所述第三部分323和第二部分322的边缘处,可能出现例如“有色异物”的缺陷类型。因此,用户例如可以选择(或激活)将有色异物(例如,红色异物、黑色异物、蓝色异物等)作为缺陷类型并利用预先提供的图标,在第三部分323上标出直线的缺陷区域,在第二部分322的边缘处标出圆形边缘的缺陷区域。
241.图34示出了对于所述产品320,手动模式生成更有利或其可执行的示例。例如,如第五部分325,在大多数情况下产品320可以包括复杂的形状。此时,可以在生成步骤s2中选择手动模式,并选择(或激活)可能在所述复杂的形状发生的缺陷类型,从而手动绘制可能在所述复杂的形状上发生的缺陷区域。
242.例如,在所述第五部分325可能发生粘合剂或电解质的泄漏,或由所述泄漏引起的污染等。因此,在所述第五部分325可能出现例如“有色异物”的缺陷类型。因此,用户例如可以选择(或激活)将有色异物(例如,红色异物、黑色异物、蓝色异物等)作为缺陷类型并利用预先提供的草图图标,按照第五部分325绘制要生成的缺陷形状草图,从而手动设置缺陷区域。
243.在本发明的各种实施例中,通过均使用自动模式生成s221和手动模式生成s222,可以根据需要生成各种类型的虚拟缺陷图像。因此,可以利用生成的各种虚拟缺陷图像来提高学习缺陷检测模型s3的性能。
244.另一方面,本说明书中的术语“模块”可以包括由硬件、软件或固件组成的单元,并且可以与例如逻辑、逻辑块或电路等术语替换使用。模块可以是一体构成的零件或执行一个或多个功能的最小单元或其一部分。例如,模块可以由专用集成电路(asic,application

specific integrated circuit)构成。
245.本说明书的多个实施例可以通过软件(例如,程序16)实现,所述软件包括存储在机器(machine)(例如,计算机)可读存储介质(例如存储器15,再例如内存储器或外存储器)中的指令。机器是能够从存储介质调用存储的指令并按照调用的指令来进行操作的装置,其可以包括根据公开的多个实施例的电子装置(例如,电子装置10)。当所述指令由处理器(例如,处理器12)执行时,可以直接由处理器或在所述处理器的控制下利用其它组件来执行所述指令相应的功能。指令可以包括由编译器或解释器生成或执行的编码。可以以非暂时性(non

transitory)存储介质的形式来提供机器可读存储介质。其中,“非暂时性”仅意味着存储介质不包含信号(signal)且其真实存在(tangible),并不区分数据是否是半永久性还是临时性存储到储存介质。
246.根据一实施例,根据本说明书公开的多个实施例的方法可以通过包括在计算机程序产品中来提供。计算机程序产品可以作为商品在买卖双方之间进行交易。计算机程序产品可以通过机器可读存储介质的形式或应用商店(例如,play store
tm
),在线上发布。以线上发布为例,计算机程序产品的至少一部分能够至少暂时存储或临时生成在制造商的服务器、应用商店的服务器或中继服务器的存储器等存储介质中。
247.尽管已经参考附图中所示的一实施例描述了本发明,但这是示例性的,并且所属领域的技术人员都会理解,在此基础上可以进行各种变形和实施例的变形。因此,本发明的实际技术保护范围应由所附权利要求书的技术范围来确定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜