2.4.1 Giới thiệu về Python
- Python là một ngôn ngữ lập trình mã nguồn mở, đa nền tảng và dễ học, nó là một ngôn ngữ lập trình được sử dụng phổ biến rộng rãi ngày nay. Là loại ngôn ngữ phát triển nhiều loại ứng dụng, phần mềm khác nhau như chạy chương trình trên desktop, server, lập trình web… Nó cũng là loại ngôn ngữ ưa thích trong xây dựng các chương trình trí tuệ nhân tạo, có cả machine learning. Là ngôn ngữ mà chạy được nhiều trên hệ điều hành khác nhau: MAC OS, MS -DOS, Windows…
2.4.2 Đặc điểm nổi bậc của Python
- Python có hình thức đơn giản, cú pháp ngắn gọn, sử dụng một số lượng ít các từ khóa, mã lệnh (source code hay code) không quá phức tạp.
- Các tính năng nổi bật của Python:
● Phát triển trang web (phía máy chủ).
● Phát triển phần mềm.
● Kịch bản hệ thống.
● Python có thể được sử dụng với các phần mềm nhằm tạo quy tình công việc.
● Python có thể được được sử dụng để xử lý dữ liệu lớn và thực hiện các phép toán phức tạp.
● Python có thể kết nối với các hệ thống cơ sở dữ liệu. 2.5 Thư viện OpenCV
2.5.1 Giới thiệu và những đặc điểm của thư viện OpenCV
- OpenCV là một thư viện mã nguồn mở, được sử dụng miễn phí. Ứng dụng nhiều trong lĩnh vực thị giác máy tính, xử lý ảnh hay máy học (machine learning). Nhiều ứng dụng cụ thể như: Nhận dạng ảnh, phục hồi ảnh/ video, thực tế ảo…
- Thư viện được lập trình trên nhiều ngôn ngữ: C/C++, Python, Java… Và hỗ trợ trên nhiều hệ điều hành: Windows, Linux, Android, iOS hay Mac OS…
- Thư viện OpenCV là thư viện chuyên xử lý ảnh cho nên nó hỗ trợ rất nhiều hệ màu như: RGB, HSV,… và nó cũng cung sẵn cho chúng ta hàm cv2.cvtColor để thực hiện việc chuyển đổi các hệ màu này.
- Ở đề tài lần này, thư viện OpenCV được chạy trên Python và được dùng làm thư viện chính trong việc xử lý ảnh đầu vào và nhận dạng ảnh.
- Xử lý ảnh có thể lọc nhiễu, chuyển đổi ảnh.
- Đối với hình ảnh, chúng ta có thể đọc, lưu và ghi chúng. Về video cũng tương tự như ảnh (đọc và ghi video).
- Thực hiện nhận dạng đặc điểm của hình dạng đối tượng trong ảnh.
- Phát hiện đối tượng được xác định cho trước như: khuôn mặt, ô tô và các vật thể khác trong ảnh hoặc video.
- Phân tích video, ước lượng chuyển động của nó, trừ nền ra và theo dõi các đối tượng trong video.