新博客地址:http://gorthon.sinaapp.com/
弄了一天的opencv都快崩溃了。内存泄漏的让人无语,然后自适应阈值分析的时候,发现那个算法实在是慢到让人想把电脑狠狠地往地上砸,块匹配的时候也是问题多多。
先把MFC(vc6.0)与opencv结合的代码发上来以备用。
1. 建立基于对话框(dialog based)的MFC工程。(最好用静态的Using static……),设工程名为test。
2. 添加一个picture控件(ID假设为IDC_SHOWAVI),4个button控件(设ID分别为ID_BTNOPEN , ID_BTNPLAY , ID_BTNPAUSE, ID_BTNSTOP,分别对应4个响应函数OnBtnOpen, OnBtnPlay ,OnBtnPause, OnBtnStop)。
3. 工程->设置->link添加好需要的*.lib文件(cv.lib highgui.lib cxcore.lib等等)。
4. 在CtestDlg.h开头加上下面两行
// CtestDlgg.h : header file
//
#include "highgui.h"
#include "cv.h"
#if !defined(AFX_LENSDIVIDEDLG_H__180CC67F_3199_4F65_9CBC_4414B309D13B__INCLUDED_)
#define AFX_LENSDIVIDEDLG_H__180CC67F_3199_4F65_9CBC_4414B309D13B__INCLUDED_
5. 进入CtestDlg.cpp文件中定义以下全局变量
6. open按钮写入下面代码
7. play按钮:
8. pause按钮
9. stop按钮
10. 涉及到的closeAviFile()
11. 最后要加上timer才行
12. 双击取消(Cancel)按钮,响应函数:
这里下载源码
这个是我在做【基于运动补偿和自适应双阈值的镜头分割】的时候写的,还是个半成品,不过对于怎么把MFC与OpenCv结合已经是个很好的例子了。