IP Library › Granted Patent US 12,731,373
Granted Patent B2
US 12,731,373 · App. 18/231,474 · Granted Sep 8, 2026

Classification of three-dimensional (3D) objects in a virtual environment

Inventor: Phani Harish Wajjala (San Mateo, CA)
Assignee: Roblox Corporation
G06V10/764G06V10/50G06V10/7515G06V20/64
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,731,373
App. No.
18/231,474
Granted
Sep 8, 2026
Kind
B2
Abstract

Some implementations relate to methods, systems, and computer-readable media for classifying three-dimensional (3D) objects. In some implementations, the method includes generating a plurality of images of a candidate 3D object, determining one or more histogram of oriented gradients (HOG) vectors for each image, determining an asset feature of the candidate 3D object based on the one or more HOG vectors, determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object, if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an inauthentic object, and if the asset feature of the candidate 3D object does not match the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an authentic object.

Claims (42)

1 . A computer-implemented method, comprising:

generating a plurality of images of a candidate 3D object, wherein each image of the plurality of images of the candidate 3D object is from a respective camera position of two or more camera positions;

determining one or more histogram of oriented gradients (HOG) vectors for each image of the plurality of images of the candidate 3D object;

determining an asset feature of the candidate 3D object based on the one or more HOG vectors for each of the plurality of images of the candidate 3D object;

determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object by calculating a vector distance between the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object, wherein it is determined that the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object if the vector distance meets a threshold vector distance;

if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an inauthentic object; and

if the asset feature of the candidate 3D object does not match the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an authentic object.

2 . The computer-implemented method of claim 1 , wherein the vector distance is one or more of Euclidean distance, Manhattan distance, Hamming distance, cosine distance, or combinations thereof.

3 . The computer-implemented method of claim 1 , wherein determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object further comprises performing a rotationally invariant comparison of the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object.

4 . The computer-implemented method of claim 3 , wherein performing the rotationally invariant comparison of the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object comprises:

generating a plurality of rolled asset feature vectors of the candidate 3D object based on the asset feature of the candidate 3D object, wherein each rolled asset feature vector corresponds to a particular orientation of the candidate 3D object; and

comparing each of the plurality of rolled asset feature vectors with the authentic asset feature of the at least one authentic 3D object.

5 . The computer-implemented method of claim 1 , wherein determining the one or more HOG vectors comprises determining one or more pyramidal HOG vectors, and wherein each of the one or more pyramidal HOG vectors is generated by concatenating at least two HOG vectors of the candidate 3D object generated at multiple resolutions of a respective image of the plurality of images of the candidate 3D object.

6 . The computer-implemented method of claim 1 , wherein generating the plurality of images of the candidate 3D object comprises generating the plurality of images at one or more azimuth and elevation points.

7 . The computer-implemented method of claim 1 , wherein generating at least one image of the plurality of images of the candidate 3D object comprises adjusting a camera view during capture of the at least one image such that the candidate 3D object occupies at least a specified area of the image.

8 . The computer-implemented method of claim 1 , further comprising prior to generating the plurality of images of the candidate 3D object, replacing a texture of the candidate 3D object with a white plastic material.

9 . The computer-implemented method of claim 1 , wherein classifying the candidate 3D object as the authentic object further comprises assigning a flag to the candidate 3D object, and wherein the flag is readable by a game engine and causes the game engine to enable use of the candidate 3D object in a virtual environment hosted by the game engine.

10 . The computer-implemented method of claim 1 , wherein classifying the candidate 3D object as the inauthentic object further comprises assigning a flag to the candidate 3D object, and wherein the flag is readable by a game engine and causes the game engine to prevent use of the candidate 3D object in a virtual environment hosted by the game engine.

11 . The computer-implemented method of claim 1 , further comprising performing principal component analysis of the asset feature to reduce a dimension of the asset feature, and wherein determining if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object comprises performing a comparison of a reduced dimension asset feature of the candidate 3D object against a reduced dimension authentic asset feature of the at least one authentic 3D object.

