IP Library › Granted Patent US 9,852,356
Granted Patent B2
US 9,852,356 · App. 15/457,876 · Granted Dec 26, 2017

Image acquisition user interface for linear panoramic image stitching

Inventors: Jamey Graham (Menlo Park, CA); Daniel G. Van Olst (Menlo Park, CA)
Assignee: Ricoh Company, Ltd.
G06K9/6201G06F3/04886G06K9/00664G06K9/3208G06K9/34G06K9/342G06Q10/087G06Q30/0643G06T3/4038G06T7/0002H04N1/3876H04N5/23222H04N5/23238H04N5/23293G06F17/30247G06T2207/20212G06T2207/20221
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,852,356
App. No.
15/457,876
Granted
Dec 26, 2017
Kind
B2
Abstract

A system and method that allows the capture of a series of images to create a single linear panoramic image is disclosed. The method includes capturing an image, dynamically comparing a previously captured image with a preview image on a display of a capture device until a overlap threshold is satisfied, generating a user interface to provide feedback on the display of the capture device to guide a movement of the capture device, and capturing the preview image with enough overlap with the previously captured image with little to no tilt for creating a linear panorama.

Claims (75)

1. A method comprising:

receiving an image of a portion of an object of interest from a client device;

identifying the image as a reference image;

determining features of the reference image;

receiving a preview image of another portion of the object of interest;

generating a user interface including the preview image;

determining a tilt of the client device in one or more of three axes of orientation;

adding to the user interface a first visually distinct indicator overlaid on the preview image for guiding a reorientation of the client device to nullify the tilt;

determining features of the preview image;

comparing dynamically the features of the reference image with the features of the preview image to determine an overlap;

determining whether the overlap between the reference image and the preview image satisfies an overlap threshold and the tilt is nullified; and

responsive to the overlap between the reference image and the preview image satisfying the overlap threshold and the tilt being nullified, setting the preview image of the object of interest as the reference image.

2. The method of claim 1 , further comprising:

receiving gyroscope sensor information from the client device; and

wherein determining the tilt of the client device in the one of the three axes of orientation is based on the gyroscope sensor information.

3. The method of claim 1 , wherein adding to the user interface the first visually distinct indicator overlaid on the preview image for guiding the reorientation of the client device further comprises:

placing the first visually distinct indicator on a periphery of the preview image; and

coupling the first visually distinct indicator to the tilt of the client device, such that an instantaneous tilt feedback is provided on the user interface when the tilt of the client device is determined.

4. The method of claim 3 , wherein placing the first visually distinct indicator on the periphery of the preview image further comprises:

placing a first pair of tilt-reference arrows on top and bottom of the periphery of the preview image and a second pair of tilt-reference arrows on left and right of the periphery of the preview image, the first pair of tilt-reference arrows being connected by a first straight line and the second pair of tilt-reference arrows connected by a second straight line for serving as the first visually distinct indicator; and

providing the instantaneous tilt feedback by displacing the first pair of tilt-reference arrows in conjunction with the first straight line toward left of the user interface or toward right of the user interface from a first neutral position to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by displacing the second pair of tilt-reference arrows in conjunction with the second straight line toward top of the user interface or toward bottom of the user interface from a second neutral position to indicate an extent of the tilt caused by pitching of the client device forward or backward.

5. The method of claim 3 , wherein placing the first visually distinct indicator on the periphery of the preview image further comprises:

placing a first pair of gradient indicators on top and bottom of the periphery of the preview image and a second pair of gradient indicators on left and right of the periphery of the preview image, the first pair of gradient indicators and the second pair of gradient indicators serving as the first visually distinct indicator; and

providing the instantaneous tilt feedback by indicating an appearance of a first color in the first pair of gradient indicators toward left of the user interface or toward right of the user interface to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by indicating an appearance of a second color in the second pair of gradient indicators toward top of the user interface or toward bottom of the user interface to indicate an extent of the tilt caused by pitching of the client device forward or backward.

