CN111127495A - 一种关于图像关键点检测的神经网络模型建立方法 - Google Patents
一种关于图像关键点检测的神经网络模型建立方法 Download PDFInfo
- Publication number
- CN111127495A CN111127495A CN201911225292.8A CN201911225292A CN111127495A CN 111127495 A CN111127495 A CN 111127495A CN 201911225292 A CN201911225292 A CN 201911225292A CN 111127495 A CN111127495 A CN 111127495A
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- image
- data
- layer
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
一种关于图像关键点检测的神经网络模型建立方法,其特征在于,包括如下步骤:获取图像关键点数据集步骤,所述数据集由多个图像及图像关键点的原始位置坐标组成;预处理所述数据集步骤,将数据集中的图像统一缩放至指定尺寸,将所述图像上各像素值进行归一化;数据集分类步骤,将预处理后的所述数据集分为测试集、验证集及测试集;数据训练步骤,将测试集中的数据输入神经网络模型中进行训练,得到多个误差值;修正神经网络模型参数步骤,用所述数据训练步骤得到的每个误差值反向输入所述神经网络模型,以修正所述神经网络模型的参数,并用测试集及验证集数据对修正后的模型进行验证和测试,得到最终的神经网络模型。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种关于图像关键点检测的神经网络模型建立方法。
背景技术
目前,人体尺寸的测量主要依赖于人工。随着智能手机的普及,图像的采集越来越方便。图像处理技术可利用计算机等设备对图像自动处理,提取图像中有用的数据。利用图像处理技术,可以对图像中人体轮廓进行特征提取,进而对特征数据处理来获取人体尺寸信息进行后续处理。传统的图像处理方法通过图像分割得到着衣人体轮廓,需要后续处理才能得到净体轮廓特征用于人体测量,鲁棒性不够高。深度神经网络是一种强大的图像处理工具,利用图像不同层次的特征能有效的提取图像中的信息。利用深度神经网络,结合大量的人体轮廓特征数据集,可以通过端到端的方式直接通过人体图像获得人体轮廓特征。相较于传统的图像处理方式,针对不同环境下不同体型的人体图像,深度神经网络提取图像中人体轮廓特征有更高的准确性和鲁棒性。
发明内容
基于以上问题,本发明设计一种关于图像关键点检测的神经网络模型建立方法,其包括如下步骤:
获取图像关键点数据集步骤,所述数据集由多个图像及图像关键点的原始位置坐标组成;
预处理所述数据集步骤,将数据集中的图像统一缩放至指定尺寸,并将轮廓关键点的原始位置坐标映射至缩放后的图像上,然后将所述图像上各像素值进行归一化;
数据集分类步骤,将预处理后的所述数据集分为测试集、验证集及测试集;
数据训练步骤,将测试集中的数据输入神经网络模型中进行训练,输出训练后的轮廓关键点预测位置坐标,并将其与原始位置坐标进行计算,得到多个误差值;
修正神经网络模型参数步骤,用所述数据训练步骤得到的每个误差值反向输入所述神经网络模型,以修正所述神经网络模型的参数。
进一步的,在所述修正神经网络模型参数步骤之后,还包括验证神经网络模型的步骤,其方法为,将所述验证集的数据在多个修正后的神经网络模型上执行一次数据训练步骤,计算验证集上每个数据的平均误差值,保存平均误差值最小的验证神经网络模型。
进一步的,在验证神经网络模型的步骤之后,将所述测试集数据输入所述验证神经网络模型,计算测试集上每个数据的测试平均误差值,经过多次数据训练、验证及测试后,所述测试集上平均误差最小的神经网络模型为最终的神经网络模型。
进一步的,数据训练步骤为:将归一化的图像数据输入特征提取模块,特征提取模块输出图像低级特征的响应值,所述响应值经过一个Hourglass模块及一个Bottle模块的计算后,输出到FC全连接层,FC的全连接层输出到Score层,该结构可以不断重复,最后一个阶段的输出值为Score层的激活值,Score层每个通道对应于一个关键点的热图预测,热图数值最大的坐标即为网络对于该特征点的预测。
进一步的,所述特征提取模块为VGG16、VGG19或者ResNet模型。
进一步的,所述图像数值在Hourglass模块中运算逻辑为:输入值经过至少一个Maxpool和至少一个Bottle模块,尺寸不断缩小至原始图像大小的预定比例,中间经过两个个Bottle模块,再经过Upsample层进行上采样,将图像大小恢复至进行上一次最大池化之前的尺寸,再和上一次最大池化之前的原始图像逐像素相加,不断重复此过程,直到恢复至输入Hourglass模块的原始尺寸。
进一步的,所述图像数值在Bottle模块中运算逻辑为:输入值经过一个BatchNormalization层进行批标准化,然后经过Relu卷积层,再经过卷积层将图像大小缩小预定比例,中间经过一个Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层后图像大小不变,然后再经过Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层和Upsample上采样层恢复至输入图像大小,再和输入图像对应通道逐像素相加。
进一步的,将图像大小缩小的比例为2n,n为自然数。
进一步的,所述测试集、验证集及测试集的数据量比为4~8:1~3:1~3。优选测试集、验证集及测试集的数据量比为6:2:2,测试集的需要预备较多的数据量,以对神经网络模型进行反复的修正,得到误差更小的神经网络模型。
进一步的,将各像素值进行归一化的方法为:计算图像数据集中所有图像RGB各个通道的均值M和方差N,图像像素值为I,归一化后的像素值为(I-M)/N。
本发明的有益下过在于:
1.本发明采用数据驱动的方式,利用深度神经网络处理图像数据,有更好的准确性和鲁棒性。
2.本发明采用了端到端的方式处理人体图像数据,通过神经网络直接输入数据输出人体轮廓关键点的位置,不需要经过多步处理从而减小了误差。
3.本发明中采用的深度神经网络结构,根据实际训练的结果可以很方便的进行修改,对于最终需要预测的关键点数量也没有限制,可以根据需要对轮廓上的关键点进行增删。
附图说明
图1为本发明神经网络模型建立方法示意图;
图2为本发明神经网络整体结构示意图;
图3为本发明Hourglass模块结构示意图;
图4为本发明bottle模块结构示意图。
具体实施方式
如图1-图4所示,本发明以人体轮廓关键点为例,所述的关于图像关键点检测的神经网络模型建立方法步骤如下:
S10准备人体轮廓关键点数据集。数据集分为人体图像数据和该图像上对应的人体净体轮廓关键点的位置坐标。人体图像数据分为人体正面和侧面特定姿势下的图像数据,轮廓关键点位于人体轮廓上,可根据需要指定数量。
S12数据集的预处理。将图像统一缩放至指定尺寸,并将轮廓关键点的在图像上的位置坐标映射至缩放后的图像上。计算图像数据集中所有图像RGB各个通道的均值M和方差N,对于图像I,对RGB各个通道的像素值进行归一化操作,归一化后的像素值为(I-M)/N。
S14根据6:2:2的比例将数据集分为训练集、验证集、测试集。
S16对训练集数据进行训练。神经网络的总体结构如图2所示,数据从左侧输入,右侧输出。Backbone为图像的低级特征提取部分,使用训练好的VGG16、VGG19或者ResNet模型的低级特征提取层。Backbone的输出为图像低级特征的响应值,经过一个Hourglass模块、一个Bottle模块,输出到FC全连接层,FC的全连接层输出到Score层,Score层的通道数为需要检测的特征点的数量。FC层的激活值以及Score层的激活值通过Conv卷积层恢复至Backbone输出值相同的通道数,然后各通道逐像素相加,作为下一阶段的输入值。该结构可以不断重复,根据具体的训练效果调整堆叠数量。最后一个阶段的输出值为Score层的激活值,Score层每个通道对应于一个关键点的热图预测,热图数值最大的坐标即为网络对于该特征点的预测。
Hourglass模块如图3所示。输入值经过一个Maxpool最大池化层和Bottle模块,尺寸不断缩小至原始图像大小的预定大小,中间经过两个Bottle模块,再经过Upsample层进行上采样,将图像大小恢复至进行上一次最大池化之前的尺寸,再和上一次最大池化之前的原始图像逐像素相加,不断重复此过程,直到恢复至输入Hourglass模块的原始尺寸。
Bottle模块如图4所示。输入值经过一个Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层将图像大小缩小为原始图像尺寸的1/4(或其他的比例大小),中间经过一个Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层后图像大小不变,然后再经过Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层和Upsample上采样层恢复至输入图像大小,再和输入图像对应通道逐像素相加。
训练时使用训练集中的数据输入网络,使用图2所述的神经网络模型结构,通过每次数据在网络中前向传播(即训练数据),神经网络模型输出得到预测的各个关键点的位置坐标,与数据标记的位置坐标计算欧式距离,该欧式距离数值为该次预测的误差,然后利用该误差值进行反向传播修正该神经网络模型的参数,即与训练数据相反的方向输入该神经网络模型。
S18验证修正后的神经网络模型。训练集中的数据全部输入到神经网络模型中进行执行一次数据训练,计算误差再进行反向输入修正神经网络模型参数一次为一个世代。每个世代结束后,将验证集的数据输入神经网络模型执行一次数据训练,并计算验证集上数据通过数据训练后的平均误差,如果该误差小于之前每个世代结束后验证集数据训练后的平均误差,则保存该神经网络模型文件。
S20测试神经网络模型。经过若干世代,选择在验证集上误差最小的神经网络模型作为该次训练的结果进行测试,即,将测试集数据输入该神经网络模型中,以计算测试集上数据的平均误差,该平均误差作为该次训练结果的误差值。经过若干次训练,测试集上误差最小的神经网络模型文件为最终的神经网络模型文件。
网络中各层的预设参数根据需要处理的图像大小和数量做具体的调整。得到的最终神经网络模型用于图像关键点的检测,误差较小,可以为3D人体模型的建立提供更准确的模型数据。
需要指出的是,本发明以人体图像关键点检测为例,对于其他拍摄目标的关键点检测也包含在此发明所述的技术方案范围内。本发明所述检测人体图像关键点的方法根据实际训练的结果可以很方便的进行神经网络模型数据修改,对于最终需要预测的关键点数量也没有限制,可以根据需要对需要预测的轮廓上的关键点进行增删。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
Claims (10)
1.一种关于图像关键点检测的神经网络模型建立方法,其特征在于,包括如下步骤:
获取图像关键点数据集步骤,所述数据集由多个图像及图像关键点的原始位置坐标组成;
预处理所述数据集步骤,将数据集中的图像统一缩放至指定尺寸,并将轮廓关键点的原始位置坐标映射至缩放后的图像上,然后将所述图像上各像素值进行归一化;
数据集分类步骤,将预处理后的所述数据集分为测试集、验证集及测试集;
数据训练步骤,将测试集中的数据输入神经网络模型中进行训练,输出训练后的轮廓关键点预测位置坐标,并将其与原始位置坐标进行计算,得到多个误差值;
修正模型参数步骤,用所述数据训练步骤得到的每个误差值反向输入所述神经网络模型,以修正所述神经网络模型的参数,以得到误差较小的神经网络模型进行图像关键点检测。
2.如权利要求1所述的神经网络模型建立方法,其特征在于,在所述修正模型参数步骤之后,还包括验证神经网络模型的步骤,其方法为,将所述验证集的数据在多个修正后的神经网络模型上执行一次数据训练步骤,计算验证集上每个数据的平均误差值,保存平均误差值最小的验证神经网络模型。
3.如权利要求2所述的神经网络模型建立方法,其特征在于,在验证神经网络模型的步骤之后,还包括测试神经网络模型的步骤,具体方法为:将所述测试集数据输入所述验证神经网络模型,计算测试集上每个数据的测试平均误差值,经过多次数据训练、验证及测试后,所述测试集上平均误差最小的神经网络模型为最终神经网络模型,使用该最终神经网络模型进行图像关键点的检测。
4.如权利要求1所述的神经网络模型建立方法,其特征在于,数据训练步骤为:将归一化的图像数据输入特征提取模块,特征提取模块输出图像低级特征的响应值,所述响应值经过一个Hourglass模块及一个Bottle模块的计算后,输出到FC全连接层,FC的全连接层输出到Score层,该结构可以不断重复,最后一个阶段的输出值为Score层的激活值,Score层每个通道对应于一个关键点的热图预测,热图数值最大的坐标即为网络对于该特征点的预测。
5.如权利要求4所述的神经网络模型建立方法,其特征在于,所述特征提取模块为VGG16、VGG19或者ResNet模型。
6.如权利要求4所述的神经网络模型建立方法,其特征在于,所述图像数值在Hourglass模块中运算逻辑为:输入值经过至少一个Maxpool和至少一个Bottle模块,尺寸不断缩小至原始图像大小的预定比例,中间经过两个个Bottle模块,再经过Upsample层进行上采样,将图像大小恢复至进行上一次最大池化之前的尺寸,再和上一次最大池化之前的原始图像逐像素相加,不断重复此过程,直到恢复至输入Hourglass模块的原始尺寸。
7.如权利要求4所述的神经网络模型建立方法,其特征在于,所述图像数值在Bottle模块中运算逻辑为:输入值经过一个Batch Normalization层进行批标准化,然后经过Relu卷积层,再经过卷积层将图像大小缩小预定比例,中间经过一个Batch Normalization层进行批标准化,然后经过Relu层,再经过卷积层后图像大小不变,然后再经过BatchNormalization层进行批标准化,然后经过Relu层,再经过卷积层和Upsample上采样层恢复至输入图像大小,再和输入图像对应通道逐像素相加。
8.如权利要求7或8所述的神经网络模型建立方法,其特征在于,将图像大小缩小的比例为2n,n为自然数。
9.如权利要求1所述的神经网络模型建立方法,其特征在于,所述测试集、验证集及测试集的数据量比为4~8:1~3:1~3。
10.如权利要求1所述的神经网络模型建立方法,其特征在于,将各像素值进行归一化的方法为:计算图像数据集中所有图像RGB各个通道的均值M和方差N,图像像素值为I,归一化后的像素值为(I-M)/N。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911225292.8A CN111127495A (zh) | 2019-12-04 | 2019-12-04 | 一种关于图像关键点检测的神经网络模型建立方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911225292.8A CN111127495A (zh) | 2019-12-04 | 2019-12-04 | 一种关于图像关键点检测的神经网络模型建立方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111127495A true CN111127495A (zh) | 2020-05-08 |
Family
ID=70497466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911225292.8A Pending CN111127495A (zh) | 2019-12-04 | 2019-12-04 | 一种关于图像关键点检测的神经网络模型建立方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111127495A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170273639A1 (en) * | 2014-12-05 | 2017-09-28 | Myfiziq Limited | Imaging a Body |
CN108073917A (zh) * | 2018-01-24 | 2018-05-25 | 燕山大学 | 一种基于卷积神经网络的人脸识别方法 |
CN109087296A (zh) * | 2018-08-07 | 2018-12-25 | 东北大学 | 一种提取ct图像中人体区域的方法 |
CN110045348A (zh) * | 2019-05-05 | 2019-07-23 | 应急管理部上海消防研究所 | 一种基于改进卷积神经网络的人体运动状态分类方法 |
CN110188720A (zh) * | 2019-06-05 | 2019-08-30 | 上海云绅智能科技有限公司 | 一种基于卷积神经网络的目标检测方法及系统 |
CN110276316A (zh) * | 2019-06-26 | 2019-09-24 | 电子科技大学 | 一种基于深度学习的人体关键点检测方法 |
CN110334677A (zh) * | 2019-07-11 | 2019-10-15 | 山东大学 | 一种基于人体骨骼关键点检测和非均等分区的行人重识别方法 |
-
2019
- 2019-12-04 CN CN201911225292.8A patent/CN111127495A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170273639A1 (en) * | 2014-12-05 | 2017-09-28 | Myfiziq Limited | Imaging a Body |
CN108073917A (zh) * | 2018-01-24 | 2018-05-25 | 燕山大学 | 一种基于卷积神经网络的人脸识别方法 |
CN109087296A (zh) * | 2018-08-07 | 2018-12-25 | 东北大学 | 一种提取ct图像中人体区域的方法 |
CN110045348A (zh) * | 2019-05-05 | 2019-07-23 | 应急管理部上海消防研究所 | 一种基于改进卷积神经网络的人体运动状态分类方法 |
CN110188720A (zh) * | 2019-06-05 | 2019-08-30 | 上海云绅智能科技有限公司 | 一种基于卷积神经网络的目标检测方法及系统 |
CN110276316A (zh) * | 2019-06-26 | 2019-09-24 | 电子科技大学 | 一种基于深度学习的人体关键点检测方法 |
CN110334677A (zh) * | 2019-07-11 | 2019-10-15 | 山东大学 | 一种基于人体骨骼关键点检测和非均等分区的行人重识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109934115B (zh) | 人脸识别模型的构建方法、人脸识别方法及电子设备 | |
CN110020592B (zh) | 物体检测模型训练方法、装置、计算机设备及存储介质 | |
CN109583483B (zh) | 一种基于卷积神经网络的目标检测方法和系统 | |
CN111160375B (zh) | 三维关键点预测及深度学习模型训练方法、装置及设备 | |
CN108959794B (zh) | 一种基于深度学习的结构频响动力学模型修正方法 | |
CN107784288B (zh) | 一种基于深度神经网络的迭代定位式人脸检测方法 | |
CN112801146B (zh) | 一种目标检测方法及系统 | |
CN110717881A (zh) | 晶圆缺陷识别方法、装置、存储介质和终端设备 | |
CN112580515B (zh) | 一种基于高斯热图回归的轻量级人脸关键点检测方法 | |
CN112836756B (zh) | 图像识别模型训练方法、系统和计算机设备 | |
CN112001403B (zh) | 一种图像轮廓检测方法及系统 | |
CN104867225A (zh) | 一种纸币的面向识别方法及装置 | |
CN112819748B (zh) | 一种带钢表面缺陷识别模型的训练方法及装置 | |
CN112364974B (zh) | 一种基于激活函数改进的YOLOv3算法 | |
CN112861785B (zh) | 一种基于实例分割和图像修复的带遮挡行人重识别方法 | |
CN112287865B (zh) | 一种人体姿态识别的方法及装置 | |
CN109345559B (zh) | 基于样本扩充和深度分类网络的运动目标跟踪方法 | |
CN116721301B (zh) | 目标场景分类模型训练方法、分类方法、设备及存储介质 | |
CN111881743B (zh) | 一种基于语义分割的人脸特征点定位方法 | |
CN114998756A (zh) | 一种基于yolov5的遥感图像检测方法、装置及存储介质 | |
CN113269752A (zh) | 一种图像检测方法、装置终端设备及存储介质 | |
CN117197146A (zh) | 一种铸件内部缺陷自动识别方法 | |
CN110210314B (zh) | 人脸检测方法、装置、计算机设备及存储介质 | |
CN112200182A (zh) | 基于深度学习的晶圆id识别方法和装置 | |
CN116823748A (zh) | 一种基于深度学习和Halcon的螺栓拧紧工业检测方法和装置 |
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 |