ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:154.21KB ,
资源ID:8917136      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8917136.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(多媒体数据库实验2.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

多媒体数据库实验2.docx

1、多媒体数据库实验2指标等级ABCD功能完整程序质量按时检查提问回答检查时间总评成绩云南大学软件学院实 验 报 告序 号: 实验老师: 秦江龙 课程名称:多媒体数据库系统设计实验 实验名称: 多媒体数据压缩 学 号: 姓 名: 一、 实验名称多媒体数据压缩二、 实验目的通过使用不同的数据压缩软件,熟悉不同的数据压缩标准的特性三、 实验内容(算法、程序、步骤和方法)任务1:35类不同的多媒体数据类型(如:文本、图像、音频、视频等),根据压缩率、压缩时长、CPU占用率、内存占用情况,评价常用压缩工作35款(如WinRAR, WinZip, Zip7等)请给出你的结论,哪一款压缩软件更适合压缩哪一类多

2、媒体数据类型。任务2:请使用你熟悉的语言,实现如下程序:对用户输入的任意英文字符串,先统计各英文字符出现的次数和概率,采用Huffman编码对字符串编码压缩,然后再解码还原输入字符串。对比35组测试数据,比较Huffman编码的码长和等长编码的码长。说明Huffman编码的优点。四、 数据记录和计算7-zipWinRARWinZip原始数据视频(mp4)视频(mp4)视频(mp4)压缩格式7zrarzip原文件大小87.5M87.5M87.5M压缩包大小68.1M68.5M85.6M压缩率77.8%78.3%97.8%CPU占用率80%84%78%内存占用191012K96744K52668K

3、评价7-zip对MP4视频的压缩率较低,CPU占用率居中,内存占用率较高,总体压缩效果较为理想。WinRAR对MP4视频的压缩率居中,CPU占用率较高,内存占用率居中,总体压缩效果一般。WinZip对MP4视频的压缩率较高,CPU占用率较低,内存占用率较低,总体压缩效果不太理想。7-zipWinRARWinZip原始数据文档(docx)文档(docx)文档(docx)压缩格式7zrarzip原文件大小12.02M12.02M12.02M压缩包大小11.2M11.3M12M压缩率93.2%94.0%99.8%CPU占用率71%66%84%内存占用139764K96788K42736K评价7-zi

4、p对docx文档的压缩率较低,CPU占用率居中,内存占用率较高,总体压缩效果较为理想。WinRAR对docx文档的压缩率居中,CPU占用率较低,内存占用率居中,总体压缩效果一般。WinZip对docx文档的压缩率较高,CPU占用率较高,内存占用率较低,总体压缩效果不太理想。7-zipWinRARWinZip原始数据图片(bmp)图片(bmp)图片(bmp)压缩格式7zrarzip原文件大小4.11M4.11M4.11M压缩包大小562K728K622K压缩率13.4%17.3%14.8%CPU占用率93%87%89%内存占用35572K3940K42288K评价7-zip对bmp图片的压缩率较

5、低,CPU占用率较高,内存占用率较低,总体压缩效果较为理想。WinRAR对bmp图片的压缩率较高,CPU占用率较低,内存占用率居中,总体压缩效果一般。WinZip对bmp图片的压缩率居中,CPU占用率居中,内存占用率较高,总体压缩效果不太理想。源代码#include#include#include#includeusing namespace std;const int MAXSIZE=100;typedef struct Huffmantree char cname; int weight,mark; struct Huffmantree *parent,*lchild,*rchild,*n

6、ext;Hftree,*linktree;linktree tidy_string(char ch) int i=0; linktree tree,ptr,beforeptr,node; tree=(linktree)malloc(sizeof(Hftree); if(!tree) return NULL; tree-next=NULL; for(i=0;chi!=0&chi!=n;i+) ptr=tree; beforeptr=tree; node=(linktree)malloc(sizeof(Hftree); if(!node) return NULL; node-parent=NULL

7、; node-lchild=NULL; node-rchild=NULL; node-next=NULL; node-mark=0; node-cname=chi; node-weight=1; if(tree-next=NULL) tree-next=node; else ptr=tree-next; while(ptr&ptr-cname!=node-cname) ptr=ptr-next; beforeptr=beforeptr-next; if(ptr&ptr-cname=node-cname) ptr-weight+=1; free(node); else node-next=bef

8、oreptr-next; beforeptr-next=node; return tree;linktree squent_node(linktree tree) linktree head,ph,pt,beforeph; head=(linktree)malloc(sizeof(Hftree); if(!head) return NULL; head-next=NULL; ph=head; beforeph=head; while(tree-next) pt=tree-next; tree-next=pt-next; pt-next=NULL; ph=head-next; beforeph=

9、head; if(head-next=NULL) head-next=pt; else while(ph&ph-weightweight) ph=ph-next; beforeph=beforeph-next; pt-next=beforeph-next; beforeph-next=pt; free(tree); return head;linktree createHtree(linktree tree) linktree p,q,newnode,beforep; for(p=tree-next,q=p-next;p!=NULL&q!=NULL;p=tree-next,q=p-next)

10、tree-next=q-next; q-next=NULL; p-next=NULL; newnode=(linktree)malloc(sizeof(Hftree); if(!newnode) return NULL; newnode-next=NULL; newnode-mark=0; newnode-lchild=p; newnode-rchild=q; p-parent=newnode; q-parent=newnode; newnode-weight=p-weight+q-weight; p=tree-next; beforep=tree; if(p!=NULL&p-weight=n

11、ewnode-weight) newnode-next=beforep-next; beforep-next=newnode; else while(p!=NULL&p-weightweight) p=p-next; beforep=beforep-next; newnode-next=beforep-next; beforep-next=newnode; return (tree-next);void Huffman_Coding(linktree tree) int index=0; char *code; linktree ptr=tree; code=(char*)malloc(10*

12、sizeof(char); printf(字符以及它的相应权数: 哈夫曼编码:nn); if(ptr=NULL) printf(哈夫曼树是空的!n); exit(0); else while(ptr-lchild&ptr-rchild&ptr-mark=0) while(ptr-lchild&ptr-lchild-mark=0) codeindex+=0; ptr=ptr-lchild; if(!ptr-lchild&!ptr-rchild) ptr-mark=1; codeindex=0; printf(tw%c=%dttt,ptr-cname,ptr-weight); for(index=

13、0;codeindex!=0;index+) printf(%c,codeindex); printf(n); ptr=tree; index=0; if(ptr-rchild&ptr-rchild-mark=0) ptr=ptr-rchild; codeindex+=1; if(!ptr-lchild&!ptr-rchild) ptr-mark=1; codeindex+=0; printf(tw%c=%dttt,ptr-cname,ptr-weight); for(index=0;codeindex!=0;index+) printf(%c,codeindex); printf(n); p

14、tr=tree; index=0; if(ptr-lchild-mark=1&ptr-rchild-mark=1) ptr-mark=1; ptr=tree; index=0; printf(n); free(code);void Huffamn_Decoding(linktree tree,char code) int i=0,j=0; char *char0_1; linktree ptr=tree; char0_1=(char*)malloc(10*sizeof(char); coutlchild&ptr-rchild;j=0,ptr=tree) for(j=0;codei!=0&ptr

15、-lchild&ptr-rchild;j+,i+) if(codei=0) ptr=ptr-lchild; char0_1j=0; if(codei=1) ptr=ptr-rchild; char0_1j=1; if(!ptr-lchild&!ptr-rchild) char0_1j=0; for(j=0;char0_1j!=0;j+) coutcname); if(codei=0&ptr-lchild&ptr-rchild) char0_1j=0; cout 没有与最后几个字符的 0,1序列: char0_1相匹配的字符!lchild); deletenode(ptr-rchild); fr

16、ee(ptr); int main() char stringMAXSIZE,codeMAXSIZE; linktree temp,ht,htree,ptr=NULL; cout编码:请输入当前要进行编码的字符串:string; coutendl; temp=tidy_string(string); ht=squent_node(temp); htree=createHtree(ht); Huffman_Coding(htree); cout解码:请输入要解码的0,1序列:code; coutendl; Huffamn_Decoding(htree,code); deletenode(htre

17、e); return 0;截图五、 结论(结果)1. 在对三种压缩软件的测试中发现,7-zip的压缩率较低,内存占用一般,但CPU占用较高,整体压缩效果最好;WinRAR压缩率居中,内存占用一般,CPU占用居中,整体压缩效果一般;WinZip压缩率最低,内存占用较高,CPU占用较高,整体压缩效果最差。其中7-zip适合对视频等大文件进行压缩,WinRAR适合对文档等文件进行压缩,WinZip适合对图片等小文件进行压缩。2. Huffman编码的码长是变化的,对于出现频率较高的信息,编码的长度较短;而对于出现频率较低的信息,编码的长度较长,这样,处理全部信息的总码长一定小于实际信息的符号长度。Huffman编码的码长虽然是可变的,但却自带同步代码。Huffman编码方法的编码效率比Shannon-Fano编码方法更高。指导教师签名: 秦江龙

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1