资源简介

基于开源视觉库OpenCV 在MFC平台上开发的车牌识别系统项目源代码,可直接编译运行

资源截图

代码片段和文件信息

// AnnBP.cpp: implementation of the CAnnBP class.
//
//////////////////////////////////////////////////////////////////////
#include “StdAfx.h“
#include “AnnBP.h“
#include “math.h“




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

CAnnBP::CAnnBP()
{
eta1=0.3;
momentum1=0.3;

}

CAnnBP::~CAnnBP()
{

}


double CAnnBP::drnd()
{
return ((double) rand() / (double) BIGRND);
}


/*** 返回-1.0到1.0之间的双精度随机数 ***/
double CAnnBP::dpn1()
{
return (double) (rand())/(32767/2)-1;
}

/*** 作用函数,目前是S型函数 ***/
double CAnnBP::squash(double x)
{
return (1.0 / (1.0 + exp(-x)));
}


/*** 申请1维双精度实数数组 ***/
double* CAnnBP::alloc_1d_dbl(int n)
{
double *new1;

new1 = (double *) malloc ((unsigned) (n * sizeof (double)));
if (new1 == NULL) {
AfxMessageBox(“ALLOC_1D_DBL: Couldn‘t allocate array of doubles\n“);
return (NULL);
}
return (new1);
}

/*** 申请2维双精度实数数组 ***/
double** CAnnBP::alloc_2d_dbl(int m int n)
{
int i;
double **new1;

new1 = (double **) malloc ((unsigned) (m * sizeof (double *)));
if (new1 == NULL) {
AfxMessageBox(“ALLOC_2D_DBL: Couldn‘t allocate array of dbl ptrs\n“);
return (NULL);
}

for (i = 0; i < m; i++) {
new1[i] = alloc_1d_dbl(n);
}

return (new1);
}


/*** 随机初始化权值 ***/
void CAnnBP::bpnn_randomize_weights(double **w int m int n)
{
int i j;
for (i = 0; i <= m; i++) {
for (j = 0; j <= n; j++) {
w[i][j] = dpn1();
}
}

}

/*** 0初始化权值 ***/
void CAnnBP::bpnn_zero_weights(double **w int m int n)
{
int i j;

for (i = 0; i <= m; i++) {
for (j = 0; j <= n; j++) {
w[i][j] = 0.0;
}
}

}

/*** 设置随机数种子 ***/
void CAnnBP::bpnn_initialize(int seed)
{
CString msgs;
msg=“Random number generator seed:“;
s.Format(“%d“seed);
AfxMessageBox(msg+s);
srand(seed);
}

/*** 创建BP网络 ***/
BPNN* CAnnBP::bpnn_internal_create(int n_in int n_hidden int n_out)
{
BPNN *newnet;

newnet = (BPNN *) malloc (sizeof (BPNN));
if (newnet == NULL) {
printf(“BPNN_CREATE: Couldn‘t allocate neural network\n“);
return (NULL);
}

newnet->input_n = n_in;
newnet->hidden_n = n_hidden;
newnet->output_n = n_out;
newnet->input_units = alloc_1d_dbl(n_in + 1);
newnet->hidden_units = alloc_1d_dbl(n_hidden + 1);
newnet->output_units = alloc_1d_dbl(n_out + 1);

newnet->hidden_delta = alloc_1d_dbl(n_hidden + 1);
newnet->output_delta = alloc_1d_dbl(n_out + 1);
newnet->target = alloc_1d_dbl(n_out + 1);

newnet->input_weights = alloc_2d_dbl(n_in + 1 n_hidden + 1);
newnet->hidden_weights = alloc_2d_dbl(n_hidden + 1 n_out + 1);

newnet->input_prev_weights = alloc_2d_dbl(n_in + 1 n_hidden + 1);
newnet->hidden_prev_weights = alloc_2d_dbl(n_hidden + 1 n_out + 1);

return (newnet);

}

/* 释放BP网络所占地内存空间 */
void CAnnBP::bpnn_free(BPNN *net)
{
int n1 n2 i;

n1 = net->

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-11-25 17:25  车牌识别系统code\
     文件       11579  2004-06-02 12:08  车牌识别系统code\AnnBP.cpp
     文件        2971  2004-06-02 11:54  车牌识别系统code\AnnBP.h
     文件        1456  2004-06-05 15:26  车牌识别系统code\CharView.cpp
     文件        1547  2004-06-05 15:26  车牌识别系统code\CharView.h
     目录           0  2017-11-25 16:54  车牌识别系统code\Debug\
     文件       49957  2017-11-23 23:41  车牌识别系统code\Debug\AnnBP.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\AnnBP.sbr
     文件        2462  2017-11-25 16:54  车牌识别系统code\Debug\BscMake.command.1.tlog
     文件        7048  2009-11-22 12:59  车牌识别系统code\Debug\BuildLog.htm
     文件       43300  2017-11-25 16:53  车牌识别系统code\Debug\CL.read.1.tlog
     文件        9230  2017-11-25 16:53  车牌识别系统code\Debug\CL.write.1.tlog
     文件       35065  2017-11-23 23:41  车牌识别系统code\Debug\CharView.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\CharView.sbr
     文件       32144  2017-11-23 23:41  车牌识别系统code\Debug\DigitClass.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\DigitClass.sbr
     文件       24430  2017-11-23 23:41  车牌识别系统code\Debug\GreyDlg.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\GreyDlg.sbr
     文件       39354  2017-11-23 23:41  车牌识别系统code\Debug\MainFrm.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\MainFrm.sbr
     文件       20410  2017-11-23 23:41  车牌识别系统code\Debug\Mdlg.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\Mdlg.sbr
     文件       23258  2017-11-23 23:41  车牌识别系统code\Debug\RecvChar.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\RecvChar.sbr
     文件      556008  2017-11-23 23:41  车牌识别系统code\Debug\StdAfx.obj
     文件     4137068  2017-11-23 23:41  车牌识别系统code\Debug\StdAfx.sbr
     文件       24297  2017-11-23 23:41  车牌识别系统code\Debug\Thinner.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\Thinner.sbr
     文件       23125  2017-11-23 23:41  车牌识别系统code\Debug\Training.obj
     文件           0  2017-11-23 23:41  车牌识别系统code\Debug\Training.sbr
     文件        3970  2017-11-25 16:54  车牌识别系统code\Debug\bscmake.read.1.tlog
............此处省略108个文件信息

评论

共有 条评论