• 大小: 11.84MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-12
  • 语言: C/C++
  • 标签: SSDA  源代码  

资源简介

VC++ mfc,基于序贯相似性算法SSDA的图像匹配识别定位程序、测试图片及源代码

资源截图

代码片段和文件信息

// DIB.cpp : implementation file
//

#include “stdafx.h“
#include “Shibie.h“
#include “DIB.h“
#include “windowsx.h“
#include “math.h“

#define WIDTHBYTES(bits) (((bits)+31)/32*4)
#define  XX 100
#define   YY 50


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
int f=0;
//extern int f
/////////////////////////////////////////////////////////////////////////////
// CDIB dialog
CDIB::CDIB()
{

}


CDIB::~CDIB()
{
GlobalFreePtr(m_pBitmapInfo);
}

void CDIB::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDIB)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}

void CDIB::LoadFile(const char *dibFileName)
{
strcpy(m_fileNamedibFileName);
CFile dibFile(m_fileNameCFile::modeRead);
dibFile.Read((void*)&bitmapFileHeadersizeof(BITMAPFILEHEADER));
if(bitmapFileHeader.bfType==0X4d42)
{
DWORD fileLength=dibFile.GetLength();
DWORD size=fileLength-sizeof(BITMAPFILEHEADER);
BYTE*pDib=(BYTE*)GlobalAllocPtr(GMEM_MOVEABLEsize);
dibFile.Read((void*)pDibsize);
dibFile.Close();
m_pBitmapInfo=(BITMAPINFO*)pDib;
m_pBitmapInfoHeader=(BITMAPINFOHEADER*)pDib;
        

m_pRGB=(RGBQUAD*)(pDib+m_pBitmapInfoHeader->biSize);
int m_numberOfColors=GetNumberOfColors();
if(m_pBitmapInfoHeader->biClrUsed==0)
m_pBitmapInfoHeader->biClrUsed=m_numberOfColors;
DWORD colorTableSize=m_numberOfColors*sizeof(RGBQUAD);
m_pData=pDib+m_pBitmapInfoHeader->biSize+colorTableSize;
if(m_pRGB==(RGBQUAD*)m_pData)
m_pRGB=NULL;
m_pBitmapInfoHeader->biSizeImage=GetSize();
m_valid=TRUE;
f=1;
if(m_pBitmapInfoHeader->biBitCount>=9)
{ AfxMessageBox(“不支持真彩色图像!“);
            m_valid=FALSE;
}
}
else
{
m_valid=FALSE;
//if((bitmapFileHeader.biBitCount>=9)
        //     AfxMessageBox(“不支持真彩色图像!“);
//else
AfxMessageBox(“This isn‘t abitmap file!“);
}
}

BOOL CDIB::IsValid()
{
return m_valid;
}

char* CDIB::GetFileName()
{
return m_fileName;
}

UINT CDIB::GetWidth()
{
return (UINT)m_pBitmapInfoHeader->biWidth;
}

UINT CDIB::GetHeight()
{
return (UINT)m_pBitmapInfoHeader->biHeight;
}

DWORD CDIB::GetSize()
{
if(m_pBitmapInfoHeader->biSizeImage!=0)
return m_pBitmapInfoHeader->biSizeImage;
else
{
DWORD height=(DWORD)GetHeight();
DWORD width=(DWORD)GetWidth();
return height*width;
}
}

UINT CDIB::GetNumberOfColors()
{
int numberOfColors;
if((m_pBitmapInfoHeader->biClrUsed==0)&&(m_pBitmapInfoHeader->biBitCount<9))
{
switch(m_pBitmapInfoHeader->biBitCount)
{
           case 1:numberOfColors=2;break;
   case 4:numberOfColors=16;break;
           case 8:numberOfColors=256;
}
}
else 
numberOfColors=(int)m_pBitmapInfoHeader->biClrUsed;
return numberOfColors;
}

BYTE *CDIB::GetData()
{
return m_pData;
}

RGBQUAD *CDIB::GetRGB()
{
return m_pRGB;
}

BITMAPINFO *CDIB::GetInfo

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     308278  2009-08-04 14:18  序贯相似算法图像匹配\111.bmp

     文件     308278  2009-08-04 14:19  序贯相似算法图像匹配\222.bmp

     文件     308278  2009-08-04 14:20  序贯相似算法图像匹配\333.bmp

     文件       2330  2008-11-13 00:14  序贯相似算法图像匹配\Shibie\BMP10.dev

     文件     271360  2009-08-14 15:03  序贯相似算法图像匹配\Shibie\BMP10.ncb

     文件      60928  2009-08-14 15:03  序贯相似算法图像匹配\Shibie\BMP10.opt

     文件      26232  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\DIB.obj

     文件      25162  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\DIB.sbr

     文件      20624  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\MainFrm.obj

     文件       4957  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\MainFrm.sbr

     文件     135272  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\Shibie.exe

     文件     388928  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\Shibie.ilk

     文件      23653  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\Shibie.obj

     文件       7056  2009-08-14 15:09  序贯相似算法图像匹配\Shibie\Debug\Shibie.res

     文件       8204  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\Shibie.sbr

     文件      15413  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\ShibieDoc.obj

     文件       3045  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\ShibieDoc.sbr

     文件      50872  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\ShibieView.obj

     文件      36650  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\ShibieView.sbr

     文件     106290  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\StdAfx.obj

     文件    1375082  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\Debug\StdAfx.sbr

     文件     238592  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\vc60.idb

     文件     380928  2009-08-14 15:40  序贯相似算法图像匹配\Shibie\Debug\vc60.pdb

     文件       6262  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\DIB.cpp

     文件       1831  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\DIB.h

     文件       3024  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\MainFrm.cpp

     文件       1497  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\MainFrm.h

     文件       1486  2008-11-23 16:07  序贯相似算法图像匹配\Shibie\Makefile.win

     文件       4311  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\ReadMe.txt

     文件       1078  2009-08-14 15:05  序贯相似算法图像匹配\Shibie\res\Shibie.ico

............此处省略38个文件信息

评论

共有 条评论