Claims
- 1. A method for encoding motion vectors used in an encoding of an image, the method comprising:
grouping one or more image segments, each image segment having a motion vector, into a segment group; generating a group motion vector for the segment group from the motion vectors of one or more image segments; generating one or more local motion vectors specifying a change for the image segment relative to the group motion vector; and encoding the group motion vector and one or more local motion vectors.
- 2. The method of claim 1, wherein generating the group motion vector comprises determining the group motion vector based on a relationship between the motion vectors of one or more image segments.
- 3. The method of claim 2, wherein the relationship is an average of the motion vectors for the one or more image segments.
- 4. The method of claim 1, wherein the grouping of the one or more image segments is hierarchical.
- 5. The method of claim 4, wherein the grouping of one or more image segments comprises grouping a first set of image segments and a second set of image segments into a segment group.
- 6. The method of claim 4, wherein the grouping of one or more image segments comprises grouping a portion of a set of image segments into a segment group.
- 7. The method of claim 4, wherein the hierarchical grouping of the one or more image segments comprises:
grouping a plurality of image segments from the one or more image segments in a second segment group; and generating a secondary local motion vector for the second segment group, wherein the secondary local motion vector specifies a change for the second segment group relative to the group motion vector and the local motion vector specifies a change for the image segments of the second segment group relative to the secondary local motion vector.
- 8. The method of claim 1, wherein the group motion vector comprises at least one of translation, z-ordering, deformation, and lighting data.
- 9. The method of claim 1, wherein the one or more local motion vectors comprise at least one of translation, z-ordering, deformation, and lighting data.
- 10. A method for decoding motion vectors for a segment group, the method comprising:
receiving a group motion vector for the segment group, the segment group comprised of one or more image segments; receiving one or more local motion vectors, wherein a local motion vector corresponds to at least one segment in the one or more segments and specifies a change for the segment relative to the motion vector for the segment group; decoding the group motion vector and one or more local motion vectors; and generating absolute local motion vectors for each segment of the segment group using the decoded group motion vector and one or more local motion vectors.
- 11. The method of claim 10, further comprising receiving the segment group.
- 12. The method of claim 10, further comprising generating the segment group.
- 13. The method of claim 10, further comprising:
receiving canonical ordering information for the motion vector and local motion vectors; and using the canonical information in generating the image.
- 14. The method of claim 10, further comprising:
receiving partial hints related to at least one of an ordering of the one or more segments, the grouping of the one or more segments, and a scheme of the grouping of the one or more segments; and using the partial hints in generating the image.
- 15. The method of claim 10, further comprising:
receiving information related to a hierarchical grouping of segments in the segment group; and using the information in generating the image.
- 16. The method of claim 10, wherein the absolute motion vectors are for decoding an image.
- 17. The method of claim 10, wherein the motion vector comprises at least one of translation, z-ordering, deformation, and lighting data.
- 18. The method of claim 10, wherein the one or more local motion vectors comprise at least one of translation, z-ordering, deformation, and lighting data.
- 19. Using a coding system, a method for encoding and decoding motion vectors used in encoding and decoding an image, the method comprising:
grouping one or more segments into a segment group; generating a group motion vector for the segment group; generating one or more local motion vectors, wherein a local motion vector corresponds to a segment in the one or more segments and specifies a change for the segment relative to the motion vector for the segment group; encoding, at an encoder, the group motion vector and one or more local motion vectors; sending the encoded group motion vector and one or more local motion vectors to a decoder; generating, at the decoder, the grouping of the one or more segments in the segment group; receiving the encoded group motion vector for the segment group and the encoded one or more local motion vectors at the decoder; decoding the encoded group motion vector and the encoded one or more local motion vectors; and generating absolute local motion vectors for each segment of the group using the decoded group motion vector and the one or more local motion vectors.
- 20. The method of claim 19, further comprising:
receiving canonical ordering information for the encoded group motion vector and encoded one or more local motion vectors; and using the canonical information in generating the image.
- 21. The method of claim 19, further comprising:
receiving partial hints related to at least one of an ordering of the one or more segments, the grouping of the one or more segments, and a scheme of the grouping of the one or more segments; and using the partial hints in generating the image.
- 22. The method of claim 19, further comprising:
receiving information related to a hierarchical grouping of segments in the segment group; and using the information in generating the image.
- 23. An encoder for encoding motion vectors used in an encoding of an image, comprising:
means for grouping one or more segments of the image into a group of segments; means for generating a group motion vector for the group of segments from the motion vectors; means for generating one or more local motion vectors, wherein a local motion vector corresponds to a segment in the one or more segments and specifies a change for the segment relative to the group motion vector; and means for encoding the group motion vector and one or more local motion vectors.
- 24. The encoder of claim 23, wherein the encoder is configured to determine the group motion vector based on a relationship between the motion vectors for the one or more segments.
- 25. The encoder of claim 24, wherein the relationship is an average of the motion vectors for the one or more segments.
- 26. The encoder of claim 23, wherein encoder is configured to group the one or more segments hierarchically.
- 27. A decoder for decoding motion vectors for a group of segments, the group of segments comprising one or more segments of an image, comprising:
means for receiving a group motion vector for the group of segments; means for receiving one or more local motion vectors, wherein a local motion vector corresponds to a segment in the one or more segments and specifies a change for the segment relative to the motion vector for the group of segments; means for decoding the group motion vector and one or more local motion vectors; and means for generating absolute local motion vectors for each segment of the group using the decoded group motion vector and one or more local motion vectors.
- 28. The decoder of claim 27, further configured to receive the group of segments.
- 29. The decoder of claim 27, further configured to generate the group of segments.
- 30. The decoder of claim 27, further comprising:
means for receiving canonical ordering information for the motion vector and local motion vectors; and means for using the canonical information in generating the image.
- 31. The decoder of claim 27, further comprising:
means for receiving partial hints related to at least one of an ordering of the one or more segments, the grouping of the one or more segments, and a scheme of the grouping of the one or more segments; and means for using the partial hints in generating the image.
- 32. The decoder of claim 27, further comprising:
means for receiving information related to a hierarchical grouping of segments in the group of segments; and means for using the information in generating the image.
- 33. A coding system for encoding and decoding motion vectors used in encoding and decoding an image, the coding system comprising:
means for grouping one or more segments into a group of segments; means for generating a group motion vector for the group of segments; means for generating one or more local motion vectors, wherein a local motion vector corresponds to a segment in the one or more segments and specifies a change for the segment relative to the motion vector for the group of segments; means for encoding, at the encoder, the group motion vector and one or more local motion vectors; means for sending the encoded group motion vector and one or more local motion vectors to the decoder; means for generating, at the decoder, the grouping of the one or more segments in the group of segments; means for receiving the encoded group motion vector for the group of segments at the decoder; means for receiving the encoded one or more local motion vectors at the decoder; means for decoding the group motion vector and one or more local motion vectors; and means for generating absolute local motion vectors for each segment of the group using the decoded group motion vector and the one or more local motion vectors.
CROSS-REFERENCES TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of U.S. application Ser. No. 09/550,705, filed on Apr. 17, 2000, which is a non-provisional of and claims priority from U.S. Application No. 60/129,854, filed on Apr. 17, 1999 and U.S. Application No. 60/129,853, filed on Apr. 17, 1999. The complete disclosures of these applications are incorporated herein by reference for all purposes.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60129854 |
Apr 1999 |
US |
|
60129853 |
Apr 1999 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09550705 |
Apr 2000 |
US |
Child |
10338793 |
Jan 2003 |
US |