IP Library Granted Patent US 12,524,960
Granted Patent B2
US 12,524,960 · App. 18/352,989 · Granted Jan 13, 2026

Spatial masking for stitched images and surround view visualizations

Inventors: Nuri Murat Arar (Zurich, CH); Niranjan Avadhanam (Saratoga, CA); Yuzhuo Ren (Sunnyvale, CA); Hairong Jiang (Campbell, CA)
Assignee: NVIDIA Corporation
G06T17/00G06T5/20G06T5/70G06T7/20G06T15/20G06T17/05G06T2207/30241
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,524,960
App. No.
18/352,989
Granted
Jan 13, 2026
Kind
B2
Abstract

In various examples, updates to a dynamic seam placement and/or fitted 3D bowl may be at least partially concealed using spatial masking. A future time in which a predicted change in dynamic seam placement and/or fitted 3D bowl exceeds some threshold may be determined, and a predicted dynamic seam movement and/or fitted 3D bowl update may be spatially masked by triggering a viewport switch to coincide with (a) the predicted dynamic seam placement and/or fitted 3D bowl update and/or (b) a relaxation or disabling of temporal filtering. Additionally or alternatively to predicting that a future change will exceed a threshold, the determination of the change may occur based on a change between a current and previous frame. In some embodiments that employ viewport switching to spatially mask visualization updates, the switch may be to one of a plurality of candidate viewports for an applicable scene maintained in a scene catalog.

Claims (75)

1 . A processor comprising:

one or more processing units to:

determine a change exceeding a threshold to at least one of: (a) a dynamic seam placement that is based at least on one or more detected objects in an environment around an ego-object, or (b) a three-dimensional (3D) bowl that adaptively models the environment with a shape based at least on one or more distances to the one or more detected objects; and

generate a visualization representing the environment based at least on triggering a viewport change to coincide with the change to the at least one of the dynamic seam placement or the 3D bowl.

2 . The processor of claim 1 , wherein the triggering of the viewport change spatially masks the change to the at least one of the dynamic seam placement or the 3D bowl.

3 . The processor of claim 1 , the one or more processing units further to determine the change based at least on predicting that the change will occur in a future time slice corresponding to one or more processed intervals of sensor data used to generate the visualization representing the environment.

4 . The processor of claim 1 , the one or more processing units further to determine the change based at least on predicting one or more future states of the environment and determining one or more future time slices in which the dynamic seam placement or the 3D bowl for the one or more future states is predicted to differ from a current seam placement or a current 3D bowl by more than a threshold amount.

5 . The processor of claim 1 , the one or more processing units further to determine the change based at least on: tracking one or more positions of the one or more detected objects, using a detected trajectory of the ego-object to predict one or more future locations of the ego-object in one or more future time slices, and determining a seam placement or the 3D bowl for the one or more future time slices based at least on the one or more positions of the one or more detected objects and the one or more future locations of the ego-object.

6 . The processor of claim 1 , the one or more processing units further to at least partially conceal the change based at least on temporarily disabling temporal filtering that smooths one or more changes to a previous dynamic seam placement or a previous 3D bowl.

7 . The processor of claim 1 , the one or more processing units further to determine the change based at least on a difference between a current time slice and a preceding time slice, and mask the change in the visualization representing the environment for the current time slice.

8 . The processor of claim 1 , the one or more processing units further to maintain a scene catalog that maps scenes to candidate viewports, and mask the change in the visualization based at least on: identifying an applicable scene from the scene catalog and switching to a viewport selected from the candidate viewports for the applicable scene.

9 . The processor of claim 1 , wherein the processor is comprised in at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system for performing remote operations;

a system for performing real-time streaming;

a system for generating or presenting one or more of augmented reality content, virtual reality content, or mixed reality content;

a system implemented using an edge device;

a system implemented using a robot;

a system for performing conversational AI operations;

a system for generating synthetic data;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or

