欢迎来到天天文库
浏览记录
ID:33585402
大小:398.00 KB
页数:7页
时间:2019-02-27
《实验四24位彩色图像处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、计算机与通讯工程学院天津理工大学计算机与通信工程学院实验报告2010至2011学年第二学期实验四24位彩色图像处理课程名称数字图像处理学号学生姓名年级2009专业计算机科学与技术教学班号1实验地点主7-215实验时间2010年12月23日第1节至第2节主讲教师杨淑莹辅导教师7计算机与通讯工程学院实验(四)实验名称24位彩色图像处理软件环境WindowsVC++6.0硬件环境PC实验目的1.将24位彩色图像进行处理实验内容(应包括实验题目、实验要求、实验任务等)1.将24位彩色图像进行处理。要求:将24位彩色图像分三个区域,对这三个区域分别进行灰度化处理、逆反处理、马赛克处理
2、。任务:(1)在左视图中打开一幅24位彩色位图。(2)制作一个【24位彩色图像处理】菜单,将消息映射到右视图中,在右视图中显示位图,将高度平均分成三个区域,完成如下功能:u对第一个区域进行灰度变换。Gray(i,j)=0.11R(i,j)+0.59G(i,j)+0.3B(i,j)u对第二个区域进行逆反处理。u对第三个区域进行马赛克处理。2.对你自己感兴趣的某一图像处理课题,进行功能分析、相应的功能代码分析,写出流程框架,代码注释。实验过程与实验结果(可包括实验实施的步骤、算法描述、流程、结论等)1.将24位彩色图像进行处理。对第一个区域进行灰度变换。Gray(i,j)=0.
3、11R(i,j)+0.59G(i,j)+0.3B(i,j)u对第二个区域进行逆反处理。u对第三个区域进行马赛克处理。voidCDynSplitView2::Onfensanquyu(){clearmem();CDibNew1->Fensanbufenchuli();7计算机与通讯工程学院Invalidate();}voidMakeColorDib::Fensanbufenchuli(){BYTE*p_data;//原图数据区指针intwide,height,DibWidth;//原图长、宽、字节宽p_data=this->GetData();//取得原图的数据区指针wide
4、=this->GetWidth();//取得原图的数据区宽度height=this->GetHeight();//取得原图的数据区高度DibWidth=this->GetDibWidthBytes();//取得原图的每行字节数BYTE*p_temp=newBYTE[height*DibWidth];//暂时分配内存,以保存新图像for(intj=0;j5、*pbyRed=p_data++;//得到红色值BYTEr=*pbyRed;BYTEg=*pbyGreen;BYTEb=*pbyBlue;//取到原r,g,b中的最大值作为像素三分量值的新值intgray=0;if(r>g)gray=r;elsegray=g;if(gray6、DibWidth;i++)//每列{inta=*p_data;//取得当前点的值*p_data=255-a;//取反p_data++;//指向下一指针}for(j=2*height/3;j7、<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)*DibWidth+i+n)=int(pby_pt/25);}//对应周围(5x5)矩阵绿色值求和平均pby_pt=0;for(m=0;m<5;m++)for(intn=0;n<15;n+=3){pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n+1);}for(m=0;m<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)
5、*pbyRed=p_data++;//得到红色值BYTEr=*pbyRed;BYTEg=*pbyGreen;BYTEb=*pbyBlue;//取到原r,g,b中的最大值作为像素三分量值的新值intgray=0;if(r>g)gray=r;elsegray=g;if(gray
6、DibWidth;i++)//每列{inta=*p_data;//取得当前点的值*p_data=255-a;//取反p_data++;//指向下一指针}for(j=2*height/3;j7、<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)*DibWidth+i+n)=int(pby_pt/25);}//对应周围(5x5)矩阵绿色值求和平均pby_pt=0;for(m=0;m<5;m++)for(intn=0;n<15;n+=3){pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n+1);}for(m=0;m<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)
7、<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)*DibWidth+i+n)=int(pby_pt/25);}//对应周围(5x5)矩阵绿色值求和平均pby_pt=0;for(m=0;m<5;m++)for(intn=0;n<15;n+=3){pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n+1);}for(m=0;m<5;m++)for(intn=0;n<14;n+=3){*(p_temp+(height-j-1-m)
此文档下载收益归作者所有