CN116964513A - 框架调整系统 - Google Patents

框架调整系统 Download PDF

Info

Publication number
CN116964513A
CN116964513A CN202280011585.XA CN202280011585A CN116964513A CN 116964513 A CN116964513 A CN 116964513A CN 202280011585 A CN202280011585 A CN 202280011585A CN 116964513 A CN116964513 A CN 116964513A
Authority
CN
China
Prior art keywords
frame
measurements
data
nose
training
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.)
Pending
Application number
CN202280011585.XA
Other languages
English (en)
Inventor
杰西·雷特
埃斯特万·阿尔米隆
马特·霍宾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kubit Kx Co ltd
Original Assignee
Kubit Kx Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kubit Kx Co ltd filed Critical Kubit Kx Co ltd
Publication of CN116964513A publication Critical patent/CN116964513A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02CSPECTACLES; SUNGLASSES OR GOGGLES INSOFAR AS THEY HAVE THE SAME FEATURES AS SPECTACLES; CONTACT LENSES
    • G02C13/00Assembling; Repairing; Cleaning
    • G02C13/003Measuring during assembly or fitting of spectacles
    • GPHYSICS
    • G02OPTICS
    • G02CSPECTACLES; SUNGLASSES OR GOGGLES INSOFAR AS THEY HAVE THE SAME FEATURES AS SPECTACLES; CONTACT LENSES
    • G02C13/00Assembling; Repairing; Cleaning
    • G02C13/003Measuring during assembly or fitting of spectacles
    • G02C13/005Measuring geometric parameters required to locate ophtalmic lenses in spectacles frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/20Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from infrared radiation only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Optics & Photonics (AREA)
  • Ophthalmology & Optometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Eyeglasses (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)

Abstract

一种调整用户的眼镜框架以提供定制的眼镜框架的计算机实现的方法,该方法包括以下步骤:接收包括表示用户的头部的三维坐标数据的输入数据;识别输入数据内的多个界标地点,其中,界标地点与面部特征的三维位置对应;通过计算与至少一个界标地点相关的至少一个测量,基于多个界标地点,确定面部测量的集合;从框架测量的数据库中检索表示基本眼镜框架的框架测量的集合;比较面部测量的集合与框架测量的集合;基于比较,调整框架测量的集合中的至少一个框架测量;输出包括所调整的框架测量的集合的数据文件;其中,框架测量的集合包括镜片高度测量,并且调整包括:将镜片高度测量从初始值调整到调整值。

Description

