IP Library Granted Patent US 8,669,959
Granted Patent B2
US 8,669,959 · App. 13/768,406 · Granted Mar 11, 2014

Passive touch system and method of detecting user input

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 8,669,959
App. No.
13/768,406
Granted
Mar 11, 2014
Kind
B2
Abstract

A passive touch system includes a passive touch surface and at least two cameras associated with the touch surface. The at least two cameras acquire images of the touch surface from different locations and have overlapping fields of view. A processor receives and processes images acquired by the at least two cameras to detect the existence of a pointer therein and to determine the location of the pointer relative to the touch surface. Actual pointer contact with the touch surface and pointer hover above the touch surface can be determined.

Claims (36)

1. A method comprising:

acquiring first and second images from different viewpoints;

subtracting said first and second images from background images to form first and second difference images;

processing each of said first and second difference images to determine if a region of interest within the difference image including a pointer exists therein, said region of interest being based on summed pixel intensities exceeding a threshold;

for each region of interest, masking the pixels of the region of interest to contrast pixels representing the pointer from pixels representing the background;

determining a position of the pointer based on pointer information calculated from the regions of interest; and

controlling an application based on the determined position of the pointer.

2. The method of claim 1 , wherein the first and second images are captured by first and second cameras looking generally across a touch surface.

3. The method of claim 2 , wherein the determined position of the pointer is a relative position with respect to the touch surface.

4. The method of claim 1 , further comprising determining the velocity of the pointer or the angle of the pointer, wherein the application is controlled further based on the determined pointer velocity or pointer angle.

5. The method of claim 2 , further comprising determining whether the pointer is hovering above or in contact with the touch surface.

6. The method of claim 3 , further comprising determining whether the pointer is hovering above or in contact with the touch surface.

7. The method of claim 2 , further comprising determining the velocity of the pointer or the angle of the pointer, wherein the application is controlled further based on the determined pointer velocity or pointer angle.

8. The method of claim 3 , further comprising determining the velocity of the pointer or the angle of the pointer, wherein the application is controlled further based on the determined pointer velocity or pointer angle.

9. An apparatus comprising:

cameras configured to acquire first and second images from different viewpoints;

and at least one processor configured to:

subtract said first and second images from background images to form first and second difference images;

process each of said first and second difference images to determine if a region of interest within the difference image including a pointer exists therein, said region of interest being based on summed pixel intensities exceeding a threshold;

for each region of interest, mask the pixels of the region of interest to contrast pixels representing the pointer from pixels representing the background;

determine a position of the pointer based on pointer information calculated from the regions of interest; and

control an application based on the determined position of the pointer.

10. The apparatus of claim 9 , wherein the first and second cameras look generally across a touch surface.

11. The apparatus of claim 10 , wherein the determined position of the pointer is a relative position with respect to the touch surface.

12. The apparatus of claim 9 , wherein the at least one processor is further configured to determine the velocity of the pointer or the angle of the pointer and further to control the application based on the determined pointer velocity or pointer angle.

13. The apparatus of claim 10 , wherein the at least one processor is further configured to determine whether the pointer is hovering above or in contact with the touch surface.

14. The apparatus of claim 11 , wherein the at least one processor is further configured to determine whether the pointer is hovering above or in contact with the touch surface.

15. The apparatus of claim 10 , wherein the at least one processor is further configured to determine the velocity of the pointer or the angle of the pointer and further to control the application based on the determined pointer velocity or pointer angle.

16. The apparatus of claim 11 , wherein the at least one processor is further configured to determine the velocity of the pointer or the angle of the pointer and further to control the application based on the determined pointer velocity or pointer angle.

17. A non-transitory computer-readable medium embodying computer program code that, when executed, causes an apparatus at least to:

acquire first and second images from different viewpoints;

subtract said first and second images from background images to form first and second difference images;

process each of said first and second difference images to determine if a region of interest within the difference image including a pointer exists therein, said region of interest being based on summed pixel intensities exceeding a threshold;

for each region of interest, mask the pixels of the region of interest to contrast pixels representing the pointer from pixels representing the background;

determine a position of the pointer based on pointer information calculated from the regions of interest; and

control an application based on the determined position of the pointer.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Dec 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040819/0306 →
RELEASE OF SECURITY INTEREST Recorded Dec 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040798/0077 →
RELEASE OF ABL SECURITY INTEREST Recorded Nov 29, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040711/0956 →
RELEASE OF TERM LOAN SECURITY INTEREST Recorded Nov 29, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040713/0123 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2014
From: MORRISON, GERALD; SINGH, MAVINDER
To: SMART TECHNOLOGIES ULC
Reel/Frame 031991/0336 →
SECURITY AGREEMENT Recorded Aug 1, 2013
From: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING INC.
Reel/Frame 030935/0848 →
SECURITY AGREEMENT Recorded Aug 1, 2013
From: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 030935/0879 →