CN110766738B - 基于多视角深度传感器的虚拟试鞋方法 - Google Patents
基于多视角深度传感器的虚拟试鞋方法 Download PDFInfo
- Publication number
- CN110766738B CN110766738B CN201910382147.4A CN201910382147A CN110766738B CN 110766738 B CN110766738 B CN 110766738B CN 201910382147 A CN201910382147 A CN 201910382147A CN 110766738 B CN110766738 B CN 110766738B
- Authority
- CN
- China
- Prior art keywords
- foot
- depth
- coordinate system
- view
- depth sensor
- 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.)
- Active
Links
- 238000010998 test method Methods 0.000 title claims abstract description 7
- 230000000007 visual effect Effects 0.000 claims abstract description 29
- 210000002683 foot Anatomy 0.000 claims description 119
- 238000000034 method Methods 0.000 claims description 37
- 238000009877 rendering Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 14
- 230000004927 fusion Effects 0.000 claims description 11
- 210000003423 ankle Anatomy 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000010586 diagram Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 4
- 238000000354 decomposition reaction Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000009897 systematic effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 12
- 238000012360 testing method Methods 0.000 description 22
- 238000005516 engineering process Methods 0.000 description 13
- 230000005484 gravity Effects 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 102100029469 WD repeat and HMG-box DNA-binding protein 1 Human genes 0.000 description 1
- 101710097421 WD repeat and HMG-box DNA-binding protein 1 Proteins 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 210000000452 mid-foot Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
- G06Q30/0643—Graphical representation of items or shoppers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- 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/10—Image acquisition modality
- G06T2207/10024—Color image
-
- 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/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Graphics (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Processing Or Creating Images (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
基于多视角深度传感器的虚拟试鞋方法,设置工作区域,将若干深度传感器的视角覆盖工作区域;用户站在工作区域内,深度传感器采集其数据,然后确定脚部的位置、方向和大小;将鞋的三维模型投影至当前相机视角下,并与实时场景的RGB数据进行融合。利用多视角深度传感器即可实现对场景人员脚部关键点进行提取,然后配合任意角度的RGB传感器显示虚拟试鞋效果,完全模拟了用户面对试鞋镜真实试鞋的视觉效果体验。可以精准计算用户的脚部尺寸,消除了复杂的用户操作。
Description
技术领域
本发明涉及计算机三维图像处理领域,具体地说是一种基于多视角深度传感器的虚拟试鞋方法。
背景技术
随着互联网技术的兴起,全球产业进入了互联网时代。在日常的生产生活中,网络购物日益成为一种主流的消费模式。对于网络购买鞋类产品时,选择理想样式,和合适的尺码成为了用户的一大困扰。究其原因,单一利用卖家拍摄的单一平面鞋类展示效果作为选择样式的依据,与用户实际的心理预期有一定的差距。另外,中国鞋类厂商的鞋码标准使用不广泛,常用欧码或美码代替;而不同厂商、不同鞋类产品之间鞋码,造成码数不准、尺码混乱的问题很难解决。这两个原因导致了商家面临退货率飙升的问题,同时浪费了物流业的社会效率。
随着三维重建、VR/AR和AI等技术以及计算机CPU/GPU处理器性能的爆发式发展,虚拟试鞋业务随之兴起。利用计算机视觉、计算机图形学和计算成像等领域的相关技术,厂商可以预先对鞋类产品进行三维建模,在用户挑选鞋类产品时可以实时的进行预览对应产品的三维影像,或者利用AR/VR穿戴式设备,将鞋类产品模型与用户场景进行融合,使得用户在挑选过程中能够实时模拟自身穿着该产品的实际视觉效果。
当前虚拟试鞋技术大致分为三类:
1.直接在互联网页面上展示由三维重建技术获得的鞋类产品的三维模型的立体效果,用户可以通过操作完成不同视角的预览鞋类产品。这类技术大大提升了以往只能靠卖家拍摄的单一平面鞋类展示效果。但是,这种技术对于用户而言,仍然无法得知该类产品的穿着效果以及鞋码的选择。
2.利用VR/AR穿戴式设备,将三维重建技术获得的鞋类产品的三维模型投射到现实场景,利用计算机视觉等相关技术,对人体和鞋进行融合,继而获得用户穿戴该类产品的视觉效果。但是,一方面受到用户视角和AR/VR视场角等相关方面的原因,很难有理想的效果;另一方面,对于用户而言,购置VR/AR设备以及配套的计算单元,成本相当高。
3.利用三维重建技术的脚部建模设备进行虚拟试鞋。用户只需要站立在设备的相关区域,设备经过一段时间利用机器视觉和三维重建技术对人体脚部进行测量和计算,最终完成脚部的三维建模,然后与鞋类产品的三维模型进行适配。这种方案对于鞋码检测较为精准,但是一方面由于设备规格的限制,用户无法进行多角度的移动旋转脚部进行全方位视觉体验;另一方面由于造价较高,对于用户而言成本较高。另外,即使由商家购置相关设备用于线下虚拟试鞋体验,由于设备需要精准对脚部进行三维建模,需要用户进行脱鞋站立,同时脚部建模过程持续一段时间,存在一定的不方便。
CN201610008004.3号中国专利申请公开了三维虚拟试鞋方法和系统,将使用者的脚部模型和鞋模型结合起来,实现了虚拟鞋子与真实顾客脚形的融合,通过试穿效果的动态展示,顾客可在最短时间内快速浏览不同鞋子款式的试穿效果,还可以观看不同饰品、背景下的试穿效果,可以避免物流资源的浪费以及退换货带来的时间浪费,提高网络购鞋的用户体验。该方案利用采集设备进行完整的人员脚部模型重建,然后去做与鞋模型的贴合,增加了计算过程,较为复杂。
CN201710336343.9号中国专利申请公开了本发明公开了一种试鞋系统,包括用于获取三维脚部数据并存储至脚型数据库的足部三维扫描装置、用于调取三维脚部数据与鞋型数据库中的三维鞋型数据且进行比对并推送适合鞋子的控制终端以及将购买者引导至实体店的移动终端,能够先进行虚拟试鞋,购买者通过虚拟试鞋挑选好自己所需要的鞋子之后,在通过移动终端引导购买者去实体店进行实体试鞋。该方案同样要对对脚部进行重建。
此外,还有诸如CN201710413212.6号专利申请所公开的一种线上辅助测量脚码大小的方法,步骤是:1、用户信息获取;2、服务器自动运算;3、服务器提供用户鞋码信息,具有测试方便、快捷、可以自助完成,大大方便人们在线上买鞋的方便程度。即用特制的标定卡去做脱鞋后脚步大小测量的,并且他对用户拍摄的角度有严格的限定。
CN201810848062.6号中国专利申请公开一种在线虚拟试鞋方法,包括:在用户脚部穿戴空间标记袜的情况下,获取所述用户的脚部图像;销售终端用预设三维脚部模型对比用户的脚部图像后生成用户脚部三维模型;销售终端从用户脚部三维模型上获取用户脚部尺寸;销售终端根据鞋码选用预存的三维鞋模型,并投射到用户脚部三维模型上,生成试三维试鞋模型。在线虚拟试鞋方法可使消费者在买鞋前通过虚拟现实技术在线虚拟试鞋,提高消费者在线买鞋的合脚率,该方案利用特制的袜子制作标记,来进行对脚部关键点进行提取,然后同样要做脚部三维重建。
发明内容
本发明为解决现有的问题,旨在提供一种基于多视角深度传感器的虚拟试鞋方法。
为了达到上述目的,本发明采用的技术方案包括如下步骤:
步骤一,设置工作区域,将若干深度传感器的视角覆盖工作区域;
步骤二,用户站在工作区域内,深度传感器采集其数据,然后确定脚部的位置、方向和大小;
步骤三,将鞋的三维模型投影至当前相机视角下,并与实时场景的RGB数据进行融合。
步骤一中,确定深度传感器与世界坐标系的关系,设定第i台深度传感器采集的深度图像信息为RGB传感器采集的彩色图像信息为Ic,深度图像信息上的任意像素点为p(u,v),其值为该点的深度信息记为d,该像素点对应的世界坐标系下的三维点Pw(x,y,z),存在如下关系:
步骤一中,选取若干地面的像素点及其坐标,利用矩阵的SVD分解算法拟合得到参数A,B,C,D,从而定位了在以深度传感器相机坐标系为世界坐标系的地面平面,p(u,v)对应的三维点Pw(x,y,z)均处于同一平面S:f(A,B,C,D)=0下,满足:S:A*(P)w(x)+B*(P)w(y)+C*(P)w(z)+D=0(2)。
步骤一中,在世界坐标系中设虚拟深度传感器Cv,设定它内外参数Kv,Rv和tv,根据Cd和Cv的坐标关系,通过将Cd获取的深度信息Id映射到Cv得到新视角下的场景点之间的深度关系图像数据Iv。
进一步地,Cv相对于世界坐标系的外参变换H4×4关系满足:
根据H可以获得外参数Rv和tv。
步骤二中,在用户进入有效区域前,积累采集场景的深度信息,加权平均后定义为背景深度信息当用户进入有效区域后实时采集到的每一帧深度信息/>与之做差,小于一定阈值的点为是背景点,赋零值;反之,则认为该像素点为前景点,赋当前帧的深度值,即:
其中th为深度传感器的系统误差。
步骤二中,将Cd拍摄到的深度信息转化为三维点云,然后利用Cv从上向下观测得到顶视信息;根据公式(1)上每一个有效像素点pd都可以得到Cv相机坐标系下的三维点Pd,然后通过Cv的内参Kv以及相对于Cd的外参数Rv2d和tv2d反投影得到像素点pv,进而得到/>即:/>其中,在各自计算过程的最后一步加入连通域检测机制,选取最大的连通域作为脚部信息的待选区域,从而将剩余的区域作为噪声区域进行过滤。
步骤二中,在顶视图Iv的脚部区域中,以连通域操作对潜在的双脚进行分割,对当前存在的连通区域进行筛选,得到足印1的掩码图F1和足印2的掩码图F2;针对Fi,i∈[1,2],以足印各像素点在图像中的位置(u,v)计算一个合适的外切矩形来定位足印的位置。
其中,外切矩形的计算为:
第一,将Fi分别向图像坐标系的x,y轴方向投影,取得其长度L和W;
第二,如果L=W,表明足印的主方向为45°或135°;当L≠W,通过L/W的关系可以计算出当前主方向的角度;
第三,根据角度和45°的差异△θ,进而计算旋转矩阵,使得坐标系进行旋转后,重新计算L和W;
第四,迭代此操作直到计算的L=W,同时累计记录旋转关系∑△θ;最终得到一个外接足印的方形;其方形对角线得到直线L1:y=kx+b,该直线为脚的主方向。
步骤二中,确定脚尖方向:
第一,在侧视图中统计脚部区域的像素纵向位置,得到最大值vmax;和最小值vmin;
第二,在侧视图中统计脚部区域的像素纵向位置v<vmin+r·(vmax-vmin)的像素点集合{p|vp<vmin+r·(vmax-vmin)};其中r为脚踝在整体脚部信息中的比例关系,一般取r∈[0.2,0.4]。
第三,根据公式(1)和公式(5)将上述像素点集合重投影映射到顶视深度信息中,形成顶视深度数据的一个像素集合点,并计算这个集合的位置中心,记为pc;过点pc、斜率为-1/k的直线记为Le:y-yp=-1/k(x-xp),而直线L分别于Lc,Le,Ld交于一点,分别记为pllc、plle和plld;
第四,如果||pllc-p11e||2>||plld-p11e||2,则认为pllc为脚尖位置,反之则认为plld为脚尖位置。
步骤二中,确定脚部长度:Cv视角下的脚尖位置pt和脚后跟位置ph,根据公式(1)易得在Cv视角下的三维坐标点和/>
在的正上方设置一点/>即/>和/>其中thz是小于Cv视角下地面Z的任意数据;
和/>三个点确定了用户脚部在三维空间中的位置、方向和大小;根据Cv的外参,该三个点可转化为世界坐标系下的三个点Pt、Ph和Pu;向量PhPt的方向确定了脚部的方向,模值确定了脚长。
步骤三中,对于鞋三维模型进行预处理,将其坐标系的原点移动至脚后跟中心,x轴方向指向脚尖方向,y轴方向垂直于脚底面向上;在渲染环境的世界坐标系下,将模型移动到Ph点后缩放至Pt与脚尖重合。
然后,在渲染环境的世界坐标系下,设置一个与Cc完全一致的相机;利用渲染算法进行渲染得到RGB渲染帧数据Is,该数据的有效区域即为鞋类产品在用户脚部方向和位置投影在Cc视角下的具体视觉效果;无效区域置零值;
最后,将Cc视角下的渲染帧Is有效像素逐一融合至Cc视角下拍摄帧数据Ic,形成最终的融合数据,推至显示设备,供用户进行视觉效果体验。
本发明的方法归纳为:
准备阶段:设置场景,对深度相机组和观测视角的RGB相机进行内外参数标定,设定前视相机的相机坐标系与世界坐标系重合,其他两个相机的旋转平移关系相对于前视相机。
采集阶段:实时采集深度相机组的深度数据和观测视角的RGB相机的RGB图像数据。其中深度相机组参与计算,故在此步骤对每个深度相机的背景深度图(无人员走动的情况下)分别选取若干属于地面的像素点,生成三维坐标点,拟合地面参数。同时,记录当前帧,作为背景图,参与后续计算。
计算阶段:
根据拟合的地面参数,计算顶视虚拟相机内外参数,视角垂直于地面向下,视野中心在地面与深度相机组光心交于的地面点重心相交。
采集当前帧的深度数据,与对应视角下留存的背景深度信息做差值,在阈值范围内对前景区域进行提取。并利用连通域去除散点噪声。
根据各自深度相机的内外参,将各自帧前景深度信息投影至顶视虚拟相机视角下,形成足印掩模图。
对顶视足印掩模图,利用连通域检测和足印面积阈值,将可能存在的双脚进行分割,形成单独的左脚掩模图和右脚掩模图。
对单脚掩模图进行二维坐标轴投影,计算投影长度(L,W);当L≠W时,计算与坐标轴的对应角度(θ=arctan(L/W)),然后按角度残差△θ=θ-π/4旋转坐标系,然后对新的坐标系重新计算投影长度。迭代这一过程,直到新计算的L=W。此时表明在最新的坐标系中,足印的主方向处于坐标系的45°方向。由此可以得到足印主方向上的点在原始坐标系中的位置。然后利用其主方向可以得到外接足印的2组对应垂直的直线。
在v中,向顶部虚拟相机映射点云时,额外记录腿部点云(距离虚拟相机小于一定阈值的点),映射后对该部分点云进行重心计算,得到腿部在地面上的重心映射点位置。
足印主方向上离腿部重心点近的一侧归为脚后跟,另外一侧定位脚尖。至此,我们在足印主方向上确定了脚的朝向。
根据脚尖、脚后跟、虚拟相机的内外参数,最终分别确定了两个脚部关键点的三维坐标。
对于其中一个足印的关键点,以脚后跟为原点,脚尖为x轴方向,脚尖上方点方向为y轴,叉乘可以得到处于地面的z轴。如果另一只脚的关键点均在这个z轴的正方向上,说明建轴脚为左脚,另一只脚为右脚。反之,建轴脚为右脚,另一只脚为左脚。
融合阶段:根据足部关键点三维坐标进行鞋模型的对应角度渲染,然后根据观测视角的RGB相机的内外参数,将渲染图片与RGB图像融合,最终形成融合后的AR场景。
和现有技术相比,本发明针对上述虚拟试鞋业务的现状,利用多视角深度传感器即可实现对场景人员脚部关键点进行提取,然后配合任意角度的RGB传感器显示虚拟试鞋效果。首先,可以实时地进行用户脚部与鞋类产品的三维模型的融合,并可以在任意视角下进行展示,同时用户无需有任何额外的(例如脱鞋,站立在相关设备上等待计算建模等)操作过程,完全模拟了用户面对试鞋镜真实试鞋的视觉效果体验。其次,本发明可以在用户感受虚拟试鞋的视觉效果体验过程中,精准计算用户的脚部尺寸,该部分数据可以作为用户选择鞋类产品鞋码的参考依据。最后,本发明利用多视角的深度相传感器,相对于其他产品,成本较低;同时消除了复杂的用户操作,便于使用。
附图说明
图1为本发明实施例的所使用的系统的结构示意图,其中的RGB传感器为系统观测视角;
图2为侧视深度传感器Cd和虚拟顶视深度传感器Cv相机坐标系关系示意图;
图3a为本发明实施例的操作说明图;
图3b、3c分别为脚部在侧视深度传感器Cd和虚拟顶视深度传感器Cv视角下的数据合成图;
图4为确定户脚部主方向的示意图;
图5a、图5b分别为用户脚部侧视和顶视数据联合计算关键数据的示意图;
图6为判断用户左右脚关系的示意图。
具体实施方式
现结合附图对本发明作进一步地说明。
参见图1至图6,图1至图6展示的是本发明的一个实施例,构建一个虚拟试鞋工作区域,区域正前方配置一套显示设备,显示设备下方放置三个RGBD相机,其视角覆盖工作区域。当用户站在区域内,RGBD相机对区域内进行数据采集,然后利用计算机视觉相关技术定位用户的脚的位置、方向和大小,然后根据三维空间几何关系,利用计算机图形学相关渲染技术将已存在的鞋类产品的三维模型投影至当前相机视角下,并于实时场景的RGB数据进行融合,并投射至显示设备中,从而完成虚拟试鞋的视觉效果展示。
首先计算世界坐标系与相机坐标系。
本实施例中存在三台深度传感器。根据现有相机标定理论和技术,在世界坐标系下,第i台深度传感器的旋转矩阵为平移向量为/>以及内参矩阵为/>同理可得唯一一台用于用户观测视角的RGB传感器的对应参数分别为Rc、tc和Kc。我们设定第i台深度传感器采集的深度图像信息为/>RGB传感器采集的彩色图像信息为Ic。同时设定深度图像信息上的任意像素点为p(u,v),其值为该点的深度信息,记为d,该像素点对应的世界坐标系下的三维点Pw(x,y,z)。二者存在如下关系:
其中(cx,cy)为深度传感器的光心参数,(fx,fy)为深度传感器的横向和纵向的焦距数据,它们都来源于深度传感器的内参数Kc。
然后计算基于深度信息的地面信息拟合及顶视虚拟相机。首先参见图1,虚拟试鞋有效区域(传感器可以覆盖的区域)在没有人员走动的情况下,可以认为完全是一片平整的地面(而且事实上在系统部署过程中,可以完全保证这一点)。当无人员走动的情况下,深度传感器对这一区域进行采集的深度信息在世界坐标系下应该是一个平面。由此可以知道,Id上任意一个有效像素点p(u,v)(所谓有效是指深度传感器实际采集的深度图像信息实际存在部分零值点,为无效点)对应的三维点Pw(x,y,z)均处于同一平面S:f(A,B,C,D)=0下,即满足:
S:A*(P)w(x)+B*(P)w(y)+C*(P)w(z)+D=0(7)
由公式(2)可以得知为了拟合这个平面,至少需要多于四个点位数据。所以在当前无人员走动的深度图像信息中选取属于该地面平面的若干像素点(为了减少误差,点位应该多于4个;为了防止过拟合,点位应该少于20个),并求出对应的三维坐标点。然后利用矩阵的SVD分解算法,拟合得到参数A,B,C,D。从而定位了在以深度传感器相机坐标系为世界坐标系的地面平面S:f(A,B,C,D)=0。
其次,由于系统中RGB传感器采集到的是人员脚部的侧视信息(侧视的目的是最大限度的获取有效脚部信息),但由于相机的倾角和人员站立的位置关系,使得侧视传感器无法根据采集的深度信息判定人员脚部和其他部位的深度关系,所以需要在世界坐标系中部署一台虚拟深度传感器Cv。这台传感器不是真实存在的,但一经设定它内外参数Kv,Rv和tv,根据Cd和Cv的坐标关系,可以将Cd获取的深度信息Id映射到Cv得到新视角下的场景点之间的深度关系图像数据Iv。考虑到虚拟试鞋的场景因素,Cv应该部署在场景有效区域的正上方并垂直于地面向下拍摄,这样可以使得Iv中地面处于同一深度,且用户的脚部深度信息始终处于距离地面一定高度的范围内。为了便于计算,我们设定Cv的内参与Cd一致,即Kv=Kd。如图2所示,设xv轴平行于Cd的odxdyd平面平行且平行于地面S。即:由上述分析可知Cv垂直于地面向下拍摄,故其zv轴与地面平面方程的法线向量n=(A,B,C)一致。即:/>综合/>和/>易知/>为了Cv能够最大限度的获取有效数据,故Cv的原点ov设定于/>i∈[1,N]的/>轴与地面交点(共有N个交点)的重心点Pi(x,y,z)的正上方l处,即/>其中l可以根据Cd的实际平均高度估算。由上述一系列分析,可以得到Cv相对于Cd的外参变换H4×4关系满足:
从而根据H可以获得外参数Rv和tv。
至此,整个系统(视觉采集和场景)可以用i∈[1,N],Cv的内外参数、深度信息以及地面平面S:(A,B,C,D)描述。Cc仅用于最终的针对用户的虚拟试鞋效果展示。
接着提取基于深度信息的脚部信息。当用户站立在系统的有效区域内,可以实时采集到包含用户腿部、脚部以及和场景环境的融合RGB图像和深度数据。对于定位脚部而言,首要的任务是完成对用户腿部和脚部与场景环境的分割。传统的分割利用RGB的相关信息(边缘、前后景关系等)进行分割算法和抠图算法的计算,很难做到实时性。所以针对虚拟试鞋系统的特殊性(相机系统固定,拍摄区域为固定平面),本实施例在用户进入有效区域前,积累采集场景的深度信息,加权平均后定义为背景深度信息/>当用户进入有效区域后实时采集到的每一帧深度信息/>与之做差,小于一定阈值的点我们认为是背景点,赋零值;反之,则认为该像素点为前景点,赋当前帧的深度值,即:
其中th为深度传感器的系统误差。即在误差允许范围内只包含用户腿部和脚部深度信息。
顶视虚拟相机深度数据的恢复。根据公式(6),上每一个有效像素点pd都可以得到Cv相机坐标系下的三维点Pd,然后通过Cv的内参Kv以及相对于Cd的外参数Rv2d和tv2d反投影得到像素点pv,进而得到/>即
这个操作过程相当于将Cd拍摄到的深度信息转化为三维点云,然后利用Cv从上向下观测,得到的顶视信息。值得注意的是,为了排除腿部运动导致中脚部信息被腿部信息遮挡,所以公式(10)中Z小于一定阈值的将直接被舍弃。这个阈值可以定义为l-h,其中l为上文提到的Cv相对于地面的距离,它将是/>计算过程中Z的最大值,h为一般脚底到脚踝距离,设定为250mm。
此外,在和Iv均会随机出现一定的离散噪声,为了保证脚部数据的准确性,需要去除这些随机散点噪声。可以在各自计算过程的最后一步加入连通域检测机制,并选取最大的连通域作为脚部信息的待选区域,从而将剩余的区域作为噪声区域进行过滤。
至此,参见图3a至图3c,得到了脚部(近似脚底到脚踝部分)的多角度侧视信息以及顶视信息/>由于N个深度相机已经标定在了同一个世界坐标系下,所以每一台深度相机从每个视角计算的到的/>整合在一起,形成了一个相对完整的俯视足印/>
参见图3a至图3c,基于顶视图的脚部位置计算及方向预测。
首先,在顶视图Iv的脚部区域中,以连通域操作对潜在的双脚进行分割(所谓潜在是指用户在体验过程中可能只有一只脚在指定区域的地面上)。利用联通域的像素数量作为足印的面积,以提前设定好的足印面积阈值,对当前存在的连通区域进行筛选。从而得到足印1的掩码图F1和足印2的掩码图F2。
其次,参见图4,针对Fi,i∈[1,2],以足印各像素点在图像中的位置(u,v)计算一个合适的外切矩形来定位足印的位置。第一,将Fi分别向图像坐标系的x,y轴方向投影,取得其长度L和W。第二,通过图可以看出,如果L=W,表明足印的主方向恰好为45°或135°。当L≠W,我们可以通过L/W的关系可以计算出当前主方向(所谓主方向指的是脚尖和脚后跟的连线,鞋长方向)的大致角度。第三,根据当前角度和45°的差异△θ,进而计算旋转矩阵,使得坐标系进行旋转后,重新计算L和W。第四,迭代此操作直到计算的L=W,同时累计记录旋转关系∑△θ。最终可以得到一个外接足印的方形,其对角线即为足印的主方向或其垂直方向,然后将外接方形的坐标旋转-45°,即为原始图像坐标系下的方形位置。
方形对角线(即主方向)得到直线L1:y=kx+b,该直线为该脚的主方向。然后利用k和-1/k两个斜率遍历需按照脚部区域的边界,最终Iv中脚部区域由La:y=kx+bmin、Lb:y=kx+bmax、Lc:y=-1/kx+bmin和Ld:y=-1/kx+bmax四条直线围成的矩形区域所确定。
至此,如图4所示,确定了Cv视角下脚部的主方向(L:y=kx+b)以及位置信息(La,Lb,Lc,Ld四条直线合围的矩形区域)。
接着,基于融合相机视角的脚部方向综合预测。由于L所确定的主方向是双向的,所以还需要进一步确定脚尖方向(或者脚后跟方向),从而唯一确定用户脚部的前向(或者后向)。经过观察人类脚部构造可知,脚踝距离脚尖的距离一定远远大于脚踝距离脚后跟的距离。同时侧视图中,由于前视相机和场景的关系,可以得知脚踝一定高于脚底(即脚踝的像素纵向位置小于脚底的像素纵向位置)。由此两点,产生如下计算方案:
在侧视图中,统计脚部区域的像素纵向位置,得到最大值vmax(认为是脚底最低处)和最小值vmin(认为是脚踝最高处)
在侧视图中统计脚部区域的像素纵向位置v<vmin+r·(vmax-vmin)的像素点集合{p|vp<vmin+r·(vmax-vmin)}。其中r为脚踝在整体脚部信息中的比例关系,考虑到误差和数据有效性,一般取r∈[0.2,0.4]。
根据公式(6)和公式(10)将上述像素点集合重投影映射到顶视深度信息中,形成顶视深度数据的一个像素集合点,并计算这个集合的位置中心,记为pc。过点pc、斜率为-1/k的直线记为Le:y-yp=-1/k(x-xp)。直线L分别于Lc,Le,Ld交于一点,分别记为pllc、plle和plld,如图4所示。
如果||pllc-p11e||2>||plld-p11e||2,则认为pllc为脚尖位置,反之则认为plld为脚尖位置。
至此,确定了Cv视角下的脚部的主方向,包括脚尖位置pt和脚后跟位置ph。脚部关键数据生成(渲染数据和脚长数据)。Cv视角下的脚尖位置pt和脚后跟位置ph,根据公式(6),易得在Cv视角下的三维坐标点和/>另在/>的正上方设置一点/>即/>和/>其中thz是小于Cv视角下地面Z的任意数据。由于向量/>和向量/>相互垂直,故/>和/>三个点确定了用户脚部在三维空间中的位置、方向和大小。根据Cv的外参,该三个点可转化为世界坐标系下的三个点Pt、Ph和Pu。向量PhPt的方向确定了脚部的方向,模值确定了脚长。该脚长数据可作为用户选择鞋码的参考依据。判断左右脚以及关键点数据稳定性滤波。得到了F1和F2在世界坐标系下的两组关键/>和/>参见图5a、图5b和图6,易知/>三点均在以/>为原点,向量/>为方向的坐标轴的正方向上(即右脚永远在左脚的右侧)。所以通过此,可以确定F1和F2的左右脚关系。
另外,由于在实时运行过程中,深度传感器在每一帧得到的深度信息在细节上都或多或少的会有出入,这些细节在一定程度上会影响足部关键数据的准确度,进而从视觉上会影响脚部的位置、方向和大小。故在此引入卡尔曼滤波器,以足部的位置、方向和长宽作为观测值,对当前关键点数据进行预测改进。鞋类产品渲染结果与实时场景帧数据融合。
首先,对于鞋类产品的三维模型进行预处理,将其坐标系的原点移动至脚后跟中心,x轴方向指向脚尖方向,y轴方向垂直于脚底面向上。在渲染环境的世界坐标系下,将模型移动到Ph点后缩放至Pt与脚尖重合。
然后,在渲染环境的世界坐标系下,设置一个与Cc完全一致的相机(包括内外参数)。然后利用渲染算法进行渲染得到RGB渲染帧数据Is,该数据的有效区域即为鞋类产品在用户脚部方向和位置投影在Cc视角下的具体视觉效果;无效区域置零值。
最后将Cc视角下的渲染帧Is有效像素逐一融合至Cc视角下拍摄帧数据Ic,形成最终的融合数据,推至显示设备,供用户进行视觉效果体验。
本实施例完全模拟了用户面对试鞋镜真实试鞋的视觉效果体验。可以实时地进行用户脚部与鞋类产品的三维模型的融合,并可以在任意视角下进行展示,同时用户无需有任何额外的诸如脱鞋、等待重建等操作过程;
本实施例可以在用户感受虚拟试鞋的视觉效果体验过程中,精准计算用户的脚部尺寸,该部分数据可以作为用户选择鞋类产品鞋码的参考依据;
本实施例利用单视角的RGBD相机,相对于其他产品,成本很低,同时消除了复杂的用户操作。
上面结合附图及实施例描述了本发明的实施方式,实施例给出的并不构成对本发明的限制,本领域内熟练的技术人员可依据需要做出调整,在所附权利要求的范围内做出各种变形或修改均在保护范围内。
Claims (9)
1.一种基于多视角深度传感器的虚拟试鞋方法,其特征在于包括如下步骤:
步骤一,设置工作区域,将若干深度传感器的视角覆盖工作区域,计算世界坐标系与相机坐标系,然后计算基于深度信息的底面信息拟合、顶视虚拟相机;
步骤二,用户站在工作区域内,深度传感器采集其数据,然后确定脚部的位置、方向和大小;
在用户进入有效区域前,积累采集场景的深度信息,加权平均后定义为背景深度信息当用户进入有效区域后实时采集到的每一帧深度信息/>与之做差,小于一定阈值的点为是背景点,赋零值;反之,则认为该像素点为前景点,赋当前帧的深度值;
将侧视深度传感器Cd拍摄到的深度信息转化为三维点云,然后利用虚拟深度传感器Cv从上向下观测得到顶视信息;上每一个有效像素点pd都可以得到Cv相机坐标系下的三维点Pd,然后通过Cv的内参Kv以及相对于Cd的外参数Rv2d和tv2d反投影得到像素点pv,进而得到/>即:/>在各自计算过程的最后一步加入连通域检测机制,选取最大的连通域作为脚部信息的待选区域,从而将剩余的区域作为噪声区域进行过滤;
在顶视图Iv的脚部区域中,以连通域操作对潜在的双脚进行分割,对当前存在的连通区域进行筛选,得到足印1的掩码图F1和足印2的掩码图F2;针对Fi,i∈[1,2],以足印各像素点在图像中的位置(u,v)计算一个合适的外切矩形来定位足印的位置;
步骤三,将鞋的三维模型投影至当前相机视角下,并与实时场景的RGB数据进行融合;
对于鞋三维模型进行预处理,将其坐标系的原点移动至脚后跟中心,x轴方向指向脚尖方向,y轴方向垂直于脚底面向上;在渲染环境的世界坐标系下,将模型移动到Ph点后缩放至Pt与脚尖重合;然后,在渲染环境的世界坐标系下,设置一个与Cc完全一致的相机;利用渲染算法进行渲染得到RGB渲染帧数据Is,该数据的有效区域即为鞋类产品在用户脚部方向和位置投影在Cc视角下的具体视觉效果;无效区域置零值;最后,将Cc视角下的渲染帧Is有效像素逐一融合至Cc视角下拍摄帧数据Ic,形成最终的融合数据,推至显示设备,供用户进行视觉效果体验。
2.根据权利要求1所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤一中,确定深度传感器与世界坐标系的关系,设定第i台深度传感器采集的深度图像信息为RGB传感器采集的彩色图像信息为Ic,深度图像信息上的任意像素点为p(u,v),其值为该点的深度信息记为d,该像素点对应的世界坐标系下的三维点Pw(x,y,z),存在如下关系:
3.根据权利要求1所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤一中,选取若干地面的像素点及其坐标,利用矩阵的SVD分解算法拟合得到参数A,B,C,D,从而定位了在以深度传感器相机坐标系为世界坐标系的地面平面,p(u,v)对应的三维点Pw(x,y,z)均处于同一平面S:f(A,B,C,D)=0下,满足:S:A*(P)w(x)+B*(P)w(y)+C*(P)w(z)+D=0(2)。
4.根据权利要求3所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤一中,在世界坐标系中设虚拟深度传感器Cv,设定它内外参数Kv,Rv和tv,根据Cd和Cv的坐标关系,通过将Cd获取的深度信息Id映射到Cv得到新视角下的场景点之间的深度关系图像数据Iv。
5.根据权利要求4所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:Cv相对于世界坐标系的外参变换H4×4关系满足:
根据H可以获得外参数Rv和tv。
6.根据权利要求1所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤二中,深度赋值的公式为:
其中th为深度传感器的系统误差。
7.根据权利要求1所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:外切矩形的计算为:
第一,将Fi分别向图像坐标系的x,y轴方向投影,取得其长度L和W;
第二,如果L=W,表明足印的主方向为45°或135°;当L≠W,通过L/W的关系可以计算出当前主方向的角度;
第三,根据角度和45°的差异Δθ,进而计算旋转矩阵,使得坐标系进行旋转后,重新计算L和W;
第四,迭代此操作直到计算的L=W,同时累计记录旋转关系∑Δθ;最终得到一个外接足印的方形;其方形对角线得到直线L1:y=k x+b,该直线为脚的主方向。
8.根据权利要求2所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤二中,确定脚尖方向:
第一,在侧视图中统计脚部区域的像素纵向位置,得到最大值vmax;和最小值vmin;
第二,在侧视图中统计脚部区域的像素纵向位置v<vmin+r·(vmax-vmin)的像素点集合{p|vp<vmin+r·(vmax-vmin)};其中r为脚踝在整体脚部信息中的比例关系;
第三,根据公式(1)和公式(5)将上述像素点集合重投影映射到顶视深度信息中,形成顶视深度数据的一个像素集合点,并计算这个集合的位置中心,记为pc;过点pc、斜率为-1/k的直线记为Le:y-yp=-1/k(x-xp),而直线L分别于Lc,Le,Ld交于一点,分别记为pllc、plle和plld;
第四,如果||pllc-p11e||2>||plld-p11e||2,则认为pllc为脚尖位置,反之则认为plld为脚尖位置。
9.根据权利要求8所述的基于多视角深度传感器的虚拟试鞋方法,其特征在于:步骤二中,确定脚部长度:
Cv视角下的脚尖位置pt和脚后跟位置ph,根据公式(1)得到在Cv视角下的三维坐标点和/>
在的正上方设置一点/>即/>和/>其中thz是小于Cv视角下地面Z的任意数据;
和/>确定用户脚部在三维空间中的位置、方向和大小;根据Cv的外参,三个点转化为世界坐标系下的三个点Pt、Ph和Pu;由向量PhPt的方向确定脚部的方向,模值确定脚长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910382147.4A CN110766738B (zh) | 2019-05-08 | 2019-05-08 | 基于多视角深度传感器的虚拟试鞋方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910382147.4A CN110766738B (zh) | 2019-05-08 | 2019-05-08 | 基于多视角深度传感器的虚拟试鞋方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110766738A CN110766738A (zh) | 2020-02-07 |
CN110766738B true CN110766738B (zh) | 2024-03-26 |
Family
ID=69328755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910382147.4A Active CN110766738B (zh) | 2019-05-08 | 2019-05-08 | 基于多视角深度传感器的虚拟试鞋方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110766738B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111507806B (zh) * | 2020-04-23 | 2023-08-29 | 北京百度网讯科技有限公司 | 虚拟试鞋方法、装置、设备以及存储介质 |
CN111986296B (zh) * | 2020-08-20 | 2024-05-03 | 叠境数字科技(上海)有限公司 | 一种用于子弹时间的cg动画合成方法 |
CN112764546B (zh) * | 2021-01-29 | 2022-08-09 | 重庆子元科技有限公司 | 一种虚拟人物位移控制方法、装置及终端设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002199905A (ja) * | 2000-12-28 | 2002-07-16 | Humex:Kk | 顧客足型に適合する靴の製造販売システム |
WO2015096806A1 (zh) * | 2013-12-29 | 2015-07-02 | 刘进 | 智能机姿态测定、全景影像生成及目标识别方法 |
CN105788002A (zh) * | 2016-01-06 | 2016-07-20 | 湖南拓视觉信息技术有限公司 | 三维虚拟试鞋方法和系统 |
CN107292965A (zh) * | 2017-08-03 | 2017-10-24 | 北京航空航天大学青岛研究院 | 一种基于深度图像数据流的虚实遮挡处理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2383976B1 (es) * | 2010-12-03 | 2013-05-08 | Alu Group, S.L. | Método para el probado virtual de calzado. |
-
2019
- 2019-05-08 CN CN201910382147.4A patent/CN110766738B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002199905A (ja) * | 2000-12-28 | 2002-07-16 | Humex:Kk | 顧客足型に適合する靴の製造販売システム |
WO2015096806A1 (zh) * | 2013-12-29 | 2015-07-02 | 刘进 | 智能机姿态测定、全景影像生成及目标识别方法 |
CN105788002A (zh) * | 2016-01-06 | 2016-07-20 | 湖南拓视觉信息技术有限公司 | 三维虚拟试鞋方法和系统 |
CN107292965A (zh) * | 2017-08-03 | 2017-10-24 | 北京航空航天大学青岛研究院 | 一种基于深度图像数据流的虚实遮挡处理方法 |
Non-Patent Citations (1)
Title |
---|
郭子兴 ; 张晓林 ; 高岩 ; .基于双目视觉的增强现实系统设计与实现.电子设计工程.2018,(23),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN110766738A (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110751716B (zh) | 基于单视角rgbd传感器的虚拟试鞋方法 | |
CN107767442B (zh) | 一种基于Kinect和双目视觉的脚型三维重建与测量方法 | |
US10013803B2 (en) | System and method of 3D modeling and virtual fitting of 3D objects | |
CN110766738B (zh) | 基于多视角深度传感器的虚拟试鞋方法 | |
Helmli et al. | Adaptive shape from focus with an error estimation in light microscopy | |
WO2018019070A1 (en) | Method and system for virtual shoes fitting | |
Hilton et al. | Whole-body modelling of people from multiview images to populate virtual worlds | |
US20170272728A1 (en) | System and method of three-dimensional scanning for customizing footwear | |
TWI509565B (zh) | 基於樣式匹配及立體資訊的深度製圖 | |
CN108053476B (zh) | 一种基于分段三维重建的人体参数测量系统及方法 | |
US7742633B2 (en) | Apparatus and method for rapidly measuring 3-dimensional foot sizes from multi-images | |
US20160286906A1 (en) | Method and system for measuring 3-dimensional objects | |
US11176738B2 (en) | Method for calculating the comfort level of footwear | |
US20120095589A1 (en) | System and method for 3d shape measurements and for virtual fitting room internet service | |
CN107408315A (zh) | 用于实时、物理准确且逼真的眼镜试戴的流程和方法 | |
KR20170073623A (ko) | 고속 3d 모델 피팅 및 인체 측정법 | |
TW201344616A (zh) | 衣服影像處理系統、衣服影像處理裝置、衣服影像處理方法、電腦程式產品、及資訊記憶媒體 | |
Novak et al. | Three-dimensional foot scanning system with a rotational laser-based measuring head | |
US20220398781A1 (en) | System and method for digital measurements of subjects | |
Clarkson et al. | Calculating body segment inertia parameters from a single rapid scan using the microsoft kinect | |
Kobayashi et al. | A simple 3D scanning system of the human foot using a smartphone with depth camera | |
Hong et al. | Robust 3D reconstruction and parameter measurement of the foot using multiple depth cameras | |
Senanayake et al. | Automated human body measurement extraction: single digital camera (webcam) method–phase 1 | |
Yüksel et al. | Analyses of body measurement with depth image data using motion capture sensor | |
Wang et al. | Im2fit: Fast 3d model fitting and anthropometrics using single consumer depth camera and synthetic data |
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 |