a system implemented at least partially using cloud computing resources.

10 . A system comprising:

one or more processing units to:

determine a change exceeding a threshold to at least one of: (a) a dynamic seam placement that is based at least on one or more detected objects in an environment around an ego-object or (b) a three-dimensional (3D) bowl that adaptively models the environment with a shape based at least on one or more distances to the one or more detected objects; and

generate a visualization representing the environment based at least on triggering a viewport change to coincide with the change to the at least one of the dynamic seam placement or the 3D bowl.

11 . The system of claim 10 , the one or more processing units further to determine the change based at least on predicting that the change will occur in a future time slice corresponding to one or more processed intervals of sensor data used to generate the visualization representing the environment.

12 . The system of claim 10 , the one or more processing units further to determine the change based at least on predicting one or more future states of the environment and determining one or more future time slices in which the dynamic seam placement or the 3D bowl for the one or more future states is predicted to differ from a current dynamic seam placement or a current 3D bowl by more than a threshold amount.

13 . The system of claim 10 , the one or more processing units further to determine the change based at least on: tracking one or more positions of the one or more detected objects, using a detected trajectory of the ego-object to predict one or more future locations of the ego-object in one or more future time slices, and determining the dynamic seam placement or the 3D bowl for the one or more future time slices based at least on the one or more positions of the one or more detected objects and the one or more future locations of the ego-object.

14 . The system of claim 10 , the one or more processing units further to trigger the change based at least on temporarily preventing temporal filtering that smooths one or more changes to a previous dynamic seam placement or a previous 3D bowl.

15 . The system of claim 10 , the one or more processing units further to determine the change based at least on a difference between a current time slice and a preceding time slice, and at least partially conceal the change in the visualization representing the environment for the current time slice.

16 . The system of claim 10 , the one or more processing units further to maintain a scene catalog that maps scenes to candidate viewports, and trigger the viewport change based at least on: identifying an applicable scene from the scene catalog and switching to a viewport selected from the candidate viewports for the applicable scene.

17 . The system of claim 10 , wherein the system is comprised in at least one of a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system for performing real-time streaming;

a system for generating or presenting one or more of augmented reality content, virtual reality content, or mixed reality content;

a system implemented using an edge device;

a system implemented using a robot;

a system for performing conversational AI operations;

a system for generating synthetic data;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or

a system implemented at least partially using cloud computing resources.

18 . A method comprising:

determining a change exceeding a threshold to at least one of: (a) a dynamic seam placement that is based at least on one or more detected objects in an environment around an ego-object or (b) a three-dimensional (3D) bowl that adaptively models the environment with a shape that is based at least on one or more distances to the one or more detected objects; and

generating a visualization representing the environment based at least on triggering a viewport change to coincide with the change to the at least one of the dynamic seam placement or the 3D bowl.

19 . The method of claim 18 , wherein the triggering of the viewport change spatially masks the change to the at least one of the dynamic seam placement or the 3D bowl.

20 . The method of claim 18 , wherein the method is performed by at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing real-time streaming;

a system for generating or presenting one or more of augmented reality content, virtual reality content, or mixed reality content;

a system for performing digital twin operations;

a system for performing deep learning operations;

a system implemented using an edge device;

a system implemented using a robot;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for generating synthetic data; or

