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

📄 artdlg.h

📁 用ART神经网络对输入的汉字进行识别分类
💻 H
字号:
// artDlg.h : header file
//

#if !defined(AFX_ARTDLG_H__58167AC7_CFB4_4D36_A08B_4F4FD7F02BD7__INCLUDED_)
#define AFX_ARTDLG_H__58167AC7_CFB4_4D36_A08B_4F4FD7F02BD7__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Dib.h"
#include "Ddb.h"
/////////////////////////////////////////////////////////////////////////////
// CArtDlg dialog

class CArtDlg : public CDialog
{
// Construction
public:

	CArtDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	//{{AFX_DATA(CArtDlg)
	enum { IDD = IDD_ART_DIALOG };
	BOOL	m_WhiteOnBlack;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CArtDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;

	// Generated message map functions
	//{{AFX_MSG(CArtDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnInit();
	afx_msg void OnLoad();
	virtual void OnOK();
	afx_msg void OnSaveimg();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
private:
	CString str;
	CWnd* pwnd1;
	CDC* pControlDC1;
	CBitmap* pOldBitmap;
	BYTE pimg[200];
	CString strofnnum,patternstring;
	void invvector(int A[],int length);
	BOOL Haveinit,recognize,mode;
	BOOL Isload,haveinit;
	void vector2img(int A[], BYTE img[], int width, int height);
	void addpattern(double B[],int T[],int x[],int length,int& nofneuron);//增加一个模式
	void adjustb(double A[],int Ti[],int length,int num);             //调整B的权值
	void adjustt(int A[],int tx[],int length,int num);                 //调整T的权值
	BOOL findpattern(int T[],double B[],int ivector[],double C[],int nofneuron,int length);     // 判断是否是一个新模式,并存储
	double rulo;                                                       //警戒值
	void vectormulti(int A[],int B[] ,int C[],int length);
	int modofvector(int A[],int length);                                //向量相乘,计算匹配度
	BOOL findtiofneuro(int T[],int Ti[],int Tm,int Tn,int neuro);
	int findmaxneuro(double A[],int length);                            //选择最佳匹配样本
	BOOL matrixmulti(double A[],int B[],double C[],int Am,int An,int Bm,int Bn);      //矩阵相乘
	int t[5000];                                                        //自上而下的权值
	void initt(int A[],int length);                                     //权值初始化,自上而下
	int nnum;                                                           //初始输入的样本个数
	void initb(double A[],int length);                                  //权值初始化,自下而上
	int m_nHeight;
	int m_nWidth;
	int mlength;
	CDib* m_pDib;
	CDib* m_pDib2;
	double b[5000];
	void img2vector(BYTE* pimgdata, int A[], int width,int height);
	int fixneuron;
	int m_nbitcount;
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_ARTDLG_H__58167AC7_CFB4_4D36_A08B_4F4FD7F02BD7__INCLUDED_)

⌨️ 快捷键说明

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