Cấu trúc và ứng dụng của OpenCV

Một phần của tài liệu THỰC TẬP CƠ SỞ CHUYÊN NGÀNH NGHIÊN CỨU THƯ VIỆN OpenCV ỨNG DỤNG NHẬN DẠNG KHUÔN MẶT NGƯỜI (Trang 27 - 29)

Cấu trúc của OpenCV gồm có 5 phần chính:

Hình 1.19: Cấu trúc cơ bản của OpenCV

Trong đó:

- Phần CV & CVAUX bao gồm các thư viện cơ bản về xử lý hình ảnh và các giải thuật máy tính. Phần này sẽ thực hiện hỗ trợ các chức năng cấp cao (nhận dạng đối tượng, hiệu chỉnh Camera/ Webcam), xử lý, phân tích các chuyển động. Trong đó thì nội dụng CV sẽ là các phương thức, hàm xử đã ổn định, còn CVAUX sẽ gồm các chức năng thử nghiệm để đưa vào phiên bản kế tiếp. Phần CVAUX này bao gồm các thư viện cho việc phát hiện, theo dõi và nhận dạng đối tượng (khuôn mặt, mắt, …)

28

- Phần MLL là bộ thư viện về các thuật toán học máy, bao gồm nhiều bộ phân cụm và phân loại thống kê.

- Phần HighGUI chứa đựng những thủ tục vào ra, các chức năng về lưu trữ cũng như đọc các file ảnh và video.

- Phần CxCore dùng để tổ chức dữ liệu cơ sở, thực hiện các thuật toán (các phép tính – các phép tính ma trận , hỗ trợ tài liệu XML, các thao tác cơ bản, vẽ, chú thích.

- Phần cuối cùng IPP là module thương mại cung cấp các đoạn mã mở rộng đã được tối ưu hóa cho các phần cứng của Intels giúp tăng tốc trong xử lý các ứng dụng lớn.

Đi kèm gói thư viện là tài liệu hướng dẫn thể hiện các chức năng của OpenCV, các chức năng tập trung vào thu nhập, xử lý ảnh và các thuật toán phân tích dữ liệu ảnh bào gồm:

Truy xuất ảnh và phim: đọc ảnh số từ camera, từ file, ghi ảnh và phim;

Cấu trúc dữ liệu ảnh số và các dữ liệu hỗ trợ cần thiết: ma trận, vector, chuỗi, xâu và cây.

Xử lý ảnh căn bản: tìm viền, nhận chuyện động, thay đổi trong không gian 3D, đối chiếu bản mẫu, xấp xỉ các đơn vị hình học cơ sở- mặt phẳng, đa giác, ellipse, đường thẳng.

Phân tích dữ liệu ảnh: nhận dạng đối tượng- thực tế, theo dõi các chi tiết và phân tích chuyển động.

Tạo giao diện đơn giản: hiện thị ảnh, thao tác bàn phím, chuột, thanh trượt để chỉnh thông số (nếu cần thiết các bạn có thể tự tạo thêm các phím điều khiển thông qua thao tác chuột, hoặc tích hợp thêm các thư viện về giao diện như wxWidgets).

Chức năng vẽ, chú thích lên ảnh: chức năng này thường áp dụng cho các bài toán nhận dạng người trong ảnh. Hiện nay thấy rõ nhất là các chức năng trên ứng dụng mạng xã hội Facebook.

29

Hình 1.20: Các khía cạnh và ứng dụng của OpenCV

Hình trên cho thấy một vài ví dụ về ứng dụng của OpenCV như nhận dạng khuôn mặt, nhận dạng viền, nhận dạng biên.

Một phần của tài liệu THỰC TẬP CƠ SỞ CHUYÊN NGÀNH NGHIÊN CỨU THƯ VIỆN OpenCV ỨNG DỤNG NHẬN DẠNG KHUÔN MẶT NGƯỜI (Trang 27 - 29)