• 大小: 279KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-22
  • 语言: 其他
  • 标签: jpeg  

资源简介

压缩包的内容包括: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个文件信息

评论

共有 条评论