6. The method of claim 1 , wherein determining whether the overlap between the reference image and the preview image satisfies the overlap threshold further comprises:

adding to the user interface a second visually distinct indicator overlaid on the preview image for guiding a movement of the client device to produce a desired overlap; and

updating a position of the second visually distinct indicator relative to a target outline overlaid at the center of the of the preview image based on the dynamic comparison of the features of the reference image with the features of the preview image, such that the overlap threshold is visually indicated as being satisfied when the second visually distinct indicator is positioned within the target outline.

7. The method of claim 1 , comprising receiving a next preview image of a different portion of the object of interest based on the reorientation of the client device responsive to the tilt failing to be nullified.

8. The method of claim 1 , comprising sending images received for the object of interest for generating a single linear panoramic image.

9. A system comprising:

one or more processors; and

a memory, the memory storing instructions, which when executed cause the one or more processors to:

receive an image of a portion of an object of interest from a client device;

identify the image as a reference image;

determine features of the reference image;

receive a preview image of another portion of the object of interest;

generate a user interface including the preview image;

determine a tilt of the client device in one or more of three axes of orientation;

add to the user interface a first visually distinct indicator overlaid on the preview image for guiding a reorientation of the client device to nullify the tilt;

determine features of the preview image;

compare dynamically the features of the reference image with the features of the preview image to determine an overlap;

determine whether the overlap between the reference image and the preview image satisfies an overlap threshold and the tilt is nullified; and

responsive to the overlap between the reference image and the preview image satisfying the overlap threshold and the tilt being nullified, setting the preview image of the object of interest as the reference image.

10. The system of claim 9 , wherein the instructions further cause the one or more processors to receive gyroscope sensor information from the client device, and wherein the tilt of the client device in the one of the three axes of orientation is determined based on the gyroscope sensor information.

11. The system of claim 9 , wherein to add to the user interface the first visually distinct indicator overlaid on the preview image for guiding the reorientation of the client device, the instructions further cause the one or more processors to place the first visually distinct indicator on a periphery of the preview image, and couple the first visually distinct indicator to the tilt of the client device, such that an instantaneous tilt feedback is provided on the user interface when the tilt of the client device is determined.

12. The system of claim 11 , wherein to place the first visually distinct indicator on the periphery of the preview image, the instructions further cause the one or more processors to:

place a first pair of tilt-reference arrows on top and bottom of the periphery of the preview image and a second pair of tilt-reference arrows on left and right of the periphery of the preview image, the first pair of tilt-reference arrows being connected by a first straight line and the second pair of tilt-reference arrows connected by a second straight line for serving as the first visually distinct indicator; and

provide the instantaneous tilt feedback by displacing the first pair of tilt-reference arrows in conjunction with the first straight line toward left of the user interface or toward right of the user interface from a first neutral position to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by displacing the second pair of tilt-reference arrows in conjunction with the second straight line toward top of the user interface or toward bottom of the user interface from a second neutral position to indicate an extent of the tilt caused by pitching of the client device forward or backward.

13. The system of claim 11 , wherein to place the first visually distinct indicator on the periphery of the preview image, the instructions further cause the one or more processors to:

place a first pair of gradient indicators on top and bottom of the periphery of the preview image and a second pair of gradient indicators on left and right of the periphery of the preview image, the first pair of gradient indicators and the second pair of gradient indicators serving as the first visually distinct indicator; and

provide the instantaneous tilt feedback by indicating an appearance of a first color in the first pair of gradient indicators toward left of the user interface or toward right of the user interface to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by indicating an appearance of a second color in the second pair of gradient indicators toward top of the user interface or toward bottom of the user interface to indicate an extent of the tilt caused by pitching of the client device forward or backward.

14. The system of claim 9 , wherein to determine whether the overlap between the reference image and the preview image satisfies the overlap threshold, the instructions further cause the one or more processors to:

add to the user interface a second visually distinct indicator overlaid on the preview image for guiding a movement of the client device to produce a desired overlap; and

