JP5138805B2 - 算術符号化方法及び算術符号化装置 - Google Patents
算術符号化方法及び算術符号化装置 Download PDFInfo
- Publication number
- JP5138805B2 JP5138805B2 JP2011248692A JP2011248692A JP5138805B2 JP 5138805 B2 JP5138805 B2 JP 5138805B2 JP 2011248692 A JP2011248692 A JP 2011248692A JP 2011248692 A JP2011248692 A JP 2011248692A JP 5138805 B2 JP5138805 B2 JP 5138805B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- event
- encoding
- data
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 131
- 230000008569 process Effects 0.000 claims description 82
- 238000011010 flushing procedure Methods 0.000 claims description 5
- 230000011664 signaling Effects 0.000 claims 3
- 238000012545 processing Methods 0.000 description 199
- 238000010586 diagram Methods 0.000 description 31
- 239000011800 void material Substances 0.000 description 13
- 238000012360 testing method Methods 0.000 description 12
- 238000013459 approach Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 10
- 238000007906 compression Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 8
- 230000003247 decreasing effect Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
- H03M7/4012—Binary arithmetic codes
- H03M7/4018—Context adapative binary arithmetic codes [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Error Detection And Correction (AREA)
Description
現在の状態の番号+log((現在状の態の確率*適応レート+(1−適応レート))/現在の状態の確率)/log(適応レート)
の計算結果が丸められた値となる。
e≦αB+βS
ここで、eは、情報ビット(又は他のエレメント)のシーケンスで表わされたイベントの数であり、Bは、情報ビット(又は他のエレメント)のシーケンスにおける情報ビットの数であり、Sは、イベントシーケンスで表わされたセグメント(例えばマクロブロック)の数である。また、α及びβは、カウンタへの減少値を表しており、生成される情報ビットの数及び処理されるセグメントの数に対するイベントシーケンスのイベント数の制約を実質的に維持する。
[0128] 図16A及び16Bにおける状態マシンを構成するためのプロセスの一例をCコードで以下に示す。
C-code:
#define N b4
#define Pmax 0.5
#define Pmin 0.01875
#define regsize 9
#define ONE(1<<regsize)
double alpha;
double sum;
int i,j;
double q;
float prob64[N];
intnext_state_MPS_64[N];
intnext_state_LPS_64[N];
int switch_MPS_64[N];
int gLPS[N][4] ;
alpha=pow(Pmin/Pmax,1.0/(N-1));
sum=0.5;
for(i=0; i<N; i++){
prob64[i]=Pmax*pow(alpha,i);
next_state_MPS_64[i]=(i==N-1)?N-1:i+1;
q=prob64[i]*alpha+(1-alpha);
q=q/prob64[i];
q=-log(q)/log(alpha);
sum+=q;
k=(int)(sum);
sum-=k;
next_state_LPS_64[i]=(i-k<0)?O:i-k;
for(j=0; j<4; j++){
RTAB[i][j]=(int)(ONE/8*prob64[i]/log((j+5.0)/(j+4.0))+0.5);
if(j == 0 && RTAB[i][j] > ONE/4)
RTAB[i][j]=ONE/4;
}
}
(a)p(LPS) <-- p(LPS)*alpha、MPSが観察される場合
(b)p(LPS) <--p(LPS)*alpha+(1−alpha)、その他の場合
ここで、alphaは、適応レートを定める。alphaは、通常、0.9から1の範囲であるが、所望の適応に基づいて他の範囲内へ広がってもよく、又は他の範囲内にあってもよい。
Encoder:
void start_encode() {
encode_slice_header();
while (!byte_aligned)
send_bit(0);
R=0x1fe;
L=O;
BO=0;
FB=1;
}
void finish_encode() {
R=2;
renorm_encode();
bit_plus_follow((L >> 9) & 1);
send_bit((L >> 8) & 1);
send_bit(1); // stop_bit
while (!byte_aligned())
send_bit(0); // alignment_bit
}
voidbit_plus_follow(int b) {
if (FB == 1)
FB = 0;
else
send_bit(b);
while (BO > 0) {
BO--;
send_bit(!b);
}
}
void encode_renorm() {
while (!(R&0x100) {
if (L+R < 0x200)
bit_plus_follow(0);
else if (L >= 0x200) {
bit_plus_follow(1);
L -= 0x200;
}
else {
BO++;
L -= 0x100;
}
R <<= 1;
L <<= 1;
}
}
void encode_event(intctx, int b) {
rLPS = table[state[ctx]][(R>>6)-4];
R -= rLPS;
if (b == MPS[state[ctx]])
state[ctx] = next_state_MPS[state[ctx]];
else {
L += R;
R = rLPS;
if (state[ctx] == 0)
MPS[state[ctx]] = !MPS[state[ctx]];
state[ctx] = next_state_LPS[state[ctx]];
}
encode_renorm();
}
voidencode_equiprob_event(int b) {
L <<= 1;
if (b)
L+=R;
if (L+R < 0x400)
bit_plus_follow(0);
else if (L >= 0x400) {
bit_plus_follow(1);
L -= 0x400;
}
else {
BO++;
L -= 0x200;
}
}
voidencode_end_of_slice_flag(int b) {
if (b == O) {
R-=2;
L+=2;
encode_renorm();
}
}
Decoder (bytebased):
void start_decode() {
decode_slice_header();
while (!byte_aligned())
get_bit();
R = 0xff80;
V = get_byte() << 8;
V |= get_byte();
B = 7;
}
void finish_decode() {
while (more_bytes_in_slice())
get_byte(); // stuffing byte
}
void decode_renorm() {
while (R<0x8000) {
R <<= 1;
V <<= 1;
B--;
if (B<0) {
B= 7;
V |= get_byte();
}
}
}
int decode_equiprob() {
V = (V<<1);
B--;
if (B<0) {
V |= get_byte();
B = 7;
}
if (V >= R) {
V -= R;
bit = 1;
}
else
bit = 0;
return bit;
}
int decode_event(intctx) {
rLPS =table[state[ctx]][(R>>13)-4]<<7;
R -= rLPS;
if (V < R) {
state[ctx] = next_state_MPS[state[ctx]];
bit = MPS[state[ctx]];
}
else {
bit = !MPS[state[ctx]];
V -= R;
R = rLPS;
if (state[ctx] == 0)
MPS[state[ctx]] = !MPS[state[ctx]];
state[ctx] = next_state_LPS[state[ctx]];
}
decode_renorm();
return bit;
}
intdecode_end_of_slice_flag() {
if (V < 0x100)
bit = 1;
else {
bit = 0;
R-=0x100;
V-=0x100;
decode_renorm();
}
return bit;
}
Alternative byte-basedend of slice decoding for use when the MPS/LPS convention is switched(MPS/LPSの規定が切り替えられるときに使用される、代替のバイトベースのスライス終了ラグの復号)
intdecode_end_of_slice_flag(){
R -= 0x100;
if (V >= R)
bit = 1;
else {
bit = 0
decode_renorm();
}
return bit;
}
Decoder (bit based):
void start_decode() {
decode_slice_header();
while (!byte_aligned())
get_bit();
R = 0x1fe;
V = 0;
for (i=0; i<9; i++)
V = (V<<1) | get_bit();
}
void finish_decode() {
while (!byte_aligned())
get_bit(); // alignement bit
while (more_bytes_in_slice())
get_byte(); // stuffing byte
}
int decode_renorm() {
while (R<0x100) {
R <<= 1;
V = (V<<1)|get_bit();
}
}
int decode_equiprob() {
V = (V<<1) | get_bit();
if (V >= R) {
V -=R;
bit = 1;
}
else
bit = 0;
return bit;
}
int decode_event(intctx) {
rLPS = table[state[ctx]][(R>>6)-4];
R -= rLPS;
if (V < R) {
state[ctx] = next_state_MPS[state[ctx]];
bit = MPS[state[ctx]];
}
else {
bit = !MPS[state[ctx]];
V -= R; R = rLPS;
if (state[ctx] == 0)
MPS[state[ctx]] = !MPS[state[ctx]];
state[ctx] = next_state_LPS[state[ctx]];
}
decode_renorm();
return bit;
}
intdecode_end_of_slice_flag() {
if (V < 2)
bit = 1;
else {
bit = 0;
R-=2;
V-=2;
decode_renorm();
}
return bit;
}
Alternative bit-basedend_of_slice flag decoding for use when the MPS/LPS convention is switched(MPS/LPSの規定が切り替えられるときに使用される、代替のビットベースのスライス終了フラグの復号)
intdecode_end_of_slice_flag(){
R -= 2;
if (V >= R)
bit = 1
else {
bit = 0;
decode_renorm();
}
return bit;
}
void start_encode() {
send_NAL_first_byte();
encode_slice_header();
while (!byte_aligned())
send_bit(0);
R = 0x1fe; // range
L = 0; // low
BO = 0; // bits outstanding
C = 0; // event counter
FB = 1; // first bit flag
}
void finish_encode() {
bit_plus_follow((L >> 9) & 1);
for (i=8; i>=1; i--)
send_bit((L >> i) & 1);
send_bit(1); // stop_bit
while (!byte_aligned())
send_bit(0); // alignment bit
RBSP_to_EBSP();
S = min_bytes(C,number_of_macroblocks_in_slice);
while (S > bytes_in_NAL_unit())
send_three_bytes(Ox000003); // write bytesdirectly into
NAL unit
}
voidbit_plus_follow(int b) {
if (FB == 1)
FB = 0;
else
send_bit(b);
while (BO > 0) {
BO--;
send_bit(!b);
}
}
void encode_renorm() {
while (!(R&0x100) {
if (L+R < 0x200)
bit_plus_follow(0);
else if (L >= 0x200) {
bit_plus_follow(1);
L -= 0x200;
}
else {
BO++;
L -= 0x100;
}
R <<= 1;
L <<= 1;
}
}
void encode_event(intctx, int b) {
rLPS = table[state[ctx]][(R>>6)-4];
R -= rLPS;
if (b == MPS[state[ctx]])
state[ctx] = next_state_MPS[state[ctx]];
else {
L += R;
R = rLPS;
if (state[ctx] == 0)
MPS[state[ctx]] = !MPS[state[ctx]];
state[ctx] = next_state_LPS[state[ctx]];
}
encode_renorm();
C++;
}
voidencode_equiprob_event(int b) {
L <<= 1;
if (b)
L += R;
if (L+R < 0x400)
bit_plus_follow(0);
else if (L >= 0x400) {
bit_plus_follow(1);
L -= 0x400;
}
else {
BO++;
L -= 0x200;
}
C++;
}
voidencode_end_of_slice_flag(int b) {
if (b == 0) {
R-=2;
L+=2;
encode_renorm();
}
}
Claims (9)
- イベントシーケンスの各イベントが個別の値を有する確率推定値を生成するための確率推定器であって、前記各イベントに対応するコンテクスト情報に応じて前記確率推定値を生成する確率推定器と、
前記確率推定器に接続され、各イベント及び対応の確率推定値に応じて情報シーケンスを生成する符号化エンジンであって、スライス終了信号を符号化する前に、レンジレジスタの値とは独立したサブレンジインターバル用の定数を用いて、前記情報シーケンスにおける算術符号化データの終了を知らせるためのイベントを符号化する符号化エンジンと、
を備える算術エンコーダ。 - 前記情報シーケンスにおける算術符号化データの終了を知らせるためのイベントを符号化するために定数を使用する前記符号化エンジンは、ローレジスタに残っているコンテンツを前記情報シーケンスに含ませることが可能である、請求項1に記載のエンコーダ。
- 前記符号化エンジンは、前記ローレジスタに残っているコンテンツをフラッシュし、当該フラッシュ中に書き込まれる最後のビットを1に等しくセットする、請求項2に記載のエンコーダ。
- データを符号化する方法であって、
イベントシーケンスのイベントを符号化して、符号化データを生成するステップと、
前記符号化データを用いて、ビットストリームを生成するステップであって、スライス終了信号を符号化する前に、レンジレジスタの値とは独立したサブレンジインターバルの定数を使用して、前記ビットストリームにおける算術符号化データの終了を知らせるためのイベントを符号化する処理を含む、該ステップと、
を備える方法。 - 前記算術符号化データの終了を知らせるためのイベントを符号化する処理は、ローレジスタに残っているコンテンツを前記ビットストリームへフラッシュすることができる、請求項4に記載の方法。
- 前記ローレジスタに残っているコンテンツをフラッシュすることは、フラッシュ中に書き込まれる最後のビットを1に等しくセットすることを含む、請求項5に記載の方法。
- 命令を記憶する記録可能媒体であって、システムによって実行されたときに、
イベントシーケンスのイベントを符号化して、符号化データを生成するステップと、
前記符号化データを使用して、ビットストリームを生成するステップであって、スライス終了信号を符号化する前に、レンジレジスタの値とは独立したサブレンジインターバルの定数を使用して、前記ビットストリームにおける算術符号化データの終了を知らせるためのイベントを符号化することを含んでいるステップと、
によって前記命令が前記システムにデータを符号化させる、記録可能媒体。 - 前記システムによって実行されたときに、前記システムにローレジスタのコンテンツをフラッシュさせる命令であって、フラッシュ中に書き込まれる最後のビットを1に等しくセットすることを含む命令を更に備える、請求項7に記載の記録可能媒体。
- データを符号化する装置であって、
データのブロックを符号化して、符号化データを生成する手段と、
前記符号化データを使用して、ビットストリームを生成する手段であって、符号化エンジンが、スライス終了信号を符号化する前にレンジレジスタの値とは独立したサブレンジインターバルの定数を使用して、前記ビットストリームにおける算術符号化データの終了を知らせるためのイベントを符号化することを含んでいる手段と、
を備える装置。
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US41224502P | 2002-09-20 | 2002-09-20 | |
US60/412,245 | 2002-09-20 | ||
US41599902P | 2002-10-04 | 2002-10-04 | |
US60/415,999 | 2002-10-04 | ||
US10/666,687 | 2003-09-18 | ||
US10/665,638 | 2003-09-18 | ||
US10/665,638 US6825782B2 (en) | 2002-09-20 | 2003-09-18 | Method and apparatus for arithmetic coding and termination |
US10/666,798 | 2003-09-18 | ||
US10/666,687 US6850175B1 (en) | 2003-09-18 | 2003-09-18 | Method and apparatus for arithmetic coding |
US10/666,798 US6906647B2 (en) | 2002-09-20 | 2003-09-18 | Method and apparatus for arithmetic coding, including probability estimation state table creation |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009089108A Division JP2009207156A (ja) | 2002-09-20 | 2009-04-01 | 算術符号化方法及び算術符号化装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012235859A Division JP5390004B2 (ja) | 2002-09-20 | 2012-10-25 | 確率推定のための状態マシンを生成する方法、算術エンコーダ、算術デコーダ、及び、復号方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012075150A JP2012075150A (ja) | 2012-04-12 |
JP5138805B2 true JP5138805B2 (ja) | 2013-02-06 |
Family
ID=32034482
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004568951A Expired - Lifetime JP4391425B2 (ja) | 2002-09-20 | 2003-09-19 | 算術符号化方法及び算術符号化装置 |
JP2009089108A Pending JP2009207156A (ja) | 2002-09-20 | 2009-04-01 | 算術符号化方法及び算術符号化装置 |
JP2011248692A Expired - Lifetime JP5138805B2 (ja) | 2002-09-20 | 2011-11-14 | 算術符号化方法及び算術符号化装置 |
JP2011248684A Expired - Lifetime JP5122677B2 (ja) | 2002-09-20 | 2011-11-14 | 算術符号化方法及び算術符号化装置 |
JP2012235859A Expired - Lifetime JP5390004B2 (ja) | 2002-09-20 | 2012-10-25 | 確率推定のための状態マシンを生成する方法、算術エンコーダ、算術デコーダ、及び、復号方法 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004568951A Expired - Lifetime JP4391425B2 (ja) | 2002-09-20 | 2003-09-19 | 算術符号化方法及び算術符号化装置 |
JP2009089108A Pending JP2009207156A (ja) | 2002-09-20 | 2009-04-01 | 算術符号化方法及び算術符号化装置 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011248684A Expired - Lifetime JP5122677B2 (ja) | 2002-09-20 | 2011-11-14 | 算術符号化方法及び算術符号化装置 |
JP2012235859A Expired - Lifetime JP5390004B2 (ja) | 2002-09-20 | 2012-10-25 | 確率推定のための状態マシンを生成する方法、算術エンコーダ、算術デコーダ、及び、復号方法 |
Country Status (8)
Country | Link |
---|---|
EP (5) | EP1540962B1 (ja) |
JP (5) | JP4391425B2 (ja) |
CN (5) | CN1675842B (ja) |
AU (1) | AU2003299010A1 (ja) |
DK (3) | DK3079261T3 (ja) |
ES (3) | ES2586409T3 (ja) |
PT (3) | PT3079261T (ja) |
WO (1) | WO2004028165A2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008065822A1 (en) * | 2006-11-28 | 2008-06-05 | Panasonic Corporation | Encoding device and encoding method |
CN101502123B (zh) | 2006-11-30 | 2011-08-17 | 松下电器产业株式会社 | 编码装置 |
JP2009177447A (ja) * | 2008-01-24 | 2009-08-06 | Panasonic Corp | 動画像送受信システム |
EP2315358A1 (en) | 2009-10-09 | 2011-04-27 | Thomson Licensing | Method and device for arithmetic encoding or arithmetic decoding |
WO2012097250A1 (en) * | 2011-01-14 | 2012-07-19 | Ntt Docomo, Inc. | Method and apparatus for arithmetic coding and termination |
KR101882543B1 (ko) * | 2011-03-31 | 2018-07-26 | 톰슨 라이센싱 | 콘텍스트 적응성 이진 데이터 산술 코딩(cabac) 디코딩을 위한 기술들 |
US20130279597A1 (en) * | 2012-04-24 | 2013-10-24 | Magnum Semiconductor, Inc. | Apparatuses and methods for bitstream bitstuffing |
CN104508982B (zh) * | 2012-10-31 | 2017-05-31 | 慧与发展有限责任合伙企业 | 组合的块符号纠错 |
CN104885453B (zh) * | 2012-11-29 | 2018-11-02 | Lg 电子株式会社 | 支持多个层的用于编码/解码图像的方法和设备 |
GB2513110A (en) * | 2013-04-08 | 2014-10-22 | Sony Corp | Data encoding and decoding |
WO2016003130A1 (ko) | 2014-06-29 | 2016-01-07 | 엘지전자(주) | 제한된 캐리 연산에 의한 산술 코딩을 수행하기 위한 방법 및 장치 |
EP3163877A4 (en) | 2014-06-29 | 2018-03-07 | LG Electronics Inc. | Method and apparatus for performing arithmetic coding on basis of concatenated rom-ram table |
CN105472371B (zh) * | 2016-01-13 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 视频码流处理方法和装置 |
EP3602798A1 (en) * | 2017-03-23 | 2020-02-05 | INTEL Corporation | Flexible information block size support for polar code |
US20230024560A1 (en) * | 2018-05-10 | 2023-01-26 | Sharp Kabushiki Kaisha | Systems and methods for performing binary arithmetic coding in video coding |
CN109672923B (zh) * | 2018-12-17 | 2021-07-02 | 龙迅半导体(合肥)股份有限公司 | 一种数据处理方法和装置 |
GB2585042A (en) * | 2019-06-25 | 2020-12-30 | Sony Corp | Image data encoding and decoding |
CN117579081B (zh) * | 2023-11-23 | 2024-06-21 | 哈尔滨工程大学 | 一种二进制数据无损压缩方法、设备及存储介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0529154B1 (en) * | 1991-08-28 | 1997-03-26 | ALCATEL BELL Naamloze Vennootschap | Encoder arrangement |
JP2891818B2 (ja) * | 1992-04-22 | 1999-05-17 | 三菱電機株式会社 | 符号化装置 |
JPH05341955A (ja) * | 1992-06-12 | 1993-12-24 | Fujitsu Ltd | データ圧縮および復元方式 |
JP3196608B2 (ja) * | 1995-08-31 | 2001-08-06 | 三菱電機株式会社 | 符号化・復号化装置及び符号化・復号化方法 |
JP3461640B2 (ja) * | 1995-11-24 | 2003-10-27 | パナソニック コミュニケーションズ株式会社 | 算術符号化・復号化装置 |
KR100261254B1 (ko) * | 1997-04-02 | 2000-07-01 | 윤종용 | 비트율 조절이 가능한 오디오 데이터 부호화/복호화방법 및 장치 |
KR100335611B1 (ko) * | 1997-11-20 | 2002-10-09 | 삼성전자 주식회사 | 비트율 조절이 가능한 스테레오 오디오 부호화/복호화 방법 및 장치 |
GB2333412B (en) * | 1998-01-20 | 2002-05-15 | Daewoo Electronics Co Ltd | Context-based arithmetic encoding/decoding apparatus |
CN1174634C (zh) * | 1998-01-26 | 2004-11-03 | 株式会社大宇电子 | 基于上下文的算术编码/解码方法及装置 |
JP3391251B2 (ja) * | 1998-03-25 | 2003-03-31 | 三菱電機株式会社 | 適応確率推定方法及び適応符号化方法並びに適応復号方法 |
CN100361405C (zh) * | 1998-05-27 | 2008-01-09 | 微软公司 | 利用可升级的音频编码器和解码器处理输入信号的方法 |
US6289129B1 (en) * | 1998-06-19 | 2001-09-11 | Motorola, Inc. | Video rate buffer for use with push dataflow |
US6195026B1 (en) * | 1998-09-14 | 2001-02-27 | Intel Corporation | MMX optimized data packing methodology for zero run length and variable length entropy encoding |
JP3185769B2 (ja) * | 1998-10-26 | 2001-07-11 | 日本電気株式会社 | 画像信号処理装置 |
KR100326157B1 (ko) * | 1998-12-31 | 2002-07-03 | 윤종용 | 통신시스템에서반복디코더에대한양자화방법 |
FI106758B (fi) * | 1999-04-16 | 2001-03-30 | Nokia Networks Oy | Segmentointimekanismi lohkoenkooderia varten |
KR100612003B1 (ko) * | 2000-02-26 | 2006-08-11 | 삼성전자주식회사 | 통신망에서 비트 스트림 송수신 장치 및 그 방법 |
JP2002094386A (ja) * | 2000-09-12 | 2002-03-29 | Mitsubishi Electric Corp | 符号化装置、復号装置、符号化方法および復号方法 |
-
2003
- 2003-09-19 EP EP03756844.1A patent/EP1540962B1/en not_active Expired - Lifetime
- 2003-09-19 CN CN038195208A patent/CN1675842B/zh not_active Expired - Lifetime
- 2003-09-19 CN CN201510725612.1A patent/CN105306067B/zh not_active Expired - Lifetime
- 2003-09-19 WO PCT/US2003/029690 patent/WO2004028165A2/en active Application Filing
- 2003-09-19 PT PT16156283T patent/PT3079261T/pt unknown
- 2003-09-19 EP EP18209148.8A patent/EP3468043A1/en not_active Ceased
- 2003-09-19 ES ES03756844.1T patent/ES2586409T3/es not_active Expired - Lifetime
- 2003-09-19 ES ES16156283T patent/ES2721055T3/es not_active Expired - Lifetime
- 2003-09-19 DK DK16156283.0T patent/DK3079261T3/en active
- 2003-09-19 CN CN201510726072.9A patent/CN105406873B/zh not_active Expired - Lifetime
- 2003-09-19 DK DK03756844.1T patent/DK1540962T3/en active
- 2003-09-19 EP EP16156283.0A patent/EP3079261B1/en not_active Expired - Lifetime
- 2003-09-19 AU AU2003299010A patent/AU2003299010A1/en not_active Abandoned
- 2003-09-19 JP JP2004568951A patent/JP4391425B2/ja not_active Expired - Lifetime
- 2003-09-19 ES ES18209181T patent/ES2915662T3/es not_active Expired - Lifetime
- 2003-09-19 CN CN201310053178.8A patent/CN103152054B/zh not_active Expired - Lifetime
- 2003-09-19 EP EP18209181.9A patent/EP3468045B1/en not_active Expired - Lifetime
- 2003-09-19 DK DK18209181.9T patent/DK3468045T3/da active
- 2003-09-19 EP EP18209165.2A patent/EP3468044A1/en not_active Ceased
- 2003-09-19 CN CN201510726145.4A patent/CN105356887B/zh not_active Expired - Lifetime
- 2003-09-19 PT PT37568441T patent/PT1540962T/pt unknown
- 2003-09-19 PT PT182091819T patent/PT3468045T/pt unknown
-
2009
- 2009-04-01 JP JP2009089108A patent/JP2009207156A/ja active Pending
-
2011
- 2011-11-14 JP JP2011248692A patent/JP5138805B2/ja not_active Expired - Lifetime
- 2011-11-14 JP JP2011248684A patent/JP5122677B2/ja not_active Expired - Lifetime
-
2012
- 2012-10-25 JP JP2012235859A patent/JP5390004B2/ja not_active Expired - Lifetime
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5138805B2 (ja) | 算術符号化方法及び算術符号化装置 | |
US7183951B2 (en) | Method and apparatus for arithmetic coding and termination | |
US6967601B2 (en) | Method and apparatus for arithmetic coding, including probability estimation state table creation | |
KR101136212B1 (ko) | 최적화된 cabac 디코더 | |
US7839311B2 (en) | Architecture for multi-stage decoding of a CABAC bitstream | |
JP4179640B2 (ja) | 情報信号の算術符号化及び復号 | |
US6850175B1 (en) | Method and apparatus for arithmetic coding | |
EP1504408B1 (en) | System and method for arithmetic encoding | |
JP3708744B2 (ja) | 適応確率推定方法、適応符号化方法、適応復号方法、適応確率推定装置、適応符号化装置及び適応復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120911 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121025 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121113 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121114 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5138805 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151122 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |