技术领域
[0001] 本申请涉及数据标注技术领域,特别涉及图像标注方法、装置及图像标注系统。
相关背景技术
[0002] 在图像标注等应用场景中,标注方案通常通过标注算法模型,对图像进行自动标注。然而,自动标注方式存在无法精确定位图像内单个目标的位置。换言之,目前的标注方案的标注准确度有待提高。
具体实施方式
[0057] 为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请进一步详细说明。
[0058] 图1A示出了根据本申请一种实施例的图像标注系统的示意图。图1B示出了根据本申请一种实施例的图像标注系统的示意图。图1A及1B中的图像标注系统可以包括一个或多个标注客户端,例如图1示出了标注客户端111,112和113。在图1A中,图像标注系统还包括任务管理设备120、自动标注模块130和数据存储设备140。任务管理设备120,自动标注模块130和数据存储设备140各自例如可以是个人计算机、服务器设备或者服务器集群等具有数据处理能力的电子设备,本申请对此不做限制。标注客户端为个人计算机等电子设备。
[0059] 在图1B中,自动标注模块130可以是标注客户端中独立应用或者标注客户端的软件组件。
[0060] 其中,任务管理设备120可以生成标注任务,并将标注任务分发到标注客户端。标注任务指定待标注的图像。标注客户端可以根据用户选择采用人工标注方式或者自动标注方式生成对图像的标注结果。其中,自动标注方式为首先由用户在图像中选定感兴趣区域,然后通过自动标注模块130对感兴趣区域进行自动标注,并向标注客户端返回标注结果。自动标注模块130可以部署一种或者多种标注算法模型,并基于标注算法模型进行标注。例如,自动标注模块130可以基于无监督学习的标注算法模型进行自动标注。
[0061] 另外,任务管理设备120也可以生成复核任务,并将复核任务分发到标注客户端。复核任务可以指定待复核图像中的标注区域。标注客户端可以根据用户选择采用人工复核方式或者自动复核方式生成对待复核图像的复核结果。人工复核方式为由用户对标注区域进行审核,以便保持原标注区域或者调整原标注区域,得到经过复核的标注区域(即得到复核结果)。自动复核方式为通过自动标注模块130对标注区域进行自动标注,并返回标注结果。这样,标注客户端可以将返回的标注结果作为复核结果。
[0062] 任务管理设备120还可以将标注结果和复核结果存储到数据存储设备140。
[0063] 综上,图像标注系统可以根据用户选择,灵活地选择人工标注方式和自动标注方式进行图像标注,从而提高了图像标注的灵活性。特别是,在采用自动标注方式时,图像标注系统可以避免对图像的全部区域进行目标识别,能够对用户初步选定的部分区域(即感兴趣区域)进行自动标注,从而能够提高自动标注方式的效率和准确度。另外,任务管理设备120可以灵活地向标注客户端发送标注任务和复核任务,从而能够保证同一个图像的标注任务和复核任务可以由不同的标注客户端执行,从而提高任务执行效率。另外,图像标注系统可以通过自动标注模块130统一管理标注算法模型,从而提高了对标注算法模型进行管理的方便性。在本申请的可选实施例中,用户可以是在标注客户端上注册的用户账户。
[0064] 在一些实施例中,任务管理设备120用于向标注客户端发送标注任务。标注任务指定待标注的图像。
[0065] 标注客户端用于接收所述标注任务,获取所述待标注的图像。
[0066] 标注客户端获取用户在所述图像中选定的感兴趣区域;
[0067] 标注客户端接收用户对所述感兴趣区域的第一自动标注指示,向自动标注模块发送对所述图像中感兴趣区域的标注请求;
[0068] 自动标注模块接收所述标注请求,生成对所述感兴趣区域的第一标注结果,并向所述标注客户端发送所述第一标注结果;
[0069] 标注客户端接收来自所述自动标注模块的第一标注结果。图2A示出了根据本申请一些实施例的图像标注方法200的流程图。方法200例如可以应用于标注客户端。
[0070] 如图2A所示,在步骤S201中,获取待标注的图像。例如,标注客户端可以获取来自任务管理设备的标注任务。标注任务可以指定待标注的图像。这里,待标注的图像例如为一个图像帧或者多个图像帧。标注任务例如可以包括待标注的图像或者待标注的图像的标识。这样,步骤S201例如可以直接从标注任务中获取待标注的图像,或者根据待标注的图像的标识,从数据存储设备140或者其他存储图像的设备获取待标注的图像。
[0071] 在步骤S202中,获取用户在图像中选定的感兴趣区域。
[0072] 例如,图2B示出了根据本申请一个实施例的图像的示意图。如图2B所示,区域20例如为步骤S202确定的感兴趣区域。图2B示出的感兴趣区域包括一个框选区域,但不限于此,步骤S202中选定的感兴趣区域也可以包括两个或更多的区域。在步骤S203中,接收用户对感兴趣区域的第一自动标注指示,向自动标注模块发送对所述图像中感兴趣区域的标注请求。这样,自动标注模块可以避免对图像的全部区域进行标注,而是可以对图像中部分区域(即感兴趣区域)进行自动标识。这里,自动标注模块例如可以采用深度学习等方式训练的无监督的标注算法模型进行自动标注。自动标注模块可以是标注客户端中独立应用或者标注客户端的软件组件,也可以是独立于标注客户端的终端设备或者服务器设备。
[0073] 在一些实施例中,步骤S202获取用户在图像中部分重叠的图形对象中选定的感兴趣区域,感兴趣区域包含获取用户在图像中部分重叠的图形对象中选定的感兴趣区域。感兴趣区域包含完整的目标图形对象,且不包含完整的非目标图形对象。例如,图像包括的两个图形对象存在部分重叠。步骤S202选定的感兴趣区域包括一个完整的目标图形对象。这样,步骤S202可以排除感兴趣区域之外的非目标图形对象的干扰。在此基础上,步骤S203向自动标注模块发送标注请求后,感兴趣区域能够避免图像中感兴趣区域之外的其他区域对自动标注模块的干扰,使得自动标注模块能够更准确的输出标注结果。在一些实施例中,步骤S202中获取感兴趣区域并不需要获取对图形对象的精确的外接区域,而是获取能够包含目标图形对象的初选区域。初选区域的尺寸大于图形对象的外接区域。这样,步骤S202能够降低用户的操作难度和节省用户的操作时间。
[0074] 在步骤S204中,接收来自自动标注模块的对感兴趣区域的第一标注结果。例如,图2C示出了根据本申请一个实施例的在待标注图像中显示第一标注结果的示意图。第一标注结果包括区域30和40。
[0075] 综上,方法200可以根据用户的初步选择获取感兴趣区域,然后由自动标注模块感兴趣区域进行自动标注这里,方法200通过用户初步选择感兴趣区域,从而排除非感兴趣区域对自动标注模块的干扰,从而能够提高标注准确性。
[0076] 在一些实施例中,标注客户端也可以不执行步骤S203和S204。标注客户端可以将感兴趣区域作为图像的标注结果,并提交图像的标注结果。这样,根据本申请的图像标注方案可以根据用户选择,灵活地选择人工标注方式(即将感兴趣区域确定为标注结果的方式)和自动标注方式(将第一标注结果确定为标注结果)进行图像标注,从而提高了图像标注的灵活性。
[0077] 图3示出了根据本申请一些图像标注方法300的流程图。方法300例如可以应用于标注客户端。
[0078] 如图3所示,在步骤S301中,获取待标注的图像。
[0079] 在步骤S302中,获取用户在图像中选定的感兴趣区域。
[0080] 在步骤S303中,接收用户对所述感兴趣区域的第一自动标注指示,向自动标注模块发送对图像中感兴趣区域的标注请求。这样,自动标注模块可以避免对图像的全部区域进行标注,而是可以对图像中部分区域(即感兴趣区域)进行自动标识。
[0081] 在步骤S304中,接收来自自动标注模块的对感兴趣区域的第一标注结果。在一些实施例中,标注客户端接收到第一标注结果后,可以用第一标注结果替换掉感兴趣区域。在一些实施例中,标注客户端接收到第一标注结果后,可以保留第一标注结果和感兴趣区域。在步骤S305中,将第一标注结果作为图像的标注结果,并提交图像的标注结果[0082] 综上,方法300可以根据用户的初步选择获取感兴趣区域,然后由自动标注模块感兴趣区域进行自动标注。这里,方法300通过用户初步选择感兴趣区域,从而排除非感兴趣区域对自动标注模块的干扰,从而能够提高标注准确性。另外,方法300能够将自动标注结果提交到任务管理设备等管理标注结果的设备。
[0083] 图4示出了根据本申请一些图像标注方法400的流程图。方法400例如可以应用于标注客户端。
[0084] 如图4所示,在步骤S401中,获取待标注的图像。
[0085] 在步骤S402中,获取用户在图像中选定的感兴趣区域。
[0086] 在步骤S403中,接收用户对所述感兴趣区域的第一自动标注指示,向自动标注模块发送对图像中感兴趣区域的标注请求。这样,自动标注模块可以避免对图像的全部区域进行标注,而是可以对图像中部分区域(即感兴趣区域)进行自动标识。
[0087] 在步骤S404中,接收来自自动标注模块的对感兴趣区域的第一标注结果。在一些实施例中,标注客户端接收到第一标注结果后,可以用第一标注结果替换掉感兴趣区域。在一些实施例中,标注客户端接收到第一标注结果后,可以保留第一标注结果和感兴趣区域。
[0088] 在此基础上,标注客户端可以供用户对第一标注结果进行复核。例如,在确定第一标注结果可以直接作为图像的标注结果时,标注客户端可以将第一标注结果作为图像的标注结果,并提交图像的标注结果。在确定第一标注结果准确性有待提高时,方法400可以执行步骤S405。
[0089] 在步骤S405中,获取用户对第一标注结果的第二自动标注指示,向自动标注模块发送对第一标注结果对应区域的标注请求。这样,自动标注模块可以对第一标注结果对应的区域进行自动标注,以便提高对图像所进行标注的准确性。
[0090] 在步骤S406中,接收来自自动标注模块的对第一标注结果对应区域的第二自动标注结果。
[0091] 在步骤S407中,将第二标注结果作为图像的标注结果,并提交图像的标注结果。
[0092] 综上,方法400能够供用户对第一标注结果进行复核操作。在第一标注结果准确性不高的情况下,方法400可以根据用户的第二标注指示,通过自动标注模块对第一标注结果进行又一次的标注,从而提高标注准确性。
[0093] 图5示出了根据本申请一些实施例的图像标注方法500的流程图。方法500例如可以应用于标注客户端。
[0094] 如图5所示,在步骤S501中,获取待复核图像的标注结果。待复核图像的标注结果指定待复核图像中的标注区域。这里,标注客户端例如可以从任务管理设备获取复核任务,即获取待复核的标注结果。
[0095] 在步骤S502中,接收用户对待复核图像的第三自动标注指示,向自动标注设备发送对待复核图像中的标注区域的标注请求。
[0096] 在步骤S503中,接收来自自动标注设备的对标注区域的第三标注结果。
[0097] 在步骤S504中,将第三标注结果作为图像的复核结果,提交图像的复核结果。
[0098] 综上,方法500能够接收复核任务,并根据用户选择通过自动标注模块对待复核图像的标注结果进行又一次自动标注,从而提高标注准确性。另外,方法500也可以根据用户选择,根据·用户对标注结果进行调整,从而将调整结果作为复核结果。
[0099] 图6示出了根据本申请一些实施例的图像标注方法600的流程图。方法600例如可以应用于标注客户端。
[0100] 如图6所示,在步骤S601中,获取待标注的图像。
[0101] 在步骤S602中,获取第一用户账户在图像中选定的感兴趣区域。这里,第一用户账户用于标识第一用户。步骤S602可以根据第一用户的输入获取感兴趣区域。
[0102] 在步骤S603中,接收第一用户对感兴趣区域的第一自动标注指示,向自动标注模块发送对图像中感兴趣区域的标注请求。
[0103] 在步骤S604中,接收来自自动标注模块的对感兴趣区域的第一标注结果。
[0104] 在步骤S605中,将第一标注结果作为图像的标注结果,并提交图像的标注结果。
[0105] 在步骤S606中,获取待复核图像的标注结果。待复核图像的标注结果指定待复核图像中的标注区域。这里,标注客户端例如可以从任务管理设备获取为第二用户账户的复核任务,即获取待复核的标注结果。第二用户账户用于表征第二用户。
[0106] 在步骤S607中,根据第二用户账户的用户输入对待复核图像中标注区域进行调整。
[0107] 在步骤S608中,接收第二用户账户对所述待复核图像的第三自动标注指示,向自动标注模块发送对待复核图像中的标注区域的标注请求。自动标注模块可以对标注区域进行自动标注,以便提高对待复核图像的标注准确性。由于步骤S607可以对标注区域进行调整,以及步骤S608可以指示自动标注模块进行自动标注,方法600能够在进行标注结果的复核中,结合用户输入和自动标注操作,进而提高对待复核图像的标注准确性。
[0108] 在步骤S609中,接收来自自动标注设备的对标注区域的第三标注结果。
[0109] 在步骤S610中,根据第二用户账户的用户输入对第三标注结果进行调整。
[0110] 在步骤S611中,将第三标注结果作为图像的复核结果,提交图像的复核结果。
[0111] 综上,方法600支持在同一应用客户端中根据不同的用户账户执行不同的操作。例如,方法600可以根据第一用户账户的用户输入获取待标注图像的感兴趣区域,并通过自动标注模块进行自动标注。另外,方法600可以根据第二用户账户的用户输入对待复核图像的标注结果进行重新标注。这样,方法600可以使得同一图像的标注任务和复核任务分别由不同的用户账户进行管理,从而便于对图像的标注进行精细化管理,进而提高图像标注的准确性。图7示出了根据本申请一些实施例的图像标注方法700的流程图。方法700例如可以由图像标注系统执行。
[0112] 在步骤S701中,由任务管理设备用于向标注客户端发送标注任务。标注任务指定待标注的图像。
[0113] 在步骤S702中,由标注客户端用于接收所述标注任务,获取待标注的图像。
[0114] 在步骤S703中,由标注客户端获取用户在图像中选定的感兴趣区域。
[0115] 在步骤S704中,由标注客户端接收用户对感兴趣区域的第一自动标注指示,向自动标注模块发送对图像中感兴趣区域的标注请求。
[0116] 在步骤S705中,由自动标注模块接收标注请求,生成对感兴趣区域的第一标注结果,并向标注客户端发送所述第一标注结果。
[0117] 在步骤S706中,由标注客户端接收来自自动标注模块的第一标注结果。
[0118] 综上,方法700可以根据用户的初步选择获取感兴趣区域,然后由自动标注模块感兴趣区域进行自动标注这里,方法700通过用户初步选择感兴趣区域,从而排除非感兴趣区域对自动标注模块的干扰,从而能够提高标注准确性。
[0119] 图8示出了根据本申请一种实施例的图像标注装置800的示意图。装置800例如可以应用于标注客户端。
[0120] 装置800包括:图像获取单元801、区域选择单元802和区域选择单元803。
[0121] 图像获取单元801,获取待标注的图像。
[0122] 区域选择单元802,获取用户在所述图像中选定的感兴趣区域。
[0123] 标注管理单元803,接收用户对所述感兴趣区域的第一自动标注指示,向自动标注模块发送对所述图像中感兴趣区域的标注请求;接收来自所述自动标注模块的对所述感兴趣区域的第一标注结果。
[0124] 综上,装置800可以根据用户的初步选择获取感兴趣区域,然后由自动标注模块感兴趣区域进行自动标注这里,装置800通过用户初步选择感兴趣区域,从而排除非感兴趣区域对自动标注模块的干扰,从而能够提高标注准确性。
[0125] 图9示出了根据本申请一些实施例的电子设备的示意图。如图9所示,该电子设备包括一个或者多个处理器(CPU)902、通信模块904、存储器906、用户接口910,以及用于互联这些组件的通信总线908。
[0126] 处理器902可通过通信模块904接收和发送数据以实现网络通信和/或本地通信。
[0127] 用户接口910包括输出设备912和输入设备914。
[0128] 存储器906可以是高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储设备;或者非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备,或其他非易失性固态存储设备。
[0129] 存储器906存储处理器902可执行的指令集,包括:
[0130] 操作系统916,包括用于处理各种基本系统服务和用于执行硬件相关任务的程序;
[0131] 应用918,包括用于实现上述方案的各种程序。这种程序能够实现上述各实例中的处理流程,比如可以包括图像标注方法。
[0132] 另外,本申请的每一个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和\或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类型的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如CD‑ROM等)、磁光存储介质(如MO等)等。
[0133] 因此本申请还公开了一种非易失性存储介质,其中存储有程序。该程序包括指令,所述指令当由处理器执行时,使得电子设备执行根据本申请的图像标注方法。
[0134] 另外,本申请所述的方法步骤除了可以用数据处理程序来实现,还可以由硬件来实现,例如,可以由逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌微控制器等来实现。因此这种可以实现本申请所述确定对象之间关系信息的方法的硬件也可以构成本申请。
[0135] 以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。