IP Library Granted Patent US 9,298,256
Granted Patent B1
US 9,298,256 · App. 14/603,287 · Granted Mar 29, 2016

Visual completion

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 9,298,256
App. No.
14/603,287
Granted
Mar 29, 2016
Kind
B1
Abstract

Methods and devices for initiating, updating, and displaying the results of a search of an object-model database are disclosed. In one embodiment, a method is disclosed that includes receiving video data recorded by a camera on a wearable computing device and, based on the video data, detecting a movement corresponding to a selection of an object. The method further includes, before the movement is complete, initiating a search on the object of an object-model database. The method still further includes, during the movement, periodically updating the search and causing the wearable computing device to overlay the object with object-models from the database corresponding to results of the search.

Claims (67)

1. A method comprising:

receiving, by a processor of a device, video data recorded by a camera;

detecting, by the processor of the device, a movement in the video data corresponding to a selection of an object;

during the movement, initiating, by the processor of the device, a search of an object-model database for one or more object models corresponding to the object;

causing, by the processor of the device, a graphical interface to display information associated with object-models from the object-model database corresponding to results of the search; and

causing the graphical interface to overlay the object with the object-models from the object-model database corresponding to results of the search, wherein the object-models are translucent such that the object is at least partially visible through the overlaid object-models.

2. The method of claim 1 , wherein the video data represents a video, the method further comprising:

causing the graphical interface to display the video.

3. The method of claim 1 , wherein detecting a movement in the video data corresponding to a selection of an object comprises:

detecting a hand in one or more frames of the video data; and

detecting a movement of the hand that at least partially occludes the object from a perspective of the camera.

4. The method of claim 1 , wherein detecting a movement in the video data corresponding to a selection of an object comprises:

detecting a hand in one or more frames of the video data; and

detecting a movement of the hand that includes a movement of the hand around a at least a portion of an apparent boundary of the object as viewed from a perspective of the camera.

5. A method comprising:

receiving, by a processor of a device, video data recorded by a camera;

detecting, by the processor of the device, a movement in the video data corresponding to a selection of an object;

during the movement, initiating, by the processor of the device, a search of an object-model database for one or more object models corresponding to the object;

causing, by the processor of the device, a graphical interface to display information associated with object-models from the object-model database corresponding to results of the search; and

receiving data indicating an acceptance of one of the object models, wherein receiving data indicating an acceptance of one of the object models comprises:

receiving video data recorded by the camera; and

detecting a movement in the video data corresponding to an acceptance of an object of one of the object models.

6. The method of claim 5 , wherein the video data represents a video, the method further comprising:

causing the graphical interface to display the video.

7. The method of claim 5 , wherein detecting a movement in the video data corresponding to a selection of an object comprises:

detecting a hand in one or more frames of the video data; and

detecting a movement of the hand that at least partially occludes the object from a perspective of the camera.

8. The method of claim 5 , wherein detecting a movement in the video data corresponding to a selection of an object comprises:

detecting a hand in one or more frames of the video data; and

detecting a movement of the hand that includes a movement of the hand around a at least a portion of an apparent boundary of the object as viewed from a perspective of the camera.

9. A device comprising:

a camera;

a graphical interface; and

a controller operable to:

receive video data recorded by the camera;

detect a movement in the video data corresponding to a selection of an object;

during the movement, initiate a search of an object-model database for one or more object models corresponding to the object; and

cause the graphical interface to display overlays over the object, wherein the overlays comprise representations of object-models from the object-model database corresponding to results of the search, wherein the object-models are translucent such that the object is at least partially visible through the overlaid object-models.

10. The device of claim 9 , wherein the controller is further operable to:

during the movement, detect one or more portions of the movement that indicate respective aspects of the object;

update the search based on the one or more aspects of the object to obtain one or more additional results of the search; and

cause the graphical interface to display one or more additional overlays over the object, wherein the one or more additional overlays comprise representations of object-models from the object-model database corresponding to the one or more additional results of the search.

11. The device of claim 9 , wherein the controller is further operable to:

cause the graphical interface to display information associated with object-models from the object-model database corresponding to results of the search.

12. The device of claim 9 , wherein the controller is further operable to:

receive input data indicating an acceptance of one of the object models; and

responsively cause the graphical interface to display information associated with the accepted object-model.

13. The device of claim 9 , wherein the controller is further operable to

in response to receiving the video data, causing the graphical interface to display the received video data.

14. A method comprising:

receiving, by a processor of a server, video data recorded by a camera on a device;

detecting, by the processor of the server, a movement in the video data corresponding to a selection of an object;

during the movement, initiating search of an object-model database for one or more object models corresponding to the object; and

transmitting to the device data representing object-models from the object-model database corresponding to results of the search, wherein the device is configured to (i) display, via a graphical interface, information associated with object-models from the object-model database corresponding to results of the search, and (ii) cause the graphical interface to overlay the object with the object-models from the object-model database corresponding to results of the search, wherein the object-models are translucent such that the object is at least partially visible through the overlaid object-models.

15. The method of claim 14 , further comprising:

transmitting to the device information associated with object-models from the object-model database corresponding to results of the search.

16. The method of claim 14 , further comprising:

receiving data indicating an acceptance of one of the object models.

17. The method of claim 16 , wherein receiving data indicating an acceptance of one of the object models comprises:

receiving video data recorded by the camera; and

detecting a movement in the video data corresponding to an acceptance of an object of one of the object models.

18. The method of claim 14 , further comprising:

rotating the object models to match an orientation of the object in the received video data.

19. The method of claim 14 , further comprising:

scaling the object models proportionate to the object in the received video data.

20. The method of claim 14 , wherein transmitting to the device data representing object-models from the object-model database corresponding to results of the search comprises:

transmitting to the device the video data representing the video data with overlays over the object, wherein the overlays comprise representations of object-models from the object-model database corresponding to results of the search.

Assignments (3)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044566/0657 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2015
From: STARNER, THAD EUGENE
To: GOOGLE INC.
Reel/Frame 034794/0690 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2015
From: ESSA, IRFAN
To: GOOGLE INC.
Reel/Frame 034794/0710 →