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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? digitclass.cpp

?? 脫機(jī)字符識(shí)別算法
?? CPP
字號(hào):
// DigitClass.cpp: implementation of the CDigitClass class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "DigitRecog.h"
#include "DigitClass.h"
#include "Thinner.h"
#include "dib.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

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

CDigitClass::CDigitClass()
{

}

CDigitClass::~CDigitClass()
{

}

void CDigitClass::CopyArToBitmap(void)
{
	LONG x, y;
	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();
	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitdib.SetPixel8(x, y, digitarray[x][y]);
			//digitdib.SetPixel8(x, y, 0);
		}
	}
}

void CDigitClass::CopyBitmapToAr(void)
{
	LONG x, y;
	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray[x][y] = digitdib.GetPixel8(x, y);
		}
	}
}

void CDigitClass::BinaryDigit(BYTE thre)
{
	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();
	LONG x, y;

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			if(digitarray[x][y] >= thre)
				digitarray[x][y]=(BYTE)1;
			else
				digitarray[x][y]=(BYTE)0;
		}
	}
}

void CDigitClass::ThinDigit_1()
{
	LONG x,y,k;
	k=0;

	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();

	for(x=0; x<digitWidth; x++)
	{
		digitarray[x][0] = (BYTE)0;
		digitarray[x][digitHeight-1] = (BYTE)0;
	}

	for(y=0; y<digitHeight; y++)
	{
		digitarray[0][y] = (BYTE)0;
		digitarray[digitWidth-1][y] = (BYTE)0;
	}

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray1[k] = digitarray[x][y];
			if(digitarray1[k] != 0)
				digitarray1[k] = (BYTE)1;
			k++;
		}
	}

	ThinnerHilditch((void *)digitarray1, digitWidth, digitHeight);

	k=0;
	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray[x][y] = digitarray1[k];
			if(digitarray[x][y]!=0)
				digitarray[x][y] = (BYTE)1;
			k++;
		}
	}
}

void CDigitClass::ThinDigit_2()
{
	LONG x,y,k;
	k=0;

	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();

	for(x=0; x<digitWidth; x++)
	{
		digitarray[x][0] = (BYTE)0;
		digitarray[x][digitHeight-1] = (BYTE)0;
	}

	for(y=0; y<digitHeight; y++)
	{
		digitarray[0][y] = (BYTE)0;
		digitarray[digitWidth-1][y] = (BYTE)0;
	}

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray1[k] = digitarray[x][y];
			if(digitarray1[k] != 0)
				digitarray1[k] = (BYTE)1;
			k++;
		}
	}

	ThinnerPavlidis((void *)digitarray1, digitWidth, digitHeight);

	k=0;
	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray[x][y] = digitarray1[k];
			if(digitarray[x][y]!=0)
				digitarray[x][y] = (BYTE)1;
			k++;
		}
	}
}

void CDigitClass::ThinDigit_3()
{
	LONG x,y,k;
	k=0;

	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();

	for(x=0; x<digitWidth; x++)
	{
		digitarray[x][0] = (BYTE)0;
		digitarray[x][digitHeight-1] = (BYTE)0;
	}

	for(y=0; y<digitHeight; y++)
	{
		digitarray[0][y] = (BYTE)0;
		digitarray[digitWidth-1][y] = (BYTE)0;
	}

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray1[k] = digitarray[x][y];
			if(digitarray1[k] != 0)
				digitarray1[k] = (BYTE)1;
			k++;
		}
	}

	ThinnerHilditch((void *)digitarray1, digitWidth, digitHeight);

	k=0;
	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray[x][y] = digitarray1[k];
			if(digitarray[x][y]!=0)
				digitarray[x][y] = (BYTE)1;
			k++;
		}
	}
}

void CDigitClass::ThinDigit_4()
{
	LONG x,y,k;
	k=0;

	digitWidth = digitdib.GetWidth();
	digitHeight = digitdib.GetHeight();
	
	for(x=0; x<digitWidth; x++)
	{
		digitarray[x][0] = (BYTE)0;
		digitarray[x][digitHeight-1] = (BYTE)0;
	}

	for(y=0; y<digitHeight; y++)
	{
		digitarray[0][y] = (BYTE)0;
		digitarray[digitWidth-1][y] = (BYTE)0;
	}

	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray1[k] = digitarray[x][y];
			if(digitarray1[k] != 0)
				digitarray1[k] = (BYTE)1;
			k++;
		}
	}

	ThiningDIBSkeleton((LPSTR)digitarray1, digitHeight, digitWidth);

	k=0;
	for(x=0; x<digitWidth; x++)
	{
		for(y=0; y<digitHeight; y++)
		{
			digitarray[x][y] = digitarray1[k];
			if(digitarray[x][y]!=0)
				digitarray[x][y] = (BYTE)1;
			k++;
		}
	}
}

