Реалізація ідеї арифметичного кодування, Детальна інформація
Реалізація ідеї арифметичного кодування
int freq[No_of_symbols+1];
/* \x00B2i\x00B3oe\x00B3ae\x00B3caoe\x00B3y iiaeae\x00B3 */
start_model()
{ int i;
for (i = 0; i
char_to_index[i] = i+1;
index_to_char[i+1] = i;
}
for (i = 0; i
freq[i] = 1;
cum_freq[i] = No_of_symbols - i;
}
freq[0] = 0;
/* Iiiaeaiiy iiaeae\x00B3 o a\x00B3aeiia\x00B3aeiino\x00B3 c iiaei neiaieii */
update_model(symbol)
int symbol;
{ int i;
if (cum_freq[0]==Max_frequency) {
int cum;
cum = 0;
for (i = No_of_symbols; i>=0; i--) {
freq[i] = (freq[i]+1)/2;
cum_freq[i] = cum;
cum += freq[i];
}
}
for (i = symbol; freq[i]==freq[i-1];i-- );
if (i
int ch_i, ch_symbol;
ch_i = index_to_char[i];
/* \x00B2i\x00B3oe\x00B3ae\x00B3caoe\x00B3y iiaeae\x00B3 */
start_model()
{ int i;
for (i = 0; i
char_to_index[i] = i+1;
index_to_char[i+1] = i;
}
for (i = 0; i
freq[i] = 1;
cum_freq[i] = No_of_symbols - i;
}
freq[0] = 0;
/* Iiiaeaiiy iiaeae\x00B3 o a\x00B3aeiia\x00B3aeiino\x00B3 c iiaei neiaieii */
update_model(symbol)
int symbol;
{ int i;
if (cum_freq[0]==Max_frequency) {
int cum;
cum = 0;
for (i = No_of_symbols; i>=0; i--) {
freq[i] = (freq[i]+1)/2;
cum_freq[i] = cum;
cum += freq[i];
}
}
for (i = symbol; freq[i]==freq[i-1];i-- );
if (i
int ch_i, ch_symbol;
ch_i = index_to_char[i];
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021