一种获取目标物体体征数据的方法、装置及终端的制作方法
【技术领域】
[0001] 本发明涉及数据获取领域,尤其涉及一种获取目标物体体征数据的方法、装置及 终端。
【背景技术】
[0002] 智能终端能实现"所见即所得" 一直是大多数用户的梦想,比如谷歌公司2009年 推出的居于街景的导航和地理定位服务"GoogleMapsNavigation",但这个服务需要后台 强大的地理图像数据、搜索计算能力以及无处不在的高速网络链接支持,在很多网络覆盖 尚不广的地区这样的服务几乎无法实现。
【发明内容】
[0003] 本发明实施例提供一种获取目标物体体征数据的方法、装置及终端,通过将拍摄 的目标物体图像还原出目标物体的图形及骨架,再结合本地或云端各类搜索应用将该目标 物体的体征数据呈现给用户,从而为广大用户实现"所见即所得"的体验。
[0004] 第一方面,本发明提供了一种获取目标物体体征数据的方法,包括:
[0005] 获取目标物体的3D深度图像;所述3D深度图像为带有距离信息的二维图像,所述 距离信息包括所述目标物体到成像设备之间的距离;
[0006] 根据所述目标物体的3D深度图像中像素的深度值获取所述目标物体的图形轮廓 和骨架参数;所述深度值为根据所述距离信息获取的所述目标物体上某一点到所述成像设 备之间的距离;
[0007] 在3D模型库中检索与所述目标物体的图形轮廓及骨架参数相匹配的3D模型,获 取所述3D模型的参数比例;
[0008] 获取所述目标物体的至少一个真实尺寸;
[0009] 根据所述3D模型的参数比例和所述的至少一个真实尺寸获取所述目标物体的 体征数据。
[0010] 结合第一方面,在第一方面的第一种可能的实施方式中:所述获取目标物体的3D 深度图像包括:
[0011] 向所述目标物体发射参考图案;
[0012] 接收所述参考图案经所述目标物体反射得到的二次图案;
[0013] 计算所述二次图案相对于所述参考图案的偏移值;
[0014] 对所述偏移值进行傅立叶变换获取所述距离信息,由所述距离信息得到所述3D 深度图像。
[0015] 结合第一方面或第一方面的第一种可能的实施方式,在第一方面的第二种可能的 实施方式中:
[0016] 所述根据所述目标物体的3D深度图像中像素的深度值获取所述目标物体的图形 轮廓包括:
[0017] 对所述3D深度图像中像素的深度值进行差值计算,获取所述目标物体的图形轮 廓;
[0018] 具体地,所述对所述3D深度图像中像素的深度值进行差值计算包括:
[0019] 分别计算所述3D深度图像中第一像素的像素深度值与所述第一像素的四个相连 的邻近像素的像素深度值之间的深度值差异,获取四个第一深度差异值;
[0020] 当所述四个第一深度差异值中至少一个第一深度差异值大于第一差异阈值时,将 所述的至少一个第一深度差异值对应的邻近像素标记为轮廓位置;
[0021] 查询所述3D深度图像中第二像素的八个相连的邻近像素中是否有被标记为轮廓 位置的像素;
[0022] 若有,则将所述八个相连的邻近像素中非轮廓位置的像素的像素深度值分别与所 述第二像素的像素深度值进行差值计算,获取第二深度差异值;
[0023] 当至少一个所述第二深度差异值大于第二差异阈值时,将所述第二像素标记为轮 廓位置;
[0024] 根据所述标记为轮廓位置的像素获取所述目标物体的图形轮廓。
[0025] 结合第一方面至第一方面的第二种可能的实施方式中的任--种实施方式,在第 一方面的第三种可能的实施方式中:
[0026] 在所述获取目标物体的3D深度图像之后,所述方法还包括:
[0027] 对所述3D深度图像进行背景去噪处理,获取第一3D目标深度图像;
[0028] 对应地,所述对所述3D深度图像中像素的深度值进行差值计算,获取所述目标物 体的图形轮廓包括:对所述第一3D目标深度图像中像素的深度值进行差值计算,获取所述 目标物体的图形轮廓。
[0029] 结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式 中:所述对所述3D深度图像进行背景去噪处理,获取第一3D目标深度图像,包括:
[0030] 设置深度阈值;
[0031] 比较所述3D深度图像中的各个像素深度值与所述深度阈值的大小,将所述3D深 度图像中像素深度值大于所述深度阈值的像素滤除,获取剩余像素形成所述第一3D目标 深度图像。
[0032] 结合第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式 中:在所述获取所述第一3D目标深度图像之后,所述方法还包括:
[0033] 对所述第一3D目标深度图像进行边缘去噪处理,获取第二3D目标深度图像;
[0034] 对应地,所述对所述3D深度图像中像素的深度值进行差值计算,获取所述目标物 体的图形轮廓包括:对所述第二3D目标深度图像中像素的深度值进行差值计算,获取所述 目标物体的图形轮廓。
[0035] 结合第一方面的第五种可能的实施方式,在第一方面的第六种可能的实施方式 中:所述对所述第一3D目标深度图像进行边缘去噪处理,获取第二3D目标深度图像包括:
[0036] 将所述第一3D目标深度图像分割成多个像素块;
[0037] 设置像素深度分段区间;
[0038] 分别对每块所述像素块内所有像素的像素深度值做均值处理,获取所述每块像素 块的像素均值;
[0039] 将所述像素均值映射至所述像素深度分段区间中的对应区间,并将同一区间内的 所有像素均值对应的像素块进行合并,获取所述第二3D目标深度图像。
[0040] 结合第一方面至第一方面的第六种可能的实施方式中的任-种实施方式,在第 一方面的第七种可能的实施方式中:所述根据所述目标物体的3D深度图像中像素的深度 值获取所述目标物体的骨架参数包括:
[0041] 根据所述目标物体的3D深度图像中所有像素的像素深度值,用线性最小二乘法 获取所述目标物体的中轴;
[0042] 沿着垂直于所述中轴的多个第一线计算所述目标物体的图形轮廓的横向厚度;
[0043] 沿着平行于所述中心轴的多个第二线计算所述目标物体的图形轮廓的纵向厚 度;
[0044] 由所述第一线和所述第二线限定的区域构成所述目标物体的骨架,对应的所述横 向厚度和所述纵向厚度为所述目标物体的骨架参数。
[0045] 结合第一方面的第七种可能的实施方式,在第一方面的第八种可能的实施方式 中:所述在3D模型库中检索与所述目标物体的图形轮廓及骨架参数相匹配的3D模型,获取 所述3D模型的参数比例,包括:
[0046] 将所述目标物体的图形轮廓与所述3D模型库中3D模型的图形轮廓进行匹配,获 取匹配度最高的3D模型的图形轮廓;
[0047] 当所述3D模型的图形轮廓不是所述3D模型的正视图形轮廓时,则根据所述3D模 型的图形轮廓获取所述3D模型的正视图形轮廓;
[0048] 根据所述3D模型的图形轮廓与所述3D模型的正视图形轮廓计算所述3D模型的 视角参数,所述视角参数为所述3D模型的图形轮廓基于所述3D模型的正视图形轮廓的视 觉角度;
[0049] 将所述3D模型的正视图形轮廓基于所述视角参数旋转,获取所述3D模型的骨架 参数;
[0050] 将所述目标物体的骨架参数与所述3D模型的骨架参数进行相似度比较,当所述 相似度小于预设值时,则所述3D模型为所述与所述目标物体的图形轮廓及骨架参数相匹 配的3D模型;
[0051] 通过所述3D模型获取所述3D模型的参数比例。
[0052] 结合第一方面的第八种可能的实施方式,在第一方面的第九种可能的实施方式 中:所述3D模型库中包括所述3D模型的各视角图形轮廓,其中至少包括所述3D模型的正 视角图形轮廓。
[0053] 结合第一方面的第九种可能的实施方式,在第一方面的第十种可能的实施方式 中:所述将所述目标物体的图形轮廓与所述3D模型库中3D模型的图形轮廓进行匹配,获取 匹配度最高的3D模型的图形轮廓包括:
[0054] 采用Zernike矩描述子和傅里叶描述子对所述目标物体的图形轮廓进行描述,获 取第一描述信息;
[0055] 采用Zernike矩描述子和傅里叶描述子对所述3D模型库中3D模型的图形轮廓进 行描述,获取第二描述信息;
[0056] 比较所述第一描述信息与所述第二描述信息,将与所述第一描述信息相差预设阈 值的第二描述信息对应的3D模型的图形轮廓作为所述匹配度最高的3D模型的图形轮廓。
[0057] 结合第一方面至第一方面的第十种可能的实施方式中的任--种实施方式,在 第一方面的第十一种可能的实施方式中:所述获取所述目标物体的至少一个真实尺寸,包 括:
[0058] 向所述目标物体发射声波信号;
[0059] 接收被所述目标物体反射回来的声波信号;
[0060] 获取所述声波信号的传输时间;所述传输时间为所述发射声波信号和所述接收声 波信号的时间差;
[0061] 利用所述传输时间和所述声波信号的传播速率,计算所述目标物体表面到所述 成像设备的距离;
[0062] 通过所述距离和所述成像设备的相距,计算所述目标物体的至少一个真实尺寸。
[0063] 第二方面,本发明提供了一种获取目标物体体征数据的装置,包括:成像模块,用 于获取目标物体的3D深度图像;所述3D深度图像为带有距离信息的二维图像,所述距离信 息包括所述目标物体到成像设备之间的距离;
[0064] 图形轮廓和骨架参数获取模块,用于根据所述目标物体的3D深度图像中像素的 深度值获取所述目标物体的图形轮廓和骨架参数;所述深度值为根据所述距离信息获取的 所述目标物体上某一点到所述成像设备之间的距离;
[0065]参数比例获取模块,用于在3D模型库中检索与所述目标物体的图形轮廓及骨架 参数相匹配的3D模型,获取所述3D模型的参数比例;
[0066] 真实尺寸获取模块,用于获取所述目标物体的至少一个真实尺寸;
[0067] 体征数据获取模块,用于根据所述3D模型的参数比例和所述的至少一个真实尺 寸获取所述目标物体的体征数据。
[0068] 结合第二方面,在第二方面的第一种可能的实施方式中:所述成像模块包括:
[0069] 发射单元,用于向所述目标物体发射参考图案;
[0070] 接收单元,用于接收所述参考图案经所述目标物体反射得到的二次图案;
[0071] 计算单元,用于计算所述二次图案相对于所述参考图案的偏移值;
[0072] 图像获取单元,用于对所述偏移值进行傅立叶变换获取所述距离信息,由所述距 离信息得到所述3D深度图像。
[0073] 结合第二方面或者第二方面的第一种可能的实施方式,在第二方面的第二种可能 的实施方式中:所述图形轮廓和骨架参数获取模块具体用于:对所述3D深度图像中像素的 深度值进行差值计算,获取所述目标物体的图形轮廓;
[0074] 具体地,所述对所述3D深度图像中像素的深度值进行差值计算包括:
[0075] 分别计算所述3D深度图像中第一像素的像素深度值与所述第一像素的四个相 连的邻近像素的像素深度值之间的深度值差异,获取四个第一深度差异值;
[0076] 当所述四个第一深度差异值中至少一个第一深度差异值大于第一差异阈值时,将 所述的至少一个第一深度差异值对应的邻近像素标记为轮廓位置;
[0077] 查询所述3D深度图像中第二像素的八个相连的邻近像素中是否有被标记为轮廓 位置的像素;
[0078] 若有,则将所述八个相连的邻近像素中非轮廓位置的像素的像素深度值分别与所 述第二像素的像素深度值进行差值计算,获取第二深度差异值;
[0079] 当至少一个所述第二深度差异值大于第二差异阈值时,将所述第二像素标记为轮 廓位置;
[0080] 根据所述标记为轮廓位置的像素获取所述目标物体的图形轮廓。
[0081] 结合第二方面至第二方面的第二种可能的实施方式中任--种可能的实施方式, 在第二方面的第三种可能的实施方式中:所述装置还包括:去噪模块;
[0082] 所述去噪模块用于:
[0083] 对所述3D深度图像进行背景去噪处理,获取第一3D目标深度图像;
[0084] 对应地,所述对所述3D深度图像中像素的深度值进行差值计算,获取所述目标物 体的图形轮廓包括:对所述第一3D目标深度图像中像素的深度值进行差值计算,获取所述 目标物体的图形轮廓。
[0085] 结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式 中:所述去噪模块具体用于:
[0086] 设置深度阈值;
[0087] 比较所述3D深度图像中的各个像素深度值与所述深度阈值的大小,将所述3D深 度图像中像素深度值大于所述深度阈值的像素滤除,获取剩余像素形成所述第一3D目标 深度图像。
[0088] 结合第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施方式 中:所述去噪模块还用于:
[0089] 对所述第一3D目标深度图像进行边缘去噪处理,获取第二3D目标深度图像;
[0090] 对应地,所述对所述3D深度图像中像素的深度值进行差值计算,获取所述目标物 体的图形轮廓包括:对所述第二3D目标深度图像中像素的深度值进行差值计算,获取所述 目标物体的图形轮廓。
[0091] 结合第二方面的第五种可能的实施方式,在第二方面的第六种可能的实施