Method and apparatus for electronically distributing motion panoramic images
First Claim
1. A computer controlled method for presenting a view into a motion panoramic image, said method including steps of:
- obtaining availability information related to said motion panoramic image, said availability information including tier information;
determining a viewpoint into said motion panoramic image, said viewpoint defining said view;
receiving a frame of said motion panoramic image;
simultaneously encoding a plurality of portions of said frame into a plurality of encoded portions in accordance with said availability information;
providing said plurality of encoded portions responsive to a selection of said availability information; and
presenting said view responsive to said data.
10 Assignments
0 Petitions
Accused Products
Abstract
This patent discloses an electronic image distribution apparatus for distributing motion panoramic images. The main portion of the apparatus is a motion panoramic image server that has a source of motion panoramic images. The source of panoramic image frames may be a motion panoramic image playback device or a connection to a motion panoramic camera system. The motion panoramic image server transforms the panoramic image frames into an intermediate format that is more conducive for electronic transmission. In particular, portions of the panoramic image are encoded at a higher quality as compared to other portions of the panoramic image. A client computer obtains information about the encoding and subscribes to one or more tiles depending on the viewpoint of interest. The client computer receives and presents the data in these tiles. In addition, the patent discloses how to adjust the subscription based on the actual and/or predicted pan operations to obtain a quality presentation.
291 Citations
80 Claims
-
1. A computer controlled method for presenting a view into a motion panoramic image, said method including steps of:
-
obtaining availability information related to said motion panoramic image, said availability information including tier information;
determining a viewpoint into said motion panoramic image, said viewpoint defining said view;
receiving a frame of said motion panoramic image;
simultaneously encoding a plurality of portions of said frame into a plurality of encoded portions in accordance with said availability information;
providing said plurality of encoded portions responsive to a selection of said availability information; and
presenting said view responsive to said data.
-
-
2. A computer controlled method for presenting a view into a motion panoramic image, said method including steps of:
-
obtaining availability information related to said motion panoramic image, said availability information including tier information;
determining an available bandwidth for accessing one or more tiles;
determining a viewpoint into said motion panoramic image, said viewpoint defining said view;
accessing said one or more tiles, responsive to said tier information, said viewpoint and said available bandwidth, said one or more tiles containing data used to present said view; and
presenting said view responsive to said data. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
subscribing to said one or more tiles responsive to said viewpoint and said availability information to establish a tile subscription; and
receiving said one or more tiles responsive to said tile subscription.
-
-
6. The computer controlled method of claim 5 further including steps of:
-
panning said viewpoint;
detecting that the step of panning was a significant pan of said viewpoint; and
changing said tile subscription.
-
-
7. The computer controlled method of claim 5 further including steps of:
-
detecting that said viewpoint is stable; and
changing said tile subscription responsive to the step of detecting.
-
-
8. The computer controlled method of claim 5 further including steps of:
-
detecting that said viewpoint is substantially constant over a specified period; and
changing said tile subscription to increase a quality of said view as presented.
-
-
9. The computer controlled method of claim 8 wherein said quality is selected from the set consisting of presented resolution, field of view, view size, frame rate, compression, and color depth.
-
10. The computer controlled method of claim 2 wherein said tier information includes tile information.
-
11. The computer controlled method of claim 2 wherein said tier information includes compression information.
-
12. The computer controlled method of claim 5 wherein the step of obtaining said availability information further includes accessing a server computer.
-
13. The computer controlled method of claim 12 wherein said server computer performs steps of:
-
sending said availability information;
receiving said tile subscription; and
sending said one or more tiles responsive to said tile subscription.
-
-
14. The computer controlled method of claim 2 wherein the step of obtaining includes accessing information from a computer readable media.
-
15. A computer controlled method for encoding a motion panoramic image, said method including steps of:
-
receiving a frame of said motion panoramic image;
simultaneously encoding a plurality of portions of said frame into a plurality of encoded portions in accordance with availability information; and
providing said plurality of encoded portions responsive to a selection of said availability information. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for presenting a view into a motion panoramic image, said apparatus includes:
-
a first access mechanism configured to obtain availability information related to said motion panoramic image, said availability information including tier information;
a bandwidth determination mechanism configured to determine the available bandwidth for accessing one or more tiles;
a viewpoint determination mechanism configured to determine a viewpoint into said motion panoramic image, said viewpoint defining said view;
a second access mechanism configured to access said one or more tiles, responsive to the viewpoint determination mechanism, the bandwidth determination mechanism and said tier information, said one or more tiles containing data used to present said view; and
a presentation mechanism configured to present said view responsive to said data accessed by the second access mechanism. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
a subscription mechanism configured to subscribe to said one or more tiles responsive to said viewpoint and said availability information to establish a tile subscription; and
a receiver mechanism configured to receive said one or more tiles responsive to said tile subscription determined by the subscription mechanism.
-
-
33. The apparatus of claim 32 further including:
-
a pan mechanism configured to pan said viewpoint;
a detection mechanism configured to detect that the pan mechanism performed a significant pan of said viewpoint responsive to the pan mechanism; and
a subscription modification mechanism configured to change said tile subscription responsive to the detection mechanism.
-
-
34. The apparatus of claim 32 further including:
-
a stability determination mechanism configured to detect that said viewpoint is stable; and
a subscription modification mechanism configured to change said tile subscription responsive to the stability determination mechanism.
-
-
35. The apparatus of claim 32 further including:
-
a detection mechanism configured to detect that said viewpoint is substantially constant over a specified period; and
a subscription modification mechanism configured to change said tile subscription to increase a quality of said view as presented, the subscription modification mechanism responsive to the detection mechanism.
-
-
36. The apparatus of claim 35 wherein said quality is selected from the set consisting of presented resolution, field of view, view size, frame rate, compression, and color depth.
-
37. The apparatus of claim 29 wherein said tier information includes tile information.
-
38. The apparatus of claim 29 wherein said tier information includes compression information.
-
39. The apparatus of claim 32 wherein the first access mechanism is further configured to access a server computer.
-
40. he apparatus of claim 39 wherein said server computer includes:
-
a first sending mechanism configured to send said availability information;
a subscription receiver mechanism configured to receive said tile subscription; and
a second sending mechanism configured to send said one or more tiles responsive to said tile subscription.
-
-
41. The apparatus of claim 29 wherein the first access mechanism includes a media reader device configured to access information from a computer readable media.
-
42. An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for encoding a motion panoramic image, said apparatus includes:
-
a frame receiver configured to receive a frame of said motion panoramic image;
an encoder array configured to simultaneously encode a plurality of portions of said frame received from the frame receiver into a plurality of encoded portions in accordance with availability information; and
a distribution mechanism configured to provide said plurality of encoded portions responsive to a selection of said availability information. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
-
-
55. A computer program product including:
-
a computer usable data carrier having computer readable code embodied therein for causing a computer to present a view into a motion panoramic image, said computer readable code including;
computer readable program code configured to cause said computer to effect a first access mechanism configured to obtain availability information related to said motion panoramic image, said availability information including tier information;
computer readable program code configured to cause said computer to effect a bandwidth determination mechanism configured to determine the available bandwidth for accessing one or more tiles;
computer readable program code configured to cause said computer to effect a viewpoint determination mechanism configured to determine a viewpoint into said motion panoramic image, said viewpoint defining said view;
computer readable program code configured to cause said computer to effect a second access mechanism configured to access said one or more tiles, responsive to the viewpoint determination mechanism, the bandwidth determination mechanism and said tier information, said one or more tiles containing data used to present said view; and
computer readable program code configured to cause said computer to effect a presentation mechanism configured to present said view responsive to said data accessed by the second access mechanism. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62, 63, 64, 65)
computer readable program code configured to cause said computer to effect a subscription mechanism configured to subscribe to said one or more tiles responsive to said viewpoint and said availability information to establish a tile subscription; and
computer readable program code configured to cause said computer to effect a receiver mechanism configured to receive said one or more tiles responsive to said tile subscription determined by the subscription mechanism.
-
-
61. The computer program product of claim 60 further including:
-
computer readable program code configured to cause said computer to effect a pan mechanism configured to pan said viewpoint;
computer readable program code configured to cause said computer to effect a detection mechanism configured to detect that the pan mechanism performed a significant pan of said viewpoint responsive to the pan mechanism; and
computer readable program code configured to cause said computer to effect a subscription modification mechanism configured to change said tile subscription responsive to the detection mechanism.
-
-
62. The computer program product of claim 60 further including:
-
computer readable program code configured to cause said computer to effect a stability determination mechanism configured to detect that said viewpoint is stable; and
computer readable program code configured to cause said computer to effect a subscription modification mechanism configured to change said tile subscription responsive to the stability determination mechanism.
-
-
63. The computer program product of claim 60 further including:
-
computer readable program code configured to cause said computer to effect a detection mechanism configured to detect that said viewpoint is substantially constant over a specified period; and
computer readable program code configured to cause said computer to effect a subscription modification mechanism configured to change said tile subscription to increase a quality of said view as presented, the subscription modification mechanism responsive to the detection mechanism.
-
-
64. The computer program product of claim 63 wherein said quality is selected from the set consisting of presented resolution, field of view, view size, frame rate, compression, and color depth.
-
65. The computer program product of claim 60 wherein the first access mechanism further includes computer readable program code configured to cause said computer to access a server computer.
-
66. A computer program product including:
-
a computer usable data carrier having computer readable code embodied therein for causing a computer to encode a motion panoramic image, said computer readable code including;
computer readable program code configured to cause said computer to effect a frame receiver configured to receive a frame of said motion panoramic image;
computer readable program code configured to cause said computer to effect an encoder array configured to simultaneously encode a plurality of portions of said frame received from the frame receiver into a plurality of encoded portions in accordance with availability information; and
computer readable program code configured to cause said computer to effect a distribution mechanism configured to provide said plurality of encoded portions responsive to a selection of said availability information. - View Dependent Claims (67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80)
-
Specification