Chức năng chương trình.

Một phần của tài liệu Extract face sequences from video (Trang 26 - 28)

Chương trình gồm có 3 chức năng chính:

 Chức năng 1: nhận dạng trực tiếp từ camera.

 Chức năng 2: gom nhóm từ video.

 Chức năng 3: gom nhóm trực tiếp từ camera.

Chức năng 1: nhận dạng trực tiếp từ camera:

• Bước 1: thiết lập dữ liệu mẫu cho chương trình

o void defindFaceTrainFormCamera () Thực hiện xác định ảnh khuôn mặt mẫu.

o Với mỗi ảnh mẫu sẽ được đặt tên theo thứ tự ảnh khuôn mặt được nhận biết.

• Bước 2: Nhận dạng ảnh từ camera:

o showCameraRecogniton ();thực hiện việc nhận dạng ảnh trực tiếp từ camera:

 chứa hàm int defindFaceTrainFormCamera () ở bước 1

 chưa hàm void learn() để phân tích dữ liệu mẫu

 Chứa hàm int findNearestNeighbor(float * projectedTestFace, float *pConfidence) để xác định ảnh gần đúng nhât trong dữ liệu mẫu và trả về độ chính xác tương ứng.

o Với mỗi ảnh cần xác định sẽ tính toán đưa ra giá trị dự đoán, sau đó xác định ảnh mẫu gần đúng nhất và hiển thị kết quả cùng độ chính xác đạt được.

Chức năng 2 :gom nhóm từ video.

• Bước 1: Thực hiện dọc video:

o void createFaceAndImageFormVideo(char* fileNameVideo); đọc dữ liệu từ file video truyền vào, trả về danh sách các ảnh(frame) đọc từ video có chưa mặt người, và danh sách các ảnh khuôn mặt người trong toàn video.

o initGroup (); Khởi tạo ban đầu có ít nhất 3 nhóm để phân biệt.

o Ban đầu mỗi nhóm chỉ có 1 ảnh duy nhất, 3 ảnh khuôn mặt đầu tiên sẽ tương ứng với 3 nhóm đầu tiên(có thể 3 ảnh khuôn mặt có thể là 1 người).

• Bước 3: Thực hiện việc nhóm ảnh:

o void groupFace(); gom nhóm các ảnh khuôn mặt lại với nhau, thực hiện xác định ảnh khuôn mặt tương ứng với ảnh frame của video.

o Thực hiện trình tự xử lý giống bước 2 của chức năng 1, tuy nhiên với mỗi bức ảnh sau khi xác định được ảnh mẫu gần đúng và độ chính xác tương ứng thì sẽ được so sánh với độ chính xác Tngưỡng .Nếu độ chính xác >Tngưỡng thì xác nhận ảnh vào nhóm với ảnh gần nhất tìm được, nếu không thì xác nhận ảnh này là thuộc 1 nhóm mới, thêm ảnh này vào bộ dữ liệu mẫu và tính toán lại dữ liệu mẫu.

• Bước 4: thực hiện show các bức ảnh (frame) có khuôn mặt trong cùng 1 nhóm :

o Với mỗi nhóm ta thực hiện void initShowGroup() để show ảnh từng nhóm theo chỉ số, trả về số ảnh có trong nhóm.

Chức năng 3 :gom nhóm từ camera.

Giống như chức năng 2; chỉ khác ở bước thứ 1: thay vì đọc các ảnh (frame) từ video ta đọc các ảnh(frame) trực tiếp thu từ camera.

Một phần của tài liệu Extract face sequences from video (Trang 26 - 28)