智慧型系統專業實驗(四) 數字識別實驗

2021-10-08 09:43:52 字數 1871 閱讀 4671

1、了解模板匹配演算法進行數字識別的基本原理,理解bmp 影象在儲存器中的儲存形式。

2、實現bmp格式影象中印刷體數字的識別。

1、基本原理

實驗採用模板匹配中畫素點重合的方法,將待測影象中的數字與模板庫中的各個數字進行比對,認為模板庫中與待測數字重合畫素點最多的為數字識別結果。

模板庫的建立

將包含 0—9 十個數字的十張bmp 格式的影象(本模板庫的影象均為白色背景黑色字型)讀入,將其畫素資訊分別存入十個50 x 50的二維陣列中。本實驗中灰度影象的灰度值低於50的為有效畫素點,其對應的二維陣列中的數值定義為1,灰度值大於50 的認為是無效點,其對應的二維陣列中的數值定義為0。

待檢測影象中的數字分離

定義如下結構體:

structw[20];

structh[20];

如果輸入影象包含n x m個數字,則需要將n x m個數字分離開之後,分別與模板庫進行匹配並分別識別,將識別結果存入result[n x m]的陣列中。

實驗主要處理1 x m個數字的影象,先統計影象中每行每列有效畫素點分別存入grayw和grayh中,然後逐行逐列掃瞄影象,通過w.left和w.right,h.up 和h.down 分別標記每個數字的左右上下可將數值分離。

模板的匹配與識別

依次識別每一位數字,將每一位數字的畫素資訊存入50´50的名為t 的二維陣列中,有效畫素點定為1,無效畫素點定義0。將得到的分離後的數字的二維陣列t 與各個模板進行匹配。由於模板和待檢測數字中的有效畫素點在陣列中均表示為1,可通過對應點相加之後對2取餘數再相加得到結果sum,比較待檢測影象與十個模板得到的sum的值,sum 最小的表示待檢測數字與其影象重合點最多,即認為待檢測數字為該數字。

2、演算法步驟

(1)模板庫的建立,十個數字的十張bmp 格式的影象讀入,並以二值形式分別存入十個50´50的二維陣列中;

(2)通過分別標記每個數字的左右上下位置,將待檢測影象中的

數字進行分離;

(3)統計待檢測影象與十個模板得到的影象重合點數目,進行模

板的匹配與識別。

模板需要識別的

識別的結果

如上圖結果所示,其是由識別出來的每乙個數字的結果拼接得到。該演算法進行識別之前必須對數字進行很好的分離,否則將會出現很大識別誤差。

#include#include#include#include#include #define imagew 288

#define imageh 36

int imageptr[10][1800];

int height[10];int width[10];

int bmpheight, bmpwidth, bibitcount;

unsigned char *pbmpbuf;

rgbquad *pcolortable;

int image[10368];

int print[10368];

int end[15];

int start[14][2];

void fun()

}} //尋找數字k的起點oy

for(j=0;j<36;j++)

}} //尋找數字k的終點end

for(i=start[k][0];i<288;i++)

if(j==36)

} }

//匹配

int sum=0;

int lsum=0;

int res;

int m;

int n;

for(k=0;k<14;k++){

lsum=0;

for(q=0;q<10;q++){

sum=0;

for(i=start[k][0];i

智慧型系統平台專業實驗 人臉識別

在一般環境中識別出人臉。本實驗所 的是一般環境影象中單個正面端正人臉的檢測問題。這種條件下的人臉檢測的方法主要有模板匹配方法 可變形模板方法等。概括的說,基於模板匹配的方法是在圖形灰度上直接比較目標模板和候選影象區域之間的相似性,而基於特徵匹配的方法是比較從影象中抽取的一定特徵的相似性。本實驗主要用...

智慧型抄表系統實驗

抄表系統 1 系統主要功能 自動抄表 可實現小區聯網抄錄煤氣表 水表 電表的讀數,在小區的管理微機上能進行人工或自動記錄,記錄歷史資料,並能夠列印。大大提高抄表的效率和準確率。控制 可在管理中心對該三種表實施人為 關斷或開啟 一方面,如發生 火災或居民外出忘記關閥等情況時,管理中心可以代為關閥,減少...

數字系統實驗 串列埠通訊A

a級任務 本次實驗採用狀態圖形成vhdl檔案方法 之前的bcd級任務已經完成,得到的如下所示 名稱針腳號 輸入資料d7 d0 28 24,9 7 控制訊號rxf 144控制訊號txe 4控制訊號rd 143控制訊號wr 3傳送aa 傳送55 雙向傳輸 接下來是實現crc演算法,a級實驗實際上就是要求...