update a position of the second visually distinct indicator relative to a target outline overlaid at the center of the of the preview image based on the dynamic comparison of the features of the reference image with the features of the preview image, such that the overlap threshold is visually indicated as being satisfied when the second visually distinct indicator is positioned within the target outline.

15. The system of claim 9 , wherein the instructions further cause the one or more processors to receive a next preview image of a different portion of the object of interest based on the reorientation of the client device responsive to the tilt failing to be nullified.

16. A computer program product comprising a non-transitory computer readable medium storing a computer readable program, wherein the computer readable program when executed on a computer causes the computer to:

receive an image of a portion of an object of interest from a client device;

identify the image as a reference image;

determine features of the reference image;

receive a preview image of another portion of the object of interest;

generate a user interface including the preview image;

determine a tilt of the client device in one or more of three axes of orientation;

add to the user interface a first visually distinct indicator overlaid on the preview image for guiding a reorientation of the client device to nullify the tilt;

determine features of the preview image;

compare dynamically the features of the reference image with the features of the preview image to determine an overlap;

determine whether the overlap between the reference image and the preview image satisfies an overlap threshold and the tilt is nullified; and

responsive to the overlap between the reference image and the preview image satisfying the overlap threshold and the tilt being nullified, set the preview image of the object of interest as the reference image.

17. The computer program product of claim 16 , wherein the computer readable program further causes the computer to receive gyroscope sensor information from the client device, and wherein the tilt of the client device in the one of the three axes of orientation is determined based on the gyroscope sensor information.

18. The computer program product of claim 16 , wherein to add to the user interface the first visually distinct indicator overlaid on the preview image for guiding the reorientation of the client device, the computer readable program further causes the computer to place the first visually distinct indicator on a periphery of the preview image, and couple the first visually distinct indicator to the tilt of the client device, such that an instantaneous tilt feedback is provided on the user interface when the tilt of the client device is determined.

19. The computer program product of claim 18 , wherein to place the first visually distinct indicator on the periphery of the preview image, the computer readable program further causes the computer to:

place a first pair of tilt-reference arrows on top and bottom of the periphery of the preview image and a second pair of tilt-reference arrows on left and right of the periphery of the preview image, the first pair of tilt-reference arrows being connected by a first straight line and the second pair of tilt-reference arrows connected by a second straight line for serving as the first visually distinct indicator; and

provide the instantaneous tilt feedback by displacing the first pair of tilt-reference arrows in conjunction with the first straight line toward left of the user interface or toward right of the user interface from a first neutral position to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by displacing the second pair of tilt-reference arrows in conjunction with the second straight line toward top of the user interface or toward bottom of the user interface from a second neutral position to indicate an extent of the tilt caused by pitching of the client device forward or backward.

20. The computer program product of claim 18 , wherein to place the first visually distinct indicator on the periphery of the preview image, the computer readable program further causes the computer to:

place a first pair of gradient indicators on top and bottom of the periphery of the preview image and a second pair of gradient indicators on left and right of the periphery of the preview image, the first pair of gradient indicators and the second pair of gradient indicators serving as the first visually distinct indicator; and

provide the instantaneous tilt feedback by indicating an appearance of a first color in the first pair of gradient indicators toward left of the user interface or toward right of the user interface to indicate an extent of the tilt caused by rolling of the client device to the left or to the right and by indicating an appearance of a second color in the second pair of gradient indicators toward top of the user interface or toward bottom of the user interface to indicate an extent of the tilt caused by pitching of the client device forward or backward.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2017
From: GRAHAM, JAMEY; VAN OLST, DANIEL G
To: RICOH COMPANY, LTD.
Reel/Frame 042018/0177 →
Continuity (4)
Continuation 14791374 · Jul 3, 2015
Provisional Application 62105189 · Jan 19, 2015
Provisional Application 62127750 · Mar 3, 2015
Related Publication 20170187953A1 · Jun 29, 2017