IP Library › Granted Patent US 12,657,787
Granted Patent B2
US 12,657,787 · App. 18/532,834 · Granted Jun 16, 2026

Hair color simulation using a hair color classification guided network

Inventors: Ruowei Jiang (Mississauga, CA); Zhi Yu (Toronto, CA); Sidharth Singla (Etobicoke, CA); Kin Ching Lydia Chau (Toronto, CA)
Assignee: L'Oreal
G06T11/10G06Q30/0643G06T11/60G06V10/56G06V10/764G06V10/7715G06V10/774G06V10/82
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,657,787
App. No.
18/532,834
Granted
Jun 16, 2026
Kind
B2
Abstract

Aspects of hair simulation, and networks therefor are provided including aspects to train such networks. There is provided a generative model for hair simulation that is guided during training by a hair classifier model. The generative model in an embodiment is provided for use in a virtual try-on (VTO) pipeline such as for virtually trying on hair color products. Further provided is a color mapping network to process an input image and target hair color for the generative model to define the hair simulation (e.g. as an output image with simulated hair color).

Claims (28)

1 . A computing device comprising a processor coupled to storage device storing instructions executable by the processor to cause the computing device to:

process an input image and a target hair color using a virtual try on (VTO) pipeline to produce a VTO experience that simulates the target hair color with the input image to produce an output image;

wherein the VTO pipeline comprises a color refinement neural network to generate the output image combining the target hair color and the input image, the color refinement neural network comprising a generative neural network trained under guidance of a hair classification network comprising a shade classifier that outputs a hair shade value and a reflectance classifier that outputs a hair reflectance value for determining training loss information from output images for training the generative neural network.

2 . The computing device of claim 1 , wherein the instructions are executable by the processor to cause the computing device to provide an interface to one or both of: i) a color recommendation engine to recommend a target hair color; and ii) an e-commerce service with which to buy one or both of a product or service.

3 . The computing device of claim 1 , wherein the VTO pipeline comprises a color mapping network trained to produce a color map for input to the generative neural network to produce the output image for the VTO experience, the color map produced from features of the image, image hair color data determined from the image, and the target hair color.

4 . The computing device of claim 3 , wherein the color mapping network comprises an encoder to determine the features from the input image; a concatonator to combine the features, the target hair color and the image hair color data for processing by a first fully connected block, and a second block for processing an interim map from the first block with the image hair color data to produce the color map for input to the generative neural network.

5 . The computing device of claim 4 , wherein the VTO pipeline comprises a hair analysis engine for determining the image hair color data from the input image.

6 . The computing device of claim 1 , wherein the input image and target hair color are defined using RGB values such that the generative neural network is trained to produce an output image using particular RGB values as guided during the training by the hair classification network using hair shade values and reflectance values.

7 . The computing device of claim 6 , wherein the hair classification network is defined and trained according to an industry standard for hair color classification comprising a respective plurality of classes for hair shade and hair reflectance.

8 . The computing device of claim 1 , wherein the hair classification network comprises an encoding backbone and each of the shade classifier and the hair reflectance classifier comprises a respective linear classifier.

9 . The computing device of claim 8 , wherein the hair classification network having been defined through training with a sum of shade and reflectance cross entropy losses determined from i) outputs of hair shade values and hair reflectance values, and ii) target labels for hair shade and hair reflectance, the target labels prepared for hair classification network training images from respective expert votes by a plurality of experts.

10 . The computing device of claim 9 , wherein the target labels comprise soft labels for at least some of the training images, the soft label determined from an empirical distribution of the expert votes over the respective classes.

11 . The computing device of claim 9 , wherein one of

a. the hair classification network having been trained with respective annotator confusion matrices comprising a plurality (n) of shade annotator confusion matrices and a plurality (n) of reflectance annotator confusion matrices, wherein n is defined from a total number of experts providing the expert votes, and wherein the output from the shade classifier is multiplied by a respective one of the plurality of shade confusion matrices and wherein the output from the reflectance classifier is multiplied by a respective one of the plurality of reflectance confusion matrices to predict the vote of a respective one of the plurality of experts; and wherein the neural network and respective annotator confusion matrices are trained together; or

