⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 recognition.cpp

📁 数字识别
💻 CPP
字号:
// Recognition.cpp: implementation of the CRecognition class.
// 
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "数字识别.h"
#include "Recognition.h"

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

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

CRecognition::CRecognition(){
	int i = 0;
	char fn[] = "data/n1.dat";
	for(i = 0;i < 10; i++){
		fn[6] = (char)((int)('0') + i);
		node[i] = new CNode(fn);
	}
}

CRecognition::~CRecognition(){
	int i = 0;
	for(i = 0;i < 10; i++){
		delete node[i];
	}
}

void CRecognition::Save(){
	int i = 0;
	for(i = 0;i < 10; i++){
		node[i]->Save();
	}
}

void CRecognition::Study(int * input, int * rs){ // 学习函数
	int i = 0;
	for(i = 0;i < 10; i++){
		node[i]->Study(input, rs[i]);
	}
}

int CRecognition::Get(int * input){
	int r = 0;
	int i = 0;
	for(i = 9;i >= 0; i--){
		r += r + node[i]->GetResult(input);
	}
	switch(r){
	case 1:
	case 2:
		return 1;
	case 20:
	case 21:
	case 532:
	case 533:
	case 529:
		return 2;
	case 36:
	case 548:
	case 545:
		return 3;
	case 10:
	case 9:
		return 4;
	case 552:
		return 5;
	case 65:
	case 72:
	case 73:
	case 97:
	case 104:
	case 105:
	case 616:
	case 584:
		return 6;
	case 513:
	case 5:
	case 517:
		return 7;
	case 192:
	case 76:
	case 204:
	case 264:
	case 288:
		return 8;
	case 129:
	case 13:
	case 44:
	case 45:
	case 133:
	case 137:
	case 141:
	case 160:
	case 164:
	case 168:
	case 172:
		return 9;
	case 256:
	case 64:
	case 128:
	case 257:
	case 258:
	case 768:
	case 769:
	case 770:
		return 0;
	}
	return -1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -