数字图像处理实验5-图像增强.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图像处理实验5-图像增强

实验时间:200 年 月 日 实验小组:第 组 组长: 组员: 组员: 指导教师签名: 实验情况评定: 实验 实验目的: 通过实验掌握下列知识: 1、学习常见的图像增强的方法并实际体会图像增强前后画质的变化; 2、了解几种不同增强方式用于不同图像处理所取得的效果(削波处理和阈值化处理); 3、初步掌握简单算法的代码实现的方法; 4、初步了解MFC的一些初步编程技巧; 内容及步骤 一、通过VC实现一个削波处理: 1、继续按照前几节的实验课介绍的方法,建立一个ImageProcessing Wizard工程; 2、利用试验三和实验四介绍的方法,通过CBmp类读入“数字图像处理实验”文件夹中的“样品.bmp”,并相应在各消息函数里添加必须的代码; 3、在上述代码中间添加图形增强的代码,应该注意:读取的是彩色图形,所以在进行削波处理时,也必须应针对每一个基色分别进行削波处理; 4、削波处理的参数:a=0,b=210; 5、运行并观察运行结果; 二、通过VC实现一个阈值化处理: 步骤1与上一个实验相同,仍旧是针对“数字图像处理实验”文件夹中的“样品.bmp”,这个实验是进行图形的阈值化处理; 2、利用前面介绍的方法,通过CBmp类读入“数字图像处理实验”文件夹中的“样品.bmp”,并相应在各消息函数里添加必须的代码; 应该注意:读取的是彩色图形,所以在进行灰度窗口变换时,应该先将彩色图象转换为灰度图象,然后再进行阈值化处理; 4、阈值化处理的参数:a=175; 5、运行并观察运行结果; 注:结构rgb有一个成员函数graylevel可以进行彩色图象的灰度变换,代码例子如下: struct rgb tx = bmp1-pImageData[j*bmp1-nWidth+i]; double grayx = tx.graylevel(); 实验报告要求: 记录你编写的削波处理实验代码,同时观察并纪录经过削波处理的效果; 实验代码: void CMy5Dlg::OnOK() { double a=0,b=210,mf=230,mg=220; // TODO: Add extra validation here for(int i=0; ibmp1-nWidth; i++) for(int j=0; jbmp1-nHeight; j++) { struct rgb tx; tx = bmp1-pImageData[j*bmp1-nWidth+i]; if(tx.red=btx.red=0) { tx.red=mg/b*tx.red; } else if(b=tx.red mf=tx.red) { tx.red=(mg/(mf-b))*tx.red; } if(tx.grn=btx.grn=0) { tx.grn=mg/b*tx.red; } else if(b=tx.grn mf=tx.grn) { tx.grn=(mg/(mf-b))*tx.grn; } if(tx.blu=btx.blu=0) { tx.blu=mg/b*tx.blu; } else if(b=tx.blu mf=tx.blu) { tx.blu=(mg/(mf-b))*tx.blu; } //tx.grn=((d-c)/(b-a))*(tx.grn-a)+c; //tx.blu=((d-c)/(b-a))*(tx.blu-a)+c; //int x=(tx.red+tx.grn+tx.blu)/3; pDC-SetPixel(i, j, RGB(tx.red,tx.grn, tx.blu)); } // TODO: Add extra validation here } 记录你编写的阈值化处理的实验代码。 void CMy5Dlg::OnOK() { double a=175,mf=220,mg=230; // TODO: Add extra validation here for(int i=0; ibmp1-nWidth; i++) for(int j=0; jbmp1-nHeight; j++) { struct rgb tx; tx = bmp1-pImageData[j*bmp1-nWidth+i

您可能关注的文档

文档评论(0)

almm118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档