1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phát hiện đối tượng trong ảnh, video sử dụng công cụ học máy HaarTraining

15 1,2K 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 576,84 KB

Nội dung

Tổng quan Opencv HaartrainingCơ sở lý thuyếtCấu trúc bộ lọc phân tầngBoostingĐặc trưng HaarThuật toán AdaBoostTiến hành thực tếChuẩn bịTạo mẫuHuấn luyệnThử nghiệmOpenCV = Open Source Computer Vision Là thư viện mã nguồn mở của Intel viết cho xử lý ảnh, với hơn 500 thuật toán dành cho việc xử lý thị giác máy thời gian thực (real time computer vision) Hỗ trợ ngôn ngữ C++ và PythonThư viện OpenCV cung cấp phương pháp đào tạo, phát hiện đối tượng bằng mô hình Cascade of Boosted Classifiers dựa trên tính năng Haarlike Kết quả việc đào tạo là file dạng xml

Trang 1

Đồ án

Phát hiện đối tượng trong ảnh/video sử dụng công cụ

học máy HaarTraining

Giáo viên hướng

Sinh viên thực

Trần Hoàng Nam

Trang 2

Mục lục

 Tổng quan Opencv Haartraining

 Cơ sở lý thuyết

 Cấu trúc bộ lọc phân tầng

 Boosting

 Đặc trưng Haar

 Thuật toán AdaBoost

 Tiến hành thực tế

 Chuẩn bị

 Tạo mẫu

 Huấn luyện

 Thử nghiệm

Trang 3

Tổng quan Opencv

OpenCV = Open Source Computer Vision

 Là thư viện mã nguồn mở - của Intel viết cho xử lý ảnh, với hơn 500 thuật toán dành cho việc xử lý thị giác máy thời gian thực (real time computer vision)

 Hỗ trợ ngôn ngữ C++ và Python

 Thư viện OpenCV cung cấp phương pháp đào tạo, phát hiện đối tượng bằng mô hình Cascade of Boosted Classifiers dựa trên tính năng Haar-like

 Kết quả việc đào tạo là file dạng xml

Trang 4

Cơ sở lý thuyết

 Cascade of Boosted Classifiers là một cấu trúc cây mà ở mỗi tầng

là một bộ phân loại (classifier), được xây dựng bằng thuật toán

AdaBoost

 Mô hình Cascade of Boosted Classifiers được sử dụng dựa trên

Haar-like Feature – là một loại đặc trưng thường được dùng cho bài toán nhận dạng trên ảnh

 Boosting là kỹ thuật dùng để tăng độ chính xác cho các thuật toán

học (Learning algorithm) bằng cách kết hợp các bộ phân loại yếu (weak classifiers) thành một bộ phân loại mạnh (strong

classifier) Trong đó, weak classifier là các bộ phân loại đơn giản chỉ cần có độ chính xác trên 50%

Trang 5

Cơ cở lý thuyết

• Haar Feature là một loại đặc trưng thường được dùng cho bài toán nhận dạng trên ảnh, được xây dựng từ các hình chữ nhật có kích thước bằng nhau, dùng để tính độ chênh lệch giữa các giá trị điểm ảnh trong các vùng

kề nhau.

 4 đặc trưng Haar-like cơ bản

 Đặc trưng cạnh

 Đặc trưng đường

 Đặc trưng quanh tâm

 Giá trị của đặc trưng Haar-like = sự chênh lệch giữa tổng của các pixel

của các vùng đen và các vùng trắng như trong công thức sau:

f(x) = Tổng vùng đen (các mức xám của pixel) - Tổng vùng trắng (các mức xám của pixel)

 Tuy nhiên, khối lượng tính toán lớn  mất nhiều thời gian

Trang 6

Đặc trưng Haar-like

 Viola và Jones đã đưa ra khái niệm Integral Image để tính toán

nhanh hơn cho các đặc trưng cơ bản

 Integral Image: là một mảng 2 chiều với kích thước bằng với kích của

ảnh cần tính các đặc trưng Haar-like

 Mỗi phần tử của mảng này được tính bằng cách tính tổng

của điểm ảnh phía trên (dòng-1) và bên trái (cột-1) của nó

 Tính toán dựa trên phép cộng  cải thiện tốc độ

 Sau khi đã tính được Integral Image, dễ dàng tính được

gía trị mức xám trên vùng nào đó:

 Lienhart kế thừa Integral Image (gọi là SAT – Summed Area Table) và

