下载此文档

EZW举例如何对256256灰度图象进行ezw编码.doc


文档分类:通信/电子 | 页数:约19页 举报非法文档有奖
1/19
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/19 下载此文档
文档列表 文档介绍
: .
EZW举例如何对256256灰度图象进行ezw编码
EZW举例如何对256*256灰度图象进行ezw编码
该源代码包含有6个文件:
EZW编码器头文件EZW. H ,
, EZW编码器文件
MATRIX2D. C ,编码器数据结果定义和数据操作FIFO. H FIFO. C , 扫描方式定义:先入先出原则
LIST. H LIST. C,零树结构定义和操作
UNEZW. C , EZW 解码器
这里,. C中的内容,充分理解零树的概
EZW编码器
#define debug
nclude
ezw. h
nclude
"f 辻o. h"
nclude
""
#include
z/matrix2d. h"
#include
<stdio. h>
#include
<stdlib. h>
#include
<math. h>
//工作矩阵 matrix_2d *M;
//误差值 char error;
//用于统计某一数据流中1和0的个数int zeroes, ones; //编码数据流的输 出文件 FILE *ezw_file;
//输岀字节及编码标志位 unsigned char output_byte, mask;
//建立一个数据流输出的文件头ezw_fi 1 e_header header; void load_data (matrix_2d *m) { int row, col;
for (row=0; row<8; row++)
{for (col=0; col<8; col++)
{//进行工作矩阵的赋值 m->m[row] [col] = example [row] [col];
}}}
/* * Puts a bit in the output stream・*/ void put_bit(char bit)
{//如果放入的比特为是1,统计1的个数;反之统计0的个数
if (bit='l‘)
{output_byte |= mask;
ones++;}
else zeroes++; mask »= 1:
辻(mask==0)
{fwrite(&output_byte, sizeof(output_byte), 1, ezw_file);
output_byte = 0; mask = 0x80; }} /* * Puts dominant-pass and subordinate-pass codes in the output stream・ */
void output_code(int code)
{〃对于一个已经量化且编码后的数据,来判断它的类型。其类型有6种,正 如在头文件中定
义的那样
switch (code)
{case ZERO:
put_bit ('O') ; //如果是二进制数0,贝!I输出一个比特位,值不变#ifdef
debug printf("0");
#endif break;
case ONE:
put-bitCT); 〃如果是二进制数1,则输出一个比特位,值不变#辻def debug printf(T');
#endif break;
case POS:
put_bit('O'); 〃如果是正大系数,则按顺序输岀两个比特位,值依次为0,1 put_bit(, T );
#ifdef debug printf ("p") ; ttendif
break;
case NEG:
put_bitcr); 〃如果是负大系数,则按顺序输出两个比特位,值依次为i,i
put_bit('l');
#辻def debug printf ("n"); #endif break;
case ZTR:
put-bit c 0^; 〃如果是零树根,则按顺序输出两个比特位,值依次为0,0
put_bit ('0') ;#辻def debug
printf ("t");
#endif
break;
case IZ: ); 〃如果是孤独零,则按顺序输出两个比特位,值依次为i,o put_bit (' O');
#ifdef debug printf("z"); #endif break; }}
/* * Returns the largest value in a descendance tree・ */
element_

EZW举例如何对256256灰度图象进行ezw编码 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息