91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3.5MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-11-04
  • 語言: 其他
  • 標簽: 畸變??

資源簡介

各類畸變caj文件,如:大視場廣角物鏡畸變的實時數字校正.caj,廣角鏡頭圖像畸變校正系統的研究.caj,光學圖象幾何畸變的快速校正算法.caj==

資源截圖

代碼片段和文件信息




#include?“stdafx.h“
#include?“dib.h“

IMPLEMENT_DYNAMIC(CDib??Cobject)

CDib::CDib()
{
Init();
}

CDib::CDib(const?char*?pszDibFileName)
{
Init();
????LoadFile(pszDibFileName);
}


CDib::~CDib()
{
ClearMemory();
}

void?CDib::ClearMemory()
{
if(m_hDIB?!=?NULL)
::GlobalFree(m_hDIB);
m_hDIB?=?0;
????m_pDibData?=?NULL;
m_pszFileName?=?NULL;
m_pBitmapInfoHeader?=?NULL;
????m_pBitmapInfo?=?NULL;

m_pRGBQuad?=?NULL;
m_pBitmapFileHeader?=?NULL;
}

#ifdef?_DEBUG
void?CDib::Dump(CDumpContext&?dc)?const
{
Cobject::Dump(dc);
}

void?CDib::AssertValid()?const
{
Cobject::AssertValid();
ASSERT(m_pszFileName?!=?NULL);
ASSERT(m_hDIB?!=?0);
}
#endif


void?CDib::Init()
{
m_pRGBQuad?=?NULL; //RGBQUAD?表項
????m_pDibData?=?NULL; //位圖像素數據
m_nWidth?=?0; //寬度
m_nHeight?=?0; //高度
m_nBitCount?=?0; //每個像素占有的位數
????m_nTotalColors?=?0; //顏色總數
????m_pBitmapFileHeader?=?NULL;
????m_pBitmapInfoHeader?=?NULL;
????m_pBitmapInfo?=?NULL;
m_hDIB?=?0;
m_pszFileName?=?NULL;
}

