数字图像实验图像直方图分析1234

数字图像实验图像直方图分析1234

ID:38493264

大小:227.50 KB

页数:7页

时间:2019-06-13

数字图像实验图像直方图分析1234_第1页
数字图像实验图像直方图分析1234_第2页
数字图像实验图像直方图分析1234_第3页
数字图像实验图像直方图分析1234_第4页
数字图像实验图像直方图分析1234_第5页
资源描述:

《数字图像实验图像直方图分析1234》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、试验三:图像直方图分析一·实验目的1.掌握VC++6.0图像编程的基本操作2.应用VC++6.0编程绘制灰度直方图。二·实验内容1.用VC++6.0绘制灰度直方图;2.对图像进行直方图分析。三·实验步骤(1)启动VC++6.0,打开Dip工程。(2)将Pointpro.h、Pointpro.cpp文件及Areapro.h、Areapro.cpp文件拷贝到当前工程目录文件里面。(3)在Fileview-->Dipfilesà右键àSettingàLinkà添加Pointpro.h、Pointpro

2、.cpp文件及Areapro.h、Areapro.cpp文件。(4)在菜单栏àinsertàresouceàdialogànew,在对话框模版的非控制区点击鼠标右键,在弹出的对话框中选properties,设置为ID:IDD_DLG_Intensity,C标题:Histogram,关闭属性对话框,回到“建立类向导”(MFCclasswizard),在弹出的对话框中选创建新类CDlgIntensity后确定。并且在FileView中修改DlgIntensity.cpp和DlgIntensity.h

3、相应的代码;(5)在弹出的对话框中,添加如下的按钮等控件:例如右键单击上面最大的静态文本,在弹出的对话框中选“属性”,在属性对话框中添加如下内容:(6)在ResourceView栏中àMenuà选IDR_DIPTYPE,如图在View菜单栏下空的一栏中,右键鼠标,在弹出的对话框中选属性properties,在弹出的对话框中,设置:ID:ID_VIEW_HIST,标题为Histogram,在建立的类向导中选类为CDlgIntensity,确定。(7)在StdAfx.h中添加#include

4、h.h>(8)在DipView.h中//{{AFX_MSG(CDipView)下添加afx_msgvoidOnViewHist();afx_msgvoidOnUpdateViewHist(CCmdUI*pCmdUI);(9)DipView.cpp添加#include"PointPro.h"和#include"DlgIntensity.h",在BEGIN_MESSAGE_MAP(CDipView,CScrollView)处添加:ON_COMMAND(ID_VIEW_HIST,OnViewHist)

5、ON_UPDATE_COMMAND_UI(ID_VIEW_HIST,OnUpdateViewHist)在//CDipViewmessagehandlers下面添加:voidCDipView::OnViewHist(){CDipDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//判断当前是否有图像对象if(pDoc->m_pDibObject==NULL)return;//在点处理CPointPro类中创建用来绘制直方图的数据CPointProPointOper

6、ation(pDoc->m_pDibObject);int*pHistogram=PointOperation.GetHistogram();//生成一个对话框CHistDlg类的实例CDlgIntensityHistDlg;//将绘制直方图的数据传递给CHistDlg对话框类的公有成员变量m_pnHistogramif(pHistogram!=NULL){//设置直方图数据指针HistDlg.m_pnHistogram=pHistogram;//设置当前像素值为0的像素数HistDlg.m_n

7、CurrentPiexsNum=pHistogram[0];//设置是否为256级灰度图像HistDlg.m_bIsGray256=PointOperation.IsGray256();}//显示对话框if(HistDlg.DoModal()!=IDOK)return;delete[]pHistogram;}voidCDipView::OnUpdateViewHist(CCmdUI*pCmdUI){CDipDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);pCm

8、dUI->Enable(pDoc->m_pDibObject->GetNumBits()>=8);}(10)在DipDoc.h中添加:protected:longm_lHeight;longm_lWidth;(11)在DipDoc.cpp中添加菜单命令:#include"AreaPro.h",在CDipDoc::CDipDoc()下面添加{m_pDibObject=NULL;m_bImageLoaded=FALSE;//TODO:addone-timeconstructioncodeherem_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。