IP Library › Granted Patent US 12,633,052
Granted Patent B2
US 12,633,052 · App. 18/517,435 · Granted May 19, 2026

Single-pass object scanning

Inventors: Rafael Felipe Veiga Saracchini (Berlin, DE); Tobias Rick (Mountain View, CA); Zachary Z. Becker (Issaquah, WA)
Assignee: Apple Inc.
G06T17/00G06T7/20G06T7/579G06T19/006H04N23/633H04N23/64G06T2200/24G06T2207/10028G06T2207/30168G06T2207/30244
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,633,052
App. No.
18/517,435
Granted
May 19, 2026
Kind
B2
Abstract

Various implementations disclosed herein include devices, systems, and methods that generates a three-dimensional (3D) model based on a selected subset of the images and depth data corresponding to each of the images of the subset. For example, an example process may include acquiring sensor data during movement of the device in a physical environment including an object, the sensor data including images of a physical environment captured via a camera on the device, selecting a subset of the images based on assessing the images with respect to motion-based defects based on device motion and depth data, and generating a 3D model of the object based on the selected subset of the images and depth data corresponding to each of the images of the selected subset.

Claims (46)

1 . A method comprising:

at a device having a processor:

acquiring a plurality of images during movement of the device in a physical environment comprising an object, the plurality of images having center regions depicting portions of the physical environment;

determining distances from an object feature to the portions of the physical environment depicted at the center regions of the plurality of images; and

selecting a subset of the images based on the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images.

2 . The method of claim 1 , wherein selecting the subset of images comprises excluding images having distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images that have distances greater than a threshold.

3 . The method of claim 1 , wherein determining the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images comprises determining distances to one or more edges of the object feature.

4 . The method of claim 1 , wherein determining the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images comprises determining the distances in a three-dimensional (3D) coordinate system corresponding to the physical environment.

5 . The method of claim 1 , wherein the subset of images is selected for use as key frames in generating a three-dimensional (3D) model of the object.

6 . The method of claim 1 , further comprising:

displaying the physical environment; and

providing a feedback mechanism comprising highlighting areas on the object in the displayed physical environment that have already been captured.

7 . The method of claim 1 , wherein selecting the subset of the images based on the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images comprises determining a projection speed of particular pixels associated with the object.

8 . The method of claim 7 , wherein the particular pixels are associated with pixels corresponding to an identification of the object, a 3D bounding box corresponding to the object, or a center of a view of a camera of the device.

9 . The method of claim 7 , wherein determining the projection speed of a pixel associated with the object includes determining a pixel's speed based on a current motion of a camera of the device and a distance of the pixel from the camera.

10 . The method of claim 1 , wherein selecting the subset of the images based on the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images is based on:

determining which segments of the subset of the images are within a distance range; and

updating the subset of the images to not include the segments of the images that are outside of the distance range.

11 . The method of claim 1 , wherein selecting the subset of the images based on the distances from the object feature or model of the object to the portions of the physical environment depicted at the center regions of the plurality of images is based on:

determining which segments of the subset of the images that are within an angle range; and

updating the subset of the images to not include the segments of depth data that are outside of the angle range.

12 . The method of claim 1 , wherein selecting the subset of the images based on the distances from the object feature or model of the object to the portions of the physical environment depicted at the center regions of the plurality of images comprises:

determining a preliminary object model corresponding to the object;

determining an edge of the preliminary object model;

determining which segments of the subset of the images include a distance of a center of view of a camera of the device to the edge of the preliminary object model that are within an object model distance threshold; and

updating the subset of the images to not include segments of the subset of the images that are outside of the object model distance threshold.

13 . The method of claim 1 , wherein selecting the subset of the images based on the distances from the object feature or model of the object to the portions of the physical environment depicted at the center regions of the plurality of images comprises:

selecting segments of the subset of the images that includes the object or particular features of the object.

14 . The method of claim 1 , wherein the device includes a user interface, wherein, during the movement of the device, the user interface displays:

the physical environment including the object; and

a preliminary 3D model of the object based on depth data associated with the plurality of images.

15 . The method of claim 14 , wherein the preliminary 3D model is generated during the movement of the device based on the selected subset of the images, and the preliminary 3D model is displayed simultaneously with images of the physical environment captured via a camera on the device.

16 . The method of claim 1 , wherein the object feature is an edge of a preliminary object model having a position relative to the physical environment based on a position of the object in the physical environment.

17 . A device comprising:

a non-transitory computer-readable storage medium; and

one or more processors coupled to the non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium comprises program instructions that, when executed on the one or more processors, cause the one or more processors to perform operations comprising:

acquiring a plurality of images during movement of the device in a physical environment comprising an object, the plurality of images having center regions depicting portions of the physical environment;

determining distances from an object feature to the portions of the physical environment depicted at the center regions of the plurality of images; and

selecting a subset of the images based on the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images.

18 . The device of claim 17 , wherein selecting the subset of images comprises excluding images having distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images that have distances greater than a threshold.

19 . The device of claim 17 , wherein determining the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images comprises determining distances to one or more edges of the object feature.

20 . The device of claim 17 , wherein determining the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images comprises determining the distances in a three-dimensional (3D) coordinate system corresponding to the physical environment.

21 . A non-transitory computer-readable storage medium, storing computer-executable program instructions on a computer to perform operations comprising:

acquiring a plurality of images during movement of a device in a physical environment comprising an object, the plurality of images having center regions depicting portions of the physical environment;

determining distances from an object feature to the portions of the physical environment depicted at the center regions of the plurality of images; and

selecting a subset of the images based on the distances from the object feature to the portions of the physical environment depicted at the center regions of the plurality of images.

Continuity (4)
Continuation 18095180 · Jan 10, 2023
Continuation 17171434 · Feb 9, 2021
Provisional Application 62981607 · Feb 26, 2020
Related Publication 20240096013A1 · Mar 21, 2024
References Cited (25)
US 8625854B2 · Valkenburg et al. · 2014 [cited by applicant]
US 9053571B2 · Shotton et al. · 2015 [cited by applicant]
US 9438878B2 · Niebla, Jr. et al. · 2016 [cited by applicant]
US 11100659B2 · Chapdelaine-Couture et al. · 2021 [cited by applicant]
US 20050111753A1 · Peleg et al. · 2005 [cited by applicant]
US 20110080471A1 · Song et al. · 2011 [cited by applicant]
US 20130215233A1 · Wang et al. · 2013 [cited by applicant]
US 20130278754A1 · Oh · 2013 [cited by applicant]
US 20130301906A1 · Yoon · 2013 [cited by examiner]
US 20130308036A1 · Peng · 2013 [cited by applicant]
US 20140376792A1 · Matsuzaki et al. · 2014 [cited by applicant]
US 20160005211A1 · Sarkis et al. · 2016 [cited by applicant]
US 20160300383A1 · Liu et al. · 2016 [cited by applicant]
US 20160330434A1 · Chen · 2016 [cited by examiner]
US 20190028637A1 · Kolesov et al. · 2019 [cited by applicant]
US 20190122378A1 · Aswin · 2019 [cited by applicant]
US 20190156552A1 · Han · 2019 [cited by examiner]
US 20190208177A1 · Koyama et al. · 2019 [cited by applicant]
US 20210065271A1 · Benkreira · 2021 [cited by examiner]
US 20210158937A1 · Wu et al. · 2021 [cited by applicant]
US 20210240986A1 · Gurajapu et al. · 2021 [cited by applicant]
CN 104299261A · 2015 [cited by applicant]
CN 110715647A · 2020 [cited by applicant]
Pollefeys, Marc; “Visual 3D Modeling from Images”; Universtiy of North Carolina—Chapel Hill, USA, Tutorial Notes, pp. 1-143, Aug. 21, 2014. [cited by applicant]
Locher, Alex, Perdock, Michal, Riemenschneider, Hayko and Gool, Luc Van; “Mobile Phone and Cloud—a Dream Team for 3D Reconstruction”; pp. 1-8; May 26, 2016. [cited by applicant]