12 . A non-transitory computer-readable medium comprising instructions that, responsive to execution by a processing device, cause the processing device to perform operations comprising:

generating a plurality of images of a candidate 3D object, wherein each image of the plurality of images of the candidate 3D object is from a respective camera position of two or more camera positions;

determining one or more histogram of oriented gradients (HOG) vectors for each image of the plurality of images of the candidate 3D object;

determining an asset feature of the candidate 3D object based on the one or more HOG vectors for each of the plurality of images of the candidate 3D object;

determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object by calculating a vector distance between the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object, wherein it is determined that the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object if the vector distance meets a threshold vector distance;

if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an inauthentic object; and

if the asset feature of the candidate 3D object does not match the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an authentic object.

13 . The non-transitory computer-readable medium of claim 12 , wherein the vector distance is one or more of Euclidean distance, Manhattan distance, Hamming distance, cosine distance, or combinations thereof.

14 . The non-transitory computer-readable medium of claim 12 , wherein determining the one or more HOG vectors comprises determining one or more pyramidal HOG vectors, and wherein each of the one or more pyramidal HOG vectors is generated by concatenating at least two HOG vectors of the candidate 3D object generated at multiple resolutions of a respective image of the plurality of images of the candidate 3D object.

15 . A system comprising:

a memory with instructions stored thereon; and

a processing device, coupled to the memory, the processing device configured to access the memory and execute the instructions, wherein the instructions cause the processing device to perform operations including:

generating a plurality of images of a candidate 3D object, wherein each image of the plurality of images of the candidate 3D object is from a respective camera position of two or more camera positions;

determining one or more histogram of oriented gradients (HOG) vectors for each image of the plurality of images of the candidate 3D object;

determining an asset feature of the candidate 3D object based on the one or more HOG vectors for each of the plurality of images of the candidate 3D object;

determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object by calculating a vector distance between the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object, wherein it is determined that the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object if the vector distance meets a threshold vector distance;

if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an inauthentic object; and

if the asset feature of the candidate 3D object does not match the authentic asset feature of the at least one authentic 3D object, classifying the candidate 3D object as an authentic object.

16 . The system of claim 15 , wherein the vector distance is one or more of Euclidean distance, Manhattan distance, Hamming distance, cosine distance, or combinations thereof.

17 . The system of claim 15 , wherein determining the one or more HOG vectors comprises determining one or more pyramidal HOG vectors, and wherein each of the one or more pyramidal HOG vectors is generated by concatenating at least two HOG vectors of the candidate 3D object generated at multiple resolutions of a respective image of the plurality of images of the candidate 3D object.

18 . The system of claim 15 , wherein determining if the asset feature of the candidate 3D object matches an authentic asset feature of at least one authentic 3D object further comprises performing a rotationally invariant comparison of the asset feature of the candidate 3D object and the authentic asset feature of the at least one authentic 3D object.

19 . The system of claim 15 , wherein the operations further comprise, prior to generating the plurality of images of the candidate 3D object, replacing a texture of the candidate 3D object with a white plastic material.

