IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0922507
(2004-08-18)
|
등록번호 |
US-7492956
(2009-02-17)
|
발명자
/ 주소 |
- Chen,Wen hsiung
- Wu,Fang
- Toebes,John A.
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
3 인용 특허 :
89 |
초록
▼
A method, apparatus, and computer readable medium to encode a series of quantized transform coefficients. The method includes identifying events that each includes a run of one or more non-zero-valued coefficients, and for each such event, encoding the event with a codeword that for at least some ev
A method, apparatus, and computer readable medium to encode a series of quantized transform coefficients. The method includes identifying events that each includes a run of one or more non-zero-valued coefficients, and for each such event, encoding the event with a codeword that for at least some events, relatively more likely-to-occur events are encoded by a shorter codeword than relatively less likely-to-occur events, and for each identified event, jointly encoding according to an amplitude coding method, a plurality of consecutive values in the run of consecutive non-zero-valued coefficients. The method is applicable to encoding a region in the series where there is likely to be a cluster of non-zero-valued coefficient.
대표청구항
▼
The invention claimed is: 1. A method of operating an apparatus to process an ordered series of digital signals that each has a value that includes an amplitude from a finite set of amplitudes consisting of the most-likely-to-occur amplitude and at least one other amplitude, the processing to reduc
The invention claimed is: 1. A method of operating an apparatus to process an ordered series of digital signals that each has a value that includes an amplitude from a finite set of amplitudes consisting of the most-likely-to-occur amplitude and at least one other amplitude, the processing to reduce the amount of data used to represent the digital signals and to form codewords such that the more likely-to-occur values or sequences of values of digital signals are represented by relatively short codewords and the less likely-to-occur values or sequences of values of digital signals are represented by relatively long codewords, the method comprising: for a first contiguous region in the series: identifying events that each includes a run of one or more consecutive signals having any value other than the most-likely-to-occur amplitude; for each identified event, encoding the event with an event codeword that for at least some events, relatively more likely-to-occur events are encoded by a shorter event codeword than relatively less likely-to-occur events; and for each identified event, jointly encoding a plurality of consecutive values in the run of one or more consecutive signals having other than the most-likely-to-occur amplitude, the jointly encoding being according to an amplitude coding method and generating an amplitude codeword, such that relatively short amplitude codewords are formed to represent values or sequences of values that are relatively more likely-to-occur, and relatively long amplitude codewords are formed to represent values or sequences of values that are relatively less likely-to-occur, such that codewords representing the first contiguous region can include both one or more event codewords and one or more amplitude codewords. 2. A method as recited in claim 1, wherein the series of digital signals is a series of quantized coefficients of a transformed block of image data formed by a transform such that the most-likely-to-occur amplitude is 0, and the next most-likely-to-occur amplitude is 1, such that the identifying of events identifies events that each includes a run of one or more non-zero-valued coefficients. 3. A method as recited in claim 2, wherein the transformed block of image data includes a DC term, and wherein the DC term is separately encoded, such that the series of digital signals is a set of non-DC quantized coefficients of a transformed block of image data. 4. A method as recited in claim 2, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes, and separately encoding the signs of the amplitudes. 5. A method as recited in claim 2, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes including the signs of the amplitudes, such that no separate sign encoding is used for the consecutive values that are jointly encoded. 6. A method as recited in claim 2, wherein the jointly encoding a plurality of consecutive values includes using a multidimensional coding table. 7. A method as recited in claim 2, wherein the identifying events includes identifying events that each includes a run of consecutive zero-valued coefficients, preceding a run of one or more consecutive non-zero-valued coefficients, including events of no zero-valued coefficients preceding a run of one or more consecutive non-zero-valued coefficients; and wherein the jointly encoding includes jointly encoding the run lengths of the preceding run of zero-valued coefficients and the following run of non-zero-valued coefficients, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 8. A method as recited in claim 7, further comprising: providing a breakpoint to define the first contiguous region along the ordering of the series followed by a second contiguous region; such that the coefficients of the first region are encoded by a first encoding method that includes the identifying of events, the jointly encoding the runlengths of the events, and the encoding the amplitudes of non-zero-valued coefficients of the events; and encoding the coefficients in the second region using a second region encoding method, and wherein the first region encoding method and the second region encoding method are such that the encoding of at least some of the coefficients or runs of coefficients in the first region is different than the encoding of at least some of the coefficients or runs of coefficients in the second region. 9. A method as recited in claim 8, wherein the breakpoint value is pre-selected. 10. A method as recited in claim 8, wherein the breakpoint value is selected from a finite set of pre-defined breakpoint values according to an image-dependent criterion. 11. A method as recited in claim 8, wherein the second corresponding method is applicable to intraframe image data and to interframe blocks of image data, and wherein a first pre-selected breakpoint value is used for intraframe image data and a second pre-selected breakpoint value is used for interframe image data. 12. A method as recited in claim 8, wherein the breakpoint defines a hard boundary between the first and second regions. 13. A method as recited in claim 8, wherein the breakpoint defines a soft boundary between the first and second regions, such that for an identified event in the first region block having a sequence of consecutive non-zero values that crosses the breakpoint, the boundary between the first and second region is at the end of the event such that the whole event is in the first region. 14. A method as recited in claim 7, wherein the joint encoding of the runlengths on an event uses a multidimensional coding table. 15. A method as recited in claim 7, wherein the number of events that are identified and whose run lengths jointly encoded is limited such that only events up to a maximum total number of coefficients (the "maximal length") are identified, and wherein the identifying also identifies events of all zeroes of the maximum length, and maximal length events that end in a non-zero-coefficient, such that escape codes may be avoided in coding the coefficients of the first region. 16. A method as recited in claim 2, wherein the identifying events includes identifying the runlengths of one or more zero-valued coefficients and identifying the runlengths of one or more non-zero-valued coefficients that follow the runlengths of zero-valued coefficients; and wherein the encoding of the events, including encoding the runlengths of identified runs of non-zero-valued coefficients, uses a first runlength coding method, and encoding the runlengths of identified runs of zero-valued coefficients uses a second runlength coding method, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 17. A computer readable hardware medium having instructions coded thereon that when executed by one or more processors cause execution of a method for processing an ordered series of digital signals that each has a value including an amplitude from a finite set of amplitudes consisting of the most-likely-to-occur amplitude and at least one other amplitude, the processing to reduce the amount of data used to represent the digital signals and to form codewords such that the more likely-to-occur values or sequences of values of digital signals are represented by relatively short codewords and the less likely-to-occur values or sequences of values of digital signals are represented by relatively long codewords, the method comprising: for a first contiguous region in the series: identifying events that each includes a run of one or more consecutive signals having any value other than the most-likely-to-occur amplitude; for each identified event, encoding the event with an event codeword that for at least some events, relatively more likely-to-occur events are encoded by a shorter event codeword than relatively less likely-to-occur events; and for each identified event, jointly encoding a plurality of consecutive values in the run of one or more consecutive signals having other than the most-likely-to-occur amplitude, the jointly encoding being according to an amplitude coding method and generating an amplitude codeword, such that relatively short amplitude codewords are formed to represent values or sequences of values that are relatively more likely-to-occur, and relatively long amplitude codewords are formed to represent values or sequences of values that are relatively less likely-to-occur, such that codewords representing the first contiguous region can include both one or more event codewords and one or more amplitude codewords. 18. A computer readable hardware medium as recited in claim 17, wherein the series of digital signals is a series of quantized coefficients of a transformed block of image data formed by a transform such that the most-likely-to-occur amplitude is 0, and the next most-likely-to-occur amplitude is 1, such that the identifying of events identifies events that each includes a run of one or more non-zero-valued coefficients. 19. A computer readable hardware medium as recited in claim 18, wherein the transformed block of image data includes a DC term, and wherein the DC term is separately encoded, such that the series of digital signals is a set of non-DC quantized coefficients of a transformed block of image data. 20. A computer readable hardware medium as recited in claim 18, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes, and separately encodes the signs of the amplitudes. 21. A computer readable hardware medium as recited in claim 18, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes including the signs of the amplitudes, such that no separate sign encoding is used for the consecutive values that are jointly encoded. 22. A computer readable hardware medium as recited in claim 18, wherein the jointly encoding a plurality of consecutive values includes using a multidimensional coding table. 23. A computer readable hardware medium as recited in claim 18, wherein the identifying events includes identifying events that each includes a run of consecutive zero-valued coefficients, preceding a run of one or more consecutive non-zero-valued coefficients, including events of no zero-valued coefficients preceding a run of one or more consecutive non-zero-valued coefficients; and wherein the jointly encoding includes jointly encoding the run lengths of the preceding run of zero-valued coefficients and the following run of non-zero-valued coefficients, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 24. A computer readable hardware medium as recited in claim 23, the method further comprising: providing a breakpoint to define the first contiguous region along the ordering of the series followed by a second contiguous region; such that the coefficients of the first region are encoded by a first encoding method that includes the identifying of events, the jointly encoding the runlengths of the events, and the encoding the amplitudes of non-zero-valued coefficients of the events; and encoding the coefficients in the second region using a second region encoding method, and wherein the first region encoding method and the second region encoding method are such that the encoding of at least some of the coefficients or runs of coefficients in the first region is different than the encoding of at least some of the coefficients or runs of coefficients in the second region. 25. A computer readable hardware medium as recited in claim 24, wherein the breakpoint value is pre-selected. 26. A computer readable hardware medium as recited in claim 24, wherein the breakpoint value is selected from a finite set of pre-defined breakpoint values according to an image-dependent criterion. 27. A computer readable hardware medium as recited in claim 24, wherein the second corresponding method is applicable to intraframe image data and to interframe blocks of image data, and wherein a first pre-selected breakpoint value is used for intraframe image data and a second pre-selected breakpoint value is used for interframe image data. 28. A computer readable hardware medium as recited in claim 24, wherein the breakpoint defines a hard boundary between the first and second regions. 29. A computer readable hardware medium as recited in claim 24, wherein the breakpoint defines a soft boundary between the first and second regions, such that for an identified event in the first region block having a sequence of consecutive non-zero values that crosses the breakpoint, the boundary between the first and second region is at the end of the event such that the whole event is in the first region. 30. A computer readable hardware medium as recited in claim 23, wherein the joint encoding of the runlengths on an event uses a multidimensional coding table. 31. A computer readable hardware medium as recited in claim 23, wherein the number of events that are identified and whose run lengths jointly encoded is limited such that only events up to a maximum total number of coefficients (the "maximal length") are identified, and wherein the identifying also identifies events of all zeroes of the maximum length, and maximal length events that end in a non-zero-coefficient, such that escape codes may be avoided in coding the coefficients of the first region. 32. A computer readable hardware medium as recited in claim 18, wherein the identifying events includes identifying the runlengths of one or more zero-valued coefficients and identifying the runlengths of one or more non-zero-valued coefficients that follow the runlengths of zero-valued coefficients; and wherein the encoding of the events, including encoding the runlengths of identified runs of non-zero-valued coefficients, uses a first runlength coding method, and encoding the runlengths of identified runs of zero-valued coefficients uses a second runlength coding method, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 33. An apparatus for processing an ordered series of digital signals that each has a value including an amplitude from a finite set of amplitudes consisting of the most-likely-to-occur amplitude and at least one other amplitude, the processing to reduce the amount of data used to represent the digital signals and to form codewords such that the more likely-to-occur values or sequences of values of digital signals are represented by relatively short codewords and the less likely-to-occur values or sequences of values of digital signals are represented by relatively long codewords, the apparatus comprising: means for identifying, in a first contiguous region in the series, events that each includes a run of one or more consecutive signals having any value other than the most-likely-to-occur amplitude; means for encoding, for each identified event, the event with an event codeword that for at least some events, relatively more likely-to-occur events are encoded by a shorter event codeword than relatively less likely-to-occur events; and means for jointly encoding, for each identified event, a plurality of consecutive values in the run of one or more consecutive signals having other than the most-likely-to-occur amplitude, the jointly encoding being according to an amplitude coding method and generating an amplitude codeword, such that relatively short amplitude codewords are formed to represent values or sequences of values that are relatively more likely-to-occur, and relatively long amplitude codewords are formed to represent values or sequences of values that are relatively less likely-to-occur, such that codewords representing the first contiguous region can include both one or more event codewords and one or more amplitude codewords. 34. An apparatus as recited in claim 33, wherein the series of digital signals is a series of quantized coefficients of a transformed block of image data formed by a transform such that the most-likely-to-occur amplitude is 0, and the next most-likely-to-occur amplitude is 1, such that the means for identifying of events identifies events that each includes a run of one or more nonzero-valued coefficients. 35. An apparatus as recited in claim 34, wherein the transformed block of image data includes a DC term, and wherein the DC term is separately encoded, such that the series of digital signals is a set of non-DC quantized coefficients of a transformed block of image data. 36. An apparatus as recited in claim 34, wherein the means for jointly encoding a plurality of consecutive values jointly encodes a plurality of amplitudes, and separately encodes the signs of the amplitudes. 37. An apparatus as recited in claim 34, wherein the means for jointly encoding a plurality of consecutive values jointly encodes a plurality of amplitudes including the signs of the amplitudes, such that no separate sign encoding is used for the consecutive values that are jointly encoded. 38. An apparatus as recited in claim 34, wherein the means for jointly encoding a plurality of consecutive values uses a multidimensional coding table. 39. An apparatus as recited in claim 34, wherein the means for identifying events includes means for identifying events that each includes a run of consecutive zero-valued coefficients, preceding a run of one or more consecutive non-zero-valued coefficients, including events of no zero-valued coefficients preceding a run of one or more consecutive non-zero-valued coefficients; and wherein the means for jointly encoding includes means for jointly encoding the run lengths of the preceding run of zero-valued coefficients and the following run of non-zero-valued coefficients, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 40. An apparatus as recited in claim 39, the apparatus further comprising: means for providing a breakpoint to define the first contiguous region along the ordering of the series followed by a second contiguous region; such that the coefficients of the first region are encoded by a first encoding method that includes the identifying of events, the jointly encoding the runlengths of the events, and the encoding the amplitudes of non-zero valued coefficients of the events; and means for encoding the coefficients in the second region using a second region encoding method, and wherein the first region encoding method and the second region encoding method are such that the encoding of at least some of the coefficients or runs of coefficients in the first region is different than the encoding of at least some of the coefficients or runs of coefficients in the second region. 41. An apparatus as recited in claim 40, wherein the breakpoint value is pre-selected. 42. An apparatus as recited in claim 40, wherein the breakpoint value is selected from a finite set of pre-defined breakpoint values according to an image-dependent critenon. 43. An apparatus as recited in claim 40, wherein the second corresponding method is applicable to intraframe image data and to interframe blocks of image data, and wherein a first pre-selected breakpoint value is used for intraframe image data and a second pre-selected breakpoint value is used for interframe image data. 44. An apparatus as recited in claim 40, wherein the breakpoint defines a hard boundary between the first and second regions. 45. An apparatus as recited in claim 40, wherein the breakpoint defines a soft boundary between the first and second regions, such that for an identified event in the first region block having a sequence of consecutive non-zero values that crosses the breakpoint, the boundary between the first and second region is at the end of the event such that the whole event is in the first region. 46. An apparatus as recited in claim 39, wherein the means for joint encoding of the runlengths on an event uses a multidimensional coding table. 47. An apparatus as recited in claim 39, wherein the number of events that are identified and whose run lengths jointly encoded is limited such that only events up to a maximum total number of coefficients (the "maximal length") are identified, and wherein the identifying also identifies events of all zeroes of the maximum length, and maximal length events that end in a non-zero-coefficient, such that escape codes may be avoided in coding the coefficients of the first region. 48. An apparatus as recited in claim 34, wherein the means for identifying events includes the means for identifying the runlengths of one or more zero-valued coefficients and the means for identifying the runlengths of one or more non-zero-valued coefficients that follow the runlengths of zero-valued coefficients; and wherein the means for encoding of the events, including the means for encoding the runlengths of identified runs of non-zero-valued coefficients, uses a first runlength coding method, and the means for encoding the runlengths of identified runs of zero-valued coefficients uses a second runlength coding method, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 49. An apparatus including a processing system that includes a at least one processor and a storage device, the storage device configured with instructions that when executed cause the apparatus to accept an ordered series of digital signals that each has a value including an amplitude from a finite set of amplitudes consisting of the most-likely-to-occur amplitude and at least one other amplitude, the apparatus to perform a method for processing an ordered series of digital signals to reduce the amount of data used to represent the digital signals and to form codewords such that the more likely-to-occur values or sequences of values of digital signals are represented by relatively short codewords and the less likely-to-occur values or sequences of values of digital signals are represented by relatively long codewords, the method comprising: for a first contiguous region in the series: identifying events that each includes a run of one or more consecutive signals having any value other than the most-likely-to-occur amplitude; for each identified event, encoding the event with an event codeword that for at least some events, relatively more likely-to-occur events are encoded by a shorter event codeword than relatively less likely-to-occur events; and for each identified event, jointly encoding a plurality of consecutive values in the run of one or more consecutive signals having other than the most-likely-to-occur, amplitude, the jointly encoding being according to an amplitude coding method and generating an amplitude codeword, such that relatively short amplitude codewords are formed to represent values or sequences of values that are relatively more likely-to-occur, and relatively long amplitude codewords are formed to represent values or sequences of values that are relatively less likely-to-occur, such that codewords representing the first contiguous region can include both one or more event codewords and one or more amplitude codewords. 50. An apparatus as recited in claim 49, wherein the series of digital signals is a series of quantized coefficients of a transformed block of image data formed by a transform such that the most-likely-to-occur amplitude is 0, and the next most-likely-to-occur amplitude is 1, such that the identifying of events identifies events that each includes a run of one or more non-zero-valued coefficients. 51. An apparatus as recited in claim 50, wherein the transformed block of image data includes a DC term, and wherein the DC term is separately encoded, such that the series of digital signals is a set of non-DC quantized coefficients of a transformed block of image data. 52. An apparatus as recited in claim 50, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes, and separately encodes the signs of the amplitudes. 53. An apparatus as recited in claim 50, wherein the jointly encoding a plurality of consecutive values includes jointly encoding a plurality of amplitudes including the signs of the amplitudes, such that no separate sign encoding is used for the consecutive values that are jointly encoded. 54. An apparatus as recited in claim 50, wherein the jointly encoding a plurality of consecutive values includes using a multidimensional coding table. 55. An apparatus as recited in claim 50, wherein the identifying events includes identifying events that each includes a run of consecutive zero-valued coefficients, preceding a run of one or more consecutive non-zero-valued coefficients, including events of no zero-valued coefficients preceding a run of one or more consecutive non-zero-valued coefficients; and wherein the jointly encoding includes jointly encoding the run lengths of the preceding run of zero-valued coefficients and the following run of non-zero-valued coefficients, such that for at least some events, relatively more likely-to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths. 56. An apparatus as recited in claim 55, wherein the method further comprises: providing a breakpoint to define the first contiguous region along the ordering of the series followed by a second contiguous region; such that the coefficients of the first region are encoded by a first encoding method that includes the identifying of events, the jointly encoding the runlengths of the events, and the encoding the amplitudes of non-zero-valued coefficients of the events; and encoding the coefficients in the second region using a second region encoding method, and wherein the first region encoding method and the second region encoding method are such that the encoding of at least some of the coefficients or runs of coefficients in the first region is different than the encoding of at least some of the coefficients or runs of coefficients in the second region. 57. An apparatus as recited in claim 56, wherein the breakpoint value is pre-selected. 58. An apparatus as recited in claim 56, wherein the breakpoint value is selected from a finite set of pre-defined breakpoint values according to an image-dependent criterion. 59. An apparatus as recited in claim 56, wherein the second corresponding method is applicable to intraframe image data and to interframe blocks of image data, and wherein a first pre-selected breakpoint value is used for intraframe image data and a second pre-selected breakpoint value is used for interframe image data. 60. An apparatus as recited in claim 56, wherein the breakpoint defines a hard boundary between the first and second regions. 61. An apparatus as recited in claim 56, wherein the breakpoint defines a soft boundary between the first and second regions, such that for an identified event in the first region block having a sequence of consecutive non-zero values that crosses the breakpoint, the boundary between the first and second region is at the end of the event such that the whole event is in the first region. 62. An apparatus as recited in claim 55, wherein the joint encoding of the runlengths on an event uses a multidimensional coding table. 63. An apparatus as recited in claim 55, wherein the number of events that are identified and whose run lengths jointly encoded is limited such that only events up to a maximum total number of coefficients (the "maximal length") are identified, and wherein the identifying also identifies events of all zeroes of the maximum length, and maximal length events that end in a non-zero-coefficient, such that escape codes may be avoided in coding the coefficients of the first region. 64. An apparatus as recited in claim 50, wherein the identifying events includes identifying the runlengths of one or more zero-valued coefficients and identifying the runlengths of one or more non-zero-valued coefficients that follow the runlengths of zero-valued coefficients; and wherein the encoding of the events, including encoding the runlengths of identified runs of non-zero-valued coefficients, uses a first runlength coding method, and encoding the runlengths of identified runs of zero-valued coefficients uses a second runlength coding method, such that for at least some events, relatively more likely:to-occur pairs of runlengths are encoded by a shorter codeword than relatively less likely-to-occur runlengths.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.