框架调整系统
背景技术
眼镜框架的主要任务是在佩戴者的眼睛的前面的正确位置和角度处保持所需的光焦度(power)和类型的一对镜片,以改善其视力。
一副良好适配的眼镜(glasses)或眼镜(spectacle)需要满足多个关键标准,以便相对于用户的瞳孔正确地定位镜片,从而为佩戴者提供改善的视力。
1.优化光学性能
为了给佩戴者提供最佳的视力矫正,框架应该允许镜片的光学中心正确地定位在眼睛之前。
正确光焦度和类型的镜片的光学中心应该水平地(在笛卡尔坐标系的x轴上,通过精确的瞳孔距离测量)、垂直地(在笛卡尔坐标系的y轴上,通过精确的高度测量)被放置在瞳孔的前面。
镜片也应该垂直于垂直平面放置。即,当瞳孔与镜片的光学中心对应时,应该不会有前倾角(pantoscopic tilt)。增加的任何镜片倾斜将改变镜片的球光焦度,并导致出现不希望的圆柱体组件。对于低光焦度镜片,光焦度效应是可以忽略的,但是对于较高光焦度镜片,这可能是相当明显的。
所选择的框架应该针对特定的处方类型工作,包括较高折射率的单光(singlevision)镜片、非球面镜片、渐进式镜片等等。
2.最大化视场
镜片的主要目的是使佩戴者的视场最大化。由于随着正镜片移动得更靠近眼睛,视场增大且放大率减小,所以框架应尽可能靠近眼睛地保持镜片,使顶点距离最小化,以免经受睫毛、颊骨和其它障碍物的影响。佩戴者的睫毛应该仅仅清洁镜片的后表面。
所选择的框架应该针对佩戴者的独特和特定的面部特征,包括鼻梁高度、鼻梁投影、鼻尺寸和形状、头部尺寸、不对称性等进行工作。
3.保持对准
框架应该根据它们保持对准的能力来选择,并且应该使移动最小化而不会沿着鼻子滑下。
这不仅刺激佩戴者,而且还具有一些相当严重的光学副作用。这些包括:1.由于增加的有效镜片光焦度而导致的远视视力模糊;2.较小的视场;3.增加佩戴者观看的物体的放大率;以及4.佩戴者的眼睛对观察者的视在尺寸的增加(随着正镜片的顶点距离的减小,佩戴者的眼睛在观察者观看时看起来不那么放大)。
4.提供舒适性
当佩戴时,眼镜框架和镜片对于佩戴者来说应该是舒适的。它应该设法在鼻梁的表面上和耳朵上的位置均匀地分布框架的重量。不应有框架太紧的点。
为了为佩戴者提供一副提供所需视力矫正的眼镜,可以根据佩戴者的头部的测量定制或调整眼镜框架以适配佩戴者的面部。
目前,进行这些测量的主要方法有四种,概述如下。
第一种并且最常用的是试错-佩戴者在有或没有光学或销售助理的帮助下,试戴框架,直到他们找到他们所满意的一个框架,通常使用写在内部太阳穴上的框架测量进行引导。考虑到这些测量在佩戴时不直接与框架的适配有关,并且通常对光学适配的理解差,这种方法通常导致不令人满意的结果。
第二种方法包括由光学师用尺手动测量佩戴者的头部,通过用笔在佩戴者面部上标记各种点,并且然后测量这些标记的点之间的距离。该方法具有许多与之相关的固有不精确性。例如,在进行初始标记和进行实际测量时的人为误差,在测量过程期间患者或测量者移动,以及面部不对称。另外,当处理与面部特征相关的小测量时,笔的宽度变得显著,因此这在测量过程中引入了进一步的不精确性。
第三种方法包括使用电子测量工具进行测量,例如使用瞳孔计测量佩戴者的瞳孔之间的距离。虽然电子测量工具可以减少与手动测量相关的一些问题,但是仍然存在一些系统的不精确性,即使在先进的电子装置中也会出现这些系统的不精确性。例如,电子测量工具不能消除与测量者对测量工具的不正确定位相关的不精确性。
第四种方法包括使用佩戴者的头部的静态图像或照片以及使用基准或定标装置进行测量。这有时被称为在线“信用卡(credit card)”技术,其中信用卡的一个边缘被放置在佩戴者的鼻子的中心处并且测量信用卡结束的点。这种方法的问题是,当信用卡覆盖在佩戴者面部的图像上时,很难确保信用卡定位在正确的垂直平面中,从而导致进行不精确的测量。此外,相机的曲率以及镜片曲率之间的不一致性将小的失真引入到图像中,这导致不精确的测量。
因此,很明显,存在许多与为佩戴者提供一副眼镜相关的固有问题,该眼镜已经被适当地调整到他们的头部,使得眼镜将镜片保持在相对于佩戴者瞳孔的正确位置。
在这一点上,存在许多关键参数,这些关键参数对于精确测量是重要的,以便能够正确地调整眼镜框架。这些参数包括瞳孔距离、顶点距离、前倾角和镜片部分高度。
瞳孔距离是重要的,因为如果佩戴者没有通过镜片的光学中心观看,则所产生的不正确的光焦度和所引起的棱镜光焦度可能影响其视力的清晰度和舒适性。关于前倾角,框架中的大多数镜片不垂直于垂直平面定位,这可以引起镜片的处方光焦度的变化。就顶点距离而言,随着镜片的顶点距离改变,到达角膜的前面的光的屈光度(dioptric power)也改变,影响镜片向佩戴者提供所需视力矫正的能力。最后,如果高度测量不精确,则佩戴者可能在初级凝视而不是次级凝视中通过不正确的处方光焦度进行观察。
这样,需要提供一种将一副眼镜调整到个人头部的方法,以便相对于个人的瞳孔正确地放置镜片。
发明内容
根据第一方面,提供了一种调整用户的眼镜框架以提供定制的眼镜框架的计算机实现的方法,所述方法包括以下步骤:接收包括表示用户的头部的三维坐标数据的输入数据;识别所述输入数据内的多个界标地点,其中,所述界标地点与面部特征的三维位置对应;通过使用界标地点计算与至少一个界标地点相关的至少一个测量,基于所述多个界标地点,确定面部测量的集合;从框架测量的数据库中检索表示基本眼镜框架的框架测量的集合;比较所述面部测量的集合与所述框架测量的集合;基于所述比较,调整所述框架测量的集合中的至少一个框架测量;输出包括所调整的框架测量的集合的数据文件;其中,所述框架测量的集合包括镜片高度测量,并且所述调整包括:将所述镜片高度测量从初始值调整到调整值。
在本文中,测量可以包括角度,例如鼻子从面部突出的角度,或两点之间的距离,例如瞳孔之间的距离。在这些示例中,鼻子和瞳孔是分别与相关角度和距离测量对应的界标地点。
此外,在本文中,提供定制的眼镜框架指的是提供已经被定制以适配用户的头部的眼镜框架,使得相对于用户的瞳孔的镜片位置已经被调整,从而允许镜片为该特定用户提供期望的最佳光学矫正。换句话说,定制的眼镜框架是提供最大的视力矫正的将镜片相对于佩戴者的瞳孔保持在垂直位置的眼镜框架。
因此,本发明提供了一种调整至少一个框架测量的方法,以确保佩戴者的最大视力矫正的方法。特别地,被调整的框架测量是有助于控制镜片相对于瞳孔的位置的框架测量。
镜片高度表示镜片的最低部件与镜片上的与通孔中心的高度对应的点之间的距离。为了使镜片提供期望的视力矫正,重要的是确保镜片上的与瞳孔中心的高度对应的点与实际的瞳孔中心对准。
因此,调整镜片高度是重要的,以便确保镜片向用户提供所需的光学矫正。特别地,对于用户的处方,镜片的光学中心相对于瞳孔的垂直位置需要矫正,以便最小化像差和棱镜效应的影响,同时最大化视力矫正。由于每个用户的面部通常与另一个用户的面部不同,调整镜片高度位置对于镜片为每个用户提供所需的最佳矫正是至关重要的。
面部测量的集合优选地包括表示鼻子的3D结构的多个鼻测量。鼻子在确保眼镜框架正确地坐在用户的面部方面是一个重要的面部特征,因为鼻子为眼镜框架(即框架鼻梁)的前面提供了主要的支承地点。因此,重要的是精确地表示每个用户的鼻子的尺寸和形状,使得可以为每个用户适当地调整框架鼻梁和适当地设置框架鼻梁的尺寸,使得眼镜框架和镜片相对于他们的瞳孔正确地定位在用户的面部上。
眼镜框架搁置在佩戴者的鼻梁上的方式将对镜片高度位置和镜片的中心相对于佩戴者的瞳孔中心保持的位置产生影响。确定包括表示鼻子的3D结构的多个鼻测量的面部测量的集合有助于预测眼镜框架将如何坐在佩戴者的鼻梁上,以及随后镜片中心将相对于佩戴者的瞳孔中心定位的位置。然后,该预测允许适当地调整镜片高度,使得实现由眼镜框架实现的期望的光学矫正。
优选地,多个鼻测量包括多个镜圈(rim)之间距离DBR测量,其中,在沿着所述鼻子的长度的不同y轴地点处进行每个DBR测量。沿着鼻子的长度进行多次测量有助于建立鼻子的形状的更精确的表示。鼻子的鼻梁是鼻子的支承眼镜框架的部件,并且因此重要的是要理解鼻梁的结构,以便可以对眼镜框架进行适当的调整。因此,沿着y轴的多个鼻测量使得能够确定鼻梁的更精确的结构。y轴意指相对于用户的垂直轴或纵轴。
在眼镜框架如何坐在佩戴者的面部和镜片相对于瞳孔保持的位置之间存在相互影响。如果框架没有正确地坐在鼻子上,则镜片将不能相对于瞳孔中心正确地保持。鼻子结构的精确表示允许精确预测镜片如何相对于佩戴者的瞳孔保持在框架中,特别是镜片高度、前倾角、顶点距离。如果预测指示佩戴者的光学矫正是次优的,则可以对框架进行适当的调整以调整镜片高度测量,使得镜片被重新定位以在正确的倾斜和顶点距离处与瞳孔中心对准。
在一些示例中,多个鼻测量通过以下步骤获得:在第一y坐标(基于笛卡尔坐标系统)处沿着x轴进行射线投射,以获取鼻坐标数据,并且将所述鼻坐标数据存储在鼻数据集中;将所述第一y坐标按间隔调整为第二y坐标,并且在所述第二y坐标处沿着所述x轴进行射线投射,以获取附加的鼻坐标数据,并且将所述附加的鼻坐标数据存储在所述鼻数据集中;从所述鼻数据库中检索所述鼻坐标数据;检索框架鼻梁数据;比较所述鼻坐标数据与所述框架鼻梁数据;确定所述鼻坐标数据和所述框架鼻梁数据之间的重叠区域的尺寸;并且如果所述重叠的尺寸小于阈值,则调整至少一个框架测量。当眼镜框架放置在用户的鼻子上时,该方法能够更精确地确定框架鼻梁的支点的坐姿(sit position)。在框架鼻梁和鼻子之间在坐姿处必须有足够的接触区域,使得眼镜框架不会从用户的面部滑下并且可以舒适地佩戴。因此,这种获得方法提供了对鼻子结构的更好的理解,允许为每个用户调整框架的坐姿。
比较步骤可以包括:将所述框架测量的集合映射到所述面部测量的集合上,并且识别需要调整的框架测量的子集。该映射可以是概念映射,其中表示眼镜框架的尺寸和结构的数据与表示面部的尺寸和结构的数据进行比较。这允许识别框架的对用户来说尺寸不合适的部件。由于并非总是需要调整所有框架测量的情况,因此识别需要调整的框架测量的子集确保仅调整框架的需要矫正的部件。在这种情况下,框架的需要调整的部件是指框架的将调整镜片相对于瞳孔的位置的部件,使得镜片为该用户提供所需的光学矫正。
优选地,调整步骤包括调整所识别的框架测量的子集。这确保仅需要调整将积极地影响镜片相对于用户的瞳孔的位置的框架测量,而不是调整所有的框架测量。积极地影响意指调整将使镜片的光学中心的位置相对于用户的瞳孔以适当的顶点距离和角度被更好地放置,使得镜片可以为该用户提供最佳的光学矫正。
在一些情况下,所识别的框架测量的子集包括与眼镜框架的镜梁有关的至少一个框架测量。眼镜框架的鼻梁是框架的搁置在用户的鼻子上的部件。因此,眼镜框架的鼻梁相对于用户的鼻子的位置将限定镜片相对于用户的瞳孔的位置。因此,通过调整与框架鼻梁有关的框架测量,可以调整框架搁置在用户的鼻子上的位置,以确保每个镜片相对于每个瞳孔的位置对于用户的处方是正确的。
所识别的框架测量的子集可以包括与眼镜框架内的镜片的不同区域的位置有关的至少一个测量。
在渐进式多焦点镜片(也称为渐进式、渐进式附加镜片和PAL)中,光焦度可以在镜片内逐渐变化,典型地从镜片的顶部到底部,在所有的距离-距离、中间、近处和其间的任何地方提供大量的光焦度用于清晰的视力。因此,重要的是确保镜片相对于瞳孔正确地定位,以确保镜片为特定用户提供期望的和最佳的光学矫正。
优选地,调整镜片位置的步骤包括:分别调整与用户的左瞳孔相关的镜片位置测量和与用户的右瞳孔相关的镜片高度测量。通常情况下,用户的左瞳孔和右瞳孔不是精确地彼此一致,这意指它们在用户的面部上不在相同的垂直距离(沿着y轴)。因此,重要的是分别测量左瞳孔和右瞳孔的位置,使得可以相应地调整左镜片和右镜片的位置,以确保每个镜片正确地定位到其相应的瞳孔。因此,对每个瞳孔进行单独的测量确保了每个镜片的垂直位置是最佳的,这意指每个镜片能够为用户提供最大的光学矫正。
调整至少一个框架测量的步骤可以包括:将至少一个适配规则应用于所述框架测量,并且调整所述至少一个框架测量,使得所述框架测量满足至少一个适配条件。适配规则可以包括比较框架测量与阈值。可选地或附加地,适配规则可以包括比较框架测量与面部测量。因此,适配规则可以用于确定需要对至少一个框架测量进行多少调整。与手动调整镜框测量相比,使用适配规则来帮助调整镜框测量提供了更精确的调整眼镜框架的方法。适配规则确保调整镜框,直到镜片相对于瞳孔的位置正确为止,并且减少进行不正确的镜框调整的机会。
优选地,调整步骤包括:将多个适配规则应用于所述框架测量,并且调整所述框架测量,使得所述框架测量满足多个适配条件。使用多种适配规则来帮助调整框架测量进一步提高了调整眼镜框架的精确性。不同的适配规则可以应用于不同的框架测量。这可以帮助确保框架的与不同框架测量对应的不同方面被调整,以帮助确保镜片相对于瞳孔的位置对于用户是正确的。多于一个的适配规则可以应用于框架测量。这可以帮助确保已经针对用户正确地调整了框架测量,使得镜片相对于瞳孔的位置对于用户是最佳的。
在一些示例中,多个适配规则可以与鼻子区、耳朵区、面部尺寸区和/或晶状体区对应。多个适配规则可以包括上述区中的一些或全部。在一些示例中,多个适配规则可以包括替代和/或附加区。当使用时,眼镜框架在许多关键地点处与用户的面部的部件接触,眼镜框架在该关键地点处由面部特征支承。这些区包括耳朵和鼻子。因此,针对每个用户,围绕这些关键区正确地确定眼镜的尺寸是很重要的,使得眼镜框架正确地坐在用户的面部上。这意味着,当镜片相对于用户的眼睛的位置基于用户的处方为该用户提供最大的视力矫正时,眼镜框架正确地坐着。因此,具有与这些关键区相关的许多适配规则有助于确保眼镜框架在这些关键区处精确地适合每个用户,从而提供更适配的眼镜框架。
根据第二方面,提供了一种计算机系统,所述计算机系统配置为调整用户的眼镜框架以提供定制的眼镜框架,所述计算机系统包括:接收模块,配置为接收包括表示用户的头部的三维坐标数据的输入数据;处理器,配置为:识别所述输入数据内的多个界标地点,其中,所述界标地点与面部特征的三维位置对应;通过使用界标地点,计算与至少一个界标地点相关的至少一个测量,基于所述多个界标地点,确定面部测量的集合;检索模块,配置为从框架测量的数据库中检索表示基本眼镜框架的框架测量的集合;所述处理器还配置为:比较所述面部测量的集合与所述框架测量的集合;基于所述比较,调整所述框架测量的集合中的至少一个框架测量;输出包括所调整的框架测量的集合的数据文件;其中,所述框架测量的集合包括镜片高度测量,并且所述调整包括:将所述镜片高度测量从初始值调整到调整值。
优选地,计算机系统还可以包括扫描模块,扫描模块配置为扫描用户的头部并且生成输入数据。扫描模块还可以配置为将输入数据发送到接收模块。包括扫描模块作为计算机系统的部件有助于提供用于调整眼镜框架的完整的、独立的计算机系统。
在一些示例中,扫描系统包括相机和信号发射器。信号发射器可以配置为在用户的头部处发射多个信号,并且相机可以配置为检测所发射的信号。这提供了检测用户的头部和拍摄用户的头部图像的精确方法,该图像被转换为用户的头部的3D坐标数据形式的3D表示。发射多个信号确保基本上捕获用户的头部的整个结构。
优选地,信号发射器包括红外发射器,并且相机包括红外相机。红外图像捕获提供了获取对象的3D坐标数据的方便并且精确的方法。
在其它示例中,扫描模块包括LiDAR相机。这提供了获取对象的3D坐标数据的另一种方便和精确的方法。
根据第三方面,提供了一种包括指令的计算机程序,当指令由计算机执行时,计算机程序使计算机执行以上描述的方法及其任何变型。
根据第四方面,提供了一种计算机可读数据载体,其上存储有以上描述的计算机程序。
根据第五方面,提供了一种处理图像数据以估计面部特征的地点的计算机实现的方法,包括以下步骤:接收包括表示用户的头部的三维坐标数据的输入图像数据;预处理所述输入图像数据,以产生预处理的输入数据集;将预处理的数据集输入到第一神经网络中,并且输出第一结果,其中,所述第一结果包括表示面部特征的地点的第一估计的三维坐标数据;处理所述第一结果以产生处理的输入数据集;将所述处理的输入数据集输入到第二神经网络中,并且输出第二结果,其中,所述第二结果包括表示面部特征的地点的第二估计的三维坐标数据,并且其中,所述第二结果不同于所述第一结果。
因此,该方法可以包括顺序使用两个神经网络。第一神经网络和第二神经网络可以是相同或不同类型的神经网络。
精确地识别面部界标的地点(位置)是重要的,因为许多这些面部界标在确保眼镜框框架正确地坐在用户的面部上、使得镜片正确地保持在瞳孔的前面是特别地重要。由于整体算法的改善的分类精确性,利用机器学习的以上描述的计算机实现的方法,有利地能够从输入图像更精确地估计面部界标位置。
面部界标的精确确定允许创建面部的结构的更精确的表示,这允许更精确地预测镜片将如何相对于佩戴者的瞳孔保持在框架中。如果预测指示佩戴者的光学矫正是次优的,则可以对框架进行适当的调整以调整镜片高度测量,使得镜片被重新定位以在正确的倾斜和顶点距离处与瞳孔中心对准。
预处理可以包括:对输入图像数据进行采样以产生第一采样数据集;以及降低所述第一采样数据集的维度,以产生第一降低的数据集。输入图像数据还可以包括颜色纹理贴图(texture map),并且采样可以包括:对输入图像数据的位置和颜色进行采样。降低采样数据集的维度可以意指降低数据集的整体尺寸。第一降低的数据集可以包括三维坐标数据。
该处理可以包括:对所述第一结果进行采样以产生第二采样数据集;以及降低所述第二采样数据集的维度,以产生第二降低的数据集。采样可以包括采样第一结果的位置和颜色;
面部特征可以包括耳朵。面部特征可以包括瞳孔。
处理图像数据以估计面部特征(第五方面)的地点的计算机实现的方法可以与为用户调整眼镜框架以提供定制的眼镜框架的第一方面的方法及其任何变型结合使用。特别地,处理图像数据以估计面部特征的地点的计算机实现的方法可以形成为用户调整眼镜框架以提供定制的眼镜框架的方法的“识别”步骤的至少部分。
处理图像数据以估计面部特征的地点(第五方面)的计算机实现的方法可以与第二方面的计算机系统及其任何变型结合使用,该计算机系统配置为为用户调制眼镜框架以提供定制的眼镜框架。特别地,计算机系统的处理器可以配置为当处理器配置为执行“识别”步骤时,执行处理图像数据以估计面部特征的地点的计算机实现的方法。
根据第六方面,可以提供一种训练分类器的方法,所述分类器用于使用图像数据来定位面部特征,所述方法包括:生成第一训练数据集,其中,所述第一训练数据集包括多个头部扫描图像;使用所述第一训练数据集训练第一神经网络,所述训练包括以下步骤:选择所述第一训练数据集的第一子集,并且使用所述子集训练所述第一神经网络;使用所述第一训练数据集的第二子集确定所述第一神经网络的精确性,其中,所述第一训练数据集的所述第二子集包括不形成所述第一子集的部分的头部扫描图像;使用所述第一训练数据集迭代地训练所述第一神经网络;以及当观察到的连续迭代的输出之间的差值小于第一阈值时,结束训练所述第一神经网络;输出所述第一神经网络的结果,其中,所述输出表示所述面部特征的地点的第一估计,所述面部特征的所述地点的所述第一估计包括所述面部特征的所述地点的所述第一估计的三维坐标和颜色纹理数据。该方法可以还包括:生成第二训练数据集,其中,所述第二训练数据集包括来自所述第一训练数据集的每个头部扫描图像的选定部分,所述选定部分以所述面部特征的所述地点的所述第一估计的所述三维坐标为中心;使用所述第二训练数据集训练第二神经网络,所述训练包括以下步骤:计算表示所述第一神经网络的误差的残差的集合;选择所述第二训练数据集的第一子集,并且使用所述子集训练所述第二神经网络;使用所述第二训练数据集的第二子集确定所述第二神经网络的精确性,其中,所述第二训练数据集的所述第二子集包括不形成所述第一子集的部分的数据;使用所述第二训练数据集迭代地训练所述第二神经网络;以及当观察到的连续迭代的输出之间的差值小于第二阈值时,结束训练所述第二神经网络;输出所述第二神经网络的结果,其中,所述输出表示所述面部特征的地点的第二估计,所述面部特征的所述地点的所述第二估计包括所述面部特征的所述地点的所述第二估计的三维坐标和颜色纹理数据。
通过观察手动执行的面部地点标记,并且用所述面部特征的三维位置坐标和颜色纹理贴图值注释多个面部扫描,可以生成所述第一训练数据集。
为了避免疑义,以上描述的方面及其变型中的任何一个可以与其它描述的方面及其变型中的任何一个或多个相结合。
附图说明
现在将参考附图仅以示例的方式描述本发明的实施方式,在附图中:
图1a示出了基于笛卡尔坐标系的相对于人头部的xyz坐标系;
图1示出了适配引擎(fit engine)API的工作流;
图2示出了计算装置上的扫描模块的示例;
图3示出了在面部的前面上的面部界标的示例;
图4示出了面部的左侧上的面部界标的示例;
图5示出面部测量的示例;
图6示出了面部测量的另一个示例;
图7示出了面部测量的另一个示例;
图8示出了框架测量的示例;
图9示出了框架测量的另一个示例;
图10示出了应用于鼻子的适配条件的示例;
图11示出了应用于耳朵上的适配条件的示例;
图12示出了应用于面部的适配条件的示例;
图13示出了框架测量的另一个示例;
图14示出了框架测量的另一个示例;
图15示出了框架测量的另一个示例;
图16示出了框架测量的另一个示例;
图17示出了高级DBR计算的流程图;
图18示出了被分成多个层的鼻子的结构;
图19示出了圆柱形模式中的示例采样过程;以及
图20示出了输入数据的子集的示例。
具体实施方式
为了确定眼镜框架如何处于佩戴者的鼻子上,需要了解鼻梁的形状和框架鼻梁的形状,以便预测框架在佩戴者面部上的坐姿。
本发明涉及适配模型,其能够基于所获取的关于框架和佩戴者面部的信息和数据来提供框架坐姿的精确预测,以便在配戴框架时提供识别佩戴者的瞳孔将如何与镜片相互作用的能力。然后,可以使用这种预测来帮助为佩戴者提供一副良好适配的眼镜。
为了提供一副良好适配的眼镜(也称为眼镜),可以调整标准眼镜框架的尺寸和形状,使得它们对佩戴者更具体,从而产生更好的适配。特别地,可以基于佩戴者的头部的测量来调整某些框架参数,以提供尺寸更适合佩戴者的头部的一副眼镜。通过更好的适配,我们意味着通过调整保持镜片的框架,优化了镜片相对于佩戴者的眼睛的位置,使得眼镜框架放置在佩戴者的头部上提供了最佳的视力矫正。当眼镜镜片相对于瞳孔正确放置时,光轴将基本上与佩戴者的视轴线重合。这是重要的,因为这意味着当通过镜片观察物体时,佩戴者将经历最小的棱镜效应。
为了提供一副定制的眼镜,必须对对象的面部特征进行精确测量,以及对眼镜框架的组件进行精确测量。这些测量可以被转换成输入数据,该输入数据被用于在数学上描述人的头部和眼镜框架。如将在下面更详细地描述的,分析该输入数据,允许对框架进行任何必要的调整。
使用包括适配规则或适配算法的集合的适配模型来定制眼镜框架,该适配规则或适配算法用于调整眼镜框架的不同方面。眼镜框架的不同方面与不同的框架测量对应,这将在下面更详细地讨论。特别地,该适配模型集中在四个主要区域,即鼻子、耳朵、面部尺寸和晶状体。这些区域中的每个都与至少一个适配条件相关,并且在一些情况下与多个适配条件相关,该多个适配条件需要满足以使框架被认为对于特定佩戴者是适当尺寸的。因此,与每个区域相关的适配条件和通过应用适配规则利用这些适配条件的算法被用于调整框架测量以提供定制的框架。
通常,为了调整眼镜框架的参数,首先使用扫描模块扫描佩戴者的头部,以便产生佩戴者的头部的三维(3D)扫描。扫描的数据作为包括表示佩戴者的头部的三维坐标数据的3D数据文件输出。可选地,也可以输出深度图和/或纹理贴图。包括三维坐标数据的3D数据文件形成被发送到处理模块的输入数据的集合。处理模块分析3D扫描的输入数据并且识别3D扫描内的至少一个面部界标。界标或界标地点与面部特征的三维位置对应。然后,通过计算与界标地点相关的测量,使用界标地点来确定面部测量的集合。在一些情况下,计算测量包括计算两个界标地点之间的距离。在其它情况下,计算测量包括计算在两个界标地点之间形成的角度和/或在界标地点和坐标轴或平面之间形成的角度。面部测量的集合通常将包括以上描述的计算的组合。因此,基于3D扫描的输入数据测量面部界标可用于确定面部界标的尺寸(例如,尺寸和形状)。获取模块从存储的框架测量的数据库中检索至少一个框架测量。所存储的测量的数据库与框架的特定部件的标准化框架尺寸对应。框架测量与至少一个面部界标相关。例如,眼镜框架的宽度与佩戴者的眼睛之间的距离相关。所获取的框架测量表示初始眼镜框架或基本眼镜框架,然后使用适配模型和应用适配规则来调整和定制该初始眼镜框架或基本眼镜框架。该步骤可以包括将面部测量与框架测量进行比较,以确定为了满足适配条件而需要进行的对基本框架的尺寸或结构的任何调整。当框架测量在界标测量的阈值限制内时,满足适配条件。
适配模型规则被用于提供推荐的框架测量的集合,当佩戴者佩戴眼镜时,该框架测量的集合最适于提供相对于眼睛的最佳镜片位置。满足适配模型的所有四个主要区域的适配条件的框架测量被确定为对于特定用户是最佳的。
现在将描述适配模型的进一步细节。应当注意,参考x轴是指相对于用户的左右(即,水平或横向)方向,参考y轴是指相对于用户的上下(即,垂直或纵向)方向,并且参考z方向是指相对于用户的前后(即,轴向或深度)方向,如图1a中所示。
图1示出了适配引擎(Fit Engine)API的整体工作流。可以在例如台式计算机或移动计算装置的计算系统100中实现适配引擎API。也可在基于云的系统中实现适配引擎API。在S102,希望将框架调整到其头部的用户首先通过与在计算系统中提供的用户界面交互来上传其眼镜处方。为了为用户提供定制的框架,计算系统需要将面部测量与框架测量进行比较,并且然后基于面部测量和适配规则对框架测量进行适当的调整。
面部测量是与佩戴者面部有关的测量的集合,并且只在面部上进行。框架测量是与框架的特征相关的测量的集合,并且仅在框架上进行。除了这些面部测量和框架测量的集合之外,还采用附加的面部-框架测量的集合。这些面框架测量是在框架和面部两者上进行的,并且彼此直接相关。最后,进行侧部测量的集合,包括与框架侧部及其调整相关的面部测量和框架测量。这些不同的测量的集合形成应用适配规则的数据,并产生了定制的眼镜框架。现在将描述在这些集合的每个集合内的测量的细节以及如何获取它们。
使用采用扫描仪形式的扫描模块102获取佩戴者的面部测量。扫描模块102可以是计算系统100的部件,例如扫描模块102可以包括移动计算装置中的相机102,如图2中所示。可选地,扫描模块可以是与计算系统通信的单独组件,例如独立运行的头部扫描器。在S104,用户使用扫描模块102扫描他们的头部,以便捕获与用户的头部有关的数据,从该数据可以进行面部测量。
为了确保扫描整个用户的头部,扫描模块102需要从多个角度捕获用户的头部,以确保获得整个用户的面部的面部数据。在一些情况下,扫描模块可以布置成围绕保持在固定位置的用户的头部移动,例如通过从面部的一侧,跨过用户的面部的前面,并且到面部的另一侧围绕用户的头部描绘(tracing)水平弧。在其它示例中,用户可以将他们的头部从一侧旋转到另一侧,同时扫描模块102保持静止。后一个示例在图2中示出。在该示例中,扫描模块102是移动装置上的相机的形式,并且经由移动装置上的显示屏向用户呈现多个命令,例如“向左缓慢转动”,指示用户将其头部从一侧移动到另一侧,使得创建用户的面部的3D网格,其包括数千个单独的红外点。通过叠加高分辨率扫描,其创建了用户的面部的精确和照片逼真的3D模型。扫描模块102在3D扫描中精确地记录用户的头部。
扫描模块102包括相机和信号发射器,该信号发射器配置为在用户的面部发射已经由相机检测到的多个信号。所发射的信号用于建立用户的面部的数学图像。
在一些示例中,扫描模块102采取包括红外发射器的相机的形式。红外发射器以已知图案将许多红外点投射到用户的面部上。然后,红外相机捕获红外点的图像并创建用户的头部的3D模型。在其它示例中,扫描模块102采用使用多个定时激光脉冲来建立用户的头部的3D模型的激光雷达(LiDAR)相机的形式。
然后,在S106,3D扫描数据被输入到面部映射机器学习算法中,该面部映射机器学习算法识别并记录被称为跨过头部的界标的某些位置。机器学习算法先前已经被训练来从面部扫描数据中识别已知面部界标。更具体地,界标位置是突出面部特征的位置。界标的位置可以被记录为坐标,例如从3D扫描数据中获取的xyz坐标。面部界标的示例包括每个瞳孔的中心的地点、鼻尖的地点和耳朵的地点。
一些面部界标可以被认为比其它面部界标相对更重要,例如耳朵的位置和瞳孔的位置比鼻尖的位置更重要。这是因为眼镜框架的臂搁置在耳朵上(特别是,框架臂的弯点搁置在耳朵的顶部),并且镜片必须定位在瞳孔的前面,以便眼镜框架正确地处在佩戴者的面部上,使得框架保持镜片与佩戴者的瞳孔最佳地对准。现在将讨论关于识别耳朵和瞳孔的位置的进一步细节。
首先考虑耳朵的地点,基于在头部扫描的集合上手动测量的平均耳朵地点来估计耳朵界标位置的问题在于,由于毛发或其它障碍(例如遮挡)的影响,所得到的界标地点通常是不精确的,并且在尝试使用覆盖180度的扫描来估计耳朵后面的位置时是困难的。
为了解决如何精确、一致地识别耳朵界标点的技术挑战,考虑到毛发和遮挡的问题,利用特定的数据对特定的变量训练ML算法。
下面的描述涉及第一神经网络和第二神经网络。第一神经网络产生输出,该输出一旦如以下描述的处理,就用作第二神经网络的输入。第二神经网络可以使用该输入来产生对相关结构(诸如左耳和/或右耳,或与左耳和/或右耳对应的一个或多个界标点)的位置的高度精确的估计。此外,还执行某些预处理步骤。已经发现,这些步骤出乎意料地改善了整体算法的分类精确性,即,如本文描述的算法有利地能够从输入图像更精确地估计界标位置(例如,耳朵界标位置)。
首先,3D扫描数据(图像数据)在被输入到第一神经网络之前被预处理。如图19中所示,这种预处理包括以圆柱形模式对3D扫描数据的位置和颜色进行采样。然后,在来自3D扫描数据的圆柱形采样位置和颜色数据上执行以已经(例如,手动地)估计的初始目标界标地点点为中心的块(patch)采样过程。利用正交基矢量集,从块采样过程导出的数据在维度上被减小。15个矢量的正交基集在训练期间从例如从采样头部扫描获得的3000个块的集合(块的数量可以变化,例如在1000和5000之间,或500和10000之间)导出。维度的降低使得用相对较少的训练示例将系统训练到有用的性能水平是可行的。
第一神经网络的输入变量根据它们在训练数据集中的平均值被偏置。在该偏置步骤之后,然后根据在训练数据集的变量中观察到的方差的倒数平方根对经偏置矫正的数据进行加权。使用输入数据的平均值和通过方差的归一化来选择偏置。偏置的这种选择意指神经网络必须学习更少的信息,这减少了网络的深度并减少了训练网络所需的训练迭代的总次数。
预处理步骤通过利用我们对界标位置(诸如耳朵的位置)的可能地点的先验知识来帮助神经网络,并且还通过减小数据的维度来帮助改善对于给定数量的训练数据的输出的精确性,以使训练过程在小数量的注释头部扫描的情况下更易于处理。
第一神经网络对位置和颜色数据的块的降维表示进行操作,该位置和颜色数据的块形成输入变量的部分。调整神经网络的系数以适配预先存在的头部扫描的集合的测量的预期耳点结果。所使用的神经网络模型优选地是由整流线性单元、级联整流线性单元和高斯单元的组合组成的多层感知器。获得耳朵界标地点的初始估计作为3D坐标形式的输出。
一旦获得来自第一神经网络的输出,就以从第一神经网络获得的位置估计为中心重复块采样步骤,并且将结果输入到第二、不同的神经网络中,该第二、不同的神经网络已经被专门训练以改善来自第一神经网络的输出。关于训练过程的信息在本说明书中稍后给出。第二神经网络输出界标点(例如(多个)左耳界标点和/或(多个)右耳界标点)的三维坐标。将理解的是,第一神经网络已经粗略地定位了(多个)界标点的坐标,使得第二神经网络在总图像数据的非常可能包含(多个)界标点的子集上操作。这有利地改善了(多个)界标的最终地点。
有利地,如以上描述的,一个接一个地使用两个神经网络允许两个神经网络的超参数彼此独立地被优化。这可以改善整个界标检测过程的精确性。另外,如上所述,由于由第一神经网络执行的第一遍,第二神经网络对已知包含(多个)耳朵界标的数据的子集进行操作。这允许应用人具有左耳和右耳的领域知识,左耳和右耳将处于由初始神经网络近似给出的地点,以在训练和实现中获得功效。
已经描述了使用第一神经网络和第二神经网络的界标检测过程,现在提供了与这些神经网络的训练相关的讨论。
用于训练第一神经网络的训练数据是头部扫描的集合。这在本文中被称为第一训练数据集。每个头部扫描基本上是特定人的头部的图像,并且是以上讨论的类型。考虑到本公开,本领域技术人员将可选择合适数量的头部扫描。通常,几千(例如1000至5000,或约3000)的头部扫描将足够了。然而,本发明不限于在第一训练数据集中使用任何特定数量的头部扫描。每个头部扫描优选地包括几何数据(例如,以多边形网格数据的形式)、几何数据内的多个点处(或者当这相关时在网格上)的法向矢量、纹理贴图坐标、以及颜色纹理贴图(例如,RGB纹理贴图)。每次头部扫描用三维左耳位置和右耳位置来注释,例如使用与经训练的光学分配工作人员的观察相一致的方法来标记。
在优选实施方式中,第一训练数据集是通过在光学分配期间观察实际中的耳点标记并且在用与该方法对应的左耳点和右耳点的地点在三维中注释(例如,3000)头部扫描的集合而生成的。
使用第一训练数据集的部分来训练第一神经网络。一旦被训练,第一训练数据集的剩余部分被用于测量第一神经网络的精确性。反复地重复该过程,直到第一神经网络被认为产生足够精确的结果。即,当连续优化迭代之间观察到的差值小于阈值时,第一神经网络的训练阶段结束。阈值将由本领域技术人员考虑当前情况的具体情况来选择。作为一个示例,阈值可以设置在六个三维坐标(即左耳和右耳的X坐标、Y坐标和Z坐标)上的平均误差中的100微米均方根(RMS)误差的区间中,或者设置在六个三维坐标(即左耳和右耳的X坐标、Y坐标和Z坐标)上的平均误差中的100微米均方根(RMS)误差处。然而,本发明不限于该值,因为阈值可以改为设置为其它值,例如在50至500微米范围内的值。
一旦训练了第一神经网络,就使用来自训练过程的结果来生成用于训练第二神经网络的第二训练数据集。通过仅使用接近所讨论的界标特征的数据(例如,三维位置坐标在由第一神经网络输出的界标位置的初始估计的特定范围内)来训练第二神经网络。换句话说,不使用整个头部扫描数据集来训练第二神经网络,而是使用与所讨论的界标特别相关的该数据的子集来训练第二神经网络。例如,以左初始估计和右初始估计(估计是从在训练数据集中的所有头部扫描上取得的左耳和右耳的平均地点导出的)为中心的数据输入的子集(例如,如图20中所示的16×16网格(即,256个样本))、连同表示左初始估计和右初始估计的地点的三维坐标、连同围绕初始左估计和右估计的纹理数据的子集,形成用于训练第二神经网络的第二训练数据集。然后,第二神经网络按照以上关于第一神经网络描述的进行训练,但是使用第二训练数据集。
在训练第二神经网络期间,可以计算表示第一神经网络的误差的残差的集合。在一些情况下,可使用残差来管理数据子集(即,图像的选定部分)的尺寸。例如,如果第一神经网络将耳朵界标地点的估计输出为在坐标X加/减1%,则第二神经网络可以使用包括坐标地点X加/减1%的总图像的子集作为第二神经网络的训练数据集。
可选地,可以使用第一神经网络的残差作为输入参数来训练第二神经网络。在这种情况下,第二神经网络可以使用残差作为其分类的部分,因此残差是第二神经网络的输入。
已经发现,以这种方式对第一神经网络和第二神经网络的顺序训练可以导致特别精确的界标检测过程。
现在考虑瞳孔的地点,基于在头部扫描的集合上手动测量的平均地点来估计眼睛地点的问题在于,由于扫描过程中的困难,该方法不能提供瞳孔地点的精确估计。特别地,因为由于瞳孔产生的“孔”,扫描不能检测眼睛的硬表面,所以扫描将眼睛的外眼角(外侧和内侧)之间的中心点作为瞳孔的地点。然而,该地点并不总是等同于正确的瞳孔地点,并且由于在每只眼睛中的相对瞳孔位置之间经常存在变化。
为了解决如何精确地和一致地识别两个瞳孔的界标点(即地点)的技术挑战,本发明在眼睛中找到最暗的区,并将该区的中心设置为瞳孔的中心。该过程如下。
作为起始点,将每只眼睛的位置设定为从头部扫描的集合上的手动测量所识别的平均地点。这给出了由本发明改进的瞳孔的近似地点。
随后,3D面部扫描的位置和颜色依次以以每个眼睛的估计位置为中心的矩形图案采样。如前所述,然后执行块采样,以便使用初始眼睛地点估计作为基础来在维度上降低采样位置和颜色数据。
如前所述,神经网络对位置和颜色数据的块的降维表示进行操作。调整神经网络的系数以适配预先存在的头部扫描的集合的测量的预期瞳孔点结果。与耳朵界标确定类似,一旦获得输出,就使用已经专门训练的不同神经网络重复块采样步骤,以改善来自第一神经网络的输出。最终神经网络的输出是左瞳孔点和右瞳孔点的三维坐标。
将理解,以上描述的用于定位耳朵和眼睛的技术可以应用于其它面部特征,例如鼻子、嘴、眉毛、嘴唇等。
图3和图4分别示出了头部的前面和侧部上的面部界标。将理解的是,头部右侧上的界标将与图4中所示头部的左侧上的界标相同。
一旦界标被识别并且它们的相应位置被记录在界标坐标的数据集中,则射线投射被应用到界标数据集中,以便提取关于面部的几何形状的进一步信息。该进一步的信息提供了关于不同面部界标如何彼此相关的附加细节,以及提供了关于特定面部特征的尺寸和形状的细节。例如,射线投射可以用于基于鼻界标数据点来确定鼻子的形状,以及基于眼睛界标数据点来确定瞳孔之间的距离以及眼睛的形状。确定关于面部的几何形状的信息是重要的,因为这种信息被用于构建或构造个人头部的虚拟图像,该虚拟图像随后将被用于调整一副眼镜。在本文中,虚拟图像是数学构造,并且包括表示代表个人头部的所有不同地点和相关测量的数据点的数据库。
确定面部界标的地点是重要的,因为正是从该面部数据确定佩戴者的头部的测量,其将被用于调整框架测量。必须正确地解释从3D扫描获得的面部数据,以便将与佩戴者的面部特征相关的精确数据输入到适配模型中。
从适配的角度来看,面部数据的关键元素是鼻子。由于鼻子是其上搁置有框架的主体的面部结构,因此它可以被认为是关于眼镜框架的正确定位和适配的最重要的面部结构之一。框架和鼻子之间的关系将很大程度上决定框架是否将正确地适配在佩戴者的面部上并提供足够的视力,使得通过使用眼镜改善佩戴者的视力。然而,鼻子的结构可以在个体之间变化很大,并且因此需要考虑许多变量,以确保眼镜框架以确保镜片相对于瞳孔正确定位的方式搁置在鼻梁上。特别地,鼻梁(限定为由鼻骨本身形成的隆起)和鼻子的角度可以很大地变化,并且由于鼻梁是眼镜梁应当搁置在鼻子上的区域,因此精确表示该区域是重要的。鼻嵴也可以采用各种不同的形状,例如它可以是直的、凹的、凸的或显示波浪状的结构,并且因此应该考虑这些变化。最后,当装配眼镜框架时,眼睛和鼻梁的相对水平是一体的,因为它将对镜片的中心是否与瞳孔正确对准产生影响。需要精确地确定眼睛和鼻梁之间的关系,以便可以适当地调整镜片的位置。
在S108,界标的地点可用于计算要输入到适配模型中的面部测量的集合,其将确定框架在鼻子上的正确位置,并因此确定镜片相对于瞳孔的矫正位置。图5、图6和图7示出了与可以从3D头部扫描确定的鼻子界标相关的不同面部测量中的一些。
首先转到图5,与鼻子形状相关的面部测量是特别重要的。特别地,确定以下面部测量,其中面部测量的数量与图5中的测量的附图标记对应:
图5中的附图标记4-鼻嵴高度,与鼻子开始(“嵴”)的y方向上的垂直高度对应。这种测量可以被认为是鼻子相对于眼睛底部(下眼睑)开始的位置。嵴高度的顶部或峰被称为嵴点。
图5中的附图标记5-鼻额角,其也可以被认为是展开(spread)角,表明从前面的视角看鼻子如何张开(flared)或展开。这是通过找到鼻孔的外边缘与穿过鼻子的中心纵向轴线之间的角度来测量的。
图5中的附图标记6-鼻嵴角,表示鼻子从面部突出的程度(即鼻子向上或向下指向的程度)。这是通过找到将鼻嵴连接到鼻尖的线与垂直平面之间的角度来计算的。
关于图5的进一步细节可以在附录中找到。
接下来转到图6,示出了显著的面部标记或参考点,其用于计算参考图5描述的测量,例如,表示鼻嵴角。在附录中可以找到图6的进一步细节。
最后,转到图7,示出了鼻子的不同张开角(splay angle)。张开角也可以被认为是展开角另一种形式,表示从自上而下的角度来看鼻子有多张开或展开。通过找到由鼻子的中心线与眼镜框架的镜圈之间距离DBR(其可以被认为类似于框架鼻梁的宽度)的位置在指定点处形成的角度来计算张开角,该指定点通常在水平中心线(沿着佩戴者的下眼睑形成的假想水平线)以下10mm处。这种测量在提供一幅正确适配的眼镜框架方面是重要的,因为眼镜框架鼻梁和固定的鼻托的面向鼻子的表面应该与鼻子的表面对准。这样,框架鼻梁的角度和鼻子的张开角应该基本上相同,以便框架的鼻梁以在鼻子和框架之间提供足够的表面接触区域的方式搁置在鼻子的鼻梁上,使得眼镜不会从佩戴者的鼻子滑下。
还需要确定基本框架测量的集合,提供框架测量的初始数据集,然后可以将其调整到佩戴者的面部。
更详细地看看框架测量,如图13至图16中所示,可以认为框架被划分成多个区,即前面、侧部、顶部和眼睛。
参考图13,其中示出了框架的前面,与鼻梁的形状相关的框架测量是特别重要的。更具体地,进行以下框架测量,其中以下附图标记与图13中的附图标记对应:
●d-镜片之间的距离(DBL),与镜片孔径(lens aperture)的内边缘之间的距离对应。
●4-鼻梁宽度线,与位于水平中心线HCL下方5mm(与沿着y轴的距离对应,在y轴处绘制镜片的上边缘和下边缘的切线之间的水平线)的水平基准线对应。
●5-鼻梁宽度,其与沿着鼻梁宽度线测量的镜圈之间最小距离对应。
●6-鼻梁高度,与从鼻梁宽度线到鼻梁的下边缘的距离对应并且沿着垂直对称轴测量。鼻梁高度的顶部被限定为支点位置。
图14示出了框架的侧部,从该侧部可以进行多个框架测量,例如,与在框架鼻梁和穿过眼镜框架中心的竖直平面之间形成的角度对应的张开角AC。在附录中讨论了可以进行的进一步的框架测量的细节。
图15示出了框架的顶部,如附录中所讨论的,可以从该框架的顶部进行多个其它框架测量。
图16示出了框架的眼睛区,从该眼睛区可以进行许多另外的框架测量,例如,与镜片孔径相对于眼睛的水平轴的角度对应的前倾角。在附录中讨论了可以进行的进一步的框架测量的细节。
除了以上描述的框架测量之外,还进行与等效面部测量对应的附加框架测量。这些测量包括以下:
●在HCL处的镜圈之间距离DBR(0mm);在5mm处的DBR;在10mm处的DBR;在15mm处的DBR-在沿着y轴的不同位置处计算的镜圈之间沿着x轴的距离。特别地,这是用HCL处的嵴点和HCL上方5mm、10mm和15mm处的嵴点来计算的。
●嵴高度-HCL和作为鼻梁的中点的嵴点之间沿着y轴的距离。
●张开角-这也与框架前面的后平面法线与鼻托(pad)平面之间的角度对应。
●额角-通过找到垂直线和鼻梁鼻托的平面之间的角度来计算,其中垂直线是穿过框架的中点的中心纵轴。
如前所述,精确地表示鼻梁的形状和框架鼻梁夹的形状是重要的,以便确定框架鼻梁将如何处在佩戴者的鼻子上,并随后确定需要对框架进行什么样的调整,以便框架将镜片相对于佩戴者的瞳孔保持在正确的位置。即,精确地预测佩戴者面部上的框架坐姿提供了识别佩戴者的瞳孔在佩戴框架时将如何与镜片相互作用的能力。
为了提供对框架坐姿的精确预测,可以基于以上描述的框架和面部测量来确定许多其它重要测量。
DBR测量的修改形式是相对于面部进行的,称为高级DBR,这使得能够更精确地确定当框架鼻梁放置在鼻子上时框架鼻梁的支点的坐姿。参照图17,这种面部测量通常通过沿着x轴以预定间隔沿着y轴的射线投射来计算,以便沿着鼻子的长度获得更多的测量,从而提供鼻子的尺寸和形状的更精确的表示。通过更好地模拟框架如何坐在面部上,特别是在鼻子上,可以更精确地预测光学镜片在眼睛的前面的位置。
如图18中所示,可以认为鼻子由多个鼻子层180形成。每个鼻子层可被认为与穿过鼻子的垂直切片对应,并且因此每个鼻子层与特定的z轴坐标相关。这些层通常在z轴上彼此等间隔,使得每个鼻子层通常具有相同的厚度。与特定鼻子相关的鼻子层的数量可以取决于鼻子的尺寸。每个鼻子层通常采用三角形的形式,该三角形具有由x轴和y轴坐标限定的侧边,并且该三角形位于某个z轴坐标处。每个鼻子层形成高级DBR测量的部分,且鼻子的整体结构可以由这些层构建。
射线投射在鼻嵴点处开始并且在鼻尖处结束。在S200,从与嵴点对应的y坐标处开始,沿着x轴投射射线,并且可以确定鼻子沿着x轴的不同部分的z轴位置。对于给定的y轴位置,确定的z轴坐标数据和不同的x轴位置的组合形成可以存储在鼻数据集中的鼻坐标数据的集合。然后,在S202,以固定间隔(例如1mm间隔)调整y坐标,并且重复射线投射过程,以在新的y坐标处获取新的鼻坐标数据。该附加的鼻坐标数据被添加到鼻数据集中的先前记录的鼻数据中。在S204,通过调整y坐标并在新的坐标处收集鼻数据,沿着鼻子的长度重复射线投射过程,直到y坐标与鼻尖对应。
在S206,一旦已经获取了所有的鼻坐标数据,鼻数据集就包括表示鼻子形状的3D坐标数据的集合。换句话说,高级DBR测量包括点的3D数据云,其包括表示鼻子的结构(例如,尺寸和形状)的多个鼻子层。在S208,然后检索与框架鼻梁的形状对应的数据,也称为框架鼻梁数据。该数据包括如前面参考图13描述的张开角、鼻梁宽度线、鼻梁宽度和鼻梁高。
框架鼻梁数据包括表示框架鼻梁的形状的3D坐标数据三维集合。为了确定框架鼻梁是否与佩戴者的鼻子适当地成形,框架鼻梁可以投射到鼻子上,并且可以评估所得到的适配。特别地,在S210,鼻子的结构和框架鼻梁的结构两者都可以在3D中概念地映射,3D映射与表示各个结构的xyz坐标的数据集对应,并且这些结构映射可以彼此比较以确定框架鼻梁将如何坐在鼻子上。
在S212,根据该比较,可以使用鼻坐标数据和框架鼻梁数据,确定框架鼻梁的表面区域和鼻子的表面区域之间的重叠量,即接触表面区域的尺寸。重叠量是评估眼镜框架是否适合特定佩戴者的尺寸的关键度量。
沿着z轴,镜片应该尽可能靠近眼睛,使得镜片距角膜的距离(称为顶点距离(VD),有时称为后顶点距离)最小化(佩戴者的睫毛应该刚好清除镜片的后表面)。镜片位置的起始点应该与用于进行折射的测试装置对准,该装置通常设置为12.5mm的VD。
通过将框架的鼻梁形状投影到高级DBR测量上,可以检测碰撞位置,该碰撞位置是框架和鼻子相遇的位置。碰撞位置必须产生足够的表面接触区域,以防止眼镜框架从鼻子滑下。
在S214,在比较之后,如果接触表面区域的尺寸太小,即小于根据英国标准BS ENISO 12870:2014限定的阈值,则可以调整鼻梁在鼻子上的位置,以增加接触表面区,从而确保眼镜框架不会从佩戴者的鼻子滑下。特别地,在沿着鼻子、额角、嵴角和张开角的不同点对DBR进行调整。最后的碰撞位置(在xyz坐标中)然后被发送到适配引擎API作为框架鼻梁的最可能的物理位置。
当确定框架鼻梁在鼻子上的最可能的物理位置时,重要的是确保眼镜框架的其它部件(例如镜圈的下边缘)不与佩戴者面部的部件(特别是它们的面颊和前额)碰撞。这些碰撞点可能被称为不希望的碰撞点,因为框架和佩戴者面部的这些部件之间的任何接触对于佩戴者来说将是不舒服的。
为了首先检测和其次避免这些不希望的碰撞点,最初将框架鼻梁定位在鼻嵴点(这是进行第一次高级DBR测量的地方)。框架鼻梁z轴坐标与鼻子层坐标对应。框架鼻梁x轴位置是鼻子的平均x轴位置,使得框架鼻梁最初在鼻子上倾斜。
为了检测不希望的碰撞点,框架鼻梁位置在y轴上平移,直到表示框架鼻梁位置的坐标通过鼻子层(其与表示鼻子外表面的坐标对应,如图18中所示)。此时,存在不希望的碰撞。然后可以在x轴上左右调整框架鼻梁的位置,以确定框架与佩戴者的面颊碰撞的位置。对沿着z轴的每个位置重复该过程。类似的技术被用于确定在鼻子上是否存在眼镜框架的顶部与佩戴者的前额接触的点。通过考虑这些不希望的碰撞点,可以确定最终的框架尺寸,其确保框架不与佩戴者面部的部件接触,这将防止眼镜框架正确地坐在佩戴者的鼻子上,并且因此镜片将不会与佩戴者的瞳孔最佳地对准。
因此,通过沿着鼻子的长度进行增加数量的测量,可以更详细地确定鼻子和框架鼻梁的结构,从而可以更精确地确定碰撞位置,并且随后调整碰撞位置以适应佩戴者。
因此,先进的DBR测量在提供尺寸适合佩戴者的头部的良好适配的眼镜框架方面是至关重要的。特别地,高级DBR能够在使用中精确地预测佩戴者面部上的框架位置,这能够在使用中精确地估计镜片相对于瞳孔的位置,并且因此可以进行框架的精确调整,以便调整镜片相对于瞳孔的位置,使得镜片向佩戴者提供最佳的光学矫正。
一些鼻梁形状使得鼻子的鼻梁坐在框架上的支点位置上方。为了矫正这种效应,计算支点偏移。支点偏移是框架鼻梁应当接触鼻子的位置和框架鼻梁实际接触鼻子的位置之间的差值。每个框架具有可以被计算的支点偏移,从而使适配引擎API知道相对于坐姿(也可以称为碰撞位置)正确地将框架放置在何处。作为支点位置和支点偏移之和来计算坐姿。
在调整眼镜框架之前,需要起始点或基本框架,然后可以修改该起始点或基本框架。由于框架鼻梁是要定制的框架的重要特征,因此首先进行通用鼻梁测量,然后可以针对每个人进行定制。通用鼻梁是一般的鼻梁形状。为了提供一幅定制的框架,将通用鼻梁形状作为起始点,然后基于特定个体的面部测量来调整以适应特定个体。调整鼻梁改善了框架在佩戴者的鼻子上的坐姿,通过确保框架鼻梁由佩戴者的鼻子充分支承,使得眼镜在佩戴者的面部上稳定。特别地,可以基于从面部扫描获得的相应面部测量来调整框架鼻梁的张开角和嵴角。鼻托高度通过满足与嵴高度有关的条件来限定,例如如果嵴高度<x,则设定鼻托高度=y毫米,其中高度在y轴上测量,并且x代表跨过一般人群的嵴高度的平均值或典型值。重要的是,框架接触鼻子的部件具有大的接触表面区域,并且因此可以调整鼻托高度以确保在眼镜框架和鼻子之间具有足够的表面区域,从而使得框架在佩戴者的面部上稳定。
良好适配的框架必须将镜片保持在为特定佩戴者提供可能的最佳视力矫正的位置。因此,重要的是在框架调整过程期间考虑镜片的位置,以确保镜片光学器件对于佩戴者是最佳的。
该适配模型可应用于许多不同的镜片类型,包括单光镜片、渐进式镜片、双焦点镜片和非处方镜片。
确定镜片提供适当矫正的能力的重要测量是镜片高度。换句话说,重要的是提供镜片的光学中心相对于每个瞳孔的正确垂直放置,以便最小化像差效应和棱镜效应的影响。这样,与瞳孔中心相比的镜片高度位置通常被认为是必要的测量,以便使镜片为佩戴者提供所需的最佳矫正,尽管在实践中,在高折射率镜片和渐进式镜片/双焦点的情况下是特别重要的,后者需要精确测量“佩戴时”的镜片位置,以确保相对的镜片光焦度和镜片部分与佩戴者的瞳孔对准。
如图8中所示,通过测量镜片的镜圈的最低切线与瞳孔中心之间的y轴距离来计算镜片高度。因此,镜片高度独立于整个镜片的垂直长度,并且代表镜片的最低部件与镜片上对应于瞳孔中心的高度的点之间的距离。对每只眼睛进行单独的测量,因为对于左眼和右眼这种测量不总是相同的,因为左眼和右眼不总是在人的面部上的相同高度处。
当瞳孔与镜片的光学中心对应时,应该不会有前倾角。增加的任何镜片倾斜将改变镜片的球光焦度,并导致出现不希望的圆柱体组件。对于低光焦度镜片,光焦度效应是可以忽略的,但是对于较高光焦度镜片,这可能是相当明显的。为了避免不利地影响单光镜片的光学性能,对于光学中心在佩戴者的视线下方的每毫米,必须有2度的前倾角。例如,如图9a中所示,光学中心下降到镜片下方4mm,需要相对于面部平面的8度的前倾角。
如已经解释的,在面部和框架上进行一些测量,并且它们彼此直接相关。这些测量包括DBR、嵴高度、鼻梁高度、额角、张开角、头部宽度和太阳穴宽度。仅在面部上进行但与一个或多个框架测量直接相关的测量包括顶端半径(apical radius)和嵴角。仅在框架上进行但与一个或多个面部测量直接相关的测量包括框架上的鼻托中心之间的距离。与框架侧部相关的框架测量和它们的调整包括后倾角(let-back angle)、弯点长(length-to-bend)、弯垂长(length of drop)和侧部的总长度。
一旦已经进行了所有以上描述的测量,限定了面部测量的集合,以及已经从标准框架测量的数据库中获取了基本框架测量的集合,则执行调整框架测量以更紧密地适配佩戴者的头部的过程。
通过将佩戴者的面部测量与可用的基本框架的相应测量进行比较,并找到面部测量和框架测量之间最接近的初始匹配,来选择基本框架。
在S110,一旦已经从数据库中获取了基本框架,则通过适配模型应用适配规则,以便为特定用户调整基本框架,从而提供定制的眼镜框架,这将在下面更详细地讨论。在S112,一旦已经应用了适配规则,则就可以使用这些适配规则来限定佩戴者框架的适配推荐。在S110,适配推荐是通过应用适配条件计算的推荐的框架测量或尺寸的集合。特别地,推荐被限定为框架的样式和这些框架的尺寸,对于这些样式和尺寸,镜片相对于瞳孔的位置满足用于四个主要区域的适配条件。
现在将依次讨论包括用于向佩戴者产生推荐的框架列表的适配规则的四个主要区域。
光学中心位置
确保框架能够将镜片的光学中心定位在最佳位置,这基于:
●z轴位置,将镜片尽可能靠近眼睛放置以最大化视场,并且最小化VD对睫毛影响。
●x轴位置,将光学中心放置在瞳孔的前面,在水平中心的最小位置处。
●y轴位置,将光学中心放置在瞳孔的前面,垂直中心在HCL处或接近HCL,对渐进式镜片进行最小高度计算(通常为22.0mm)。
如图10中所示,然后可确定框架位置相对于鼻子的适配条件。
镜片尺寸
镜片的尺寸将决定框架的整体尺寸,因此是框架尺寸的适配条件的关键组成部分。
关于面部尺寸,适用的适配规则是通过比较框架的几何中心距离与佩戴者沿着轴线的瞳孔距离来限定眼镜框架相对于面部尺寸的良好适配,框架的几何中心距离应该至少与框架的几何中心距离一样大。
长度对长度(LTL)宽度也与佩戴者沿着轴线的蝶骨宽度相比较,并用作评估适配的起始点。
在图12中示出了镜片和框架宽度相对于面部的适配条件。
佩戴者可能希望根据美学或样式的考虑、受制于最大阈值(基于镜片的最大空白尺寸、重量和舒适度、或基于颊骨的相对位置的长度深度),增加镜片和框架的尺寸。
镜片角度
●保证光学中心处的前倾角为零度。
●将“佩戴时”的侧部的角度与佩戴者的倾斜度相匹配。
●为此,我们需要更精确地观察耳朵的相对位置。
参见图9。
评估正确的太阳穴长度
接下来转向耳朵区,适用于该区的适配规则是通过将框架的位置与耳朵沿着x轴的弯曲位置进行比较来限定耳朵上的良好适配。然后可以确定框架位置相对于耳朵的适配状态,如图11中所示。最佳的太阳穴长度是足够的,因此弯曲的长度至少与从镜片平面的背面到耳朵的起点在x轴上的长度一样长。
评估头部适配
●估计头部宽度、太阳穴宽度和后倾角(let back angle)。
●然后可以将框架HW估计为比测量的HW小约10mm的“补偿”测量,以提供侧向抓握。
●在从前面的平面向后25mm的侧部之间测量框架上的太阳穴宽度。
●然后,后倾可以是头部宽度和太阳穴宽度之间的计算测量,检查没有与佩戴者的头部的侧部的遮挡点。
通过依次应用这些规则中的每个,调整基本框架测量直到满足适配条件,这为佩戴者提供了更好的适配框架。然后,适配模型提供推荐的集合,包括至少一个基于优化的基本框架的推荐的眼镜框架,推荐的框架由适配条件分类。在S114,然后,佩戴者可以从推荐框架的集合中选择框架。
适配模型规则用于为最适于提供其中镜片相对于眼睛的位置对于佩戴者是最佳的框架的框架尺寸提供建议的集合。将通过计算系统100的显示屏向所讨论的佩戴者呈现框架的列表,该框架的列表包括推荐的框架以及不推荐给该用户的框架。满足所有四个主要区域(鼻子、耳朵、面部尺寸和镜片)的适配条件(例如良好和完美)的框架作为推荐的框架呈现给佩戴者。不满足四个主要区域中的任何一个的适配条件的框架被呈现给佩戴者作为不推荐的。满足至少一个适配条件但不满足至少一个其它适配条件的框架作为平均适配呈现给佩戴者。基于框架列表中的框架满足适配条件的紧密程度来对框架列表中的框架进行排序。
总之,使用适配模型规则来指导特定特制的眼镜框架的创建。调整眼镜框架的不同部件的尺寸,直到满足鼻子、耳朵、面部尺寸和镜片适配规则的所有适配条件。
在S116,一旦佩戴者选择了他们的框架,佩戴者就可以从美学的角度选择进一步定制框架。在S118,一旦佩戴者确定已经最终的框架,适配模型API就访问佩戴者上传到计算系统的处方,并且在S120,然后选择与佩戴者的处方对应的镜片。然后,在S122,适配模型API生成框架规格文件,以及在S124,生成最终框架和镜片的纸张确认。然后,在S126,将框架规格文件发送到构成佩戴者的一副眼镜的眼镜框架的制造商。
如本领域技术人员将理解的,本文中描述的任何和所有步骤可以由包括至少一个处理器和存储器的计算机来实现。面部界标地点可以例如输出到显示器,通过网络发送到另一装置或打印。在一些情况下,输出可以与其它数据结合使用,由3D打印机打印已经为用户的面部专门测量和设计的一副眼镜。
在一些示例中,本发明还可以使用上述机器学习技术来产生颜色和/或样式推荐。通常,使用与关于定位界标位置(特别是耳朵和眼睛)所描述的相同的过程来产生颜色和/或样式推荐,但是输出将是不同的。
简言之,为了产生框架样式推荐,如前所述,从在扫描数据的圆柱形投影深度图表示上操作的神经网络获得一个或多个界标位置的三维估计(例如以网格的形式)。界标位置可以包括(但不必限于)眼睛地点、眉毛地点(其可以在沿着每个眉毛的五个点处测量)、面颊地点、颚线地点(其可以在从下巴的顶点到耳朵的底部的五个点处测量)。然后,从围绕界标地点(例如,围绕界标地点5mm)的坐标数据中提取形状数据,以在每个点获得曲率估计。使用来自头部扫描的集合的示例数据作为基础,在维度上减小界标位置。这里,选择用于正在进行分析的向前传递的十个基本矢量,以便使由基本矢量所占的方差最大化。基于围绕框架的周边的多个点处的框架曲线的测量,将待制造的框架的设计减少到一组数字。使用框架设计的示例集合作为基础,在维度上降低了框架设计。神经网络对降低的维度界标位置和框架设计数据进行操作。调整神经网络以适配来自志愿者小组的示例性得分的集合。神经网络的输出是个体的框架样式(例如以数字得分的形式)。
简而言之,为了产生框架颜色推荐,获取输入数据,该输入数据包括三维坐标数据(例如,以网格的形式)和表示网格上不同点处的颜色的二维图像(例如,颜色纹理贴图)。从对扫描数据的深度图表示进行操作的神经网络获得界标位置的三维估计。通过将先前获得的三维估计投影到纹理图像上,获得纹理数据上的界标位置的二维估计。对纹理图像进行采样,以获得在每个界标点处的颜色数据。用于颜色推荐的界标点包括前额、左颊骨和右颊骨、眼睛(例如,以瞳孔为中心的5mm直径的圆)、毛发(其可以被认为是耳朵点上方20mm的点)。神经网络对所提取的颜色块和颜色的HSV值进行操作。调整该神经网络以适配来自志愿者小组的示例性得分的集合。神经网络的输出是个体的框架颜色(例如以数字得分的形式)。
附录
图5和图6示出了可以从3D头部扫描确定的许多不同的面部测量。
关于图5,可以确定以下面部测量,其中,面部测量的数量与图5中的测量的参考数字对应:
4.顶端半径,与鼻子的顶部处的弧的半径对应。
5.面部水平中心线(F-HCL),与跨过鼻子的水平线对应,其通常位于沿着下眼睑(下缘)。
6.HCL处的镜圈之间的面部距离(F-DBR),其基本上与F-HCL相同。F-DBR测量也可以在沿着鼻子的不同位置(例如在5mm、10mm和15mm处)进行,这些距离表示从F-HCL沿着鼻子向下偏移(mm)。
7.鼻嵴高度,与鼻子相对于F-HCL开始(“嵴”)的y方向上的垂直高度对应。这种测量可以被认为是鼻子相对于眼睛底部(下眼睑)开始的位置。嵴高度的顶部或峰值被称为嵴点。
8.鼻额角,也可以被认为是展开角,表示从前面的视角看鼻子如何张开或展开。这是通过找到鼻孔的外边缘与穿过鼻子的中心纵向轴线之间的角度来测量的。
9.鼻嵴角,表示鼻子从面部突出的程度(即鼻子向上或向下指向的程度)。这是通过找到连接F-HCL和鼻尖的线与垂直平面之间的角度来计算的。
10.面部弯点长,与基本上鼻梁与耳朵之间的距离对应。换句话说,这是眼镜框架的部分的距离,从框架的铰链开始,并在框架臂的弯曲开始处结束。
11.面部头部宽度,与佩戴者的头部沿着x轴的宽度对应,通常测量为佩戴者耳朵之间的距离,并在与耳朵的顶部对应的高度处测量。头部宽度在“耳朵点”之间测量,并且与框架上的每个弯曲的中点之间的距离对应。它不是头部的最宽点。框架头部宽度通常被“补偿”为比所测量的头部宽度小约10mm,以提供横向抓握。
12.面部太阳穴宽度,与在佩戴者的头部的侧部处的佩戴者的左太阳穴和右太阳穴沿着x轴的距离对应。与该测量相关的是蝶骨宽度,蝶骨宽度是在左蝶骨和右蝶骨之间(约是眉毛的边缘)沿着x轴的距离。光学标准规定了框架上的在从前面的平面向后25mm的侧部之间待测量的太阳穴宽度。
13.瞳孔距离,与每个瞳孔的中心点之间的距离对应。
接下来转到图6,示出了显著的面部标记或参考点,其被用于计算参考图5描述的测量。特别地,标记以下参考点,其中,参考点的字母与图6中的特征的附图标记对应:
●S-蝶骨,与面部太阳穴宽度和蝶骨宽度相关。
●T-太阳穴,与面部太阳穴宽度相关。
●A-耳朵弯曲点,与面部弯曲长度和面部头部宽度相关。
●I-弯曲长度。
●L.P.-瞳孔中心线,与瞳孔距离相关。
●L.C.-面部水平中心线(F-HCL),与F-HCL和F-DBR相关。
-鼻嵴角。
●i-前倾角。
●P.M.-框架的平面。
参考图13,其中示出了框架的前面,可以进行下面的框架测量,其中下面的附图标记与图13中的附图标记对应:
●CR、CL-右中心和左中心,与框架的右镜片孔径和左镜片孔径的中心点对应。
●a-水平镜片尺寸,与镜片孔径的宽度对应。
●b-垂直镜片尺寸,与镜片孔径的高度对应。
●d–镜片之间的距离(DBL),与镜片孔径的内边缘之间的距离对应。
●1-框架水平中心线(HCL),与沿着y轴的距离对应,在该y轴处画出在镜片的上边缘和下边缘的切线之间的中间的水平线。
●2R、2L-右垂直中心线、左垂直中心线,与穿过每个镜片孔径的中心点的垂直线对应。
●3-框架的前面的垂直对称轴。
●4-鼻梁宽度线,与位于HCL下方5mm处的水平基准线对应。
●5-鼻梁宽度,与沿着鼻梁宽度线测量的镜圈之间的最小距离对应。
●6-鼻梁高度,与从鼻梁宽度线到鼻梁的下边缘的距离对应并且沿着垂直对称轴测量。鼻梁高度的顶部被限定为支点位置。
●7-镜片到镜片宽度(LTL),计算为镜片宽度×2加上鼻梁宽度减1。
参考图14,其中示出了框架的侧部,可以进行下面的框架测量,其中,下面的附图标记与图14中的附图标记对应:
●1-铰链接头(例如定位螺钉)轴的轴线,其中,接头将框架臂连接到框架前面。
●2-铰链接头的中间平面。
●3-侧部的中心线,与穿过框架臂的中心纵轴的水平线对应。
●4-弯点长,与铰链接头和框架臂中的弯点之间的距离对应。
●5-弯垂长,与框架臂的延伸超过框架臂中的弯点的部件的长度对应。
●I-侧部的总长度,与尺寸4和5的总和(即,弯点长和弯垂长的总和)对应。
●X-在接头处的测量位置的详细情况。
●FTB-前面到弯点的长度,与框架前面的后平面和侧部弯点之间的距离对应。
●AC-张开角,与在框架鼻梁和穿过眼镜框架的中心的垂直平面之间形成的角对应。
参考图15,其中示出了框架的顶部,可以进行下面的框架测量,其中,下面的附图标记与图15中的附图标记对应:
●λ-后倾角,与侧部(框架臂)与穿过框架前面的法线之间的角度对应。
参考图16,其中示出了框架的眼睛区,可以进行以下框架测量:
●顶点距离(VD),有时称为后顶点距离(BVD),与瞳孔和框架的表示镜片的视点(佩戴者的眼睛的视轴线与矫正眼镜镜片的后表面相交的点)的点之间的距离对应。沿着视轴线测量顶点距离。
●前倾角,与镜片孔径相对于眼睛的水平轴的角度对应。
●镜片倾斜角(Pantoscopic angle),与框架前面相对于太阳穴的角度对应。

