CN115546469A - 一种基于深度神经网络的关键点检测方法 - Google Patents

一种基于深度神经网络的关键点检测方法 Download PDF

Info

Publication number
CN115546469A
CN115546469A CN202210947930.2A CN202210947930A CN115546469A CN 115546469 A CN115546469 A CN 115546469A CN 202210947930 A CN202210947930 A CN 202210947930A CN 115546469 A CN115546469 A CN 115546469A
Authority
CN
China
Prior art keywords
historical
image
key points
key point
key
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
Application number
CN202210947930.2A
Other languages
English (en)
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.)
Zhejiang Wanli University
Original Assignee
Zhejiang Wanli University
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 Zhejiang Wanli University filed Critical Zhejiang Wanli University
Priority to CN202210947930.2A priority Critical patent/CN115546469A/zh
Publication of CN115546469A publication Critical patent/CN115546469A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (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

本发明提供了一种基于深度神经网络的关键点检测方法,包括:步骤S1,对至少一输入图像进行特征提取处理得到包含多个网格的一特征图;步骤S2,针对特征图上的每个网格,统计网格内每个像素点的激活值并将激活值最大的像素点作为候选点;步骤S3,对各候选点对应的激活值由大至小进行排序,取排序靠前的预设数量的各激活值所对应的各候选点作为关键点;步骤S4,针对每个关键点,于特征图内裁剪得到包含关键点的一图像块;步骤S5,针对每个图像块,对图像块依次进行特征提取处理、通道整合处理和编码处理得到对应的一描述符。有益效果是本发明能够根据输入图像处理得到统一的描述符,不受输入图像类别的影响,具有广泛的应用前景。

Description

一种基于深度神经网络的关键点检测方法
技术领域
本发明涉及深度学习的技术领域,具体而言,涉及一种基于深度 神经网络的关键点检测方法。
背景技术
关键点检测及描述是众多计算机视觉任务的核心,包括图像配 准、相机参数矫正、图像拼接、三维重建以及图像水印等,一般而言, 处理过程分为两步:首先是对图像中的关键点进行定位也就是关键点 检测;然后利用定位得到的关键点所在邻域图像的特征对该关键点进 行描述,得到描述符。
近年来,随着自动驾驶、无人机等技术的发展,全景图逐渐成为 了一种主流的图像类型,这种图像类型具有视域广、表达能力强的优 点,在实际系统中得到了广泛应用,然而,相比于传统透视平面图像 关键点检测技术的迅速发展,全景图的关键点检测技术进展缓慢,其 中主要原因就是全景图的几何结构较为复杂,难以直接用传统方法进 行处理,当前的主流方法有两种:第一种是直接用传统平面关键点检 测方法对全景图进行操作,这些方法受限于全景图的复杂几何结构, 精度有限;另一种是针对全景图的几何特征,设计特定的方法,在非 欧几里得空间进行操作,然而,这些方法只能对球面图像进行处理, 而无法对球面图和视角图提供统一的描述符。
发明内容
本发明要解决的是如何对球面图和视角图提供统一的描述符的 问题。
为解决上述问题,本发明提供一种基于深度神经网络的关键点检 测方法,包括以下步骤:
步骤S1,对至少一输入图像进行特征提取处理得到包含多个网 格的一特征图;
步骤S2,针对所述特征图上的每个所述网格,统计所述网格内 每个像素点的激活值并将激活值最大的所述像素点作为候选点;
步骤S3,对各所述候选点对应的所述激活值由大至小进行排序, 取排序靠前的预设数量的各所述激活值所对应的各所述候选点作为 关键点;
步骤S4,针对每个所述关键点,于所述特征图内裁剪得到包含 所述关键点的一图像块;
步骤S5,针对每个所述图像块,对所述图像块依次进行特征提 取处理、通道整合处理和编码处理得到对应的一描述符。
本方案中,不论所述输入图像是视角图像还是全景图像,通过本 方法都可以处理得到对应的所述关键点和所述描述符,且处理得到的 所述描述符位于视角切面空间域中,实现所述描述符的统一。
优选的,执行所述步骤S5之后还包括:
将各所述关键点和各所述关键点对应的所述描述符输入至预先 训练得到的一关键点筛选模型内筛选得到准确的所述关键点和所述 关键点对应的所述描述符。
本方案中,通过所述关键点筛选模型可以对所述步骤S3中得到 的各所述关键点和所述步骤S5中得到的各所述描述符进行筛选,以 筛选出准确的所述关键点和所述关键点对应的所述描述符,提高所述 关键点和所述描述符的准确性。
优选的,执行所述步骤S1之前还包括一模型训练过程,所述模 型训练过程包括:
步骤A1,获取至少一历史图像及所述历史图像对应的多个历史 关键点和各所述历史关键点对应的历史描述符;
步骤A2,针对任意两个所述历史关键点,判断两个所述历史关 键点之间的距离是否大于一预设阈值:
若是,则将两个所述历史关键点标注为正对,并将两个所述历史 关键点对应的所述历史描述符标注为正对组,随后转向步骤A3;
若否,则将两个所述历史关键点标注为负对,并将两个所述历史 关键点对应的所述历史描述符标注为负对组,随后转向所述步骤A3;
步骤A3,针对每一个所述正对组和所述负对组,根据所述正对 组内的各所述历史描述符、所述负对组内的各所述历史描述符、所述 正对组对应的标注为正对的各所述历史关键点以及所述负对组对应 的标注为负对的各所述历史关键点处理得到对应的一对比损失,并根 据所述正对组对应的标注为正对的各所述历史关键点处理得到对应 的一得分损失;
步骤A4,根据所述对比损失和所述得分损失筛选得到准确的各 所述历史关键点和各所述历史关键点对应的所述历史描述符,将所述 历史图像作为输入,将准确的各所述历史关键点和各所述历史关键点 对应的所述历史描述符作为输出,训练得到所述关键点筛选模型。
本方案中,可以将以往处理过的所述历史图像及所述历史图像对 应的多个所述历史关键点和各所述历史关键点对应的所述历史描述 符作为所述关键点筛选模型的训练数据实现资源再利用,通过不同的 所述历史图像对所述关键点筛选模型进行重复训练,可以有效提高筛 选出的所述关键点和所述描述符的准确性。
优选的,所述步骤A4包括:
步骤A41,针对每一个标注为正对的所述历史关键点,根据所述 得分损失和所述对比损失判断所述历史关键点是否准确:
若是,则保留所述历史关键点和所述历史关键点对应的所述历史 描述符,随后转向步骤A42;
若否,则筛去所述历史关键点和所述历史关键点对应的所述历史 描述符,随后转向步骤A42;
步骤A42,针对每一个标注为负对的所述历史关键点,根据所述 得分损失和所述对比损失判断所述历史关键点是否准确:
若是,则保留所述历史关键点和所述历史关键点对应的所述历史 描述符,随后转向步骤A43;
若否,则筛去所述历史关键点和所述历史关键点对应的所述历史 描述符,随后转向步骤A43;
步骤A43,将保留下来的各所述历史关键点和各所述历史描述符 作为准确的各所述历史关键点和各所述历史描述符,并将所述历史图 像作为输入,将准确的各所述历史关键点和各所述历史关键点对应的 所述历史描述符作为输出,训练得到所述关键点筛选模型。
本方案中,通过计算对比损失和得分损失来判断各所述关键点的 准确性可以为各所述关键点的准确性提供数据支撑,筛选出来的所述 关键点和所述描述符则更加准确。
优选的,所述步骤S1包括:
步骤S11,对所述输入图像进行两次下采样得到不同分辨率的两 个第一图像;
步骤S12,针对每一个所述第一图像,对所述第一图像进行特征 提取处理得到不同分辨率的三个第二图像,随后对三个所述第二图像 中分辨率较低的两个所述第二图像分别进行上采样得到相同分辨率 的三个所述第二图像,以及对三个所述第二图像级进行通道连接得到 一第三图像;
步骤S13,将各所述第三图像进行通道整合得到包含多个网格的 所述特征图。
优选的,所述步骤S1中还包括:
判断所述输入图像是否为全景图像:
若否,则对所述输入图像进行两次下采样得到不同分辨率的两个 所述第一图像;
若是,则将所述输入图像投影至球面得到对应的第一球面图像进 行下采样,并将下采样后的所述第一球面图像投影至平面得到其中一 所述第一图像,随后将其中一所述第一图像投影至球面得到对应的第 二球面图像进行下采样,并将下采样后的所述第二球面图像投影至平 面得到另一所述第一图像。
本方案中,考虑到所述输入图像存在全景图像和视角图像两个图 像类别,因此对全景图像和视角图像设计不同的下采样过程,以适配 所述输入图像的图像类别实现完全兼容。
优选的,所述步骤S4中,以所述关键点为中心,于所述特征图 内裁剪得到所述关键点预设范围内的图像作为所述图像块。
优选的,所述步骤S4包括:
判断所述关键点是否是全景图像的关键点:
若否,则于所述特征图内裁剪得到包含所述关键点的所述图像块;
若是,则将所述特征图投影至视角平面上得到对应的平面图像, 并于所述平面图像内裁剪得到包含所述关键点的所述图像块。
本方案中,考虑到所述输入图像存在视角图像和全景图像两种图 像类别,对于视角图像,图像块可以直接通过双线性插值方法得到, 只需要取所述关键点邻域内的数个像素即可,而对于全景图像,由于 全景图像在不同位置的采样率不同,如果直接使用双线性插值方法进 行裁剪将会对图像块引入失真,因此,首先将全景图像投影到球面上, 当标记了所述关键点后,在球面上以所述关键点为中心,在很小的视 域内进行视角投影,将球面上的部分图像投影到视角平面得到对应的 所述平面图像,然后在所述平面图像上剪裁得到所述图像块,通过在 球面上进行裁剪的方式可以避免平面上引入的失真。
附图说明
图1为本发明的步骤流程图;
图2为本发明的模型训练过程的具体流程图;
图3为本发明的步骤A4的具体流程图;
图4为本发明的步骤A1的具体流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结 合附图对本发明的具体实施例做详细的说明。
本发明的较佳的实施例中,基于现有技术中存在的上述问题,现 提供一种基于深度神经网络的关键点检测方法,如图1所示,包括:
步骤S1,对至少一输入图像进行特征提取处理得到包含多个网 格的一特征图;
步骤S2,针对特征图上的每个网格,统计网格内每个像素点的 激活值并将激活值最大的像素点作为候选点;
步骤S3,对各候选点对应的激活值由大至小进行排序,取排序 靠前的预设数量的各激活值所对应的各候选点作为关键点;
步骤S4,针对每个关键点,于特征图内裁剪得到包含关键点的 一图像块;
步骤S5,针对每个图像块,对图像块依次进行特征提取处理、 通道整合处理和编码处理得到对应的一描述符。
具体地,本实施例中,不论输入图像是视角图像还是全景图像, 通过本方法都可以处理得到对应的关键点和描述符,且处理得到的描 述符位于视角切面空间域中,实现描述符的统一。
具体地,本实施例中,步骤S2通过可微分候选位置排序操作实 现,对于步骤S1中处理得到的特征图,首先利用Spatial Softmax操 作在每个网格内计算候选点的位置,也就是说将每一个网格内激活值 最大的像素点找到,并计算其坐标作为候选点。
优选的,Spatial Softmax操作可以形式化为
Figure BDA0003788068240000071
其中,
W表示卷积核;
NW×NW表示标识的卷积核的尺寸;
(u,v)表示像素点的坐标;
cwi表示网格左上角的坐标;
mi表示网格内归一化的激活值,
Figure RE-GDA0003940699640000073
⊙表示逐点乘积运算。
优选的,得到了候选点及其激活值后可以使用可微分排序方法对 它们进行由大至小的排序,将前K个激活值较大的候选点标记为关键 点。
具体地,本实施例中,步骤S5通过描述器进行实现,由于全景 图像和视角图像得到的图像块都被投影到了视角切面的平面,因此该 描述器可以直接对来自不同图像类别的输入图像的图像块进行操作 得到统一的描述符。
优选的,对于每个图像块,首先使用3层卷积进行特征提取,考 虑到全景图像的旋转特性,这里使用旋转等变的群卷积进行网络构建, 提取特征后,使用一层池化层进行群通道整合,然后利用两层全连接 层对特征进行编码得到128维的向量,作为该关键点的描述符。
本发明的较佳的实施例中,执行步骤S5之后还包括:
将各关键点和各关键点对应的描述符输入至预先训练得到的一 关键点筛选模型内筛选得到准确的关键点和关键点对应的描述符。
具体地,本实施例中,通过关键点筛选模型可以对步骤S3中得 到的各关键点和步骤S5中得到的各描述符进行筛选,以筛选出准确 的关键点和关键点对应的描述符,提高关键点和描述符的准确性。
优选的,根据本方法构造得到视角模块和球面模块后,视角模块 处理得到的各关键点和各关键点对应的描述符作为标签对球面模块 进行监督,同理,球面模块处理得到的各关键点和各关键点对应的描 述符作为标签对视角模块进行监督,以提高关键点和描述符的准确性。
本发明的较佳的实施例中,如图2所示,执行步骤S1之前还包 括一模型训练过程,模型训练过程包括:
步骤A1,获取至少一历史图像及历史图像对应的多个历史关键 点和各历史关键点对应的历史描述符;
步骤A2,针对任意两个历史关键点,判断两个历史关键点之间 的距离是否大于一预设阈值:
若是,则将两个历史关键点标注为正对,并将两个历史关键点对 应的历史描述符标注为正对组,随后转向步骤A3;
若否,则将两个历史关键点标注为负对,并将两个历史关键点对 应的历史描述符标注为负对组,随后转向步骤A3;
步骤A3,针对每一个正对组和负对组,根据正对组内的各历史 描述符、负对组内的各历史描述符、正对组对应的标注为正对的各历 史关键点以及负对组对应的标注为负对的各历史关键点处理得到对 应的一对比损失,并根据正对组对应的标注为正对的各历史关键点处 理得到对应的一得分损失;
步骤A4,根据对比损失和得分损失筛选得到准确的各历史关键 点和各历史关键点对应的历史描述符,将历史图像作为输入,将准确 的各历史关键点和各历史关键点对应的历史描述符作为输出,训练得 到关键点筛选模型。
具体地,本实施例中,可以将以往处理过的历史图像及历史图像 对应的多个历史关键点和各历史关键点对应的历史描述符作为关键 点筛选模型的训练数据实现资源再利用,通过不同的历史图像对关键 点筛选模型进行重复训练,可以有效提高筛选出的关键点和描述符的 准确性。
本发明的较佳的实施例中,如图3所示,步骤A4包括:
步骤A41,针对每一个标注为正对的历史关键点,根据得分损失 和对比损失判断历史关键点是否准确:
若是,则保留历史关键点和历史关键点对应的历史描述符,随后 转向步骤A42;
若否,则筛去历史关键点和历史关键点对应的历史描述符,随后 转向步骤A42;
步骤A42,针对每一个标注为负对的历史关键点,根据得分损失 和对比损失判断历史关键点是否准确:
若是,则保留历史关键点和历史关键点对应的历史描述符,随后 转向步骤A43;
若否,则筛去历史关键点和历史关键点对应的历史描述符,随后 转向步骤A43;
步骤A43,将保留下来的各历史关键点和各历史描述符作为准确 的各历史关键点和各历史描述符,并将历史图像作为输入,将准确的 各历史关键点和各历史关键点对应的历史描述符作为输出,训练得到 关键点筛选模型。
具体地,本实施例中,通过计算对比损失和得分损失来判断各关 键点的准确性可以为各关键点的准确性提供数据支撑,筛选出来的关 键点和描述符则更加准确。
本发明的较佳的实施例中,如图4所示,步骤S1包括:
步骤S11,对输入图像进行两次下采样得到不同分辨率的两个第 一图像;
步骤S12,针对每一个第一图像,对第一图像进行特征提取处理 得到不同分辨率的三个第二图像,随后对三个第二图像中分辨率较低 的两个第二图像分别进行上采样得到相同分辨率的三个第二图像,以 及对三个第二图像级进行通道连接得到一第三图像;
步骤S13,将各第三图像进行通道整合得到包含多个网格的特征 图。
具体地,本实施例中,步骤S1通过特征提取器进行实现,对于 输入图像,首先对其进行两次下采样得到不同分辨率的两个第一图像 构造尺度图像金字塔,该操作的目的在于对图像尺度变换鲁棒,随后, 每一个第一图像都输入一个共享的特征提取器进行处理得到3个不 同分辨率的第二图像,随后对两个低分辨率的第二图像进行上采样, 将其尺寸变换为与高分辨率第二图像相同,随后再将3个第二图像按 照通道进行连接得到一个多通道的第三图像,最后进行通道整合得到 用于提取关键点的特征图。
优选的,特征提取器包含5层网络,前4层为3x3卷积核,最后 一层为1x1卷积核,通过最后一层的1x1卷积核进行通道整合。
优选的,考虑到视角图像和全景图像的空间结构不同,可以分别 使用对应的特征提取器,在构造图像尺度金字塔时,由于视角图像是 平面图像,因此可以直接使用双线性插值方法进行下采样,得到尺度 变换后的第一图像,而对于全景图像,考虑到全景图像在不同纬度上 的采样率不同,直接使用双线性插值方法会带来较大的失真,影响结 果的准确率,因此,可以首先将全景图像投影到球面得到球面图像, 这是全景图像最原始的表达,不会引入任何失真或变形,随后,我们 在球面图像上,通过改变采样率从而改变采样点的个数,然后使用等 矩形投影方法将球面图像投影到平面得到重新采样的全景图像,由于该全景图的采样点个数减少,因此分辨率降低,相对于原全景图像进 行了尺度变换。
优选的,在构造特征提取器时,对于视角图像可以直接使用普通 的2D卷积方法进行处理,而对于全景图像,由于其几何失真,这种 处理方式会带来较大的不准确性,因此提出一种适应于全景图像失真 的球面卷积操作:对于一个平面卷积核,首先使用反视角投影方法将 它投影到球面,这一步相当于利用球面把它重参数化,然后使用等矩 形映射方法将重参数化后的卷积核投影到平面得到卷积核中元素的 新位置,随后,卷积操作便可以通过变形卷积实现。
本发明的较佳的实施例中,步骤S1中还包括:
判断输入图像是否为全景图像:
若否,则对输入图像进行两次下采样得到不同分辨率的两个第一 图像;
若是,则将输入图像投影至球面得到对应的第一球面图像进行下 采样,并将下采样后的第一球面图像投影至平面得到其中一第一图像, 随后将其中一第一图像投影至球面得到对应的第二球面图像进行下 采样,并将下采样后的第二球面图像投影至平面得到另一第一图像。
具体地,本实施例中,考虑到输入图像存在全景图像和视角图像 两个图像类别,因此对全景图像和视角图像设计不同的下采样过程, 以适配输入图像的图像类别实现完全兼容。
本发明的较佳的实施例中,步骤S4中,以关键点为中心,于特 征图内裁剪得到关键点预设范围内的图像作为图像块。
本发明的较佳的实施例中,步骤S4包括:
判断关键点是否是全景图像的关键点:
若否,则于特征图内裁剪得到包含关键点的图像块;
若是,则将特征图投影至视角平面上得到对应的平面图像,并于 平面图像内裁剪得到包含关键点的图像块。
具体地,本实施例中,考虑到输入图像存在视角图像和全景图像 两种图像类别,对于视角图像,图像块可以直接通过双线性插值方法 得到,只需要取关键点邻域内的数个像素即可,而对于全景图像,由 于全景图像在不同位置的采样率不同,如果直接使用双线性插值方法 进行裁剪将会对图像块引入失真,因此,首先将全景图像投影到球面 上,当标记了关键点后,在球面上以关键点为中心,在很小的视域内 进行视角投影,将球面上的部分图像投影到视角平面得到对应的平面 图像,然后在平面图像上剪裁得到图像块,通过在球面上进行裁剪的 方式可以避免平面上引入的失真。
具体地,本实施例中,基于本方法可以构建得到视角模块和球面 模块两个模块,通过视角模块对视角图像进行处理得到对应的关键点 和描述符,通过球面模块对球面图像进行处理得到对应的关键点和描 述符,视角模块和球面模块之间可以进行自监督训练。
优选的,在具体训练过程中,先对视角模块进行预训练,训练时 采用孪生网络架构,输入成对的视角图像至孪生网络架构的两个分支, 这两个分支的结构和参数均是共享的,通过关键点检测器得到两个视 角图像的关键点后,使用一个自标注层将平面内的关键点映射到球面 上,然后在球面上计算球面半正矢距离(即两个关键点在球面上的距 离),对关键点进行标注,距离较近的关键点标注为正对,距离较远 的关键点标注为负对,对于描述器输出的两个视角图像的所有关键点 的描述符,根据自标注层的标注结果进行分组,将描述符分为正对组 和负对组并构造对比损失,同时,对于正对组的关键点构造得分损失, 最后利用对比损失以及得分损失联合对视角模块进行预训练,这里为 了对关键点进行球面映射,需要输入视角图像的相机位置以及视域等 进行映射所必要的参数。
优选的,于训练完视角模块后对球面模块进行预训练,由于描述 器在两个模块中共享,因此在球面模块中不做训练,也就是说描述器 的训练完全在视角模块中完成,在第一步预训练了视角模块后,视角 模块已经具备了初步的标注关键点的能力,因此,在这一步,我们使 用一组能覆盖整个球面的视角图像,输入视角关键点检测器得到视角 关键点,用来监督球面关键点检测器的训练。
优选的,具体训练时,先给定全景图像将其输入球面关键点检测 器得到一组球面关键点,然后在球面空间内寻找与其距离最近的视角 关键点标记为一对,最后再训练球面关键点检测器以最小化成对的球 面-视角关键点的球面半正矢距离,可以通过损失函数来确定一个球 面-视角关键点对。
优选的,最后对视角模块和球面模块进行联合训练,输入图像为 三元组形式包含成对的视角图像和一个全景图像,将其分别输入其对 应的分支可以独立进行前向传播,在训练时,为了检测视角等变关键 点,采用两个模块互为监督轮流训练的方式即互监督训练。
优选的,在固定球面模块训练视角模块时,视角模块采用孪生网 络架构,输入成对的视角图像计算视角图关键点及描述符,对于计算 得到的关键点,采用自标注层进行关键点和描述符进行标注,另外, 由于第三个分支为球面图像分支,因此在此过程中球面模块也参与监 督视角模块的训练,同样的,球面图像输入球面模块得到关键点和描 述符,分别与两个视角图关键点及描述符进行标注得到正对和负对, 参与构建对比损失和得分损失用于训练视角模块,也就是说,在此过 程中,损失函数由三部分组成,分别是两个视角图像构造的损失,以 及两个视角图像分别与全景图像构造的损失。
优选的,在固定视角模块训练球面模块时,仍然采用相似的架构, 同样的,描述器在这个过程中不参与训练,只有球面关键点检测器被 训练,因此使用两个视角图像得到的关键点监督球面关键点检测器, 具体的操作为:计算得到两个视角图像的关键点作为监督数据,将球 面图像输入球面关键点检测器得到球面关键点,然后计算两个视角图 像覆盖的球面区域,将不属于该区域的所有球面关键点都屏蔽掉,也 就是说该过程中只考虑孪生的视角图像覆盖区域的球面关键点,对于 被覆盖的球面关键点,在球面上计算其与视角关键点的距离,选择距 离最近的视角关键点标注为一对,再构造损失函数最小化成对的球面-视角关键点即可对球面关键点检测器进行训练,训练完一组视角图 像后,变换下一组视角图像,即可对其他球面区域进行训练,当训练 数据足够大时,即可覆盖整个球面。
具体地,本实施例中,由于上述的训练过程分为三个阶段,因此 应该针对三个阶段分别设计损失函数,在预训练视角模块时损失函数 由两部分构成:正对和负对构建的对比损失和正对中关键点构建的得 分损失,即
L(x0,x1)=λcLc(F,l)+λsLs(x0,x1,p0,p1,l0,l1)
其中,x0、x1分别是两个输入的视角图像,F是构造的视角图关 键点及描述符对,l是关键点对的标签,p0和p1是两个视角图关键点 的得分,l0和l1是两个视角图关键点的标签,Lc和Ls分别是对比损失 和得分损失,λc和λs分别为两个损失对应的权重。
优选的,对比损失的计算公式如下所示:
Figure BDA0003788068240000141
其中,D为描述符,Np和Nn分别为正对和负对的个数。
优选的,得分损失的计算公式如下所示:
Figure BDA0003788068240000142
其中,Np+Nn=N,ε是一个加权参数。
优选的,预训练球面模块时损失函数的表示式如下所示:
Figure BDA0003788068240000151
其中,xs为球面图,xp为一组视角图,ms为球面关键点的个数。
优选的,联合训练时,损失函数的表示式如下所示:
L(I0,I1,Is)=λpLp(I0,I1)+λqLq(I0,I1,Is)
其中,Lp为视角图关键点构成的损失,Lq为视角图分别与球面图 关键点构成的损失,λp和λq分别是两种损失对应的权重。
优选的,损失函数是训练过程中用来刻画模型输出和实际真实数 据的差距程度,这里实现的是自监督学习,也就是用视角模块检测的 视角关键点以及描述符为球面模块提供监督,为了达到此目的,视角 模块需要设计损失函数、视角模块损失、球面模块损失以及两个模块 联合对抗训练时的损失。
虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领 域技术人员,在不脱离本公开的精神和范围的前提下,可进行各种变 更与修改,这些变更与修改均将落入本发明的保护范围。

Claims (8)

1.一种基于深度神经网络的关键点检测方法,其特征在于,包括以下步骤:
步骤S1,对至少一输入图像进行特征提取处理得到包含多个网格的一特征图;
步骤S2,针对所述特征图上的每个所述网格,统计所述网格内每个像素点的激活值并将激活值最大的所述像素点作为候选点;
步骤S3,对各所述候选点对应的所述激活值由大至小进行排序,取排序靠前的预设数量的各所述激活值所对应的各所述候选点作为关键点;
步骤S4,针对每个所述关键点,于所述特征图内裁剪得到包含所述关键点的一图像块;
步骤S5,针对每个所述图像块,对所述图像块依次进行特征提取处理、通道整合处理和编码处理得到对应的一描述符。
2.根据权利要求1所述的关键点检测方法,其特征在于,执行所述步骤S5之后还包括:
将各所述关键点和各所述关键点对应的所述描述符输入至预先训练得到的一关键点筛选模型内筛选得到准确的所述关键点和所述关键点对应的所述描述符。
3.根据权利要求1所述的关键点检测方法,其特征在于,执行所述步骤S1之前还包括一模型训练过程,所述模型训练过程包括:
步骤A1,获取至少一历史图像及所述历史图像对应的多个历史关键点和各所述历史关键点对应的历史描述符;
步骤A2,针对任意两个所述历史关键点,判断两个所述历史关键点之间的距离是否大于一预设阈值:
若是,则将两个所述历史关键点标注为正对,并将两个所述历史关键点对应的所述历史描述符标注为正对组,随后转向步骤A3;
若否,则将两个所述历史关键点标注为负对,并将两个所述历史关键点对应的所述历史描述符标注为负对组,随后转向所述步骤A3;
步骤A3,针对每一个所述正对组和所述负对组,根据所述正对组内的各所述历史描述符、所述负对组内的各所述历史描述符、所述正对组对应的标注为正对的各所述历史关键点以及所述负对组对应的标注为负对的各所述历史关键点处理得到对应的一对比损失,并根据所述正对组对应的标注为正对的各所述历史关键点处理得到对应的一得分损失;
步骤A4,根据所述对比损失和所述得分损失筛选得到准确的各所述历史关键点和各所述历史关键点对应的所述历史描述符,将所述历史图像作为输入,将准确的各所述历史关键点和各所述历史关键点对应的所述历史描述符作为输出,训练得到所述关键点筛选模型。
4.根据权利要求3所述的关键点检测方法,其特征在于,所述步骤A4包括:
步骤A41,针对每一个标注为正对的所述历史关键点,根据所述得分损失和所述对比损失判断所述历史关键点是否准确:
若是,则保留所述历史关键点和所述历史关键点对应的所述历史描述符,随后转向步骤A42;
若否,则筛去所述历史关键点和所述历史关键点对应的所述历史描述符,随后转向步骤A42;
步骤A42,针对每一个标注为负对的所述历史关键点,根据所述得分损失和所述对比损失判断所述历史关键点是否准确:
若是,则保留所述历史关键点和所述历史关键点对应的所述历史描述符,随后转向步骤A43;
若否,则筛去所述历史关键点和所述历史关键点对应的所述历史描述符,随后转向步骤A43;
步骤A43,将保留下来的各所述历史关键点和各所述历史描述符作为准确的各所述历史关键点和各所述历史描述符,并将所述历史图像作为输入,将准确的各所述历史关键点和各所述历史关键点对应的所述历史描述符作为输出,训练得到所述关键点筛选模型。
5.根据权利要求1所述的关键点检测方法,其特征在于,所述步骤S1包括:
步骤S11,对所述输入图像进行两次下采样得到不同分辨率的两个第一图像;
步骤S12,针对每一个所述第一图像,对所述第一图像进行特征提取处理得到不同分辨率的三个第二图像,随后对三个所述第二图像中分辨率较低的两个所述第二图像分别进行上采样得到相同分辨率的三个所述第二图像,以及对三个所述第二图像级进行通道连接得到一第三图像;
步骤S13,将各所述第三图像进行通道整合得到包含多个网格的所述特征图。
6.根据权利要求5所述的关键点检测方法,其特征在于,所述步骤S1中还包括:
判断所述输入图像是否为全景图像:
若否,则对所述输入图像进行两次下采样得到不同分辨率的两个所述第一图像;
若是,则将所述输入图像投影至球面得到对应的第一球面图像进行下采样,并将下采样后的所述第一球面图像投影至平面得到其中一所述第一图像,随后将其中一所述第一图像投影至球面得到对应的第二球面图像进行下采样,并将下采样后的所述第二球面图像投影至平面得到另一所述第一图像。
7.根据权利要求1所述的关键点检测方法,其特征在于,所述步骤S4中,以所述关键点为中心,于所述特征图内裁剪得到所述关键点预设范围内的图像作为所述图像块。
8.根据权利要求1所述的关键点检测方法,其特征在于,所述步骤S4包括:
判断所述关键点是否是全景图像的关键点:
若否,则于所述特征图内裁剪得到包含所述关键点的所述图像块;
若是,则将所述特征图投影至视角平面上得到对应的平面图像,并于所述平面图像内裁剪得到包含所述关键点的所述图像块。
CN202210947930.2A 2022-08-09 2022-08-09 一种基于深度神经网络的关键点检测方法 Pending CN115546469A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210947930.2A CN115546469A (zh) 2022-08-09 2022-08-09 一种基于深度神经网络的关键点检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210947930.2A CN115546469A (zh) 2022-08-09 2022-08-09 一种基于深度神经网络的关键点检测方法

Publications (1)

Publication Number Publication Date
CN115546469A true CN115546469A (zh) 2022-12-30

Family

ID=84724429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210947930.2A Pending CN115546469A (zh) 2022-08-09 2022-08-09 一种基于深度神经网络的关键点检测方法

Country Status (1)

Country Link
CN (1) CN115546469A (zh)

Similar Documents

Publication Publication Date Title
CN110738697B (zh) 基于深度学习的单目深度估计方法
CN110503112B (zh) 一种增强特征学习的小目标检测及识别方法
US20230206603A1 (en) High-precision point cloud completion method based on deep learning and device thereof
CN113065546B (zh) 一种基于注意力机制和霍夫投票的目标位姿估计方法及系统
CN110059728B (zh) 基于注意力模型的rgb-d图像视觉显著性检测方法
CN111797841B (zh) 一种基于深度残差网络的视觉显著性检测方法
CN111553949A (zh) 基于单帧rgb-d图像深度学习对不规则工件的定位抓取方法
CN104217459B (zh) 一种球面特征提取方法
CN114724155A (zh) 基于深度卷积神经网络的场景文本检测方法、系统及设备
CN112818969A (zh) 一种基于知识蒸馏的人脸姿态估计方法及系统
CN113449691A (zh) 一种基于非局部注意力机制的人形识别系统及方法
CN115439694A (zh) 一种基于深度学习的高精度点云补全方法及装置
CN115147488B (zh) 一种基于密集预测的工件位姿估计方法与抓取系统
CN115238758A (zh) 一种基于点云特征增强的多任务三维目标检测方法
CN113971764A (zh) 一种基于改进YOLOv3的遥感图像小目标检测方法
CN115937552A (zh) 一种基于融合手工特征与深度特征的图像匹配方法
CN115937736A (zh) 基于注意力和上下文感知的小目标检测方法
CN115147418A (zh) 缺陷检测模型的压缩训练方法和装置
CN109919215B (zh) 基于聚类算法改进特征金字塔网络的目标检测方法
CN114596503A (zh) 一种基于遥感卫星影像的道路提取方法
CN115019201A (zh) 一种基于特征精细化深度网络的弱小目标检测方法
CN114445620A (zh) 一种改进Mask R-CNN的目标分割方法
CN117079125A (zh) 一种基于改进型YOLOv5的猕猴桃授粉花朵识别方法
CN116051808A (zh) 一种基于YOLOv5的轻量化零件识别定位方法
CN115546469A (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