XÂY DỰNG HỆ THỐNG
3.2.1.4 Tiến hành học huấn luyện cho máy tính
Cũng sử dụng công cụ đã nói ở trên, sử dụng lệnh Createsamples và
Haartrainning để huấn luyện tạo cơ sở dữ liệu đặc trưng và xuất cơ sở dữ liệu đó ra dạng file .xml phục vụ trong mã lệnh chương trình phần mềm nhận dạng của luận văn.
Hai lệnh chuẩn, điển hình được học viên thực hiện trong luận văn:
Mẫu lệnh thi hành
createsamples.exe -info positive/info.txt -vec data/vector.vec -num 466 –maxxangle 1.1 –maxyangle 1.1 –maxzangle 0.5 -w 20 -h 20
với,
-info positive/info.txt : file chứa thông tin tọa độ của khung chữ nhật bao đặc trưng đối tượng trong ảnh mẫu.
-vec data/vector.vec : đường dẫn chứa file vector.vec tạo ra ở trên.
-num 466 : bộ huấn luyện gồm 466 ảnh tích cực (có chứa đối tượng).
-w 20 : chiều rộng mẫu ngõ ra (tính theo pixel).
-h 20 : chiều cao mẫu ngõ ra (tính theo pixel).
Các thông số maxxangle , maxyangle , maxzangle quy định các góc xoay tối đa theo các hướng trong không gian của đối tượng mà đảm bảo đối tượng vẫn được phát hiện.
Tiến hành học huấn luyện cho máy tính: Mẫu lệnh thi hành
haartraining.exe -data data/cascade -vec data/vector.vec -bg negative/infofile.txt -npos 466 -nneg 3125 -nstages 24 -mem 1200 -mode ALL -w 20 -h 20 –nonsym –minhitrate 0.995 – maxfalsealarm 0.5 –weighttrimming 0.95
với,
-data data/cascade : đường dẫn chứa các file thông số ngõ ra được cập nhật(false-alarm , hit-rate) của từng tầng huấn luyện (cascade).
-vec data/vector.vec : đường dẫn chứa file vector.vec đã tạo ra ở trên
-bg negative/infofile.txt : đường dẫn đến file chứa các ảnh không tích cực
-npos 466 : số lượng ảnh tích cực (giống khai báo ở phần trên)
-nneg 3125 : số lượng ảnh không tích cực (thông tin các file này được chứa trong file infofile.txt)
-nstages 24 : số lượng giai đoạn (stage) huấn luyện
-mem 1200 : dung lượng bộ nhớ cần cho quá trình huấn luyện (MB). Máy tính có bộ nhớ RAM càng nhiều thì quá trình huấn luyện xảy ra càng nhanh.
-nonsym : khai báo các đối tượng huấn luyện là không có tính đối xứng
–minhitrate 0.995 –maxfalsealarm 0.5 –weighttrimming 0.95: là các thông số quy chuẩn về độ trùng khít (phù hợp – hit rate) tối thiểu, ngưỡng sai (false alarm) và trọng số huấn luyện (Hình 3.2). Các giá trị trên là mặc định, hoặc có thể thay đổi tùy theo “độ khó” của đối tượng và số lượng ảnh mẫu.
Ghi chú: các lệnh trên được chạy trong môi trường hệ điều hành Windows và được đóng gói trong các file thực thi lệnh định dạng “.bat” nhằm dễ chỉnh sửa và thao tác.
Theo khuyến cáo của Intel [7], máy tính được dùng cho công tác huấn luyện này đòi hỏi phải có cấu hình mạnh. Vì vậy, học viên thực hiện xây dựng cơ sở dữ liệu sử dụng máy tính để bàn với CPU Intel Core 2 Duo E6320 2 x 1.86 GHz, RAM 2GB, HDD 80GB. Với cấu hình máy này thì mỗi một cơ sở dữ liệu (mỗi một file .xml) được tạo thành tiêu tốn thời gian liên tục hơn 42 tiếng đồng hồ (gần 2 ngày).
Cơ sở dữ liệu định dạng file .xml sau khi xây dựng có dạng như trong Bảng 3.2. Bảng 3.2: Cấu trúc file cơ sở dữ liệu đặc trưng của đối tượng xe hơi cá nhân
<?xml version="1.0"?> <opencv_storage> <car_front_back type_id="opencv-haar-classifier"> <size> 20 20</size> <stages> <_> <!-- stage 0 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 11 11 1 8 -1.</_> <_> 11 11 1 4 2.</_></rects> <tilted>1</tilted></feature> <threshold>2.1753159817308187e-003</threshold>
<_> <left_val>-0.7307692170143127</left_val> <right_val>0.4051173031330109</right_val></_></_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 12 7 12 1 -1.</_> <_> 12 7 6 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>3.6706560058519244e-004</threshold> <left_val>-0.7052155137062073</left_val> <right_val>0.2407480031251907</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> … …