📄 globalfunc.cpp
字号:
// GLoablFunc.cpp: 是全局函数
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Edge_detection.h"
#include "GlobalFunc.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
void DibXMatrix(CDIB *dib,double *m,int mW,int mH)
{
int i,j,l,k;
int width,height,strogeWidth;
if( dib->BitCount() !=8 ) return;
width=dib->Width();
height=dib->Height();
strogeWidth=dib->StorageWidth();
CDIB tmpDib;
tmpDib.CreateDIB(dib);
for(i=0;i<height+1-mH;i++)
for(j=0;j<width+1-mW;j++)
{
BYTE *pBit = tmpDib.GetPixelAddress(j,height-1-i);
BYTE *pIBit = dib->GetPixelAddress(j,height-1-i);
double dValue=0.0;
for(l=0; l<mH; l++)
for(k=0; k<mW; k++)
dValue+= *(pIBit+l*strogeWidth+k)*m[l*mW+k];
// 对结果数据进行处理
if(dValue<0)
dValue = 0;
else if( dValue>255 )
dValue=255;
*pBit = (BYTE)dValue;
}
dib->CreateDIB( &tmpDib,TRUE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -