US 12,148,115 B2
Entirely virtual process for optometric values measurements
Cristian Cascetta, Milan (IT); Fabio Mazzarella, Busto Arsizio (IT); Luca Mazzocchi, Legnano (IT); Kamal Fahmy Salama, Monza (IT); Filippo Bruno, Milan (IT); Federico Ciuffolini, Pesaro (IT); and Luca Moroni, Saronno (IT)
Assigned to LUXOTTICA GROUP S.P.A., Milan (IT)
Filed by LUXOTTICA GROUP S.P.A., Milan (IT)
Filed on Nov. 23, 2022, as Appl. No. 17/993,427.
Claims priority of application No. 102021000030014 (IT), filed on Nov. 26, 2021.
Prior Publication US 2023/0169742 A1, Jun. 1, 2023
Int. Cl. G06T 19/20 (2011.01); G02C 13/00 (2006.01)
CPC G06T 19/20 (2013.01) [G02C 13/003 (2013.01); G06T 2219/2004 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A computer-implemented method for measuring optometric values and for manipulating a glasses frame (100) implemented in an electronic computer comprising at least one processor for performing operations and at least one memory for storing data, wherein said process (100) comprises: a process of loading (200) a virtual model of a head (20) of a person into said at least one memory comprising, a calculation process (202) of said virtual head (20) which comprises: an operation of making said virtual model of said virtual head (20) comprising a grid of a plurality of head grid points (21), an iterative calculation operation identifying a multiplicity of head anchor points (22) chosen among the plurality of head grid points (21) of the virtual head (20), a calculation operation of a plurality of normal vectors (23) which in correspondence of each head anchor point (22) of the plurality of head anchor points (22) identifies a geometric plane interpolating a portion of a real head of a person and calculates a normal vector (23) which is perpendicular with respect to said geometric plane, a process of loading (300) a virtual glasses frame (10) into said at least one memory, wherein said virtual frame (10) comprises a three-dimensional grid defined by a plurality of glasses grid points (11) comprising a plurality of glasses anchor points (12), a process for positioning (400) the virtual glasses frame (10) on the virtual head (20) which is an iterative process providing that said at least one processor iteratively calculates a plurality of positioning data of a position of the virtual glasses frame (10) with respect to the virtual head (20) until positioning data of a predefined accuracy are obtained, a process of storing (500) said positioning data of predefined accuracy in said at least one memory, a process for calculating (600) the optometric quantities providing that said at least one processor processes the predefined accuracy positioning data and calculates the optometric quantities, wherein said optometric quantities are suitable for obtaining data for making eyeglass wherein positioning (400) the virtual glasses frame (10) on the virtual head (20) further comprises: inputting, into a neural network, previously generated virtual models of glasses (10) having glasses anchor points coupled to previously generated virtual models of heads (20) having head anchor points and mapping the glasses anchor points to the head anchor points;
training the neural network to determine correct fits of the previously generated virtual models of glasses (10) with respect to the previously generated virtual models of heads (20); training the neural network to learn optimal glasses anchor points and optimal head anchor points in response to determining each of the correct fits; and
performing the process of positioning (400) to align the virtual glasses frame (10) on the virtual head (20) by minimizing a distance between the optimal glasses anchor points of the virtual glasses (10) and the optimal head anchor points of the virtual head.