20 . The system of claim 15 , wherein the operations further comprise reducing a dimension of the asset feature, and wherein determining if the asset feature of the candidate 3D object matches the authentic asset feature of the at least one authentic 3D object comprises performing a comparison of a reduced dimension asset feature of the candidate 3D object against a reduced dimension authentic asset feature of the at least one authentic 3D object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2023
From: WAJJALA, PHANI HARISH
To: ROBLOX CORPORATION
Reel/Frame 064523/0795 →
Continuity (2)
Provisional Application 63454852 · Mar 27, 2023
Related Publication 20240331352A1 · Oct 3, 2024
References Cited (72)
US 11321856B1 · Caldwell et al. · 2022 [cited by applicant]
US 20060035713A1 · Cockerille et al. · 2006 [cited by applicant]
US 20070183669A1 · Owechko et al. · 2007 [cited by applicant]
US 20080112596A1 · Rhoads et al. · 2008 [cited by applicant]
US 20130034337A1 · Hefeeda et al. · 2013 [cited by applicant]
US 20130124359A1 · Hedges et al. · 2013 [cited by applicant]
US 20140139647A1 · Nagatani · 2014 [cited by applicant]
US 20150071486A1 · Rhoads et al. · 2015 [cited by applicant]
US 20150154229A1 · An · 2015 [cited by examiner]
US 20150227784A1 · Roy · 2015 [cited by examiner]
US 20160221114A1 · Dietrich · 2016 [cited by applicant]
US 20160379050A1 · Tian · 2016 [cited by examiner]
US 20170372516A1 · Evans · 2017 [cited by applicant]
US 20190108396A1 · Dal Mutto · 2019 [cited by examiner]
US 20190108398A1 · Haghighat · 2019 [cited by applicant]
US 20190180119A1 · Chen · 2019 [cited by examiner]
US 20200035011A1 · Bilgili · 2020 [cited by applicant]
US 20200167995A1 · Hare et al. · 2020 [cited by applicant]
US 20200175001A1 · Malan · 2020 [cited by applicant]
US 20210174132A1 · Mayes · 2021 [cited by examiner]
US 20210228276A1 · Giraldez et al. · 2021 [cited by applicant]
US 20210350346A1 · Edwards et al. · 2021 [cited by applicant]
US 20220121874A1 · Mayes et al. · 2022 [cited by applicant]
US 20220262020A1 · Caldwell et al. · 2022 [cited by applicant]
US 20230146134A1 · Selviah · 2023 [cited by examiner]
CN 105069623 · 2015 [cited by applicant]
CN 105095707 · 2015 [cited by applicant]
CN 105096134 · 2015 [cited by applicant]
CN 106663204 · 2017 [cited by applicant]
CN 108549873 · 2018 [cited by applicant]
CN 112041849 · 2020 [cited by applicant]
JP 2009048256 · 2009 [cited by applicant]
JP 6746024 · 2020 [cited by applicant]
WO 2014081394 · 2014 [cited by applicant]
WO 2018072028 · 2018 [cited by applicant]
WO 2019207170 · 2019 [cited by applicant]
WO 2021170972 · 2021 [cited by applicant]
KIPO, Notice of Allowance (with English translation) for Korean Patent Application No. 10-2022-7014703, Jul. 4, 2024, 9 pages. [cited by applicant]
USPTO, Written Opinion for International Patent Application No. PCT/US2024/021437, Jul. 11, 2024, 13 pages. [cited by applicant]
USPTO, International Search Report for International Patent Application No. PCT/US2024/021437, Jul. 11, 2024, 2 pages. [cited by applicant]
CNIPA, First Office Action (with English translation) for Chinese Patent Application No. 201980102207.0, Feb. 9, 2025, 30 pages. [cited by applicant]
CNIPA, Notification of the Decision of Rejection (with English translation) for Chinese Patent Application No. 201980102207.0, Jun. 14, 2025, 32 pages. [cited by applicant]
EPO, Extended European Search Report for European Patent Application No. 21907663.5, Oct. 25, 2024, 13 pages. [cited by applicant]
KIPO, Notice of Allowance for Korean Patent Application No. 10-2024-7031852, Oct. 30, 2024, 9 pages. [cited by applicant]
Lee, et al., “Perceptual 3D model hashing using key-dependent shape feature”, Multimedia tools and applications, vol. 73, 2014, pp. 1723-1755. [cited by applicant]
JPO, Notice of Allowance (with English translation) for Japanese Patent Application No. 2023-537146, Jun. 10, 2024, 5 pages. [cited by applicant]
KIPO, First Office Action (with English translation) for Korean Patent Application No. 10-2022-7014703, Apr. 18, 2024, 16 pages. [cited by applicant]
Bjelland, et al., “Practical use of Approximate Hash Based Marching in digital investigations”, Digital Investigation, vol. 11, Supp. 1, May 2014, pp. S18-S26. [cited by applicant]
Dalal, et al., “Histograms of Oriented Gradients for Human Detection”, 2005 IEEE computer society conference on computer vision and pattern recognition (CVPR'05), vol. 1., IEEE, 2005, 8 pages. [cited by applicant]
Huang, et al., “An Accurate Method for Voxelizing Polygon Meshes”, IEEE Symposium on Volume Visualization (Cat. No. 989EX300), 1998, 9 pages. [cited by applicant]
Jones, “The Production of Volume Data from Triangular Meshes Using Voxelisation”, Computer Graphics Forum, vol. 15, No. 5, Dec. 1996, pp. 311-318. [cited by applicant]
JPO, Notice of Allowance (with English translation) for Japanese Patent Application No. 2022-529889, Sep. 11, 2023, 3 pages. [cited by applicant]
Lee, et al., “Robust 3D mesh model hashing based on feature object”, Digital Signal Processing, 22(5), 2012, pp. 744-759. [cited by applicant]
Liang, et al., “An asymmetric and optimized encryption method to protect the confidentiality of 3D mesh model”, Advanced Engineering Informatics, 42, 100963, 2019. [cited by applicant]
USPTO, Notice of Allowance for U.S. Appl. No. 17/564,939, Apr. 10, 2023, 8 pages. [cited by applicant]
USPTO, Notice of Allowance for U.S. Appl. No. 17/127,714, Jan. 7, 2022, 9 pages. [cited by applicant]
USPTO, Non-final Office Action for U.S. Appl. No. 16/703,823, Jun. 22, 2021, 15 pages. [cited by applicant]
USPTO, Notice of Allowance for U.S. Appl. No. 17/729,304, Mar. 13, 2023, 9 pages. [cited by applicant]
USPTO, Non-final Office Action for U.S. Appl. No. 17/729,304, Oct. 25, 2022, 10 pages. [cited by applicant]
USPTO, Non-final Office Action for U.S. Appl. No. 17/127,714, Sep. 1, 2021, 8 pages. [cited by applicant]
USPTO, Notice of Allowance for U.S. Appl. No. 16/703,823, Sep. 28, 2021, 7 pages. [cited by applicant]
WIPO, International Search Report for International Patent Application No. PCT/US2021/063394, Jan. 13, 2022, 2 pages. [cited by applicant]
WIPO, Written Opinion for International Patent Application No. PCT/US2021/063394, Jan. 13, 2022, 4 pages. [cited by applicant]
WIPO, International Search Report for International Patent Application No. PCT/US2019/067929, Mar. 18, 2020, 2 pages. [cited by applicant]
WIPO, Written Opinion for International Patent Application No. PCT/US2019/067929, Mar. 18, 2020, 8 pages. [cited by applicant]
Zauner, “Implementation and Benchmarking of Perceptual Image Hash Functions”, Sichere Informationssysteme, Hagenberg, 2010, 107 pages. [cited by applicant]
USPTO, Non-final Office Action for U.S. Appl. No. 18/427,230, Dec. 29, 2025, 20 pages. [cited by applicant]
CNIPA, Notification to Grant Patent Right for Invention and a Notification to Go through Formalities of Registration for Chinese Patent Application No. 202180085488.0, Dec. 24, 2025, 10 pages. [cited by applicant]
EPO, Communication Pursuant to Article 94(3) EPC for European Patent Application No. 19955169.8, Dec. 5, 2025, 4 pages,. [cited by applicant]
USPTO, Final Office Action for U.S. Appl. No. 18/427,230, May 12, 2026, 24 pages. [cited by applicant]
JPO, Notice of Reasons for Rejection (with English translation) for Japanese Patent Application No. 2025-550657 1, Apr. 28, 2026, 6 pages. [cited by applicant]
JPO, Notice of Allowance (with English translation) for Japanese Patent Application No. 2025-550657, Jul. 7, 2026, 5 pages. [cited by applicant]