void CDigitClass::GetFeature()
{
	int i,j;
	for(i=0; i<13; i++)
		feature[i] = 0;

	//圖象是20×36大小的,分成9塊

	//第一塊
	for(i=0; i<7; i++)
	{
		for(j=0; j<12; j++)
		{
			if(digitarray[i][j]==1)
				feature[0]+=1.0;
		}
	}

	//第二塊
	for(i=0; i<7; i++)
	{
		for(j=12; j<24; j++)
		{
			if(digitarray[i][j]==1)
				feature[1]+=1.0;
		}
	}

	//第三塊
	for(i=0; i<7; i++)
	{
		for(j=24; j<36; j++)
		{
			if(digitarray[i][j]==1)
				feature[2]+=1.0;
		}
	}

	//第四塊
	for(i=7; i<13; i++)
	{
		for(j=0; j<12; j++)
		{
			if(digitarray[i][j]==1)
				feature[3]+=1.0;
		}
	}

	//第五塊
	for(i=7; i<13; i++)
	{
		for(j=12; j<24; j++)
		{
			if(digitarray[i][j]==1)
				feature[4]+=1.0;
		}
	}

	//第六塊
	for(i=7; i<13; i++)
	{
		for(j=24; j<36; j++)
		{
			if(digitarray[i][j]==1)
				feature[5]+=1.0;
		}
	}

	//第七塊
	for(i=13; i<20; i++)
	{
		for(j=0; j<12; j++)
		{
			if(digitarray[i][j]==1)
				feature[6]+=1.0;
		}
	}

	//第八塊
	for(i=13; i<20; i++)
	{
		for(j=12; j<24; j++)
		{
			if(digitarray[i][j]==1)
				feature[7]+=1.0;
		}
	}

	//第九塊
	for(i=13; i<20; i++)
	{
		for(j=24; j<36; j++)
		{
			if(digitarray[i][j]==1)
				feature[8]+=1.0;
		}
	}

	//下面統(tǒng)計(jì)方向交點(diǎn)特征

	for(j=0; j<36; j++)
	{
		if(digitarray[7][j]==1)
			feature[9]+=1.0;
	}

	for(j=0; j<36; j++)
	{
		if(digitarray[13][j]==1)
			feature[10]+=1.0;
	}

	for(i=0; i<20; i++)
	{
		if(digitarray[i][12]==1)
			feature[11]+=1.0;
	}

	for(i=0; i<20; i++)
	{
		if(digitarray[i][24]==1)
			feature[12]+=1.0;
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色电影在线| 久久精品久久久精品美女| 亚洲精品日韩一| 自拍偷拍亚洲综合| 亚洲一本大道在线| 丝袜国产日韩另类美女| 亚洲r级在线视频| 日本视频一区二区| 精品亚洲国产成人av制服丝袜| 狠狠色丁香婷婷综合| 国产成人精品1024| 91麻豆免费在线观看| 欧美亚洲国产一区二区三区| 91精品国产色综合久久不卡蜜臀| 日韩欧美专区在线| 久久精品一区二区| 亚洲免费在线看| 亚洲国产日韩在线一区模特| 视频一区二区三区在线| 国产九色sp调教91| 色94色欧美sute亚洲线路一ni | 久久国产精品99精品国产| 国产激情一区二区三区四区| 色先锋资源久久综合| 欧美疯狂做受xxxx富婆| 久久久久国产精品麻豆| 一区二区三区欧美视频| 久久99久久99| av在线播放成人| 欧美一区二区视频免费观看| 国产亚洲一区二区三区在线观看| 亚洲男女毛片无遮挡| 久久精品国产网站| 东方欧美亚洲色图在线| 欧美日韩精品二区第二页| 欧美精品一区二区蜜臀亚洲| 亚洲日本一区二区三区| 久久激情综合网| 91日韩精品一区| 精品国产乱码久久久久久浪潮| 亚洲乱码中文字幕| 精一区二区三区| 日本韩国一区二区| 日韩欧美成人激情| 亚洲女同一区二区| 国产乱人伦偷精品视频免下载| 欧美体内she精高潮| 国产亚洲欧洲一区高清在线观看| 一区二区日韩av| 国产99精品在线观看| 欧美久久一二区| 久久久精品tv| 麻豆国产欧美一区二区三区| 91香蕉视频污在线| 久久蜜桃一区二区| 日韩av高清在线观看| 国产精品一区二区在线播放| 9191国产精品| 中文字幕亚洲综合久久菠萝蜜| 久久99国产精品免费| 欧美午夜精品一区| 中文字幕一区二区三区色视频 | 99精品视频在线观看免费| 精品久久久三级丝袜| 天堂成人国产精品一区| 色爱区综合激月婷婷| 国产精品高潮呻吟| 国产激情91久久精品导航| 这里只有精品电影| 性欧美大战久久久久久久久| 色狠狠色噜噜噜综合网| 欧美国产日韩亚洲一区| 国产一区二区三区四区五区美女 | 综合欧美一区二区三区| 国产成人在线影院| 欧美日韩国产一二三| 一区二区三区在线视频播放| 99综合影院在线| 26uuu精品一区二区三区四区在线| 五月综合激情网| 欧美色图激情小说| 亚洲国产成人av| www.视频一区| 中文字幕亚洲一区二区va在线| 成人污污视频在线观看| 亚洲视频一二三| 欧美日韩免费观看一区二区三区| 午夜视频久久久久久| 日韩欧美黄色影院| 国产一区二区导航在线播放| 国产片一区二区三区| 一本大道av伊人久久综合| 图片区小说区国产精品视频| 日韩欧美国产精品| 国产精品自拍av| 成人欧美一区二区三区1314 | 亚洲韩国精品一区| 91精品国产91久久久久久一区二区| 毛片基地黄久久久久久天堂| 久久久无码精品亚洲日韩按摩| 99在线热播精品免费| 午夜精品久久久久久久蜜桃app| 日韩视频免费直播| 大胆欧美人体老妇| 亚洲综合色视频| 日韩欧美一区二区久久婷婷| 成人动漫精品一区二区| 午夜精品久久久久久久久久久| 精品免费国产二区三区| 99九九99九九九视频精品| 亚洲成人午夜影院| 国产亚洲1区2区3区| 在线一区二区三区四区五区 | 久久毛片高清国产| 972aa.com艺术欧美| 日韩国产欧美一区二区三区| 久久久国产精华| 欧美日韩亚洲另类| 国产精品一区2区| 亚洲成人av免费| 国产精品色婷婷| 欧美一级在线视频| av成人动漫在线观看| 美女网站色91| 一区二区在线观看免费视频播放| 日韩精品一区二区三区在线播放| 91亚洲精品久久久蜜桃网站| 精油按摩中文字幕久久| 一区二区高清免费观看影视大全| 精品久久久影院| 欧美日韩综合不卡| av激情成人网| 国产一区二区三区观看| 亚洲成人激情社区| 亚洲视频 欧洲视频| 欧美大白屁股肥臀xxxxxx| 色偷偷一区二区三区| 国产一区二区伦理片| 视频在线在亚洲| 一区二区在线观看免费视频播放| 久久久久久9999| 正在播放亚洲一区| 色拍拍在线精品视频8848| 国产一区不卡视频| 日韩精品成人一区二区三区 | 欧美精品久久天天躁| 91热门视频在线观看| 国产福利不卡视频| 免费xxxx性欧美18vr| 香蕉久久夜色精品国产使用方法| 亚洲色图视频网| 久久精品视频一区二区| 日韩精品综合一本久道在线视频| 在线精品视频一区二区三四| 成人的网站免费观看| 国产黄色精品视频| 激情综合网av| 久久国产人妖系列| 天天亚洲美女在线视频| 亚洲亚洲人成综合网络| 一级精品视频在线观看宜春院| 国产精品乱人伦| 国产精品欧美一区二区三区| 久久九九国产精品| 久久久久久99久久久精品网站| 日韩美女在线视频| 日韩免费性生活视频播放| 欧美丰满一区二区免费视频| 欧美日韩一二三| 欧美日韩美少妇| 欧美男生操女生| 欧美午夜电影在线播放| 欧美性色欧美a在线播放| 色综合天天综合色综合av| 99久久免费精品| 成人av网站免费| 成人18视频日本| 99这里只有久久精品视频| 成人综合婷婷国产精品久久蜜臀| 国产精品一区免费视频| 国产成人鲁色资源国产91色综| 国产精品123区| 成人动漫中文字幕| 91视视频在线直接观看在线看网页在线看| 成人综合婷婷国产精品久久免费| 成人精品鲁一区一区二区| 成人app在线观看| 91视视频在线观看入口直接观看www | 欧洲另类一二三四区| 色婷婷av一区| 欧美色视频在线观看| 欧美一区二区视频观看视频| 日韩午夜电影av| 精品av综合导航| 国产清纯美女被跳蛋高潮一区二区久久w| 欧美精彩视频一区二区三区| 国产精品久线在线观看| 亚洲一区日韩精品中文字幕| 日韩精品国产欧美| 国产在线播精品第三|