- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 11 卷第 3 期 山 东 轻 工 业 学 院 学 报 Vol . 11 No . 3
1997 年 9 月 J OU RNAL OF SHANDON G IN STI TU TE OF L I GH T INDU STR Y Sep . 1997
用 C 语言对 GIF 格式图像的处理
万金领 冯益华 王晓柱
( 山东轻工业学院机电工程系 济南 250 100) ( 山东轻工设计院 济南 250 100)
摘要 分析了 GIF 格式图像文件的压缩数据结构 ,给出了用 C 语言实现图像压缩 、解压 、变
换的处理方法 ,解决了在应用程序中设计图像界面的问题 。
关键词 图像 ,颜色 ,数据
中图法分类号 TP 3 1111
在图像处理中 ,最大的问题就是如何组织庞大的图像数据 。一个 640 400 幅面 256 色的
位图像需要的空间为 256 K 字节 ,如此大的图像数据不仅 占用了大量的磁盘空间 ,而且降低了
处理速度 。因此图像数据一般采用压缩式存储 ,但由于压缩格式数据结构复杂 ,使人很难在应
用程序中使用 ,本文以 GIF 格式图像文件的处理为例 ,介绍了图像处理的一种实用方法 。
1 GIF 格式图像文件的结构 :
在 GIF 格式图像文件中 ,数据基本结构如下 :
表头数据
该表头可用语句定义 :
st ruct GIF- STA R {
char GIF87a [ 6 ] ;
int X , Y ;
char GL OBAL- FLA G ;
char GROUND- COL OR ;
char 0 ;
} ;
2 图像数据的压缩
彩色图像中的每个像点由一个字节表示 ,字节中的数值为显示卡调色板中颜色的号码 ,这
收稿 日期 :1996 - 10 - 29
第 3 期 万金领等 :用 C 语言对 GIF 格式图像的处理 13
样一个 320 200 的图像需要占用大约 60 K 字节 ,但实际的 GIF 文件长度要小的多 ,这是因为
图像数据在存储时并非把每个像点字节中的数值顺序记录下来 ,而是动态地建立一个数据标
记表 ,将原始数据转换标记表中的地址记录下来 。
附图 数据处理框图
开始数据标记表初始化成图像的每种颜色值 ,然后建立“首标字符串”和“目前字符串”两
个缓冲区 ,“目前字符串”定义为“首标字符串”加上图像数据的当前字节 。开始时这两个缓冲
区均为空的 ,当程序从图像数据中获得第一个字符时 , 目前字符串于首标字符串加上这个字
符 , 由于开始首标字符串为空 ,故 目前字符串就等于这个字符 ,数据标记表初始化后有这个字
符 ,因此把它拷贝到首标字符串。程序再从图像数据中获得一个字符 ,并加上首标字符串赋给
( )
目前字符串 ,数据标记表没有这个字符串 目前为两个字符 ,故要把这个字符串加到数据标记
表中并记录字符串在数据标记表中的地址 ,重复读入图像数据直到所有数据处理完毕 。数据
处理的框图如下 :
文档评论(0)