IP Library › Granted Patent US 12,219,291
Granted Patent B2
US 12,219,291 · App. 17/862,689 · Granted Feb 4, 2025

Visual echo cancellation

Inventor: Shane Paul Springer (Manchester, MI)
Assignee: Zoom Communications, Inc.
H04N7/15G06V40/172H04N7/14
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,219,291
App. No.
17/862,689
Granted
Feb 4, 2025
Kind
B2
Abstract

A computing device outputs, to a display of the computing device during a video conference, remotely-generated visual data obtained from at least one remote device and camera-generated visual data captured using a camera of the computing device. The computing device identifies, within the camera-generated visual data, a reflection of at least a portion of data displayed at the display of the computing device. The computing device modifies the camera-generated visual data to remove the reflection. The computing device outputs, to the display of the computing device during the video conference, the modified camera-generated visual data. The computing device transmits the modified camera-generated visual data to the at least one remote device for display thereat during the video conference.

Claims (49)

1. A method, comprising:

outputting, to a display of a computing device during a video conference, remotely-generated visual data obtained from at least one remote device and camera-generated visual data captured using a camera of the computing device;

identifying, within the camera-generated visual data, a reflection of at least a portion of data displayed at the display of the computing device by:

computing a similarity score between a part of the remotely-generated visual data and a part of the camera-generated visual data; and

determining that the part of the camera-generated visual data comprises the reflection if the similarity score exceeds a threshold;

modifying the camera-generated visual data to remove the reflection; and

transmitting the modified camera-generated visual data to the at least one remote device for display thereat during the video conference.

2. The method of claim 1 , comprising:

outputting, to the display of the computing device during the video conference, the modified camera-generated visual data.

3. The method of claim 1 , comprising:

storing, at the computing device, background visual data associated with a background of a field of view of the camera of the computing device, wherein the reflection is identified based on the background visual data, wherein modifying the camera-generated visual data comprises replacing a portion of the camera-generated visual data with a portion of the background visual data.

4. The method of claim 1 , wherein the similarity score accounts for visual echo events detected using the camera of the computing device.

5. The method of claim 1 , comprising:

applying facial recognition to the modified camera-generated visual data to identify at least one user participating in the video conference via the computing device.

6. The method of claim 1 , wherein the reflection is identified based on a stored position of the camera, a stored position of the display, and a computed reflection angle associated with a surface generating the reflection.

7. The method of claim 1 , wherein modifying the camera-generated visual data to remove the reflection comprises replacing, within the camera-generated visual data, the reflection with at least a portion of a preset image.

8. The method of claim 1 , wherein modifying the camera-generated visual data to remove the reflection comprises:

identifying, within the camera-generated visual data, a reflective surface; and

replacing, within the camera-generated visual data, the reflective surface with at least a portion of a preset image.

9. A non-transitory computer readable medium storing instructions operable to cause one or more processors to perform operations comprising:

outputting, to a display of a computing device during a video conference, remotely-generated visual data obtained from at least one remote device and camera-generated visual data captured using a camera of the computing device;

identifying, within the camera-generated visual data, a reflection of at least a portion of data displayed at the display of the computing device by:

computing a similarity score between a part of the remotely-generated visual data and a part of the camera-generated visual data; and

determining that the part of the camera-generated visual data comprises the reflection if the similarity score is within a predefined range;

modifying the camera-generated visual data to remove the reflection; and

transmitting the modified camera-generated visual data to the at least one remote device for display thereat during the video conference.

10. The computer readable medium of claim 9 , the operations comprising:

storing a background image associated with a background of a field of view of the camera of the computing device, wherein the reflection is identified based on the background image, wherein modifying the camera-generated visual data comprises replacing a portion of the camera-generated visual data with a portion of the background image.

11. The computer readable medium of claim 9 , the operations comprising:

applying facial recognition to the modified camera-generated visual data to identify a user participating in the video conference; and

generating a closeup view of the identified user.

12. The computer readable medium of claim 9 , wherein the reflection is identified based on a stored camera location, a stored display location, and a computed reflection angle associated with a surface generating the reflection.

13. The computer readable medium of claim 9 , wherein modifying the camera-generated visual data to remove the reflection comprises replacing the reflection with at least a portion of a preset image.

14. An apparatus, comprising:

a memory; and

a processor configured to execute instructions stored in the memory to:

output, to a display of a computing device during a video conference, remotely-generated visual data obtained from at least one remote device and camera-generated visual data captured using a camera of the computing device;

identify, within the camera-generated visual data, a reflection of at least a portion of data displayed at the display of the computing device by:

computing a similarity score between a part of the remotely-generated visual data and a part of the camera-generated visual data; and

determining that the part of the camera-generated visual data comprises the reflection if the similarity score exceeds a threshold;

modify the camera-generated visual data to remove the reflection; and

transmit the modified camera-generated visual data to the at least one remote device for display thereat during the video conference.

15. The apparatus of claim 14 , the processor further configured to execute the instructions stored in the memory to:

identify the reflection based on stored background visual data associated with a background of a field of view of the camera, wherein modifying the camera-generated visual data comprises replacing a portion of the camera-generated visual data with a portion of the background visual data.

16. The apparatus of claim 14 , wherein the similarity score accounts for reflections, refractions, or distortions detected using the camera of the computing device.

17. The apparatus of claim 14 , the processor further configured to execute the instructions stored in the memory to:

identify at least one user participating in the video conference via the computing device via facial recognition software applied to the modified camera-generated visual data.

18. The apparatus of claim 14 , wherein the reflection is identified based on a computed reflection angle associated with a surface generating the reflection.

19. The apparatus of claim 14 , wherein modifying the camera-generated visual data to remove the reflection comprises replacing, within the camera-generated visual data, the reflection with a stored image.

Assignments (2)
CHANGE OF NAME Recorded Dec 27, 2024
From: ZOOM VIDEO COMMUNICATIONS, INC.
To: ZOOM COMMUNICATIONS, INC.
Reel/Frame 069792/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2022
From: SPRINGER, SHANE PAUL
To: ZOOM VIDEO COMMUNICATIONS, INC.
Reel/Frame 060483/0385 →
Continuity (1)
Related Publication 20240020800A1 · Jan 18, 2024
References Cited (11)
US 11032513B2 · Pell · 2021 [cited by applicant]
US 20050180631A1 · Zhang · 2005 [cited by examiner]
US 20090251527A1 · Gachignard · 2009 [cited by examiner]
US 20220058775A1 · Duan · 2022 [cited by examiner]
US 20220269469A1 · Kennedy · 2022 [cited by examiner]
US 20220318954A1 · Wu · 2022 [cited by examiner]
US 20230140114A1 · Grover · 2023 [cited by examiner]
US 20230171300A1 · Zhang · 2023 [cited by examiner]
Machine Learning is Transforming video Conferencing Industry, https://talkcmo.com/interviews/machine-learning-isptransforming-video- . . . , Sneha Bokil, Mar. 17, 2020, 6 pages. [cited by applicant]
Difference Between Computer Vision and Image Recognition, https://deepomatic.com/difference-between-computer-vision-and-image- . . . , EWAN, Jun. 26, 2017, 4 pages. [cited by applicant]
Visual Echo Cancellation in a Projector-Camera-Whiteboard System, University of Illinois at Urbana-Champaign, Hanning Zhou, Zengyou Zhang, Thomas Huang, 2004, 4 pages. [cited by applicant]