IP Library › Granted Patent US 12,482,208
Granted Patent B2
US 12,482,208 · App. 18/325,868 · Granted Nov 25, 2025

Mirroring 3D assets for virtual experiences

Inventors: Avihay Assouline (Tel Aviv, IL); Itamar Berger (Hod Hasharon, IL); Gal Dudovitch (Tel Aviv, IL); Peleg Harel (Ramat Gan, IL)
Assignee: Snap Inc.
G06T19/20G06T7/0002G06T7/10G06T2207/20021G06T2207/20081G06T2207/20084G06T2207/30168G06T2210/12G06T2210/16G06T2219/2016
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,482,208
App. No.
18/325,868
Filed
May 30, 2023
Granted
Nov 25, 2025
Kind
B2
Art Unit
2616
USPC
345/419
Abstract

Methods and systems are disclosed for generating mirrored 3D assets for an extended reality (XR) experience. The system receives a three-dimensional (3D) object comprising a target and analyzes the 3D object using one or more machine learning models to generate data associated with a mirrored version of the target of the 3D object. The system applies the mirrored version of the target to a mirrored version of the 3D object using the generated data and generates a new 3D object comprising the mirrored version of the 3D object and the mirrored version of the target.

Claims (69)

1 . A method comprising:

receiving a three-dimensional (3D) object comprising a target;

analyzing the 3D object using one or more machine learning models to generate data associated with a mirrored version of the target of the 3D object, the one or more machine learning models comprising a convolutional neural network trained by performing training operations comprising:

accessing training data comprising a training pair of fashion items including a training fashion item and a ground truth mirrored version of the training fashion item;

analyzing the training fashion item to estimate a mirrored version of the training fashion item;

computing a deviation between the estimated mirrored version of the training fashion item and the ground truth mirrored version of the training fashion item; and

updating one or more parameters of the convolutional neural network based on the computed deviation;

applying the mirrored version of the target to a mirrored version of the 3D object using the generated data; and

generating a new 3D object comprising the mirrored version of the 3D object and the mirrored version of the target.

2 . The method of claim 1 , wherein the 3D object and the mirrored version of the 3D object represent a pair of fashion items, and wherein the target and the mirrored version of the target comprise one or more graphical elements or text on the pair of fashion items.

3 . The method of claim 1 , further comprising:

extracting the 3D object from an image; and

generating the mirrored version of the 3D object from the extracted 3D object, wherein the 3D object comprises a first virtual or real-world object and the mirrored version of the 3D object comprises a second virtual object, wherein the mirrored version of the 3D object is separately generated from the generated data associated with the mirrored version of the target.

4 . The method of claim 3 , further comprising:

identifying a first bounding box of the 3D object that includes the target;

determining a second bounding box in the mirrored version of the 3D object that corresponds to the first bounding box; and

replacing visual content in the second bounding box with the mirrored version of the 3D object to generate the mirrored version of the 3D object comprising the mirrored version of the target.

5 . The method of claim 1 , further comprising:

applying a first machine learning model to the 3D object to identify a bounding box comprising the target; and

applying a second machine learning model to generate a segmentation of the target in the bounding box, the segmentation distinguishing pixels in the 3D object of the bounding box of the target from other pixels in the bounding box.

6 . The method of claim 5 , further comprising:

applying a flip transformation to the segmentation of the target in the bounding box, the flip transformation flipping the segmentation of the target around a flipping axis of the bounding box thereby to generate a flipped segmentation of the target.

7 . The method of claim 6 , further comprising:

blending pixels of the flipped segmentation of the target to a specified portion of the mirrored version of the 3D object.

8 . The method of claim 7 , wherein the pixels of the flipped segmentation are blended to the specified portion while preserving original texture features of the mirrored version of the 3D object.

9 . The method of claim 7 , wherein the pixels are blended according to at least one of Poisson blending techniques or a blending map.

10 . The method of claim 7 , further comprising:

after blending the pixels, identifying an area in the mirrored version of the 3D object with unknown pixel values; and

applying inpainting techniques to populate the unknown pixel values with predicted values.