b. the hair classification network having been trained in accordance with a mean teacher framework.

12 . A method of configuring a neural network that classifies hair shade and hair reflectance of hair in an input image, the method comprising:

providing the neural network, the neural network comprising an encoding backbone coupled to i) a shade classifier that outputs a hair shade value and ii) a reflectance classifier that outputs a hair reflectance value, each classifier comprising a linear classifier;

providing a plurality of training images associated with respective training labels for each of hair shade and hair reflectance, the target labels prepared from respective expert votes by a plurality of experts; and

training the neural network using the training images, the training performed in accordance with a sum of shade and reflectance cross entropy losses determined from i) classifier outputs of the hair shade values and hair reflectance values, and ii) the target labels.

13 . The method of claim 12 , wherein the training comprises training the neural network using a mean teacher framework.

14 . The method of claim 12 , wherein the training comprises training the neural network using respective annotator confusion matrices comprising a plurality (n) of shade annotator confusion matrices and a plurality (n) of reflectance annotator confusion matrices, wherein n is defined from a total number of experts providing the expert votes, and wherein the output from the shade classifier is multiplied by a respective one of the plurality of shade confusion matrices and wherein the output from the reflectance classifier is multiplied by a respective one of the plurality of reflectance confusion matrices to predict the vote of a respective one of the plurality of experts; and wherein the neural network and respective annotator confusion matrices are trained together.

15 . A method comprising:

providing a generative neural network that generates an output image combining a target hair color with an input image;

providing a hair classification network as a component of a discriminator of the generative neural network, the hair classification network comprising i) a shade classifier that determines an output hair shade and ii) a reflectance classifier that determines an output hair reflectance;

determining training loss information using the target hair color and the output hair shade, and output hair reflectance; and

training the generative neural network under guidance of the hair classification network using the training loss information.

16 . The method of claim 15 , wherein the target hair color, input image and output image are defined using RGB type data and the output hair shade and output hair reflectance are defined in accordance with an industry standard for hair color classification comprising a respective plurality of classes for hair shade and hair reflectance.

