一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

虚拟试衣系统和虚拟试衣方法与流程

2022-05-06 07:21:45 来源:中国专利 TAG:


1.本技术属于虚拟试衣领域,尤其涉及一种虚拟试衣系统和虚拟试衣方法。


背景技术:

2.目前,服装消费市场的试衣方式基本还是传统的试衣方式,需要人工取衣物、试衣(将实际的衣服穿在身上进行试穿)、归还、店员整理。这种方式不仅效率低,且经常因为顾客不小心,造成衣物不必要的损伤,因此,智能场景下的虚拟试衣得以产生并蓬勃发展。
3.但是,现有技术中,在做虚拟试衣的设计时,通常都是采用环形导轨带动传感器转动、垂直导轨带动传感器转动、或者转盘带动人转动等方式,这些方式成本高、结构复杂、都不利于发明的应用落地,因此,亟需一种结构简单、方便应用落地、便于实现的虚拟试衣方法。


技术实现要素:

4.本技术实施例提供了一种虚拟试衣系统和虚拟试衣方法,设计了一种携带采集组件的虚拟试衣头盔,通过利用头盔上采集组件来监测人体数据,以实现虚拟试衣。
5.为达到上述目的,本技术采用如下技术方案:
6.第一方面,提供了一种虚拟试衣系统,包括:虚拟试衣头盔和显示设备;所述虚拟试衣头盔包括:头盔本体,以及安装在所述头盔本体上的第一采集组件和第二采集组件;所述第一采集组件和所述第二采集组件在用户佩戴上所述虚拟试衣系统时沿相反方向展开,所述第一采集组件用于采集第一视角内的第一初始数据,所述第二采集组件用于采集第二视角内的第二初始数据,所述第一视角和所述第二视角相对且均朝向所述用户;所述头盔本体用于根据所述第一初始数据和所述第二初始数据,确定所述用户对应的目标人体点云模型;所述头盔本体还用于将目标衣物模型与所述目标人体点云模型进行结合;所述显示设备用于显示结合后的所述目标人体点云模型及所述目标衣物模型。
7.应理解,所述目标衣物模型为1个或多个衣物模型中,所述用户选择进行展示的衣物模型。
8.第一方面提供的虚拟试衣系统,通过在头盔本体上设定两组采集组件,来采集朝向用户视角时的人体数据,由此可建立出一个比较完整的人体点云模型,然后,只需要让用户进行选择衣物模型进行展示即可,操作简单。由于采集的数据覆盖范围比较全面,确定出的人体点云模型也更为准确,后续匹配衣物模型的效果也更好。
9.在第一方面一种可能的实现方式中,所述第一采集组件包括:第一激光雷达传感器和第一相机,所述第二采集组件包括:第二激光雷达传感器和第二相机;所述第一激光雷达传感器用于采集第一点云数据,所述第一相机用于采集第一图像数据,所述第一初始数据包括所述第一点云数据和所述第一图像数据;所述第二激光雷达传感器用于采集第二点云数据,所述第二相机用于采集第二图像数据,所述第二初始数据包括所述第二点云数据和所述第二图像数据。
10.在该实现方式中,结合激光雷达传感器采集的点云数据和相机采集的图像数据,采集的数据更多更丰富,后续建立的人体模型以及衣物模型在人体模型上的呈现效果更好。
11.在第一方面一种可能的实现方式中,所述头盔本体还用于:根据所述第一点云数据和所述第二点云数据,利用人体建模算法,确定初始人体点云模型,将所述初始人体点云模型作为所述目标人体点云模型;其中,所述人体建模算法包括去噪、拼接、配准中的至少一项。
12.在该实现方式中,根据第一初始数据和第二初始数据可建立出一个初始人体点云模型。
13.在第一方面一种可能的实现方式中,所述头盔本体还用于:利用侧面修复算法,对所述初始人体点云模型进行修复,得到所述目标人体点云模型。
14.在该实现方式中,由于初始人体点云模型并不完善,可再利用侧面修复算法进行修复,即可得到一个更完整的模型。
15.在第一方面一种可能的实现方式中,所述头盔本体还用于:根据所述第一点云数据,对所述第一激光雷达传感器对应的第一三维空间坐标进行校正,并利用校正后的所述第一三维空间坐标,对所述第一点云数据的坐标值进行校正;所述头盔本体还用于:根据所述第二点云数据,对所述第二激光雷达传感器对应的第二三维空间坐标进行校正,并利用校正后的所述第二三维空间坐标,对所述第二点云数据的坐标值进行校正。
16.在该实现方式中,通过对三维空间坐标进行校正,可以进一步对点云数据的坐标值进行校正,从而可以减少走动等外界因素导致的误差,提高采集的数据的准确性。
17.在第一方面一种可能的实现方式中,所述头盔本体还用于:利用点云分割算法,将所述第一点云数据进行分割,生成第一人体点云数据和第一背景点云数据;利用地面寻找算法,在所述第一背景点云数据中确定第一地面点云数据;根据所述第一地面点云数据,对所述第一激光雷达传感器对应的所述第一三维空间坐标进行校正;所述头盔本体还用于:利用所述点云分割算法,将所述第二点云数据进行分割,生成第二人体点云数据和第二背景点云数据;利用所述地面寻找算法,在所述第二背景点云数据中确定第二地面点云数据;根据所述第二地面点云数据,对所述第二激光雷达传感器对应的所述第二三维空间坐标进行校正。
18.在该实现方式中,通过点云分割算法和地面寻找算法,可以提高确定出的三维空间坐标中的z轴的准确性,进而可以提高确定出的三维空间坐标的准确性,进一步,才能提高校正后的第一点云数据和第二点云数据的坐标值的准确性。
19.在第一方面一种可能的实现方式中,所述头盔本体还用于:利用匹配算法,确定与所述目标人体点云模型匹配的1个或多个衣物模型。
20.在该实现方式中,通过匹配算法,可以确定出与用户对应的人体点云模型匹配的衣物模型,缩小衣物模型的可选择范围,方便用户仅在匹配的衣物模型中进行试衣,提高虚拟试衣的效率。
21.在第一方面一种可能的实现方式中,所述头盔本体还用于:根据所述第一初始数据和所述第二初始数据,利用人体姿态识别算法,确定所述用户对应的目标人体姿态类别以及人体关键部位的坐标值,其中,人体姿态类别包括站姿、蹲姿、坐姿中的至少一项,所述
目标人体姿态类别为所述人体姿态类别中的一项;根据所述目标人体姿态类别和所述人体关键部位的坐标值,对所述目标衣物模型的形状进行调整;所述显示设备还用于显示调整后的所述目标衣物模型。
22.在该实现方式中,通过确定目标人体姿态类别和人体关键部位的坐标值,即可对目标衣物模型进行调整,使得其展示效果更自然,更贴合目标人体点云模型。用户可通过显示设备进行试衣,体验衣物的上身效果,并且,用户还可以变换人体姿态,观看不同姿态时衣物相对应的展示效果,根据展示效果,无需实体试衣,即可简单便捷地确定出心仪的衣物。
23.第二方面,提供一种虚拟试衣方法,应用于以上第一方面或第一方面的任意可能的实现方式中的虚拟试衣系统。
24.所述方法包括:
25.在用户佩戴上所述虚拟试衣系统时,所述第一采集组件采集第一视角内的第一初始数据,所述第二采集组件采集第二视角内的第二初始数据,所述第一视角和所述第二视角相对且均朝向所述用户;根据所述第一初始数据和所述第二初始数据,确定所述用户对应的目标人体点云模型;将目标衣物模型与所述目标人体点云模型进行结合,并显示于所述显示设备中,所述目标衣物模型为1个或多个衣物模型中,所述用户选择进行展示的衣物模型。
26.第二方面提供的虚拟试衣方法,通过利用头盔本体上设定的两组采集组件,来采集朝向用户视角时的人体数据,由此可建立出一个比较完整的人体点云模型,然后,只需要让用户进行选择衣物模型进行展示即可,操作简单。由于采集的数据覆盖范围比较全面,确定出的人体点云模型也更为准确,后续匹配衣物模型的效果也更好。
27.第三方面,提供一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如以上第二方面中所述的虚拟试衣方法的相关处理步骤。
28.第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序或指令,当计算机读取并执行所述计算机程序或指令时,使得计算机执行如以上第二方面中所述的虚拟试衣方法。
29.第五方面,提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如以上第二方面中所述的虚拟试衣方法。
30.本技术实施例提供了一种虚拟试衣系统和虚拟试衣方法,通过在头盔本体上设定两组采集组件,来采集朝向用户视角时的人体数据,由此可建立出一个比较完整的人体点云模型,然后,只需要通过匹配算法,确定出与人体点云模型匹配的衣物模型,让用户进行选择展示即可,操作简单。由于采集的数据覆盖范围比较全面,确定出的人体点云模型也更为准确,后续匹配衣物模型的效果也更好。
附图说明
31.图1是本技术实施例提供的一种虚拟试衣系统处于非工作状态的正面结构示意图;
32.图2是本技术实施例提供的一种虚拟试衣系统处于工作状态的侧面结构示意图;
33.图3是本技术实施例提供的一种虚拟试衣方法的流程示意图;
34.图4是本技术实施例提供的一种用户佩戴上虚拟试衣系统的场景图;
35.图5是本技术实施例提供的电子设备的结构示意图。
36.附图标记:
37.1-虚拟试衣系统;100-虚拟试衣头盔;110-第一采集组件;111-第一激光雷达传感器;112-第一相机;113-第一支撑杆;120-第二采集组件;121-第二激光雷达传感器;122-第二相机;123-第二支撑杆;130-头盔本体;200-显示设备。
具体实施方式
38.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
39.首先,针对本技术实施例提供的虚拟试衣系统进行介绍。
40.图1示出了本技术实施例提供的一种虚拟试衣系统处于非工作状态的正面结构示意图。图2示出了本技术实施例提供的一种虚拟试衣系统处于工作状态的侧面结构示意图。
41.如图1和图2所示,本技术实施例提供的虚拟试衣系统1包括两部分,一部分为虚拟试衣头盔100,另一部分为显示设备200。
42.虚拟试衣头盔100用于采集和处理数据,显示设备200用于展示虚拟试衣的结果。
43.显示设备200可以安装在虚拟试衣头盔100上。其中,显示设备200可以和虚拟试衣头盔100为一体化结构;或者,显示设备200和虚拟试衣头盔100可以是分离式的,该分离式指的是显示设备200和虚拟试衣头盔100是可单独生产的两个产品,仅在使用时利用通信方法进行信息交互。
44.再或者,显示设备200和虚拟试衣头盔100是可拆卸式的,即可以安装在一起也可以拆卸下来。例如,当显示设备200安装在虚拟试衣头盔100上时,显示设备200和虚拟试衣头盔100可通过接口进行连接,该接口用于传输数据,进行信息交互;而当显示设备200从虚拟试衣头盔100上拆卸下来时,则不能进行工作。
45.显示设备200和虚拟试衣头盔100的结构关系具体可以根据需要进行设置,本技术实施例对此不进行任何限制。示例性的,显示设备200可以为手机、虚拟现实眼镜等。
46.结合图1所示,虚拟试衣头盔100包括:第一采集组件110、第二采集组件120和头盔本体130,其中,第一采集组件110和第二采集组件120均安装在头盔本体130上。
47.应理解,第一采集组件110和第二采集组件120可以以固定方式、可拆卸方式中的任意一种方式安装在头盔本体130上。当然,也可以为其他方式,具体可以根据需要进行设计,本技术实施例对此不进行任何限制。
48.在一些可能的实现方式中,第一采集组件110可以包括第一激光雷达传感器111和第一相机112,第二采集组件120可以包括第二激光雷达传感器121和第二相机122。
49.在一些可能的实现方式中,第一激光雷达传感器111、第二激光雷达传感器121可以是面阵激光雷达、多线激光雷达、单线激光雷达、或者单线激光雷达与云台的结合组件,具体可以根据需要进行设置,本技术实施例对此不进行任何限制。
50.应理解,为了利用第一激光雷达传感器111和第一相机112对佩戴虚拟试衣头盔
100的用户进行拍摄,需要使第一激光雷达传感器111和第一相机112对准用户。而为了使第一激光雷达传感器111扫描的范围大一些,第一相机112拍摄的视角大一些,获取的数据都更多一些,则需要第一激光雷达传感器111和第一相机112与用户之间在同一水平面上存在一定距离。
51.为了使第一激光雷达传感器111和第一相机112与用户之间在同一水平面上存在一定距离,第一采集组件110还可以包括:第一支撑杆113,该第一支撑杆113用于设置第一激光雷达传感器111和第一相机112,并使第一激光雷达传感器111和第一相机112与佩戴虚拟试衣头盔100的用户在同一水平面上存在一定距离。
52.基于此,如图2所示,为了在同一水平面上产生一定距离,若第一支撑杆113的第一端与头盔本体130进行了连接,则第一激光雷达传感器111和第一相机112可以设置在第一支撑杆113远离头盔本体130的一端(例如称为第二端)。
53.应理解,为了防止拍摄时第一支撑杆113造成不必要的遮挡,影响第一激光雷达传感器111和第一相机112采集的数据的完整性,第一激光雷达传感器111和第一相机112可以设置在第一支撑杆113靠近头盔本体130一侧的侧面上,也就是说,当用户佩戴头盔时,第一激光雷达传感器111和第一相机112可以设置在第一支撑杆113靠近用户的一侧的侧面上,也可以说离地面较近的一侧。这样在采集数据时,就不会拍摄到第一支撑杆113,减少采集非必要数据。
54.还应理解,第一支撑杆113可以是伸缩式的,在不进行试衣时,可以收缩起来;在用户进行试衣时,可以伸展开来。如图2所示,第一支撑杆113可以平行于-x方向,当处于虚拟试衣头盔100处于工作状态时,沿-x方向延伸;当虚拟试衣头盔100处于非工作状态时,沿x方向收缩。在此基础上,为了更近一步的节约空间,收缩后的第一支撑杆113还可以旋转至与第二支撑杆123一致的方向,例如,都旋转至x方向上,从而使得两者并列,占用更小的空间。
55.同理,为了使第二激光雷达传感器121和第二相机122与用户之间在同一水平面上存在一定距离,第二采集组件120还可以包括:第二支撑杆123,该第二支撑杆123用于设置第二激光雷达传感器121和第二相机122,并使第二激光雷达传感器121和第二相机122与佩戴虚拟试衣头盔100的用户在同一水平面上存在一定距离。
56.基于此,如图2所示,为了在同一水平面上产生一定距离,若第二支撑杆123的第一端与头盔本体130进行了连接,则第二激光雷达传感器121和第二相机122可以设置在第二支撑杆123远离头盔本体130的一端(例如称为第二端)。
57.为了防止拍摄时第二支撑杆123造成不必要的遮挡,影响第二激光雷达传感器121和第二相机122采集的数据的完整性,第二激光雷达传感器121和第二相机122可以设置在第二支撑杆123靠近头盔本体130一侧的侧面上,也就是说,当用户佩戴头盔时,第二激光雷达传感器121和第二相机122可以设置在第二支撑杆123靠近用户的一侧的侧面上,也可以说离地面较近的一侧。这样在采集数据时,就不会拍摄到第二支撑杆123,减少采集非必要数据。
58.还应理解,第二支撑杆123可以是伸缩式的,在不进行试衣时,可以收缩起来;在用户进行试衣时,可以伸展开来。如图2所示,第二支撑杆123可以平行于x方向,当虚拟试衣头盔100处于工作状态时,沿x方向延伸;当虚拟试衣头盔100处于非工作状态时,沿-x方向收
缩。在此基础上,为了更近一步的节约空间,收缩后的第二支撑杆123还可以旋转至与第一支撑杆113一致的方向,例如,都旋转至-x方向上,从而使得两者并列,占用更小的空间。
59.当然,第一激光雷达传感器111和第一相机112也可以位于第一支撑杆113上的其他位置,第二激光雷达传感器121和第二相机122也可以位于第二支撑杆123上的其他位置,具体可以根据需要进行设置,本技术实施例对此不进行任何限制。
60.本技术实施例提供的基于激光雷达的虚拟试衣系统1适用于多种场景,如街边宣传场景、临时使用场景、门店租用场景等,其只需要插上电源,虚拟试衣头盔中安装相关程序即可使用,使用场景非常广泛,使用方式非常简便。由于本技术实施例提供的虚拟试衣系统1免安装、方便移动、方便租用,因此,该虚拟试衣系统1成本较低,能够快速落地。
61.以上对本技术实施例提供的虚拟试衣系统1进行了简单介绍,下面结合附图,对本技术实施例提供的虚拟试衣方法进行详细说明。本技术实施例提供的虚拟试衣方法应用于前述所述的虚拟试衣系统1中。
62.图3为本技术实施例提供的一种虚拟试衣方法的流程示意图。图4为本技术实施例提供的一种用户佩戴上虚拟试衣系统的场景图。如图3所示,该方法包括以下s110至s200。
63.s110、当虚拟试衣头盔100被用户佩戴在头上后,头盔本体130上安装的第一采集组件110和第二采集组件120进入工作状态。
64.其中,工作状态用于指示第一采集组件110和第二采集组件120沿相反的方向展开,并开始采集相对方向上的初始数据。此处,相对方向指的是第一采集组件110朝第二采集组件120所在方向采集数据,第二采集组件120朝第一采集组件110所在方向采集数据。
65.例如,如图4所示,第一采集组件110中的第一支撑杆113沿-x方向延伸展开,第二采集组件120中的第二支撑杆123沿x方向延伸展开。第一采集组件110朝x方向采集第一初始数据,第二采集组件120朝-x方向采集第二初始数据。
66.应理解,头盔本体130可以安装传感器,当传感器检测到用户佩戴上头盔本体130时,虚拟试衣系统1自主进入工作状态。或者,也可以通过响应用户的第一操作,虚拟试衣系统1再进入工作状态。
67.其中,用户的第一操作可用于指示用户的按压操作、语音操作等,当然,第一操作也可以为其他操作,具体方式可以根据需要进行设置,本技术实施例对此不进行任何限制。例如,虚拟试衣头盔100的头盔本体130上可安装开关按钮,响应于用户针对开关按钮的按压操作,第一采集组件110和第二采集组件120进入工作状态。
68.应理解,第一采集组件110和第二采集组件120所处的非工作状态,例如可以为关机状态或休眠状态。示例性的,在关机状态或休眠状态下,第一采集组件110中的第一支撑杆113是收缩起来的,第二采集组件120中的第二支撑杆123也是收缩起来的,此外,第一采集组件110和第二采集组件120还可以旋转至同一方向并列设置。此时,第一采集组件110和第二采集组件120相当于折叠起来了,并且均不采集数据。
69.s120、第一采集组件110采集第一初始数据,第二采集组件120采集第二初始数据。
70.由于第一采集组件110包括第一激光雷达传感器111和第一相机112,第二采集组件120包括第二激光雷达传感器121和第二相机122。基于此,第一采集组件110采集第一初始数据,包括:
71.第一激光雷达传感器111采集第一点云数据,第一相机112采集第一图像数据。此
时,第一初始数据包括第一点云数据和第一图像数据。
72.第二采集组件120采集第二初始数据,包括:
73.第二激光雷达传感器121采集第二点云数据,第二相机122采集第二图像数据。
74.应理解,第一点云数据、第一图像数据、第二点云数据和第二图像数据均是朝向用户方向所采集的数据。
75.应理解,点云数据指的是以点的形式记录佩戴者的位置信息和颜色信息、反射强度信息中的至少一项。图像数据例如是以三基色(红、绿和蓝)分量记录佩戴者及周边环境的色彩信息。
76.应理解,由于第一采集组件110和第二采集组件120在工作状态下,相当于沿一条直线在佩戴者头上展开,第一采集组件110为了采集佩戴者的第一初始数据,视角朝向佩戴者,第二采集组件120为了采集佩戴者的第二初始数据,视角也朝向佩戴者,那么,此时第一采集组件110和第二采集组件120所采集的数据其实是相向而对的。由此,可以拍摄得到用户周身360
°
全方位的初始数据。
77.示例性的,如图3所示,第一激光雷达传感器111和第一相机112可以位于第一采集组件110的第二端并朝向用户进行拍摄,第二激光雷达传感器121和第二相机122可以位于第二采集组件120的第二端并朝向用户进行拍摄。第一采集组件110用于采集用户正面以及用户背面相近位置的环境数据,第二采集组件120用于采集用户背面以及用户正面相近位置的环境数据。
78.s130、头盔本体130根据第一点云数据,对第一激光雷达传感器111对应的第一三维空间坐标进行校正,并利用校正后的第一三维空间坐标,对第一点云数据的坐标值进行校正。
79.头盔本体130根据第二点云数据,对第二激光雷达传感器对应的第二三维空间坐标进行校正,并利用校正后的第二三维空间坐标,对第二点云数据的坐标值进行校正。
80.应理解,由于用户在佩戴虚拟试衣头盔100后,可能存在摇头、转头的动作,这样,将导致虚拟试衣头盔100的角度可能出现偏转,进而导致第一激光雷达传感器111和第二激光雷达传感器121采集数据时的基准角度不确定。因此,为了减小误差,提高采集的数据的准确性,需要实时的对第一激光雷达传感器111和第二激光雷达传感器121的三维空间坐标进行校正。
81.其中,头盔本体130中可设置存储单元和处理单元,处理单元可以根据第一点云数据,对第一激光雷达传感器111对应的第一三维空间坐标进行校正,还可以根据第二点云数据对第二激光雷达传感器121对应的第二三维空间坐标进行校正。处理单元还可以根据校正后的第一三维空间坐标,对第一点云数据的坐标值进行校正,以及根据校正后的第二三维空间坐标,对第二点云数据的坐标值进行校正。存储单元可以存储校正后的第一点云数据的坐标值、以及校正后的第二点云数据的坐标值。
82.可选地,可以利用点云分割方法,将第一点云数据进行分割,生成第一人体点云数据和第一背景点云数据;利用地面寻找算法,从第一背景点云数据中确定第一地面点云数据。然后,根据第一地面点云数据,对第一激光雷达传感器111的第一三维空间坐标进行校正。
83.同理,可以利用点云分割方法,将第二点云数据进行分割,生成第二人体点云数据
和第二背景点云数据。利用地面寻找算法,在第二背景点云数据中确定第二地面点云数据;根据第二地面点云数据,对第二激光雷达传感器对应的第二三维空间坐标进行校正。
84.应理解,地面寻找算法可以为平面拟合算法或分割算法,当然,也可以为自定义的算法,具体可以根据需要进行设置,本技术实施例对此不进行任何限制。
85.应理解,可以根据1帧第一点云数据,从中确定出多个平面,称为第一平面;计算第一激光雷达传感器111与每个第一平面之间的高度差值;当高度差值满足第一预设高度差值范围时,将该满足第一预设高度差值范围的第一平面作为第一候选平面,由此,可以确定出1个或多个第一候选平面。
86.其中,第一预设高度差值范围可以包括很多数据,例如第一预设高度差值范围为[1,2.5]米。
[0087]
根据1帧第一点云数据,可以从中确定出每个第一候选平面对应的点云数据,那么,根据多帧第一点云数据,则可以从中确定出每个第一候选平面对应的连续多帧点云数据。基于此,将连续多帧变化幅度最小的第一候选平面作为第一地面。
[0088]
利用第一地面对应的第一地面点云数据,求其对应的法向量pdt,该法向量的朝向即为第一激光雷达传感器111对应的三维空间坐标中的z坐标轴,与人眼观看一致的方向为三维空间坐标的x坐标轴,与z和x均垂直的方向为三维空间坐标的y坐标轴,将该确定出的三维空间坐标更新为第一激光雷达传感器111当前对应的第一三维空间坐标。利用当前的第一三维空间坐标,将所有第一点云数据的坐标值进行校正。
[0089]
同理,可以根据1帧第二地面点云数据,从中确定出多个平面,称为第二平面;计算第二激光雷达传感器121与每个第二平面之间的高度差值;当高度差值满足第二预设高度差值范围时,将该满足第二预设高度差值范围的第二平面作为第二候选平面,由此,可以确定出1个或多个第二候选平面。
[0090]
其中,第二预设高度差范围可以包括很多数据,例如第二预设高度差值范围为[1,2.5]米。
[0091]
根据1帧第二点云数据,可以从中确定出每个第二候选平面对应的点云数据,那么,根据多帧第二点云数据,则可以从中确定出每个第二候选平面的连续多帧点云数据。基于此,将连续多帧变化幅度最小的第二候选平面作为第二地面。
[0092]
利用第二地面对应的第二地面点云数据,求其对应的法向量pdt,该法向量的朝向即为第二激光雷达传感器121对应的三维空间坐标中的z坐标轴,与人眼观看一致的方向为三维空间坐标的x坐标轴,与z和x均垂直的方向为三维空间坐标的y坐标轴,将该确定出的三维空间坐标更新为第二激光雷达传感器121当前对应的第二三维空间坐标。利用当前的第二三维空间坐标,将所有第二点云数据的坐标值进行校正。
[0093]
应理解,当第一采集组件110和第二采集组件120实时采集了多个周期,也即采集了多组第一点云数据和第二点云数据时,可以确定出第一点云数据和第二点云数据分别对应的三维空间坐标,以对第一激光雷达传感器111和第二激光雷达传感器121分别对应的三维空间坐标进行实时校正,进而对第一点云数据和第二点云数据的坐标值可以实时校正。
[0094]
s140、根据第一点云数据和第二点云数据,利用人体建模算法,确定用户对应的初始人体点云模型。
[0095]
可选地,人体建模算法可以包括去噪、拼接、配准中的至少一项。
[0096]
应理解,通常采集的第一点云数据和第二点云数据会存在一定噪声,因此,可以先进行去噪处理。
[0097]
当采集了多组第一点云数据时,可以将当前的第一点云数据与之前某一次的第一点云数据为基准进行配准。
[0098]
在工作状态下,第一采集组件110和第二采集组件120沿相反方向展开,并在相对方向上所采集的第一点云数据和第二点云数据,相当于分别采集了以用户为中心的180
°
数据,因此,为了建立一个完整的人体模型,需要将第一点云数据和第二点云数据进行拼接,得到360
°
完整的点云数据。
[0099]
示例性的,当用户佩戴虚拟试衣头盔100时,呈工作状态的第一采集组件110和第二采集组件120的延伸方向与人眼视线方向相互垂直,此时,例如第一采集组件110位于人体左侧,第二采集组件120位于人体右侧,则第一采集组件110采集的是人体左侧的点云数据,第二采集组件120采集的是人体右侧的点云数据。根据人体左侧的点云数据和人体右侧的点云数据,利用人体建模算法,确定该用户对应的人体初始点云模型。
[0100]
示例性的,当用户佩戴虚拟试衣头盔100时,呈工作状态的第一采集组件110和第二采集组件120的延伸方向与人眼视线方向相互平行,此时,例如第一采集组件110位于人体前侧,第二采集组件120位于人体后侧,则第一采集组件110采集的是人体前侧的点云数据,第二采集组件120采集的是人体后侧的点云数据。根据人体前侧的点云数据和人体后侧的点云数据,利用人体建模算法,确定该用户对应的人体初始点云模型。
[0101]
应理解,可以将确定出的人体初始点云模型作为目标人体点云模型,进行衣物模型的展示。
[0102]
s150、利用侧面修复算法,对初始人体点云模型进行修复,得到目标人体点云模型。
[0103]
可选地,侧面修复算法是以生成对抗网络gan为基础的算法。
[0104]
其中,侧面修复的过程可以包括:先根据第一点云数据,确定第一点云数据对应的密度特征和曲线特征,以及根据第二点云数据,确定第二点云数据对应的密度特征和曲线特征。然后,针对密度特征和曲线特征,进行特征编码,再利用生成对抗网络gan学习特征编码,并进行扫描盲区的缺失点云数据的生成。最后,根据初始人体点云模型和生成的缺失点云数据,确定出目标人体点云模型。
[0105]
其中,密度特征的确定过程可以为:例如以x轴长度为0.03米,y轴长度为0.03m,z轴长度为0.15m的3d网格尺寸,对第一点云数据或第二点云数据进行划分,假设得到n个3d网格,每个网格中含有0-m个点数据,则取每个网格的点数为特征值1、每个网格内所有点的间距为特征值2,由此可以得到n
×
2的密度特征矩阵。
[0106]
曲线特征的确定过程可以包括:从垂直于人体的头与脚的连接线的水平方向,划分出p条点云曲线,每条点云曲线中含有q个点,取每条点云曲线的第1个点组成含有p个点的数组s1,取每条点云曲线的第2个点组件含有p个点的数据s2,依次类推,取每条点云曲线的第q个点组成含有p个点的数据sq。针对每个数组,确定数组内的所有点的s个数据分布特征值,由此可以得到q
×
s的曲线特征矩阵。
[0107]
将上述n
×
2的密度特征矩阵和q
×
s的曲线特征矩阵,输入生成对抗网络进行训练,得到扫描盲区的缺失点云数据。
[0108]
应理解,由于利用第一点云数据和第二点云数据,建立的初始人体点云模型只是一个初步的模型,其可能不完善,缺失很多数据,比如缺失两者拼接处的点云数据,因此,为了使建立的模型更加完整,需要利用侧面修复算法对其进行修复。
[0109]
在此基础上,为了便于计算,且修复的更为准确,可以将初始人体点云模型中的点云数据进行划分,划分为4组数据,例如分别为人体前侧左半边点云数据、人体前侧右半边点云数据、人体后侧左半边点云数据和人体后侧右半边点云数据。然后,将人体前侧左边板点云数据和人体后侧左半边点云数据进行人体左侧面的修复,将人体前侧右半边点云数据和人体后侧左半边点云数据进行人体右侧面的修复。当然,还可以划分的更细,进行更为细腻的修复,具体可以根据需要进行划分和计算,本技术实施例对此不进行任何限制。
[0110]
还应理解,可以在用户佩戴头盔时,根据获取的第一点云数据和第二点云数据,建立用户对应的目标人体点云模型,后续根据继续采集的点云数据,不断更新该目标人体点云模型。
[0111]
在上述基础上,应理解,当第一采集组件110采集的第一初始数据和第二采集组件120采集的第二初始数据,不包括用户的头部信息时,根据上述方法所建立的目标人体点云模型,则也不包括用户的头部。但为了后续更好的展示效果,也可以在目标人体点云模型中,增加用户的头部模型。
[0112]
下面对生成头部模型的过程提供几种示例性描述。
[0113]
示例性一,例如,可以扩大第一采集组件110和第二采集组件120采集数据的视角范围,使得采集的第一初始数据和第二初始数据包括用户的头部信息,由此,在建立目标人体点云模型时,可以包括用户头部对应的点云模型。
[0114]
示例性二,用户在佩戴虚拟试衣头盔100之前先进行头部拍照,例如用户将虚拟试衣头盔100举起至头部上方,利用第一采集组件110和第二采集组件120来拍摄的头部信息,头盔本体130再根据头部信息建立头部对应头部点云模型,然后,再将头部点云模型与后续建立的人体点云模型进行结合。
[0115]
示例性三,例如,还可以通过在头盔上安装传感器,利用传感器来采集用户的头部信息,头盔本体130再根据头部信息建立头部对应的头部点云模型,然后,再将头部点云模型与后续建立的人体点云模型进行结合。
[0116]
应理解,上述仅为三种示例,具体可以根据需要进行设计和修改,本技术实施例对此不进行任何限制。
[0117]
s160、利用匹配算法,确定与目标人体点云模型匹配的1个或多个衣物模型。
[0118]
应理解,匹配算法指的是:将衣物模型的尺寸与目标人体点云模型的尺寸一一进行比对,该尺寸例如可以包括:身高、体重、肩宽、胸围、腰围、袖长、裤长等中的至少一项。
[0119]
应理解,衣物模型库可以存储在虚拟试衣头盔100的存储单元中,或者,衣物模型库也可以存储在与虚拟试衣头盔100进行通信连接的其他设备中,衣物模型库包括多个衣物模型以及每个衣物模型对应的尺寸。
[0120]
应理解,当不利用匹配算法确定与目标人体点云模型匹配的衣物模型时,用户若直接从众多衣物模型中进行选择,则该被选中的衣物模型的尺寸可能不适合该用户,由此,该被选中的衣物模型在与目标人体点云模型进行结合时,无法结合的很好,也将无法很好的展示。
[0121]
s170、响应于用户的第二操作,将目标衣物模型结合在目标人体点云模型上。其中,目标衣物模型为1个或多个衣物模型中,用户选择进行展示的衣物模型。
[0122]
应理解,用户的第二操作可用于指示用户的隔空手势操作、语音操作等,当然,第二操作也可以为其他操作,具体可以根据需要进行设置,本技术实施例对此不进行任何限制。例如,虚拟试衣头盔100的头盔本体130中存储有手势识别算法,当用户进行隔空手势操作时,第一采集组件110和第二采集组件120从采集的点云数据和图像数据中识别出用户的隔空手势,然后,响应于用户的隔空手势,进行人机交互,更换显示设备200中的显示内容。
[0123]
例如,响应于用户进行的食指按压操作,将选中的目标衣物模型结合在目标人体点云模型上进行展示。响应于用户进行的食指滑动操作,切换目标人体点云模型上展示的目标衣物模型;响应于用户进行的手掌张开滑动操作,进行展示页的翻页。响应于用户进行的双手指滑动,进行观看视角的旋转,例如,观看视角转动后可以看到目标衣物模型结合在目标人体点云模型侧面或背面的样子。
[0124]
此处,隔空手势的手势可以根据需要进行设置和更改,隔空手势对应的指令也可以根据需要进行设置和更改,本技术实施例对此不进行任何限制。
[0125]
s180、根据第一初始数据和第二初始数据,利用人体姿态识别算法,确定用户对应的目标人体姿态类别,以及人体关键部位的坐标值。
[0126]
应理解,人体姿态类别可以包括站姿、蹲姿、坐姿中的至少一项;目标人体姿态类别为前述人体姿态类别中的一项。
[0127]
应理解,人体关键部位可以根据需要进行设置,例如,头部、手肘、胳膊肘、肩膀头、髋、膝盖、脚腕等,具体可以根据需要进行增加和修改,本技术实施例对此不进行任何限制。
[0128]
应理解,基于第一初始数据包括第一点云数据和第一图像数据,第二初始数据包括第二点云数据和第二图像数据,人体姿态识别算法用于:根据第一图像数据和第二图像数据,进行人体姿态类别的初步识别;根据第一点云数据和第二点云数据,进行人体姿态轨迹的识别。
[0129]
然后,将初步识别的人体姿态类别对应的特征和人体姿态轨迹对应的特征进行融合,得到位于三维空间坐标内的融合特征。通过算法对融合特征进行学习,并与预设特征库中的姿态类别进行对比,确定目标人体姿态类别,以及人体关键部位在三维空间坐标中的坐标值。
[0130]
基于此,后续才能根据目标人体姿态类别和人体关键部位的坐标值,对目标衣物模型进行调整。
[0131]
还应理解,根据第一图像数据和第二图像数据,进行人体姿态类别的初始识别是基于图像序列数据进行的识别。每帧图像数据中的每个像素均包括三基色像素值,则每帧图像数据均包括三基色rgb三个维度的数据。其中,三基色分别为红色、绿色和蓝色。
[0132]
根据第一点云数据和第二点云数据,进行人体姿态轨迹的识别是基于点云序列数据进行的识别。每帧点云数据中的每个点均包括xyz三个坐标值,则每帧点云数据均包括xyz三个维度的数据。
[0133]
基于此,将初步识别的人体姿态类别对应的特征和人体姿态轨迹对应的特征进行融合时,可以将图像序列数据和点云序列数据进行逐帧融合,从而得到rgb和xyz这6个维度的数据,也就是说,得到的融合特征是6个维度的数据。
[0134]
s190、根据目标人体姿态类别和人体关键部位的坐标值,对目标衣物模型进行调整。
[0135]
示例性的,目标人体姿态类别为蹲姿,人体关键部位的坐标值分别为j1至j9,则根据该蹲姿的姿势,以及j1至j9,将目标衣物模型对应的坐标值进行调整,以匹配当前的人体姿态,表现出衣物在人体蹲下时的褶皱状态。当然,根据人体姿态的不同,还可以表现用户运动时对应的摇摆状态、或者解开扣子时的状态等等。
[0136]
s200、目标衣物模型结合在目标人体点云模型上后,在显示设备200中进行显示,以及目标衣物模型被调整后,在显示设备200中进行显示。
[0137]
用户可通过显示设备200进行试衣,体验衣物的上身效果,并且,用户还可以变换人体姿态,观看不同姿态时衣物相对应的展示效果,根据展示效果,无需实体试衣,即可简单便捷地确定出心仪的衣物。
[0138]
本技术实施例提供的虚拟试衣方法,通过在头盔本体上设定两组采集组件,来采集朝向用户视角时的人体数据,由此可建立出一个比较完整的人体点云模型,然后,只需要通过匹配算法,确定出与人体点云模型匹配的衣物模型,让用户进行选择展示即可,操作简单。由于采集的数据覆盖范围比较全面,确定出的人体点云模型也更为准确,后续匹配衣物模型的效果也更好。
[0139]
本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序或指令,当计算机读取并执行所述计算机程序或指令时,使得计算机执行所述的虚拟试衣方法。
[0140]
本技术实施例还提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述虚拟试衣方法。
[0141]
本技术实施例提供的计算机可读存储介质、计算机程序产品的有益效果与上述虚拟试衣方法对应的有益效果对应的有益效果相同,在此不再赘述。
[0142]
本技术实施例还提供一种电子设备,如图5所示,包括:处理器;处理器执行存在存储器中的计算机程序,实现如本技术实施例所述的虚拟试衣方法。
[0143]
应理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,ram)可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
[0144]
应理解,本技术实施例中的处理器可以为中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现
成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或上述提到的处理器也可以是一个或多个用于控制上述的信号传输方法的程序执行的集成电路。该处理单元和该存储单元可以解耦,分别设置在不同的物理设备上,通过有线或者无线的方式连接来实现该处理单元和该存储单元的各自的功能,以支持该系统芯片实现上述实施例中的各种功能。或者,该处理单元和该存储器也可以耦合在同一个设备上。
[0145]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献