亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? yinzhang.cpp

?? 模式識別——印章識別算法。《VC模式識別》源碼。
?? CPP
字號:
// YinZhang.cpp
// 印章圖像處理的一些接口
//
//////////////////////////////////////////////////////////////////////

#include "YinZhang.h"
#include "math.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CYinZhang::CYinZhang()
{
	m_tOriPixelArray = NULL;//原始位圖數據
	m_tResPixelArray = NULL;//參考位圖數據
}

CYinZhang::~CYinZhang()
{

}

////////////////////////////////////////////////////////////////////
//功能:裝載圖像
//參數:FilePathName-圖像文件路徑名
void CYinZhang::LoadImage(CString &FilePathName)
{
	int i,j;
	//檢測是否為空,不為空則要釋放內存
	if(m_tOriPixelArray !=NULL)
	{
		for(i=0; i<ImageHeight; i++)
		{
			delete m_tOriPixelArray[i];
			delete m_tResPixelArray[i];
			delete ImageArray[i];
		}
	}

	m_dib->Open(FilePathName);
	ImageWidth = m_dib->GetWidth();
	ImageHeight = m_dib->GetHeight();

	BYTE	*colorTable;
	colorTable = (BYTE *)m_dib->m_pDibBits;
	int byteBitCount  = m_dib->GetBiBitCount()/8;

	m_tOriPixelArray  = new RGBQUAD*[ImageHeight];
	m_tResPixelArray  = new RGBQUAD*[ImageHeight];
	ImageArray = new BYTE*[ImageHeight];
	for(int l=0 ; l<ImageHeight; l++)
	{
		m_tOriPixelArray[l] = new RGBQUAD[ImageWidth];
		m_tResPixelArray[l] = new RGBQUAD[ImageWidth];
		ImageArray[l] = new BYTE[ImageWidth];
	}

	int count = 0;
	for(i=ImageHeight-1; i>=0; i--)
	{
		for(j=0; j<ImageWidth; j++)
		{
			m_tOriPixelArray[i][j].rgbBlue =colorTable[count++];
			m_tOriPixelArray[i][j].rgbGreen=colorTable[count++];
			m_tOriPixelArray[i][j].rgbRed  =colorTable[count++];
			m_tOriPixelArray[i][j].rgbReserved = 0;
			m_tResPixelArray[i][j]=m_tOriPixelArray[i][j];
			ImageArray[i][j] = (BYTE)(((unsigned int)m_tOriPixelArray[i][j].rgbBlue
								+(unsigned int)m_tOriPixelArray[i][j].rgbGreen
								+(unsigned int)m_tOriPixelArray[i][j].rgbRed)/3);
			count += byteBitCount-3;
		}
		count += (4-(ImageWidth*byteBitCount)%4)%4;
	}
}

/////////////////////////////////////////////////////////////////////////////
//  去除背景
//  這里簡單的采用了從原圖像中提取紅色部分的方案
//  參數:refer-預先設定的紅色圖像印章聚類的中心值
void CYinZhang::EroseBackground(RGBQUAD &refer)
{
	//定義閾值,可以適當的變動
	unsigned char threR = 50;
	unsigned char threG = 50;
	unsigned char threB = 50;
	BOOL rIn, gIn, bIn;	//用來標志R,G,B分量是否在閾值范圍內
	unsigned char temp;

	int i,j;
	for(i=0; i<ImageHeight; i++)
	{
		for(j=0; j<ImageWidth; j++)
		{
			//先判斷R分量
			if((m_tOriPixelArray[i][j].rgbRed > refer.rgbRed) 
				&& (m_tOriPixelArray[i][j].rgbRed-refer.rgbRed<threR))
				rIn = true;
			else if((refer.rgbRed > m_tOriPixelArray[i][j].rgbRed)
				&& (refer.rgbRed-m_tOriPixelArray[i][j].rgbRed<threR))
				rIn = true;
			else
				rIn = false;

			//判斷G分量
			if((m_tOriPixelArray[i][j].rgbGreen > refer.rgbGreen) 
				&& (m_tOriPixelArray[i][j].rgbGreen-refer.rgbGreen<threG))
				gIn = true;
			else if((refer.rgbGreen > m_tOriPixelArray[i][j].rgbGreen)
				&& (refer.rgbGreen-m_tOriPixelArray[i][j].rgbGreen<threG))
				gIn = true;
			else
				gIn = false;

			//判斷B分量
			if((m_tOriPixelArray[i][j].rgbBlue > refer.rgbBlue) 
				&& (m_tOriPixelArray[i][j].rgbBlue-refer.rgbBlue<threB))
				bIn = true;
			else if((refer.rgbBlue> m_tOriPixelArray[i][j].rgbBlue)
				&& (refer.rgbBlue-m_tOriPixelArray[i][j].rgbBlue<threB))
				bIn = true;
			else
				bIn = false;

			if(rIn && gIn && bIn)
				ImageArray[i][j] = (BYTE)1;
			else
				ImageArray[i][j] = (BYTE)0;
		}
	}
}

