CN111461814B - 虚拟眼镜的试戴方法、终端设备及存储介质 - Google Patents
虚拟眼镜的试戴方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111461814B CN111461814B CN202010164516.5A CN202010164516A CN111461814B CN 111461814 B CN111461814 B CN 111461814B CN 202010164516 A CN202010164516 A CN 202010164516A CN 111461814 B CN111461814 B CN 111461814B
- Authority
- CN
- China
- Prior art keywords
- glasses
- model
- characteristic points
- characteristic
- point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 239000011521 glass Substances 0.000 claims abstract description 182
- 210000003128 head Anatomy 0.000 claims abstract description 83
- 239000011159 matrix material Substances 0.000 claims abstract description 83
- 210000001747 pupil Anatomy 0.000 claims abstract description 40
- 230000036544 posture Effects 0.000 claims abstract description 9
- 238000004590 computer program Methods 0.000 claims description 19
- 230000009466 transformation Effects 0.000 claims description 19
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 15
- 210000005069 ears Anatomy 0.000 claims description 9
- 238000005452 bending Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 13
- 230000008569 process Effects 0.000 abstract description 8
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000004709 eyebrow Anatomy 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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
- G02—OPTICS
- G02C—SPECTACLES; SUNGLASSES OR GOGGLES INSOFAR AS THEY HAVE THE SAME FEATURES AS SPECTACLES; CONTACT LENSES
- G02C13/00—Assembling; Repairing; Cleaning
- G02C13/003—Measuring during assembly or fitting of spectacles
-
- 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/006—Mixed reality
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Accounting & Taxation (AREA)
- Computer Graphics (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Architecture (AREA)
- Health & Medical Sciences (AREA)
- Ophthalmology & Optometry (AREA)
- Optics & Photonics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请适用于计算机技术领域,提供了虚拟眼镜的试戴方法、终端设备及存储介质,方法包括:获取虚拟眼镜的眼镜模型和目标用户的三维人头模型;将眼镜模型移动至三维人头模型的预设位置;根据移动至预设位置的眼镜模型的第一特征点与三维人头模型的第二特征点,计算移动至预设位置的眼镜模型的镜腿、镜托和镜框的旋转矩阵,第一特征点包括移动至预设位置的眼镜模型的镜腿特征点、镜托特征点和镜片特征点,第二特征点包括耳朵特征点、鼻子特征点和瞳孔特征点;根据旋转矩阵,调整移动至预设位置的眼镜模型的镜腿、镜托和镜框的姿态。实现模拟真人佩戴眼镜的完整过程,提高佩戴效果。
Description
技术领域
本申请属于计算机技术领域,尤其涉及虚拟眼镜的试戴方法、终端设备及存储介质。
背景技术
现在的人们都热衷于网络购物,其中就包括眼镜。为了满足用户从网络上购买到符合心意的眼镜,出现了在线眼镜试戴功能。目前的在线眼镜试戴功能包括基于人脸脸型的试戴功能和基于AR(Augmented Reality)技术的试戴功能。
其中,基于人脸脸型的试戴功能只能针对单张人脸图片,若用户的人脸图片是侧脸、昂头或其他姿态时,将会出现严重的试戴偏差,试戴效果非常差;基于AR技术的试戴功能将眼镜显示在AR人头上,让用户亲身体验试戴效果,但是AR试戴功能只能显示半截眼镜模型,并且眼镜会随用户头部移动而发生抖动,无法实现精准试戴,导致试戴效果不好。
发明内容
本申请实施例提供了虚拟眼镜的试戴方法、终端设备及存储介质,可以解决眼镜试戴效果差的问题。
第一方面,本申请实施例提供了一种虚拟眼镜的试戴方法,包括:
获取虚拟眼镜的眼镜模型和目标用户的三维人头模型;
将眼镜模型移动至三维人头模型的预设位置;
根据移动至预设位置的眼镜模型的第一特征点与三维人头模型的第二特征点,计算移动至预设位置的眼镜模型的镜腿、镜托和镜框的旋转矩阵,第一特征点包括移动至预设位置的眼镜模型的镜腿特征点、镜托特征点和镜片特征点,第二特征点包括耳朵特征点、鼻子特征点和瞳孔特征点;
根据旋转矩阵,调整移动至预设位置的眼镜模型的镜腿、镜托和镜框的姿态。
本申请通过将眼镜模型移动至三维人头模型的预设位置,根据眼镜模型的第一特征点与三维人头模型的第二特征点,计算眼镜模型的镜腿、镜托和镜框的旋转矩阵,根据旋转矩阵,调整眼镜模型的镜腿、镜托和镜框的姿态,模拟真人佩戴眼镜的完整过程。采用三维人头模型精准的表征用户的人脸特征,完整的显示眼镜模型的各个细节,实现精准佩戴眼镜,提高佩戴效果。
第二方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的虚拟眼镜的试戴方法。
第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的虚拟眼镜的试戴方法。
第四方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的虚拟眼镜的试戴方法。
可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的眼镜模型的示意图;
图2是本申请一实施例提供的三维人头模型的示意图;
图3是本申请提供的真人佩戴眼镜的步骤示意图;
图4是本申请一实施例提供的虚拟眼镜的试戴方法的流程示意图;
图5是本申请另一实施例提供的虚拟眼镜的试戴方法的流程示意图;
图6是本申请一实施例提供的应用场景示意图;
图7是本申请另一实施例提供的应用场景示意图;
图8是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
如背景技术相关记载,基于人脸脸型的试戴功能只能针对单张人脸图片,若用户的人脸图片是侧脸、昂头或其他姿态时,将会出现严重的试戴偏差,试戴效果非常差;而基于AR技术的试戴功能通过将眼镜显示在AR人头上,让用户亲身体验试戴效果,但是AR试戴功能只能显示半截眼镜模型,并且眼镜会随用户头部移动而发生抖动,无法实现精准试戴,导致试戴效果不好。
因此本申请实施例提供一种虚拟眼镜的试戴方法,模拟真人佩戴眼镜的完整过程,实现精准佩戴眼镜,提高眼镜的佩戴效果。
其中,本申请实施例涉及眼镜模型或三维人头模型通过线性变换从一个空间位置变换到另一个空间位置的过程。上述线性变换包括但不限于旋转、缩放、平移和错切等操作。例如,变换前的模型A的矩阵为仿射变换矩阵为/>变换后的模型B的矩阵为/>则/>若模型A以(x,y)为轴心顺时针旋转θ度变换为模型B,则仿射变换矩阵对应的变量为:
其中,a、b、c、d为旋转变量,c、f为平移变量。应理解,上述模型的矩阵仅作为示例,其还可以是四元数矩阵等。
图1示出了本申请实施例提供的一种眼镜模型的示意图,该眼镜模型包括镜腿11、镜托12、镜片13和镜框14。其中镜腿11包括镜腿特征点111,该镜腿特征点111为位于镜腿的弯曲部位的点云,包括左镜腿特征点和右镜腿特征点;镜托12包括镜托特征点,该镜托特征点包括左镜托特征点和右镜托特征点;镜片13包括镜片特征点,该镜片特征点可以为位于镜片中心的点云;镜框14包括镜框特征点。应理解,图1示出的眼镜模型不作为对眼镜的限制,其还可以包括更多的部件。需要说明的是,本申请实施例中所述的眼镜模型和三维人头模型的特征点均为表示在眼镜或人头的各个部位在某一空间坐标中的位置。
图2示出了本申请实施例提供的一种三维人头模型的示意图,该三维人头模型至少包括人头轮廓21、眼睛22、鼻子23和耳朵24。其中眼睛22包括瞳孔特征点221,该瞳孔特征点221包括左眼瞳孔特征点和右眼瞳孔特征点;鼻子23包括鼻子特征点231,该鼻子特征点231可以为鼻梁的特征点云;耳朵24包括耳朵特征点,241该耳朵特征点241为位于耳朵的上沿部位与头部的连接处的点云,其包括左耳特征点和右耳特征点。应理解,图2示出的三维人头模型不作为对人头模型的限制,其还可以包括更多的部位,如眉毛、嘴巴、人中穴等。
图3示出了真人佩戴眼镜的流程示意图。如图3所示,真人佩戴眼镜的步骤包括:S301,将眼镜打开,即旋转左镜腿与右镜腿,使得左右两个镜腿分离;S302,将打开后的眼镜戴到头上,即将镜腿挂在耳朵与头部的交接处,将镜托置于鼻子上;S303,调整眼镜的姿态,即将镜腿和镜托向上、下、前、后、左、右移动,以使镜片与瞳孔的距离合理。
图4示出了本申请提供的虚拟眼镜的试戴方法的示意性流程图,作为示例而非限定,该方法可以应用于上述终端设备中,该终端设备包括但不限于手机、平板电脑、可穿戴设备、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本或个人数字助理(personal digital assistant,PDA)等终端设备,本申请实施例对终端设备的具体类型不作任何限制。。
S401,获取虚拟眼镜的眼镜模型和目标用户的三维人头模型;
上述眼镜模型为预先建立的眼镜模型,其可以通过作图软件构建,也可以通过扫描装置扫描眼镜实体的特征点后,根据特征点进行三维建模得到。上述三维人头模型为需要佩戴眼镜的用户的头部模型,其可以通过采集用户的三维人头图像后,提取三维人头图像的深度信息和RGB信息进行三维建模得到。
本申请实施例的三维人头模型为静态的,不会出现因用户头部抖动而使眼镜晃动,以及三维人头模型可以完整的表征用户的头部特征,可以使用户可以从任何角度查看佩戴效果的示意图。
S402,将眼镜模型移动至三维人头模型的预设位置;
如图6所示,上述预设位置可以为三维人头模型的眼镜正前方预设距离的位置。
可选地,根据眼镜模型的各个特征点与三维人头模型的各个特征点的位置关系,计算眼镜模型的一个或多个局部特征点(如鼻托特征点)与对应的三维人头模型的一个或多个局部特征点(如鼻子特征点)重合时的仿射变换矩阵,根据仿射变换矩阵移动眼镜模型至三维人头模型的预设位置。
可选地,以眼镜模型为整体,计算眼镜模型与三维人头模型的朝向一致(如两个镜片中心的连线与两个瞳孔中心的连线平行)以及眼镜模型在三维人头模型的眼睛的正前方预设距离时的仿射变换矩阵,根据仿射变换矩阵移动眼镜模型至三维人头模型的预设位置。
需要说明的是,眼镜模型在移动至预设位置时,可以不需要如图3描述的先打开眼镜再移动眼镜的步骤一致。
S403,根据移动至预设位置的眼镜模型的第一特征点与三维人头模型的第二特征点,计算移动至预设位置的眼镜模型的镜腿、镜托和镜框的旋转矩阵,第一特征点包括移动至预设位置的眼镜模型的镜腿特征点、镜托特征点和镜片特征点,第二特征点包括耳朵特征点、鼻子特征点和瞳孔特征点;
上述旋转矩阵包括镜腿特征点到耳朵特征点的旋转矩阵、镜托特征点到鼻子特征点的旋转矩阵以及镜片特征点到瞳孔特征点的旋转矩阵。可选地,以各个预设轴为旋转轴,分别旋转镜腿、镜托和镜框,记录旋转过程中的旋转角度和旋转方向,将旋转角度和旋转方向转换为旋转四元数,将旋转四元数转换旋转矩阵。
S404,根据旋转矩阵,调整移动至预设位置的眼镜模型的镜腿、镜托和镜框的姿态。
如图7所示,根据旋转矩阵调整眼镜模型各个局部的姿态,从而实现精准佩戴眼镜,以及使用户可从任何角度查看佩戴效果,提高眼镜佩戴效果。
图5示出了本申请实施例提供的另一种虚拟眼睛的试戴方法的流程示意图。应理解,与图4实施例相同的步骤,此处不再赘述。
参照图5,在一种可能实现的方式中,上述步骤S402具体包括S501和S502。
S501,根据眼镜模型的第三特征点和第二特征点,计算眼镜模型与三维人头模型的预设位置之间的仿射变换矩阵,其中,第三特征点包括眼镜模型的镜腿特征点、镜托特征点和镜片特征点;
上述第三特征点为眼镜模型在移动至预设位置之前的特征点。对眼镜模型和三维人头模型的局部特征点进行变换,可以初步调整眼镜模型的姿态。
可选地,S501包括S5011至S5014:
S5011,构建眼镜模型的第一直角坐标系,对第一直角坐标系的坐标轴进行归一化,得到第一直角坐标系的第一矩阵;
上述第一直角坐标系属于笛卡尔直角坐标系。选取眼镜模型的特征点来组建眼镜模型自身的局部笛卡尔直角坐标系(其中x轴可以为两个镜片中心的连线,z轴垂直于镜片平面,y轴垂直于xz平面),不考虑坐标系原点的坐标位置,只考虑坐标系朝向属性(即根据眼镜的朝向确定坐标轴的正负方向),对三个坐标轴进行归一化,模长为单位1,则可以定义为第一直角坐标系为(gx,gy,gz),表示为4*4的第一矩阵Mg为
S5012,构建三维人头模型的第二直角坐标系,对第二直角坐标系的坐标轴进行归一化,得到第二直角坐标系的第二矩阵;
上述第二直角坐标系属于笛卡尔直角坐标系。选取三维人头模型的特征点来组建人头模型自身的局部笛卡尔直角坐标系(其中x轴可以为两个瞳孔中心的连线,y轴为两个瞳孔中心的连线中点与人中穴的连线,z轴垂直xy平面),不考虑坐标系原点的坐标位置,只考虑坐标系朝向属性(即根据人脸朝向确定坐标轴的正负方向),对三个坐标轴进行归一化,模长为单位1,则可以定义为第二直角坐标系(hx,hy,hz),表示成4*4的第二矩阵Mh为
S5013,根据第三特征点和第二特征点,计算预设位置的第三矩阵;
经过S5011和S5012对眼镜模型和三维人头模型的特征点经过朝向矫正后,以眼镜模型的局部特征点为基准,计算三维人头模型的预设位置对应的第三矩阵。例如,预设位置的x轴位置tx=xa-xb,其中xa为眼镜的两个鼻托之间的中心的x值,xb为人头的两个瞳孔之间的中心点的x值;预设位置的y轴ty=ya-yb,其中ya为右(或左)镜腿特征点的y值,yb为右(或左)耳朵带眼镜的点的y值;预设位置的z轴位置tz=za-zb,其中za-zb为镜框到瞳孔的距离为预设值(如12毫米),因此,4*4的第四矩阵Mt为
S5014,根据第一矩阵、第二矩阵和第三矩阵,计算眼镜模型与三维人头模型的预设位置之间的仿射变换矩阵。
上述仿射变换矩阵M=Mh.inverse()×Mt×Mg,其中Mh.inverse表示第二矩阵Mh的逆矩阵。
S502,根据仿射变换矩阵,将眼镜模型移动至三维人头模型的预设位置。
根据仿射变换矩阵,调整眼镜模型朝向,使得眼镜模型与三维人头模型的朝向一致,以及移动眼睛模型,以初步调整眼镜模型的局部与三维人头的局部之间的位置。
参照图5,在一种可能实现的方式中,上述步骤S403具体包括S503至S506。
S503,根据镜腿特征点与耳朵特征点,计算镜腿特征点与耳朵特征点在同一个竖直面时镜腿的第一旋转矩阵;
上述竖直面为镜腿特征点所在的yz平面,如左(或右)镜腿特征点与左(或右)镜腿的旋转轴的上下两个点构成的竖直面。当左镜腿特征点与左耳朵特征点在同一个竖直面,右镜腿特征点与右耳朵特征点在同一个竖直面时,则说明眼镜处于最佳打开状态,可以刚刚好挂在耳朵上。
可选地,S503包括:将所述镜腿的弯曲部位的镜腿特征点与所述镜腿的旋转轴的上下两个点构成竖直面;将所述镜腿绕所述旋转轴旋转,计算所述耳朵特征点在所述竖直面时所述镜腿的第一旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点。
例如,以左镜腿的弯曲上沿特征点连接左镜腿旋转轴的上下两个点构成一个三角平面p。然后绕左镜腿旋转轴旋转左镜腿,使得左耳朵戴眼镜的点(即左耳朵与头部的连接处)落在这个p平面内,计算出旋转角度数和旋转方向,将旋转角度和旋转方向转换为旋转四元素,再将旋转四元数转换成第一旋转矩阵。
S504,根据镜腿特征点与耳朵特征点,计算镜腿特征点与耳朵特征点在同一个水平面时镜腿的第二旋转矩阵;
上述水平面为镜腿特征点所在xz平面,如左(或右)镜腿特征点与中点沿预设方向上的两点构成水平面,该中点可以为左(或右)镜腿的旋转轴的上下两个点间的中点,预设方向为三维人头的左瞳孔与右瞳孔的连线方向。当左镜腿特征点与左耳朵特征点在同一个水平面或右镜腿特征点与右耳朵特征点在同一个平面时,则说明镜腿处于最佳高度。
可选地,S504包括:将所述镜腿的弯曲部位的镜腿特征点与中点沿预设方向上的两点构成水平面,所述中点为所述镜腿的旋转轴的上下两个点间的中点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向;将所述镜腿绕所述水平方向上的两点的连线旋转,计算所述耳朵特征点在所述水平面时所述镜腿的第二旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点。
例如,以左镜腿特征点t0连接左镜腿旋转轴的上下两个点的中点沿x轴方向平行隔一定距离选择的两点t1,t2,t0、t1和t2构成一个三角平面q。然后以t1和t2两点连线为轴旋转左镜腿,使得左耳朵戴眼镜的点落在这个q平面内,计算出旋转角度数和旋转方向,将旋转角度和旋转方向转换为旋转四元素,再将旋转四元数转换成第二旋转矩阵。
S505,根据镜托特征点与鼻子特征点,计算镜托特征点与鼻子特征点重合时镜托的第三旋转矩阵;
上述重合是指两个特征点的边缘重合,也可以理解为两个特征点接触。当左(或右)镜托特征点与鼻子特征点时,说明镜托刚好与鼻子接触,两者处于合适位置。
可选地,S505包括:将所述镜托特征点构成预设包围盒,所述镜托特征点为左镜托或右镜托的特征点;将所述镜托绕所述耳朵特征点的预设方向旋转,计算所述鼻子特征点与所述预设包围盒的外边缘重合时所述镜托的第三旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向。
例如,离线计算出右鼻托模型的obb包围盒(OrientedboundingBox,有向包围盒),以右耳朵戴眼镜的点沿x轴方向为旋转轴,旋转整个眼镜,直到obb包围盒碰到鼻子曲面为止(鼻子曲面由鼻子附近特征点构成),计算出旋转角度数和旋转方向,将旋转角度和旋转方向转换为旋转四元素,再将旋转四元数转换成第三旋转矩阵。
S506,根据镜框特征点与瞳孔特征点,计算镜片特征点与瞳孔特征点的距离为预设距离范围内时镜框的第四旋转矩阵。
上述预设距离范围为镜片中心与瞳孔中心之间的距离0-6毫米。优选地,瞳孔中心的高度在镜片中心之上3毫米。当镜片特征点与瞳孔特征点的距离为预设距离范围内时,说明此时眼镜能够使用户处于舒适的状态。
可选地,S506包括:将所述镜框绕所述耳朵特征点的预设方向旋转,计算所述镜片特征点与所述瞳孔特征点的距离为预设距离范围内时所述镜框的第四旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向。
例如,当发现镜框上沿中心点处于上眼皮中间特征点的下方或者两者上下位置靠得太近,则以右(或左)耳朵戴眼镜的点沿x轴方向为旋转轴,旋转整个眼镜,使得瞳孔中心位于镜框中心往上3毫米处,计算出旋转角度数和旋转方向,将旋转角度和旋转方向转换为旋转四元素,再将旋转四元数转换成第四旋转矩阵。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图8为本申请一实施例提供的终端设备的结构示意图。如图8所示,该实施例的终端设备8包括:至少一个处理器80(图8中仅示出一个)处理器、存储器81以及存储在所述存储器81中并可在所述至少一个处理器80上运行的计算机程序82,所述处理器80执行所述计算机程序82时实现上述任意方法实施例中的步骤。
所述终端设备8可以是手机、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括但不仅限于处理器80、存储器81。本领域技术人员可以理解,图8仅仅是终端设备8的举例,并不构成对终端设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),该处理器80还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81在一些实施例中可以是所述终端设备8的内部存储单元,例如终端设备8的硬盘或内存。所述存储器81在另一些实施例中也可以是所述终端设备8的外部存储设备,例如所述终端设备8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,所述存储器81还可以既包括所述终端设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种虚拟眼镜的试戴方法,其特征在于,包括:
获取虚拟眼镜的眼镜模型和目标用户的三维人头模型;
将所述眼镜模型移动至所述三维人头模型的预设位置,其中,所述预设位置为所述三维人头模型的眼睛正前方预设距离的位置,所述预设位置为所述眼镜模型根据所述眼镜模型的各个特征点与所述三维人头模型的各个特征点的位置关系计算出的所述眼镜模型的一个或多个局部特征点与对应的所述三维人头模型的一个或多个局部特征点重合时的仿射变换矩阵进行移动后对应的位置;
根据移动至所述预设位置的眼镜模型的第一特征点与所述三维人头模型的第二特征点,计算移动至所述预设位置的眼镜模型的镜腿、镜托和镜框的旋转矩阵,所述第一特征点包括移动至所述预设位置的眼镜模型的镜腿特征点、镜托特征点和镜片特征点,所述第二特征点包括耳朵特征点、鼻子特征点和瞳孔特征点,所述旋转矩阵包括镜腿特征点到耳朵特征点的旋转矩阵、镜托特征点到鼻子特征点的旋转矩阵以及镜片特征点到瞳孔特征点的旋转矩阵;
根据所述旋转矩阵,调整移动至所述预设位置的眼镜模型的镜腿、镜托和镜框的姿态。
2.如权利要求1所述的虚拟眼镜的试戴方法,其特征在于,所述将所述眼镜模型移动至所述三维人头模型的预设位置,包括:
根据所述眼镜模型的第三特征点和所述第二特征点,计算所述眼镜模型与所述三维人头模型的预设位置之间的仿射变换矩阵,其中,所述第三特征点包括所述眼镜模型的镜腿特征点、镜托特征点和镜片特征点;
根据所述仿射变换矩阵,将所述眼镜模型移动至所述三维人头模型的预设位置。
3.如权利要求2所述的虚拟眼镜的试戴方法,其特征在于,所述根据所述眼镜模型的第三特征点和所述第二特征点,计算所述眼镜模型与所述三维人头模型的预设位置之间的仿射变换矩阵,包括:
构建所述眼镜模型的第一直角坐标系,对所述第一直角坐标系的坐标轴进行归一化,得到所述第一直角坐标系的第一矩阵;
构建所述三维人头模型的第二直角坐标系,对所述第二直角坐标系的坐标轴进行归一化,得到所述第二直角坐标系的第二矩阵;
根据所述第三特征点和所述第二特征点,计算所述预设位置的第三矩阵;
根据所述第一矩阵、所述第二矩阵和所述第三矩阵,计算所述眼镜模型与所述三维人头模型的预设位置之间的仿射变换矩阵。
4.如权利要求1-3任一项所述的虚拟眼镜的试戴方法,其特征在于,所述根据移动至所述预设位置的眼镜模型的第一特征点与所述三维人头模型的第二特征点,计算移动至所述预设位置的眼镜模型的镜腿、镜托和镜框的旋转矩阵,包括:
根据所述镜腿特征点与所述耳朵特征点,计算所述镜腿特征点与耳朵特征点在同一个竖直面时所述镜腿的第一旋转矩阵;
根据所述镜腿特征点与所述耳朵特征点,计算所述镜腿特征点与耳朵特征点在同一个水平面时所述镜腿的第二旋转矩阵;
根据所述镜托特征点与所述鼻子特征点,计算所述镜托特征点与所述鼻子特征点重合时所述镜托的第三旋转矩阵;
根据所述镜片特征点与所述瞳孔特征点,计算所述镜片特征点与所述瞳孔特征点的距离为预设距离范围内时所述镜框的第四旋转矩阵。
5.如权利要求4所述的虚拟眼镜的试戴方法,其特征在于,所述根据所述镜腿特征点与所述耳朵特征点,计算所述镜腿特征点与耳朵特征点在同一个竖直面时所述镜腿的第一旋转矩阵,包括:
将所述镜腿的弯曲部位的镜腿特征点与所述镜腿的旋转轴的上下两个点构成竖直面;
将所述镜腿绕所述旋转轴旋转,计算所述耳朵特征点在所述竖直面时所述镜腿的第一旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点。
6.如权利要求4所述的虚拟眼镜的试戴方法,其特征在于,所述根据所述镜腿特征点与所述耳朵特征点,计算所述镜腿特征点与耳朵特征点在同一个水平面时所述镜腿的第二旋转矩阵,包括:
将所述镜腿的弯曲部位的镜腿特征点与中点沿预设方向上的两点构成水平面,所述中点为所述镜腿的旋转轴的上下两个点间的中点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向;
将所述镜腿绕水平方向上的两点的连线旋转,计算所述耳朵特征点在所述水平面时所述镜腿的第二旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点。
7.如权利要求4所述的虚拟眼镜的试戴方法,其特征在于,所述根据所述镜托特征点与所述鼻子特征点,计算所述镜托特征点与所述鼻子特征点重合时所述镜托的第三旋转矩阵,包括:
将所述镜托特征点构成预设包围盒,所述镜托特征点为左镜托或右镜托的特征点;
将所述镜托绕所述耳朵特征点的预设方向旋转,计算所述鼻子特征点与所述预设包围盒的外边缘重合时所述镜托的第三旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向。
8.如权利要求4所述的虚拟眼镜的试戴方法,其特征在于,所述根据所述镜片特征点与所述瞳孔特征点,计算所述镜片特征点与所述瞳孔特征点的距离为预设距离范围内时所述镜框的第四旋转矩阵,包括:
将所述镜框绕所述耳朵特征点的预设方向旋转,计算所述镜片特征点与所述瞳孔特征点的距离为预设距离范围内时所述镜框的第四旋转矩阵,所述耳朵特征点为耳朵的上沿部位与头部的连接处的特征点,所述预设方向为所述三维人头的左瞳孔与右瞳孔的连线方向。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010164516.5A CN111461814B (zh) | 2020-03-11 | 2020-03-11 | 虚拟眼镜的试戴方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010164516.5A CN111461814B (zh) | 2020-03-11 | 2020-03-11 | 虚拟眼镜的试戴方法、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111461814A CN111461814A (zh) | 2020-07-28 |
CN111461814B true CN111461814B (zh) | 2024-03-26 |
Family
ID=71684256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010164516.5A Active CN111461814B (zh) | 2020-03-11 | 2020-03-11 | 虚拟眼镜的试戴方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111461814B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112232183B (zh) * | 2020-10-14 | 2023-04-28 | 抖音视界有限公司 | 虚拟佩戴物匹配方法、装置、电子设备和计算机可读介质 |
CN112883919A (zh) * | 2021-03-22 | 2021-06-01 | 温州大学 | 一种基于人脸特征增强匹配的眼镜选配方法及装置 |
CN114296242B (zh) * | 2022-01-05 | 2023-07-07 | 北京蜂巢世纪科技有限公司 | 一种镜腿长度调节方法以及ar眼镜 |
CN114489404A (zh) * | 2022-01-27 | 2022-05-13 | 北京字跳网络技术有限公司 | 一种页面交互方法、装置、设备以及存储介质 |
CN116030224B (zh) * | 2022-12-30 | 2023-12-26 | 广州市玄武无线科技股份有限公司 | 一种ar产品展示方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016015037A (ja) * | 2014-07-02 | 2016-01-28 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びに、ビデオカメラ |
CN107103513A (zh) * | 2017-04-23 | 2017-08-29 | 广州帕克西软件开发有限公司 | 一种眼镜虚拟试戴方法 |
CN107330969A (zh) * | 2017-06-07 | 2017-11-07 | 深圳市易尚展示股份有限公司 | 眼镜虚拟三维试戴方法和眼镜虚拟三维试戴系统 |
CN107408315A (zh) * | 2015-02-23 | 2017-11-28 | Fittingbox公司 | 用于实时、物理准确且逼真的眼镜试戴的流程和方法 |
WO2019007939A1 (de) * | 2017-07-06 | 2019-01-10 | Carl Zeiss Ag | Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung |
WO2019008087A1 (de) * | 2017-07-06 | 2019-01-10 | Carl Zeiss Vision International Gmbh | Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201445457A (zh) * | 2013-05-29 | 2014-12-01 | Univ Ming Chuan | 虛擬眼鏡試戴方法及其裝置 |
US9990780B2 (en) * | 2016-10-03 | 2018-06-05 | Ditto Technologies, Inc. | Using computed facial feature points to position a product model relative to a model of a face |
-
2020
- 2020-03-11 CN CN202010164516.5A patent/CN111461814B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016015037A (ja) * | 2014-07-02 | 2016-01-28 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びに、ビデオカメラ |
CN107408315A (zh) * | 2015-02-23 | 2017-11-28 | Fittingbox公司 | 用于实时、物理准确且逼真的眼镜试戴的流程和方法 |
CN107103513A (zh) * | 2017-04-23 | 2017-08-29 | 广州帕克西软件开发有限公司 | 一种眼镜虚拟试戴方法 |
CN107330969A (zh) * | 2017-06-07 | 2017-11-07 | 深圳市易尚展示股份有限公司 | 眼镜虚拟三维试戴方法和眼镜虚拟三维试戴系统 |
WO2019007939A1 (de) * | 2017-07-06 | 2019-01-10 | Carl Zeiss Ag | Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung |
WO2019008087A1 (de) * | 2017-07-06 | 2019-01-10 | Carl Zeiss Vision International Gmbh | Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung |
Also Published As
Publication number | Publication date |
---|---|
CN111461814A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111461814B (zh) | 虚拟眼镜的试戴方法、终端设备及存储介质 | |
AU2018214005B2 (en) | Systems and methods for generating a 3-D model of a virtual try-on product | |
US11592691B2 (en) | Systems and methods for generating instructions for adjusting stock eyewear frames using a 3D scan of facial features | |
JP7109655B2 (ja) | 眼鏡用仮想試着システム及び方法 | |
US9990780B2 (en) | Using computed facial feature points to position a product model relative to a model of a face | |
US9342877B2 (en) | Scaling a three dimensional model using a reflection of a mobile device | |
EP3992919B1 (en) | Three-dimensional facial model generation method and apparatus, device, and medium | |
CN109801380A (zh) | 一种虚拟试衣的方法、装置、存储介质及计算机设备 | |
WO2018119938A1 (zh) | 图片处理方法和装置 | |
CN111163303B (zh) | 一种图像显示方法、装置、终端及存储介质 | |
CN109063539A (zh) | 眼镜虚拟佩戴方法、装置、计算机设备及存储介质 | |
CN110032941B (zh) | 人脸图像检测方法、人脸图像检测装置及终端设备 | |
WO2022272230A1 (en) | Computationally efficient and robust ear saddle point detection | |
CN108665498B (zh) | 图像处理方法、装置、电子设备和存储介质 | |
CN108573192A (zh) | 匹配人脸的眼镜试戴方法和装置 | |
CN106570747A (zh) | 结合手势识别的眼镜在线适配方法及系统 | |
CN111460937B (zh) | 脸部特征点的定位方法、装置、终端设备及存储介质 | |
JP5327866B2 (ja) | 眼鏡のフィッティングシミュレーションシステム、眼鏡のフィッティングシミュレーション方法及びプログラム | |
CN110533775B (zh) | 一种基于3d人脸的眼镜匹配方法、装置及终端 | |
CN116188742A (zh) | 虚拟对象的控制方法、装置、设备及存储介质 | |
CN111612713B (zh) | 一种三维超声图像的去遮挡方法 | |
CN113744411A (zh) | 图像处理方法及装置、设备、存储介质 | |
CN108881892B (zh) | 用于桌面式虚拟现实系统的防眩晕方法、系统 | |
CN206788480U (zh) | 一种基于定位技术的桌面级ar眼镜系统 | |
CN107025628B (zh) | 一种2.5d眼镜虚拟试戴方法及装置 |
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 |