17 . The method of claim 15 comprising, prior to training the generative neural network, pre-training a color mapping network configured to process the input image and, image hair color data from hair pixels of the input image and the target hair color to provide a color map to the generative neural network for generating the output image from the input image.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA PREVIOUSLY RECORDED ON REEL 73524 FRAME 215. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 22, 2026
From: JIANG, RUOWEI; YU, ZHI; SINGLA, SIDHARTH; CHAU, KIN CHING LYDIA
To: MODIFACE INC.
Reel/Frame 074482/0655 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2026
From: JIANG, RUOWEI; YU, ZHI; GUIO, GABRIELA; CHAU, KIN CHING LYDIA; SINGLA, SIDHARTH
To: MODIFACE INC.
Reel/Frame 073524/0215 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2026
From: MODIFACE INC.
To: L'ORÉAL
Reel/Frame 073524/0295 →
Continuity (1)
Related Publication 20250191248A1 · Jun 12, 2025
References Cited (79)
US 6381346B1 · Eraslan · 2002 [cited by examiner]
US 6453052B1 · Kurokawa · 2002 [cited by examiner]
US 7418371B2 · Choe · 2008 [cited by examiner]
US 8055011B2 · Ikeda · 2011 [cited by examiner]
US 8249365B1 · Winnemoeller · 2012 [cited by examiner]
US 8797323B2 · Salvi · 2014 [cited by examiner]
US 8884980B2 · Mallick · 2014 [cited by examiner]
US 9058765B1 · Mallick · 2015 [cited by examiner]
US 9367940B2 · Weng · 2016 [cited by examiner]
US 9905045B1 · Hery · 2018 [cited by examiner]
US 9928601B2 · Aarabi · 2018 [cited by examiner]
US 10217244B2 · Kowalczyk · 2019 [cited by examiner]
US 10825219B2 · Fu · 2020 [cited by examiner]
US 10849408B2 · Skwarek · 2020 [cited by examiner]
US 11093733B2 · Yuan · 2021 [cited by examiner]
US 20060224366A1 · Choe · 2006 [cited by examiner]
US 20090232409A1 · Marchesotti · 2009 [cited by examiner]
US 20110063291A1 · Yuksel · 2011 [cited by examiner]
US 20110304623A1 · Tamstorf · 2011 [cited by examiner]
US 20120075331A1 · Mallick · 2012 [cited by examiner]
US 20130215139A1 · Xie · 2013 [cited by examiner]
US 20130280688A1 · Pagana-Lausch · 2013 [cited by examiner]
US 20160154993A1 · Aarabi · 2016 [cited by examiner]
US 20160335987A1 · Mazzola · 2016 [cited by examiner]
US 20170206678A1 · Kowalczyk · 2017 [cited by examiner]
US 20180039745A1 · Chevalier · 2018 [cited by examiner]
US 20180374242A1 · Li · 2018 [cited by examiner]
US 20190035163A1 · Skwarek · 2019 [cited by examiner]
US 20190059560A1 · Miklatzky · 2019 [cited by examiner]
US 20200196936A1 · Blank · 2020 [cited by examiner]
US 20200219328A1 · Yau · 2020 [cited by examiner]
US 20200320748A1 · Levinshtein · 2020 [cited by examiner]
US 20200334868A1 · Zilly Claude · 2020 [cited by examiner]
US 20200336705A1 · Mouizina · 2020 [cited by examiner]
US 20210074076A1 · Powers · 2021 [cited by examiner]
US 20210142539A1 · Ayush · 2021 [cited by examiner]
US 20210264576A1 · Sun · 2021 [cited by examiner]
US 20210406589A1 · Yadav · 2021 [cited by examiner]
US 20210406996A1 · Yu · 2021 [cited by examiner]
US 20210407216A1 · Peng · 2021 [cited by examiner]
US 20220005189A1 · Perrot · 2022 [cited by examiner]
US 20220012901A1 · Sun et al. · 2022 [cited by applicant]
US 20220084226A1 · Uludag · 2022 [cited by examiner]
US 20220101577A1 · Chakrabarty · 2022 [cited by examiner]
US 20220164852A1 · Punyani · 2022 [cited by examiner]
US 20220198830A1 · Li · 2022 [cited by examiner]
US 20220211593A1 · Bowker · 2022 [cited by examiner]
US 20220366607A1 · Bojan · 2022 [cited by examiner]
US 20220392025A1 · Mironica · 2022 [cited by examiner]
US 20240177360A1 · Hong · 2024 [cited by examiner]
US 20250157181A1 · Wilson et al. · 2025 [cited by applicant]
EP 3627444A1 · 2020 [cited by applicant]
EP 4083937A1 · 2022 [cited by applicant]
Berthelot, D., et al., “Remixmatch: Semi-Supervised Learning With Distribution Alignment and Augmentation Anchoring,” arXiv:1911.09785v2 [cs.LG], Feb. 2020, 13 pages. [cited by applicant]
Berthelot, D., et al., “MixMatch: A Holistic Approach to Semi-Supervised Learning,” arXiv:1905.02249v2 [cs.LG], Oct. 2019, 14 pages. [cited by applicant]
Chapelle, O., et al. (eds.) “Semi-Supervised Learning,” The MIT Press, Cambridge, MA, 2006, 524 pages. [cited by applicant]
Guan, M.Y., et al., “Who Said What: Modeling Individual Labelers Improves Classification,” Proceedings of the AAAI Conference on Artificial Intelligence 32(1):3109-3118, Apr. 2018. [cited by applicant]
Hendrycks, D. , “Using Trusted Data to Train Deep Networks on Labels Corrupted by Severe Noise,” Advances in Neural Information Processing Systems, Feb. 2018, 17 pages. [cited by applicant]
Laine, S., and T. Aila, “Temporal Ensembling for Semi-Supervised Learning,” Conference Paper at ICLR 2017, arXiv:1610.02242v3 [cs.NE], Mar. 2017, 13 pages. [cited by applicant]
Lee, K.-H., et al., “CleanNet: Transfer Learning for Scalable Image Classifier Training with Label Noise,” 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, Mar. 2018, 10 pages. [cited by applicant]
Lee, D.-H., “Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks,” Workshop on Challenges in Representation Learning, ICML, vol. 3, No. 2, Jul. 2013, 7 pages. [cited by applicant]
Li, W., et al., “WebVision Database: Visual Learning and Understanding fromWeb Data,” arXiv: 1708.02862v1, Aug. 2017, 9 pages. [cited by applicant]
Liu, T., and D. Tao, “Classification with Noisy Labels by Importance Reweighting,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Jul. 2015, 19 pages. [cited by applicant]
Liu, Z., et al., “Deep Learning Face Attributes in the Wild,” Proceedings of the International Conference on Computer Vision (ICCV), Sep. 2015, 11 pages. [cited by applicant]
Loschchilov, I., and F. Hutter, “SGDR: Stochastic Gradient Descent With Warm Restarts,” conference paper, arXiv:1608.03983v5, May 2018, 16 pages. [cited by applicant]
Patrini, G., et al., “Making Deep Neural Networks Robust to Label Noise: a Loss Correction Approach,” 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Mar. 2017, 9 pages. [cited by applicant]
Rasmus, A., et al., “Semi-Supervised Learning with Ladder Networks,” Proceedings of the 29th International Conference on Neural Information Processing Systems—vol. 2 , Nov. 2015, 19 pages. [cited by applicant]
Sohn, Kihyuk, et al. “Fixmatch: Simplifying semi-supervised learning with consistency and confidence.” 34th Conference on Neural Information Processing Systems (NeurIPS 2020), Advances in Neural Information Processing S… [cited by applicant]
Song, H.. , et al, :SELFIE: Refurbishing Unclean Samples for Robust Deep Learning, Proceedings of the 36th International Conference on Machine Learning, PMLR 97:5907-5915, Long Beach, CA, c. 2019. [cited by applicant]
Surowiecki, J., “The Wisdom of Crowds,” Introduction and 1st Chapter, Doubleday, New York, Jun. 2004, 18 pages. [cited by applicant]
Tanno, R., et al., “Learning From Noisy Labels By Regularized Estimation Of Annotator Confusion,” arXiv:1902.03680v3, Jun. 2019, 15 pages. [cited by applicant]
Tarvainen, A, and H. Valpola, “Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning results,” arXiv:1703.01780v6, Apr. 2018, 16 pages. [cited by applicant]
Xiao, T., et al., “Learning from Massive Noisy Labeled Data for Image Classification,” 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, MA, Jun. 7-12, 2015, pp. 2691-2699. [cited by applicant]
Xie, Q., “Unsupervised Data Augmentation,” 34th Conference on Neural Information Processing Systems (NeurIPS 2020), Vancouver, Canada, arXiv:1904.12848v6, Nov. 2020, 20 pages. [cited by applicant]
Zhu, X., and A. Goldberg, “Introduction to Semi-Supervised Learning”, c. Springer Nature Switzerland AG, 2009, pp. 1-12. [cited by applicant]
International Search Report and Written Opinion of the International Searching Authority mailed on Apr. 8, 2025, issued in PCT Application No. PCT/EP2024/084949; 20 pages. [cited by applicant]
Borza, D. et al., “A Deep Learning Approach to Hair Segmentation and Color Extraction from Facial Images,” ACIVS 2018, LNCS 1182, pp. 438-449. [cited by applicant]
Neat, Catherine, “How to Decode the Hair Color Numbering System?” <https://www.glc1mot.com/blog/26433/how-to-decode-the-hoir-color-nurnbering-system>, Apr. 7, 2017 (Year: 2021), 5 pages. [cited by applicant]
Ponlawan, P., et al., “Guideline of Personalized Facial Makeup Using a Hierarchical Cascade Classifier,” 202118th International Joint Conference on Computer Science and Software Engineering (JCSSE), Lampang, Thailand, J… [cited by applicant]