Giới thiệu về OpenCV
1. Giới thiệu về OpenCV
OpenCV là mã nguồn mở của
Intel, nó là một thư viện có khả năng nhúng vào trong các chương trình có khả
năng nhận diện hình ảnh của máy tính .Nó bao gồm khả năng tiên tiến như phát
hiện khuôn mặt, theo dõi khuôn mặt, nhận diện khuôn mặt….. Ngoài ra, nó
cung cấp rất nhiều các thuật toán xử lý ảnh thông qua các hàm API.
1.1.
Tổng quan OpenCV
Intel
phát hành phiên bản đầu tiên của OpenCV vào năm 1999. Ban đầu, nó yêu cầu
như là thư viện xử lý hình ảnh của
Intel. Nhưng các vấn đề phụ thuộc đã được gỡ bỏ và bây giờ bạn có thể sử
dụng OpenCV là một thư viện độc lập.
OpenCV hỗ trợ đa nền
tảng. Nó hỗ trợ cả Windows và Linux, và gần đây hơn là MacOSX. Với
giao diện của nó là nền tảng độc lập.
1.1.1.Các tính năng
Dưới đây là một bản tóm tắt của các loại chức
năng quan trọng trong OpenCV, phiên bản 1.0:
Sử dụng các interface này, bạn có thể
thử nghiệm nhiều tiêu chuẩn thuật toán tầm nhìn máy tính mà không cần phải code chúng. Bao gồm các
việc như : phát hiện cạnh, đường, và phát hiện góc, hình elip, kim tự tháp ….và
nhiều hơn nữa .
·
High-level
computer-vision modules
OpenCV bao gồm một số khả năng cao
cấp. Ngoài việc phát hiện khuôn mặt, nhận diện, và theo dõi, nó còn bao
gồm dòng chảy quang học (bằng cách sử dụng máy ảnh chuyển động để xác định cấu
trúc 3D), hiệu chuẩn máy ảnh.
· AI and machine-learning methods.
Ứng dụng tầm nhìn máy tính thường đòi
hỏi máy học hoặc sử dụng phương thức AI khác. Một số trong số này là có
sẵn trong gói phần mềm OpenCV's Machine Learning
·
Image sampling and
view transformations.
Thường hữu ích để xử lý một nhóm các
điểm ảnh như một khối . OpenCV bao gồm giao diện cho tiểu vùng trích xuất
hình ảnh, lấy mẫu ngẫu nhiên, thay đổi kích thước, cong vênh, xoay, và các hiệu
ứng quan điểm áp dụng .
· Methods for creating and analyzing binary (two-valued)
images
Ảnh nhị phân thường được sử dụng trong
các hệ thống kiểm tra mà quét phát hiện các khuyết tật hoặc trong các bộ đếm. Ảnh
nhị phân cũng thuận tiện khi định vị trí một đối tượng để nắm bắt .
· Methods for computing 3D information.
Các chức năng này rất hữu ích để lập
bản đồ và nội địa hoá hoặc với nhiều quan góc nhìn từ một máy ảnh.
· Math routines for image processing, computer vision,
and image interpretation.
OpenCV bao gồm các thuật toán toán học
thường được sử dụng trong đại số tuyến tính, thống kê, và hình học tính toán.
· Graphics.
Các interface này cho phép bạn viết
văn bản và vẽ trên hình ảnh. Ngoài ra, các chức năng này rất hữu ích cho
việc ghi nhãn và đánh dấu . Ví dụ, nếu bạn viết một chương trình phát hiện
đối tượng, nó rất hữu ích để nhãn hình ảnh với kích cỡ và vị trí của họ.
·
GUI methods
OpenCV bao gồm các interface windown riêng của nó. Trong khi đây là
những hạn chế so với những gì có thể được thực hiện trên các nền tảng khác, họ
cung cấp một đơn giản, đa nền tảng API để hiển thị hình ảnh, chấp nhận đầu vào
người dùng thông qua con chuột hoặc bàn phím, và thực hiện kiểm soát thanh
trượt .
·
Datastructures and
algorithms
Với các interface, bạn có thể thực hiệu
quả hơn các việc như: tìm kiếm, lưu, và thao tác các danh sách lớn, bộ sưu, đồ
thị và cây .
·
Data persistence
Những phương pháp này cung cấp giao
diện thuận tiện để lưu trữ các loại dữ liệu vào ổ lưu trữ và lấy chúng sau này
.
1.1.2.Tổ chức
Chức năng OpenCV được chứa trong một số module:
·
CXCORE chứa các định nghĩa kiểu dữ liệu cơ
bản. Ví dụ, cấu trúc dữ liệu điểm cho hình ảnh, hình chữ nhật và được quy
định tại cxtypes.h.
·
CV bao gồm xử lý hình ảnh và các phương pháp
hiệu chỉnh máy ảnh. Các chức năng tính toán hình học cũng nằm ở đây.
·
CVAUX được mô tả trong tài liệu hướng dẫn của
OpenCV có chứa mã thử nghiệm và thực nghiệm.Tuy nhiên, các giao diện đơn giản
nhất để nhận dạng khuôn mặt trong mô-đun này.
·
ML chứa machine-learning interfaces.
·
Các chức năng còn lại được chứa trong HighGUI
và CVCAM. Cả hai đều nằm trong một thư mục có tên là "otherlibs. Nó
chứa các cửa sổ đa nền tảng, đa chức năng.
·
CVCAM chứa các giao diện để truy cập video
thông qua DirectX trên nền tảng Windows 32-bit. Tuy nhiên, HighGUI cũng
chứa các giao diện video.
Giới thiệu về OpenCV
Reviewed by Jacky
on
tháng 10 23, 2017
Rating:
Không có nhận xét nào: