Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?... - B1: Bạn tải python trên trang python.org trên đó có tất cả các phiên bản phù hợp với hệ điều hành của bạn.. - B1: Bạn tải opencv tr
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Học phần Công cụ phát triển phần mềm
Đề tài : Tổng quan về open CV trong python để xây dựng ứng
dụng xử lí ảnh.
Giảng viên : Ths Nguyễn Thái Cường
Trang 2Mục Lục
Phần I : Tìm hiểu về OpenCV
1 Lịch sử phát triển OpenCV
2 OpenCV là gì?
3 Các ngôn ngữ để lập trình OpenCV
4 Cài đặt Python, OpenCV và OpenCV cho Python
Phần II : Ứng dụng của OpenCV
5 Ứng dụng và tính năng của OpenCV
6 Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Trang 3Phần I : Tìm hiểu về
OpenCV
1 Lịch Sử phát triển của OpenCV
- Chính thức ra mắt vào năm 1999
- Năm 2006, phiên bản đầu tiên - OpenCV 1.0 được phát hành
- Vào tháng 10/2009, phiên bản thứ hai - OpenCV 2 được phát hành
- Vào tháng 08/2012, OpenCV được vận hành bởi tổ chức phi lợi nhuận trên OpenCV.org
Trang 4Phần I : Tìm hiểu về
OpenCV
2 OpenCV là gì?
- OpenCV viết tắt cho Open Source Computer Vision Library
OpenCV là thư viện nguồn mở hàng đầu cho Computer Vision và
Machine Learning, và hiện có thêm tính năng tăng tốc GPU cho các hoạt động theo real-time
- OpenCV được viết bằng ngôn ngữ lập trình C++
Trang 5Phần I : Tìm hiểu về
OpenCV
3 Các ngôn ngữ để lập trình OpenCV
- Có nhiều ngôn ngữ hỗ trợ và mỗi ngôn ngữ có thế mạnh riêng, vậy thì tùy theo nhu cầu mà chọn ngôn ngữ phù hợp
1 C++ :
2 Python :
3 Android
4 Java
5 C#
Trang 6Phần I : Tìm hiểu về
OpenCV
4 Cài đặt Python, OpenCV và OpenCV cho Python
1 Cài đặt Python
- B1: Bạn tải python trên trang python.org trên đó có tất
cả các phiên bản phù hợp với hệ điều hành của bạn
- B2: Sau khi tải xong, click vào file vừa tải và tiến hành cài đặt, sau đó chúng ta bấm Install now
- B3: Sau khi cài đặt xong, bạn cũng có thể sử dụng Python bằng cách gõ python vào cửa sổ IDLE
Trang 7Phần I : Tìm hiểu về
OpenCV
4 Cài đặt Python, OpenCV và OpenCV cho Python
2 Cài đặt OpenCV
- B1: Bạn tải opencv trên trang opencv.org trên đó có tất cả các phiên bản phù hợp với hệ điều hành của bạn
- B2: Sau khi tải xong, click vào file vừa tải và tiến hành cài đặt, ví dụ chúng ta sẽ cài đặt OpenCV tại ổ E
- B3: Sau khi cài đặt xong, thư mục OpenCV sẽ xuất hiện tại
ổ E
Trang 8Phần I : Tìm hiểu về
OpenCV
4 Cài đặt Python, OpenCV và OpenCV cho Python
3 Cài đặt OpenCV cho Python
- B1: Bạn tải opencv trên trang opencv.org trên đó có tất cả các phiên bản phù hợp với hệ điều hành của bạn
- B2: Sau khi tải xong, click vào file vừa tải và tiến hành cài đặt,ví dụ chúng ta sẽ cài đặt OpenCV tại ổ E
- B3: Sau khi cài đặt xong, thư mục OpenCV sẽ xuất hiện tại ổ E
Trang 9Phần 2 : Ứng dụng của
OpenCV
I Ứng dụng và tính năng của OpenCV
1 Hệ thống nhận diện khuôn mặt
- Hệ thống nhận dạng khuôn mặt là một công nghệ có khả năng phù hợp với một khuôn mặt con người, thường được sử dụng để xác thực người dùng thông qua các dịch vụ xác minh ID , hoạt động bằng cách định rõ và đo đặc điểm khuôn mặt từ một hình ảnh nhất định
Trang 10Phần 2 : Ứng dụng của
OpenCV
I Ứng dụng và tính năng của OpenCV
2 Tương tác giữa con người và máy tính (HCI)
- Tương tác giữa con người với máy tính ( HCI ) nghiên cứu thiết
kế và sử dụng công nghệ máy tính , tập trung vào các giao diện giữa con người ( người dùng ) và máy tính Các nhà nghiên cứu trong lĩnh vực HCI quan sát cách con người tương tác với máy tính và thiết kế các công nghệ cho phép con người tương tác với máy tính theo những cách mới
Trang 11Phần 2 : Ứng dụng của
OpenCV
I Ứng dụng và tính năng của OpenCV
3 Người máy di động
- Một robot di động , là một con robot có khả năng di chuyển trong xung quanh (vận động) Người máy di động thường được coi là một lĩnh vực con của người máy và kỹ thuật thông tin)
Trang 12Phần 2 : Ứng dụng của
OpenCV
I Ứng dụng và tính năng của OpenCV
4 Phát hiện đối tượng
- Phát hiện đối tượng là một công nghệ máy tính liên quan đến thị
giác máy tính và xử lý hình ảnh nhằm phát hiện các trường hợp của các đối tượng ngữ nghĩa của con người
Trang 13Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 1: Cài đặt thư viện opencv vào máy tính
- Sử dụng đoạn lênh sau để cài đặt gói từ kho thư viện pip:
pip install opencv-python
- Để kiểm tra cài đặt thành công hay không ta thực hiện đoạn
lệnh sau để kiểm tra phiên bản của opencv-python:
import cv2 print(cv2._version_)
Trang 14Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 2: Hiện thị hình ảnh.
- Đầu tiên ta tạo một đối tượng chứa thông tin ảnh được tải lên từ file Sau đó hiện thị hình ảnh lên cửa sổ giao diện
- Ở đây digital-neon.jpg là file hình ảnh để test, hàm waitKey(0) là hàm chờ không cho thoát cửa sổ lập tức mà phải người dùng nhấn phím bất kỳ để thoát
Trang 15Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 3: Lấy kích thước ảnh
- Ở đây biến img là một đối tượng của Numpy array chứa giá trị màu của từng điểm ảnh trên các không gian màu khác nhau Lệnh img.shape để lấy ra kích thước của mảng này với h, w, d lần lượt là chiều cao, chiều rộng, độ sâu của bước ảnh Với ảnh có màu thì độ sau thường là 3, ảnh đen trắng là 1.
Trang 16Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 4: Lấy giá trị màu ở một điểm ảnh
- Đoạn lệnh sau lấy ra giá trị màu ở điểm ảnh tại vi trí 50, 50 với gốc tọa độ là điểm trên cùng bên trái hình ảnh
Trang 17Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 5: Cắt ảnh
- Đoạn lệnh sau cắt ảnh có tọa độ điểm trên cùng bên trái là (50, 60) và tọa độ điểm dưới cùng bên phải là (350, 360).
Trang 18Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 6: Thay đổi kích thước ảnh.
- Để thay đổi kích thước của ảnh trong opencv thì chúng ta sẽ dùng hàm resize Hàm này cần xác định rõ chiều cao, chiều rộng ảnh sau khi biến đổi Tuy nhiên ảnh sau khi thay đổi thường cùng tỷ lệ chiều cao, chiều rộng với ảnh gốc Đoạn lệnh sau biến đốiảnh gốc có chiều rộng 580 pixel sang ảnh có chiều rộng là 300 pixel.
Trang 19Phần 2 : Ứng dụng của
OpenCV
II Các bước xử lý ảnh cơ bản với OpenCV trong Pyhon?
Bước 7: Xoay ảnh.
- Để xoay được ảnh đầu tiên ta cần xác định gốc xoay và hướng xoay Sau khi xác định xong tiếp theo ta tính ma trận xoay bằng hàm getRotationMatrix2D trong opencv Cuối cùng ta nhân ma trận này với ma trận ảnh gốc ta được ảnh sau khi xoay.