OpenCV第二课,嵌入MFC
单纯显示图片,只需链接
opencv_core2411d.lib
opencv_highgui2411d.lib
1、首先创建一个MFC的dlg,添加Picture Control控件

void CCOpenCvDemoDlg::OnBnClickedBtnDraw()
{//窗口绘制图片
IplImage *image=NULL; //原始图像
if(image) cvReleaseImage(&image);
std::string strPath = "F:\\VSProject\\COpenCvDemo\\image\\first.jpg";
image = cvLoadImage(strPath.c_str(),CV_LOAD_IMAGE_COLOR); //显示图片 CDC *pDC = GetDlgItem(IDC_STATIC_PICTURE)->GetDC();
HDC hDC= pDC->GetSafeHdc();
CRect rect;
GetDlgItem(IDC_STATIC_PICTURE)->GetClientRect(&rect);
CvvImage cimg;
cimg.CopyOf(image); // 复制图片
cimg.DrawToHDC(hDC, &rect ); // 将图片绘制到显示控件的指定区域内
ReleaseDC( pDC );
}
用的的CvvImage类:CvvImage在高级别的Opencv2.4.11下的配置以及错误解决办法
2、有图有真相:

如果希望在dlg初始化之后直接显示图片:
使用vs类向导重载OnPaint()
void CDrawPictureDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
CDialog::OnPaint();
// 重绘对话框
CDialog::UpdateWindow(); // 更新windows窗口,如果无这步调用,图片显示还会出现问题
OnBnClickedBtnDrawpic();
ModifyStyle(, WS_CLIPCHILDREN);
}
OpenCV第二课,嵌入MFC的更多相关文章
- OpenCV 第二课 认识图像的存储结构
		
OpenCV 第二课 认识图像的存储结构 Mat Mat 类包含两部分,矩阵头和矩阵体.矩阵头包含矩阵的大小,存储方式和矩阵体存储空间的指针.因此,Mat中矩阵头的大小是固定的,矩阵体大小是不定的. ...
 - 跟我一起学opencv 第二课之图像的掩膜操作
		
1.掩膜(mask)概念 用选定的图像,图形或物体,对处理的图像(全部或局部)进行遮挡,来控制图像处理的区域或处理过程.用于覆盖的特定图像或物体称为掩模或模板.光学图像处理中,掩模可以足胶片,滤光片等 ...
 - opencv第二课 进行缩放图片~
		
#include<stdio.h> #include<iostream> #include<opencv2\opencv.hpp> using namespace ...
 - opencv第二课,使用cmake编译OpenCV,并添加opencv_contrib模块
		
一.下载安装cmake 想要在Windows平台下生成OpenCV的解决方案,我们需要一个名为cmake的开源软件,可以在camke的官网:http://www.cmake.org/上下载到 或者点击 ...
 - CI(CodeIgniter)框架入门教程——第二课 初始MVC
		
本文转载自:http://www.softeng.cn/?p=53 今天的主要内容是,使用CodeIgniter框架完整的MVC内容来做一个简单的计算器,通过这个计算器,让大家能够体会到我在第一节课中 ...
 - OpenCV 第一课(安装与配置)
		
OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...
 - Kali Linux Web 渗透测试视频教程—  第二课 google hack 实战
		
Kali Linux Web 渗透测试— 第二课 代理简介 文/玄魂 课程地址: http://edu.51cto.com/course/course_id-1887.html 目录 shellKal ...
 - 【第二课】深入理解Handler
		
简要讲解Handler是做什么的 我们知道,在Android中,app启动会启动一个进程一个线程——UI线程,UI线程是主线程,并且不允许这个线程阻塞超过5秒,一旦超过5秒就会ANR. 所以较为耗时的 ...
 - ruby代码重构第二课
		
(文章都是从我的个人主页上粘贴过来的, 大家也可以访问我的主页 www.iwangzheng.com) 在第一课里提取出了相通的代码,第二课里就把常量提取出来吧 一般把常量的定义写的对应的app/mo ...
 
随机推荐
- FFmpeg解码详细流程
			
FFmpeg在解码一个视频的时候的函数调用流程.为了保证结构清晰,其中仅列出了最关键的函数,剔除了其它不是特别重要的函数. 下面解释一下图中关键标记的含义. 函数背景色 函数在图中以方框的形式表现出来 ...
 - 数据仓库建模与ETL的实践技巧(转载)
			
一.Data仓库的架构 Data仓库(Data Warehouse DW)是为了便于多维分析和多角度展现而将Data按特定的模式进行存储所建立起来的关系型Datcbase,它的Data基于OLTP源S ...
 - python 修饰符(转载)
			
首先一个修饰符的实例: #!/usr/bin/env python def run(fn): def do_hello(): print "begin..." fn() print ...
 - 未开启HugePages ORACLE session剧增时引起的一次悲剧
			
故障简单描写叙述一下:LINUX系统未开启HugePages,主机内存将近300G.SWAP是32G.ORACLE 的 SGA_MAX_SIZE设置是主机内存的将近80%,SGA_TARGET设置是主 ...
 - 安装Ubuntn 和 pycharm
			
Ubuntu安装之python开发 什么??公司要用Ubuntu(乌班图)?不会用??怎么进行python开发??? 乌班图操作系统下载地址:http://releases.ubuntu.com/ ...
 - 统计 与  数学  induction 归纳  deduction 演绎   吴喜之老师
			
“统计的思维方式是归纳(induction),也就是从数据所反映的现实得到比较一般的模型,希望以此解释数据所代表的那部分世界.这和以演绎(deduction)问哦主的数学思维方式相反,演绎是在一些人为 ...
 - java之快速排序
			
//基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据 ...
 - mongodb学习之:GridFS
			
GridFS是一种在Mongodb中存储大二进制文件的机制.GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频.视频等). 使用GridFS有如下几个原因: 1 利用 ...
 - appium()-The event firing
			
原文地址:https://github.com/appium/java-client/blob/master/docs/The-event_firing.md since 4.1.0 The purp ...
 - 锁定xcode api 文档
			
1, 打开终端2, 前往Xcode.app, 命令: cd /Applications/Xcode.app 3, 把头文件修改为只读, 命令: sudo chown -hR root:wheel Co ...