/////////////////////////////////////////////////////////////////////////////////
//提取特征
void CYinZhang::FeatureExtract()
{
	GlobalCentroid = (double)ImageWidth*(double)ImageHeight;
	GlobalCentroidX = (double)ImageWidth/2.0;
	GlobalCentroidY = (double)ImageHeight/2.0;

	int i,j;
	PrintCentroidX = 0.0;
	PrintCentroidY = 0.0;
	PrintMass = 0.0;
	double tempX = 0.0;
	double tempY = 0.0;

	for(i=0; i<ImageHeight; i++)
	{
		for(j=0; j<ImageWidth; j++)
		{
			PrintMass += (double)ImageArray[i][j];
			tempX += (double)j*(double)ImageArray[i][j];
			tempY += (double)i*(double)ImageArray[i][j];
		}
	}

	PrintCentroidX = tempX/PrintMass;
	PrintCentroidY = tempY/PrintMass;

	CentroidDistance = sqrt((PrintCentroidX-GlobalCentroidX)*(PrintCentroidX-GlobalCentroidX)
		+(PrintCentroidY-GlobalCentroidY)*(PrintCentroidY-GlobalCentroidY));
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩综合| 麻豆91在线观看| 色哟哟精品一区| 一区二区三区在线观看视频| 日本一区二区三区在线不卡| 成人av网址在线观看| 精品在线视频一区| 欧美喷水一区二区| 久久久综合网站| 欧美日韩免费视频| 国产亚洲女人久久久久毛片| 亚洲一本大道在线| hitomi一区二区三区精品| 欧美成人午夜电影| 首页欧美精品中文字幕| 色哟哟在线观看一区二区三区| 欧美成人aa大片| 亚洲成人7777| 欧美在线免费视屏| 樱花草国产18久久久久| 成人av午夜影院| 国产精品美女久久久久久久久| 精品一区二区三区欧美| 69av一区二区三区| 亚洲网友自拍偷拍| 色综合天天综合网天天狠天天| 欧美国产精品中文字幕| 高清久久久久久| 久久精品亚洲乱码伦伦中文| 国产精品白丝av| 欧美国产精品一区二区| 一区二区三区中文字幕| 欧美一级日韩不卡播放免费| 久久中文字幕电影| 美女网站在线免费欧美精品| 7777精品伊人久久久大香线蕉经典版下载| 中文字幕一区二区不卡| 波多野结衣在线aⅴ中文字幕不卡| 国产欧美一区二区三区鸳鸯浴| 精品一区二区三区在线播放视频| 日韩免费成人网| 国产精品中文有码| 国产人妖乱国产精品人妖| 在线观看区一区二| 欧美性videosxxxxx| 成人综合在线网站| 国产剧情一区在线| 精品一区二区三区不卡| 99精品国产热久久91蜜凸| 欧美性感一区二区三区| 久久亚洲影视婷婷| 亚洲精品中文字幕乱码三区| 久久aⅴ国产欧美74aaa| 国产91精品精华液一区二区三区| 久久国产生活片100| 欧美精品一二三| 精品系列免费在线观看| 色综合久久综合中文综合网| 久久精品欧美日韩精品| 国产精品每日更新在线播放网址| 亚洲一区在线视频| 丁香激情综合国产| 伊人一区二区三区| 日韩亚洲欧美一区二区三区| 国产一区二区三区在线观看免费| 国产精品免费视频一区| 欧美日韩一区二区三区在线看| 免费成人在线观看| 中文字幕在线不卡一区二区三区| 欧美视频中文字幕| 成人深夜视频在线观看| 亚洲丶国产丶欧美一区二区三区| 2023国产精品视频| 欧美日韩综合不卡| 国产suv一区二区三区88区| 一个色在线综合| 国产欧美一区二区精品婷婷| 欧美日本一区二区三区| 波多野结衣亚洲一区| 青椒成人免费视频| 亚洲综合在线第一页| 久久久久久久久久看片| 欧美亚洲国产一区二区三区va| 国产成人午夜精品5599| 日本不卡视频在线观看| 亚洲色图一区二区三区| 久久色中文字幕| 欧美一区二区私人影院日本| 在线一区二区三区四区五区| 国产成人精品综合在线观看| 日产欧产美韩系列久久99| 一区二区三区久久久| 国产精品婷婷午夜在线观看| 91精品国产色综合久久ai换脸| 91网上在线视频| 成人免费的视频| 国产精品99久久久久| 久久99国产精品久久99果冻传媒| 日韩亚洲欧美高清| 久久精品国产亚洲5555| 日韩一级二级三级| 日本欧美韩国一区三区| 日韩欧美一区二区在线视频| 婷婷综合在线观看| 欧美精品一区视频| 99麻豆久久久国产精品免费| 亚洲国产视频直播| 欧美大片一区二区| 成人av网在线| 日韩高清不卡一区| 欧美经典一区二区| 欧美亚洲高清一区二区三区不卡| 亚洲韩国精品一区| 精品国产不卡一区二区三区| av亚洲精华国产精华精华| 久久色在线视频| 日韩美女视频在线| 欧美无乱码久久久免费午夜一区 | 国产精品久99| 国产成人在线免费| 亚洲成人午夜影院| 国产精品网站在线| 91精品国产一区二区三区| 99国产精品国产精品久久| 一区二区国产视频| 久久久国产精品午夜一区ai换脸| 99久久免费视频.com| 日韩一区二区三区在线视频| 一卡二卡三卡日韩欧美| 国产精品美女久久久久aⅴ国产馆| 亚洲精品一区二区三区99| 26uuu精品一区二区| 久久精品网站免费观看| 久久只精品国产| 中文字幕精品—区二区四季| 91国在线观看| 91久久精品网| 97成人超碰视| 91小视频在线| 91在线观看美女| 国产精品萝li| 91黄色免费网站| 丁香六月综合激情| 成人国产在线观看| 91激情在线视频| 91精品国产综合久久蜜臀| 精品国产露脸精彩对白| 国产欧美久久久精品影院| 亚洲欧洲国产日本综合| 亚洲精品成人天堂一二三| 亚洲va韩国va欧美va精品 | 国产精品久久久久久久午夜片| 亚洲午夜视频在线观看| 欧美性色黄大片| 欧美肥大bbwbbw高潮| 久久久天堂av| 最新国产精品久久精品| 午夜久久久久久| 国产精品麻豆视频| 亚洲va在线va天堂| 粉嫩av一区二区三区粉嫩| 成人久久视频在线观看| 欧美美女激情18p| 福利一区二区在线| 久久福利资源站| 成人app软件下载大全免费| 91九色02白丝porn| 久久女同性恋中文字幕| 亚洲一区二区三区四区中文字幕| 久久66热re国产| 色拍拍在线精品视频8848| 日韩欧美一区二区久久婷婷| www.66久久| 国产午夜精品美女毛片视频| 婷婷综合五月天| 色婷婷综合中文久久一本| 久久久www免费人成精品| 国产激情偷乱视频一区二区三区| 欧美人妖巨大在线| 亚洲第一综合色| 欧美综合久久久| 国产精品福利一区二区三区| 美国欧美日韩国产在线播放| 欧美精品久久99久久在免费线 | 91精品国产综合久久久久久漫画| 久久尤物电影视频在线观看| 午夜精品久久久久久久99樱桃| 91久久线看在观草草青青| 夜夜揉揉日日人人青青一国产精品| 精品国产在天天线2019| 欧美日韩视频在线观看一区二区三区| 亚洲欧美在线高清| 色天天综合色天天久久| 久久久久久毛片| 色综合久久九月婷婷色综合| 亚洲免费在线播放| 欧美高清视频www夜色资源网| 在线欧美一区二区| 国产亚洲va综合人人澡精品| 国产午夜精品久久|