Tổ chức chơng trình và các modul chức năng

Một phần của tài liệu Công nghệ xử lý và nhận dạng ảnh mặt người bằng mạng nơron nhân tạo mlp (Trang 61 - 70)

Phần 1: khai báo biến và khởi tạo các giá trị cho các tham số.

Phần 2: modul xây dựng cấu trúc mạng nơron 3 tầng mạng.

- tín hiệu vào của một mẫu học đọc từ tệp : X[]=X[0], X[1], X[2], …X[15]

- tín hiệu ra tơng ứng: y[]=y[0]

Phần 3: modul học với giải thuật lan truyền ngợc lỗi backpropagation + lan truyền các tín hiệu vào qua mạng

+ lan truyền ngợc sai số từ lớp ra đến lớp ẩn. Kết thúc khi đạt điều kiện dừng học.

PhÇn 4: - bé W[] chuÈn

- đa ra các kết quả của các mẫu kiểm tra.

Phần 5: Nhận và phân loại các mẫu ảnh

+ Nếu nhận ra là mặt ngời : faceValue=1;

+ Nếu nhận ra không phải là mặt ngời : faceValue=0;

Hình 3.7: Sơ đồ khối bài toán:

Khởi tạo: η,Em,W[]-,k

, {Xk,dk} Begin

Outi= sigmoir 



∑q

j

Netj Wij*

¦

E= (Outi yi) E

n

i

+

∑ −

=

2

2 1

1

) ( )

( i i i

i = Out −y a Net

δ

ij old

ij new ij

j i ji i

i þ i

W W

W

W Net a y

Wij

∆ +

=

=

=

∆ η.δ . ;δ ( )∑ δ ;

tăng mẫu học k++

Wij

E<Em

E=0; k=1 k=1

Outi: tín hiệu ra q: sè tÇng a: hàm sigmoir

Phần 6:Giải phóng biến, in kết quả ra.

Trong đó 2 modul: xây dựng mạng nơron và học với giải thuật lan truyền ngợc là quan trọng nhất và đợc thể hiện qua lu đồ sau:

modul : Lan truyền tín hiệu

 Chức năng :

- Tính sai số cho một cấu trúc mạng m, n, A và bộ trọng số W với một tập luyện cho trớc.

+ Vào :

- Cấu trúc mạng m, n, A và bộ trọng số.

- Tập số liệu luyện gồm p đối tợng . + Ra :

- Sai số E sinh ra sau khi lan truyền toàn bộ các đối tợng qua mạng.

 Giải thuật : - Gán E = 0 - Lặp i = 1 đến p

+ Lan truyền véc tơ vào Xi qua mạng .

+ Tích luỹ sai số vào E.

W, Outjl, εlast

l = 2

TÝnh : δlj

TÝnh :

−1

=

∆wlji ηδljOutli

Hiệu chỉnh :

l ji l

ji l

ji w w

w = +∆

§óng Sai

l > 1 l =l - 1

Hình 3.9 : Lu đồ thuật toán học.

i := 1; E := 0

Lan truyền véc tơ vào Xi qua mạng (2.3.2.1.2.2.1)

TÝch luü sai sè

∑=

− +

= n

j

last j i

j Out

y E

E

1

)2

2 ( 1 i := i+1

Hình 3.8 : Lu đồ thuật toán lan truyền tín hiệu

§óng Sai

i < P -r

m, n, A, W; Tập luyện

Modul : huấn luyện

 Chức năng :

- Tập trọng số W

- Lan truyÒn sai sè tõ líp ra tíi líp Èn.

- Hiệu chỉnh các trọng số.

+ Vào :

- Các tín hiệu ra của các nơron có trong mạng.

- Sai số ở lớp ra.

+ Ra :

- Tập trọng số W sau khi hiệu chỉnh

 Giải thuật :

- Bắt đầu từ lớp ra ( l = 2) cho tới lớp ẩn (l = 1) tính : + Hệ số hiệu chỉnh δlj

+ Lợng hiệu chỉnh ∆ = li−1 l j l

ji Out

w ηδ .

+ Hiệu chỉnh các trọng số wlji =wlji +∆wlji

Hàm tính chỉ số W – wInd() :

 Chức năng :

- Tính địa chỉ của trọng số thứ i của nơron thứ j trên lớp thứ l trong bảng tuyến tính trọng số W()

+ Vào : Ba số nguyên i, j, l + Ra : Chỉ số k

 Giải thuật

Function wInd(i As Integer, j As Integer, lCurrent As Integer) As Integer If lCurrent = 1 Then

wInd = m * j + i 1- Else

wInd = (m * A) + (j A) * A + i - - 1 End If

End Function

3.3.7 Thiết lập chơng trình

Chơng trình đợc viết bằng ngôn ngữ Visual Basic.

Giao diện chính của chơng trình gồm có các module sau:

 Xử lí ảnh

 Huấn luyện_Nhận dạng

 Nhận dạng ngay

Hình 3.10 : Giao diện chính của chơng trình

Chơng chình chính có các chức năng sau:

- Tiền xử lí ảnh

- Tiến hành quá trình huấn luyện mạng (học), sau đó lu lại bộ trọng số tốt nhất vào file (*.wei).

- Chức năng có thể xem kết quả của các mẫu học.

- Nhận dạng: tiến hành nhận dạng sau khi mạng đã đợc huấn luyện.

Sau khi xử lí nhận dạng, một file ảnh đầu vào “đúng” sẽ đợc chơng trình tiến hành xử lí, tìm trong CSDL ảnh gốc đã đợc huấn luyện một giá trị đầu ra của mạng gần đúng nhất rồi hiển thị ảnh, kết quả nh sau:

Hình 3.11: Giao diện modul huấn luyện mạng và nhận dạng.

Sau khi xử lí nhận dạng, một file ảnh đầu vào “sai” sẽ đợc hiển thị và cho kết quả dạng phủ định nh sau:

Hình 3.12 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết quả đúng.

Hình 3.13 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết quả sai.

Nhận dạng qua tập trọng số có sẵn

Để nhận dạng ngay bằng những tập trọng số của các mẫu đã đợc huấn luyện, chức năng này đợc kích hoạt. Việc nhận dạng ảnh từ một mẫu bất kỳ sẽ đợc chơng trình tiến hành nhận dạng chính xác trong một cơ sở dữ liệu CSDL ảnh

đã học. Màn hình huấn luyện nhận dạng nh sau:

Sau khi xử lí nhận dạng, một file ảnh đầu vào “đúng” sẽ đợc hiển thị và cho kết quả nh sau:

Hình 3.14 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn

Sau khi xử lí nhận dạng, một file ảnh đầu vào “sai” sẽ đợc hiển thị và cho kết quả dạng phủ định nh sau:

Hình 3.16 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn nhận kết quả sai.

Hình 3.15 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn nhận kết quả đúng.

Một phần của tài liệu Công nghệ xử lý và nhận dạng ảnh mặt người bằng mạng nơron nhân tạo mlp (Trang 61 - 70)

Tải bản đầy đủ (PDF)

(74 trang)