Unequal error protection of video based on motion vector characteristics
View Patent ↗In a first embodiment according to the present invention, a method for data transmission is provided. A multimedia stream is received through an electronic medium. Within the stream are a plurality of vectors. Based on the vectors, a plurality of error protection units are added to the multimedia stream.
1. A method for data transmission, comprising the acts of:
receiving a multimedia stream through an electronic medium, the stream comprising a plurality of motion vectors;
extracting one or more vectors from the multimedia stream;
analyzing the one or ore extracted motion vectors;
partitioning the multimedia stream into a plurality of data types based at least in part on the analysis of the extracted motion vectors; and
adding a plurality of error protection units to the multimedia stream based on the analysis of the extracted motion vectors.
2. A method for data transmission, comprising the steps of:
receiving a video stream through an electronic medium, the stream comprising a plurality of motion vectors;
extracting one or more vectors from the video stream;
assigning an importance to the motion vectors;
based on the importance, partitioning the video stream into a plurality of data types; and
based on the importance, adding a plurality of error protection units to the partitioned video stream.
3. A method for data transmission, comprising the steps of:
generating a video transmission;
converting the video transmission to a video stream, the video stream comprising a plurality of vectors;
extracting one or more vectors from the video stream;
assigning an importance to the extracted motion vectors;
based on the assigned importance, partitioning the video stream into a plurality of data types; and
based on the assigned importance, adding a plurality of error protection units to the video stream.
4. The method as recited in claim 1 further comprising the step of assigning an importance to each vector; and wherein the step of adding further comprises adding the error protection units based on the importance.
5. The method as recited in claim 1 further comprising the step of sending the multimedia stream with the error protection units over an electronic medium.
6. The method as recited in claim 1 wherein the multimedia stream is a video stream.
7. The method as recited in claim 1 wherein the multimedia stream is in the MPEG format.
8. The method as recited in claim 1 wherein the vectors are used to form one or more data elements from the group consisting of: a total energy (or variance) data element, a mean or variance data element, a global direction measure data element, and a plurality of small random motion data elements; and wherein the error protection units are added to the multimedia stream based on the data elements.
9. The method as recited in claim 1 further comprising the steps of selecting a plurality similar vectors from the vectors based on a direction and adding the error protection units based on the similar vectors.
10. The method as recited in claim 2 further comprising the step of sending the video stream with the error protection units over an electronic medium.
11. The method as recited in claim 2 wherein the video stream is in the MPEG format.
12. The method as recited in claim 2 wherein the vectors are used to form one or more data elements from the group consisting of: a total energy (or variance) data element, a mean or variance data element, a global direction measure data element, and a plurality of small random motion data elements; and wherein error protection units are added to the video stream based on the data elements; and wherein the video stream is partitioned based on the data elements.
13. The method as recited in claim 2 further comprising the steps of selecting a plurality of similar vectors from the vectors based on a direction and adding the error protection units based on the similar vectors.
14. The method as recited in claim 3 further comprising the step of sending the video stream with the error protection units over an electronic medium.
15. The method as recited in claim 3 wherein the video stream is in the MPEG format.
16. The method as recited in claim 3 wherein the vectors are used to form one or more data elements from the group consisting of: a total energy (or variance) data element, a mean or variance data element, a global direction measure data element, and a plurality of small random motion data elements; and wherein error protection units are added to the video stream based on the data elements; and wherein the video stream is partitioned based on the data elements.
17. The method as recited in claim 3 further comprising the steps of a plurality of similar vectors from the vectors based on a direction and adding the error protection units based on the similar vectors.
18. The method as recited in claim 1 further comprising the step of adding UEP to the multimedia stream based on the vectors.
19. The method as recited in claim 2 further comprising the step of adding UEP to the video stream based on the vectors.
20. The method as recited in claim 3 further comprising the step of adding UEP to the video stream based on the vectors.
21. A system comprising:
a motion-vector extractor for one or more motion vectors from a video stream;
a video stream partitioner for partitioning the video stream based on an assigned importance to the extracted one or more motion vectors;
an error-protection controller for adding error protection to the video stream based on an assigned importance to the extracted one or more motion vectors;
an analysis software tool for assigning the importance to each of the motion vectors, controlling the error-protection controller to add error protection based on the assigned importance, and controlling the video stream partitioner for partitioning the video stream based on the a signed importance; and
a transmitter for sending the video stream to a device.
22. A computer-readable medium, having stored thereon, computer executable process steps operative to control computer to document source files, the steps comprising:
receiving a multimedia stream through an electronic medium, the stream comprising a plurality of motion vectors;
extracting one or more vectors from the multimedia stream;
analyzing the one or more extracted motion vectors;
partitioning the multimedia stream into a plurality of data types based at least in part on the analysis of the extracted motion vectors; and
adding a plurality of error protection units to the multimedia stream based on the analysis of the extracted motion vectors.
23. A computer-readable medium, having stored thereon, computer executable process steps operative to control computer to document source files, the steps comprising:
receiving a video stream through an electronic medium, the stream comprising a plurality of vectors;
assigning an importance to the motion vectors;
extracting one or more vectors from the video stream;
based on the importance, partitioning the video stream into a plurality of data types; and
based on the importance, adding a plurality of error protection units to the partitioned video stream.
24. A computer-readable medium, having stored thereon, computer executable process steps operative to control computer to document source files, the steps comprising:
generating a video transmission;
converting the video transmission to video stream, the video stream comprising a plurality of motion vectors;
extracting one or more vectors from the video stream;
based on the importance, partitioning the video stream; and
based on the importance, adding a plurality of error protection units to the video stream.
25. The method as recited in claim 1 , wherein the plurality of data types in which the multimedia stream is partitioned into comprise texture data, scene data and motion data.
26. The method as recited in claim 2 , wherein the plurality of data types in which the video stream is partitioned into comprise texture data, scene data and motion data.
27. The method as recited in claim 3 , wherein the plurality of data types in which the video stream is partitioned into comprise texture data, scene data and motion data.