void?CDib::LoadFile(const?char*?pszDibFileName)
{
ASSERT(pszDibFileName);
//如果存在就釋放內存
if(m_pBitmapInfo)?::GlobalFree(m_hDIB);
//再次初始化?用于多次動態重用
Init();
m_pszFileName?=?(char*)pszDibFileName;

BITMAPFILEHEADER?bitmapFileHeader;

CFile?dibFile(pszDibFileName??CFile::modeRead);
try
{
//讀入位圖文件頭信息
UINT?nBFHsize?=?dibFile.Read((void*)&bitmapFileHeader?sizeof(BITMAPFILEHEADER));
if(nBFHsize?!=?sizeof(BITMAPFILEHEADER))
{
m_bValid?=?FALSE;
return;
}
}
catch(CFileException*?e)
{
e->Delete();
}

//如果為位圖就進行下一步的處理
????if?(bitmapFileHeader.bfType?==?0x4d42)
????{
AfxGetApp()->BeginWaitCursor();

//文件長度
????????DWORD?dwFileLength?=?dibFile.GetLength();

//位圖信息及位圖數據的大小(字節)
????????DWORD?dwSize?=?dwFileLength?-?sizeof(BITMAPFILEHEADER);
?

//為Dib分配全局內存
m_hDIB?=?(HGLOBAL)?::GlobalAlloc(GMEM_MOVEABLE??dwSize);
if?(m_hDIB?==?0) m_bValid?=?FALSE;

//指向Dib實際像素數據的指針?
BYTE*?pbyDib?=?(BYTE*)::GlobalLock(m_hDIB);
if?(pbyDib?==?NULL) m_bValid?=?FALSE;
?
try
{
//讀入內存
DWORD?dwReadSize?=?dibFile.Read((void*)pbyDib??dwSize);
dibFile.Close();
if(dwReadSize?!=?dwSize)
{
m_bValid?=?FALSE;
::GlobalUnlock(m_hDIB);
::GlobalFree(m_hDIB);
Init();
return;
}
}
catch(CFileException*?e)
{
e->Delete();
}

//獲取位圖文件頭指針和位圖文件數據信息指針
????????m_pBitmapInfo?=?(BITMAPINFO*)?pbyDib;
m_pBitmapInfoHeader?=?(BITMAPINFOHEADER*)?pbyDib;

//寬度和高度
m_nWidth?=?m_pBitmapInfoHeader->biWidth;
m_nHeight?=?m_pBitmapInfoHeader->biHeight;
//每像素的顏色位數
m_nBitCount?=?(BYTE)m_pBitmapInfoHeader->biBitCount;
??????
//顏色數
m_nTotalColors?=?GetColorNumber();
????????if?(m_pBitmapInfoHeader->biClrUsed?==?0)
????????????m_pBitmapInfoHeader->biClrUsed?=?m_nTotalColors;

//指向位圖顏色索引表項的指針?如果沒有顏色表項?則該值為NULL
????????m_pRGBQuad?=?(RGBQUAD*)(pbyDib?+?m_pBitmapInfoHeader->biSize);

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????284726??2000-05-31?19:45??幾何校正\back.bmp

?????文件??????34027??2010-03-08?16:13??幾何校正\Debug\Dib.obj

?????文件??????11660??2010-03-08?16:13??幾何校正\Debug\ImageGeneralTransform.obj

?????文件??????33339??2010-03-08?16:13??幾何校正\Debug\ImageGeometry.obj

?????文件??????14212??2010-03-08?16:13??幾何校正\Debug\ImageProcess.obj

?????文件???????9767??2010-03-08?16:13??幾何校正\Debug\ImageWarp.obj

?????文件??????10789??2010-03-08?16:13??幾何校正\Debug\ImageWarpDialog.obj

?????文件?????155729??2010-03-10?17:29??幾何校正\Debug\ImgWarp.exe

?????文件?????388988??2010-03-10?17:29??幾何校正\Debug\ImgWarp.ilk

?????文件??????23015??2010-03-08?16:13??幾何校正\Debug\ImgWarp.obj

?????文件????5492816??2010-03-08?16:13??幾何校正\Debug\ImgWarp.pch

?????文件?????517120??2010-03-10?17:29??幾何校正\Debug\ImgWarp.pdb

?????文件???????6020??2010-03-08?16:13??幾何校正\Debug\ImgWarp.res

?????文件??????21629??2010-03-08?16:13??幾何校正\Debug\ImgWarpDoc.obj

?????文件??????30901??2010-03-10?17:29??幾何校正\Debug\ImgWarpView.obj

?????文件??????17244??2010-03-08?16:13??幾何校正\Debug\MainFrm.obj

?????文件?????105709??2010-03-08?16:13??幾何校正\Debug\StdAfx.obj

?????文件?????246784??2010-03-14?10:26??幾何校正\Debug\vc60.idb

?????文件?????372736??2010-03-10?17:29??幾何校正\Debug\vc60.pdb

?????文件??????15539??2006-06-20?21:17??幾何校正\Dib.cpp

?????文件???????1472??2006-06-20?21:19??幾何校正\Dib.h

?????文件???????2875??2006-06-20?21:17??幾何校正\ImageGeneralTransform.cpp

?????文件????????702??2006-06-20?21:20??幾何校正\ImageGeneralTransform.h

?????文件??????19822??2006-06-20?21:19??幾何校正\ImageGeometry.cpp

?????文件???????1771??2006-06-20?21:20??幾何校正\ImageGeometry.h

?????文件???????2882??2006-06-20?21:19??幾何校正\ImageProcess.cpp

?????文件????????929??2006-06-20?21:20??幾何校正\ImageProcess.h

?????文件???????1732??2006-06-20?21:19??幾何校正\ImageWarp.cpp

?????文件????????803??2006-06-20?21:20??幾何校正\ImageWarp.h

?????文件???????1297??2000-06-21?21:47??幾何校正\ImageWarpDialog.cpp

............此處省略46個文件信息

評論

共有 條評論