资源简介
本工程已通过vc编译运行,实现bmp图片转化成jpeg图片,运用离散余弦、哈弗曼、量化等编码过程,代码详细,每一行都有详细的注释,适合对图像编码的学习和研究。
………………
…………
typedef struct tagJPEGSOF0_24BITS
{
WORD segmentTag; //SOF段标记,必须为0xFFC0
WORD length; //段长度,真彩图为17,灰度图为11
BYTE precision; //精度,每个信号分量所用的位数,基本系统为0x08
WORD height; //图像高度
WORD width; //图像宽度
BYT
代码片段和文件信息
//jenc.cpp
/*
这是一个简单的jpeg编码程序,支持1:1:1采样的baseline彩色jpeg,输入只能是24bit的BMP文件
代码结构只求能说明各步骤过程,并不做特别的优化,效率较为一般。jpeg的色彩是采用YCrCb模式
的,所以从BMP到jpeg要经过YUV的转换。
*/
#include “jenc.h“
// 存放VLI表
BYTE VLI_TAB[4096];
BYTE* pVLITAB; //VLI_TAB的别名使下标在-2048-2048
// 存放2个量化表
BYTE YQT[DCTBLOCKSIZE];
BYTE UVQT[DCTBLOCKSIZE];
// 存放2个FDCT变换要求格式的量化表
FLOAT YQT_DCT[DCTBLOCKSIZE];
FLOAT UVQT_DCT[DCTBLOCKSIZE];
//存放4个Huffman表
HUFFCODE STD_DC_Y_HT[12];
HUFFCODE STD_DC_UV_HT[12];
HUFFCODE STD_AC_Y_HT[256];
HUFFCODE STD_AC_UV_HT[256];
// bmFile:输入文件
// jpgFile:输出文件
// Q:质量
void JEnc::Invoke(string bmFile string jpgFile long Q)
{
FILE* pFile; // 输入文件句柄
if ((pFile = fopen(bmFile.c_str()“rb“)) == NULL) // 打开文件
{
throw(“open bmp file e
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-11-09 10:45 jpeg_mine\
文件 5941 2004-06-30 15:33 jpeg_mine\Jpeg.h
文件 4723 2004-06-30 15:09 jpeg_mine\JpegFormat.h
文件 4563 2004-06-30 15:31 jpeg_mine\Jpeg_mine.dsp
文件 541 2004-06-30 14:37 jpeg_mine\Jpeg_mine.dsw
文件 82944 2011-11-09 10:45 jpeg_mine\Jpeg_mine.ncb
文件 49664 2011-11-09 10:45 jpeg_mine\Jpeg_mine.opt
文件 252 2011-11-09 10:01 jpeg_mine\Jpeg_mine.plg
文件 3145784 2011-08-07 19:40 jpeg_mine\house.bmp
文件 344161 2011-11-09 09:55 jpeg_mine\house.jpg
文件 26248 2004-06-30 17:34 jpeg_mine\jenc.cpp
文件 4823 2004-06-30 15:20 jpeg_mine\jenc.h
文件 925 2011-11-09 10:01 jpeg_mine\main.cpp
- 上一篇:Greenplum手册
- 下一篇:在window是cmd下实现动态查看日志
相关资源
- STM32F103VCT6车牌识别装置
- spring+springMVC+mybatis房屋出租项目源码
- spring boot+mybatis+spring mvc+bootstrap开发停
- Raize Components 6.0 XE10(非常强大的VCL组
- XMODEM程序VC源码
- STM32F407虚拟串口VCP COM
- VMware ESX 注册机 ESX 序列号 ESX 算号器
- 基于mvc的网上商城开发
- VC HOOK编程大全
- DES加密软件v1.1.0.1
- A+VCE 手机做题软件 7.0
- 程序按钮图标
- vcenter enterprise 6.0 vsphere 6.0 keygen
- 利用经纬度计算两点之间的距离
- TMS320VC5402芯片封装库Protel 99 SE格式
- UDP 文件传输vc源代码
- MVC租房项目
- vc2播放器
- DES加密解密源代码
- VC 聊天系统 socket编程
- 好用的AES加密解密工具源码
- MSCOMM32.OCX vc串口通信编程控件
- PCI9054实现IO读写操作 包含 VC的DEMO源程
- Bresenham算法画直线VC
- VC启用禁用网卡 支持win7等64位系统
- crtdefs.h vc2008
- msvcp100dmsvcr100d;-真x64位-亲测有效.zip
- 《VC经典教程》中文chm
- vc读取MP3文件信息
- 使用微软PC/SC接口操作智能卡的demo
评论
共有 条评论