đưa ra thêm khái niệm RSAT – Rotated Summed Area Table để tính toán nhanh hơn cho các đặc trưng xoay 1 góc 45º

Trang 7

Cơ sở lý thuyết

lập ngưỡng

 Adaboost (Adaptive Boost

- Freund và Schapire,

1995) được cải tiến từ

boosting, sử dụng thêm khái niệm trọng số

(weight) để đánh dấu các mẫu khó nhận dạng ở

weak classifier (WC)

 Sau mỗi WC, tăng trọng

số ở mẫu sai và ngược lại.

 Các WC sau sẽ tập trung

vào các mẫu chưa tốt.

 Kết hợp các WC ở mức độ

tốt nào đó  Strong

classifier

Trang 8

Cơ sở lý thuyết

 Tính Integral Image để xác

định nhanh giá trị mức xám

của 1 vùng trên ảnh

ước lượng đặc trưng

Adaboost  loại bỏ nhanh các

đặc trưng không có khả năng

quyết định kết quả cho một

đặc trưng Haar-like

 Trong quá trình xác định, mỗi vùng ảnh con sẽ được kiểm tra với các đặc trưng trong chuỗi các đặc trưng Haar-like

 Nếu có một đặc trưng Haar-like nào cho ra kết quả thì các đặc trưng khác không cần xét nữa

 Thứ tự xét các đặc trưng trong chuỗi các đặc trưng Haar-like sẽ được dựa vào trọng số và số lần xuất hiện của các đặc trưng Haar-like

Trang 9

Cơ sở lý thuyết

• Trong huấn luyện, tốc độ xử lý còn tùy vào mức độ đơn giản của

các mẫu được đưa vào

• Mô hình Cascade of Classifiers được xây dựng chính là nhằm rút ngắn thời gian xử lý, giảm thiểu false alarm cho bộ phân loại

• Mô hình là một cây Cascade (Cascade tree) bao gồm nhiều stage

(hay còn gọi là layer), mỗi stage của cây sẽ là một stage

classifier

• Một mẫu để được phân loại là đối tượng thì nó cần phải đi qua hết tất cả các stages của cây

• Nhờ sự kết hợp các stage classifiers này lại sẽ giúp bộ phân loại

có false alarm thấp

Trang 10

Tiến hành thực tế - Huấn luyện nhận dạng xe máy

 Chuẩn bị:

 Các mẫu dương (Positive) chứa đối tượng cần nhận dạng và file mô tả ảnh

Positive (đánh dấu tọa độ của đối tượng trong ảnh gốc)

cây cối, mặt người Và file mô tả ảnh Negative

 Trong quá trình huấn luyện, các weak classifiers sẽ học từ các mẫu positive trong

tập huấn luyện và các mẫu negative là các vùng ảnh (sub window) trích ra từ các mẫu Negative trong tập huấn luyện

C:/OpenCV2.2/bin/negative>dir /b /s >Negative.txt

Trang 11

Tiến hành thực tế - Huấn luyện nhận dạng xe máy

Positive> –vec <File vector> –w <rộng> –h

<cao> -num <số mẫu có>

Kiểm tra: opencv_createsamples –vec <File

vector> -show

Opencv_createSamples

có chức năng tạo file dữ

liệu cho các mẫu (positive

lẫn negative) từ các file

ảnh (bmp, jpg ), đồng

thời cho phép phát sinh

thêm các ảnh từ một hay

nhiều ảnh ban đầu bằng

cách áp dụng các phép xử

lý ảnh như rotate,

dilate, lên các ảnh này

Trang 12

Tiến hành thực tế - Huấn luyện nhận dạng xe máy

haartraining -data <thư mục Cascade> -vec <File vector> -bg <File mô

tả ảnh Negative> nstages <số giai đoạn> minhitrate <0 ~1>

-maxfalsealarm <0 ~1> -npos <số mẫu Positive> -nneg <Số mẫu

Negative> -w <rộng> -h <cao> -nonsym -mem <bộ nhớ được cấp>

Trang 13

Kết quả đạt được

rate rate Fail

Trang 14

Tiến hành thực tế - Huấn luyện nhận dạng xe máy

 File XML được tạo thành

sau khi huấn luyện có cấu

trúc như hình bên

Trang 15

 Cảm ơn thầy giáo và

các bạn đã quan tâm

theo dõi.

Ngày đăng: 11/06/2014, 17:09

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w