CN112017231A - 基于单目摄像头的人体体重识别方法、装置及存储介质 - Google Patents
基于单目摄像头的人体体重识别方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112017231A CN112017231A CN202010879315.3A CN202010879315A CN112017231A CN 112017231 A CN112017231 A CN 112017231A CN 202010879315 A CN202010879315 A CN 202010879315A CN 112017231 A CN112017231 A CN 112017231A
- Authority
- CN
- China
- Prior art keywords
- human body
- image
- weight
- monocular camera
- picture
- 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.)
- Granted
Links
- 230000037396 body weight Effects 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000011218 segmentation Effects 0.000 claims abstract description 26
- 238000012946 outsourcing Methods 0.000 claims abstract description 22
- 210000000746 body region Anatomy 0.000 claims abstract description 21
- 238000012549 training Methods 0.000 claims description 28
- 238000012795 verification Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 12
- 239000003550 marker Substances 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 2
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 description 18
- 241000252254 Catostomidae Species 0.000 description 16
- 238000013135 deep learning Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 241000282887 Suidae Species 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 208000008589 Obesity Diseases 0.000 description 1
- 210000000577 adipose tissue Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000003651 drinking water Substances 0.000 description 1
- 235000020188 drinking water Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 235000020824 obesity Nutrition 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/30204—Marker
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本案涉及人工智能,提供一种基于单目摄像头的人体体重识别方法、装置及存储介质,方法包括:控制单目摄像头对焦人体和两个标记点,两个标记点水平间隔设置在人体两侧的背景墙上,拍摄画面中显示有人体区域框,人体置于人体区域框中;判断当前帧的人体最小外包矩形区域和拍摄画面中的人体区域框的IOU是否大于预设的交并阈值,若大于则继续执行,否则提示重新对焦;控制单目摄像头拍摄包含人体和两个标记点的图像,将图像输入Cascade RCNN网络模型进行人体区域的识别,输出人体最小外包矩形区域掩模;以人体为中心分割出预分割图像送入经过训练的体重识别模型,输出体长和体重。本发明不需进行人体三维重建即可获得体重信息,对背景干扰也较鲁棒。
Description
技术领域
本发明涉及人工智能,尤其涉及一种基于单目摄像头的人体体重识别方法、装置及存储介质。
背景技术
随着5G的推广以及智能穿戴设备的普及,人们生活中出现越来越多的智能应用,尤其随着网购和各种短视频软件兴起,移动设备为代表的移动端设备提供了从音频、视频到3D建模等各方面功能。很多智能移动设备都内置了人脸识别、指纹识别。在一些场合,需要在线获取人体的体重和体尺信息,例如一些商场和网购平台开通了虚拟试衣的APP。虚拟试衣时,若能够了解人体的体尺和体重信息,则更能够为其推荐合适的服装。在线投保也需要了解投保人的身高、体重,然而,目前主流的移动端要获取人体的体尺和体重信息,则要通过三维重建,是通过多目摄像头模组或结构光来实现,价格较为昂贵,且技术方案的量程有限。
目前,针对移动端人体体重测量,主要有以下几种方案:
1、经验公式测量体重方案:
国际通用的标准体重身高公式如下:
标准体重=(身高cm-100)x0.9(kg)
不足之处:此方法只能测量正常体脂率人群的大概的重量,不能算出精确的体重,仅供参考,而且男女、胖瘦等影响很大,由于公式固定,对不同国际地区的人也精度不一,也很难去细化修正。
2、投影测距方案:日本学者H.Minagawa利用一台摄像机和投影仪在猪饮水时测量了它的投影面积,并利用投影在猪身上网格线的视差与体高的非线性关系近似估算出体高。
不足之处:此方法需要进行相机的标定由于需要计算视差和体高关系,对拍摄的距离和角度有严格要求,基本不适用于手持移动设备。
3、点云方案:基于深度学习估测点云并分割出物体区域,计算体重。
难点:对算法要求高,而且模型泛化能力不好,需要大量的数据。
而且,以上的预估方法都无法适应移动端应用人体的测量,既不够准确,也不够便捷,截至目前,在移动端尚没有一套通用的人体体重识别系统。随着深度学习技术的发展与移动设备功能的成熟,利用移动设备进行人体体重识别成为了可能。发明人意识到,有必要开发一种能够基于移动端的人体的体尺、体重识别。
发明内容
本发明提供一种基于单目摄像头的人体体重识别方法、装置及存储介质,其主要目的在于通过识别人体的二维图像,获得人体的体尺和体重信息。
为实现上述目的,本发明提供的一种基于单目摄像头的人体体重识别方法,包括以下步骤:
控制单目摄像头对焦人体和两个标记点,两个标记点以一定的水平间隔设置在人体两侧的背景墙上,拍摄画面中显示有人体区域框,人体置于人体区域框中;
判断当前帧的人体最小外包矩形区域和拍摄画面中显示的人体区域框的IOU是否大于预设的交并阈值,若大于,则继续执行,否则提示重新对焦;
控制单目摄像头拍摄包含人体和两个标记点的图像,将图像输入Cascade RCNN网络模型进行人体区域的识别,输出人体最小外包矩形区域掩模;
以人体为中心分割出预设尺寸的预分割图像送入经过训练的体重识别模型,输出体长和体重信息。
优选地,在拍摄前还进行拍摄画面预判定,包括对画面的分辨率、画面的模糊程度和人体区域框中的人体是否齐全的判定,
其中,检测画面模糊程度是采用拉普拉斯算子进行检测,将画面的各点像素与拉普拉斯算子进行卷积计算输出方差,当连续2s的方差都小于模糊阈值则视为模糊。
优选地,在拍摄前还采用yolo3模型检测两个标记点的距离计算比例尺度I,并在所述比例尺度I小于预设的比例尺度阈值时提示重新对焦,其中,
Sb1代表为检测的两个标记点之间的距离;
Sb2代表为画面中预设的人体区域框的两侧边之间的距离。
优选地,人体最小外包矩形区域和拍摄画面中预设的人体区域框的IOU的计算公式为:
其中,Sh1是当前帧的人体最小外包矩形区域;
Sh2是画面中预设的人体区域框的区域。
优选地,以人体为中心分割出预分割图像包括
其中,D预设宽度、D预设高度是比例尺度I为1时的预分割图像的尺寸。
优选地,所述体重识别模型为RESNET-50网络,利用体重识别模型进行体重识别的方法包括:
收集多张标注有人体的体长、体重信息的预分割图像,设定参考体长和参考体重,并将每张人体图像标注的体长除以参考体长获取归一化的标注体长,每张人体图像标注的体重除以参考体重获取归一化的标注体重,
将所述预分割图像中一部分作为训练图像,一部分作为验证图像;
将训练图像输入RESNET-50网络进行训练,RESNET-50网络输出体长识别分支和体重识别分支,将验证图像输入RESNET-50网络,直至输出达到预设的准确率阈值;
将预分割图像输入至经过验证的RESNET-50网络,输出体长和体重的相对指标L_0和W_0,并分别与对应的参考体长、体重参数相乘,从而得到识别的体长L、体重W。
优选地,所述标记点为吸盘。
本发明还提供一种基于单目摄像头的人体体重识别装置,包括:
对焦模块,用于控制单目摄像头对焦人体和两个标记点,两个标记点以一定的水平间隔设置在人体两侧的背景墙上,拍摄画面中显示有人体区域框,人体置于人体区域框中;
拍摄合规判定模块,判断当前帧的人体最小外包矩形区域和拍摄画面中显示的人体区域框的IOU是否大于预设的交并阈值,若大于,则继续执行,拍摄包含人体及两个标记点的图像,否则提示重新对焦;
人体分割模块,用于将图像输入Cascade RCNN网络模型进行人体区域的识别,输出人体最小外包矩形区域掩模;
体重识别模块,用于以人体为中心分割出预设尺寸的预分割图像送入经过训练的体重识别模型,输出体长和体重信息。
本发明还提供一种电子装置,所述电子装置包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的基于单目摄像头的人体体重识别方法。
本发明还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于单目摄像头的人体体重识别方法。
本发明采用单目摄像头拍摄人体二维图像,通过固定间隔的标记点来确定送入体重识别模型的图像比例,通过深度学习来训练神经网络模型,形成能够识别二维图像中的人体的体尺和体重的体重识别模型,不需要进行点云计算获取绝对的尺度,不需要进行人体三维重建,对背景干扰也较鲁棒。
附图说明
通过结合下面附图对其实施例进行描述,本发明的上述特征和技术优点将会变得更加清楚和容易理解。
图1是本发明实施例的体重识别方法的步骤示意图;
图2是单目摄像头拍摄人体的示意图;
图3是吸盘位于人体区域框的两侧边上的示意图;
图4是吸盘位于人体区域框内的示意图;
图5是吸盘位于人体区域框外的示意图;
图6是电子装置的示意图;
图7是基于单目摄像头的人体体重识别程序的模块构成图。
具体实施方式
下面将参考附图来描述本发明所述的基于单目摄像头的人体体重识别方法、装置及存储介质的实施例。本领域的普通技术人员可以认识到,在不偏离本发明的精神和范围的情况下,可以用各种不同的方式或其组合对所描述的实施例进行修正。因此,附图和描述在本质上是说明性的,而不是用于限制权利要求的保护范围。此外,在本说明书中,附图未按比例画出,并且相同的附图标记表示相同的部分。
本实施例提出一种基于单目摄像头的人体体重识别方法,包括以下步骤:
步骤S1,控制单目摄像头70对焦人体和吸盘,所述吸盘以一定的水平间隔设置在人体两侧的背景墙上,拍摄画面60中显示有人体区域框,人体置于人体区域框中。
如图2、图3所示,在背景墙10上以一定的水平间隔设置有两个吸盘20,人体50站立于两个吸盘20之间的区域的地面上,单目摄像头70的拍摄画面中显示有人体区域框30,采用单目摄像头对焦人体和吸盘,人体50置于人体区域框30中进行拍摄。其中,优选地,是拍摄时将两个吸盘置于人体区域框30的两侧边上,可以使得拍摄的人体的大小参照的尺度相同,以利于后期的体重识别。从图4、图5可以看出,在同样的人体区域框的情况下,由于拍摄距离不同,导致得到的人体最小外包矩形不同。而不采用两个吸盘作为标记物来锁定拍摄物体的比例的话,则可能由于单目摄像头距离人体的距离不同,导致拍摄的相同的人体呈现出大小不同的形式,会造成识别误差。通过固定两个吸盘20作为标记物,使得所拍摄的人体的大小都是以两个吸盘之间的距离为基准的,可以防止由于拍摄距离不同导致相同的人体却得到不同的人体大小导致体重识别出现偏差。
其中,两个吸盘20之间的距离比人体的宽度宽,例如,人体通常的宽度不会超过1m,本实施例可以将两个吸盘水平间隔设置为1m。其中,采用吸盘是为了便于固定和拆卸形成标记点,当然也可以使用例如贴纸、螺钉等其他工具设置在背景墙上。
步骤S2,对拍摄画面进行图像质量判定,包括标定尺度判定、目标人体区域判定。
其中,标定尺度判定是指拍摄画面中检测的两个吸盘之间的距离与人体区域框两侧边之间的比例I大于设定的比例尺度阈值,例如比例尺度阈值为0.8。如果小于设定的比例尺度阈值,则提示重新对焦。可以采用yolo3模型检测两个吸盘20,获取吸盘之间的距离数据。yolo3模型是开源深度学习平台PaddlePaddle中的一个目标检测模型,其适用于对小物体进行检测。通过上面吸盘检测获得的吸盘间距离计算比例尺度I,其计算公式如下:
Sb1代表为检测的两个吸盘之间的距离;
Sb2代表为画面中预设的人体区域框的两侧边之间的距离。
目标人体区域的判断条件是当前帧的人体最小外包矩形区域40和画面中预设的人体区域框的IOU(IOU是交并比的缩写)大于交并阈值,此处选取交并阈值为0.75,若小于,则提示重新对焦,IOU的具体公式为:
其中,Sh1是当前帧的人体最小外包矩形区域;
Sh2是画面中预设的人体区域框的区域;
IOU是Sh1与Sh2的相交重合区域面积与Sh1、Sh2覆盖区域面积的比值。
优选地,在进行标定尺度判定、目标人体区域判定之前还进行拍摄画面预判定,拍摄画面预判定包括对将要拍摄的图像的通用质量属性的判定,包括图像的分辨率、图像的模糊程度和检测画面中人体情况,包括如下步骤:
B.检测当前拍摄画面的分辨率,如果分辨率设定小于阈值则弹出提示分辨率小于阈值(如1280*960),提醒用户修改。
C.满足B中条件后,提醒用户对焦人体,逐帧检测画面模糊程度,可以采用拉普拉斯算子检测画面模糊程度,Opencv(基于BSD许可发行的跨平台计算机视觉库,BSD是Unix的衍生系统)中提供了对拉普拉斯算子的封装方法,可以直接调用,其中,拉普拉斯算子是用来衡量图片的二阶导数,能够体现图片中密度快速变化的区域(即边界),将画面的各点像素与拉普拉斯算子进行卷积,然后计算输出的方差,通常清晰图片的边界方差会比较大,而模糊图片中包含的边界信息少,方差较小。当连续2s的方差都小于模糊阈值则视为模糊,方差越小,画面模糊程度越高。
D.检测画面中有无人体。如果检测不存在,则弹出提示对应目标检测失败,提醒用户将单目摄像头对准合格的人体。
步骤S3,对图像进行人体区域和吸盘识别,具体说,是采用图像识别,将通过图像质量判定的图像输入Cascade RCNN网络模型进行人体区域的识别,输出为人体最小外包矩形区域掩模,获得了人体最小外包矩形区域的四个角点的坐标(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4),其中,X1、X2、X3、X4是人体最小外包矩形区域的左上角横坐标、右上角横坐标、左下角横坐标、右下角横坐标,Y1、Y2、Y3、Y4是人体最小外包矩形区域的左上角纵坐标、右上角纵坐标、左下角纵坐标、右下角纵坐标。其中,Cascade RCNN网络模型是集成在mmdetection(基于PyTorch的开源目标检测工具包)中的一个目标检测模型。
步骤S4,以人体为中心分割出一个预设尺寸的长方形区域作为预分割图像,以便体重识别模型计算,获取包含人体的预分割图像的具体步骤为:
S41,理论上说,都以两个吸盘恰好处于人体区域框30的两侧边上进行拍摄,则得到的人体大小的基准应该都是一样的,但实际中,由于拍摄角度、拍摄手法、视觉上的差异,吸盘与人体区域框30的两侧边位置有误差。所以以两个吸盘之间距离与人体区域框的两侧边之间的距离计算比例尺度,将人为拍摄的误差通过比例尺度来补偿。由此计算出各图像需要分割出的预分割图像的尺寸D宽度、D高度,
其中,D预设宽度、D预设高度是比例尺度I为1时的预分割图像的尺寸。
S42,计算人体最小外包矩形的中心坐标Ph,其具体计算公式为:
Ph=(Xh,Yh)
其中:
Xh=0.25*(X1+X2+X3+X4)
Yh=0.25*(Y1+Y2+Y3+Y4)
S43,计算分割的预分割图像的四个顶点坐标:
四个角点坐标的计算如下:
1)
Phg=(Xhgxs,Yhgxs)
Xhgxs=Xh-0.5*D宽度
Yhgxs=Yh-0.5*D高度其中,Phgxs是预分割图像左下角坐标;
Xhgxs是预分割图像左下角横坐标;
Yhgxs是预分割图像左下角纵坐标。
2)
Phgyx=(Xhgyx,Yhgyx)
Xhgyx=Xh+0.5*D宽度
Yhgyx=Yh-0.5*D高度其中,Phgyx是预分割图像右下角坐标;
Xhgyx是预分割图像右下角横坐标;
Xhgyx是预分割图像右下角纵坐标。
3)
Phgys=(Xhgys,Yhgys)
Xhgys=Xh+0.5*D宽度
Yhgys=Yh+0.5*D高度
Phgys是预分割图像右上角坐标;
Xhgys是预分割图像右上角横坐标;
Yhgys是预分割图像右上角纵坐标。
4)
Phgzs=(Xhgzs,Yhgzs)
Xhgzs=Xh-0.5*D宽度
Yhgzs=Yh+0.5*D高度
其中,Phgzs是预分割图像左上角坐标;
Xhgzs是预分割图像左上角横坐标;
Yhgzs是预分割图像左上角纵坐标。
S44,以S43中获得的预分割图像对应的四个角坐标来对图像裁剪,获取的裁剪图像即为预分割图像。
步骤S5,将获取的预分割图像送入体重识别模型,体重识别模型是RESNET-50网络,其经过了多任务训练和验证,由此可以输出体长和体重信息。
体重识别模型的训练、验证以及识别体重的具体步骤为:
S51,训练阶段:
A.收集多张预分割图像,每张具有标注信息,标注信息有人体的体长、体重,随机划分一部分作为训练用,另一部分作为验证用,本实施例是采用预分割图像2000张,其中,1800张作为训练图像,200张作为验证图像。
B.进行归一化处理,具体地,是设定参考体长2.5M,每张图片标注的体长除以参考体长,获取归一化的标注参数,设定参考体重80KG,每张图片的标注的体重除以参考体重,获取归一化的标注参数。
C.对每张预分割图像统一缩放至合理大小,本实施例缩放至640x640大小。
D.训练过程中,网络输出两个分支,体长识别分支和体重识别分支,其中体长识别分支作为体重识别分支的辅助输入信息,经过训练和验证后,达到预设的准确率阈值后,该模型即可进行识别。
S52,使用阶段:
E.将通过步骤S1至S4得到图像缩放至640x640。
G.将经过缩放的图像输入至RESNET-50网络,输出体长和体重的相对指标L_0和W_0。
H.读取系统设定的参考体长、参考体重参数,以上的训练步骤中已将参考体长、参考体重参数设定为2.5M,80KG,所以将得到的相对指标L_0和W_0分别与对应的参考体长、参考体重相乘,从而得到识别的体长L、体重W。
本发明还提供一种基于单目摄像头的人体体重识别装置25,包括对焦模块251、拍摄合规判定模块252、人体分割模块253、体重识别模块254。
其中,对焦模块251用于控制单目摄像头70对焦人体和吸盘20,所述吸盘20以一定的水平间隔设置在人体两侧的背景墙上,拍摄画面60中显示有人体区域框30,人体置于人体区域框30中。
如图2、图3所示,在背景墙10上以一定的水平间隔设置有两个吸盘20,人体50站立于两个吸盘20之间的区域的地面上,单目摄像头70的拍摄画面中显示有人体区域框30,采用单目摄像头70对焦人体和吸盘,人体50置于人体区域框30中进行拍摄。其中,优选地,是拍摄时将两个吸盘置于人体区域框30的两侧边上,可以使得拍摄的人体的大小参照的尺度相同,以利于后期的体重识别。从图4、图5可以看出,在同样的人体区域框的情况下,由于拍摄距离不同,导致得到的人体最小外包矩形不同。而不采用两个吸盘作为标记物来锁定拍摄物体的比例的话,则可能由于单目摄像头距离人体的距离不同,导致拍摄的相同的人体呈现出大小不同的形式,会造成识别误差。通过固定两个吸盘20作为标记物,使得所拍摄的人体的大小都是以两个吸盘之间的距离为基准的,可以防止由于拍摄距离不同导致相同的人体却得到不同的人体大小导致体重识别出现偏差。
其中,两个吸盘20之间的距离比人体的宽度宽,例如,人体通常的宽度不会超过1m,本实施例可以将两个吸盘水平间隔设置为1m。其中,采用吸盘是为了便于固定和拆卸形成标记点,当然也可以使用例如贴纸、螺钉等其他工具设置在背景墙上。
其中,拍摄合规判定模块252用于在拍摄过程中先进行拍摄画面预判定,拍摄画面预判定包括对将要拍摄的图像的通用质量属性的判定,包括图像的分辨率、图像的模糊程度和检测画面中人体情况,包括如下步骤:
B.检测当前拍摄画面的分辨率,如果分辨率设定小于阈值则弹出提示分辨率小于阈值(如1280*960),提醒用户修改。
C.满足B中条件后,提醒用户对焦人体,逐帧检测画面模糊程度,可以采用拉普拉斯算子检测画面模糊程度,Opencv(基于BSD许可发行的跨平台计算机视觉库,BSD是Unix的衍生系统)中提供了对拉普拉斯算子的封装方法,可以直接调用,其中,拉普拉斯算子是用来衡量图片的二阶导数,能够体现图片中密度快速变化的区域(即边界),将画面的各点像素与拉普拉斯算子进行卷积,然后计算输出的方差,通常清晰图片的边界方差会比较大,而模糊图片中包含的边界信息少,方差较小。当连续2s的方差都小于模糊阈值则视为模糊,方差越小,画面模糊程度越高。
D.检测画面中有无人体。如果检测不存在,则弹出提示对应目标检测失败,提醒用户将单目摄像头对准合格的人体。
拍摄合规判定模块252还用于进行图像质量判定,包括标定尺度判定、目标人体区域判定。
其中,标定尺度判定是指拍摄画面中检测的两个吸盘之间的距离与人体区域框两侧边之间的比例I大于设定的比例尺度阈值,例如比例尺度阈值为0.8。可以采用yolo3模型检测两个吸盘20,获取吸盘之间的距离数据。yolo3模型是开源深度学习平台PaddlePaddle中的一个目标检测模型,其适用于对小物体进行检测。通过上面吸盘检测获得的吸盘间距离计算比例尺度I,其计算公式如下:
Sb1代表为检测的两个吸盘之间的距离;
Sb2代表为画面中预设的人体区域框的两侧边之间的距离。
目标人体区域的判断条件是当前帧的人体最小外包矩形区域40和画面中预设的人体区域框的IOU(IOU是交并比的缩写)大于0.75,具体公式为:
其中,Sh1是当前帧的人体最小外包矩形区域;
Sh2是画面中预设的人体区域框的区域;
IOU是Sh1与Sh2的相交重合区域面积与Sh1、Sh2覆盖区域面积的比值。
其中,人体分割模块253用于对图像进行人体区域和吸盘识别,具体说,是采用图像识别,将通过图像质量判定的图像输入Cascade RCNN网络模型进行人体区域的识别,输出为人体最小外包矩形区域掩模,获得了人体最小外包矩形区域的四个角点的坐标(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4),其中,X1、X2、X3、X4是人体最小外包矩形区域的左上角横坐标、右上角横坐标、左下角横坐标、右下角横坐标,Y1、Y2、Y3、Y4是人体最小外包矩形区域的左上角纵坐标、右上角纵坐标、左下角纵坐标、右下角纵坐标。其中,Cascade RCNN网络模型是集成在mmdetection(基于PyTorch的开源目标检测工具包)中的一个目标检测模型。
步骤S4,以人体为中心分割出一个预设尺寸的长方形区域作为预分割图像,以便体重识别模型计算,获取包含人体的预分割图像的具体步骤为:
S41,理论上说,都以两个吸盘恰好处于人体区域框30的两侧边上进行拍摄,则得到的人体大小的基准应该都是一样的,但实际中,由于拍摄角度、拍摄手法、视觉上的差异,吸盘与人体区域框30的两侧边位置有误差。所以以两个吸盘之间距离与人体区域框的两侧边之间的距离计算比例尺度,将人为拍摄的误差通过比例尺度来补偿。由此计算出各图像需要分割出的预分割图像的尺寸D宽度、D高度,
其中,D预设宽度、D预设高度是比例尺度I为1时的预分割图像的尺寸。
S42,计算人体最小外包矩形的中心坐标Ph,其具体计算公式为:
Ph=(Xh,Yh)
其中:
Xh=0.25*(X1+X2+X3+X4)
Yh=0.25*(Y1+Y2+Y3+Y4)
S43,计算分割的预分割图像的四个顶点坐标:
四个角点坐标的计算如下:
1)
Phg=(Xhgxs,Yhgxs)
Xhgxs=Xh-0.5*D宽度
Yhgxs=Yh-0.5*D高度
其中,Phgxs是预分割图像左下角坐标;
Xhgxs是预分割图像左下角横坐标;
Yhgxs是预分割图像左下角纵坐标。
2)
Phgyx=(Xhgyx,Yhgyx)
Xhgyx=Xh+0.5*D宽度
Yhgyx=Yh-0.5*D高度
其中,Phgyx是预分割图像右下角坐标;
Xhgyx是预分割图像右下角横坐标;
Xhgyx是预分割图像右下角纵坐标。
3)
Phgys=(Xhgys,Yhgys)
Xhgys=Xh+0.5*D宽度
Yhgys=Yh+0.5*D高度
Phgys是预分割图像右上角坐标;
Xhgys是预分割图像右上角横坐标;
Yhgys是预分割图像右上角纵坐标。
4)
Phgzs=(Xhgzs,Yhgzs)
Xhgzs=Xh-0.5*D宽度
Yhgzs=Yh+0.5*D高度
其中,Phgzs是预分割图像左上角坐标;
Xhgzs是预分割图像左上角横坐标;
Yhgzs是预分割图像左上角纵坐标。
S44,以S43中获得的预分割图像对应的四个角坐标来对图像裁剪,获取的裁剪图像即为预分割图像。
其中,体重识别模块254用于将获取的预分割图像送入体重识别模型,体重识别模型是RESNET-50网络,其经过了多任务训练和验证,由此输出体长和体重信息。
其具体步骤为:
S51,训练阶段:
A.收集多张预分割图像,每张具有标注信息,标注信息有人体的体长、体重,随机划分一部分作为训练用,另一部分作为验证用,本实施例是采用预分割图像2000张,其中,1800张作为训练图像,200张作为验证图像。
B.进行归一化处理,具体地,是设定参考体长2.5M,每张图片标注的体长除以参考体长,获取归一化的标注参数,设定参考体重80KG,每张图片的标注的体重除以参考体重,获取归一化的标注参数。
C.对每张预分割图像统一缩放至合理大小,本实施例缩放至640x640大小。
D.训练过程中,网络输出两个分支,体长识别分支和体重识别分支,其中体长识别分支作为体重识别分支的辅助输入信息,经过训练和验证后,达到预设的准确率阈值后,该模型即可进行识别。
S52,使用阶段:
E.将通过步骤S1至S4得到图像缩放至640x640。
G.将经过缩放的图像输入至RESNET-50网络,输出体长和体重的相对指标L_0和W_0。
H.读取系统设定的参考体长、参考体重参数,以上的训练步骤中已将参考体长、参考体重参数设定为2.5M,80KG,所以将得到的相对指标L_0和W_0分别与对应的参考体长、参考体重相乘,从而得到识别的体长L、体重W。
本发明还提供一种电子装置,参阅图6所示,是本发明电子装置的实施例的硬件架构示意图。本实施例中,所述电子装置2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能移动设备、平板电脑、笔记本电脑等易于携带的移动设备。如图6所示,所述电子装置2至少包括通过线路相互通信连接的存储器21、处理器22,所述单目摄像头与处理器连接其中:所述存储器21可以是所述电子装置2的内部存储单元,例如该电子装置2的硬盘或内存。在另一些实施例中,所述存储器21也可以是所述电子装置2的外部存储设备,例如该电子装置2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Di gital,SD)卡,闪存卡(Flash Card)等。
当然,所述存储器21还可以既包括所述电子装置2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器21通常用于存储安装于所述电子装置2的操作系统和各类应用软件,例如基于单目摄像头的人体体重识别程序的代码基于单目摄像头的人体体重识别程序代码等。此外,所述存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器22在一些实施例中可以是中央处理器(Central Processing Uni t,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。用于运行所述存储器21中存储的程序代码或者处理数据,例如运行基于单目摄像头的人体体重识别程序基于单目摄像头的人体体重识别程序。
需要指出的是,图6仅示出了具有存储器21、处理器22的电子装置2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
包含可读存储介质的存储器21中可以包括操作系统、基于单目摄像头的人体体重识别程序等。处理器22执行存储器21中的基于单目摄像头的人体体重识别程序时实现如上所述的S1至S5的步骤,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是硬盘、多媒体卡、SD卡、闪存卡、SMC、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器等等中的任意一种或者几种的任意组合。所述计算机可读存储介质中包括基于单目摄像头的人体体重识别程序等,所述基于单目摄像头的人体体重识别程序被处理器22执行时实现如下操作:
步骤S1,控制单目摄像头70对焦人体和吸盘,所述吸盘以一定的水平间隔设置在人体两侧的背景墙上,拍摄画面60中显示有人体区域框,人体置于人体区域框中。
步骤S2,控制单目摄像头拍摄包含人体及吸盘的图像,并进行图像质量判定,包括标定尺度判定、目标人体区域判定。
其中,标定尺度判定是指拍摄画面中检测的两个吸盘之间的距离与人体区域框两侧边之间的比例尺度I大于设定的比例尺度阈值,例如比例尺度阈值为0.8。可以采用yolo3模型检测两个吸盘20,获取吸盘之间的距离数据。yolo3模型是开源深度学习平台PaddlePaddle中的一个目标检测模型,其适用于对小物体进行检测。通过上面吸盘检测获得的吸盘间距离计算比例尺度I,其计算公式如下:
Sb1代表为检测的两个吸盘之间的距离;
Sb2代表为画面中预设的人体区域框的两侧边之间的距离。
目标人体区域的判断条件是当前帧的人体最小外包矩形区域40和画面中预设的人体区域框的IOU(IOU是交并比的缩写)大于0.75,具体公式为:
其中,Sh1是当前帧的人体最小外包矩形区域;
Sh2是画面中预设的人体区域框的区域;
IOU是Sh1与Sh2的相交重合区域面积与Sh1、Sh2覆盖区域面积的比值。
步骤S3,对图像进行人体区域和吸盘识别,具体说,是采用图像识别,将通过图像质量判定的图像输入Cascade RCNN网络模型进行人体区域的识别,输出为人体最小外包矩形区域掩模,获得了人体最小外包矩形区域的四个角点的坐标(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4),其中,X1、X2、X3、X4是人体最小外包矩形区域的左上角横坐标、右上角横坐标、左下角横坐标、右下角横坐标,Y1、Y2、Y3、Y4是人体最小外包矩形区域的左上角纵坐标、右上角纵坐标、左下角纵坐标、右下角纵坐标。其中,Cascade RCNN网络模型是集成在mmdetection(基于PyTorch的开源目标检测工具包)中的一个目标检测模型。
步骤S4,以人体为中心分割出一个预设尺寸的长方形区域作为预分割图像,以便体重识别模型计算
步骤S5,将获取的预分割图像送入体重识别模型,体重识别模型是RESNET-50网络,体重识别模型经过多任务训练和验证,由此可以输出体长和体重信息。
其具体步骤为:
S51,训练阶段:
A.收集多张预分割图像,每张具有标注信息,标注信息有人体的体长、体重,随机划分一部分作为训练用,另一部分作为验证用,本实施例是采用预分割图像2000张,其中,1800张作为训练图像,200张作为验证图像。
B.进行归一化处理,具体地,是设定参考体长2.5M,每张图片标注的体长除以参考体长,获取归一化的标注参数,设定参考体重80KG,每张图片的标注的体重除以参考体重,获取归一化的标注参数。
C.对每张预分割图像统一缩放至合理大小,本实施例缩放至640x640大小。
D.训练过程中,网络输出两个分支,体长识别分支和体重识别分支,其中体长识别分支作为体重识别分支的辅助输入信息,经过训练和验证后,达到预设的准确率阈值后,该模型即可进行识别。
S52,使用阶段:
E.将通过步骤S1至S4得到图像缩放至640x640。
G.将经过缩放的图像输入至RESNET-50网络,输出体长和体重的相对指标L_0和W_0。
H.读取系统设定的参考体长、参考体重参数,以上的训练步骤中已将参考体长、参考体重参数设定为2.5M,80KG,所以将得到的相对指标L_0和W_0分别与对应的参考体长、参考体重相乘,从而得到识别的体长L、体重W。
本发明之计算机可读存储介质的具体实施方式与上述基于单目摄像头的人体体重识别方法以及电子装置2的具体实施方式大致相同,在此不再赘述。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于单目摄像头的人体体重识别方法,其特征在于,包括以下步骤:
控制单目摄像头对焦人体和两个标记点,两个标记点水平间隔设置在人体两侧的背景墙上,拍摄画面中显示有人体区域框,人体置于人体区域框中;
判断当前帧的人体最小外包矩形区域和拍摄画面中显示的人体区域框的IOU是否大于预设的交并阈值,若大于,则继续执行,否则提示重新对焦;
控制单目摄像头拍摄包含人体和两个标记点的图像,将图像输入Cascade RCNN网络模型进行人体区域的识别,输出人体最小外包矩形区域掩模;
以人体为中心分割出预设尺寸的预分割图像送入经过训练的体重识别模型,输出体长和体重信息。
2.根据权利要求1所述的基于单目摄像头的人体体重识别方法,其特征在于,在拍摄前还进行拍摄画面预判定,包括对画面的分辨率、画面的模糊程度和人体区域框中的人体是否齐全的判定,
其中,检测画面模糊程度是采用拉普拉斯算子进行检测,将画面的各点像素与拉普拉斯算子进行卷积计算输出方差,当连续2s的方差都小于模糊阈值则视为模糊。
6.根据权利要求1所述的基于单目摄像头的人体体重识别方法,其特征在于,
所述体重识别模型为RESNET-50网络,利用体重识别模型进行体重识别的方法包括:
收集多张标注有人体的体长、体重信息的预分割图像,设定参考体长和参考体重,并将每张人体图像标注的体长除以参考体长获取归一化的标注体长,每张人体图像标注的体重除以参考体重获取归一化的标注体重,
将所述预分割图像中一部分作为训练图像,一部分作为验证图像;
将训练图像输入RESNET-50网络进行训练,RESNET-50网络输出体长识别分支和体重识别分支,将验证图像输入RESNET-50网络,直至输出达到预设的准确率阈值;
将预分割图像输入至经过验证的RESNET-50网络,输出体长和体重的相对指标L_0和W_0,并分别与对应的参考体长、体重参数相乘,从而得到识别的体长L、体重W。
7.根据权利要求1所述的基于单目摄像头的人体体重识别方法,其特征在于,所述标记点为吸盘。
8.一种基于单目摄像头的人体体重识别装置,其特征在于,包括:
对焦模块,用于控制单目摄像头对焦人体和两个标记点,两个标记点水平间隔设置在人体两侧的背景墙上,拍摄画面中显示有人体区域框,人体置于人体区域框中;
拍摄合规判定模块,判断当前帧的人体最小外包矩形区域和拍摄画面中显示的人体区域框的IOU是否大于预设的交并阈值,若大于,则继续执行,拍摄包含人体及两个标记点的图像,否则提示重新对焦;
人体分割模块,用于将图像输入Cascade RCNN网络模型进行人体区域的识别,输出人体最小外包矩形区域掩模;
体重识别模块,用于以人体为中心分割出预设尺寸的预分割图像送入经过训练的体重识别模型,输出体长和体重信息。
9.一种电子装置,其特征在于,所述电子装置包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一所述的基于单目摄像头的人体体重识别方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一所述的基于单目摄像头的人体体重识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010879315.3A CN112017231B (zh) | 2020-08-27 | 2020-08-27 | 基于单目摄像头的人体体重识别方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010879315.3A CN112017231B (zh) | 2020-08-27 | 2020-08-27 | 基于单目摄像头的人体体重识别方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112017231A true CN112017231A (zh) | 2020-12-01 |
CN112017231B CN112017231B (zh) | 2024-04-05 |
Family
ID=73503754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010879315.3A Active CN112017231B (zh) | 2020-08-27 | 2020-08-27 | 基于单目摄像头的人体体重识别方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112017231B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113034543A (zh) * | 2021-03-18 | 2021-06-25 | 德清阿尔法创新研究院 | 一种基于局部注意力机制的3D-ReID多目标追踪方法 |
CN113313692A (zh) * | 2021-06-03 | 2021-08-27 | 广西大学 | 一种基于航拍可见光图像的香蕉幼株自动识别与计数方法 |
CN114001810A (zh) * | 2021-11-08 | 2022-02-01 | 厦门熵基科技有限公司 | 一种体重计算方法及装置 |
CN114399785A (zh) * | 2021-10-29 | 2022-04-26 | 平安科技(深圳)有限公司 | 人体身高识别方法、装置、计算机设备及存储介质 |
JP7167241B1 (ja) * | 2021-04-28 | 2022-11-08 | ジーイー・プレシジョン・ヘルスケア・エルエルシー | 学習済みモデル生成方法、処理装置、および記憶媒体 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110246124A (zh) * | 2019-05-24 | 2019-09-17 | 西安交通大学 | 基于深度学习的目标尺寸测量方法及系统 |
CN111243005A (zh) * | 2020-01-07 | 2020-06-05 | 洛阳语音云创新研究院 | 牲畜估重方法、装置、设备以及计算机可读存储介质 |
CN111263066A (zh) * | 2020-02-18 | 2020-06-09 | Oppo广东移动通信有限公司 | 构图指导方法、装置、电子设备及存储介质 |
-
2020
- 2020-08-27 CN CN202010879315.3A patent/CN112017231B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110246124A (zh) * | 2019-05-24 | 2019-09-17 | 西安交通大学 | 基于深度学习的目标尺寸测量方法及系统 |
CN111243005A (zh) * | 2020-01-07 | 2020-06-05 | 洛阳语音云创新研究院 | 牲畜估重方法、装置、设备以及计算机可读存储介质 |
CN111263066A (zh) * | 2020-02-18 | 2020-06-09 | Oppo广东移动通信有限公司 | 构图指导方法、装置、电子设备及存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113034543A (zh) * | 2021-03-18 | 2021-06-25 | 德清阿尔法创新研究院 | 一种基于局部注意力机制的3D-ReID多目标追踪方法 |
CN113034543B (zh) * | 2021-03-18 | 2022-05-03 | 德清阿尔法创新研究院 | 一种基于局部注意力机制的3D-ReID多目标追踪方法 |
JP7167241B1 (ja) * | 2021-04-28 | 2022-11-08 | ジーイー・プレシジョン・ヘルスケア・エルエルシー | 学習済みモデル生成方法、処理装置、および記憶媒体 |
CN113313692A (zh) * | 2021-06-03 | 2021-08-27 | 广西大学 | 一种基于航拍可见光图像的香蕉幼株自动识别与计数方法 |
CN113313692B (zh) * | 2021-06-03 | 2023-04-25 | 广西大学 | 一种基于航拍可见光图像的香蕉幼株自动识别与计数方法 |
CN114399785A (zh) * | 2021-10-29 | 2022-04-26 | 平安科技(深圳)有限公司 | 人体身高识别方法、装置、计算机设备及存储介质 |
CN114399785B (zh) * | 2021-10-29 | 2023-02-21 | 平安科技(深圳)有限公司 | 人体身高识别方法、装置、计算机设备及存储介质 |
CN114001810A (zh) * | 2021-11-08 | 2022-02-01 | 厦门熵基科技有限公司 | 一种体重计算方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112017231B (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112017231B (zh) | 基于单目摄像头的人体体重识别方法、装置及存储介质 | |
US9881204B2 (en) | Method for determining authenticity of a three-dimensional object | |
CN104173054B (zh) | 基于双目视觉技术的人体身高测量方法及其装置 | |
CN112633144A (zh) | 人脸遮挡检测方法、系统、设备及存储介质 | |
CN106981091B (zh) | 人体三维建模数据处理方法及装置 | |
CN109479082B (zh) | 图象处理方法及装置 | |
CN111985477A (zh) | 基于单目摄像头的动物体在线核赔方法、装置及存储介质 | |
CN112272292B (zh) | 投影校正方法、装置和存储介质 | |
CN110926330B (zh) | 图像处理装置和图像处理方法 | |
CN111307039A (zh) | 一种物体长度识别方法、装置、终端设备和存储介质 | |
CN110807459B (zh) | 车牌矫正方法、装置以及可读存储介质 | |
CN105147311A (zh) | 用于ct系统中的可视化设备辅助扫描定位方法和系统 | |
US20210407192A1 (en) | Systems and Methods for Generating Augmented Reality Environments from Two-Dimensional Drawings | |
CN110796709A (zh) | 车架号尺寸获取方法、装置、计算机设备和存储介质 | |
CN110866949A (zh) | 中心点定位方法、装置、电子设备和存储介质 | |
CN111627073B (zh) | 一种基于人机交互的标定方法、标定装置和存储介质 | |
CN110832542A (zh) | 识别处理设备、识别处理方法和程序 | |
CN115937003A (zh) | 图像处理方法、装置、终端设备和可读存储介质 | |
CN111091031A (zh) | 目标对象选取方法和人脸解锁方法 | |
CN106909916B (zh) | 一种基于手机平台快速检测与识别人行道斑马线的方法 | |
CN111798422A (zh) | 棋盘格角点识别方法、装置、设备及存储介质 | |
CN113607064A (zh) | 目标物体的间距测算方法、装置、设备及可读存储介质 | |
CN115049738A (zh) | 人与相机之间距离的估计方法及系统 | |
CN115239789B (zh) | 用于确定液体体积的方法及装置、存储介质、终端 | |
JP2010097341A (ja) | 入力画像から検出対象物の像を検出する画像処理装置 |
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 |