CN116935268A - 视频目标检测数据主区域标注方法、装置、设备及介质 - Google Patents
视频目标检测数据主区域标注方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN116935268A CN116935268A CN202310754541.2A CN202310754541A CN116935268A CN 116935268 A CN116935268 A CN 116935268A CN 202310754541 A CN202310754541 A CN 202310754541A CN 116935268 A CN116935268 A CN 116935268A
- Authority
- CN
- China
- Prior art keywords
- frame
- labeling
- target
- sub
- marking
- 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.)
- Pending
Links
- 238000002372 labelling Methods 0.000 title claims abstract description 318
- 238000001514 detection method Methods 0.000 title claims abstract description 114
- 238000000034 method Methods 0.000 claims abstract description 94
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 72
- 238000007781 pre-processing Methods 0.000 claims abstract description 30
- 230000001502 supplementing effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 52
- 230000000694 effects Effects 0.000 description 9
- 238000013136 deep learning model Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000008676 import Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000007547 defect Effects 0.000 description 4
- 239000013589 supplement Substances 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000002950 deficient Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及图像识别技术领域,公开了一种视频目标检测数据主区域标注方法、装置、设备及介质。该方法包括视频文件预处理,获得若干子帧图片序列和帧目标信息;根据子帧图片序列和帧目标信息标注目标类型和目标矩形框获得第一标注结果;在子帧图片序列中逐帧判断是否存在目标矩形框;在不存在目标矩形框时,基于预设无监督跟踪算法对子帧图片序列进行标注获得第二标注结果;将第一标注结果和第二标注结果作为主区域标注结果。本发明中,对视频文件预处理实现预标注,导入子帧图片序列和帧目标信息,诸帧查漏补缺,对于漏掉的目标类型,结合预设无监督跟踪算法进行自动标注,以加快标注速度实现在比较清晰、大目标图像上的准确高效标注。
Description
技术领域
本发明涉及图像识别技术领域,尤其涉及一种视频目标检测数据主区域标注方法、装置、设备及介质。
背景技术
在图像目标检测领域,深度学习技术已经取得统治性地位,在各种图像识别竞赛中一骑绝尘。但是,在实际应用过程中,要想训练好一个精度够高的深度学习模型,需要大量人工标注好的图像数据,这个过程需要耗费巨大的人力、物力和财力,以计算机视觉中被认为具有里程碑意义的ImageNet数据集为例,该数据集拥有千万张标注图片,大部分是由众包平台Mechanical Turk上50000名用户耗时两年完成的。但在实际行业应用,比如“智慧城市”行业领域,应用领域中场景需求复杂多变,对于每一个具体的AI任务不可能标注一个大规模的数据集。数据标注难、标注成本高、标注数据匮乏已成为人工智能技术发展和应用亟需解决的瓶颈难题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种视频目标检测数据主区域标注方法、装置、设备及介质,旨在解决现有图像目标检测领域的数据集存在数据标注效率低、标注成本高、标注数据匮乏的技术问题。
为实现上述目的,本发明提供了一种视频目标检测数据主区域标注方法,包括:
对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
将所述第一标注结果和第二标注结果作为主区域标注结果。
在一些实施例中,所述在所述子帧图片序列中逐帧判断是否存在所述目标矩形框,包括:
从所述目标类型中确定具体目标;
基于所述具体目标在所述子帧图片序列中逐帧跟踪轨迹;
在所述子帧图片序列中缺失所述具体目标的标注信息时,确定所述子帧图片序列中对应的缺失信息帧不存在所述目标矩形框。
在一些实施例中,所述基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果,包括:
基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果。
在一些实施例中,所述基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果,包括:
基于所述具体目标在所述缺失信息帧中补充标注目标矩形框,并记录所述补充标注的目标矩形框对应的标注区域;
根据预设无监督跟踪算法以所述标注区域为待匹配对象在所述子帧图片序列中逐帧跟踪,直至匹配成功得到匹配结果;其中,所述匹配结果包括标注结果矩形框;
根据预设无监督跟踪算法以所述标注结果矩形框为待匹配对象在所述子帧图片序列中逐帧跟踪,得到更新标注结果;
将所述子帧图片序列中所有帧的所述匹配结果和更新标注结果作为第二标注结果。
在一些实施例中,所述方法还包括:
设置预设自动跟踪距离;
执行根据预设无监督跟踪算法在所述子帧图片序列中逐帧跟踪时,当跟踪帧数超过所述预设自动跟踪距离时,构建更新后的矩形框;
根据预设无监督跟踪算法在所述子帧图片序列中以所述更新后的矩形框作为待匹配对象逐帧跟踪。
在一些实施例中,所述对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息,包括:
对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息;
基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列。
在一些实施例中,所述方法还包括:
对所述子帧图片序列的ROI区域和帧目标信息进行标注,以获得ROI标注结果;
基于预设合并算法将所述主区域标注结果和ROI标注结果进行合并,以获得目标标注结果。
此外,为实现上述目的,本发明还提出一种视频目标检测数据主区域标注装置,包括:
预处理模块,用于对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
第一标注模块,用于根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
判断模块,用于在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
第二标注模块,用于在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
主区域标注模块,用于将所述第一标注结果和第二标注结果作为主区域标注结果。
此外,为实现上述目的,本发明还提出一种视频目标检测数据主区域标注设备,所述视频目标检测数据主区域标注设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的视频目标检测数据主区域标注程序,所述视频目标检测数据主区域标注程序配置为实现如上述实施例所述的视频目标检测数据主区域标注方法。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质存储有视频目标检测数据主区域标注程序,所述视频目标检测数据主区域标注程序用于使处理器执行时实现如上述实施例所述的视频目标检测数据主区域标注方法。
本发明提供了一种视频目标检测数据主区域标注方法,包括:对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;将所述第一标注结果和第二标注结果作为主区域标注结果。本发明中,对视频文件进行预处理实现预标注,标注工具导入子帧图片序列和子文本文件(包括帧目标信息),在子帧图片序列上诸帧查漏补缺,对于漏掉的目标类型,结合预设无监督跟踪算法进行自动标注,以加快标注速度,实现在比较清晰、大目标图像上的准确高效标注。从而解决了现有图像目标检测领域的数据集存在数据标注效率低、标注成本高、标注数据匮乏的技术问题。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的视频目标检测数据主区域标注设备的结构示意图;
图2为本发明视频目标检测数据主区域标注方法第一实施例的流程示意图;
图3为本发明视频目标检测数据主区域标注方法中视频切片的示意图;
图4为本发明视频目标检测数据主区域标注方法中主区域标注的示意图;
图5为本发明视频目标检测数据主区域标注方法第二实施例的流程示意图;
图6为本发明视频目标检测数据主区域标注方法中ROI标注第一示意图;
图7为本发明视频目标检测数据主区域标注方法中ROI标注第二示意图;
图8为本发明视频目标检测数据主区域标注装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当人认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的视频目标检测数据主区域标注设备结构示意图。
如图1所示,该视频目标检测数据主区域标注设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,Wi-Fi)接口))。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM存储器),也可以是稳定的非易失性存储器(Non-VolatileMemory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对视频目标检测数据主区域标注设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及视频目标检测数据主区域标注程序。
在图1所示的视频目标检测数据主区域标注设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明视频目标检测数据主区域标注设备中的处理器1001、存储器1005可以设置在视频目标检测数据主区域标注设备中,所述视频目标检测数据主区域标注设备通过处理器1001调用存储器1005中存储的视频目标检测数据主区域标注程序,并执行本发明实施例提供的视频目标检测数据主区域标注方法。
常见目标检测标注方法或者工具中,有如下几种典型类型。第一,Labelme/LabemImg,开源标注工具,这两者功能类似都可以对图片进行矩形框目标标注,简单易用,但是不能处理视频且没有智能标注功能,需要采用全手动标注方式,比较费时费力,当目标特别密集或者小时标注也会非常困难。
第二,DarkLabel,闭源多目标标注工具,可以对图片/视频进行标注,具备一定的自动跟踪目标功能,包括插值法,例如在相隔一定距离的两帧上分别标注好目标,中间没有标注的帧上目标用插值的方式实现矩形追踪,但是效果不太准确,以及robust/accurate模式追踪,robust模式不太准确只能追踪3至5帧左右就误差非常大,accurate模式对刚体/形变比较小的目标追踪效果比较好,对形变比较大的目标(比如行人走路等)追踪效果不是很好,除此之外,DarkLabel对视频的支持性能不好,较大的视频文件基本无法处理和不容易实现精确的帧定位,也不能导入预设的深度学习模型。
第三,CVAT,一款开源的基于网络的交互式视频/图像标注工具,B/S模式,智能标注方面支持关键帧之间的边界框插值以及使用TensorFlow ODAPI和Intel OpenVINO IR格式的深度学习模型的自动标注,但是只能在chrome上使用决定了该工具在复杂多目标标注时必然会存在性能问题,对训练模型框架的要求会进一步限制其使用。
第四,各种利用预设深度学习模型实现自动化标注例如先小批量标注一批训练得到模型,再应用到标注过程,加速标注过程,基于预设深度学习模型标注在目标检测领域常规情况(例如目标尺寸比较大、环境背景比较清晰)下效果较好,但比较难解决两种情况下的识别问题:a)小目标的识别,以城市监控典型分辨率1080p视频为例,当行人目标高度缩小到64至128像素左右时,大部分深度学习行人检测模型都会失效和无法识别,而在部分智慧城市或者其他行业场景中小目标的识别是比较重要的不能轻易忽略或者漏掉的,此时纯人工标注就成了唯一选择,但完全人工每帧标注的工作量在视频业务中是不可承受的;b)一些需要完全从零开始训练的特殊目标类型,意味着在使用模型之前,还是有一个纯人工标注过程,在视频业务中同样会拖累标注进程。
鉴于上述问题,本发明实施例提供了一种视频目标检测数据主区域标注方法,参照图2,图2为本发明一种视频目标检测数据主区域标注方法第一实施例的流程示意图。
如图2所示,所述视频目标检测数据主区域标注方法,包括:
S10:对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
S20:根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
S30:在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
S40:在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
S50:将所述第一标注结果和第二标注结果作为主区域标注结果。
需要说明的是,本实施例中的执行主体可为视频目标检测数据主区域标注设备,该视频目标检测数据主区域标注设备可为具有数据处理功能的计算机设备,还可为其他可实现相同或相似功能的设备,本实施例对此不作限制,在本实施例中,以计算机设备为例进行说明。可以理解的是,图像识别涉及范围较大,包括图像分割、图像检测、图像跟踪、图像匹配等,本实施例提供了一种视频目标检测数据主区域标注方法,主要涉及目标检测与跟踪领域内的标注方法,例如给出目标的矩形框位置以及所属类别、在视频序列中持续跟踪该目标等。
示例性地,步骤S10包括:对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息;基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列。
在一示例中,对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息的过程,可以包括:判断是否存在预设视频目标检测模型;在存在所述预设视频目标检测模型时,调用所述预设视频目标检测模型;基于所述预设视频目标检测模型对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的目标类型、目标ID以及目标矩形框坐标;存储所述目标类型、目标ID以及目标矩形框坐标为所述帧图片对应的帧目标信息。
具体地,可以利用预设视频目标检测模型对视频文件进行预处理,导出每帧为图片以及对应的帧目标信息,帧目标信息包括以帧为单位导出的目标检测类型和检测矩形框坐标数据等,保存到文本文件。其中,预设视频目标检测模型包括但不限于开源或者自训练深度学习模型。
示例性地,如果存在已经训练好的需要标注的目标类型的目标检测模型(例如开源模型等),将其作为预设视频目标检测模型,部署该预设视频目标检测模型预测服务,对视频文件以帧为单位进行预测,导出每帧为图片以及对应的帧目标信息,其中,每一帧的帧目标信息输出结果包括目标类型、目标ID以及目标矩形框坐标(x,y,w,h)。在一示例中,将视频每一帧导出为图片,每一帧的输出结果(帧目标信息)写入到同名文本文件,目录保存层次为:dir/图片路径;dir/in/文本文件路径。可以理解的是,如果不存在所述预设视频目标检测模型,输出为空即可。
在一示例中,基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列的过程,可以包括:设定预设切片时间长度;基于所述预设切片时间长度对所述帧图片进行切片,分成多个子帧图片序列。
示例性地,对导出的帧图片序列按一定长度单位进行切片,分成多个子帧图片序列,并将相应的目标类型、坐标数据等导出到子文本文件。其中,基于所述预设切片时间长度对所述帧图片进行切片,分成多个子帧图片序列的过程,可以包括:根据所述视频文件的视频时长和所述预设切片时间长度确定切片数量;根据所述视频文件的视频帧率和所述视频时长确定每一所述切片的帧数目;从第一帧开始间隔所述帧数目生成一个切片序列,以获得若干子帧图片序列;存储所述子帧图片序列和所述子帧图片序列对应的帧目标信息。
具体地,视频切片,对预处理得到的图片序列结果按照一定时间单位进行分片,每个分片可作为一个标注任务的基本单位。设定预设切片时间长度为sliceT,若视频时长为T,则切片数量为N=T/(sliceT),每个切片的帧数目为frameNums≤(sliceT)*fps,fps为视频帧率。对于每个视频结果导出目录dir,从第一帧开始每隔frameNums帧生成一个切片序列(子帧图片序列),将frameNums张图片拷贝到新子目录中,同时将对应的帧输出结果的文本文件拷贝到相同子目录中,目录层次为:newDir/图片路径,newDir/in/文本文件路径,每个新子目录newDir包含frameNums张图片以及相同数目的同名文本文件,最后一个切片(子帧图片序列)中的图片和文本文件数目可能小于帧数目frameNums。统计整个视频导出结果dir中目标类别数目K、每个类别中目标ID的最大值为maxID(i),i=0至K-1。
具体地,当没有选定ROI区域时,记为主区域标注模式。在主区域标注模式下,对分片后的子帧图片序列和帧目标信息进行主区域标注。在主区域标注模式下,可以采用预设无监督跟踪算法例如非监督目标匹配算法实现半自动化标注和目标跟踪。可以理解的是,主区域标注主要应用在比较清晰、大目标的标注上面,目标尺寸要求大于150*200,具体的目标尺寸要求可根据实际需要设定以人眼比较容易观察和标注为准进行设置,本实施例对此并不加以限制。
示例性地,标注工具导入子帧图片序列和子文本文件(包括帧目标信息),在GUI窗口显示相应的目标类型和目标矩形框,在子帧图片序列上诸帧查漏补缺,对于漏掉的目标类型,可以进行手工标注。例如,对于需要手工标注的目标类型,可以基于无监督目标检测算法设定合适的自动检测帧数进行自动标注,以加快标注速度。
在一示例中,所述在所述子帧图片序列中逐帧判断是否存在所述目标矩形框,包括:从所述目标类型中确定具体目标;基于所述具体目标在所述子帧图片序列中逐帧跟踪轨迹;在所述子帧图片序列中缺失所述具体目标的标注信息时,确定所述子帧图片序列中对应的缺失信息帧不存在所述目标矩形框。
在一示例中,所述基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果,包括:基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果。
在一示例中,所述基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果,包括:基于所述具体目标在所述缺失信息帧中补充标注目标矩形框,并记录所述补充标注的目标矩形框对应的标注区域;根据预设无监督跟踪算法以所述标注区域为待匹配对象在所述子帧图片序列中逐帧跟踪,直至匹配成功得到匹配结果;其中,所述匹配结果包括标注结果矩形框;根据预设无监督跟踪算法以所述标注结果矩形框为待匹配对象在所述子帧图片序列中逐帧跟踪,得到更新标注结果;将所述子帧图片序列中所有帧的所述匹配结果和更新标注结果作为第二标注结果。
在一示例中,所述方法还包括:设置预设自动跟踪距离;执行根据预设无监督跟踪算法在所述子帧图片序列中逐帧跟踪时,当跟踪帧数超过所述预设自动跟踪距离时,构建更新后的矩形框;根据预设无监督跟踪算法在所述子帧图片序列中以所述更新后的矩形框作为待匹配对象逐帧跟踪。
示例性地,导入单个分片图片序列即子帧图片序列以及对应的预处理的帧目标信息(目标类别、目标ID、目标矩形框(x,y,w,h),其中目标类别数目K、每个类别中目标ID的最大值maxID(i),i=0至K-1;在标注界面上单张图片上显示每个目标的目标类别和目标OD,以及目标矩形框。选定一个具体目标,持续按帧跟踪其轨迹:如果已存在该目标导入坐标信息,根据子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果,查漏补缺即可。不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,即对于缺失的没有导入信息的帧进行标注补充,以获得第二标注结果。
在一示例中,具体标注补充的过程如下:从缺失标注信息的帧开始,记为第i帧,手工画出该帧的目标矩形框,目标矩形框的标注区域记为R(x1,y1,x2,y2),设定合适的自动跟踪距离(帧数)D,基于预设无监督跟踪算法(例如采用非监督图像匹配算法)以R为待匹配对象在第i+1帧进行搜索。需要说明的是,为提高搜索精度和效率,具体的搜索区域可设为S(x1-deltaX,y1-deltaY,x2+deltaX,y2+deltaY),其中,deltaX,deltaY为在原矩形基础上放大的搜索距离,可根据实际情况自行设定本实施例对此并不加以限制。第i+1帧匹配到目标区域时,结果记为R1,将R1设定为待匹配对象,重复上述过程,直到第i+D帧。可以理解的是,根据不同的场景和算法适应性,可选择不同的图像匹配算法作为预设无监督跟踪算法,本实施例对此并不加以限制。
需要说明的是,具体的微调过程:对i+1至i+D之间自动匹配生成的结果根据情况进行手工微调,微调后的结果记为M(x1,y1,x2,y2),其中,i=1至D,M记为目标最终标注矩形区域结果,目标类别与目标ID分别和第i帧的目标类别和目标相同。
在一示例中,对于完全没有导入坐标的目标类型,记为完全新目标类别,具体的目标ID生成规则可以包括:记视频文件预处理步骤中该视频目标最大ID值为maxID(i),其中,i为该目标类别,每个视频切片的新生成ID初始值newID=maxID(i)+a(j),其中,j=0至N-1,N为该视频切片的数目,a(j)为正整数且要求a(j+1)和a(j)之间保持足够大的距离,保证切片之间新生成的ID不互相冲突;后续新ID的生成=newID+1。需要说明的是,完全新目标类别的坐标标注过程参考上述具体标注补充的过程和微调过程,此处不再赘述。
具体地,本实施例以智慧城市中行人数据标注为具体场景为例进行说明,标注行人目标最小尺寸可以为32*64像素,待标注的视频文件的视频时长单位为半小时(1800秒,帧率25帧)。行人包括普通行人(类别0),骑车类型行人(自行车、三轮车、机动车等,类别1),要求标注结果给出所有行人的类别Cls、行人ID、行人位置矩形坐标(x1,y1,x2,y2)。对于骑车类型行人,要求矩形框全部完整包住人和车。
具体场景:行人目标稀疏场景(小于5人每帧),无小目标,无自行车行人。具体处理步骤如下:在百度开源PPHuman基础上修改和部署行人检测服务,输入为视频文件sample.mp4,导出目录为Dir,输出结果为视频帧图片以及每帧上检测出的行人目标数据(id、x1,y1,x2,y2)。其中,视频总帧数为1800*25=45000,输出格式为:Dir/1.jpg、Dir/2.jpg、Dir/3.jpg...Dir/45000.jpg以及Dir/in/1.txt、Dir/in/2.txt...Dir/in/45000.txt,其中,txt格式为:Cls、ID、(x1,x2,y1,y2),x1,x2,y1,y2为多行。类型值统一设为0,PPHuman没有类型细分的能力,待后续使用标注工具修改。统计所有txt文件中ID的最大值,假设为360。以10s为一个切片,对导出图片和文本结果进行分片。总共分片个数=1800/10=180,每个分片10*25=250帧。如图3所示,每个分片的分片新ID初始值用于生成新ID,例如,分片1初始值newID=500,分片2初始值newId=1000,...,每隔500递增,保证每个分片新生成的ID不会重复。
示例性地,开始标注:标注工具导入第一个分片(1~250帧以及1~250个txt文件),根据txt中预存的标注信息在屏幕显示区对应坐标上画矩形框和展示。由于预标注导入原因,大部分目标是不需要再标注的,只需要查漏补缺查找少部分没有矩形框的目标即可。对于没有矩形框的目标包括以下两种情况,一种情况是该目标完全没有被检测出来,此时需要生成新ID,ID=newID,同时newID=newID+1自增1,另一种情况是该目标部分帧被检测出来,此时不需要生成新ID,复用已经检测出来ID即可。
具体地,对于该目标矩形框的标注,假设第10至30帧之间没有矩形框。可采用模板匹配或SIFT等非监督目标匹配算法对目标实现跟踪。具体目标跟踪过程如图4所示:在第10帧上对该目标画矩形框,矩形框图像记为m,矩形区域记为b;在第11帧上对m进行匹配搜索,为加快搜索效率,搜索区域可对b进行向放外扩200个像素左右,得到的匹配结果为矩形框r;第11帧的标注结果矩形框记为r,ID和Cls类型值同第10帧;将模板更新为r,对12至30帧重复该匹配过程。需要说明的是,可根据跟踪效果的好坏设定一个跟踪帧数d,当跟踪帧数超过d时,重新开始画矩形框和重复上述目标跟踪过程。导出主区域标注结果:将所有帧的最终标注结果,导出到dir/out/中,格式如下:Dir/out/1.txt、Dir/out/2.txt...Dir/out/250.txt。对于稀疏场景的视频文件,导出主区域标注结果后,该主区域标注过程完毕。整个主区域标注过程只需要少量人工参与环节,对于需要人工参与的环节,由于跟踪距离d一般大于等于5,最高可到20左右,本实施例提出的主区域标注方式可至少提高5倍左右的数据标注效率。
可以理解的是,主区域标注主要应用在比较清晰、大目标的标注上面,目标尺寸要求大于150*200,具体的目标尺寸要求可根据实际需要设定以人眼比较容易观察和标注为准进行设置,本实施例对此并不加以限制。
本实施例通过根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;将所述第一标注结果和第二标注结果作为主区域标注结果。本实施例中,标注工具导入子帧图片序列和子文本文件(包括帧目标信息),在GUI窗口显示相应的目标类型和目标矩形框,在子帧图片序列上诸帧查漏补缺,对于漏掉的目标类型,可以进行手工标注。例如,对于需要手工标注的目标类型,可以基于无监督目标检测算法设定合适的自动检测帧数进行自动标注,以加快标注速度,实现在比较清晰、大目标图像上的准确高效标注。
在一实施例中,如图5所示,基于第一实施例提出本发明视频目标检测数据主区域标注方法第二实施例,所述方法还包括:
S60:对所述子帧图片序列的ROI区域和帧目标信息进行标注,以获得ROI标注结果;
S70:基于预设合并算法将所述主区域标注结果和ROI标注结果进行合并,以获得目标标注结果。
在一示例中,ROI标注包括:设定一定大小的小目标区域/密集目标区域为ROI区域,将ROI区域信息导出,导出的信息重新载入,经过图像放大,重复目标标注过程,保存的标注信息设定为ROI标注结果。其中,对于小目标/密集目标等人眼难以分辨和标注的区域,记为ROI区域。
在一示例中,对于小目标/密集目标等人眼难以分辨和标注的区域,记为ROI区域,具体地,对所述子帧图片序列的ROI区域和帧目标信息进行标注,以获得ROI标注结果的过程,示例性地,ROI标注过程:设定预设小目标区域,并将所述预设小目标区域作为所述子帧图片序列的ROI区域;基于所述帧目标信息获取所述ROI区域对应的ROI区域信息;根据所述子帧图片序列的ROI区域和ROI区域信息进行标注,以获得ROI标注结果。
具体地,当选定ROI区域时,记为ROI标注模式。在ROI标注模式下,对分片结果进行标注。ROI区域主要应用在小目标或者非常密集目标的标注上,需要说明的是,ROI标注模式下,需要对ROI区域进行放大后再标注。具体的ROI区域划分可根据实际需要以人眼比较难观察和标注为准进行设置,本实施例对此并不加以限制。
示例性地,对于特别小的目标区域,在图像上圈选合适的ROI区域例如ROI矩形区域,导出该ROI区域的坐标信息、长宽至ROI配置文件,ROI区域内的目标类型和处理变换后的矩形框坐标信息子文件导出至ROI子文件夹,ROI区域可以设置多个。标注工具导入ROI子文件夹,根据是否存在ROI配置文件决定采用ROI标注模式还是普通标注模式(例如主区域标注模式),对于ROI标注模式,将图像放大至合适大小,放大后进行数据标注,标注数据经过相应坐标变换后导出ROI标注结果到标注文件中。
具体地,对于单个分片序列(子帧图片序列),帧数为M,设主区域标注结果保存文件为R(j),j=0至M-1;ROI标注结果为S(k),k=0至n-1,n为ROI区域个数。R(j)、S(k)中保存标注结果格式为:Cls(目标类别)、ID(目标ID)、坐标(x1,y1,x2,y2)。所有R(j)和S(k)文件的命名,与该帧的名字相同。
具体地,从分片子帧图片序列的第一帧图像上选取一块矩形,该矩形包住小目标即可,根据目标多少和分布,可选取多个ROI区域,多个ROI区域分别记为Region(i)(x1,y1,x2,y2),其中,i=0至n-1,n为选取的ROI区域个数。
具体地,对于第j块ROI区域导出ROI信息。示例性地,导出Region(j)坐标:x1,y1,x2,y2到图片文件夹/ROI子目录中,记为roi.config(ROI配置文件)。根据Region(j)(x1,y1,x2,y2)以及视频预处理中的导入坐标信息,如果记录的某个目标Object(Cls,id,x,y,w,h)完全在Region(j)区域范围内:x>=x1,y>=y1,x+w-1<=x2,y+h-1<=y2,则将该Object信息继续导出到图片文件夹/ROI(j)/in子文件夹中。
具体地,ROI区域载入:当第j块ROI全部信息按上述第j块ROI区域导出ROI信息的过程导出时,标注工具重新载入图片文件夹/ROI(j)子目录,当检测到roi.config(ROI配置文件)时,当前标注模式记为ROI模式,区别于没有划定ROI区域时的普通标注模式。
具体地,ROI区域放大和显示:读取roi.config(ROI配置文件)(x1,y1,x2,y2)后,将对应原图片的ROI区域放大到图像显示区,放大过程包括:根据原图ROI区域坐标:x1,y1,x2,y2,w,h、原图像信息:W,H、屏幕显示区域:W,H以及/ROI/in子文件夹中的某个导出目标的类型和坐标数据Object(Cls,ID,xx1,yy1,xx2,yy2),可以转换得到Object在ROI区域载入后在屏幕上显示坐标:X1=x1*W/w、Y1=y1*H/h、X2=x2*W/w、Y2=y2*H/h。
具体地,在ROI区域放大和显示后执行ROI标注。需要说明的是,ROI标注步骤参考主区域标注过程,区别在于ROI标注结果的还原保存以及目标匹配时搜索的待匹配区域和待搜索区域大小计算。
示例性地,对于某个目标标注结果:屏幕坐标Q(X1,Y1,X2,Y2),保存标注结果时,实际保存的应该是该目标在屏幕坐标Q还原至原图像的标注坐标q,所以需要对屏幕坐标Q进行还原计算。可以理解的是,具体对屏幕坐标Q还原计算包括:在原图中对应的坐标q为:src_x1=X1/W*w+x1、src_y1=Y1/H*h+y1、Src_x2=X2/W*w+x1、Src+y2=Y2/H*h+y2。对于ROI区域图像匹配过程,待匹配图像为:屏幕上标注矩形Q(X1,Y1,X2,Y2);待搜索图像为:原图中该ROI区域放大到屏幕区(W,H)的图像T;匹配到结果Q1后,Q1需要还原,还原参考上述src_x1至src_y2的坐标还原过程。J=0至n-1,对于每个ROI区域,重复上述ROI标注过程,此处不再赘述。
本实施例以智慧城市中行人数据标注为具体场景为例进行说明,标注行人目标最小尺寸可以为32*64像素,待标注的视频文件的视频时长单位为半小时(1800秒,帧率25帧)。行人包括普通行人(类别0),骑车类型行人(自行车、三轮车、机动车等,类别1),要求标注结果给出所有行人的类别Cls、行人ID、行人位置矩形坐标(x1,y1,x2,y2)。对于骑车类型行人,要求矩形框全部完整包住人和车。
具体场景:行人目标正常密度(例如5至15个人每帧),有小目标,有自行车行人。在这个场景中,小目标行人由于像素值太小,人眼观察都比较困难,画矩形框误差也比较大,一般的深度学习模型检测也很难探测出来会降低标注效率。有鉴于此,本实施例引入ROI区域标注。PPHuman检测出的行人无法把车包括进来,人骑车类型需要废弃导入的预标注数据重新手工标注。
具体过程如下:在百度开源PPHuman基础上修改和部署行人检测服务,输入为视频文件sample.mp4,导出目录为Dir,输出结果为视频帧图片以及每帧上检测出的行人目标数据(id、x1,y1,x2,y2)。其中,视频总帧数为1800*25=45000,输出格式为:Dir/1.jpg、Dir/2.jpg、Dir/3.jpg...Dir/45000.jpg以及Dir/in/1.txt、Dir/in/2.txt...Dir/in/45000.txt,其中,txt格式为:Cls、ID、(x1,x2,y1,y2),x1,x2,y1,y2为多行。类型值统一设为0,PPHuman没有类型细分的能力,待后续使用标注工具修改。统计所有txt文件中ID的最大值,假设为360。以10s为一个切片,对导出图片和文本结果进行分片。总共分片个数=1800/10=180,每个分片10*25=250帧。如图3所示,每个分片的分片新ID初始值用于生成新ID,例如,分片1初始值newID=500,分片2初始值newId=1000,...,每隔500递增,保证每个分片新生成的ID不会重复。
示例性地,人骑车类型标注过程:标注工具导入第一个分片(1~250帧以及1~250个txt文件),根据txt中预存的标注信息在屏幕显示区对应坐标上画矩形框和展示。由于预标注导入原因,大部分目标是不需要再标注的,只需要查漏补缺查找少部分没有矩形框的目标即可。对于没有矩形框的目标包括以下两种情况,一种情况是该目标完全没有被检测出来,此时需要生成新ID,ID=newID,同时newID=newID+1自增1,另一种情况是该目标部分帧被检测出来,此时不需要生成新ID,复用已经检测出来ID即可。
具体地,进行ROI区域标注:假设小目标在图像上2个区域有集中分布(划分标准以能实现放大效果为准,以接近正方形效果最佳),如图6和图7所示,详细过程如下:在主标注图像区域(图像原图尺寸)上,选定ROI矩形;导出ROI区域的图像、ROI配置文件和ROI区域内的预标注数据到dir/roi子文件夹,格式如下:Dir/roi1/roi.json
{
“xmin”:20,
“ymin”:30,
“width”:400,
“height”:300
}
Dir/roi1/1.jpg(1.jpg为roi1区域保存的小图像,后续同理))
...
Dir/roi1/250.jpg
Dir/roi1/in/1.txt(1.txt为完整的在roi1区域内的预标注对象,后续同理)
...
Dir/roi1/in/250.txt。
具体地,导入ROI区域数据:标注工具导入roi1文件夹,根据是否存在roi.json配置文件检测出当前是否是ROI模式。如果是ROI模式,需要进行放大操作,屏幕显示区大小需设定为原图大小。如图6所示,具体ROI标注过程可参考上述主区域标注模式,区别在于载入时需要计算屏幕放大后的坐标,匹配时同样使用的是放大后的图像,保存时需要将放大后的屏幕数据还原成小图坐标。
本实施例通过设定预设小目标区域,并将所述预设小目标区域作为所述子帧图片序列的ROI区域;基于所述帧目标信息获取所述ROI区域对应的ROI区域信息;根据所述子帧图片序列的ROI区域和ROI区域信息进行标注,以获得ROI标注结果。ROI区域主要应用在小目标或者非常密集目标标注上面,通过ROI区域选择和放大,支持小目标、密集目标、特殊目标类型的自动跟踪,以加快标注速度,实现在小目标图像上的准确高效标注。
在一示例中,标注数据合并:基于预设合并算法将所述主区域标注结果和ROI标注结果进行合并,以获得目标标注结果的过程,可以包括:基于预设合并算法合并所述主区域标注结果和ROI标注结果,以获得初始目标标注结果;分别提取所述主区域标注结果和ROI标注结果的目标类型、目标ID以及目标矩形框坐标;将所述目标类型和目标ID相同的设为同一目标;将所述ROI标注结果的目标矩形框坐标设为所述同一目标的目标矩形框坐标,以获得同一目标的目标标注结果;根据所述同一目标的目标标注结果更新所述初始目标标注结果,以获得目标标注结果。
示例性地,将主区域标注结果、ROI标注结果进行合并,同一个目标在主区域标注结果和ROI标注结果中同时出现,以ROI标注结果为准。
需要说明的是,将主区域标注模式下标注文件数据和ROI模式下标注数据按照目标合并算法进行合并,合并后的标注数据文件,为最终需要的标注文件即目标标注结果。例如,将主区域标注结果dir/out、ROI标注结果dir/roi/out进行结果合并,Cls和ID相同的视为同一目标,当主区域和ROI区域同时出现相同目标时,目标标注结果的坐标数据(x1,y1,x2,y2)以ROI标注结果为准。
示例性地,从0至M开始遍历分片序列(子帧图片序列),对于第j帧,记存在主区域标注结果R(j)、ROI标注结果S(k),k=0至n-1,合并S(k)结果为S,对R(j)和S的结果进行互相比对,如果两个文件中目标标注记录object(Cls,ID,x1,y1,x2,y2)中的Cls和ID相同,视为同一目标,S和R(j)同时都有该目标的话,以S中的结果为准,最终合并结果中保留S中的记录结果。若R(j)中有该目标而S中没有,或者R(j)中没有该目标而S中有,最终合并结果中添加对应有该目标的目标记录。所有帧遍历完毕后,得到的合并结果为最终的序列标注结果U即得到目标标注结果。
可以理解的是,对于同一个视频文件的N个切片序列,如果单个切片标注时长无法满足需求,必须要求完整视频文件标注,需要对N个切片的序列标注结果U(j)进行ID聚类和重排。由于视频切片的关系,同一个视频的不同切片存在同一个目标但分散在不同相邻切片之间,且每个切片序列中的ID不一样的情况,对于这种情况,可以采用图像聚类算法,每一定数目相连范围的切片之间进行目标聚类,同一目标的几个切片,目标ID使用其中一个即可。
本实施例中,对于核心视觉任务,通过智能标注算法和标注工具,对视频文件进行预处理实现预标注,结合预设无监督跟踪算法以及ROI标注得到合并后的目标标注结果,实现半自动或者完全自动化标注过程,达到甚至超越大量完全人工标注图像的性能效果,可以极大地节约人力物力资源,降低AI应用开发的投入门槛,推动“智慧城市”等领域的行业发展。
本实施例中,对视频文件进行预处理实现预标注,结合预设无监督跟踪算法以及ROI区域标注得到合并后的目标标注结果,支持小目标、密集目标、特殊目标类型的自动跟踪,采用各种半自动化自动化方式加速标注过程,可以同时处理大批量视频文件,全链条减轻人工参与环节,加速标注效率,从而解决了现有图像目标检测领域的数据集存在数据标注效率低、标注成本高、标注数据匮乏的技术问题。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有视频目标检测数据主区域标注程序,所述视频目标检测数据主区域标注程序被处理器执行时实现如上文所述的视频目标检测数据主区域标注方法的步骤。
参照图8,图8为本发明视频目标检测数据主区域标注装置第一实施例的结构框图。
如图8所示,所述视频目标检测数据主区域标注装置,包括:
预处理模块10,用于对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
第一标注模块20,用于根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
判断模块30,用于在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
第二标注模块40,用于在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
主区域标注模块50,用于将所述第一标注结果和第二标注结果作为主区域标注结果。
可以理解的是,图像识别涉及范围较大,包括图像分割、图像检测、图像跟踪、图像匹配等,本实施例提供了一种视频目标检测数据主区域标注装置,主要涉及目标检测与跟踪领域内的标注,例如给出目标的矩形框位置以及所属类别、在视频序列中持续跟踪该目标等。
示例性地,步骤S10包括:对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息;基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列。
在一示例中,对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息的过程,可以包括:判断是否存在预设视频目标检测模型;在存在所述预设视频目标检测模型时,调用所述预设视频目标检测模型;基于所述预设视频目标检测模型对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的目标类型、目标ID以及目标矩形框坐标;存储所述目标类型、目标ID以及目标矩形框坐标为所述帧图片对应的帧目标信息。
具体地,可以利用预设视频目标检测模型对视频文件进行预处理,导出每帧为图片以及对应的帧目标信息,帧目标信息包括以帧为单位导出的目标检测类型和检测矩形框坐标数据等,保存到文本文件。其中,预设视频目标检测模型包括但不限于开源或者自训练深度学习模型。
示例性地,如果存在已经训练好的需要标注的目标类型的目标检测模型(例如开源模型等),将其作为预设视频目标检测模型,部署该预设视频目标检测模型预测服务,对视频文件以帧为单位进行预测,导出每帧为图片以及对应的帧目标信息,其中,每一帧的帧目标信息输出结果包括目标类型、目标ID以及目标矩形框坐标(x,y,w,h)。在一示例中,将视频每一帧导出为图片,每一帧的输出结果(帧目标信息)写入到同名文本文件,目录保存层次为:dir/图片路径;dir/in/文本文件路径。可以理解的是,如果不存在所述预设视频目标检测模型,输出为空即可。
在一示例中,基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列的过程,可以包括:设定预设切片时间长度;基于所述预设切片时间长度对所述帧图片进行切片,分成多个子帧图片序列。
示例性地,对导出的帧图片序列按一定长度单位进行切片,分成多个子帧图片序列,并将相应的目标类型、坐标数据等导出到子文本文件。其中,基于所述预设切片时间长度对所述帧图片进行切片,分成多个子帧图片序列的过程,可以包括:根据所述视频文件的视频时长和所述预设切片时间长度确定切片数量;根据所述视频文件的视频帧率和所述视频时长确定每一所述切片的帧数目;从第一帧开始间隔所述帧数目生成一个切片序列,以获得若干子帧图片序列;存储所述子帧图片序列和所述子帧图片序列对应的帧目标信息。
具体地,视频切片,对预处理得到的图片序列结果按照一定时间单位进行分片,每个分片可作为一个标注任务的基本单位。设定预设切片时间长度为sliceT,若视频时长为T,则切片数量为N=T/(sliceT),每个切片的帧数目为frameNums≤(sliceT)*fps,fps为视频帧率。对于每个视频结果导出目录dir,从第一帧开始每隔frameNums帧生成一个切片序列(子帧图片序列),将frameNums张图片拷贝到新子目录中,同时将对应的帧输出结果的文本文件拷贝到相同子目录中,目录层次为:newDir/图片路径,newDir/in/文本文件路径,每个新子目录newDir包含frameNums张图片以及相同数目的同名文本文件,最后一个切片(子帧图片序列)中的图片和文本文件数目可能小于帧数目frameNums。统计整个视频导出结果dir中目标类别数目K、每个类别中目标ID的最大值为maxID(i),i=0至K-1。
具体地,当没有选定ROI区域时,记为主区域标注模式。在主区域标注模式下,对分片后的子帧图片序列和帧目标信息进行主区域标注。在主区域标注模式下,可以采用预设无监督跟踪算法例如非监督目标匹配算法实现半自动化标注和目标跟踪。可以理解的是,主区域标注主要应用在比较清晰、大目标的标注上面,目标尺寸要求大于150*200,具体的目标尺寸要求可根据实际需要设定以人眼比较容易观察和标注为准进行设置,本实施例对此并不加以限制。
示例性地,标注工具导入子帧图片序列和子文本文件(包括帧目标信息),在GUI窗口显示相应的目标类型和目标矩形框,在子帧图片序列上诸帧查漏补缺,对于漏掉的目标类型,可以进行手工标注。例如,对于需要手工标注的目标类型,可以基于无监督目标检测算法设定合适的自动检测帧数进行自动标注,以加快标注速度。
在一示例中,所述在所述子帧图片序列中逐帧判断是否存在所述目标矩形框,包括:从所述目标类型中确定具体目标;基于所述具体目标在所述子帧图片序列中逐帧跟踪轨迹;在所述子帧图片序列中缺失所述具体目标的标注信息时,确定所述子帧图片序列中对应的缺失信息帧不存在所述目标矩形框。
在一示例中,所述基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果,包括:基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果。
在一示例中,所述基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果,包括:基于所述具体目标在所述缺失信息帧中补充标注目标矩形框,并记录所述补充标注的目标矩形框对应的标注区域;根据预设无监督跟踪算法以所述标注区域为待匹配对象在所述子帧图片序列中逐帧跟踪,直至匹配成功得到匹配结果;其中,所述匹配结果包括标注结果矩形框;根据预设无监督跟踪算法以所述标注结果矩形框为待匹配对象在所述子帧图片序列中逐帧跟踪,得到更新标注结果;将所述子帧图片序列中所有帧的所述匹配结果和更新标注结果作为第二标注结果。
在一示例中,所述方法还包括:设置预设自动跟踪距离;执行根据预设无监督跟踪算法在所述子帧图片序列中逐帧跟踪时,当跟踪帧数超过所述预设自动跟踪距离时,构建更新后的矩形框;根据预设无监督跟踪算法在所述子帧图片序列中以所述更新后的矩形框作为待匹配对象逐帧跟踪。
示例性地,导入单个分片图片序列即子帧图片序列以及对应的预处理的帧目标信息(目标类别、目标ID、目标矩形框(x,y,w,h),其中目标类别数目K、每个类别中目标ID的最大值maxID(i),i=0至K-1;在标注界面上单张图片上显示每个目标的目标类别和目标OD,以及目标矩形框。选定一个具体目标,持续按帧跟踪其轨迹:如果已存在该目标导入坐标信息,根据子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果,查漏补缺即可。不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,即对于缺失的没有导入信息的帧进行标注补充,以获得第二标注结果。
在一示例中,具体标注补充的过程如下:从缺失标注信息的帧开始,记为第i帧,手工画出该帧的目标矩形框,目标矩形框的标注区域记为R(x1,y1,x2,y2),设定合适的自动跟踪距离(帧数)D,基于预设无监督跟踪算法(例如采用非监督图像匹配算法)以R为待匹配对象在第i+1帧进行搜索。需要说明的是,为提高搜索精度和效率,具体的搜索区域可设为S(x1-deltaX,y1-deltaY,x2+deltaX,y2+deltaY),其中,deltaX,deltaY为在原矩形基础上放大的搜索距离,可根据实际情况自行设定本实施例对此并不加以限制。第i+1帧匹配到目标区域时,结果记为R1,将R1设定为待匹配对象,重复上述过程,直到第i+D帧。可以理解的是,根据不同的场景和算法适应性,可选择不同的图像匹配算法作为预设无监督跟踪算法,本实施例对此并不加以限制。
需要说明的是,具体的微调过程:对i+1至i+D之间自动匹配生成的结果根据情况进行手工微调,微调后的结果记为M(x1,y1,x2,y2),其中,i=1至D,M记为目标最终标注矩形区域结果,目标类别与目标ID分别和第i帧的目标类别和目标相同。
在一示例中,对于完全没有导入坐标的目标类型,记为完全新目标类别,具体的目标ID生成规则可以包括:记视频文件预处理步骤中该视频目标最大ID值为maxID(i),其中,i为该目标类别,每个视频切片的新生成ID初始值newID=maxID(i)+a(j),其中,j=0至N-1,N为该视频切片的数目,a(j)为正整数且要求a(j+1)和a(j)之间保持足够大的距离,保证切片之间新生成的ID不互相冲突;后续新ID的生成=newID+1。需要说明的是,完全新目标类别的坐标标注过程参考上述具体标注补充的过程和微调过程,此处不再赘述。
具体地,本实施例以智慧城市中行人数据标注为具体场景为例进行说明,标注行人目标最小尺寸可以为32*64像素,待标注的视频文件的视频时长单位为半小时(1800秒,帧率25帧)。行人包括普通行人(类别0),骑车类型行人(自行车、三轮车、机动车等,类别1),要求标注结果给出所有行人的类别Cls、行人ID、行人位置矩形坐标(x1,y1,x2,y2)。对于骑车类型行人,要求矩形框全部完整包住人和车。
具体场景:行人目标稀疏场景(小于5人每帧),无小目标,无自行车行人。具体处理步骤如下:在百度开源PPHuman基础上修改和部署行人检测服务,输入为视频文件sample.mp4,导出目录为Dir,输出结果为视频帧图片以及每帧上检测出的行人目标数据(id、x1,y1,x2,y2)。其中,视频总帧数为1800*25=45000,输出格式为:Dir/1.jpg、Dir/2.jpg、Dir/3.jpg...Dir/45000.jpg以及Dir/in/1.txt、Dir/in/2.txt...Dir/in/45000.txt,其中,txt格式为:Cls、ID、(x1,x2,y1,y2),x1,x2,y1,y2为多行。类型值统一设为0,PPHuman没有类型细分的能力,待后续使用标注工具修改。统计所有txt文件中ID的最大值,假设为360。以10s为一个切片,对导出图片和文本结果进行分片。总共分片个数=1800/10=180,每个分片10*25=250帧。如图3所示,每个分片的分片新ID初始值用于生成新ID,例如,分片1初始值newID=500,分片2初始值newId=1000,...,每隔500递增,保证每个分片新生成的ID不会重复。
示例性地,开始标注:标注工具导入第一个分片(1~250帧以及1~250个txt文件),根据txt中预存的标注信息在屏幕显示区对应坐标上画矩形框和展示。由于预标注导入原因,大部分目标是不需要再标注的,只需要查漏补缺查找少部分没有矩形框的目标即可。对于没有矩形框的目标包括以下两种情况,一种情况是该目标完全没有被检测出来,此时需要生成新ID,ID=newID,同时newID=newID+1自增1,另一种情况是该目标部分帧被检测出来,此时不需要生成新ID,复用已经检测出来ID即可。
具体地,对于该目标矩形框的标注,假设第10至30帧之间没有矩形框。可采用模板匹配或SIFT等非监督目标匹配算法对目标实现跟踪。具体目标跟踪过程如图4所示:在第10帧上对该目标画矩形框,矩形框图像记为m,矩形区域记为b;在第11帧上对m进行匹配搜索,为加快搜索效率,搜索区域可对b进行向放外扩200个像素左右,得到的匹配结果为矩形框r;第11帧的标注结果矩形框记为r,ID和Cls类型值同第10帧;将模板更新为r,对12至30帧重复该匹配过程。需要说明的是,可根据跟踪效果的好坏设定一个跟踪帧数d,当跟踪帧数超过d时,重新开始画矩形框和重复上述目标跟踪过程。导出主区域标注结果:将所有帧的最终标注结果,导出到dir/out/中,格式如下:Dir/out/1.txt、Dir/out/2.txt...Dir/out/250.txt。对于稀疏场景的视频文件,导出主区域标注结果后,该主区域标注过程完毕。整个主区域标注过程只需要少量人工参与环节,对于需要人工参与的环节,由于跟踪距离d一般大于等于5,最高可到20左右,本实施例提出的主区域标注方式可至少提高5倍左右的数据标注效率。
可以理解的是,主区域标注主要应用在比较清晰、大目标的标注上面,目标尺寸要求大于150*200,具体的目标尺寸要求可根据实际需要设定以人眼比较容易观察和标注为准进行设置,本实施例对此并不加以限制。
本实施例提出了一种视频目标检测数据主区域标注装置,包括:预处理模块10,用于对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;第一标注模块20,用于根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;判断模块30,用于在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;第二标注模块40,用于在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;主区域标注模块50,用于将所述第一标注结果和第二标注结果作为主区域标注结果。本实施例中,标注工具导入子帧图片序列和子文本文件(包括帧目标信息),在GUI窗口显示相应的目标类型和目标矩形框,在子帧图片序列上诸帧查漏补缺,对于漏掉的目标类型,可以进行手工标注。例如,对于需要手工标注的目标类型,可以基于无监督目标检测算法设定合适的自动检测帧数进行自动标注,以加快标注速度,实现在比较清晰、大目标图像上的准确高效标注。
另外,未在本视频目标检测数据主区域标注装置实施例中详尽描述的技术细节,可参见本发明如上文所述的视频目标检测数据主区域标注方法任意实施例,此处不再赘述。
应当理解的是,以上仅为举例说明,对本发明的技术方案并不构成任何限定,在具体应用中,本领域的技术人员可以根据需要进行设置,本发明对此不做限制。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种视频目标检测数据主区域标注方法,其特征在于,包括:
对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
将所述第一标注结果和第二标注结果作为主区域标注结果。
2.如权利要求1所述的视频目标检测数据主区域标注方法,其特征在于,所述在所述子帧图片序列中逐帧判断是否存在所述目标矩形框,包括:
从所述目标类型中确定具体目标;
基于所述具体目标在所述子帧图片序列中逐帧跟踪轨迹;
在所述子帧图片序列中缺失所述具体目标的标注信息时,确定所述子帧图片序列中对应的缺失信息帧不存在所述目标矩形框。
3.如权利要求2所述的视频目标检测数据主区域标注方法,其特征在于,所述基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果,包括:
基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果。
4.如权利要求3所述的视频目标检测数据主区域标注方法,其特征在于,所述基于预设无监督跟踪算法对所述子帧图片序列中对应的缺失信息帧进行补充标注,以获得第二标注结果,包括:
基于所述具体目标在所述缺失信息帧中补充标注目标矩形框,并记录所述补充标注的目标矩形框对应的标注区域;
根据预设无监督跟踪算法以所述标注区域为待匹配对象在所述子帧图片序列中逐帧跟踪,直至匹配成功得到匹配结果;其中,所述匹配结果包括标注结果矩形框;
根据预设无监督跟踪算法以所述标注结果矩形框为待匹配对象在所述子帧图片序列中逐帧跟踪,得到更新标注结果;
将所述子帧图片序列中所有帧的所述匹配结果和更新标注结果作为第二标注结果。
5.如权利要求4所述的视频目标检测数据主区域标注方法,其特征在于,所述方法还包括:
设置预设自动跟踪距离;
执行根据预设无监督跟踪算法在所述子帧图片序列中逐帧跟踪时,当跟踪帧数超过所述预设自动跟踪距离时,构建更新后的矩形框;
根据预设无监督跟踪算法在所述子帧图片序列中以所述更新后的矩形框作为待匹配对象逐帧跟踪。
6.如权利要求1所述的视频目标检测数据主区域标注方法,其特征在于,所述对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息,包括:
对视频文件进行预处理,以获得若干帧图片以及每一所述帧图片对应的帧目标信息;
基于预设长度对所述帧图片进行切片,以获得若干子帧图片序列。
7.如权利要求1所述的视频目标检测数据主区域标注方法,其特征在于,所述方法还包括:
对所述子帧图片序列的ROI区域和帧目标信息进行标注,以获得ROI标注结果;
基于预设合并算法将所述主区域标注结果和ROI标注结果进行合并,以获得目标标注结果。
8.一种视频目标检测数据主区域标注装置,其特征在于,包括:
预处理模块,用于对视频文件进行预处理,以获得若干子帧图片序列和帧目标信息;
第一标注模块,用于根据所述子帧图片序列和帧目标信息在屏幕显示区标注目标类型和目标矩形框,以获得第一标注结果;
判断模块,用于在所述子帧图片序列中逐帧判断是否存在所述目标矩形框;
第二标注模块,用于在所述子帧图片序列中不存在所述目标矩形框时,基于预设无监督跟踪算法对所述子帧图片序列进行标注,以获得第二标注结果;
主区域标注模块,用于将所述第一标注结果和第二标注结果作为主区域标注结果。
9.一种视频目标检测数据主区域标注设备,其特征在于,所述视频目标检测数据主区域标注设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的视频目标检测数据主区域标注程序,所述视频目标检测数据主区域标注程序配置为实现如权利要求1至7中任一项所述的视频目标检测数据主区域标注方法。
10.一种存储介质,其特征在于,所述存储介质存储有视频目标检测数据主区域标注程序,所述视频目标检测数据主区域标注程序用于使处理器执行时实现如权利要求1至7中任一项所述的视频目标检测数据主区域标注方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310754541.2A CN116935268A (zh) | 2023-06-26 | 2023-06-26 | 视频目标检测数据主区域标注方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310754541.2A CN116935268A (zh) | 2023-06-26 | 2023-06-26 | 视频目标检测数据主区域标注方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116935268A true CN116935268A (zh) | 2023-10-24 |
Family
ID=88385471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310754541.2A Pending CN116935268A (zh) | 2023-06-26 | 2023-06-26 | 视频目标检测数据主区域标注方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116935268A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117437635A (zh) * | 2023-12-21 | 2024-01-23 | 杭州海康慧影科技有限公司 | 一种生物组织类图像的预标注方法、装置 |
-
2023
- 2023-06-26 CN CN202310754541.2A patent/CN116935268A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117437635A (zh) * | 2023-12-21 | 2024-01-23 | 杭州海康慧影科技有限公司 | 一种生物组织类图像的预标注方法、装置 |
CN117437635B (zh) * | 2023-12-21 | 2024-04-05 | 杭州海康慧影科技有限公司 | 一种生物组织类图像的预标注方法、装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112560999B (zh) | 一种目标检测模型训练方法、装置、电子设备及存储介质 | |
CN108537269B (zh) | 一种弱交互式的物体检测深度学习方法及其系统 | |
CN111681273B (zh) | 图像分割方法、装置、电子设备及可读存储介质 | |
CN110163208B (zh) | 一种基于深度学习的场景文字检测方法和系统 | |
CN110189333B (zh) | 一种图片语义分割半自动标注方法及装置 | |
CN110827292B (zh) | 一种基于卷积神经网络的视频实例分割方法及设备 | |
WO2023279847A1 (zh) | 单元格位置的检测方法、装置和电子设备 | |
CN112613387A (zh) | 一种基于YOLOv3的交通标志检测方法 | |
CN110599453A (zh) | 一种基于图像融合的面板缺陷检测方法、装置及设备终端 | |
CN116935268A (zh) | 视频目标检测数据主区域标注方法、装置、设备及介质 | |
CN111415364A (zh) | 一种计算机视觉中图像分割样本的转换方法、系统及存储介质 | |
CN112102250A (zh) | 训练数据为缺失标注的病理图像检测模型建立、检测方法 | |
CN111709762A (zh) | 信息匹配度的评估方法、装置、设备及存储介质 | |
CN116935269A (zh) | 视频密集目标检测数据标注方法、装置、设备及存储介质 | |
Nugroho et al. | Comparison of deep learning-based object classification methods for detecting tomato ripeness | |
CN116935267A (zh) | 视频目标检测数据标注方法、装置、设备及存储介质 | |
CN116258937A (zh) | 基于注意力机制的小样本分割方法、装置、终端及介质 | |
Choi et al. | Object-aware image thumbnailing using image classification and enhanced detection of ROI | |
CN112085747A (zh) | 一种基于局部关系指导的图像分割方法 | |
CN112749293A (zh) | 一种图像分类方法、装置及存储介质 | |
CN116612474B (zh) | 对象检测方法、装置、计算机设备及计算机可读存储介质 | |
JP2006031593A (ja) | 細菌培養過程アニメーション作成システム | |
US11935214B2 (en) | Video content removal using flow-guided adaptive learning | |
US20240161364A1 (en) | Generating image mattes without trimap segmenetations via a multi-branch neural network | |
US20230360271A1 (en) | Tracking image modifications for a digital image |
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 |