VS2022+OpenCV4.6.0+MFC环境配置 | 您所在的位置:网站首页 › MFC添加背景图片 › VS2022+OpenCV4.6.0+MFC环境配置 |
一、环境安装 OpenCV:Releases - OpenCV 二、OpenCV安装 安装OpenCV保存到固定地址,我一般装到C盘,方便设置路径,也不会误删除。安装时标注版本,防止后续升级版本覆盖。 三、环境变量 告诉计算机安装的OpenCV在哪里。右键单击“我的电脑”->【属性】->【高级系统设置】->【环境变量】->“path”路径下添加如下路径: C:\opencv4.6.0\opencv\build\x64\vc15\bin 此处装在了C盘,根据实际安装路径添加bin文件至path中。添加完成后一路“确定”退出环境配置。
四、VS2022包含路径 运行VS2022新建MFC基本对话框,单击菜单栏【项目】->【属性】,对工程进行设置。 1、VC++目录: 包含目录:C:\opencv4.6.0\opencv\build\include; C:\opencv4.6.0\opencv\build\include\opencv2; 库目录:C:\opencv4.6.0\opencv\build\x64\vc15\lib; 2、连接器->输入: 附加依赖项:opencv_world460d.lib;opencv_world460.lib; 注:opencv_world460d.lib;是在Debug模式下调用,opencv_world460.lib;是在Release模式下调用,此处配置为Debug模式,因此只配置opencv_world460d.lib;即可。 五、MFC下打开图片 1、基本对话框中填加picture基本控件,修改属性ID为IDC_picWND。 2、添加头文件及命名空间 #include // OpenCV头文件 #include // OpenCV_GUI头文件 using namespace cv; using namespace std;3、头文件中定义一个CRect变量m_picRect,xxDlg::OnInitDialog()中添加一下代码, Dlg::OnInitDialog() { **** // TODO: 在此添加额外的初始化代码 SetWindowText(L"testOpenCV"); // 设置窗口名 cv::namedWindow("picView", WINDOW_AUTOSIZE); // 设置窗口名 HWND hWnd = (HWND)cvGetWindowHandle("picView"); // 获取窗口句柄 HWND hParent = ::GetParent(hWnd); // 指定子窗口的父窗口句柄 ::SetParent(hWnd, GetDlgItem(IDC_picWND)->m_hWnd); ::ShowWindow(hParent, SW_HIDE); CWnd* pWnd = GetDlgItem(IDC_picWND); pWnd->GetClientRect(&m_picRect); // 获取图片控件大小 return TRUE; // 除非将焦点设置到控件,否则返回 TRUE }4、双击“确定”按钮控件,添加图片读取显示代码。 void CopencvtestDlg::OnBnClickedOk() { // TODO: 在此添加控件通知处理程序代码 Mat src = imread("山水.png"); if (src.empty()) { AfxMessageBox(L"读取图片失败!"); return; } cv::resize(src, src, cv::Size(m_picRect.Width(), m_picRect.Height())); imshow("picView", src); waitKey(0); CDialogEx::OnOK(); }六、运行效果 注:初始化运行时,cv窗口创建会闪一下,初始化完成后会在picture空间中留下一个阴影,留待后续解决,此处主要为环境配置测试。
|
CopyRight 2018-2019 实验室设备网 版权所有 |