




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西北工业大学 自动化学院 信息工程专业信息论实验报告计算图像间的互信息09030702 2007302171 马志强2009/10/20摘要:基于Matlab程序,计算出图像的熵和两幅差异不大的图像之间的互信息,从而加深对互信息和熵值的理解.关键字:Matlab工程应用,信息熵与互信息.一. 实验目的:利用Matlab计算两幅差异不大的图片熵值和互信息的值,并通过对图片差异较大区域进行裁剪,增多两个图片相同的区域,从而使得两图片的互信息的值增加,重发以上的操作多次,达到可获得的互信息的最大值,将获得的两个图片进行比较,验证互信息是否会根据图片拥有更多的相似区域而有所增大。二. 实验步骤:1. 获取图片:由于rgb图像的像素范围过大,所以实验所用的图片采用像素范围只有0255的gray图像(灰度图像);可以通过对同一张彩色图片进行灰度处理,也可以直接通过摄像设备获取灰度图像,拍照时应该注意尽量保持两张图片的差异尽可能的小,原因在于人为的摄像中存在不可避免的误差,从而导致最后的结果中的互信息值过于小,即使通过剪裁等手段也无法有效提高互信息的值;将选择好的图片进行剪裁,如果是直接拍摄的两张图片,可以略过此步骤,方法是只减少图片中的极少部分的像素,而且更改的像素希望是条状,然后保存两张图片,供实验中使用。2. 上机操作:将事先准备好的程序输入到Matlab中,利用Matlab的图片处理及转换功能,计算出图像的熵值和两个图像的互信息值,进行比较,以下附图及部分程序: 3. 记录数据以上程序运行出的结果分列如下: 本部分程序用于计算出下面的图片的熵值 a=imread(1.jpg);img=rgb2gray(a);b=imread(2.jpg); M,N=size(img);temp=zeros(M,N); figure,imshow(img);%To calculate the statistical character of images gray level, which means to calculate the number of each gray for m=1:M;for n=1:N;if img(m,n)=0;i=1;elsei=img(m,n);endtemp(i)=temp(i)+1;endendtemp=temp./(M*N);% Calculate the Entropy according to the defination%EntropyResult=0;for i=1:length(temp)if temp(i)=0;EntropyResult=EntropyResult;elseEntropyResult=EntropyResult-temp(i)*log2(temp(i);endend以下程序段用于计算下面两幅图片的互信息:a=imread(1.jpg);a=rgb2gray(a);b=imread(2.jpg);b=rgb2gray(b);%mi = MI(a,b)%CaculateMI of a and b in the region of the overlap part %To calculate the overlapping regionsMa,Na = size(a);Mb,Nb = size(b);M=min(Ma,Mb); N=min(Na,Nb);hab= zeros(256,256); ha = zeros(1,256); hb= zeros(1,256); if max(max(a)=min(min(a) a = (a-min(min(a)/(max(max(a)-min(min(a);else a = zeros(M,N); end if max(max(b)-min(min(b) b = (b-min(min(b)/(max(max(b)-min(min(b); else b = zeros(M,N); end a = double(int16(a*255)+1; b = double(int16(b*255)+1; for i=1:M for j=1:N indexx= a(i,j); indexy= b(i,j) ; hab(indexx,indexy) = hab(indexx,indexy)+1; ha(indexx) = ha(indexx)+1; hb(indexy) = hb(indexy)+1; end end hsum= sum(sum(hab); index = find(hab=0); p = hab/hsum; Hab= sum(sum(-p(index).*log(p(index); hsum= sum(sum(ha); index = find(ha=0); p = ha/hsum; Ha = sum(sum(-p(index).*log(p(index); hsum= sum(sum(hb); index = find(hb=0); p = hb/hsum; Hb= sum(sum(-p(index).*log(p(index); mi = Ha+Hb-Hab EntropyResult =1.9475其中EntropyResult为图片的信息熵,mi表示的是两个图片的互信息;以下数据为对图片进行10次修改获得的互信息:mi=0.0512最后获得的两张图片,基本相同,如下图所示:剪切次数序号互信息10.080820.084430.086940.103250.119560.122870.1517890.15470.3635三. 实验结论:利用Matlab能够实现对两幅图片互信息的计算,扩展到工程中可为求项目的相似度提供有力的参考,同时,利用互信息能够高效地发现共通之处,就相同的部分采取措施,以获得希望达到的目的,如模拟仿真等,另外通过实验加深了对互信息及信息熵的理解,为以后的工作和学习提供了方便。通过数据的收集:发现如下问题:1. 对于灰度图片,信息熵普遍不大于8,故设想有256个色素组成的图片,1-256像素各一个,可通过计算得其信息熵为8,故又如下猜想:对于灰度图片,信息熵不大于8;2. 图片剪裁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新能源汽车研发团队绩效奖励补充协议
- 2025年高级按摩考试题及答案
- 警察专业面试题及答案解析
- 下肢蜂窝织炎护理查房
- 消防安全检查培训教学课件
- 幼儿园泥工培训活动
- 妊高症病人的观察及护理
- 2025至2030中国贯叶连翘提取物行业产业运行态势及投资规划深度研究报告
- 2025至2030直接驱动主轴行业发展趋势分析与未来投资战略咨询研究报告
- 公司金融产品汇报
- 蔬菜抗营养成分流失工艺考核试卷及答案
- 极端天气下灾害风险评估方案
- 民警培训安全驾驶简报课件
- 消毒灭菌效果监测报告
- 2025年软工导论期末试题及答案
- 2025年山东省潍坊市中考数学试卷附答案
- 俄罗斯礼俗课件
- 2024统编版八年级历史上册全册知识点复习提纲
- 虚拟服装培训教程课件
- 2025年国防教育知识竞赛试题(附答案)
- 非车主押车借款合同范本
评论
0/150
提交评论