11 . The method of claim 1 , further comprising:

analyzing the 3D object comprising the target and the mirrored version of the 3D object comprising the mirrored version of the target with a quality control machine learning model to generate a score representing match accuracy between the mirrored version of the object comprising the mirrored version of the target and the 3D object comprising the target.

12 . The method of claim 11 , wherein the quality control machine learning model comprises a discriminator trained by performing training operations comprising:

analyzing the training pair of fashion items using the discriminator to generate a prediction indicative of whether the mirrored version of the training fashion item is a real mirrored version of the training fashion item or a fake mirrored version of the training fashion item;

accessing ground truth labels for the training pair of fashion items indicating whether the mirrored version of the training fashion item is real or fake; and

updating one or more parameters of the discriminator based on accuracy of the prediction in relation to the ground truth labels.

13 . The method of claim 12 , further comprising:

accessing a plurality of 3D objects representing pairs of fashion items;

selecting a subset of the plurality of 3D objects;

adding noise to an individual fashion item of each pair of fashion items in the subset of the plurality of 3D objects;

associating a first set of ground truth labels for each of the subset of the plurality of 3D objects indicating that the mirrored version of the fashion item in each of the subset of the plurality of 3D objects is fake; and

associating a second set of ground truth labels for each of the plurality of 3D objects outside of the subset of the plurality of 3D objects indicating that the mirrored version of the fashion item in each of the plurality of 3D objects outside of the subset of the plurality of 3D objects is real.

14 . The method of claim 1 , further comprising:

generating an extended reality (XR) experience using the 3D object and the new 3D object.

15 . The method of claim 1 , further comprising:

generating an artificial image depicting the mirrored version of the 3D object, the artificial image being modified using at least a portion of the new 3D object.

16 . The method of claim 1 , further comprising repeating the training operations for additional training data until a stopping criterion is met.

17 . The method of claim 1 , wherein the convolutional neural network is trained to establish a relationship between mapping of pixels in a first fashion item in a first pair of fashion items to pixels in a second fashion item in the first pair of fashion items.

18 . A system comprising:

at least one processor; and

at least one memory component having instructions stored thereon that, when executed by the at least one processor, cause the at least one processor to perform operations comprising:

receiving a three-dimensional (3D) object comprising a target;

analyzing the 3D object using one or more machine learning models to generate data associated with a mirrored version of the target of the 3D object, the one or more machine learning models comprising a convolutional neural network trained by performing training operations comprising:

accessing training data comprising a training pair of fashion items including a training fashion item and a ground truth mirrored version of the training fashion item;

analyzing the training fashion item to estimate a mirrored version of the training fashion item;

computing a deviation between the estimated mirrored version of the training fashion item and the ground truth mirrored version of the training fashion item; and

updating one or more parameters of the convolutional neural network based on the computed deviation;

applying the mirrored version of the target to a mirrored version of the 3D object using the generated data; and

generating a new 3D object comprising the mirrored version of the 3D object and the mirrored version of the target.

19 . A non-transitory computer-readable storage medium having stored thereon instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising:

receiving a three-dimensional (3D) object comprising a target;

analyzing the 3D object using one or more machine learning models to generate data associated with a mirrored version of the target of the 3D object, the one or more machine learning models comprising a convolutional neural network trained by performing training operations comprising:

accessing training data comprising a training pair of fashion items including a training fashion item and a ground truth mirrored version of the training fashion item;

analyzing the training fashion item to estimate a mirrored version of the training fashion item;

computing a deviation between the estimated mirrored version of the training fashion item and the ground truth mirrored version of the training fashion item; and

updating one or more parameters of the convolutional neural network based on the computed deviation;

applying the mirrored version of the target to a mirrored version of the 3D object using the generated data; and

generating a new 3D object comprising the mirrored version of the 3D object and the mirrored version of the target.

20 . The non-transitory computer-readable storage medium of claim 19 , the operations comprising:

presenting a virtual object comprising the new 3D object in an augmented reality experience.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2023
From: ASSOULINE, AVIHAY; BERGER, ITAMAR; DUDOVITCH, GAL; HAREL, PELEG
To: SNAP INC.
Reel/Frame 063800/0037 →
Continuity (1)
Related Publication 20240404224A1 · Dec 5, 2024
References Cited (222)
US 8762852B2 · Davis et al. · 2014 [cited by applicant]
US 8849259B2 · Rhoads et al. · 2014 [cited by applicant]
US 8886206B2 · Lord et al. · 2014 [cited by applicant]
US 8945328B2 · Longinotti-buitoni et al. · 2015 [cited by applicant]
US 8948839B1 · Longinotti-buitoni et al. · 2015 [cited by applicant]
US 9008353B2 · Aller · 2015 [cited by applicant]
US 9105083B2 · Rhoads et al. · 2015 [cited by applicant]
US 9165318B1 · Pauley et al. · 2015 [cited by applicant]
US 9185361B2 · Curry · 2015 [cited by applicant]
US 9218530B2 · Davis et al. · 2015 [cited by applicant]
US 9225822B2 · Davis et al. · 2015 [cited by applicant]
US 9240021B2 · Rodriguez · 2016 [cited by applicant]
US 9254099B2 · Connor · 2016 [cited by applicant]
US 9259465B2 · Gendelman et al. · 2016 [cited by applicant]
US 9271133B2 · Rodriguez · 2016 [cited by applicant]
US 9282893B2 · Longinotti-buitoni et al. · 2016 [cited by applicant]
US 9354778B2 · Cornaby et al. · 2016 [cited by applicant]
US 9442100B2 · Connor · 2016 [cited by applicant]
US 9529385B2 · Connor · 2016 [cited by applicant]
US 9536449B2 · Connor · 2017 [cited by applicant]
US 9547873B2 · Rhoads · 2017 [cited by applicant]
US 9610476B1 · Tran et al. · 2017 [cited by applicant]
US 9916010B2 · Harris et al. · 2018 [cited by applicant]
US 9918183B2 · Rhoads et al. · 2018 [cited by applicant]
US 9977496B2 · Maltz · 2018 [cited by applicant]
US 10150487B2 · Cylvick · 2018 [cited by applicant]
US 10213700B2 · Cylvick · 2019 [cited by applicant]
US 10223710B2 · Purves et al. · 2019 [cited by applicant]
US 10235807B2 · Thomas et al. · 2019 [cited by applicant]
US 10262356B2 · Davis et al. · 2019 [cited by applicant]
US 10270896B2 · Rhoads · 2019 [cited by applicant]
US 10462898B2 · Longinotti-buitoni et al. · 2019 [cited by applicant]
US 10474226B2 · Nishizawa et al. · 2019 [cited by applicant]
US 10528130B2 · Maltz · 2020 [cited by applicant]
US 10534900B2 · Cheong et al. · 2020 [cited by applicant]
US 10638938B1 · Tzvieli et al. · 2020 [cited by applicant]
US 10699108B1 · Hansen · 2020 [cited by applicant]
US 10806982B2 · Wrigg · 2020 [cited by applicant]
US 10902602B1 · Mansi · 2021 [cited by examiner]
US 10963735B2 · Rhoads · 2021 [cited by applicant]
US 10991067B2 · Appleboim et al. · 2021 [cited by applicant]
US 11173376B2 · Janssen · 2021 [cited by applicant]
US 11295318B2 · Andon et al. · 2022 [cited by applicant]
US 11328032B1 · Kwok et al. · 2022 [cited by applicant]
US 11382383B2 · Guard et al. · 2022 [cited by applicant]
US 11425220B2 · Grozdanov et al. · 2022 [cited by applicant]
US 11494569B2 · Espinosa · 2022 [cited by applicant]
US 11494995B2 · Berkebile · 2022 [cited by applicant]
US 11553754B2 · Andon et al. · 2023 [cited by applicant]
US 11567644B2 · Walkin et al. · 2023 [cited by applicant]
US 11580592B2 · Berger et al. · 2023 [cited by applicant]
US 11633660B2 · Putnam et al. · 2023 [cited by applicant]
US 11636654B2 · Berger et al. · 2023 [cited by applicant]
US 11762622B1 · Olsen · 2023 [cited by examiner]
US 20020004763A1 · Lam · 2002 [cited by applicant]
US 20030057343A1 · Jacobs · 2003 [cited by applicant]
US 20070156625A1 · Visel · 2007 [cited by applicant]
US 20070282765A1 · Visel et al. · 2007 [cited by applicant]
US 20120154633A1 · Rodriguez · 2012 [cited by applicant]
US 20130024364A1 · Shrivastava et al. · 2013 [cited by applicant]
US 20130166332A1 · Hammad · 2013 [cited by applicant]
US 20130249791A1 · Pryor · 2013 [cited by applicant]
US 20130290106A1 · Bradley et al. · 2013 [cited by applicant]
US 20150012426A1 · Purves et al. · 2015 [cited by applicant]
US 20150040074A1 · Hofmann et al. · 2015 [cited by applicant]
US 20150070347A1 · Hofmann et al. · 2015 [cited by applicant]
US 20150126873A1 · Connor · 2015 [cited by applicant]
US 20150286873A1 · Davis et al. · 2015 [cited by applicant]
US 20150370320A1 · Connor · 2015 [cited by applicant]
US 20160034764A1 · Connor · 2016 [cited by applicant]
US 20160088284A1 · Sareen et al. · 2016 [cited by applicant]
US 20160203634A1 · Vesely · 2016 [cited by applicant]
US 20160247017A1 · Sareen et al. · 2016 [cited by applicant]
US 20160294225A1 · Blum et al. · 2016 [cited by applicant]
US 20170011602A1 · Brav et al. · 2017 [cited by applicant]
US 20170127196A1 · Blum et al. · 2017 [cited by applicant]
US 20170161811A1 · Fish et al. · 2017 [cited by applicant]
US 20170173262A1 · Veltz · 2017 [cited by applicant]
US 20170206691A1 · Harrises · 2017 [cited by examiner]
US 20170236006A1 · Davis et al. · 2017 [cited by applicant]
US 20170242477A1 · Rubin et al. · 2017 [cited by applicant]
US 20170372525A1 · Rosenthal et al. · 2017 [cited by applicant]
US 20180067516A1 · Longinotti-buitoni et al. · 2018 [cited by applicant]
US 20180325422A1 · Sokol et al. · 2018 [cited by applicant]
US 20190030230A1 · Connor · 2019 [cited by applicant]
US 20190179861A1 · Goldenstein et al. · 2019 [cited by applicant]
US 20200014848A1 · Gove · 2020 [cited by applicant]
US 20200184547A1 · Andon et al. · 2020 [cited by applicant]
US 20200234380A1 · Dulori · 2020 [cited by applicant]
US 20200305739A1 · Getman · 2020 [cited by applicant]
US 20200322868A1 · Claffey et al. · 2020 [cited by applicant]
US 20200327538A1 · Shrivastava · 2020 [cited by applicant]
US 20210022924A1 · Saladino · 2021 [cited by applicant]
US 20210103449A1 · Terpstra et al. · 2021 [cited by applicant]
US 20210106281A1 · Tran · 2021 [cited by applicant]
US 20210133160A1 · Craft · 2021 [cited by applicant]
US 20210136681A1 · Mai et al. · 2021 [cited by applicant]
US 20210195732A1 · Longinotti-buitoni et al. · 2021 [cited by applicant]
US 20210241607A1 · Rhoads et al. · 2021 [cited by applicant]
US 20210248831A1 · Tate-gans et al. · 2021 [cited by applicant]
US 20210338631A1 · Mong et al. · 2021 [cited by applicant]
US 20210383124A1 · Imes · 2021 [cited by applicant]
US 20210386964A1 · Youngblood et al. · 2021 [cited by applicant]
US 20220062622A1 · Errico et al. · 2022 [cited by applicant]
US 20220091225A1 · Mai et al. · 2022 [cited by applicant]
US 20220129515A1 · Shribman et al. · 2022 [cited by applicant]
US 20220207119A1 · Andon et al. · 2022 [cited by applicant]
US 20220237914A1 · Anvaripour et al. · 2022 [cited by applicant]
US 20220258049A1 · Kanani · 2022 [cited by applicant]
US 20220288382A1 · Daniels · 2022 [cited by applicant]
US 20220300093A1 · Jorasch et al. · 2022 [cited by applicant]
US 20220301231A1 · Elrinberg et al. · 2022 [cited by applicant]
US 20220323745A1 · Staats et al. · 2022 [cited by applicant]
US 20220400202A1 · Imes · 2022 [cited by applicant]
US 20230088075A1 · Buck · 2023 [cited by applicant]
US 20230098246A1 · Simpson · 2023 [cited by applicant]
US 20230125390A1 · Noris et al. · 2023 [cited by applicant]
US 20230137222A1 · D'ambrosio-correll et al. · 2023 [cited by applicant]
US 20230152906A1 · Jorasch et al. · 2023 [cited by applicant]
US 20230156319A1 · Gove · 2023 [cited by applicant]
US 20240144516A1 · Cesa · 2024 [cited by examiner]
AU 2012279054B2 · 2016 [cited by applicant]
AU 2016203811B2 · 2017 [cited by applicant]
AU 2020239774A1 · 2020 [cited by applicant]
AU 2020275846A1 · 2022 [cited by applicant]
BR PI0622106A2 · 2011 [cited by applicant]
BR 112021007800A2 · 2021 [cited by applicant]
CA 1151508A · 1983 [cited by applicant]
CA 1151980A · 1983 [cited by applicant]
CA 1152865A · 1983 [cited by applicant]
CA 2164581A1 · 1996 [cited by applicant]
CA 2166977C · 2006 [cited by applicant]
CA 2689757A1 · 2009 [cited by applicant]
CA 2758819A1 · 2010 [cited by applicant]
CA 2797151A1 · 2014 [cited by applicant]
CA 2734613C · 2020 [cited by applicant]
CN 104049576A · 2014 [cited by applicant]
CN 205896649U · 2017 [cited by applicant]
CN 107111131A · 2017 [cited by applicant]
CN 104067318B · 2017 [cited by applicant]
CN 105527784B · 2019 [cited by applicant]
CN 109313486A · 2019 [cited by applicant]
CN 110209309A · 2019 [cited by applicant]
CN 105389107B · 2019 [cited by applicant]
CN 108133742B · 2020 [cited by applicant]
CN 112292170A · 2021 [cited by applicant]
CN 113226448A · 2021 [cited by applicant]
CN 109076246B · 2021 [cited by applicant]
CN 113924413A · 2022 [cited by applicant]
CN 110975171B · 2022 [cited by applicant]
CN 115699715A · 2023 [cited by applicant]
CN 115793858 · 2023 [cited by applicant]
CN 115803723A · 2023 [cited by applicant]
CN 115808989A · 2023 [cited by applicant]
CN 115843368 · 2023 [cited by applicant]
CN 115857689A · 2023 [cited by applicant]
CN 115933911A · 2023 [cited by applicant]
CN 111372544B · 2023 [cited by applicant]
DE 1961966A1 · 1970 [cited by applicant]
EP 2560145A2 · 2013 [cited by applicant]
EP 3444815B1 · 2020 [cited by applicant]
EP 3629825A1 · 2020 [cited by applicant]
EP 4058987A1 · 2022 [cited by applicant]
EP 4150299A1 · 2023 [cited by applicant]
EP 4150601A1 · 2023 [cited by applicant]
FR 3020153A1 · 2015 [cited by applicant]
GB 2060719A · 1981 [cited by applicant]
JP 6054870B2 · 2016 [cited by applicant]
JP 2018511450A · 2018 [cited by applicant]
JP 2018091882A · 2018 [cited by applicant]
JP 2019095813A · 2019 [cited by applicant]
JP 2019149202A · 2019 [cited by applicant]
JP 2020096870A · 2020 [cited by applicant]
JP 6996115B2 · 2021 [cited by applicant]
JP 2022537574A · 2022 [cited by applicant]
KR 20150123645A · 2015 [cited by applicant]
KR 20170002916A · 2017 [cited by applicant]
KR 101796008B1 · 2017 [cited by applicant]
KR 20170130125A · 2017 [cited by applicant]
KR 20180012794A · 2018 [cited by applicant]
KR 20210064263A · 2021 [cited by applicant]
KR 20220032521A · 2022 [cited by applicant]
KR 102425958B1 · 2022 [cited by applicant]
KR 20230059828A · 2023 [cited by applicant]
MX 2008008625A · 2009 [cited by applicant]
RU 2745429C2 · 2021 [cited by applicant]
TW I275997B · 2007 [cited by applicant]
TW 200911822A · 2009 [cited by applicant]
TW I355952B · 2012 [cited by applicant]
TW 201209772A · 2012 [cited by applicant]
TW I642252B · 2018 [cited by applicant]
TW 202023490A · 2020 [cited by applicant]
TW 202307621A · 2023 [cited by applicant]
WO WO2007092795A2 · 2007 [cited by applicant]
WO WO2013044175A1 · 2013 [cited by applicant]
WO WO2013049329A1 · 2013 [cited by applicant]
WO WO2014011691A1 · 2014 [cited by applicant]
WO WO2016009277A1 · 2016 [cited by applicant]
WO WO2016179654A1 · 2016 [cited by applicant]
WO WO2017072595A1 · 2017 [cited by applicant]
WO WO2017127571 · 2017 [cited by examiner]
WO WO2017192888A1 · 2017 [cited by applicant]
WO WO2019075185A1 · 2019 [cited by applicant]
WO WO2020118297A1 · 2020 [cited by applicant]
WO WO2020163328A1 · 2020 [cited by applicant]
WO WO2020163508A1 · 2020 [cited by applicant]
WO WO2021248050A1 · 2021 [cited by applicant]
WO WO2021248071A1 · 2021 [cited by applicant]
WO WO2022140270A1 · 2022 [cited by applicant]
WO WO2022147167A1 · 2022 [cited by applicant]
WO WO2022246422A1 · 2022 [cited by applicant]
WO WO2023287907A1 · 2023 [cited by applicant]
WO WO2023015490A1 · 2023 [cited by applicant]
WO WO2023076368A1 · 2023 [cited by applicant]
WO WO2024249356A1 · 2024 [cited by applicant]
Heydecker D, Maierhofer G, Aviles-Rivero Al, Fan Q, Chen D, Schönlieb CB, Süsstrunk S. Mirror, mirror, on the wall, who's got the clearest image of them all?—a tailored approach to single image reflection removal. IEEE … [cited by examiner]
Yang H, Patras I. Mirror, mirror on the wall, tell me, is the error small?. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition 2015 (pp. 4685-4693). [cited by examiner]
“International Application Serial No. PCT/US2024/031125, International Search Report mailed Aug. 1, 2024”, 4 pgs. [cited by applicant]
“International Application Serial No. PCT/US2024/031125, Written Opinion mailed Aug. 1, 2024”, 9 pgs. [cited by applicant]
Anonymous, “How do I flip this texture? I've tried to mirror the UVs but it just makes it even more complicated. blenderhelp”, [Online]. Retrieved from the Internet: <URL:https://web.archive.org/web/20220923050436/https… [cited by applicant]
Anonymous, “Recognition, Object Detection, and Semantic Segmentation—MATLAB & Simulink—MathWorks Deutschland”, [Online]. Retrieved from the Internet: <https://web.archive.org/web/20210729000209/https://de.mathworks.com/… [cited by applicant]
Learningbydoodling, “How to map a texture on a mirrored object—in Blender”, [Online]. Retrieved from the Internet: <URL:https://www.youtube.com/watch?v=BG90_PDAVVO>, (Apr. 12, 2016), 2 pgs. [cited by applicant]