资源简介
压缩包的内容包括:1.有关JPEG和DPCM算法的文章;2.实现其算法的压缩程序3.有关图像压缩方面的资料。读者请注意:
这里讨论的是灰度图像的压缩不涉及彩色图像。
实现压缩时,输入的图像数据采用一种自定义的格式(com 格式),前四个字节记录图像的宽度和高度,之后就是逐
行的图像数据,图像的开头和结尾没有任何标记。这种格式的图像数据是从BMP图像中得到的。
这里没有JPEG算法的解压程序,压缩后的数据存成标准的JPEG文件格式,任何视图软件都可以打开。DPCM方法中的解
压缩程序将数据仍然存成com格式,可以将其转成PGM格式观看,压缩包中由com转为PGM格式的程序。
所有的C程序均是在Linux(Rethat7.3)下完成。
代码片段和文件信息
/*This program is wrote by Fujian Shi(fieagle@yahoo.com.cn)*/
/*It can transform the com file to pgm file you can watch the picture*/
#include “stddef.h“
#include “stdio.h“
void put_measure(FILE *fileunsigned int valchar th)
{
int i=10000temptime=0;
if (th == 0) i /=10;
while(1) {
i/=10;
temp=val/i;
if (temp >0)
time++;
if(temp>10) {
printf(“Please increase the origin value of inow it is 10000.\n“);
exit(0);
}
if ((time==0) && (temp==0))
continue;
putc((char) (temp+48)file);
if((val-=i*temp)==0)
break;
}
}
main(int argcchar *argv[])
{
#define UCH(x) ((int) (x))
#define GET_2B(arrayoffset) ((unsigned int) UCH(array[offset]) + \
(((unsigned int) UCH(array[offset+1])) << 8))
#define JFREAD(filebufsizeofbuf) \
((size_t) fread((void *) (buf) (size_t) 1 (size_t) (sizeofbuf) (file)))
#define ReadOK(filebufferlen) (JFREAD(filebufferlen) == ((size_t) (len)))
FILE *file1*file2;
char c1;
unsigned int widthheight;
int c2;
unsigned char width_height[4];
if ((file1=fopen(argv[1]“rb“))==NULL)
printf(“the %scan‘t be opened“argv[1]);
if ((file2=fopen(argv[2]“wb+“))==NULL)
printf(“the %scan‘t be opened“argv[2]);
if (! ReadOK(file1 width_height 4)){
printf(“error when read the head of file1“);
exit(0);
}
width=GET_2B(width_height0);
height=GET_2B(width_height2);
c1=80;
fputc(c1file2);
c1=0x35;
fputc(c1file2);
c1=10;
fputc(c1file2);
/*fputc((char) 48file2);*/
put_measure(file2width1);
c1=32;
fputc(c1file2);
/*fputc((char) 48file2);*/
put_measure(file2height1);
c1=10;
fputc(c1file2);
put_measure(file2(unsigned int)2550);
fputc((char) (10)file2);
while ((c2 = getc(file1)) != EOF)
putc((char) (c2)file2);
fclose(file1);
fclose(file2);
return(0);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1946 2003-07-11 13:51 source_code\com2pgm.c
文件 180350 2007-11-09 00:32 source_code\Debug\com2pgm.exe
文件 184492 2007-11-09 00:32 source_code\Debug\com2pgm.ilk
文件 5575 2007-11-09 00:32 source_code\Debug\com2pgm.obj
文件 175852 2007-11-09 00:32 source_code\Debug\com2pgm.pch
文件 369664 2007-11-09 00:32 source_code\Debug\com2pgm.pdb
文件 33792 2007-11-09 00:32 source_code\Debug\vc60.idb
文件 45056 2007-11-09 00:32 source_code\Debug\vc60.pdb
文件 2633 2003-06-13 15:47 source_code\get_image_data\bmpgray\commondecls.h
文件 2135 2003-03-06 20:43 source_code\get_image_data\bmpgray\jccolor.c
文件 26624 2007-11-22 12:25 source_code\get_image_data\bmpgray\jccolor.doc
文件 13630 2003-07-11 10:13 source_code\get_image_data\bmpgray\rdbmp.c
文件 58368 2007-11-22 12:24 source_code\get_image_data\bmpgray\rdbmp.doc
文件 814 2003-03-04 16:52 source_code\get_image_data\save_com_image\commondecls.h
文件 12386 2003-07-11 10:21 source_code\get_image_data\save_com_image\saveudbmp.c
文件 814 2003-03-04 16:52 source_code\get_image_data\verse_image\commondecls.h
文件 14165 2003-07-11 10:18 source_code\get_image_data\verse_image\rdbmp.c
文件 14085 2003-06-13 16:32 source_code\get_image_data\verse_image\rdbmp.c~
文件 34304 2007-11-20 00:47 source_code\jpeg\commondecls.doc
文件 3870 2003-03-11 22:11 source_code\jpeg\commondecls.h
文件 44032 2007-11-17 10:26 source_code\jpeg\dct.doc
文件 7248 2003-07-11 10:36 source_code\jpeg\jchuff.c
文件 41984 2007-11-20 00:47 source_code\jpeg\jchuff.doc
文件 8151 2003-07-11 10:39 source_code\jpeg\jcmarker.c
文件 52224 2007-11-20 00:48 source_code\jpeg\jcmarker.doc
文件 8195 2007-11-16 22:59 source_code\jpeg\jfdctint.c
文件 498 2003-03-10 18:39 source_code\jpeg\jum.c
文件 24064 2007-11-20 00:49 source_code\jpeg\jum.doc
文件 5633 2003-07-11 10:34 source_code\jpeg\quanhuff.c
文件 40448 2007-11-20 00:46 source_code\jpeg\quanhuff.doc
............此处省略33个文件信息
相关资源
- MSTAR,SAR数据集,mstar2jpeg编译文件
- JPEG图像压缩VC代码实现
- libjpeg.so.8
- bmp转jpeg源码
- STM32 TFT液晶驱动与JPEG解码图象显示
- JPEG压缩源码(已经经过测试)
- FPGA JPEG Verilog Source code 源代码
- bmp压缩jpeg源码
- vc图像编程:jpeg格式转换成bmp
- 图片批处理软件JPEG Resizer2.1汉化版
- 图象压缩JPEG编码算法及压缩过程的实
- JPEG-LS压缩与解压源程序
- jpeg格式图片的读取和显示
- JPEG文件隐形信息检测算法
- JPEG图片文件编解码详解.doc
- libjpeg编译后的包
- JPEG2000图像压缩基础、标准和实践 1部
- amcap v3.09.exe
- JPEG格式编码/解码
- jpegsrc.v9a.tar.gz
- jpegsrc.v8b.tar.gz25389
- Linux 下V4l2摄像头采集图片,实现yuy
- vc实现bmp图片转化jpeg图片
- JPEG图像压缩编码.doc
- jpeg图片压缩库jpeg-9b
- 将16进制数据转换为图片
- 使用CUDA将NV12格式转换为JPEG的代码
- libjpeg压缩bmp为jpg与将jpg解压缩为bmp
- SerialGraph.zip
- jpegsrc.v8b.tar.gz
评论
共有 条评论