Search…

Tổng Quan về OpenCV - Open Source Computer Vision

07/11/20203 min read
OpenCV (Open Source Computer Vision) là một thư viện mã nguồn mở, OpenCV được phát hành theo giấy phép BSD, do đó nó hoàn toàn miễn phí cho cả học thuật và thương mại.

OpenCV (Open Source Computer Vision) là 1 thư viện mã nguồn mở. OpenCV được phát hành theo giấy phép BSD, do đó nó hoàn toàn miễn phí cho cả học thuật và thương mại.

  • OpenCV có các interface C++, C, Python, Java và hỗ trợ Windows, Linux, macOS, iOS và Android.
  • OpenCV được thiết kế để tính toán hiệu quả và với sự tập trung nhiều vào các ứng dụng thời gian thực. Được viết bằng tối ưu hóa C/C++, thư viện có thể tận dụng lợi thế của xử lý đa lõi.
  • Được sử dụng trên khắp thế giới, OpenCV có cộng đồng hơn 47 nghìn người dùng và số lượng download vượt quá 6 triệu lần.
  • Phạm vi sử dụng từ nghệ thuật tương tác, cho đến lĩnh vực khai thác mỏ, bản đồ trên web hoặc công nghệ robot.

Trang chủ chính thức của OpenCV: https://opencv.org/

Các module của OpenCV

Sau khi tải và giải nén OpenCV, trong source code của OpenCV có các folder module chứa tất các module của thư viện OpenCV và mỗi module này sẽ được build dưới dạng thư viện liên kết tĩnh và thư viện liên kết động để sử dụng trong project, mỗi module sẽ có 1 chức năng riêng biệt.

OpenCV modules
OpenCV modules

Các module OpenCV trong project Android

Có khá nhiều module trong thư viện này, trong đó có những module được sử dụng thường xuyên.

Module OpenCV trong Android.
Các module OpenCV trong project Android

core

core là module chứa các cấu trúc, class cơ bản mà OpenCV sẽ sử dụng trong việc lưu trữ và xử lý hình ảnh như Mat, Scale, Point, Vec, ... và các phương thức cơ bản sử dụng cho các module khác.

imgproc

imgproc là module xử lý hình ảnh của OpenCV bao gồm các bộ lọc (filter) linear, non-linear và các phép biến đổi hình học (transformation) như resize hoặc các phép biến đổi cơ bản (affine transformation), chuyển đổi hệ máy và các thuật toán liên quan đến biểu đồ (histogram) của hình ảnh.

highgui

highgui là module cho phép tương tác với người dùng trên UI (User Interface) như hiển thị hình ảnh, video capture.

features2d

features2d là module tìm các đặc trưng (feature) của hình ảnh, trong module có hiện thực các thuật toán rút trích đặc trưng như PCA, ...

calib3d

calib3d là module hiệu chuẩn máy ảnh và xây dựng lại 3D.

objdetect

objdetect là module cho việc phát hiện các đối tượng như khuôn mặt, đôi mắt, cốc, người, ô tô, ... trong hình ảnh. Các thuật toán được sử dụng trong module này là Haar-Like Features.

ml

ml là module chứa các thuật toán về Machine Learning phục vụ cho các bài toàn phân lớp (Classification) và bài toán gom cụm (Clustering), ví dụ như thuật toán SVM (Support Vector Machine), ANN, …

video

video là module phân tích video gồm ước lượng chuyển động, trừ nền, và các thuật toán theo dõi đối tượng (object tracking).

IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024