Claims (26)

1.一种调整用户的眼镜框架以提供定制的眼镜框架的计算机实现的方法,所述方法包括以下步骤:
接收包括表示用户的头部的三维坐标数据的输入数据;
识别所述输入数据内的多个界标地点,其中,所述界标地点与面部特征的三维位置对应;
通过计算与至少一个界标地点相关的至少一个测量,基于所述多个界标地点,确定面部测量的集合;
从框架测量的数据库中检索表示基本眼镜框架的框架测量的集合;
比较所述面部测量的集合与所述框架测量的集合;
基于所述比较,调整所述框架测量的集合中的至少一个框架测量;
输出包括所调整的框架测量的集合的数据文件;
其中,所述框架测量的集合包括镜片高度测量,并且所述调整包括:将所述镜片高度测量从初始值调整到调整值。
2.根据权利要求1所述的方法,其中,所述面部测量的集合包括表示鼻子的3D结构的多个鼻测量。
3.根据权利要求2所述的方法,其中,所述多个鼻测量包括多个镜圈之间距离DBR测量,其中,在沿着所述鼻子的长度的不同y轴地点处进行每个DBR测量。
4.根据权利要求2或权利要求3所述的方法,其中,所述多个鼻测量通过以下步骤获得:
在第一y坐标处沿着x轴进行射线投射,以获取鼻坐标数据,并且将所述鼻坐标数据存储在鼻数据集中;
将所述第一y坐标按间隔调整为第二y坐标,并且在所述第二y坐标处沿着所述x轴进行射线投射,以获取附加的鼻坐标数据,并且将所述附加的鼻坐标数据存储在所述鼻数据集中;
从所述鼻数据库中检索所述鼻坐标数据;
检索框架鼻梁数据;
比较所述鼻坐标数据与所述框架鼻梁数据;
确定所述鼻坐标数据和所述框架鼻梁数据之间的重叠区域的尺寸;
如果所述重叠的尺寸小于阈值,则调整至少一个框架测量。
5.根据前述权利要求中任一项所述的方法,其中,所述比较包括:将所述框架测量的集合映射到所述面部测量的集合上,并且识别需要调整的框架测量的子集。
6.根据权利要求5所述的方法,其中,所述调整包括:调整所述框架测量的子集。
7.根据权利要求5或权利要求6所述的方法,其中,所述框架测量的子集包括与所述眼镜框架的鼻梁有关的至少一个框架测量。
8.根据权利要求5至7中任一项所述的方法,其中,所述框架测量的子集包括与所述眼镜框架内的镜片部分的位置有关的至少一个测量。
9.根据前述权利要求中任一项所述的方法,其中,调整所述镜片高度测量包括:分别调整与所述用户的左瞳孔相关的镜片高度测量以及与所述用户的右瞳孔相关的镜片高度测量。
10.根据前述权利要求中任一项所述的方法,其中,调整所述至少一个框架测量包括:将至少一个适配规则应用于所述框架测量,并且调整所述至少一个框架测量,使得所述框架测量满足至少一个适配条件。
11.根据权利要求10所述的方法,其中,所述调整包括:将多个适配规则应用于所述框架测量,并且调整所述框架测量,使得所述框架测量满足多个适配条件。
12.根据权利要求11所述的方法,其中,所述多个适配规则与鼻子区、耳朵区、面部尺寸区和晶状体区对应。
13.一种计算机系统,所述计算机系统配置为调整用户的眼镜框架以提供定制的眼镜框架,所述计算机系统包括:
接收模块,配置为接收包括表示用户的头部的三维坐标数据的输入数据;
处理器,配置为:
识别所述输入数据内的多个界标地点,其中,所述界标地点与面部特征的三维位置对应;
通过计算与至少一个界标地点相关的至少一个测量,基于所述多个界标地点,确定面部测量的集合;
检索模块,配置为从框架测量的数据库中检索表示基本眼镜框架的框架测量的集合;
所述处理器还配置为:
比较所述面部测量的集合与所述框架测量的集合;
基于所述比较,调整所述框架测量的集合中的至少一个框架测量;
输出包括所调整的框架测量的集合的数据文件;
其中,所述框架测量的集合包括镜片高度测量,并且所述调整包括:将所述镜片高度测量从初始值调整到调整值。
14.根据权利要求13所述的计算机系统,还包括扫描模块,所述扫描模块配置为扫描用户的头部并且生成输入数据,并且还配置为将所述输入数据发送到所述接收模块。
15.根据权利要求14所述的计算机系统,其中,所述扫描系统包括相机和信号发射器,其中,所述信号发射器配置为在所述用户的头部处发射多个信号,并且所述相机配置为检测所发射的信号。
16.根据权利要求15所述的计算机系统,其中,所述信号发射器包括红外发射器,并且所述相机包括红外相机。
17.根据权利要求14所述的计算机系统,其中,所述扫描模块包括LiDAR相机。
18.一种包括指令的计算机程序,当所述指令由计算机执行时,所述计算机程序使所述计算机执行根据权利要求1至12中任一项所述的方法。
19.一种计算机可读数据载体,其上存储有根据权利要求18所述的计算机程序。
20.一种处理图像数据以估计面部特征的地点的计算机实现的方法,包括以下步骤:
接收包括表示用户的头部的三维坐标数据的输入图像数据;
预处理所述输入图像数据,以产生预处理的输入数据集;
将预处理的数据集输入到第一神经网络中,并且输出第一结果,其中,所述第一结果包括表示面部特征的地点的第一估计的三维坐标数据;
处理所述第一结果以产生处理的输入数据集;
将所述处理的输入数据集输入到第二神经网络中,并且输出第二结果,其中,所述第二结果包括表示面部特征的地点的第二估计的三维坐标数据,并且其中,所述第二结果不同于所述第一结果。
21.根据权利要求20所述的计算机实现的方法,其中,所述预处理包括:
对所述输入图像数据进行采样以产生第一采样数据集,其中,所述输入图像数据还包括颜色纹理贴图,并且所述采样包括:对所述输入图像数据的位置和颜色进行采样;以及
降低所述第一采样数据集的维度,以产生第一降低的数据集。
22.根据权利要求20或21所述的计算机实现的方法,其中,所述处理包括:
对所述第一结果进行采样以产生第二采样数据集,其中,所述采样包括:对所述第一结果的位置和颜色进行采样;
降低所述第二采样数据集的维度,以产生第二降低的数据集。
23.根据权利要求20至22中任一项所述的方法,其中,所述面部特征包括耳朵。
24.根据权利要求20至22中任一项所述的方法,其中,所述面部特征包括瞳孔。
25.一种训练分类器的方法,所述分类器用于使用图像数据来定位面部特征,所述方法包括:
生成第一训练数据集,其中,所述第一训练数据集包括多个头部扫描图像;
使用所述第一训练数据集训练第一神经网络,所述训练包括以下步骤:
选择所述第一训练数据集的第一子集,并且使用所述子集训练所述第一神经网络;
使用所述第一训练数据集的第二子集确定所述第一神经网络的精确性,其中,所述第一训练数据集的所述第二子集包括不形成所述第一子集的部分的头部扫描图像;
使用所述第一训练数据集迭代地训练所述第一神经网络;以及
当观察到的连续迭代的输出之间的差值小于第一阈值时,结束训练所述第一神经网络;
输出所述第一神经网络的结果,其中,所述输出表示所述面部特征的地点的第一估计,所述面部特征的所述地点的所述第一估计包括所述面部特征的所述地点的所述第一估计的三维坐标和颜色纹理数据;
生成第二训练数据集,其中,所述第二训练数据集包括来自所述第一训练数据集的每个头部扫描图像的选定部分,所述选定部分以所述面部特征的所述地点的所述第一估计的所述三维坐标为中心;
使用所述第二训练数据集训练第二神经网络,所述训练包括以下步骤:
计算表示所述第一神经网络的误差的残差的集合;
选择所述第二训练数据集的第一子集,并且使用所述子集训练所述第二神经网络;
使用所述第二训练数据集的第二子集确定所述第二神经网络的精确性,其中,所述第二训练数据集的所述第二子集包括不形成所述第一子集的部分的数据;
使用所述第二训练数据集迭代地训练所述第二神经网络;以及
当观察到的连续迭代的输出之间的差值小于第二阈值时,结束训练所述第二神经网络;
输出所述第二神经网络的结果,其中,所述输出表示所述面部特征的地点的第二估计,所述面部特征的所述地点的所述第二估计包括所述面部特征的所述地点的所述第二估计的三维坐标和颜色纹理数据。
26.根据权利要求25所述的方法,其中,通过观察手动执行的面部地点标记,并且用所述面部特征的三维位置坐标和颜色纹理贴图值注释多个面部扫描,生成所述第一训练数据集。
CN202280011585.XA 2021-01-11 2022-01-11 框架调整系统 Pending CN116964513A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB2100314.0 2021-01-11
GBGB2100314.0A GB202100314D0 (en) 2021-01-11 2021-01-11 Frame adjustment systems
PCT/GB2022/050051 WO2022148978A2 (en) 2021-01-11 2022-01-11 Frame adjustment system

