⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 block_encode.h

📁 这是我刚刚完成的关于JPEG2000的C语言实现的部分程序。小波变换是采用97变换
💻 H
字号:
/******************************************************************************
功能描述:
   Implements 9/7 小波变换的实现
******************************************************************************/
/*****************************************************************************/
// 程序: 小波变换
// 版本:  V0.0
// 作者: 胡运平
// 最后修改时间 : 12, 5, 2005
/****************************************************************************/
#ifndef BLOCK_ENCODE
#define BLOCK_ENCODE

#define BLOCKLENGTH	16
#define BLOCKWIDTH	16
extern int block_bufferout[BLOCKLENGTH][BLOCKWIDTH];

unsigned char state_data_x[BLOCKLENGTH][BLOCKWIDTH];//符号变量
unsigned char state_data_q[BLOCKLENGTH][BLOCKWIDTH];//显著性状态变量
unsigned char state_data_e[BLOCKLENGTH][BLOCKWIDTH];//延迟显著性状态变量 表示系数是否是第一次被量值改进,也叫细化信息位
unsigned char state_data_v[BLOCKLENGTH][BLOCKWIDTH];//样本比特值
unsigned char state_data_pi[BLOCKLENGTH][BLOCKWIDTH];//编码状态变量 表示位平面上的比特值是否已经被编码,也叫访问信息位
	
int log2i(int val);
void encode_allsubband(int block_bufferin[BLOCKLENGTH][BLOCKWIDTH],float interleave[LENGTH+8][WIDTH+8]);
void block_encode(int block_bufferin[BLOCKLENGTH][BLOCKWIDTH]);
void init_environment(unsigned int f[BLOCKLENGTH][BLOCKWIDTH],unsigned char 
	c[BLOCKLENGTH][BLOCKWIDTH],unsigned char state_data_x[BLOCKLENGTH][BLOCKWIDTH]);
unsigned char init_significant(unsigned int f,int orient);
unsigned char init_sign(unsigned int f,unsigned char sign);
unsigned char init_magnitude(unsigned int f,unsigned char sign);

/******************************************************************************
以上是编码函数,以下是EBCOT的解码函数。
******************************************************************************/
void decode_allsubband();
void block_decode(int block_bufferout[BLOCKLENGTH][BLOCKWIDTH]);
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -