CN117495917B - 基于jde多任务网络模型的多目标跟踪方法 - Google Patents

基于jde多任务网络模型的多目标跟踪方法 Download PDF

Info

Publication number
CN117495917B
CN117495917B CN202410003948.6A CN202410003948A CN117495917B CN 117495917 B CN117495917 B CN 117495917B CN 202410003948 A CN202410003948 A CN 202410003948A CN 117495917 B CN117495917 B CN 117495917B
Authority
CN
China
Prior art keywords
features
tracking
feature
task
jde
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
Application number
CN202410003948.6A
Other languages
English (en)
Other versions
CN117495917A (zh
Inventor
尹燕芳
尹占芳
安效伟
蒲海涛
刘明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan Lashan Aviation Technology Co ltd
Shandong University of Science and Technology
Original Assignee
Jinan Lashan Aviation Technology Co ltd
Shandong University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jinan Lashan Aviation Technology Co ltd, Shandong University of Science and Technology filed Critical Jinan Lashan Aviation Technology Co ltd
Priority to CN202410003948.6A priority Critical patent/CN117495917B/zh
Publication of CN117495917A publication Critical patent/CN117495917A/zh
Application granted granted Critical
Publication of CN117495917B publication Critical patent/CN117495917B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明属于计算机视觉以及多目标跟踪技术领域,具体公开了一种基于JDE多任务网络模型的多目标跟踪方法,该方法设计了一种新的JDE多任务网络模型,该模型基于特征层堆栈和层注意力的机制,将骨干网和特征融合网络提取到的不同层特征放入到一个特征层堆栈中,然后针对每一个任务分支,设计一个自适应的层注意力机制来重点关注自己任务需要的特征层,从而避免了任务竞争的问题,提高了JDE多任务网络模型目标检测和外观特征提取能力。同时本发明针对在线多目标跟踪中对跟踪目标丢失和正在跟踪的状态采用同样的外观特征处理方式不合理的问题,对传统的JDE跟踪算法进行了改进,提升了跟踪的性能。

Description

基于JDE多任务网络模型的多目标跟踪方法
技术领域
本发明属于计算机视觉以及多目标跟踪技术领域,特别涉及一种基于多任务网络模型的多目标跟踪方法。
背景技术
多目标跟踪(Multiple Object Tracking, MOT)是计算机视觉领域中的一个重要问题,它应用广泛,例如视频监控、自动驾驶、机器人、虚拟现实等领域。多目标跟踪需要在视频序列中实时地定位和跟踪目标。同时,目标跟踪还需要应对很多复杂的情况,例如目标尺度变化、遮挡、光照变化、背景变化,如果跟踪目标是人,由于人是动态变化的,因此其挑战还涉及到人员的外观、姿态、运动模式等因素的变化。目前,多目标跟踪算法采用的标准方法是检测跟踪,跟踪过程分为检测和关联两个阶段,这种方法首先在视频序列中使用目标检测器来检测目标,然后使用跟踪算法来跟踪目标即关联跟踪目标和检测对象。目标关联依据决定了跟踪的目标与新检测的对象之间根据什么特征以及如何确定他们之间的相似性。
目前很多目标跟踪主要集中在关联问题上,并没有对检测模型和外观特征的提取过多的关注。根据目标关联依据的不同,跟踪算法主要分为两类。基于运动特征的跟踪算法,其相似度的判定依据仅仅是目标的移动特征,即根据目标轨迹预测的包围框和检测到的包围框之间关系来决定其是同一个目标的可能性。由于在跟踪中遮挡是经常出现的情况,而且有些运行轨迹非常复杂不容易可靠的预测,因此仅仅利用运动特征则会丢失原轨迹。
最近的一些工作,其关联相似度的计算还增加了外观重识别特征,即基于外观重识别特征的跟踪算法。因为外观特征相对稳定,该方式对快速运动和遮挡具有鲁棒性,特别是,它可以重新关联丢失的轨迹,因此能够跟踪更长遮挡时间的对象,从而有效地减少身份切换的次数。但在这种方式下,外观特征的提取是关键。外观特征提取方式开始是采用分离模式下外观特征的提取方式,采用检测结果裁剪图像区域并将它们提供给重识别re-ID 网络来提取图像的重识别外观特征,也称为两步方式。这种两步方式由于外观特征需要在检测后再运行独立的模型进行提取,因此增加了处理的复杂性,使推理时间增加,降低了跟踪效率。
为了减少跟踪推理时间,目前很多跟踪方法都采用将检测和re-ID重识别特征提取放到一个模型中实现,称之为检测和嵌入(Joint Detection and Embedding, JDE)方式,以解决分离模式下的外观提取执行的效率低的问题。但这种方式的跟踪准确性普遍低于两阶段,这种方式的检测准确性和外观特征提取效果都比两阶段单任务模型的差,主要是由于多任务模型中的竞争导致的,由于检测任务和重识别任务是两个完全不同的任务,它们需要不同的特征。一般来说,re-ID 特征需要更多低级特征来区分同一类的不同实例,而目标检测特征则需要高级的特征来识别目标的类别以及边界信息。单个模型由于共享特征将导致特征冲突,从多任务损失优化的角度来看,检测和重识别的优化目标存在冲突。因此,当模型在训练学习中,往往就会引起多任务学习中的竞争问题,从而降低每个任务的性能。
此外,每个跟踪目标都保存了成功跟踪后的最后外观特征和嵌入外观特征,嵌入外观特征可以理解为时跟踪目标的外观平均值。可能由于遮挡等其它原因,如果当前跟踪目标丢失了,计算外观相似度矩阵时采用嵌入式外观特征时合理的。但是如果当前跟踪目标正在活动的跟踪状态,下一帧的外观特征肯定跟上一帧最后的外观特征是非常相似的,因此计算外观相似度矩阵时,应当更多的考虑上一帧的外观特征。然而,目前的通用的JDE多目标跟踪算法并没有这两种状态进行区分,而是统一采用嵌入外观特征,这明显是不合理的。
发明内容
本发明的目的在于提出一种基于JDE多任务网络模型的多目标跟踪方法,该方法采用单个JDE多任务模型同时实现目标的检测和目标的外观特征提取,以实现多目标跟踪。
本发明为了实现上述目的,采用如下技术方案:
基于JDE多任务网络模型的多目标跟踪方法,包括如下步骤:
步骤1.针对待跟踪的视频信息,读取视频中的每帧图片成为一个图像序列,然后进行缩放,并且对图像进行正则化处理;
步骤2.利用JDE多任务网络模型对第一帧输入图像进行目标检测,获得所有检测对象框以及每个检测对象相应的外观特征;
步骤3.为每个检测目标创建一个新的跟踪轨迹,保存跟踪对象的轨迹信息以及外观信息,并且分配身份id;
步骤4.读取新的一帧图像,然后利用JDE多任务网络模型对新的一帧图像进行目标检测,获得当前帧图像的检测对象和该检测对象的外观特征;
步骤5.利用外观特征的余弦相似性计算每个检测对象的外观特征与当前所有跟踪目标的外观特征的外观相似度,利用计算得到的相似度矩阵,采用匈牙利匹配算法进行第一次匹配;
步骤6.对所有未匹配成功的跟踪目标和检测框,再根据框的重叠度进行第二次匹配;
步骤7.所有匹配成功的检测对象的框信息加入到对应的跟踪目标的轨迹中,并且用该检测对象的外观特征更新跟踪目标的嵌入特征和当前特征;
步骤8.对所有没有匹配成功的跟踪目标,原状态如果为活动,则状态改为非活动;
步骤9.可视化显示该帧图像以及每个跟踪目标的边框以及身份id;
步骤10.若跟踪未停止,则进入步骤4,继续新一帧的跟踪处理。
本发明具有如下优点:
本发明提出了一种基于JDE多任务网络模型的多目标跟踪方法,该方法设计了一种新的JDE多任务网络模型,该模型提出了一种基于特征层堆栈和层注意力的机制,其中,将骨干网和特征融合网络提取到的不同层特征放入到一个特征层堆栈中,然后针对每一个任务分支,设计一个自适应的层注意力机制来重点关注自己任务需要的特征层,从而避免了任务竞争的问题,提高了JDE多任务网络模型目标检测和外观特征提取能力。同时,本发明针对在线多目标跟踪中对跟踪目标丢失和正在跟踪的状态采用同样的外观特征处理方式不合理的问题,对传统的JDE跟踪算法进行了改进,从而提升了跟踪的性能。
附图说明
图1为本发明实施例中基于JDE多任务网络模型的多目标跟踪方法的流程框图。
图2为本发明实施例中基于特征堆栈和自适应层注意力的多任务网络模型的结构框图。
具体实施方式
下面结合附图以及具体实施方式对本发明作进一步详细说明:
本发明提出了一种基于JDE多任务网络模型的多目标跟踪方法,该方法基于特征层堆栈和自适应的层注意力机制,将骨干网和特征融合网络提取到的不同层特征放入到一个特征层堆栈中,然后针对每一个任务分支,设计一个自适应的层注意力机制来重点关注自己任务需要的特征层,这样就避免了任务竞争的问题。同时针对跟踪过程中跟踪目标的特征与检测目标的外观特征匹配问题,本发明认为跟踪未丢失的情况下,一个目标上一帧的外观特征与当前帧的外观特征更接近,但是对于跟踪丢失的情况下,由于存在遮挡等问题,上一帧的外观特征是跟踪丢失欠记录的外观特征,因此用该跟踪目标存储外观缓存中的平均特征进行匹配更合理。但是目前的通用的JDE多目标跟踪算法并没有区分这两种不同状态下的跟踪目标,而且采用统一的嵌入外观特征,这是不合理的,因此本发明对此进行了改进。此外,在数据集上对本发明方法进行了验证和分析,证明了本发明方法对跟踪性能有了明显的提升。
在对本发明基于JDE多任务网络模型的多目标跟踪方法说明之前,先对本发明中构建的JDE多任务网络模型以及模型的具体训练过程进行说明。
如图2所示,该JDE多任务网络模型包含提取特征的骨干网,以及本发明提出的特征融合及特征层堆栈模块、以及基于自适应层注意力的多任务头模块。
其中,特征融合及特征层堆栈模块,将主网络提取的不同层特征通过特征融合放入一个特征层堆栈中,为任务头提供了丰富的特征层信息,从而可以完成不同的任务需求。
多任务头模块设计了一种融合了自适应的层注意力和空间注意力的机制,使每个任务重点关注自己需要的层特征和自己的区域,有效解决多任务学习中的竞争问题。
输入图像在JDE多任务网络模型的处理流程为:
输入图像先进入骨干网进行多层的特征提取,得到不同层次的特征;不同层次的 特征进入特征融合及特征层堆栈模块,以实现不同的特征层融合并得到特征层堆栈;特征 层堆栈同时进入每个任务自适应注意力头模块;针对每一个不同的任务,自适应学习不同 的层注意力矩阵,以关注该任务需要的特征层,然后将关注后的不同层特征进行拼接然后 通过两个卷积操作,获得该任务的输出;特征层堆栈通过四个任务自适应注意力头模块获 得四个任务输出,一个任务输出是类别中心的热图,每一个类别对应一个热图输出,估计 每一类对象中心的位置在每个位置的概率。一个任务输出对象大小,表示该对象检测框的 大小。一个任务输出是中心偏移量,表示对象中心由于输出步幅的降采样引起的 偏移误差。一个任务输出是re-id重识别特征即外观特征,表示能区分对象的外观 特征。
下面结合图2对以上各个部分作进一步详细说明。
输入图像先进入图2中的骨干网部分进行多层的特征提取,该骨干网部分主要是采用Yolov5模型的主干网设计。通过骨干网络分别获得原图像分辨率1/2的A0特征、原图像分辨率1/4的A1特征、原图像分辨率1/8的A2特征、原图像分辨率1/16的A3特征和原图像分辨率1/32的A4特征,也分别代表着不同层次的底层特征和高层特征。
特征融合及特征层堆栈模块如图2中的中间部分所示。图像通过骨干网提取到的不同层特征,采用FPN结构进行特征融合,在每个Fusion模块中,先对高层的特征进行上采样,然后与本层特征进行融合,然后再特征提取。由于上层特征可以作为宏观的指导,通过该Fusion模块,就得到了的高分辨率、强语义的特征。通过该结构中,得到了四个不同层次不同分辨率的特征。其中,与输出分辨率相同大小的特征包含了最重要和最丰富的信息,因此对于该层特征,通过卷积提取多个特征子层。对于其它层,每层提取一个子层,根据与输出分辨率的关系,采用2d转置卷积或者2d卷积进行特征提取以得到与输出分辨率相同大小的子层特征。这些子层就共同构成了一个包含了丰富的不同语义的特征层堆栈。
下游的任务就可以通过层注意力机制,重点关注自己的任务最需要的特征。
具体的,特征融合及特征层堆栈模块的具体处理流程如下:
经由骨干网提取得到的原图像分辨率1/2的A0特征、1/4的A1特征、1/8的A2特征、1/16的A3特征以及1/32的A4特征进入特征融合及特征层堆栈模块,以实现对不同的特征层进行融合并得到特征层堆栈。其中,高层特征即A4特征具有更大的视野,其SPP模块即通过更大的不同的池化操作得到整个图像的全局特征,并通过C3模块进一步提取全局特征,该全局特征作为A3特征的高层和大视野指导,与A3特征进行融合并基于进一步特征提取,提取到原图像分辨率1/16的F3特征;同时F3特征作为A2特征的高层和大视野特征指导与A2特征进行融合得到原图像分辨率1/8的F2特征,进一步依次得到原图像分辨率1/4的F1特征和原图像分辨率1/2的F0特征。这些不同层次的特征包含着不同的信息,例如F0特征包含了更多的细节信息,F3特征包含了更深层的更全局的抽象特征。但是他们的分辨率不同。由于JDE多任务网络模型是采用基于中心点的检测,只输出1/4分辨率特征,通过卷积操作或转置卷积操作将得到的不同分辨率的特征都转成统一的1/4分辨率特征即子层特征,这些子层特征共同构成包含丰富的不同语义的特征层堆栈。
其中SPP模块是Yolov5中通过不同大小的池化融合获取图像全局特征的模块,C3模块是Yolov5中由多个卷积构成的特征提取的基本模块。
特征层堆栈同时进入每个任务的自适应注意力头模块,如图2中右侧部分所示。
任务自适应注意力头模块设计针对多任务模型中的任务竞争问题,在特征层堆栈提供的丰富的特征子层的基础上,采用了自适应层注意力机制(layer attention)来进行任务分解。每个任务通过自适应的层注意力,重点关注自己需要的不同级别的子层特征。
由于不同的任务关注的特征层各不相同,例如外观特征更关注底层的细节特征,而类别更关注抽象的高层特征,因此在图2中任务自适应注意力头模块,针对每一个不同的任务,自适应的学习不同的层注意力矩阵,来重点关注该任务需要的特征层,然后把关注后的不同层特征进行拼接然后通过两个卷积操作,获得该任务的输出。
定义层注意力是一个可学习的矩阵,其中M是任务头的个数,L是特征层堆 栈中子层的个数;A值初始化为全1;每个任务i的层注意力对应矩阵A的一行,即一个向量; 该向量的每个元素a[i,j]代表在该任务i中,对第j个子层的关注度。
这样针对每一个任务i,就得到一个层注意力关注后的特征Xtask-i,其公式表示为:
(1)
其中, 表示特征堆栈中第k个子层的特征,cat(·)函数实现对子层特征的 联接;由于每个特征层都包含多个通道,自适应层注意力机制会把学习到的层注意力权重a [i,j]乘到j子层的每一个通道中。
基于该特征,任务i的预测输出公式表示为:
(2)
其中conv1和conv2都是2维卷积,conv1是1×1的卷积, conv2是3×3的卷积,直接输出该任务的输出,σ和δ都表示为激活函数,δ采用relun激活函数。
假定输入图像的大小表示为Hi×Wi,本发明规定R是输出步幅,将输出预测分辨率大小降低了R倍,则输出大小为H×W,其中H = Hi/R和W = Wi/R。
在本发明中取R=4,在基于中心点的检测中,模型在该每个对象中心点所在位置上对该对象进行预测,包括该点是对象中心点概率,对象中心的偏移,对象的大小,以及对象的Re-id特征,因此相应的该JDE模型就有四个任务头支。
热图输出为,C是检测的类型种类,估计每一类对象中心的位置在每 个位置的概率。对象大小输出为 ,表示该对象检测框的大小。中心偏移量 输出为,表示对象中心由于输出步幅的降采样引起的偏移误差。re-id重 识别特征输出为,D为外观特征维度,表示能区分对象的外观特征。
JDE多任务网络模型的训练过程如下:
步骤I.下载标准的多目标跟踪数据集,例如包括ETH、CalTech、MOT17、 CUDK-SYSU[34]、 CityPerson、PRW、和 CrowdHuman数据集。
步骤II.对数据集进行预处理,包括调整输入图像的大小1088×608,并进行数据增强处理,数据增强处理包括旋转、缩放和颜色抖动。
步骤III.以yolov5s和yolov5l作为主干网,采用数据集作为训练数据集从头训练JDE多任务网络模型,其中标签中的身份信息作为类别信息处理。
使用Adam优化器对JDE多任务网络模型进行30次迭代的训练,起始学习速率为10-4;学习速率在第20次迭代时衰减到10-5,批处理大小被设置为24。
步骤IV.由于对象检测框是由框大小和偏移量共同确定的,因此模型训练过程中损失函数是由热图损失Lheat、边界框损失Lbox和外观嵌入损失Lid三个部分构成。
热图损失Lheat的计算过程如下:
假定图像中的第i个对象的检测框为:
其中,为第i个对象的检测框的左上角坐标, 为第i个 对象的检测框的右下角坐标。在与模型输出相同的低分辨率R下,该对象的中心为:
则该对象在该分辨率下的期望热图为高斯分布:
其中,σc表示标准偏差,exp(·)表示为以e为底的指数函数;从该式可以看出,在该对象的中心点,热图值为1, 其它点的热图值随着与对象中心之间的距离呈指数衰减。如果同一类的多个对象的高斯分布重叠,取元素级最大值,则该类别c对应的期望热图输出为:
(3)
Nc表示图像中该类别c对象的数量,设定表示模型预测输出的第c类别的热 图,则热图损失Lheat采用像素级逻辑回归的损失函数表示为:
(4)
其中,α和β是焦点损失的超参数,log(·)为以e为底的对数函数,在所有实验中都设置了α = 2和β = 4。
边界框损失Lbox的计算过程如下:
对每一个检测框 ,在其中心点期望的边界框大小和偏移量计 算为:
假定则在该点的边界框大小和偏移量预测输出分别为
采用L1损失,则整个检测框损失函数定义为:
(5)
其中,为超参数,设置为=0,=1,N表示图像中所有检测框的个数。该损 失函数只对每个对象中心点的输出进行损失计算,其它点的输出则进行了忽略。
Re-ID 分支旨在生成可以区分对象的特征。理想情况下,同一对象在不同帧之间 的重识别特征的距离应该尽可能小,而不同对象的重识别特征的距离应该尽可能大。在训 练过程中,Re-ID损失遵循JDE跟踪器的定义,将重识别特征再建模为一个分类任务,训练集 中具有相同身份的所有对象实例都被视为同一类,输出采用one-hot编码
i表示第i个对象,C为训练集中所有身份的个数。ReID特征使用一个FC全连接和一 个softmax激活输出一个id概率向量,外观嵌入损失Lid的计算公式如下:
(6)
其中,K为训练数据中所有身份id的个数,是该对象身份id的one-hot编 码,i表示第i个对象,C为训练集中所有类别的个数;表示第i个对象的身份id的one-hot 编码的第k位的编码值,表示预测的身份id在第k位的概率值。
在训练过程中,只有位于目标中心的重识别特征参与训练。
则总损失函数表示为:
(7)
其中,wheat、wbox和wid是三个超参,作为Lheat、Lbox和Lid三个损失的权重。
在本实施例中,wheat、wbox和wid例如均取值为1。
步骤V.利用损失函数对模型进行训练,得到训练好的JDE多任务网络模型。最终得到训练好的JDE多任务网络模型供下面实时的视频在线跟踪推理步骤中使用。
基于以上训练好的JDE多任务网络模型,下面给出基于JDE多任务网络模型的多目标跟踪方法的具体处理过程,如图1所示,该多目标跟踪方法包括如下步骤:
步骤1.针对待跟踪的视频信息,采用opencv库读取视频中的每帧图片成为一个图像序列,然后进行缩放成模型需要的1088×608大小,并且对图像进行正则化处理。
由于图像为RGB图像,其模型输入为1088×608×3,其中3是其RGB通道数。
步骤2.利用(上述训练好的)JDE多任务网络模型对第一帧输入图像进行目标检测,获得所有检测对象框以及每个检测对象相应的外观特征。
步骤3.为每个检测目标创建一个新的跟踪轨迹,保存跟踪对象的轨迹信息以及外观信息,并且分配身份id。
步骤4.读取新的一帧图像,然后利用(上述训练好的)JDE多任务网络模型对新的一帧图像进行目标检测,获得当前帧图像的检测对象和该检测对象的外观特征。
步骤5.利用外观特征的余弦相似性计算每个检测对象的外观特征与当前所有跟踪目标(轨迹)的外观特征的外观相似度,其中跟踪轨迹要参与相似度计算的外观特征表示为:
(8)
其中,和 ci分别是该轨迹上一帧的嵌入式特征和上一帧的外观特征,表 示该轨迹要参与相似度计算的外观特征。
因此当轨迹是非活动状态,采用嵌入式特征,当轨迹是活动的,采用该公式即增加了上一帧外观特征的影响力同时提供了一个更稳健的相似度计算。
利用计算得到的相似度矩阵,采用匈牙利匹配算法进行第一次匹配;
步骤6.对所有未匹配成功的跟踪目标和检测框,再根据框的重叠度进行第二次匹配。
具体的,先根据卡尔曼滤波对所有跟踪目标的新位置进行预测,预测的跟踪目标包围框与检测的包围框计算它们之间的重叠度IOU,再利用匈牙利匹配算法进行第二次匹配。
步骤7.所有匹配成功的检测对象的框信息加入到对应的跟踪目标的轨迹中,并且用该检测对象的外观特征更新跟踪目标的嵌入特征和当前特征,更新公式如下:
(9)
(10)
其中,dt i表示在t时刻用模型获取的第i个跟踪对象的外观特征,Avg(·)函数实现 对外观特征求平均值,是该轨迹上一次匹配后的嵌入式特征,是一个权重项,设置 为 0.9 ,即新特征以0.1的比重加入到该嵌入式特征中。
当轨迹嵌入特征序列长度小于10时,嵌入特征为所有外观特征的平均值,当t>10后,就按照原公式(8)更新,这样避免了当第一帧被干扰时对跟踪的影响。
步骤8.对所有没有匹配成功的跟踪目标,原状态如果为活动,则状态改为非活动。
如果连续非活动的计数超过门限30,则认为该跟踪目标已离开监控场景,销毁该跟踪目标轨迹。对所有没有匹配成功的检测对象,则为其创建新的跟踪目标轨迹并分配身份id。
步骤9.可视化显示该帧图像以及每个跟踪目标的边框以及身份id。
步骤10.若跟踪未停止,则进入步骤4,继续新一帧的跟踪处理。
在线跟踪中,本发明根据不同的跟踪状态,跟踪目标采用不同的外观特征,提高了跟踪的性能。同时对于跟踪目标的外观特征更新处理中,针对当跟踪轨迹帧数较小时,跟踪目标的外观特征主要有第一帧决定的不合理性,本发明采用跟踪目标所有帧的平均值来替代原公式,更具有合理性。
为了验证本发明方法,与基线方法FairMOT采用相同的训练数据集,包括 ETH、CalTech、MOT17、CUDK-SYSU、CityPerson、 PRW数据集。训练方法也与基线FairMOT相同。在MOT17标准数据集上评估本发明每个创新点的性能。
使用标准的MOT测试指标进行评估算法性能,包括:
IDF1:正确识别出的跟踪目标身份和实际跟踪目标的比率的调和值。
MOTA:多目标跟踪精度,这项措施结合了三个错误来源:误报、错过目标和身份切换。
IDs:跟踪目标的身份切换次数。
MT:跟踪到的轨迹个数,即该轨迹寿命的80%的时间被正确跟踪了。
ML:丢失的轨迹个数,即该轨迹寿命的最多20%被正确跟踪了。
FPS:用于测量整个跟踪的帧速率。
Parms(M):模型的大小。
以FairMot基于yolov5s和yolov5l模型作为本发明的基线,使用相同的Adam优化器,起始学习速率为10-4,学习速率在第20次迭代时衰减到10-5。批处理大小被设置为24。在消融实验中,为了验证方法的泛化性,不应用任何预训练模型,直接利用所有的训练数据集进行epoch=30的训练,以mot15作为训练时的验证集,然后在mot17集上进行评估和比较。
1.针对本发明设计的特征层堆栈的验证。
本发明设计的特征层堆栈结构可以提供给最后的任务头丰富的特征信息,使任务头可以根据自己的具体任务获取最需要的特征,为此对特征堆栈的作用进行了验证。其中,跟踪器都采用标准的JDE跟踪器,其结果如表1所示。
表1 特征堆栈的性能实验结果
从表1可以看出,不管是使用yolov5s的骨干网还是yolov5l的骨干网,加入了特征层堆栈处理后,即使不使用层注意力,其结果都比仅采用本层的融合特征使跟踪性能有了明显的提升。在参数量仅仅增加0.11M和0.59M的情况下,加入了特征层堆栈后,yolov5s的IDF1性能提升了1.2,yolov5s的IDF1性能提升了0.6,其它的性能也有不同程度的提升,这个效果还是比较明显的。以上结果表明,尽管本层的特征已经通过FPN结构对上层的特征进行了特征融合,但是融合的特征往往破坏了高层特征结构,通过特征层堆栈,则很好地保留了每层的结构信息,提供了更丰富的特征信息,这有助于提升多任务模型的性能。
2.针对本发明自适应层注意力的验证。
对本发明提出的自适应层注意力进行验证,在这里基于yolo5s骨干网模型层注意力的层数设置为6,基于yolo5l骨干网模型的层注意力层数设置为12,其实验结果如表2所示。
表2 自适应层注意力的性能实验比较
从表2中所示的结果可以看出,不管基于以上哪个骨干网模型,加入了层注意力,都明显提升了模型的性能,这表明采用层注意力在多任务模型学习中的合理性。
3.针对本发明外观特征更新策略的验证。
在原始的JDE 跟踪器中,在每次匹配成功后,跟踪对象的最后外观特征和嵌入 特征都用匹配的检测外观特征 去更新,更新公式为:
其中, 是该轨迹上一次匹配后的嵌入式特征,是一个权重项,设置为 0.9 , 即新特征以0.1的比重加入到该嵌入式特征中。当t比较大时,我们可以把该公式看作时求 外观特征的平均值的一个简化版。 但是当t<10时,列出其结果:
从以上计算结果可以发现,在跟踪中,在t<10时,第一次的外观特征在嵌入特征中的所起的作用一直远远大于后面的帧,这显然是不合理的。
基于此,本发明采用了公式(9)以及公式(10)的更新方法,当轨迹嵌入特征序列长度小于10时,嵌入特征为所有外观特征的平均值,当t>10后,就可以按照原公式更新。这样避免了当第一帧被干扰时对跟踪的影响。这个改进的验证效果如表3所示:
表3 外观特征更新策略改进后的性能提升
从实验结果可以看出,采用本发明外观特征更新方法后,明显降低了跟踪中的切换次数,这说明采用这种更新跟踪目标的外观特征更合理。
4.针对本发明在线推理匹配中跟踪目标的外观特征策略的验证。
在进行外观相似度计算时,跟踪对象的外观特征根据当前跟踪的状态不同采取不同的策略。当轨迹是非活动状态,直接采用嵌入式特征,当轨迹是活动的,按照公式(8)增加了上一帧外观特征的影响力,采用这种方式后性能的改进如表4所示。
表4 跟踪目标的外观特征改进策略后的性能提升
从表4中可以看出,采用本发明外观特征计算策略后,MOTA、MT、ML以及IDS性能都有提升,而IDS性能的提升最为明显,从而验证了本发明方法的有效性。
当然,以上说明仅仅为本发明的较佳实施例,本发明并不限于列举上述实施例,应当说明的是,任何熟悉本领域的技术人员在本说明书的教导下,所做出的所有等同替代、明显变形形式,均落在本说明书的实质范围之内,理应受到本发明的保护。

Claims (6)

1.基于JDE多任务网络模型的多目标跟踪方法,其特征在于,包括如下步骤:
步骤1.针对待跟踪的视频信息,读取视频中的每帧图片成为一个图像序列,然后进行缩放,并且对图像进行正则化处理;
步骤2.利用JDE多任务网络模型对第一帧输入图像进行目标检测,获得所有检测对象框以及每个检测对象相应的外观特征;
所述JDE多任务网络模型包含提取特征的骨干网、特征融合及特征层堆栈模块、以及四个任务自适应注意力头模块;输入图像在JDE多任务网络模型的处理流程为:
输入图像先进入骨干网进行多层的特征提取,得到不同层次的特征;不同层次的特征进入特征融合及特征层堆栈模块,以实现不同的特征层融合并得到特征层堆栈;特征层堆栈同时进入每个任务自适应注意力头模块;针对每一个不同的任务,自适应学习不同的层注意力矩阵,以关注该任务需要的特征层,然后将关注后的不同层特征进行拼接然后通过两个卷积操作,获得该任务的输出;特征层堆栈通过四个任务自适应注意力头模块获得四个任务输出,分别为类别中心的热图对象大小中心偏移量以及外观特征
所述特征融合及特征层堆栈模块的具体处理流程如下:
经由骨干网提取得到的原图像分辨率1/2的A0特征、1/4的A1特征、1/8的A2特征、1/16的A3特征以及1/32的A4特征进入特征融合及特征层堆栈模块,以实现对不同的特征层进行融合并得到特征层堆栈;其中,A4特征的SPP模块通过不同的池化操作得到整个图像的全局特征,并通过C3模块进一步提取全局特征,该全局特征与A3特征进行融合并基于进一步特征提取,提取到原图像分辨率1/16的F3特征;同时F3特征与A2特征进行融合得到原图像分辨率1/8的F2特征,进一步依次得到原图像分辨率1/4的F1特征和原图像分辨率1/2的F0特征;通过卷积操作或转置卷积操作将得到的不同分辨率的特征都转成统一的1/4分辨率特征即子层特征,所有子层特征共同构成包含丰富的不同语义的特征层堆栈;
步骤3.为每个检测目标创建一个新的跟踪轨迹,保存跟踪对象的轨迹信息以及外观信息,并且分配身份id;
步骤4.读取新的一帧图像,然后利用JDE多任务网络模型对新的一帧图像进行目标检测,获得当前帧图像的检测对象和该检测对象的外观特征;
步骤5.利用外观特征的余弦相似性计算每个检测对象的外观特征与当前所有跟踪目标的外观特征的外观相似度,利用计算得到的相似度矩阵,采用匈牙利匹配算法进行第一次匹配;
所述步骤5中,其中跟踪轨迹要参与相似度计算的外观特征表示为:
其中,和ci分别是该跟踪轨迹上一帧的嵌入式特征和上一帧的外观特征,fi t-1表示该跟踪轨迹参与相似度计算的外观特征;
步骤6.对所有未匹配成功的跟踪目标和检测框,再根据框的重叠度进行第二次匹配;
步骤7.所有匹配成功的检测对象的框信息加入到对应的跟踪目标的轨迹中,并且用该检测对象的外观特征更新跟踪目标的嵌入式特征和当前特征;
所述步骤7中,更新公式如下:
其中,dt i表示在t时刻获取的第i个跟踪对象的外观特征,Avg(·)函数实现对外观特征求平均值,是该跟踪轨迹上一次匹配后的嵌入式特征,γ是一个权重项;当轨迹嵌入式特征序列长度小于10时,嵌入式特征为所有外观特征的平均值,当t>10后,就按照原公式(8)进行更新;
步骤8.对所有没有匹配成功的跟踪目标,原状态如果为活动,则状态改为非活动;
步骤9.可视化显示该帧图像以及每个跟踪目标的边框以及身份id;
步骤10.若跟踪未停止,则进入步骤4,继续新一帧的跟踪处理。
2.根据权利要求1所述的基于JDE多任务网络模型的多目标跟踪方法,其特征在于,
定义层注意力A∈RM×L是一个可学习的矩阵,其中M是任务头的个数,L是特征层堆栈中子层的个数,A值初始化为全1,每个任务m的层注意力对应矩阵A的一行,即一个向量;该向量的每个元素a[m,n]代表在该任务m中,对第n个子层的关注度;
针对每一个任务m,得到一个层注意力关注后的特征Xtask-m,其公式表示为:
其中,表示特征堆栈中第n个子层的特征,cat(·)函数实现对子层特征的联接;
自适应层注意力机制会将学习到的层注意力权重a[m,n]乘到n子层的每一个通道中;
基于该特征Xtask-m,任务m的预测输出公式表示为:
其中conv1和conv2都是2维卷积,conv1是1×1的卷积,conv2是3×3的卷积,直接输出该任务的输出,σ和δ都表示为激活函数,δ采用relun激活函数。
3.根据权利要求1所述的基于JDE多任务网络模型的多目标跟踪方法,其特征在于,
所述JDE多任务网络模型的训练过程如下:
步骤I.下载标准的多目标跟踪数据集;
步骤II.对数据集进行预处理,包括调整输入图像的大小,并进行数据增强处理;
步骤III.以yolov5s和yolov5l作为主干网,采用数据集作为训练数据集从头训练JDE多任务网络模型,其中标签中的身份信息作为类别信息处理;
使用Adam优化器对JDE多任务网络模型进行30次迭代的训练,起始学习速率为10-4;学习速率在20次迭代后衰减到10-5,批处理大小设置为24;
步骤IV.由于对象检测框是由框大小和偏移量共同确定的,因此模型训练过程中损失函数是由热图损失Lheat、边界框损失Lbox和外观嵌入损失Lid三个部分构成;
步骤V.利用损失函数对模型进行训练,得到训练好的JDE多任务网络模型。
4.根据权利要求3所述的基于JDE多任务网络模型的多目标跟踪方法,其特征在于,
所述步骤IV中,热图损失Lheat的计算过程如下:
假定图像中的第j个对象的检测框b(j)为:
其中,为第j个对象的检测框b(j)的左上角坐标,为第j个对象的检测框b(j)的右下角坐标;在与模型输出相同的低分辨率R下,该对象的中心为:
则该对象在该分辨率下的期望热图为高斯分布:
其中,σc表示标准偏差,exp(·)为以e为底的指数函数;如果同一类的多个对象的高斯分布重叠,取元素级最大值,则该类别c对应的期望热图输出为:
Nc表示图像中该类别c对象的数量,设定表示模型预测输出的第c类别的热图,则热图损失Lheat采用像素级逻辑回归的损失函数表示为:
其中,α和β是焦点损失的超参数,log(·)为以e为底的对数函数,C为训练集中所有类别的个数;
边界框损失Lbox的计算过程如下:
对每一个检测框b(j),在其中心点期望的边界框大小s(j)和偏移量o(j)计算为:
假定则在该点的边界框大小和偏移量预测输出分别为
采用L1损失,则整个检测框损失函数定义为:
其中,λs、λo为超参数,N表示图像中所有检测框的个数;
外观嵌入损失Lid的计算公式如下:
其中,K为训练数据中所有身份id的个数,j表示第j个对象;表示第j个对象的身份id的one-hot编码的第k位的编码值,表示预测的身份id在第k位的概率值;
则总损失函数表示为:
Ltotal=wheatLheat+wboxLbox+widLid (7)
其中,wheat、wbox和wid是三个超参,作为Lheat、Lbox和Lid三个损失的权重。
5.根据权利要求1所述的基于JDE多任务网络模型的多目标跟踪方法,其特征在于,
所述步骤6中,先根据卡尔曼滤波对所有跟踪目标的新位置进行预测,预测的跟踪目标包围框与检测的包围框计算它们之间的重叠度IOU,再利用匈牙利匹配算法进行第二次匹配。
6.根据权利要求1所述的基于JDE多任务网络模型的多目标跟踪方法,其特征在于,
所述步骤8中,如果连续非活动的计数超过门限,则销毁该跟踪目标轨迹;对所有没有匹配成功的检测对象,则为其创建新的跟踪目标轨迹并分配身份id。
CN202410003948.6A 2024-01-03 2024-01-03 基于jde多任务网络模型的多目标跟踪方法 Active CN117495917B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410003948.6A CN117495917B (zh) 2024-01-03 2024-01-03 基于jde多任务网络模型的多目标跟踪方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410003948.6A CN117495917B (zh) 2024-01-03 2024-01-03 基于jde多任务网络模型的多目标跟踪方法

Publications (2)

Publication Number Publication Date
CN117495917A CN117495917A (zh) 2024-02-02
CN117495917B true CN117495917B (zh) 2024-03-26

Family

ID=89674756

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410003948.6A Active CN117495917B (zh) 2024-01-03 2024-01-03 基于jde多任务网络模型的多目标跟踪方法

Country Status (1)

Country Link
CN (1) CN117495917B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105717505A (zh) * 2016-02-17 2016-06-29 国家电网公司 利用传感网进行多目标跟踪的数据关联方法
CN110288627A (zh) * 2019-05-22 2019-09-27 江苏大学 一种基于深度学习和数据关联的在线多目标跟踪方法
CN110675432A (zh) * 2019-10-11 2020-01-10 智慧视通(杭州)科技发展有限公司 一种基于多维特征融合的视频多目标跟踪方法
CN112926514A (zh) * 2021-03-26 2021-06-08 哈尔滨工业大学(威海) 一种多目标检测及跟踪方法、系统、存储介质及应用
CN113034548A (zh) * 2021-04-25 2021-06-25 安徽科大擎天科技有限公司 一种适用于嵌入式终端的多目标跟踪方法及其系统
CN113379793A (zh) * 2021-05-19 2021-09-10 成都理工大学 基于孪生网络结构和注意力机制的在线多目标跟踪方法
CN113807187A (zh) * 2021-08-20 2021-12-17 北京工业大学 基于注意力特征融合的无人机视频多目标跟踪方法
CN114529581A (zh) * 2022-01-28 2022-05-24 西安电子科技大学 基于深度学习及多任务联合训练的多目标跟踪方法
CN115830631A (zh) * 2022-11-24 2023-03-21 中科天网(广东)科技有限公司 基于姿态辅助遮挡人体再识别的一人一档系统构建方法
CN115937251A (zh) * 2022-11-03 2023-04-07 中国农业大学 一种用于虾类的多目标跟踪方法
CN116152297A (zh) * 2023-03-21 2023-05-23 江苏大学 一种适应车辆运动特点的多目标跟踪方法
CN117036405A (zh) * 2023-08-10 2023-11-10 中科智禾数字科技(北京)有限公司 一种融合多粒度动态外观的抗遮挡目标跟踪方法
CN117252908A (zh) * 2023-07-17 2023-12-19 北京邮电大学 一种基于注意力的抗遮挡多目标跟踪方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112001950B (zh) * 2020-08-25 2024-04-19 天地伟业技术有限公司 一种基于目标检测与特征提取结合模型的多目标跟踪算法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105717505A (zh) * 2016-02-17 2016-06-29 国家电网公司 利用传感网进行多目标跟踪的数据关联方法
CN110288627A (zh) * 2019-05-22 2019-09-27 江苏大学 一种基于深度学习和数据关联的在线多目标跟踪方法
CN110675432A (zh) * 2019-10-11 2020-01-10 智慧视通(杭州)科技发展有限公司 一种基于多维特征融合的视频多目标跟踪方法
CN112926514A (zh) * 2021-03-26 2021-06-08 哈尔滨工业大学(威海) 一种多目标检测及跟踪方法、系统、存储介质及应用
CN113034548A (zh) * 2021-04-25 2021-06-25 安徽科大擎天科技有限公司 一种适用于嵌入式终端的多目标跟踪方法及其系统
CN113379793A (zh) * 2021-05-19 2021-09-10 成都理工大学 基于孪生网络结构和注意力机制的在线多目标跟踪方法
CN113807187A (zh) * 2021-08-20 2021-12-17 北京工业大学 基于注意力特征融合的无人机视频多目标跟踪方法
CN114529581A (zh) * 2022-01-28 2022-05-24 西安电子科技大学 基于深度学习及多任务联合训练的多目标跟踪方法
CN115937251A (zh) * 2022-11-03 2023-04-07 中国农业大学 一种用于虾类的多目标跟踪方法
CN115830631A (zh) * 2022-11-24 2023-03-21 中科天网(广东)科技有限公司 基于姿态辅助遮挡人体再识别的一人一档系统构建方法
CN116152297A (zh) * 2023-03-21 2023-05-23 江苏大学 一种适应车辆运动特点的多目标跟踪方法
CN117252908A (zh) * 2023-07-17 2023-12-19 北京邮电大学 一种基于注意力的抗遮挡多目标跟踪方法
CN117036405A (zh) * 2023-08-10 2023-11-10 中科智禾数字科技(北京)有限公司 一种融合多粒度动态外观的抗遮挡目标跟踪方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Learning a Proposal Classifier for Multiple Object Tracking;Peng Dai 等;arXiv:2103.07889v3;20210331;1-13 *
基于空间注意力机制的视觉多目标跟踪;侯建华;麻建;王超;项俊;;中南民族大学学报(自然科学版);20200804(04);413-419 *
联合检测的视觉多目标跟踪算法研究;宣黎祎;中国优秀硕士学位论文全文数据库 信息科技辑;20220315(第03期);I138-2332 *

Also Published As

Publication number Publication date
CN117495917A (zh) 2024-02-02

Similar Documents

Publication Publication Date Title
Fiaz et al. Handcrafted and deep trackers: Recent visual object tracking approaches and trends
Schneider et al. Past, present and future approaches using computer vision for animal re‐identification from camera trap data
Yun et al. Action-driven visual object tracking with deep reinforcement learning
US20240144489A1 (en) Deep learning method for multiple object tracking from video
Fiaz et al. Tracking noisy targets: A review of recent object tracking approaches
CN111144322A (zh) 一种分拣方法、装置、设备和存储介质
CN101276468A (zh) 在视频帧序列中跟踪目标的由计算机执行的方法
CN112802061B (zh) 一种基于层次化决策网络的鲁棒目标跟踪方法及系统
Munir et al. LDNet: End-to-end lane marking detection approach using a dynamic vision sensor
Ali et al. Multiple object tracking with partial occlusion handling using salient feature points
Farhadi et al. TKD: Temporal knowledge distillation for active perception
Bajestani et al. Tkd: Temporal knowledge distillation for active perception
CN113379795A (zh) 一种基于条件卷积和光流特征的多目标跟踪与分割方法
CN115661193A (zh) 基于时间上下文和信息瓶颈的超声运动跟踪方法及系统
US20220121855A1 (en) Temporal knowledge distillation for active perception
Xing et al. Feature adaptation-based multipeak-redetection spatial-aware correlation filter for object tracking
EP3995992A1 (en) Method and system for detecting an action in a video clip
CN113971688A (zh) 一种增强id重识别的无锚多目标跟踪方法
CN117576530A (zh) 基于运动与外观特征自适应融合的多目标关联与跟踪方法
CN117495917B (zh) 基于jde多任务网络模型的多目标跟踪方法
CN112053386B (zh) 基于深度卷积特征自适应集成的目标跟踪方法
Rai et al. Pearson's correlation and background subtraction (BGS) based approach for object's motion detection in infrared video frame sequences
Khattak et al. AMF-MSPF: A retrospective analysis with online object tracking algorithms
Huang et al. A spatial–temporal contexts network for object tracking
CN116245913A (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