大恒图像软件开发测试题答案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
系统工程师测试题目结果: 开发环境:VC++6.0 OPENCV SQLserver2005 效果图片如下: 各部分说明如下: 循环显示所提供的图像,并设置读图像的间隔时间。 添加picture控件,用于显示图片。 在工程的设置中,添加OPENCV系统头文件的路径。 在CDahengApp::InitInstance()里添加语句SetTimer(NULL,1,5000,NULL);设置时间间隔为5s。 在CDahengDlg中添加消息WM_TIMER,在函数OnTimer()中填入如下内容: int h;//h用于循环,将所用的图片放在某一个路径下,文件名为1.bmp,2.bmp。。。5.bmp CString Open_Filename; for (h=1;h6;h++) { switch (nIDEvent) { case 1: { char c[10]= ; Open_Filename=D:\\系统工程师\\所用图片\\新建文件夹 (5)\\; Open_Filename=Open_Filename+itoa(h,c,10); Open_Filename=Open_Filename+.bmp; IplImage* ipl = cvLoadImage(Open_Filename,-1); //读取图片,缓存到局部变量ipl中 if(!ipl) return; if(TheImage)//TheImage为IplImage*类型的变量 cvZero(TheImage); ResizeImage(ipl);//对读入的图片进行缩放,使其宽或高最大值者刚好等于预设的大小,再复制到?TheImage?中 ShowImage(TheImage,IDC_picture);//显示图片,IDC_picture为picture控件的名称 SetTimer(1,5000,NULL); //定时,时间为5s Invalidate(FALSE); CDialog::OnTimer(1);//调用定时函数 cvReleaseImage(ipl);//释放ipl break; } default: break; } } 其中,函数 ResizeImage(ipl)和ShowImage(TheImage,IDC_picture)定义分别如下: void CDahengDlg::ResizeImage(IplImage *img) { int w = img-width; int h = img-height; int max = (w h)?w: h; // 找出宽和高中的较大值者 float scale = (float) ( (float) max /500.0f ); float scale2 = (float) ( (float) max / 500.0f ); // 计算将图片缩放到TheImage区域所需的比例因子 int nw = (int)( w/scale ); int nh = (int)( h/scale2 ); // 缩放后图片的宽和高 int tlx = (nw nh)?0: (int)(256-nw)/2; int tly = (nw nh)?(int)(256-nh)/2: 0; // 设置ROI 区域,用来存入图片 img cvSetImageROI( TheImage, cvRect( tlx, tly, nw, nh) ); // 对图片 img 进行缩放,并存入到 TheImage 中 cvResize( img, TheImage ); cvResetImageROI( TheImage ); // 重置 TheImage 的 ROI 准备读入下一幅图片 void CDahengDlg::ShowImage(IplImage *img, UINT ID) { CDC* pDC = GetDlgItem( ID ) -GetDC(); // 获得显示控件的 DC HDC hDC = pDC -GetSafeHdc(); // 获取 HDC(设备句柄) 来进行绘图操作 CRect rect; GetDlgItem(ID) -GetClientRect( rect ); int rw = rect.right - rect.left;

文档评论(0)

ktj823 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档