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

資源簡介

MatLab程序。 C++實現(xiàn)。 實現(xiàn)對二值圖像進行腐蝕、膨脹、開/閉運算。 腐蝕分水平、垂直、全方位。 膨脹分水平、垂直、全方位。 能保存處理后的圖,以及將處理后的圖與原圖進行對比。

資源截圖

代碼片段和文件信息

#include?“stdafx.h“
#include?“cdib.h“
#include?“windowsx.h“
#include?“math.h“
#define?WIDTHBYTES(bits)????(((bits)?+?31)?/?32?*?4)?

CDib::CDib()
{
size=0;
}

CDib::~CDib()
{
????GlobalFreePtr(m_pBitmapInfo);
}

void?CDib::LoadFile(const?char*?dibFileName)
{
???strcpy(m_fileNamedibFileName);
????CFile?dibFile(m_fileName?CFile::modeRead);
????dibFile.Read((void*)&bitmapFileHeadersizeof(BITMAPFILEHEADER));
????if?(bitmapFileHeader.bfType?==?0x4d42)
????{
????????DWORD?fileLength?=?dibFile.GetLength();????
?????????size?=?fileLength?-sizeof(BITMAPFILEHEADER);
?????????pDib?=(BYTE*)GlobalAllocPtr(GMEM_MOVEABLE?size);
????????dibFile.Read((void*)pDib?size);
????????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)?//?No?color?table
m_pRGB?=?NULL;
????????m_pBitmapInfoHeader->biSizeImage?=?GetSize();
m_valid?=?TRUE;
????}????
????else
????{
????????m_valid?=?FALSE;
????????AfxMessageBox(“This?isn‘t?a?bitmap?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? {
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;
}
DWORD?CDib::GetDibWidthBytes()
{??
byBitCount=m_pBitmapInfoHeader->biBitCount;
LONG?nWidth=m_pBitmapInfoHeader->biWidth;

dwWidthBytes?=?(DWORD)m_pBitmapInfoHeader->biWidth; //8-bits
if(byBitCount?==?1)?dwWidthBytes?=?(nWidth?+?7)?/?8;
else?if(byBitCount?==?4)?dwWidthBytes?=?(nWidth?+?1)?/?2;
else?if(byBitCount?==?24)?dwWidthBytes?=?3?*?nWidth?;

while((dwWidthBytes?&?3)?!=?0)dwWidthBytes++;

return?dwWidthBytes;

}??
????
BYTE*?CDib::GetData()
{
????r

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-06-24?21:14??MatLab程序\
?????文件??????300162??2004-07-29?20:33??MatLab程序\24位腐蝕原圖.bmp
?????文件????????3890??2004-04-01?17:30??MatLab程序\Cdib.cpp
?????文件?????????853??2004-04-01?17:30??MatLab程序\Cdib.h
?????文件???????47704??2004-09-20?17:03??MatLab程序\DSplit.aps
?????文件????????3620??2004-09-20?17:03??MatLab程序\DSPLIT.CLW
?????文件????????4158??2003-04-01?08:51??MatLab程序\Dsplit.cpp
?????文件????????5174??2004-04-01?22:50??MatLab程序\DSplit.dsp
?????文件?????????579??1999-01-28?11:36??MatLab程序\DSPLIT.DSW
?????文件????????1366??2003-04-01?08:51??MatLab程序\Dsplit.h
?????文件??????959488??2004-09-20?17:03??MatLab程序\DSPLIT.NCB
?????文件???????82944??2004-09-20?17:03??MatLab程序\DSPLIT.OPT
?????文件????????2964??2004-09-06?11:56??MatLab程序\DSPLIT.PLG
?????文件???????13252??2004-09-20?17:03??MatLab程序\DSplit.rc
?????文件????58675200??2012-06-24?21:14??MatLab程序\DSplit.sdf
?????文件????????8409??2012-06-24?21:11??MatLab程序\DSplit.vcxproj
?????文件????????3375??2012-06-24?21:11??MatLab程序\DSplit.vcxproj.filters
?????文件?????????143??2012-06-24?21:11??MatLab程序\DSplit.vcxproj.user
?????文件????????2008??2003-04-01?08:45??MatLab程序\DSplitDoc.cpp
?????文件????????1509??2003-04-03?17:12??MatLab程序\DSplitDoc.h
?????文件????????3238??2003-04-02?16:45??MatLab程序\Dsplitview.cpp
?????文件????????1859??2003-04-01?08:27??MatLab程序\Dsplitview.h
?????文件????????6439??2003-04-02?10:18??MatLab程序\DYNSPLITTERWND.CPP
?????文件????????1733??1998-03-10?17:19??MatLab程序\DYNSPLITTERWND.H
?????文件????????6587??2004-07-29?20:31??MatLab程序\DynSplitView2.cpp
?????文件????????2136??2003-05-29?07:36??MatLab程序\DynSplitView2.h
?????文件???????18279??2004-09-13?20:39??MatLab程序\FuShiYuPengZhangDib.cpp
?????文件?????????397??2003-04-27?11:19??MatLab程序\FuShiYuPengZhangDib.h
?????文件????????3550??2003-04-03?17:15??MatLab程序\MAINFRM.CPP
?????文件????????1691??2003-04-02?17:00??MatLab程序\MAINFRM.H
?????文件????????4035??1998-02-03?10:42??MatLab程序\README.TXT
............此處省略8個文件信息

評論

共有 條評論