简易photoshop代码数字图像处理实验报告.doc
《简易photoshop代码数字图像处理实验报告.doc》由会员分享,可在线阅读,更多相关《简易photoshop代码数字图像处理实验报告.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一一个简单的“photoshop”软件二设计目的:数字图像处理,就是用数字计算机及其他有关数字技术,对图像进行处理,以达到预期的目的。随着计算机的发展,图像处理技术在许多领域得到了广泛应用,数字图像处理已成为电子信息、通信、计算机、自动化、信号处理等专业的重要课程。数字图像处理课程设计是在完成数字图像处理的相关理论的学习后,进行的综合性训练课程,其目的主要包括:1、使学生进一步巩固数字图像处理的基本概念、理论、分析方法和实现方法;2、增强学生应用VC编写数字图像处理的应用程序及分析、解决实际问题的能力;3、尝试将所学的内容解决实际工程问题,培养学生的工程实践能力,提高工科学生的就业能力。三设计
2、内容:1.打开图像:主要代码:static char szFilter=BMP文件(*.bmp)|*.bmp|; /定义过滤文件的类型 CFileDialog dlg(TRUE,bmp,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,szFilter);/定义文件对话框对象 CString filename; int ret=dlg.DoModal(); /运行打开文件对方框 if(ret=IDOK) filename=dlg.GetFileName(); /获取所选择图像的路径 m_dib.LoadFromFile(filename); /加载图像 if(
3、!m_dib.m_bLoaded) /判断是否加载图像成功 AfxMessageBox(图像打不开);return; 效果图:2.水平镜像:把图像的第一列和最后一列调转,第二列和倒数第二列换过来,以此类推下去,直到第nw/2为止。代码:int temp,i,j; for(j=0;jnh;j+) for(i=0;inw/2;i+) temp=m_dib.m_pdataj*nw+i; m_dib.m_pdataj*nw+i=m_dib.m_pdatanw-i-1+j*nw; m_dib.m_pdatanw-i-1+j*nw=temp; 效果图:3.素描风格:先把灰度值与右下的作对比,如果差值大于一
4、个值则说明这是轮廓,先把非轮廓的位置像素置为黑色,最后对所有像素进行底片化处理代码:int temp,i,j; for(j=0;jnh;j+) for(i=0;inw;i+) temp=m_dib.m_pdataj*nw+i-m_dib.m_pdata(j+1)*nw+i+1; if(temp10)m_dib.m_pdataj*nw+i=0; /黑色为0 for(j=0;jnh;j+) for(i=0;inw;i+) int gray=m_dib.m_pdataj*nw+i; m_dib.m_pdataj*nw+i=255-gray; 效果图:4图像雾化:在图像中引入一定的随机值,打乱图像中的
5、像素值代码:int i,j,k,dat; /i表示列,j表行 byte *ptemp=(byte *)new bytenw*nh; memset(ptemp,0,nw*nh); for(j=0;jnh;j+)for(i=0;i=nw*nh)dat=nw*nh-1;ptempj*nw+i=m_dib.m_pdatadat; memcpy(m_dib.m_pdata,ptemp,nw*nh);效果图:5.浮雕处理:通过勾画图象轮廓和降低周围像素色值,从而生成具有凹凸感的浮雕效果。其方法是生成一缓冲区,计算当前像素的左上角与右下角的像素值之差,再加上一个补值。将其存储到缓冲区。再将缓冲区的数据逐点替
6、换到图像中并显示出来。代码:int w=3,i,j; /w为模板宽度 BYTE *p=new BYTEnw*nh; memcpy(p,m_dib.m_pdata,nw*nh); for(j=w/2;jnh-w/2;j+) for(i= w/2;inw-w/2;i+) pj*nw+i=m_dib.m_pdata(j-1)*nw+i-1*(1)+m_dib.m_pdata(j+1)*nw+i+1*(-1)+120; memcpy(m_dib.m_pdata,p,nw*nh);delete p;效果图:6.直方图均衡化代码:int n256=0,g256=0; /定义频数数组n,均衡化每个像素的灰度
7、级的数组g double f256,t256; /定义频率数组f,累加的频率数组t int g_max=0,g_mim=255; int i,j,k,z; for(j=0;jnh;j+) /统计灰度级的频数n for(i=0;inw;i+) z=m_dib.m_pdataj*nw+i; nz+; for(k=0;k=255;k+) /统计每个灰度级出现的频率fk=nk/(nw*nh*1.0); /累计灰度级的频率 t0=f0;for(k=1;k=255;k+) tk=tk-1+fk; for(j=0;jnh;j+) for(i=0;ig_max?w:g_max; /得到最大值g_mim=wg_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简易 photoshop 代码 数字图像 处理 实验 报告
限制150内