Publications (1)

Publication Number Publication Date
CN116964513A true CN116964513A (zh) 2023-10-27

Family

ID=74667690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280011585.XA Pending CN116964513A (zh) 2021-01-11 2022-01-11 框架调整系统

Country Status (6)

Country Link
US (1) US20240061278A1 (zh)
EP (2) EP4275092A2 (zh)
JP (1) JP2024502381A (zh)
CN (1) CN116964513A (zh)
GB (1) GB202100314D0 (zh)
WO (1) WO2022148978A2 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220390771A1 (en) * 2021-06-07 2022-12-08 Blink Technologies Inc. System and method for fitting eye wear
US20230252745A1 (en) * 2022-02-09 2023-08-10 Google Llc Validation of modeling and simulation of virtual try-on of wearable device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3016052B1 (fr) * 2014-01-02 2018-03-30 Essilor International Procede de determination d'une definition geometrique d'un equipement optique personnalise
US9400922B2 (en) * 2014-05-29 2016-07-26 Beijing Kuangshi Technology Co., Ltd. Facial landmark localization using coarse-to-fine cascaded neural networks
WO2016164859A1 (en) * 2015-04-10 2016-10-13 Bespoke, Inc. Systems and methods for creating eyewear with multi-focal lenses
JP6754619B2 (ja) * 2015-06-24 2020-09-16 三星電子株式会社Samsung Electronics Co.,Ltd. 顔認識方法及び装置
ES2604806B1 (es) * 2016-03-03 2018-07-25 Horizons Optical S.L.U. Procedimiento de pedido de gafas y procedimientos de fabricación y suministro y dispositivo correspondientes
EP3410178A1 (de) * 2017-06-01 2018-12-05 Carl Zeiss Vision International GmbH Verfahren, vorrichtung und computerprogramm zum virtuellen anpassen einer brillenfassung
ES2753645T3 (es) * 2017-07-06 2020-04-13 Zeiss Carl Vision Int Gmbh Procedimiento, dispositivo y programa informático para la adaptación virtual de una montura de gafas
US20190286885A1 (en) * 2018-03-13 2019-09-19 Kneron Inc. Face identification system for a mobile device
US10825260B2 (en) * 2019-01-04 2020-11-03 Jand, Inc. Virtual try-on systems and methods for spectacles
CN109949412B (zh) * 2019-03-26 2021-03-02 腾讯科技(深圳)有限公司 一种三维对象重建方法和装置

