CN110737785B - 一种图片标注的方法及装置 - Google Patents
一种图片标注的方法及装置 Download PDFInfo
- Publication number
- CN110737785B CN110737785B CN201910854370.4A CN201910854370A CN110737785B CN 110737785 B CN110737785 B CN 110737785B CN 201910854370 A CN201910854370 A CN 201910854370A CN 110737785 B CN110737785 B CN 110737785B
- Authority
- CN
- China
- Prior art keywords
- picture
- boundary information
- model
- labeling
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/5866—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种图片标注的方法及装置,属于人工智能领域。所述方法包括:获取第一图片;根据第一图片和第一图片标注模型,获得第一边界信息,第一边界信息指示第一图片中的第一区域的位置,第一区域中包含第一图片中待标注的目标;根据第一图片和第一边界信息,获得第二图片,第二图片为第一图片中第一区域的内容;根据第二图片和第二图片标注模型,获得第二边界信息,第二边界信息指示第二图片中的第二区域的位置,第二区域中也包括目标;根据第一边界信息和第二边界信息对第一图片进行标注,获得标注后的第一图片,在标注后的所述第一图片中,目标被标注。采用本申请,可以实现自动图片标注,降低人力成本和提高标注的精度。
Description
技术领域
本申请涉及人工智能(artificial intelligence,AI)领域,特别涉及一种图片标注的方法及装置。
背景技术
人工智能(artificial intelligence,AI)模型是人工智能领域用于完成各种任务目标的算法模型。被训练完成的AI模型可用于分类、识别或检测等。训练AI模型类似于给AI模型传授知识,对AI模型的训练需要大量的数据(例如:图片、语音信号、视频等),用于训练的数据通常需要进行标注。举个形象的例子,为了让AI模型认识苹果,需要在样本图片中标注出苹果图像,将经过标注的大量样本图片输入到AI模型中对AI模型进行训练。训练完成的AI模型学习到了样本图片中的特征,之后,再向该AI模型输入任一张包括苹果图像的图片,AI模型可以识别出该图片中的苹果图像。
数据标注是训练AI模型前需要进行的准备工作,目前存在大量以图片为基础完成特定任务的AI模型(例如:用于图片分类的AI模型、用于目标检测或识别的AI模型等),因此图片标注成为了一件极需要时间成本和人力成本的事情。现有技术中存在图片标注的工具,该工具可以显示样本图片,技术人员手动地在该样本图片中设置包括目标的图像区域和/或对该区域设置标签,以获得该样本图片经过标注后的样本图片。在训练AI模型时,需向AI模型输入标注后的样本图片,对该AI模型进行训练。
在实现本申请的过程中,发明人发现相关现有技术至少存在以下问题:
目前对样本图片的标注主要由技术人员手动完成,这样需要大量的时间和人力成本。另外,手动标注样本图片,也会降低标注的精度。
发明内容
本申请提供了一种图片标注的方法及装置,以实现自动图片标注,降低人力成本和提高标注的精度,所述技术方案如下:
第一方面,本申请提供了一种图片标注的方法,在所述方法中:获取第一图片;根据第一图片和第一图片标注模型,获得第一边界信息,第一边界信息指示第一图片中的第一区域的位置,第一区域中包含第一图片中待标注的目标;根据第一图片和第一边界信息,获得第二图片,第二图片为第一图片中第一区域的内容;根据第二图片和第二图片标注模型,获得第二边界信息,第二边界信息指示第二图片中的第二区域的位置,第二区域中也包括该目标;根据第一边界信息和第二边界信息对第一图片进行标注,获得标注后的第一图片,在标注后的第一图片中,该目标被标注。
如此可以根据第一图片标注模型和第二图片标注模型对第一图片中的目标进行自动标注。在标注时先根据第一图片和第一图片标注模型进行第一次图片标注得到第一边界信息;根据第一边界信息和第一图片获取第二图片,由于第二图片中包括除目标之外的图像内容小于第一图片包括除目标之外的图像内容,再根据第二图片标注模型对第二图片中的目标进行第二次图片标注得到第二边界信息,使得第二边界信息指示的第二区域更接近于目标,再基于第一边界信息和第二边界信息对第一图片进行标注,获取标注后的第一图片,从而可以提高图片标注的精度。
在一种可能的实现方式中,根据第一边界信息,在第一图片中确定第一边界框,将第一图片和第一边界框显示在GUI上;根据第二边界信息,在第二图片中确定第二边界框,将第二图片和第二边界框显示在该GUI上。在该GUI中显示第一图片和第一图片中的第一边界框以及显示第二图片和第二图片中的第二边界框,可以便于用户可以在GUI中同时查看第一边界框中的目标和第二边界框中的目标,以及方便用户对第一边界框或第二边界框进行修正。
在一种可能的实施例方式中,该GUI包括第一显示窗口和第二显示窗口,在第一显示窗口中显示第一图片和第一边界框,放大第二图片,第二图片中第二边界框也随之放大,在第二显示窗口中显示放大的第二图片和第二图片中的第二边界框。在第一显示窗口中显示第一图片和第一图片中的第一边界框,以及在第二显示窗口中显示放大后的第二图片和第二图片中的第二边界框。这样在第一图片中的目标较小时,用户可以不需要通过放大第一图片来放大该目标并在放大的第一图片中修正包括目标的第二边界框,而是在放大后的第二图片中修正包括该目标的第二边界框,如此不需要用户不需要放大第一图片并在修正完再缩小放大的第一图片,方便用户修正边界框。
在另一种可能的实现方式中,根据用户通过该GUI对第二图片中第二边界框的位置的修正,获得修正后的第二边界信息;根据第一边界信息和修正后的第二边界信息对第一图片进行重新标注,获得重新标注后的第一图片。其中,由于获取到修正后的第二边界信息,这样根据第一边界信息和修正后的第二边界信息对第一图片进行重新标注,可以提高标注的精度。
在另一种可能的实现方式中,根据用户通过该GUI对第一图片中第一边界框的位置的修正,获得修正后的第一边界信息;根据修正后的第一边界信息和第一图片获得第三图片;根据第三图片和第二图片标注模型,获得第三边界信息,第三边界信息指示第三图片中的第三区域的位置,第三区域中也包括该目标;根据修正后的第一边界信息和第三边界信息对第一图片进行二次标注,获得二次标注后的第一图片。其中,由于获取到修正后的第一边界信息,这样根据修正后的第一边界信息和第一图片获取第三图片,根据第三图片和第二图片标注模型得到的第三边界信息的精度较高,第三边界信息指示的第三区域更接近于该目标,这样根据修正后的第一边界信息和第三边界信息对第一图片进行重新标注,可以提高标注的精度。
在另一种可能的实现方式中,对第一图片进行预处理,获得多个子图片,每个子图片为第一图片中的一部分内容;输入该多个子图片至第一图片标注模型,获得该多个子图片的类别,其中,第一图片标注模型为经过训练后的AI分类模型;对于该多个子图片中类别为正样本的子图片,确定该类别为正样本的子图片在第一图片中的位置,获得第一边界信息。由于先对第一图片做预设处理得到多个子图片,这样第一图片标注模型可以是用于确定子图片类别的二分类模型,而二分类模型的运算复杂度,可以降低图片标注的运算复杂度。
在另一种可能的实现方式中,输入第一图片至第一图片标注模型,其中第一图片标注模型为经过训练后的AI检测模型;根据第一图片标注模型对第一图片中的目标进行检测,获得第一边界信息。由于第一图片标注模型是目标检测类模型,这样不需要对第一图片进行预设处理,就可以直接使用第一图片标注模型对第一图片中的目标进行检测,得到第一边界信息,这样可以简化实现的图片标注的流程。
在另一种可能的实现方式中,输入第二图片至第二图片标注模型,其中,第二图片标注模型为经过训练后的AI检测模型;根据第二图片标注模型对第二图片中的该目标进行检测,获得第二边界信息。由于第二图片中的背景内容较小,所以使用第二图片标注模型对第二图片进行目标检测,可以提高第二图片标注模型检测该目标的精度。
在另一种可能的实现方式中,构建粗标注模型训练集,粗标注模型训练集中包括多个粗标注训练图片,使用粗标注模型训练集中的粗标注训练图片对第一图片标注模型进行训练。从而基于粗标注模型训练集可以训练出第一图片标注模型。
在另一种可能的实现方式中,构建精标注模型训练集,精标注模型训练集中包括多个精标注训练图片,使用精标注模型训练集中的精标注训练图片对第二图片标注模型进行训练。从而基于精标注模型训练集可以训练出第一图片标注模型。
第二方面,本申请提供了一种图片标注的装置,用于执行第一方面或第一方面的任意一种可选的实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的任意一种可选的实现方式的方法的单元。
第三方面,本申请提供了一种图片标注的计算设备,所述计算设备包括:至少一个处理器和至少一个存储器,所述至少一个处理器通过总线与所述至少一个存储器;所述至少一个存储器存储有一个或多个程序,所述一个或多个程序被配置成由所述至少一个处理器执行,所述一个或多个程序包含用于执行第一方面或第一方面的任意一种可能的实现方式的方法的指令。
第四方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任意可选的实现方式的方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任意可选的实现方式的方法。
附图说明
图1是本申请实施例提供的训练粗标注模型的方法流程图;
图2是本申请实施例提供的一种为正样本的粗标注模型训练图片的示意图;
图3是本申请实施例提供的一种为负样本的粗标注模型训练图片的示意图;
图4是本申请实施例提供的一种滑窗位置示意图;
图5是本申请实施例提供的另一种滑窗位置示意图;
图6是本申请实施例提供的另一种滑窗位置示意图;
图7是本申请实施例提供的另一种滑窗位置示意图;
图8是本申请实施例提供的一种训练精标注模型的方法流程图;
图9是本申请实施例提供的一种精标注模型训练图片的示意图;
图10是本申请实施例提供的一种合并子图片的示意图;
图11是本申请实施例提供的一种图片标注的方法流程图;
图12是本申请实施例提供的一种显示窗口示意图;
图13是本申请实施例提供的一种图片标注的装置结构示意图;
图14是本申请实施例提供的另一种图片标注的装置结构示意图;
图15是本申请实施例提供的另一种计算设备结构示意图。
具体实施方式
目前可以使用多个样本图片训练AI模型,得到可实现特定功能的AI模型。例如,可以使用大量包括车牌图像的样本图片训练AI模型,得到具有车牌检测功能的AI模型,该AI模型可被称为车牌检测模型,经过样本图片训练完成的车牌检测模型可用于检测输入的图片中的车牌的位置信息和车牌信息。
在使用每个样本图片训练AI模型之前,需要对该样本图片进行图片标注,本申请中样本图片即为待标注的图片。所谓图片标注是指在该样本图片中给目标标注一个包括目标的边界框和/或给目标设置标签。对于不同的任务,图片标注的方法也不同,例如:对于图片的目标检测任务,图片标注是在样本图片中标注出包括目标的边界框(例如:用矩形框、椭圆框框出包含目标的区域);对于图片的目标识别任务,图片标注是既要在样本图片中标注出包括目标的边界框,又要对标注的边界框设置一个标签,该标签为该边界框内的目标的类别(例如:苹果、香蕉);对于图片的分类任务,若收集到的每一张样本图片是仅包含一种目标的图片,图片标注时仅需要对每一张样本图片设置一个标签即可,该标签即为样本图片中的目标所属的类别。
本申请提供一种图片标注方法,主要用于一个样本图片中的目标被标注时需要确定一个包含目标的边界框的情况。对于一个样本图片包括至少一个目标,对该样本图片进行图片标注的过程中,会在该样本图片中确定至少一个包括目标的边界框。对每个样本图片进行图片标注后,标注的每个样本图片中保存有至少一个包括目标的边界框。使用本申请提供的方法获得标注后的每个样本图片可用于训练AI模型,得到具有所需要功能的AI模型。
本申请中的目标为AI模型要学习的对象,目标本质上为样本图片中的部分或全部内容,AI模型对于目标的特征进行学习后,可对目标进行识别、分类、检测等。例如,仍以车牌检测模型为例,车牌检测模型检测的对象为车牌图像,因此目标为车牌图像。在开始训练车牌检测模型之前,获取多个包括车牌图像的样本图片,在任一个包括车牌图像的样本图片中确定包括车牌图像的边界框,即对样本图片进行标注。按上述方式可以对其他每个样本图片进行图片标注,以在其他每个样本图片中确定包括目标的边界框。使用标注后的该多个样本图片中的每个图片训练AI模型,得到车牌检测模型。
应理解,在样本图片中确定的边界框的形状可以是多边形、椭圆形、圆形或线形等。
本申请提供一种图片标注的方法,该方法可以实现自动对样本图片进行标注,大大节省图片标注的人力和时间成本,提高图片标注的精度。在本申请中,对于任一样本图片,使用粗标注模型和精标注模型对样本图片进行图片标注,标注后的样本图片中保存有目标对应的边界框。在粗标注模型和精标注模型用于图片标注之前,本申请还需要对粗标注模型和精标注模型分别进行训练。对于训练粗标注模型的过程、训练精标注模型的过程、以及根据粗标注模型和精标注模型对样本图片进行图片标注的过程将在后续实施例进行详细说明。
参见图1,本申请实施例提供了一种训练粗标注模型的方法,包括:
步骤101:获取多个原始图片,根据多个原始图片构建粗标注模型训练集,粗标注模型训练集中包括多个粗标注训练图片。
具体地,获取多个原始图片,本申请不对原始图片的来源做任何限定,原始图片可以是使用摄像机拍摄得到的图片,原始图片还可以是从第三方(例如:网络上开源的图片集)获得的图片,或者可以是使用其他方式得到的图片。例如:对于训练后的粗标注模型是用于对包括车牌的样本图片进行图片标注时,原始图片可以是由设置于路边的摄像头采集到的视频中的视频帧、或者车载相机拍摄到的图片等。
获取的原始图片中包括边界框。该原始图片中的边界框可以是技术人员使用图片标注工具手动对该原始图片中的目标进行标注得到的,该边界框中包括该目标。
根据多个原始图片构建粗标注模型训练集主要包括:对多个原始图片进行预处理,获得多个粗标注训练图片,多个粗标注训练图片中包括多个正样本和多个负样本,多个正样本和多个负样本共同构成粗标注训练集。其中,正样本为包含粗标注模型要学习的目标的训练图片(例如,假设粗标注模型要学习的目标为车牌,如图2所示的训练图片中包括粗标注模型要学习的车牌图像,所以如图2所示的训练图片是正样本),负样本为不包含粗标注模型要学习的目标或者包含的所述目标小于预设定的面积阈值的训练图片(例如,如图3所示的训练图片,该训练图片中不包括粗标注模型要学习的车牌图像,所以如图3所示的训练图片是负样本),将一定的负样本用于粗标注模型的训练,可提高粗标注模型的准确率和鲁棒性。
在一种具体地实施例中,在构建粗标注训练集时可以将属于正样本的一类粗标注训练图片保存在一个文件夹中,为了便于说明称该文件夹为正样本文件夹。可以将属于负样本的一类粗标注训练图片保存到另一个文件夹中,为了便于说明称该另一个文件夹为负样本文件夹。也就是说粗标注模型训练集可以包括正样本文件夹和负样本文件夹。
可以通过文件夹的名称区分正样本文件夹和负样本文件夹。例如,可以将正样本文件夹的名称命名为1,将负样本文件夹的名称命名为0;或者,可以将正样本文件夹的名称命名为0,将负样本文件夹的名称命名为1。这样以便于AI模型根据文件夹的名称便可确定文件夹中的粗标注训练图片的类别。
可选的,对于类别为负样本的粗标注训练图片,该粗标注训练图片与原始图片中的边界框之间的重叠面积满足第一预设条件,该原始图片是该粗标注训练图片所在的图片。对于类别为正样本的粗标注训练图片,该粗标注训练图片与该原始图片中的边界框之间的重叠面积满足第二预设条件。
第一预设条件可以是:该重叠面积为0或小于面积阈值。
第二预设条件可以是:该重叠面积与该粗标注训练图片的面积之间的第一比值超过第一预设比值阈值,以及该重叠面积和该边界框的完整面积之间的第二比值超过第二预设比值阈值。
在该重叠面积满足第二预设条件时,该粗标注训练图片中包括完整的该边界框或该边界框的大部分。
在本步骤中对多个原始图片进行预处理,获得多个粗标注训练图片的具体预处理方式可以分为两种:
预处理方式一、对于一些只包含一个目标的原始图片,可以采用对这些原始图片进行裁剪,使得裁剪后的图片中包括目标,对裁剪后的图片的尺寸再进行变换,变换成预设定的尺寸的图片,将变换后的图片确定为粗标注训练图片,具体地,由于这些变换后的图片中包含目标,将这些图片确定为粗标注训练图片中的正样本。应理解,所有粗标注训练图片都应具有统一的尺寸。
预处理方式二、对原始图片进行滑窗选取的方式,选取正样本和负样本。
对于原始图片中包括多个目标可以通过如下1011至1014的操作来实现利用滑窗选择的方式从原始图片中选择粗标注训练图片(包括正样本或者负样本)。该1011至1014的操作可以分别为:
1011:在原始图片中添加预设尺寸的滑窗,获取滑窗在原始图片中的边界信息。
在本步骤中,在原始图片的预设位置处添加预设尺寸的滑窗,预设位置可以为原始图片的左上顶点或右上顶点等位置。
该滑窗的形状可以是矩形。该滑窗的边界信息包括该滑窗的任意对角线上的两个顶点位置、任意三个顶点位置或全部顶点位置。
例如,参见图4所示的原始图片,在原始图片的左上顶点处添加滑窗,假设该滑窗的长度为a,高度为b,获取该滑窗的边界信息可以包括(0,0)和(a,b),或者,包括(a,0)和(0,b),或者,包括(0,0)、(0,b)和(a,0),或者,包括(0,b)、(a,0)和(a,b),或者包括(0,0)、(a,0)和(a,b),或者,包括(0,0)、(0,b)、(a,0)和(a,b)等。
1012:根据滑窗的边界信息和原始图片中的边界框的边界信息,确定该滑窗与该边界框之间的重叠面积。
在本步骤中,原始图片由人工预先标注了包括目标的边界框,以便于根据原始图片进行滑窗时,将每个滑窗内的图片与包括目标的边界框进行比较,确定滑窗内的图片为正样本或者负样本。
对于原始图片中的每个包括目标的边界框,根据滑窗的边界信息和该边界框的边界信息确定滑窗与该边界框之间是否重叠,如果重叠,基于滑窗的边界信息和该边界框的边界信息获取滑窗与该边界框之间的重叠面积。
1013:判断该重叠面积是否满足预设条件,在满足预设条件时,将该滑窗中的图片确定为粗标注训练图片,以及确定该粗标注训练图片的类别。
预设条件包括上述第一预设条件和第二预设条件。
在本步骤中,判断该重叠面积是否为0或小于面积阈值,如果该重叠面积为0或小于面积阈值,即该重叠面积满足第一预设条件,将位于滑窗内的图像确定为粗标注训练图片以及确定该粗标注训练图片的类别为负样本。
如果该重叠面积不为0或该重叠面积大于或等于面积阈值,即该重叠面积不满足第一预设条件,根据滑窗的尺寸获取滑窗的面积,以及根据该边界框的边界信息获取该边界框的面积。获取该重叠面积与滑窗的面积之间的第一比值,以及获取该重叠面积与该边界框的面积之间的第二比值。在第一比值超过预设第一比值阈值且第二比值超过预设第二比值阈值时,即该重叠面积满足第二预设条件,将位于滑窗内的图像确定为粗标注训练图片以及确定该粗标注训练图片的类别为正样本。
为了丰富粗标注训练图片数目,在得到粗标注训练图片且该粗标注训练图片的类别为正样本,还可以对训练图片进行裁剪,对裁剪后的图像的尺寸进行变换,变换后的图像的尺寸与预设尺寸相等,将变换后的图像确定为新的粗标注训练图片,且该新的粗标注训练图片的类别也为正样本。
可选的,从粗标注训练图片中裁剪去的图像面积在该粗标注训练图片中所占的比例不超过预设比例阈值。
1014:在原始图片中存在滑窗未经过的区域,则移动该滑窗,获取该滑窗在原始图片中的边界信息,返回执行步骤1012。
在原始图片中可以横向移动滑窗或竖向移动滑窗,每次滑动的步长可预先设定,例如:横向移动滑窗的第一步长可以小于或等于滑窗长度,竖向移动滑窗的第二步长可以小于或等于滑窗高度。
可选的,第一步长可以等于1/m的滑窗长度,第二步长可以等于1/n的滑窗高度。m可以大于或等于1的数值,例如m=1、2、3、3.5或4等数值。n可以大于或等于1的整数,例如n=1、2、3、3.5或4等数值。
在原始图片中每移动一次滑窗后,对滑窗中的图像执行上述1012至1014的操作。在原始图片中滑窗的移动路径有多种,在本步骤中列举了一种移动路径。例如,参见图5,将滑窗向右移动1/m的滑窗长度,然后对移动后的滑窗执行上述1012至1014的操作。在本步骤中,滑窗在原始图片中的移动路径有多种。在本步骤中列举了一种移动路径。例如,参见图4,滑窗初始位于原始图片的左上角位置。参见图5,在对滑窗中的图片执行上述1012至1014的操作后,将滑窗向右移动1/m的滑窗长度。参见图6,在滑窗移动到原始图片的右侧边缘时,滑窗可以向下移动1/n的滑窗高度。在下一次移动时,该滑窗可以向左移动1/m的滑窗长度。参见图7,在该滑窗移动到原始图片的左侧边缘时,滑窗可以向下移动1/n的滑窗高度。在下一次移动时,该滑窗可以向右移动1/m的滑窗长度。重复上述过程,直至滑窗经过原始图片的全部区域。
滑窗除了上述列举的一种移动路径外,还可以采用其他移动路径,在此不再一一列举。
在原始图片中的全部区域被滑窗经过后,可以重新选择一个原始图片,通过上述1011至1014的操作从原始图片中获取粗标注训练图片。和/或,使用至少一个缩放比例中的每个缩放比例对该原始图片进行放大或缩小,将放大得到的图片或缩小得到的图片通过上述1011至1014的操作获取粗标注训练图片。
通过不同的缩放比例对原始图片进行放大或缩小,然后从该放大后的图片和/或缩小后的图片中获取粗标注训练图片,这样可以获取丰富的粗标注训练图片,增加获取的粗标注训练图片的数目。
上述每次获取到的粗标注训练图片(包括正样本和负样本)共同构成一个粗标注训练集,用于训练粗标注模型。
步骤102:将粗标注模型训练集中的粗标注训练图片输入到粗标注模型,对粗标注模型进行训练。
在本步骤中,可以通过如下1021至1024的操作来实现。该1021至1024的操作分别为:
1021:将粗标注模型训练集中的粗标注训练图片输入到粗标注模型,其中,每个粗标注模型训练图片为正样本或者负样本。
对于任一个粗标注模型训练图片,为了便于说明,定义该粗标注模型训练图片的类别为该粗标注模型训练图片的真实标签。即在该粗标注模型训练图片为正样本时,该粗标注模型训练图片的真实标签为正样本,在该粗标注模型训练图片为负样本时,该粗标注模型训练图片的真实标签为负样本。
可选的,粗标注模型可以为深度卷积神经网络(deep convolutional neuralnetwork,DCNN),残差卷积网络(residual convolutional network,ResNet)或密集卷积神经网络(dense convolutional network,DenseNet)等。
在本步骤中以粗标注模型为DCNN为例进行说明,DCNN包括多层卷积层,每层卷积层中包括卷积核。其中最后一层卷积层包括至少两个卷积核,位于最后一层卷积层之前的各层卷积层可以包括一个卷积核或两个卷积核。每个卷积核是由权重组成的矩阵。
1022:粗标注模型对粗标注训练图片进行特征提取和类别预测。
对于粗标注模型为DCNN的情况,对于每个粗标注训练图片,粗标注模型对该粗标注训练图片进行特征提取和类别预测的操作可以为:对于粗标注模型中的位于最后层卷积层之前的任一层卷积层,该卷积层通过该卷积层中的卷积核对该粗标注训练图片进行卷积操作,以提取特征,并向下一层输入提取的特征。位于最后一层卷积层,该卷积层包括两个卷积核,基于提取的特征,通过其中一个卷积核预测精标注训练样本为正样本的第一概率以及通过另一个卷积核预测精标注训练样本为负样本的第二概率,第一概率和第二概率之和等于1,输出两个概率中数值较大的概率对应的类别。
1023:对于每个粗标注训练图片,粗标注模型比较该粗标注训练图片的真实标签(正样本或者负样本)和该粗标注模型对该粗标注训练图片预测后输出的类别,利用损失函数计算损失函数值。进一步,根据每个粗标注训练图片的损失函数调整粗标注模型中的网络参数。
对于粗标注模型为DCNN的情况,损失函数可以如下第一公式所示的交叉熵损失函数,
第一公式为:L(x,y)=-ylog(x)-(1-y)log(1-x)
在第一公式中,L(x,y)为损失函数值,y为用于表示真实标签的数值,x为用于该粗标注模型输出的类别的数值。
在本步骤中,针对该粗标注训练图片中的真实标签和该粗标注模型对该粗标注训练图片预测后输出的类别,可以使用数值来表示真实标签和该粗标注模型输出的类别。例如,可以使用1表示真实标签为正样本的情况以及使用1表示该粗标注模型输出的类别为正样本的情况,可以使用0表示真实标签为负样本的情况以及使用0表示该粗标注模型输出的类别为负样本的情况。也就是说,该粗标注训练图片中的真实标签可以为数值1或0,该粗标注模型输出的类别可以为数值1或0。
基于该真实标签和该粗标注模型输出的类别,使用上述第一公式计算出损失函数值。粗标注模型再根据该损失函数值调整每层卷积层中的卷积核包括的权重,以实现调整粗标注模型中的网络参数。
1024:确定是否继续训练粗标注模型,在确定继续训练时,返回执行1022,在确定停止训练时,结束返回。
在确定停止训练后,可以将训练后的粗标注模型用于本申请中的图片标注方法中。
可以根据损失函数值确定是否继续训练,具体地,在训练过程中,计算每一次训练后,粗标注模型输出预测类别与真实标签的损失函数值,将获得的损失函数值进行曲线拟合,若得到的曲线逐渐收敛,且最后一次训练后的损失函数值小于预设定的阈值,则确定停止训练,否则,确定继续训练。
在本申请实施例中,通过构建粗标注模型训练集,根据粗标注模型训练集对粗标注模型进行训练,得到可用于图片标注的粗标注模型。训练后的粗标注模型实质是一种二分类模型,这样在进行图片标注时,可以从该图片获取多个子图片,将多个子图片输入至粗标注模型,由粗标注模型输出这些子图片的类别,对于类别为正样本的子图片,使用精标注模型继续检测子图片中的目标所在的位置和/或目标的类型,从而可以实现自动进行图片标注。
在利用精标注模型进行图片标注之前,精标注模型也要被训练,本申请中的精标注模型可以是掩模区域卷积神经网络(mask region-based convolutional neuralnetwork,Mask R-CNN)、更快的区域卷积神经网络(faster region-based convolutionalneural network,Faster R-CNN)或YOLO(you only look once)等算法。
参见图8,本申请实施例提供了一种训练精标注模型的方法。包括:
步骤201:获取精标注模型训练集,精标注模型训练集包括多个精标注训练图片。
在本步骤中,可以通过对粗标注训练集中的包含一个完整目标的正样本进行人工标注,使得正样本中包括一个包含目标的边界框,该边界框中的图片包括目标且存在较少的背景,即该边界框为一个最小化的包含目标的边界框。将标注了边界框的正样本作为精标注训练图片,如图9所示,为一个精标注训练图片的示意图。
获取精标注训练图片的方法还可以是:将采集到的样本图片经过预处理获得的多个子图片输入到已训练的粗标注模型,将多个子图片中由粗标注模型确定为正样本的子图片进行人工标注,使得正样本中包括一个包含目标的边界框,将标注了边界框的正样本作为精标注训练图片。
可选的,对于粗标注模型确定的为正样本的子图片中,可能存在多个子图片中包括同一目标。在该多个子图片中,有的子图片可能包括该目标的全部,有的子图片可能包括该目标的部分,该多个子图片之间存在重叠部分。
在本步骤中,在粗标注模型确定出正样本的多个子图片时,从该多个子图片中获取相互之间存在重叠的多个子图片,将相互之间存在重叠的多个子图片融合成一个子图片,对融合的子图片进行人工标注,使得融合的子图片中包括一个包含目标的边界框,并作为精标注训练图片。
所谓融合多个子图片是指在采集到的样本图片中确定包括相互之间存在重叠的该多个子图片的最小区域,将该最小区域内的图像作为融合的子图片。
例如,参见图10,假设目标为车牌图像,以及假设粗标注模型输出四个子图片,分别为子图片1、2、3和4。每个子图片均包括目标,将该子图片1、2、3和4融合成子图片5。
2013:根据包括目标的图像的边界信息在第二样本图片中添加第一边界框,得到精标注训练样本。
可选的,还可以在第二样本图片中为第一边界框设置标记。
在对样本库中的每个样本图片执行上述2011至2013的处理后,开始执行如下训练精标注模型的步骤。
步骤202:利用精标注模型训练集训练精标注模型。
在本步骤中,可以通过如下2021至2023的操作来实现。该2021至2023的操作分别为:
2021:将精标注模型训练集输入到精标注模型。
精标注模型训练集中的每个精标注训练图片中存在包含目标的边界框,为了便于后续说明,称精标注训练图片中存在的边界框为真实边界框。
在本步骤中以精标注模型为Faster R-CNN为例进行说明,Faster R-CNN包括多个卷积层、区域建议网络(region proposal networks,RPN)、池化层和损失函数等,每层卷积层包括一个或多卷积核。RPN中也包括多层卷积层,每层卷积层中也包括一个或多个卷积核。
2022:精标注模型对每个精标注训练图片中的目标进行检测,检测出每个精标注训练图片中的包括目标的边界框。
对于精标注模型为Faster R-CNN的情况,对于每个精标注训练图片,以及对于精标注模型中的每个卷积层,该卷积层利用该卷积层中的卷积核对该精标注训练图片进行卷积操作,以提取特征图,向下一层卷积层输入该特征图。最后一层卷积层将得到的特征图输入到RPN和池化层,RPN基于该特征图确定至少一个侯选区域并向池化层输入该至少一个侯选区域。池化层根据该特征图和该至少一个侯选区域检测出该精标注训练图片中的包括目标的边界框。
2023:对于每个精标注训练图片,精标注模型根据从该精标注训练图片中检测的边界框和该精标注训练图片已存在的真实边界框,利用损失函数计算损失函数值。根据每个精标注训练图片的损失函数值调整精标注模型中的网络参数。
对于精标注模型为Faster R-CNN的情况,根据每个精标注训练图片的损失函数值调整调整精标注模型中的每个卷积层的卷积核中的权重,以及调整RPN中的每个卷积层的卷积核中的权重,以实现调整精标注模型中的网络参数。
2024:确定是否继续训练精标注模型,在确定继续训练时,返回执行2022,在确定停止训练时,结束返回。
在确定停止训练后,可以将训练后的精标注模型用于本申请中的图片标注方法中。
可以根据损失函数值确定是否继续训练,具体地,在训练过程中,计算每一次训练后,精标注模型输出边界框重合度的损失函数值,将获得的损失函数值进行曲线拟合,若得到的曲线逐渐收敛,且最后一次训练后的损失函数值小于预设定的阈值,则确定停止训练,否则,确定继续训练。
在本申请实施例中,通过构建精标注模型训练集,根据精标注模型训练集合对精标注模型进行训练,得到可用图片标注的精标注模型。训练后的精标注模型实质是一种目标检测的模型,这样可以使用粗标注模型和精标注模型来进行图片标注。在进行图片标注时,可以从该图片获取多个子图片,将多个子图片输入至粗标注模型,由粗标注模型输出这些子图片的类别,对于类别为正样本的子图片,使用精标注模型继续检测子图片中的目标所在的位置和/或目标的类型,从而可以实现自动进行图片标注。由于子图片包括的背景内容少于该图片,所以精标注模型可以从该子图片中检测目标所在的位置和/或目标的类型的精度较高,从而提高图片标注的精度。
需要说明的是:在另一种实施例中,粗标注模型也可以是一种具有目标检测功能的AI模型,这样在采集到原始图片后,人工在原始图片标注包括目标的边界框,将标注后的原始图片作为粗标注模型训练图片,也就是说粗标注模型训练集包括人工标注得到的粗标注模型训练图片。然后使用粗标注模型训练集训练粗标注模型,训练过程可以参见上述2021至2024训练精标注模型的过程。
训练出粗标注模型和精标注模型后,就可以使用粗标注模型和精标注模型对样本图片进行标注。参见图11,本申请实施例提供了一种图片标注的方法,包括:
步骤301:获取样本图片,根据样本图片和粗标注模型,获得第一边界信息,第一边界信息指示样本图片中的第一区域的位置,第一区域中包含样本图片中待标注的目标。
对于通过粗标注模型得到的第一边界信息,第一边界信息在样本图片中指示的第一区域的尺寸往往大于待标注的目标的尺寸,第一区域中除了包括该目标外,还可能包括较多其他图像内容。
可选的,在本步骤中,在粗标注模型是二分类的AI模型的情况,可以通过如下3011至3013的操作来实现,该3011至3013的操作分别为:
3011:从样本图片中获取多个子图片和每个子图片在样本图片中的第一边界信息。
在本步骤中,可以通过滑窗的方式从样本图片中获取多个子图片。在实现时:在样本图片中添加预设尺寸的滑窗,从样本图片中获取位于滑窗中的图像内容作为一个子图片,以及获取该子图片在样本图片中的边界信息;移动滑窗,然后从样本图片中获取位于滑窗中的图像内容作为一个子图片,以及获取该子图片在样本图片中的边界信息。重复上述过程,直到滑窗经过样本图片的全部区域为止。
3012:将每个子图片输入到粗标注模型,粗标注模型用于对每个子图片的类别进行检测,获取粗标注模型输出的每个子图片的类别。
可选的,对于每个子图片,粗标注模型计算该子图片为正样本的第一概率和为负样本的第二概率,第一概率和第二概率之和等于1,输出两个概率中数值较大的概率对应的类别,输出的类别为该子图片的类别。
3013:从每个子图片中选择类别为正样本的子图片,类别为正样本的子图片中包括该目标,也就是说正样本的子图片为样本图片中包括该目标的第一区域,正样本的子图片的边界信息为用于在样本图片中指示第一区域位置的第一边界信息。
可选的,粗标注模型可能输出包括同一目标的多个子图片,在本步骤中,可以将包括同一目标的多个子图片融合为一个新的子图片,以根据该多个子图片的边界信息获取该新的子图片的边界信息。将该新的子图片作为样本图片中包括目标的第一区域,该新的子图片的边界信息为指示第一区域位置的第一边界信息。
可选的,在本步骤中,在粗标注模型是目标检测模型的情况,将该样本图片输入到粗标注模型,粗标注模型从该样本图片中确定包括待检测的目标的第一区域。从该样本图片中获取用于指示第一区域位置的第一边界信息。
步骤302:根据样本图片和第一边界信息,获得第二图片,第二图片为样本图片中的第一区域的内容。
在本步骤中,根据第一边界信息在该样本图片确定第一区域,获取位于第一区域内的内容,得到第二图片。
可选的,在粗标注模型为二分类模型的情况下,第一区域是正样本的子图片或融合得到的新的子图片,则可以直接将正样本的子图片或融合得到的新的子图片确定为第二图片。
步骤303:根据第二图片和第二图片标注模型,获得第二边界信息,第二边界信息指示第二图片中的第二区域的位置,第二区域中也包括该目标。
在本步骤中,将第二图片输入到精标注模型,精标注模型从第二图片中确定包括该目标的第二区域。从第二图片中获取用于指示第二区域位置的第二边界信息。
第二区域的尺寸小于或等于第一区域的尺寸。第二区域中除了包括该目标外,还可能包括其他图像内容,但第二区域包括的其他图像内容可能少于第一区域包括的其他图像内容,所以相比第一区域,第二区域更接近于该目标。
步骤304:根据第一边界信息和第二边界信息对样本图片进行标注,获得标注后的样本图片,在标注后的样本图片中该目标被标注。
在本步骤中,根据第一边界信息在样本图片中确定包括目标的第一区域,根据第二边界信息在第一区域中添加包括该目标的边界框,添加该边界框的样本图片为标注后的样本图片。
可选的,粗标注模型的精度可能还不足,导致第二图片中可能包括完整的目标,也可能包括不完整的目标。在第二图片包括不完整的目标时,精标注模型在第二图片中确定第二区域包括的目标也不完整。
可选的,精标注模型的精度也可能还不足,在第二图片中包括完整目标的情况下,精标注模型在第二图片中确定的第二区域可能包括完整的目标,也可能包括不完整的目标。
为此在精标注模型的精度和/或精标注模型的精度还不足的情况下,还可以根据第一边界信息,在样本图片中确定第一边界框,将样本图片和第一边界框显示在图形用户界面(graphical user interface,GUI)上;以及,根据第二边界信息,在第二图片中确定第二边界框,将第二图片和第二边界框显示在GUI上。
可选的,参见图12,可以该GUI可以包括两个显示窗口,分别为第一显示窗口和第二显示窗口。在第一显示窗口显示标注图片和第一边界框。在第二显示窗口中显示经过放大的第二图片和第二边界框。放大后的第二图片的宽度等于第二显示窗口的宽度或放大后的第二图片的高度等于第二显示窗口的高度。
可选的,还可以显示第一显示窗口对应的第一按钮和第二显示窗口对应的第二按钮。
由于粗标注模型的精度不足,在第一边界框中的目标可能不完整,在第一边界框中的目标不完整的情况下,精标注模型在第二图片(为第一边界框中的内容)中得到的第二边界框中的目标也不完整。由于精标注模型的精度不足,在第一边界框中的目标完整的情况下,第二边界框中的目标也可能不完整。
可选的,在第一边界框中的目标不完整的情况下,在第一显示窗口中显示样本图片和第一边界框后,用户可以查看第一边界框中包括的目标,在查看出包括的目标不完整时,可以手动地修正第一边界框的位置、大小或形状等至少一者。在用户修正完第一边界框时,可以点击第一按钮,使第一按钮触发完成命令,以执行如下401至402的操作。
401:根据用户通过该GUI对样本图片中第一边界框的修正,获得修正后的第一边界信息;根据修正后的第一边界信息和样本图片获得第三图片。
在本步骤中,在检测到第一按钮触发的完成命令时,从第一显示窗口中检测出修正后的第一边界框,获取修正后的第一边界框的边界信息,得到修正后的第一边界信息。在第一边界框中的目标不完整的情况下,第二边界框的目标也不完整。因此可以根据修正后的第一边界信息,从该样本图片中获取第三图片,然后使用精标注模型对第三图片中的目标进行重新标注。
对第三图片重新标注后,第三图片中存在包括目标的第三边界框。可以将该第三图片作为粗标注模型训练图片并保存到新的粗标注模型训练集中,或,将该第三图片作为精标注模型训练图片并保存到新的精标注模型训练集中。
步骤402:根据第三图片和精标注模型,获得第三边界信息,第三边界信息指示第三图片中的第三区域的位置,第三区域中也包括该目标,根据修正后的第一边界信息和第三边界信息对样本图片进行二次标注,获得二次标注后的样本图片。
可选的,在获取到第三图片后,也可以不使用精标注模型对第三图片进行标注,而是对第三图片进行放大并显示在第二显示窗口中,根据第二边界信息在第三图片中显示第二边界框。此时显示的第二边界框中的目标不完整,用户可以手动地修正第二边界框的位置、大小或形状等至少一者。在用户修正完第二边界框时,可以点击第二按钮,使第二按钮触发完成命令。
可选的,在检测到该完成命令后,可以从第二显示窗口中获取修正后的第二边界框的边界信息,得到修正后的第二边界信息。根据修正后的第一边界信息和修正后的第二边界信息对样本图片进行二次标注,获得二次标注后的样本图片。
可选的,在第一边界框中的目标完整,但第二边界框中的目标不完整的情况下,在第二显示窗口中显示第二图片和第二边界框后,用户可以查看第二边界框中包括的目标,在查看出包括的目标不完整时,可以手动地修正第二边界框的位置、大小或形状等至少一者。在用户修正完第二边界框时,可以点击第二按钮,使第二按钮触发完成命令,以执行如下501至502的操作。
501:根据用户通过该GUI对第二图片中第二边界框的修正,获得修正后的第二边界信息。
在本步骤中,在检测到第二按钮触发的完成命令时,从第二显示窗口中检测出修正后的第二边界框,获取修正后的第二边界框的边界信息,得到修正后的第二边界信息。
此时第二显示窗口中的第二图片存在修正后的第二边界框,修正后的第二边界框包括完整的目标。可选的,获取位于第二显示窗口中的第二图片,可以将该第二图片作为粗标注模型训练图片并保存到新的粗标注模型训练集中,或,将该第二图片作为精标注模型训练图片并保存到新的精标注模型训练集中。
502:根据第一边界信息和修正后的第二边界信息对样本图片进行重新标注,获得重新标注后的样本图片。
可选的,在新的粗标注模型训练集中的粗标注模型训练图片的数目达到第一数目阈值时,可以使用新的粗标注模型二次训练集训练粗标注模型,以提高粗标注模型的精度。
可选的,在新的精标注模型训练集中的精标注模型训练图片的数目达到第二数目阈值时,可以使用新的精标注模型训练集二次训练精标注模型,以提高精标注模型的精度。
在本申请实施例中,训练出粗标注模型和精标注模型,这样在标注样本图片时,根据样本图片和粗标注模型确定样本图片中包括目标的第一区域,获取第一边界信息,第一边界信息指示第一图片中的第一区域的位置,根据第一边界信息从标注图片获取第二图片。由于第二图片中的图像内容远小于整个样本图片的内容,所以根据第二图片和精标注模型在第二图片中检测的第二边界框更接近于目标,从而提高获取的第二边界信息的精度,根据第一边界信息和第二边界信息对样本图片进行标注,得到标注后的样本图片,提高了标注精度。由于使用精标注模型和精标注模型就可以实现对样本图片进行自动标注,提高标注效率,节省了人力成本。
参见图13,本申请实施例提供了一种图片标注的装置600,所述装置600可以用于执行上述任一实施例的方法,包括:获取模块601和处理模块602;
所述获取模块601,用于获取第一图片;
所述处理模块602,用于根据第一图片和第一图片标注模型,获得第一边界信息,第一边界信息指示第一图片中的第一区域的位置,第一区域中包含第一图片中待标注的目标;
处理模块602,还用于根据第一图片和第一边界信息,获得第二图片,第二图片为第一图片中第一区域的内容;
处理模块602,还用于根据第二图片和第二图片标注模型,获得第二边界信息,第二边界信息指示第二图片中的第二区域的位置,第二区域中也包括该目标;
处理模块602,还用于根据第一边界信息、第二图片和第二边界信息对第一图片进行标注,获得标注后的第一图片,在标注后的所述第一图片中,该目标被标注。
参见图14,该装置600还包括:
显示模块603,用于根据第一边界信息,在第一图片中确定第一边界框,将第一图片和第一边界框显示在GUI上;根据第二边界信息,在第二图片中确定第二边界框,将第二图片和第二边界框显示在该GUI上。
可选的,处理模块602,还用于:
根据用户通过该GUI对第二图片中第二边界框的位置的修正,获得修正后的第二边界信息;
根据第一边界信息、第二图片和修正后的第二边界信息对第一图片进行重新标注,获得重新标注后的所述第一图片。
可选的,处理模块602,还用于根据用户通过该GUI对第一图片中第一边界框的位置的修正,获得修正后的第一边界信息;根据修正后的第一边界信息和第一图片获得第三图片;根据第三图片和第二图片标注模型,获得第三边界信息,第三边界信息指示第三图片中的第三区域的位置,第三区域中也包括该目标;
可选的,处理模块602,还用于根据修正后的第一边界信息、第三图片和第三边界信息对第一图片进行二次标注,获得二次标注后的第一图片。
可选的,处理模块602,用于:
对第一图片进行预处理,获得多个子图片,每个子图片为第一图片中的一部分内容;
输入该多个子图片至第一图片标注模型,获得该多个子图片的类别,其中,第一图片标注模型为经过训练后的AI分类模型;
对于该多个子图片中类别为正样本的子图片,确定类别为正样本的子图片在第一图片中的位置,获得第一边界信息。
可选的,处理模块602,用于:
输入第一图片至第一图片标注模型,其中第一图片标注模型为经过训练后的AI检测模型;
根据第一图片标注模型对第一图片中的所述目标进行检测,获得第一边界信息。
可选的,处理模块602,用于:
输入第二图片至第二图片标注模型,其中,第二图片标注模型为经过训练后的AI检测模型;
根据第二图片标注模型对第二图片中的目标进行检测,获得第二边界信息。
可选的,该装置600还可以包括训练模块604;
训练模块604用于构建粗标注模型训练集,粗标注模型训练集中包括多个粗标注训练图片,使用粗标注模型训练集训练第一图片标注模型;以及,构建精标注模型训练集,精标注模型训练集中包括多个精标注训练图片,使用精标注模型训练集训练第二图片标注模型。
在本申请实施例中,获取模块获取第一图片,处理模块根据样本图片和粗标注模型确定样本图片中包括目标的第一区域,获取第一边界信息,第一边界信息指示第一图片中的第一区域的位置,根据第一边界信息从标注图片获取第二图片。由于第二图片中的图像内容远小于整个样本图片的内容,所以处理模块根据第二图片和精标注模型在第二图片中检测的第二边界框更接近于目标,从而提高获取的第二边界信息的精度,这样处理模块再根据第一边界信息和第二边界信息对样本图片进行标注,得到标注后的样本图片,提高了标注精度。由于使用精标注模型和精标注模型就可以实现对样本图片进行自动标注,提高标注效率,节省了人力成本。
参见图15,图15所示为本申请实施例提供的一种图片标注的计算设备700示意图。该装置700包括至少一个处理器701,总线***702、存储器703和显示器704。
该装置700是一种硬件结构的装置,可以用于实现图13或图14所述的装置中的功能模块。例如,本领域技术人员可以想到图13或14所示的装置600中的获取模块601、处理模块602和训练模块604的功能可以通过该至少一个处理器701调用存储器703中的代码来实现,以及图14所示的装置600中的显示模块603可以通过显示器704来实现。
可选的,上述处理器701可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线***702可包括一通路,在上述组件之间传送信息。
上述存储器703可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器703用于存储执行本申请方案的应用程序代码,并由处理器701来控制执行。处理器701用于执行存储器703中存储的应用程序代码,从而实现本专利方法中的功能。
在具体实现中,作为一种实施例,处理器701可以包括一个或多个CPU,例如图15中的CPU0和CPU1。
在具体实现中,作为一种实施例,该装置700可以包括多个处理器,例如图15中的处理器701和处理器707。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
可选的,显示器704可以通过总线***702与至少一个处理器701和存储器703相连,该显示器704可以用于显示数据,例如,可以用于显示第一图片和第一图片中的第一边界框,显示第二图像和位于第二图像中的第二边界框等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请一个实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种图片标注的方法,其特征在于,所述方法包括:
获取第一图片,所述第一图片包括待标注的目标;
对所述第一图片进行预处理,获得多个子图片和每个子图片在所述第一图片中的边界信息,所述每个子图片为所述第一图片中的一部分内容,所述多个子图片中存在包括所述目标的子图片和不包括所述目标的子图片;
输入所述多个子图片至第一图片标注模型,获得所述多个子图片的类别,其中,所述第一图片标注模型为经过训练后的人工智能AI分类模型;
对于所述多个子图片中类别为正样本的子图片,所述正样本的子图片包括所述目标,将所述类别为正样本的子图片的边界信息确定为第一边界信息;
根据所述第一图片和所述第一边界信息,获得第二图片,所述第二图片为所述第一图片中所述正样本的子图片的内容;
根据所述第二图片和第二图片标注模型,获得第二边界信息,所述第二边界信息指示所述第二图片中的第二区域的位置,所述第二区域中也包括所述目标;
根据所述第一边界信息和所述第二边界信息对所述第一图片进行标注,获得标注后的所述第一图片,在所述标注后的所述第一图片中,所述目标被标注。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述第一边界信息,在所述第一图片中确定第一边界框,将所述第一图片和所述第一边界框显示在图形用户界面GUI上;
根据所述第二边界信息,在所述第二图片中确定第二边界框,将所述第二图片和所述第二边界框显示在所述GUI上。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
根据用户通过所述GUI对所述第二图片中所述第二边界框的位置的修正,获得修正后的第二边界信息;
根据所述第一边界信息和所述修正后的第二边界信息对所述第一图片进行重新标注,获得重新标注后的所述第一图片。
4.如权利要求2或3所述的方法,其特征在于,所述方法还包括:
根据所述用户通过所述GUI对所述第一图片中所述第一边界框的位置的修正,获得修正后的第一边界信息;
根据所述修正后的第一边界信息和所述第一图片获得第三图片;
根据所述第三图片和第二图片标注模型,获得第三边界信息,所述第三边界信息指示所述第三图片中的第三区域的位置,所述第三区域中也包括所述目标;
根据所述修正后的第一边界信息和所述第三边界信息对所述第一图片进行二次标注,获得二次标注后的所述第一图片。
5.如权利要求1-3任一项所述的方法,其特征在于,所述根据所述第一图片和第一图片标注模型,获得第一边界信息,具体包括:
输入所述第一图片至所述第一图片标注模型,其中所述第一图片标注模型为经过训练后的人工智能AI检测模型;
根据所述第一图片标注模型对所述第一图片中的所述目标进行检测,获得所述第一边界信息。
6.如权利要求1-3任一项所述的方法,其特征在于,所述根据所述第二图片和第二图片标注模型,获得第二边界信息,具体包括:
输入所述第二图片至第二图片标注模型,其中,所述第二图片标注模型为经过训练后的人工智能AI检测模型;
根据所述第二图片标注模型对所述第二图片中的所述目标进行检测,获得所述第二边界信息。
7.一种图片标注的装置,其特征在于,所述装置包括:获取模块和处理模块;
所述获取模块,用于获取第一图片,所述第一图片包括待标注的目标;
所述处理模块,还用于对所述第一图片进行预处理,获得多个子图片和每个子图片在所述第一图片中的边界信息,所述每个子图片为所述第一图片中的一部分内容,所述多个子图片中存在包括所述目标的子图片和不包括所述目标的子图片;输入所述多个子图片至第一图片标注模型,获得所述多个子图片的类别,其中,所述第一图片标注模型为经过训练后的人工智能AI分类模型;对于所述多个子图片中类别为正样本的子图片,所述正样本的子图片包括所述目标,将所述类别为正样本的子图片的边界信息确定为第一边界信息;
所述处理模块,还用于根据所述第一图片和所述第一边界信息,获得第二图片,所述第二图片为所述第一图片中所述正样本的子图片的内容;
所述处理模块,还用于根据所述第二图片和第二图片标注模型,获得第二边界信息,所述第二边界信息指示所述第二图片中的第二区域的位置,所述第二区域中也包括所述目标;
所述处理模块,还用于根据所述第一边界信息和所述第二边界信息对所述第一图片进行标注,获得标注后的所述第一图片,在所述标注后的所述第一图片中,所述目标被标注。
8.如权利要求7所述的装置,其特征在于,所述装置还包括:
显示模块,用于根据所述第一边界信息,在所述第一图片中确定第一边界框,将所述第一图片和所述第一边界框显示在图形用户界面GUI上;根据所述第二边界信息,在所述第二图片中确定第二边界框,将所述第二图片和所述第二边界框显示在所述GUI上。
9.如权利要求8所述的装置,其特征在于,所述处理模块,还用于:
根据用户通过所述GUI对所述第二图片中所述第二边界框的位置的修正,获得修正后的第二边界信息;
根据所述第一边界信息和所述修正后的第二边界信息对所述第一图片进行重新标注,获得重新标注后的所述第一图片。
10.如权利要求8或9所述的装置,其特征在于,
所述处理模块,还用于根据所述用户通过所述GUI对所述第一图片中所述第一边界框的位置的修正,获得修正后的第一边界信息;根据所述修正后的第一边界信息和所述第一图片获得第三图片;根据所述第三图片和第二图片标注模型,获得第三边界信息,所述第三边界信息指示所述第三图片中的第三区域的位置,所述第三区域中也包括所述目标;
所述处理模块,还用于根据所述修正后的第一边界信息和所述第三边界信息对所述第一图片进行二次标注,获得二次标注后的所述第一图片。
11.如权利要求7-9任一项所述的装置,其特征在于,所述处理模块,用于:
输入所述第一图片至所述第一图片标注模型,其中所述第一图片标注模型为经过训练后的人工智能AI检测模型;
根据所述第一图片标注模型对所述第一图片中的所述目标进行检测,获得所述第一边界信息。
12.如权利要求7-9任一项所述的装置,其特征在于,所述处理模块,用于:
输入所述第二图片至第二图片标注模型,其中,所述第二图片标注模型为经过训练后的人工智能AI检测模型;
根据所述第二图片标注模型对所述第二图片中的所述目标进行检测,获得所述第二边界信息。
13.一种计算设备,其特征在于,所述计算设备包括:处理器和存储器,所述存储器存储有一个或多个程序,所述处理器执行所述一个或多个程序以执行前述权利要求1-6任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令被计算机执行时,所述计算机执行前述权利要求1-6任一项所述的方法。
15.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被计算机执行时,实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910854370.4A CN110737785B (zh) | 2019-09-10 | 2019-09-10 | 一种图片标注的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910854370.4A CN110737785B (zh) | 2019-09-10 | 2019-09-10 | 一种图片标注的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110737785A CN110737785A (zh) | 2020-01-31 |
CN110737785B true CN110737785B (zh) | 2022-11-08 |
Family
ID=69267830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910854370.4A Active CN110737785B (zh) | 2019-09-10 | 2019-09-10 | 一种图片标注的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110737785B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113971627B (zh) * | 2020-07-23 | 2023-07-18 | 华为技术有限公司 | 一种车牌图片生成方法及装置 |
CN112328822B (zh) * | 2020-10-15 | 2024-04-02 | 深圳市优必选科技股份有限公司 | 图片预标注方法、装置及终端设备 |
CN113010069A (zh) * | 2021-03-12 | 2021-06-22 | 浙江大华技术股份有限公司 | 图片标注的切换方法、设备、电子装置和存储介质 |
CN113435447B (zh) * | 2021-07-26 | 2023-08-04 | 杭州海康威视数字技术股份有限公司 | 图像标注方法、装置及图像标注*** |
CN115291992B (zh) * | 2022-07-28 | 2023-12-05 | 上海弘玑信息技术有限公司 | 图形用户界面图片辅助标注方法、电子设备及储存介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2289024A1 (en) * | 2008-04-22 | 2011-03-02 | TÜBITAK Türkiye Bilimsel ve Teknolojik Arastirma Kurumu | Method for automatic region segmentation on cartridge case base and selection of the best mark region for cartridge case comparison |
CN109002846A (zh) * | 2018-07-04 | 2018-12-14 | 腾讯科技(深圳)有限公司 | 一种图像识别方法、装置和存储介质 |
CN109697397A (zh) * | 2017-10-24 | 2019-04-30 | 高德软件有限公司 | 一种目标检测方法及装置 |
CN110119737A (zh) * | 2018-02-07 | 2019-08-13 | 高德软件有限公司 | 一种目标检测方法及装置 |
-
2019
- 2019-09-10 CN CN201910854370.4A patent/CN110737785B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2289024A1 (en) * | 2008-04-22 | 2011-03-02 | TÜBITAK Türkiye Bilimsel ve Teknolojik Arastirma Kurumu | Method for automatic region segmentation on cartridge case base and selection of the best mark region for cartridge case comparison |
CN109697397A (zh) * | 2017-10-24 | 2019-04-30 | 高德软件有限公司 | 一种目标检测方法及装置 |
CN110119737A (zh) * | 2018-02-07 | 2019-08-13 | 高德软件有限公司 | 一种目标检测方法及装置 |
CN109002846A (zh) * | 2018-07-04 | 2018-12-14 | 腾讯科技(深圳)有限公司 | 一种图像识别方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110737785A (zh) | 2020-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110737785B (zh) | 一种图片标注的方法及装置 | |
CN108229397B (zh) | 基于Faster R-CNN的图像中文本检测方法 | |
CN111428723B (zh) | 字符识别方法及装置、电子设备、存储介质 | |
CN109409398B (zh) | 图像处理装置、图像处理方法以及存储介质 | |
KR101896357B1 (ko) | 객체를 검출하는 방법, 디바이스 및 프로그램 | |
US8019164B2 (en) | Apparatus, method and program product for matching with a template | |
EP3879450A1 (en) | Text recognition method and terminal device | |
KR102114367B1 (ko) | 객체 영역 추출을 수행하는 인공 신경망을 위한 학습 데이터를 생성하는 방법 및 장치 | |
CN105144239A (zh) | 图像处理装置、程序及图像处理方法 | |
CN111523390B (zh) | 一种图像识别的方法及增强现实ar图标识别的*** | |
CN110599453A (zh) | 一种基于图像融合的面板缺陷检测方法、装置及设备终端 | |
US20230137337A1 (en) | Enhanced machine learning model for joint detection and multi person pose estimation | |
Uddin et al. | Horse detection using haar like features | |
CN111738036A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN114330234A (zh) | 版面结构分析方法、装置、电子设备和存储介质 | |
WO2019045101A1 (ja) | 画像処理装置及びプログラム | |
CN113780116A (zh) | ***分类方法、装置、计算机设备和存储介质 | |
CN110874170A (zh) | 一种图像区域修正方法、图像分割方法及装置 | |
CN113076972A (zh) | 一种基于深度学习的两阶段Logo图像检测方法及*** | |
CN111767919A (zh) | 一种多层双向特征提取与融合的目标检测方法 | |
CN114529852A (zh) | 一种基于视频数据的遗留物检测分析方法 | |
CN114743045A (zh) | 一种基于双分支区域建议网络的小样本目标检测方法 | |
CN112183253A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN113420664B (zh) | 基于图像的安全隐患检测方法及装置、设备及存储介质 | |
CN112307908B (zh) | 一种视频语义提取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |