资源简介
使用VC6.0集成开发环境初步实现了基于图片轮廓和图片颜色直方图的图像检索系统;对于给定的例子图像,系统搜索指定目录并根据与例子图像的颜色直方图或轮廓相似性程度数值按升序排列相符合的
代码片段和文件信息
// DirDialog.cpp: implementation of the CDirDialog class.
//
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “DirDialog.h“
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
// Callback function called by SHBrowseForFolder‘s browse control
// after initialization and when selection changes
int __stdcall CDirDialog::BrowseCtrlCallback(HWND hwnd UINT uMsg LPARAM lParam LPARAM lpData)
{
CDirDialog* pDirDialogObj = (CDirDialog*)lpData;
if (uMsg == BFFM_INITIALIZED )
{
if( ! pDirDialogObj->m_strSelDir.IsEmpty() )
::SendMessage(hwnd BFFM_SETSELECTION TRUE (LPARAM)(LPCTSTR)(pDirDialogObj->m_strSelDir));
if( ! pDirDialogObj->m_strWindowtitle.IsEmpty() )
::SetWindowText(hwnd (LPCTSTR) pDirDialogObj->m_strWindowtitle);
}
else if( uMsg == BFFM_SELCHANGED )
{
LPITEMIDLIST pidl = (LPITEMIDLIST) lParam;
char selection[MAX_PATH];
if( ! ::SHGetPathFromIDList(pidl selection) )
selection[0] = ‘\0‘;
CString csStatusText;
BOOL bOk = pDirDialogObj->SelChanged(selection csStatusText);
if( pDirDialogObj->m_bStatus )
::SendMessage(hwnd BFFM_SETSTATUSTEXT 0 (LPARAM)(LPCSTR)csStatusText);
::SendMessage(hwnd BFFM_ENABLEOK 0 bOk);
}
return 0;
}
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CDirDialog::CDirDialog()
{
m_bStatus = FALSE;
}
CDirDialog::~CDirDialog()
{
}
BOOL CDirDialog::DoBrowse(CWnd *pwndParent)
{
if( ! m_strSelDir.IsEmpty() )
{
m_strSelDir.TrimRight();
if( m_strSelDir.Right(1) == “\\“ || m_strSelDir.Right(1) == “//“ )
m_strSelDir = m_strSelDir.Left(m_strSelDir.GetLength() - 1);
}
LPMALLOC pMalloc;
if (SHGetMalloc (&pMalloc)!= NOERROR)
return FALSE;
BROWSEINFO bInfo;
LPITEMIDLIST pidl;
ZeroMemory ( (PVOID) &bInfosizeof (BROWSEINFO));
if (!m_strInitDir.IsEmpty ())
{
OLECHAR olePath[MAX_PATH];
ULONG chEaten;
ULONG dwAttributes;
HRESULT hr;
LPSHELLFOLDER pDesktopFolder;
//
// Get a pointer to the Desktop‘s IShellFolder interface.
//
if (SUCCEEDED(SHGetDesktopFolder(&pDesktopFolder)))
{
//
// IShellFolder::ParseDisplayName requires the file name be in Unicode.
//
MultiByteToWideChar(CP_ACP MB_PRECOMPOSED m_strInitDir.GetBuffer(MAX_PATH) -1
olePath MAX_PATH);
m_strInitDir.ReleaseBuffer (-1);
//
// Convert the path to an ITEMIDLIST.
//
hr = pDeskt
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4513 2013-04-27 14:10 retrieval_1\DirDialog.cpp
文件 968 2013-04-27 14:08 retrieval_1\DirDialog.h
文件 3669 2013-04-27 12:41 retrieval_1\ReadMe.txt
文件 1078 2013-04-27 12:41 retrieval_1\res\retrieval_1.ico
文件 403 2013-04-27 12:41 retrieval_1\res\retrieval_1.rc2
文件 1471 2013-04-30 08:53 retrieval_1\resource.h
文件 37588 2013-05-13 23:08 retrieval_1\retrieval_1.aps
文件 2175 2013-05-14 14:01 retrieval_1\retrieval_1.clw
文件 2100 2013-04-27 12:41 retrieval_1\retrieval_1.cpp
文件 4460 2013-04-28 22:59 retrieval_1\retrieval_1.dsp
文件 530 2013-04-27 12:41 retrieval_1\retrieval_1.dsw
文件 1379 2013-04-27 12:41 retrieval_1\retrieval_1.h
文件 66560 2013-05-14 14:01 retrieval_1\retrieval_1.ncb
文件 54784 2013-05-14 14:01 retrieval_1\retrieval_1.opt
文件 256 2013-05-14 14:00 retrieval_1\retrieval_1.plg
文件 7195 2013-05-13 23:08 retrieval_1\retrieval_1.rc
文件 17895 2013-05-14 13:55 retrieval_1\retrieval_1Dlg.cpp
文件 2541 2013-05-14 13:46 retrieval_1\retrieval_1Dlg.h
文件 213 2013-04-27 12:41 retrieval_1\StdAfx.cpp
文件 999 2013-04-27 12:41 retrieval_1\StdAfx.h
文件 4107 2013-04-27 18:27 retrieval_1\TokenEx.cpp
文件 2261 2013-04-27 18:27 retrieval_1\TokenEx.h
目录 0 2013-06-05 20:39 retrieval_1\res
目录 0 2013-07-17 19:24 retrieval_1
----------- --------- ---------- ----- ----
217145 24
- 上一篇:原创c++二叉树抽象数据类型实现
- 下一篇:C语言编程规范个人规约
相关资源
- test_opencv.cpp
- opencv提取图片中人轮廓
- Python3+Opencv343环境搭建 dll load failed问
- 04_图像编辑器实现.zip
- 基于opencv人眼定位算法C++工程
- 图像连续拼接算法源码
- opencv 2.4.8 官方最新版安装与配置
- C++实现opencv+yolo+tensorflow+deepsort.txt
- Opencv封装成dll供.net调用方法
- 相机标定棋盘
- 自适应图像增强完整OpenCV代码
- 在mfc中picture控件中显示Mat图片
- OpenCv实现两个图片的相似度
- opencv椭圆拟合长短轴比
- Retinex算法,C++,opencv
- 利用opencv实现的条形码检测与识别C
- Opencv2.4.12 SVM手写数字识别
- opencv 正脸+左右侧脸全检测
- 激光雷达数据读取、显示、分割、直
- CvvImage类库
- 基于opencv的C++人眼识别以及眨眼检测
- 在VS2012上基于opencv的C++人眼识别与眨
- 基于暗通道和导向滤波的图像去雾算
- 根据原图和二值图得到分割彩图
- qt界面化实现各种滤波函数
- c#通过dll读取opencv里的mat图片
- linux opencv车牌识别
- opencv多视频同一窗口显示C++程序
- 基于opencv的手势识别
- 利用opencv做的垃圾检测代码
评论
共有 条评论