Also Published As

Publication number Publication date
EP4379679A2 (en) 2024-06-05
EP4275092A2 (en) 2023-11-15
US20240061278A1 (en) 2024-02-22
GB202100314D0 (en) 2021-02-24
JP2024502381A (ja) 2024-01-18
WO2022148978A3 (en) 2022-09-01
WO2022148978A2 (en) 2022-07-14

Similar Documents

Publication Publication Date Title
KR102056333B1 (ko) 안경 렌즈 에지의 표시를 설정하기 위한 방법 및 장치 및 컴퓨터 프로그램
CN111031893B (zh) 用于确定与眼科装置相关联的至少一个参数的方法
US10201273B2 (en) Method for determining ocular measurements using a consumer sensor
US8690326B2 (en) Method and systems for measuring interpupillary distance
CN113678055B (zh) 眼镜镜片的至少一个光学参数的确定
JP6625976B2 (ja) 累進眼科用レンズの少なくとも1つの光学的設計パラメータを判断する方法
JP6232287B2 (ja) 累進焦点眼鏡用レンズを選択する方法
EP4379679A2 (en) Frame adjustment system
US9110312B2 (en) Measurement method and equipment for the customization and mounting of corrective ophthalmic lenses
US11313759B2 (en) Method and device for measuring the local refractive power and/or the refractive power distribution of a spectacle lens
US11707191B2 (en) Calibration and image procession methods and systems for obtaining accurate pupillary distance measurements
US20230020160A1 (en) Method for determining a value of at least one geometrico-morphological parameter of a subject wearing an eyewear
KR102444768B1 (ko) 안경 렌즈의 국부적 굴절력 및/또는 굴절력 분포를 측정하기 위한 방법 및 장치
US10831042B2 (en) System and method for obtaining and utilizing measurements to enable customized eyewear to be purchased online
US20220390771A1 (en) System and method for fitting eye wear
US20230221585A1 (en) Method and device for automatically determining production parameters for a pair of spectacles
JP6533925B2 (ja) レンズ装着情報の算出方法、同算出方法を実行するための電子システム及び同電子システムに使用するプログラム
CN116830152A (zh) 用于检测和跟踪视频流中戴着一副眼镜的个体的面部的方法
CN114730102A (zh) 用于确定眼科镜片相对于配戴者参考系的配适位置的方法和系统以及用于确定眼科镜片的镜片设计的方法
KR20200141230A (ko) 스테레오 비전을 이용한 안경 제작용 인체 데이터 측정장치

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