a system implemented at least partially using cloud computing resources.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2023
From: ARAR, NURI MURAT; AVADHANAM, NIRANJAN; REN, YUZHUO; JIANG, HAIRONG
To: NVIDIA CORPORATION
Reel/Frame 064310/0027 →
Continuity (1)
Related Publication 20250022224A1 · Jan 16, 2025
References Cited (111)
US 771104A · John · 1904 [cited by applicant]
US 5751838A · Cox et al. · 1998 [cited by applicant]
US 6704621B1 · Stein et al. · 2004 [cited by applicant]
US 7333963B2 · Widrow et al. · 2008 [cited by applicant]
US 7571030B2 · Ryu et al. · 2009 [cited by applicant]
US 7711044B1 · Hoang et al. · 2010 [cited by applicant]
US 8213706B2 · Krishnaswamy et al. · 2012 [cited by applicant]
US 8321168B2 · Eriksson · 2012 [cited by applicant]
US 9007428B2 · Zhou · 2015 [cited by applicant]
US 9315152B1 · Maestas et al. · 2016 [cited by applicant]
US 9516223B2 · Zhou et al. · 2016 [cited by applicant]
US 10262466B2 · Guo et al. · 2019 [cited by applicant]
US 10776928B1 · Horvath et al. · 2020 [cited by applicant]
US 10885698B2 · Muthler et al. · 2021 [cited by applicant]
US 11225193B2 · Chen et al. · 2022 [cited by applicant]
US 11760268B1 · McGirt, Jr. et al. · 2023 [cited by applicant]
US 11778224B1 · Vanam et al. · 2023 [cited by applicant]
US 20090015675A1 · Yang · 2009 [cited by applicant]
US 20100040290A1 · Lei · 2010 [cited by applicant]
US 20110211749A1 · Tan et al. · 2011 [cited by applicant]
US 20110293142A1 · van der Mark et al. · 2011 [cited by applicant]
US 20120081577A1 · Cote et al. · 2012 [cited by applicant]
US 20130329072A1 · Zhou et al. · 2013 [cited by applicant]
US 20140247365A1 · Gardner et al. · 2014 [cited by applicant]
US 20140300623A1 · Kim · 2014 [cited by applicant]
US 20140364227A1 · Langlois et al. · 2014 [cited by applicant]
US 20150070523A1 · Chao · 2015 [cited by applicant]
US 20150143913A1 · Adams et al. · 2015 [cited by applicant]
US 20150172620A1 · Guo et al. · 2015 [cited by applicant]
US 20160006943A1 · Ratnakar · 2016 [cited by applicant]
US 20170109940A1 · Guo et al. · 2017 [cited by applicant]
US 20170140791A1 · Das et al. · 2017 [cited by applicant]
US 20170148223A1 · Holzer et al. · 2017 [cited by applicant]
US 20170158131A1 · Friebe · 2017 [cited by applicant]
US 20170310979A1 · Shaw et al. · 2017 [cited by applicant]
US 20170330034A1 · Wang et al. · 2017 [cited by applicant]
US 20170372147A1 · Stervik et al. · 2017 [cited by applicant]
US 20170372682A1 · Hashikawa et al. · 2017 [cited by applicant]
US 20180007263A1 · Vandrotti et al. · 2018 [cited by applicant]
US 20180210442A1 · Guo · 2018 [cited by examiner]
US 20180286026A1 · Fan et al. · 2018 [cited by applicant]
US 20190050959A1 · Husted et al. · 2019 [cited by applicant]
US 20190080476A1 · Ermilios et al. · 2019 [cited by applicant]
US 20190082103A1 · Banerjee et al. · 2019 [cited by applicant]
US 20190272619A1 · Lim et al. · 2019 [cited by applicant]
US 20190289223A1 · Abbas et al. · 2019 [cited by applicant]
US 20190361436A1 · Ueda et al. · 2019 [cited by applicant]
US 20190377181A1 · Myhre et al. · 2019 [cited by applicant]
US 20200005649A1 · Kim et al. · 2020 [cited by applicant]
US 20200020075A1 · Khwaja et al. · 2020 [cited by applicant]
US 20200034953A1 · Friebe · 2020 [cited by examiner]
US 20200174130A1 · Banerjee et al. · 2020 [cited by applicant]
US 20200265622A1 · Pettersson et al. · 2020 [cited by applicant]
US 20200293796A1 · Sajjadi Mohammadabadi et al. · 2020 [cited by applicant]
US 20200371016A1 · Guillou et al. · 2020 [cited by applicant]
US 20210042705A1 · Suen et al. · 2021 [cited by applicant]
US 20210065461A1 · Reif · 2021 [cited by applicant]
US 20210179086A1 · Yamanaka et al. · 2021 [cited by applicant]
US 20210286923A1 · Kristensen et al. · 2021 [cited by applicant]
US 20220078390A1 · Jingu · 2022 [cited by applicant]
US 20220144260A1 · Chen et al. · 2022 [cited by applicant]
US 20220414822A1 · Lu · 2022 [cited by applicant]
US 20230024474A1 · Ren et al. · 2023 [cited by applicant]
US 20230048926A1 · Kurbiel et al. · 2023 [cited by applicant]
US 20230117253A1 · Molad et al. · 2023 [cited by applicant]
US 20230166659A1 · Hariyani et al. · 2023 [cited by applicant]
US 20230245463A1 · Varma et al. · 2023 [cited by applicant]
US 20230272998A1 · Lee · 2023 [cited by applicant]
CN 106796390A · 2017 [cited by applicant]
CN 113905176A · 2022 [cited by applicant]
EP 2709069A1 · 2014 [cited by applicant]
“Taxonomy and Definitions for Terms Related to Driving Automation Systems for On-Road Motor Vehicles”, National Highway Traffic Safety Administration (NHTSA), A Division of the US Department of Transportation, and the S… [cited by applicant]
“Taxonomy and Definitions for Terms Related to Driving Automation Systems for On-Road Motor Vehicles”, National Highway Traffic Safety Administration (NHTSA), A Division of the US Department of Transportation, and the S… [cited by applicant]
IEC 61508, “Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems,” Retrieved from Internet URL: https://en.wikipedia.org/wiki/IEC_61508, accessed on Apr. 1, 2022, 7 pages. [cited by applicant]
ISO 26262, “Road vehicle—Functional safety,” International standard for functional safety of electronic system, Retrieved from Internet URL: https://en.wikipedia.org/wiki/ISO_26262, accessed on Sep. 13, 2021, 8 pages. [cited by applicant]
Appia, V., et al., “Surround view camera system for ADAS on TI's TDAx SoCs”, Texas Instruments, pp. 1-18 (Oct. 2015). [cited by applicant]
Burt, P., J., and Adelson, E., H., “A Multiresolution Spline With Application to Image Mosaics”, ACM Transactions on Graphics, vol. 2, No. 4, pp. 217-236 (Oct. 1983). [cited by applicant]
Danielsson, P., E., “Euclidean Distance Mapping”, Computer Graphics and image processing, vol. 14, pp. 227-248 (1980). [cited by applicant]
Garcia, J., D., E., “3D Reconstruction for Optimal Representation of Surroundings in Automotive HMIs, Based on Fisheye Multi-camera Systems”, PhD thesis, Combined Faculty for the Natural Sciences and Mathematics, pp. 1-… [cited by applicant]
Hu, J., S., and Chen, M.-Y., “A Sliding-Window Visual-IMU Odometer Based on Tri-focal Tensor Geometry”, 2014 IEEE International Conference on Robotics & Automation (ICRA), IEEE, pp. 3963-3968 (2014). [cited by applicant]
Nister, D., et al., “Visual Odometry”, In Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, CVPR, pp. 1-8 (2004). [cited by applicant]
Raudies, F., and Neumann, H., “A review and evaluation of methods estimating ego-motion”, Computer Vision and Image Understanding, vol. 116, pp. 606-633 (2012). [cited by applicant]
Scaramuzza, D., et al., “A Flexible Technique for Accurate Omnidirectional Camera Calibration and Structure from Motion”, In Proceedings of the Fourth IEEE International Conference on Computer Vision Systems (ICVS 2006)… [cited by applicant]
Wallrath, P., and Herschel, R., “Egomotion estimation for a sensor platform by fusion of radar and IMU data”, In Proceedings of the 2020 17th European Radar Conference (EuRAD), IEEE pp. 314-317 (2021). [cited by applicant]
Zhang, B., et al., “A surround view camera solution for embedded systems”, In Proceedings of the IEEE conference on computer vision and pattern recognition workshops, IEEE, pp. 662-667 (2014). [cited by applicant]
Zhang, L., et al., “Deep Image Blending”, In Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision, IEEE, pp. 231-240 (2020). [cited by applicant]
Zhang, T., et al., “ROECS: A Robust Semi-direct Pipeline Towards Online Extrinsics Correction of the Surround-view System”, In Proceedings of the 29th ACM International Conference on Multimedia, ACM, ISBN, pp. 3153-3161… [cited by applicant]
Zhang, Z., “A Flexible New Technique for Camera Calibration”, IEEE Transactions on pattern analysis and machine intelligence, vol. 22, No. 11, pp. 1330-1334, (Nov. 2000). [cited by applicant]
Zhong, S., and Chirarattananon, P., “Direct Visual-Inertial Ego-Motion Estimation via Iterated Extended Kalman Filter”, IEEE Robotics and Automation Letters, pp. 1-8 (Jan. 2020). [cited by applicant]
U.S. Appl. No. 18/173,589, filed Feb. 23, 2023, titled “Image Stitching With Dynamic Seam Placement Based on Object Saliency for Surround View Visualization”. [cited by applicant]
U.S. Appl. No. 18/173,603, filed Feb. 23, 2023, titled “Image Stitching With Dynamic Seam Placement Based on Ego-Vehicle State for Surround View Visualization”. [cited by applicant]
U.S. Appl. No. 18/173,623, filed Feb. 23, 2023, titled “Image Stitching With an Adaptive Three-Dimensional Bowl Model of the Surrounding Environment for Surround View Visualization”. [cited by applicant]
U.S. Appl. No. 18/173,615, filed Feb. 23, 2023, titled “Under Vehicle Reconstruction for Vehicle Environment Visualization”. [cited by applicant]
U.S. Appl. No. 18/173,630, filed Feb. 23, 2023, titled “Optimized Visualization Streaming for Vehicle Environment Visualization”. [cited by applicant]
https://www.youtube.com/watch?v=bPe0_DHIj4A Marcos Hido (Year: 2020). [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 17/969,514, Notification Date: Apr. 21, 2025, 16 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,623, Notification Date: Apr. 24, 2025, 22 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,623, Notification Date: Jul. 1, 2025, 27 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,630, Notification Date: Jun. 26, 2025, 25 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,0623, Notification Date: Dec. 30, 2024, 19 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,165 Notification Date: Jul. 2, 2025, 22 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,589 Notification Date: Jun. 13, 2025, 31 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/173,603, Notification Date: Jun. 17, 2025, 26 pages. [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 18/353,441, Notification Date: May 15, 2025, 16 pages. [cited by applicant]
1 Non-Final Office Action, U.S. Appl. No. 18/313,121, Notification Date: Jul. 25, 2025, 12 pages. [cited by applicant]
Final Office Action, U.S. Appl. No. 18/173,589, Notification Date: Oct. 7, 2025, 34 pages. [cited by applicant]
Notice of Allowance, U.S. Appl. No. 17/969,514, Notification Date: Sep. 15, 2025,8 pages. [cited by applicant]
Final Office Action, U.S. Appl. No. 18/353,441, Notification Date: Nov. 14, 2025, 13 pages. [cited by applicant]
Final Office Action, U.S. Appl. No. 18/173,615, Notification Date: Nov. 25, 2025, 20 pages. [cited by applicant]
Final Office Action, U.S. Appl. No. 18/173,630, Notification Date: Nov. 28, 2025, 21 pages. [cited by applicant]
Notice of Allowance U.S. Appl. No. 18/173,623, Notification Date: Dec. 5, 2025, 8 pages. [cited by applicant]