Thuật toán AdaBoost trong mô hình Cascade sử dụng Boosting cho bộ

Một phần của tài liệu Nhận dạng cử chỉ bàn tay ứng dụng trong điều khiển thiết bị điện gia dụng (Trang 35 - 39)

nhận dạng cử chỉ:

Với 14 loại đặc trƣng sử dụng và với kích thƣớc mẫu positive là 24x24, tập đặc trƣng sẽ có khoảng 140.000 đặc trƣng. Tuy nhiên, không phải đặc trƣng nào cũng thực hiện tốt việc phân loại mà chỉ có một số lƣợng nhỏ trong số 140.000 đặc

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

trƣng này là thực sự hữu dụng. Nhiệm vụ của bộ phân loại là phải tìm ra đƣợc các đặc trƣng này.

Mỗi bộ phân loại yếu gồm có 1 đặc trƣng và 1 ngƣỡng, ngƣỡng này chính là giá trị của một mẫu cụ thể đƣợc cho bởi đặc trƣng này. Vấn đề của thuật toán là phải tìm đƣợc mẫu nào dùng làm ngƣỡng. Nhƣ vậy, với N mẫu và M đặc trƣng thì số bộ phân loại yếu có thể có là M×N, tức là với 2.000 mẫu cho một cử chỉ và 140.000 đặc trƣng thì hệ thống sẽ phải chọn đƣợc 1 bộ phân loại yếu trong số 140.000× 2.000 = 280.000.000 bộ phân loại yếu trong mỗi vòng lặp boosting.

AdaBoost đƣợc thiết kế để có thể chọn nhanh các đặc trƣng, cũng là chọn nhanh các bộ phân loại yếu. Thuật toán sử dụng ở đây là Gentle AdaBoost [15], một biến thể của AdaBoost. Gentle AdaBoost để xây dựng bộ nhận dạng cho 1 cử chỉ nhƣ sau :

Cho một tập huấn luyện gồm n mẫu có đánh dấu , , …,

với là vector đặc trƣng và

là nhãn của mẫu (1 ứng với object, -1 ứng với background).

Chọn trƣớc min detection rate (tỉ lệ nhận dạng đúng tối thiểu) và max false alarm (tỉ lệ nhận dạng sai tối đa).

Xây dựng tập đặc trƣng và tính toán các bảng Intergral Image cho tất cả các mẫu trong tập huấn luyện.

Khởi tạo trọng số ban đầu cho tất cả các mẫu :

Xây dựng T bộ phân loại yếu. For t = 1, ..., T

o Với mỗi đặc trƣng trong vector đặc trƣng, xây dựng một bộ phân loại yếu với ngƣỡng và lỗi :

o Từ các đã có, chọn ra có nhỏ nhất, ta đƣợc :

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

với :

Bộ nhận dạng :

với :

Mỗi bộ phân loại yếu sẽ đƣợc chọn bằng cách tính giá trị của từng đặc trƣng cho tất cả các mẫu trong tập huấn luyện và sắp xếp các mẫu theo thứ tự tăng dần của giá trị này :

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Đặc trƣng đƣợc chọn là đặc trƣng thực hiện phân đôi tập huấn luyện với lỗi

là nhỏ nhất.

Sau mỗi vòng lặp của boosting, ta xây dựng thêm đƣợc một bộ phân loại yếu, ta có thể xây dựng đƣợc một bộ phân loại mạnh mới từ sự kết hợp của các bộ phân loại yếu có đƣợc cho tới lần boost hiện tại :

Giá trị ngƣỡng đƣợc chọn nhờ vào giá trị min detection rate, giá trị này do chúng ta xác lập khi bắt đầu quá trình huấn luyện. Bằng cách sắp xếp các mẫu positive theo tăng dần :

Hình 2. 11 - Các ngưỡng θ

Min detection rate đƣợc chọn là 0,995, nghĩa là tỉ lệ nhận dạng đúng các mẫu positive không đƣợc thấp hơn 99.5%. Do đó, phần tử đƣợc chọn làm ngƣỡng là mẫu đầu tiên trong danh sách sắp tăng. Giá trị ngƣỡng này đảm bảo có ít nhất 99.5% các mẫu positive sẽ có . Nếu ta chọn min detection rate là 0.5, khi đó (1- min detection rate)*số_mẫu = 4, phần tử thứ 4 của danh

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

sách các mẫu sẽ đƣợc chọn làm ngƣỡng, nhƣ vậy sẽ chỉ có 4 mẫu trong số 8 mẫu positive là đƣợc nhận dạng đúng.

Ngƣỡng có ý nghĩa rất quan trọng, ngƣỡng càng nhỏ thì tỉ lệ nhận dạng đúng sẽ càng cao nhƣng tỉ lệ nhận dạng sai cũng tăng theo và ngƣợc lại. Sau khi có đƣợc

Một phần của tài liệu Nhận dạng cử chỉ bàn tay ứng dụng trong điều khiển thiết bị điện gia dụng (Trang 35 - 39)