模型训练用的图像数据生成方法、系统、设备和存储介质
文献发布时间:2023-06-19 09:40:06
技术领域
本公开涉及图像处理技术领域,特别涉及一种模型训练用的图像数据生成方法、系统、设备和存储介质。
背景技术
在人工智能技术发展过程中,图像的检测和识别始终是人工智能的重要发展方向。
在对用于图像检测或识别的模型进行训练时,必须用到的就是图像数据。模型训练的好坏,往往与用于训练的图像数据的数量有关系。例如,训练一个模型去识别某种饮料瓶时,如果能够得到足够数量的关于饮料瓶的图像,那么训练出来的模型往往具有较高的识别准确率。相反,关于饮料瓶的图像的数量较少,那么训练出来的模型的识别准确率就会偏低。
在实际的模型训练过程中,模型训练用的图像数据,常常是通过大量的拍摄人员在实地进行拍摄获取。随着时间的延长和/或人数的增加,图像数量便能够累积至足够多,从而满足模型训练的数量要求。
发明内容
本公开的一方面提供了一种模型训练用的图像数据生成方法。所述方法包括如下步骤:
获取包含目标产品的产品图像;
获取在实际场景中拍摄的图像作为效果图像;
将所述产品图像与所述效果图像进行融合处理,以得到所述效果图像中的产品替换为所述产品图像中的所述目标产品、所述效果图像中的产品以外的部分与所述目标产品共同显示的融合图像;
将所述融合图像、所述产品图像以及在实际场景中拍摄的含有目标产品的图像放在一起形成图像集,以作为所述模型训练用的图像数据。
在一实施例中,
所述获取包含目标产品的产品图像的步骤包括:
获取目标产品;
以所述目标产品为中心,至少在竖直方向、水平方向和位于所述竖直方向与所述水平方向之间的倾斜方向布设拍摄位置;
使所述拍摄位置或所述目标产品围绕一穿过所述目标产品的竖直轴转动;
当所述拍摄位置或所述目标产品每次转动的角度达到预定值时,便在所述拍摄位置拍摄所述目标产品,以得到包含所述目标产品的所述产品图像。
在一实施例中,所述拍摄位置或所述目标产品围绕所述竖直轴转动的累计度数至少为360°。
在一实施例中,所述预定值至少为5°。
在一实施例中,所述将产品图像与所述效果图像进行融合处理的步骤包括:
去除所述产品图像中除所述目标产品以外的图像内容,以得到产品图像层;
截取所述效果图像中除产品以外的图像内容,以得到效果层;
将所述产品图像层中的所述目标产品与所述效果层共同显示,并使所述产品图像层中的所述目标产品显示在所述效果层中的产品位置。
在一实施例中,利用Gan网络实现所述产品图像层中的所述目标产品与所述效果层共同显示,并实现所述产品图像层中的所述目标产品显示在所述效果层中的产品位置。
本公开的另一方面是提供了一种模型训练用的图像数据生成系统。所述模型训练用的图像数据生成系统用于实现如前所述的模型训练用的图像数据生成方法的步骤。所述模型训练用的图像数据生成系统包括:
图像获取模块,用于获取包含目标产品的产品图像;以及
用于获取在实际场景中拍摄的图像作为效果图像;
融合处理模块,用于将所述产品图像与所述效果图形进行融合处理,以得到所述效果图像中的产品替换为所述产品图像中的所述目标产品、所述效果图像中的产品以外的部分与所述目标产品共同显示的融合图像;
图像集形成模块,用于将所述融合图像、所述产品图像以及在实际场景中拍摄的含有目标产品的图像放在一起形成图像集,以作为所述用于模型训练用的图像数据。
本公开的再一方面还提供了一种模型训练用的图像数据生成设备。所述模型训练用的图像数据生成设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前所述的模型训练用的图像数据生成方法的步骤。
在一实施例中,所述设备还包括一旋转底座,用于承载所述目标产品;并且用于当需要所述目标产品转动时,实现所述目标产品的转动。
本公开的最后一方面则是提供了一种计算机可读存储介质。所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的模型训练用的图像数据生成方法的步骤。
在本公开通过上述实施例实施的模型训练用的图像数据生成方法、系统、设备和计算机存储介质中,通过改变目标产品的图像的获取方式,以及利用已有的带有实际场景图像,拓宽了现有技术中必须去实地才能获得图像数据的途径。由于产品图像和效果图像都变得容易获得,因此大大减少了需要投入的人力物力,提高了图像数据的制作速度,很好地满足了新上市产品要及时进行图像训练的需求。
另一方面,本公开还通过产品图像获取方案,简化了目标产品的图像的获取方式,提高了图像获取的速度,进而提高了模型训练用的图像数据的制作效率。
最后,本公开还通过优选的融合处理方案,利用Gan网络实现效果图像和产品图像的融合,大大提高了图像融合的精度,进而使融合图像更接近实际拍摄的效果。
附图说明
附图示例性地示出了实施例并且构成说明书地一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于示例的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1是本公开一实施例所展示的图像数据生成方法的步骤流程图;
图2是本公开一实施例提供的获取包含目标产品的产品图像方法的步骤流程图;
图3是本公开一实施例提供的拍摄位置和目标产品布设示意图;
图4是本公开一实施例提供的融合处理的方法步骤流程图;
图5是本公开一实施例提供的模型训练用的图像数据生成系统模块连接示意图;
图6是本公开一实施例提供的模型训练用的图像数据生成设备的结构示意图;
图7是本公开一实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
通过上述说明可知,现有技术中,模型训练用的图像数据,常常是通过大量的图像拍摄人员在实地进行拍摄获取的。
通过人工拍摄获取的图片,能够捕获目标物体在实际光线和实际环境中的视觉状态,从而有利于模型训练精度的提高,使得训练后的模型能够准确地检测或识别出在实际光线和实际环境下的目标物体。
现如今,在零售领域,也越来越多地应用到人工智能技术。例如商超货架或冷柜中的包装食品和饮料等应用图像检测和识别手段来辅助工作人员更快速了解货架或冷柜上的包装食品和饮料的售卖情况,以使工作人员可以根据了解到的售卖情况,及时跟进管理,以更好地满足消费者需求。
然而,现有技术中获取模型训练用的图像,都需要人工进行拍摄获取。这不免制约了图像的获取速度。本领域技术人员容易知道,模型训练用的图像数据往往包含数千甚至数万张图片。如果始终采用人工进行实地拍摄的方式来获取图像,那无疑越来越无法满足现代高端技术的发展要求。
另外,对于新上市的或者比较冷门的饮料,短时间内很难获得其投放场景、光线变换、拍摄位置等信息足够丰富的图像,也因此,模型训练的持续进行受到图像数量和获取速度的严重制约。可见,现有技术中,人工实地拍摄图片的方式,不仅需要投入较多人力物力,而且整体效率较低,无法跟上新产品上市的速度。为了改变这种只能实地拍摄图片后再形成模型训练用的图像数据的方式,减少人力和物力的投入,高效获取目标产品的图像,本公开提供了一种模型训练用图像数据生成方法,此外还提供了用于记载和执行模型训练用图像数据生成方法中各个操作步骤的系统、设备和存储介质。
以下结合附图和具体实施例对本公开提出的模型训练用的图像数据生成方法、系统、设备及存储介质作进一步详细说明。根据权利要求书和下面说明,本公开的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本公开实施例的目的。
应当理解的内容是,说明书中的用辞仅用于描述特定的实施例,并不旨在限定本公开。说明书使用的所有术语(包括技术术语和科学术语)除非另有定义,均具有本领域技术人员通常理解的含义。为简明和/或清楚起见,公知的功能或结构不再详细说明。
关于模型训练用的图像数据生成方法的示例说明
请参阅图1,其展示了本公开一实施例中的图像数据生成方法的步骤流程图。
在这个实施例的步骤S001中,获取包含目标产品的产品图像。
由于现有技术中符合模型训练要求通常都是去实地拍摄的,因此用于模型训练的图片不仅仅只包含目标产品,还包含了目标产品所在的周围环境,以及由于光照产生的明亮程度、相机拍摄的角度等实际场景内容。也就是说仅仅包含目标产品,而不包含实际场景效果等内容的图像是不能直接用于模型训练的。本领域技术人员容易理解,如果采用这样的图像训练出的模型,其精确度往往较差。可见,这正是需要拍摄人员去实地拍照的客观原因。而步骤S001中并未对图像中是否具有实际场景(例如零售产品摆放的货架、光照效果等)做严格要求。也就是说,只要具备目标产品便可以采用本公开提供的方法最终生成模型训练用的图像数据(符合模型训练的要求)。
如果不再要求产品图像必须具备实际场景效果,也就不必再去实地拍摄,因此,需要训练模型的工作人员可以在只有目标产品的条件下,完成对目标产品的拍摄工作,具体的拍摄地点也不再限制在摆放目标产品的实地(例如超市、商场、便利店)。因此本公开提供的方法,其拍摄地点更为灵活。工作人员可以在便于活动的地点进行拍摄,也可以在单独的工作室进行拍摄。
在步骤S002中,获取在实际场景中拍摄的图像作为效果图像。
对于步骤S002来说,尽管步骤S002要求实际场景,然而这并不是说一定要求实际拍摄,步骤S002中仅仅需要实际场景,并不要求效果图像中一定具备目标产品。也就是说,只要具有实际场景的视觉效果,即便图像中具有其他产品也符合步骤S002的要求。因此,工作人员可以选择已有的实地拍摄图像作为效果图像,而不必再跑去实地进行拍摄。基于此,当需要获取某种新上市的产品的图像进行模型训练时,工作人员可以单独购买该产品就可以,而不必去多个实地进行拍摄带有该产品的图像。
在步骤S003中,将所述产品图像与所述效果图像进行融合处理,以得到所述效果图像中的产品(如有非目标产品存在)替换为所述产品图像中的所述目标产品、所述效果图像中的产品以外的部分与所述目标产品共同显示的融合图像。
在步骤S003中,通过将产品图像和效果图像的融合处理,得到融合图像。也就是说,将实际场景的视觉效果加载至目标产品上,使原本不具有实际场景的视觉效果的图像具有实际场景的视觉效果,这样便得到了具有实地拍摄效果的融合图像。
由于效果图像可以利用已有的图像,而产品图像可以对目标产品单独拍摄,因此大大节省了人力物力的投入,提高了模型训练用的图像数据的制作速度,进而可以快速满足新上市产品的需求。
步骤S004中,将所述融合图像、所述产品图像以及在实际场景中拍摄的含有目标产品的图像放在一起形成图像集,以作为所述模型训练用的图像数据。
通过步骤S004可知,用于模型训练用的图像数据,还包括了步骤S001中的产品图像,以及在实际场景中的拍摄的含有目标产品的图像。将实地拍摄的含有目标产品的图像加入到图像集中,可以更快满足模型训练用的图像数据的数量要求。当然,由于去实地拍摄存在一定难度,因此在精度满足要求的前提下,可以省略去实地拍摄的含有目标产品的图像,仅使用步骤S001中的产品图像和融合图像作为模型训练用的图像数据。
通过上述内容容易获知,本公开通过上述实施例实施的模型训练用的图像数据生成方法,通过改变目标产品的图像的获取方式,以及利用已有的带有实际场景的图像,拓宽了现有技术中必须去实地才能获得图像数据的途径。由于产品图像和效果图像都变得容易获得,因此大大减少了人力物力的投入,提高了图像数据的制作速度,很好地满足了新上市产品要及时进行图像训练的需求。
在本公开的一实施例中,还说明了关于“获取包含目标产品的产品图像”的优选实施方案。在图2中,展示了该实施例提供的获取包含目标产品的产品图像方法的步骤流程图。
在这个实施例的步骤S011中,获取目标产品。工作人员可以采用购买、租赁、借用等方式快速获得目标产品,大大提高了获取目标产品的速度。
在步骤S012中,以所述目标产品为中心,至少在竖直方向、水平方向和位于所述竖直方向与所述水平方向之间的倾斜方向布设拍摄位置。本实施例中一共布设了5个拍摄位置,如图3所示,分别在目标产品的上方、下方、水平方向、倾斜方向均设置了拍摄位置。通过多个拍摄位置对目标产品进行拍摄,能够更全面的获取目标产品的图像信息,有利于提高模型训练的精度。
在步骤S013中,使所述拍摄位置或所述目标产品围绕一穿过所述目标产品的竖直轴转动。
请继续参考图3,穿过目标产品的竖直轴A即为目标产品或拍摄位置的旋转中心。容易理解,不论是目标产品转动,还是拍摄位置转动,均能使目标产品与拍摄位置之间的相对位置发生变化,也能实现环绕目标产品进行拍摄,以获取更全面的目标产品的图像信息。
在步骤S014中,当所述拍摄位置或所述目标产品每次转动的角度达到预定值时,便在所述拍摄位置拍摄所述目标产品,以得到包含所述目标产品的所述产品图像。
为了获得目标产品更全面的信息,可以使拍摄位置与目标产品之间相对转动至少360°,即转动的累计度数至少为360°,这样便可以拍摄到目标产品的所有图像信息。当然,目标产品或拍摄位置每次转动的角度(转动角度达到预定值,拍摄完成后,便从新开始计算转动的角度)过小或过大也会影响最终获取的产品图像是否满足要求。因此,本实施例将预设值设定为5°-10°,即每次转动的角度≥5°,并≤10°,转动的总度数(累计)至少为360°,以保证最终获取的产品图像能够均匀覆盖目标产品,满足模型训练要求。
在本公开的一实施例中,还进一步说明了关于“融合处理”的具体实现方案。在图4中,展示了融合处理的方法步骤流程图。
在步骤S021中,去除所述产品图像中除所述目标产品以外的图像内容,以得到产品图像层。
在步骤S001中获取的产品图像,通常也是通过拍摄得到(实际上,也可以通过三维软件绘制等方式来获取),所以拍摄得到的产品图像中难以避免会存在其他内容(例如目标产品表面的反光、放置目标产品的置物台、其他不适合模型训练的成像物体)。所以需要对这些内容进行去除处理。至于去除处理,可以通过平面处理软件或其他一些适合的工具来实现。
在步骤S022中,截取所述效果图像中除产品以外的图像内容,以得到效果层。容易理解,效果图像中存在的其他产品可能并非目标产品,因此如果效果图像中存在其他产品的话,需要进行去除。与步骤S021同理,可以选择平面处理软件或其他一些适合的工具来完成去除操作。
在步骤S023中,将所述产品图像层中的所述目标产品与所述效果层共同显示,并使所述产品图像层中的所述目标产品显示在所述效果层中的产品位置。而这一步骤中,可以利用Gan(Generative Adversarial Networks,生成对抗网络)网络来实现。
关于模型训练用的图像数据生成系统的示例说明
本公开的一实施例中还提供了一种模型训练用的图像数据生成系统。在图5中,展示了本公开一实施例提供的模型训练用的图像数据生成系统模块连接示意图。该系统能够实现本公开中说明的模型训练用的图像数据生成方法。为了实现本公开说明的模型训练用的图像数据生成方法,该系统包括:
图像获取模块501,用于获取包含目标产品的产品图像;以及
用于获取在实际场景中拍摄的图像作为效果图像。
融合处理模块502,用于将所述产品图像与所述效果图形进行融合处理,以得到所述效果图像中的产品替换为所述产品图像中的所述目标产品、所述效果图像中的产品以外的部分与所述目标产品共同显示的融合图像。
图像集形成模块503,用于将所述融合图像、所述产品图像以及在实际场景中拍摄的含有目标产品的图像放在一起形成图像集,以作为所述用于模型训练用的图像数据。
关于模型训练用的图像数据生成设备的示例说明
本公开的一实施例中还提供了一种模型训练用的图像数据生成设备。所述图像数据生成设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现本公开中说明的模型训练用的图像数据生成方法的步骤。
另外,当在获取目标产品的产品图像时,本实施例中还提供了一旋转底座,用来放置目标产品,以便实现目标产品的转动。该旋转底座可以通过接受来自处理器的控制命令实现预定的转动变化。
值得说明的是,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
图6是本公开一实施例提供的模型训练用的图像数据生成设备的结构示意图。下面参照图6来详细描述根据本实施例中的实施方式实施的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本公开任何实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组建可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本实施例中上述图像数据生成方法部分中描述的根据本实施例中的实施步骤。例如,处理单元610可以执行如图1、图2、图3和图4中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取单元(RAM)和/或高速缓存存储单元,可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图像加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可以与一个或者多个使得用户与该电子设备600交互的设备通信,和/或与使得该电子设备能与一个或多个其他计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其他模块通信。应当明白,尽管图6中未示出,可以结合电子设备600使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
关于可读存储介质的示例说明
本公开的一个实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时能够实现上述公开中模型训练用的图像数据生成方法的步骤。尽管本实施例未详尽地列举其他具体的实施方式,但在一些可能的实施方式中,本公开说明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本公开中图像拼接方法部分中描述的根据本公开各种实施例中实施方式的步骤。
如上说明之内容,该实施例提供的计算机可读存储介质中存储的计算机程序被执行时,通过获取产品图像和效果图像,进而对产品图像和效果图像进行融合处理,最终实现生成图像数据的目的。
图7是本公开一实施例提供的计算机可读存储介质的结构示意图。如图7所示,其中描述了根据本公开的实施方式中用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。当然,依据本实施例产生的程序产品不限于此,在本公开中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如C语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,在本公开通过上述实施例实施的模型训练用的图像数据生成方法、系统、设备和计算机存储介质中,通过改变目标产品的图像的获取方式,以及利用已有的带有实际场景图像,拓宽了现有技术中必须去实地才能获得图像数据的途径。由于产品图像和效果图像都变得容易获得,因此大大减少了人力物力的投入,提高了图像数据的制作速度,很好地满足了新上市产品要及时进行图像训练的需求。
另一方面,本公开还通过产品图像获取方案,简化了目标产品的图像的获取方式,提高了图像获取的速度,进而提高了模型训练用的图像数据的制作效率。
最后,本公开还通过优选的融合处理方案,利用Gan网络实现效果图像和产品图像的融合,大大提高图像融合的精度,进而使融合图像更接近实际拍摄的效果。
上述描述仅是对本公开较佳实施例的描述,并非对本公开范围的任何限定,本公开领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
- 模型训练用的图像数据生成方法、系统、设备和存储介质
- 图像生成模型训练方法、图像生成方法、装置、设备及存储介质