1. Trang chủ
  2. » Công Nghệ Thông Tin

Đề tài opencv xử lý ảnh

19 197 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Các hệ thống camera giám sát an ninh đang ngày càng trở nên phổ biến trong các hộ gia đình. Nhưng ứng dụng thường chỉ giới hạn ở chức năng giám sát qua màn hình và lưu trữ dữ liệu video trong ổ đĩa. Để khai thác hiệu quả dữ liệu camera giám sát, nhóm nghiên cứu đã thực hiện xây dựng chương trình phát hiện xâm nhập và đưa ra báo động khi phát hiện xâm nhập. Phần mềm phát hiện xâm nhập sử dụng thư viện thị giác máy tính OpenCV trên hệ điều hành mã nguồn mở Linux Ubuntu cho phép chụp ảnh tại thời điểm xâm nhập, rung chuông báo động có xâm nhập. Đó là lý do nhóm chúng em chọn đề tài “Nghiên cứu về Xử lý ảnh trên Hệ điều hành mã nguồn mở sử dụng OpenCV”.Nhóm chúng em xin gửi lời cảm ơn tới thầy Phạm Đình Tân đã giúp đỡ chúng em trong suốt quá trình thực hiện đề tài. Nhưng với kiến thức và kinh nghiệm của chúng em còn hạn chế, báo cáo đề tài của chúng em chắc chắn còn nhiều thiếu sót. Chúng em rất mong được nhận sự góp ý của các thầy cô để đề tài của chúng em được hoàn thiện hơn.

TRƯỜNG ĐẠI HỌC BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU VỀ XỬ LÝ ẢNH TRÊN HỆ ĐIỀU HÀNH MÃ NGUỒN MỞ SỬ DỤNG OPENCV HÀ NỘI, 04/2018 TRƯỜNG ĐẠI HỌC BÁO CÁO TỔNG KẾT ĐỀ TÀI SINH VIÊN NGHIÊN CỨU VỀ XỬ LÝ ẢNH TRÊN HỆ ĐIỀU HÀNH MÃ NGUỒN MỞ SỬ DỤNG OPENCV Trưởng nhóm nghiên cứu: Các thành viên tham gia thực hiện: Người hướng dẫn: HÀ NỘI, 04/2018 Lời nói đầu Các hệ thống camera giám sát an ninh ngày trở nên phổ biến hộ gia đình Nhưng ứng dụng thường giới hạn chức giám sát qua hình lưu trữ liệu video ổ đĩa Để khai thác hiệu liệu camera giám sát, nhóm nghiên cứu thực xây dựng chương trình phát xâm nhập đưa báo động phát xâm nhập Phần mềm phát xâm nhập sử dụng thư viện thị giác máy tính OpenCV hệ điều hành mã nguồn mở Linux Ubuntu cho phép chụp ảnh thời điểm xâm nhập, rung chuông báo động có xâm nhập Đó lý nhóm chúng em chọn đề tài “Nghiên cứu Xử lý ảnh Hệ điều hành mã nguồn mở sử dụng OpenCV” Nhóm chúng em xin gửi lời cảm ơn tới thầy Phạm Đình Tân giúp đỡ chúng em suốt trình thực đề tài Nhưng với kiến thức kinh nghiệm chúng em hạn chế, báo cáo đề tài chúng em chắn nhiều thiếu sót Chúng em mong nhận góp ý thầy cô để đề tài chúng em hoàn thiện Chúng em xin chân thành cảm ơn! MỤC LỤC DANH MỤC HÌNH CHƯƠNG - TỔNG QUAN VỀ ĐỀ TÀI 1.1 Tổng quan thư viện thị giác máy tính OpenCV OpenCV (Open Source Computer Vision) thư viện mã nguồn mở thị giác máy với 500 hàm 2500 thuật toán tối ưu xử lý ảnh, vấn đề liên quan tới thị giác máy OpenCV chạy nhiền tảng khác nhau, bao gồm hệ điều hành Window, Linux, Mac, iOS, Android… Xử lý ảnh thị giác máy lĩnh vực mà ngày phát triển ứng dụng rộng rãi nhiều lĩnh vực khác nhờ vào phát triển ngày mạnh mẽ hệ thống máy tính, thuật tốn cơng trình nghiên cứu khác nhiều nhà khoa học giới Hình số : Ứng dụng thị giác máy tính cho robot Asimo robot Cheetah Ở Việt Nam, ứng dụng xử ảnh bước đầu triển khai số lĩnh vực lắp đặt hệ thống nhận dạng biển số xe bãi đổ xe, hệ thống nhận dạng vân tay chấm công công sở … môn học xử lý ảnh trường đại học xem môn học bắt buộc số ngành công nghệ thơng tin, điện tử viễn thơng …Tuy nhiên nhìn cách khách quan số lượng ứng dụng triển khai thực tế ỏi, lĩnh vực phát triển mạnh mẽ tương lai quan tâm cách nghiêm túc Phiên Ubuntu 16.04 LTS (hỗ trợ dài hạn tháng 04/2021) có tích hợp sẵn ngơn ngữ lập trình Python2 (2.7.12) phiên Python3 (3.5.2) Python2 ngơn ngữ lập trình mặc định Để thực thi Python2/Python3, sử dụng lệnh tương ứng python/python3 1.2 Lý chọn đề tài Xử lý ảnh thị giác máy lĩnh vực phát triển nhanh bùng nổ liệu Internet Theo thống kê năm 2018, Youtube có 1,3 tỷ người dùng tồn giới Mỗi phút có 300 video upload lên Youtube Mỗi ngày người dùng xem tỷ video Youtube Để thực phân tích, tìm kiếm video tự động sở liệu lớn cần sử dụng công cụ xử lý ảnh thị giác máy tính Nguồn liệu khổng lồ thu thập phát triển rộng rãi loại camera, đặc biệt camera gắn điện thoại thơng minh Hình số : Camera smart phone iPhone X Google Glass Kèm theo phát triển mạnh mẽ ngành công nghiệp Game, với card xử lý đồ họa tốc độ cao GPU Đây thiết bị chuyên dụng sử dụng để đào loại tiền ảo BitCoin Các card đồ họa GPU cho phép thực tốn phân tích xử lý ảnh video từ nguồn liệu lớn, kết hợp kỹ thuật học sâu (deep learning) Hình số : Ứng dụng thị giác máy tính tương tác người - máy Các kỹ thuật xử lý ảnh thị giác máy tính có ứng dụng rộng rãi lĩnh vực tương tác người-máy, giám sát an ninh, chăm sóc sức khỏe, thực ảo Các hệ thống camera giám sát ngày trở nên phổ biến hộ gia đình Nhưng ứng dụng thường giới hạn phạm vi giám sát qua hình lưu trữ liệu video ổ đĩa Hình số : Camera an ninh truyền thống với chức giám sát ghi hình Để khai thác hiệu liệu camera giám sát, nhóm nghiên cứu thực xây dựng chương trình phát xâm nhập đưa báo động Phần mềm phát xâm nhập sử dụng thư viện thị giác máy tính OpenCV hệ điều hành mã nguồn mở Linux Ubuntu cho phép xuất ảnh chụp thời điểm xâm nhập, rung chng báo động Hình số : Camera an ninh đề xuất với chức báo động có xâm nhập 1.3 Mục tiêu đề tài Xây dựng phần mềm phát xâm nhập dựa liệu từ camera giám sát sử dụng thư viện thị giác máy tính OpenCV Hệ điều hành mã nguồn mở Cụ thể bao gồm nội dung sau - Cài đặt, cấu hình OpenCV Hệ điều hành Linux Ubuntu - Xây dựng phần mềm phát xâm nhập dựa liệu từ camera giám sát - Đánh giá tính ứng dụng thực tiễn đề tài - Đề xuất hướng nghiên cứu mở rộng cho đề tài 1.4 Phương pháp nghiên cứu - Nghiên cứu lý thuyết xử lý ảnh thị giác máy tính - Tiến hành cài đặt, cấu hình OpenCV Hệ điều hành Linux Ubuntu 16.04 LTS - Xác định yêu cầu đặt cho hệ thống nhằm thiết kế hệ thống cho phù hợp với mục đích đặt - Lập trình xây dựng phần mềm phát xâm nhập dựa liệu từ camera giám sát sử dụng ngơn ngữ lập trình Python - Xây dựng chương trình theo yêu cầu đặt - Triển khai chương trình đánh giá kết đạt 1.5 Phạm vi nghiên cứu Xây dựng phần mềm phát xâm nhập sử dụng liệu từ camera giám sát.1.6 Đối tượng sử dụng hệ thống - Các hộ gia đình có lắp đặt camera giám sát CHƯƠNG – HƯỚNG DẪN CÀI ĐẶT OPENCV 2.1 Cài đặt gói phụ thuộc cho OpenCV Cập nhật Ubuntu $ sudo apt-get update Cài đặt chương trình quản lý gói cmake $ sudo apt-get install build-essential cmake pkg-config OpenCV thư viện xử lý ảnh thị giác máy tính, có khả mở file ảnh theo định dạng khác JPEG, PNG, TIFF, v.v Để thực việc này, OpenCV gọi thư viện nhập/xuất ảnh sau: $ sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev Cài đặt thư viện nhập xuất video: $ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev $ sudo apt-get install libxvidcore-dev libx264-dev 10 OpenCV sử dụng giao diện đồ họa người dùng highgui Mô-đun highgui sử dụng thư viện GTK: $ sudo apt-get install libgtk-3-dev Cài đặt thư viện tối ưu chức phép toán ma trận: $ sudo apt-get install libatlas-base-dev gfortran Cài đặt thư viện header cho Python 2.7 Python 3.5 $ sudo apt-get install python2.7-dev python3.5-dev 2.2 Cài đặt OpenCV Download mã nguồn OpenCV phiên OpenCV 3.4.1 (90MB) Di chuyển vào thư mục người dùng $ cd ~ Download mã nguồn OpenCV 3.4.1 $ wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.4.1.zip Giải nén opencv $ unzip opencv.zip Download thư viện hỗ trợ opencv_contrib $ wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip Giải nén opencv_contrib $ unzip opencv_contrib.zip 11 2.3 Cấu hình Python Cài đặt chương trình quản lý gói pip Python: $ cd ~ $ wget https://bootstrap.pypa.io/get-pip.py $ sudo python get-pip.py Cài đặt môi trường ảo Python: $ sudo pip install virtualenv virtualenvwrapper Xoá nhớ đệm: Mở file bashrc, thêm đoạn text sau: export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh Sau sửa file bashrc, cần tải lại: $ source ~/.bashrc Thiết lập môi trường ảo cho Python 2.7 $ mkvirtualenv cv -p python2 Kích hoạt mơi trường OpenCV lệnh: workon cv Cài đặt numpy $ pip install numpy 2.4 Cấu hình biên dịch OpenCV Tạo thư mục build, thực thi cmake: $ cd ~/opencv-3.4.1/ $ mkdir build $ cd build $ cmake -D CMAKE_BUILD_TYPE=RELEASE \ 12 -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D INSTALL_C_EXAMPLES=OFF \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib3.4.1/modules \ -D PYTHON_EXECUTABLE=~/.virtualenvs/cv/bin/python \ -D BUILD_EXAMPLES=ON Chạy lệnh $ make (tốn nhiều thời gian nhất, 20 phút nhiều hơn, tùy cấu hình máy tính) Hình số : Thực thi cmake Chạy lệnh make install sudo ldconfig $ sudo make install $ sudo ldconfig 13 2.5 Hoàn tất cài đặt OpenCV File cấu hình OpenCV cho Python nằm thư mục /usr/local/lib/python2.7/sitepackages/ Bước gán cv2.so vào môi trường ảo cv cho Python 2.7 $ cd ~/.virtualenvs/cv/lib/python2.7/site-packages/ $ ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so Cài đặt MobaXterm để remote vào Ubuntu Desktop qua giao thức SSH https://mobaxterm.mobatek.net/download-home-edition.html Xem địa IP Ubuntu Desktop lệnh ifconfig Hình số : Giao diện dòng lệnh Ubuntu Desktop 16.04 LTS Trên MobaXterm, nhập địa IP, chọn cổng 22 để kết nối vào Ubuntu Desktop qua giao thức SSH 14 Hình số : Mơi trường OpenCV 15 CHƯƠNG – XÂY DỰNG CHƯƠNG TRÌNH PHÁT HIỆN XÂM NHẬP 3.1 Phân tích hệ thống Lập trình xây dựng phần mềm phát xâm nhập dựa liệu từ camera giám sát sử dụng ngôn ngữ lập trình Python Dữ liệu đầu vào: hình ảnh tử camera giám sát Dữ liệu đầu ra: rung chuông báo động xâm nhập, chụp ảnh đối tượng xâm nhập Hình số : Chức hệ thống 3.2 Thiết kế hệ thống Lưu đồ thuật tốn 16 Hình số 10 : Lưu đồ thuật toán 17 3.3 Mã nguồn Python chương trình 18 CHƯƠNG - KẾT LUẬN Các hệ thống camera giám sát ngày trở nên phổ biến hộ gia đình Nhưng ứng dụng thường giới hạn phạm vi giám sát qua hình lưu trữ liệu video ổ đĩa Để khai thác hiệu liệu camera giám sát, nhóm nghiên cứu thực xây dựng chương trình phát xâm nhập đưa báo động Phần mềm phát xâm nhập sử dụng thư viện thị giác máy tính OpenCV hệ điều hành mã nguồn mở Linux Ubuntu cho phép xuất ảnh thời điểm xâm nhập, rung chng báo động có xâm nhập Các hướng nghiên cứu mở rộng đề tài là: • Nhắn tin/ gọi điện đến số điện thoại chủ nhà phát xâm nhập • Gửi ảnh đối tượng xâm nhập đến e-mail chủ nhà • Khoanh vùng chọn khu vực muốn giám sát khơng phải tồn khung hình camera TÀI LIỆU THAM KHẢO Tài liệu từ Internet [1] https://www.ubuntu.com/ [2]https://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-installopencv/ [3]http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/ py_tutorials.html [4] http://kdientu.duytan.edu.vn/vi-vn/hoc-lieu/xu-ly-anh-so-voi-opencv/ [5] Nguyễn Văn Long, “Ứng dụng xử lý ảnh thực với thư viện OpenCV C/C++”, 2013 19 ... dụng thực tiễn đề tài - Đề xuất hướng nghiên cứu mở rộng cho đề tài 1.4 Phương pháp nghiên cứu - Nghiên cứu lý thuyết xử lý ảnh thị giác máy tính - Tiến hành cài đặt, cấu hình OpenCV Hệ điều... hàm 2500 thuật toán tối ưu xử lý ảnh, vấn đề liên quan tới thị giác máy OpenCV chạy nhiền tảng khác nhau, bao gồm hệ điều hành Window, Linux, Mac, iOS, Android… Xử lý ảnh thị giác máy lĩnh vực... giác máy tính OpenCV hệ điều hành mã nguồn mở Linux Ubuntu cho phép chụp ảnh thời điểm xâm nhập, rung chuông báo động có xâm nhập Đó lý nhóm chúng em chọn đề tài “Nghiên cứu Xử lý ảnh Hệ điều hành

Ngày đăng: 21/03/2020, 19:52

Xem thêm:

TỪ KHÓA LIÊN QUAN

Mục lục

    CHƯƠNG 1 - TỔNG QUAN VỀ ĐỀ TÀI

    1.1 Tổng quan về thư viện thị giác máy tính OpenCV

    1.2 Lý do chọn đề tài

    1.3 Mục tiêu của đề tài

    1.4 Phương pháp nghiên cứu

    1.5 Phạm vi nghiên cứu

    CHƯƠNG 2 – HƯỚNG DẪN CÀI ĐẶT OPENCV

    2.1 Cài đặt các gói phụ thuộc cho OpenCV

    2.4 Cấu hình và biên dịch OpenCV

    2.5 Hoàn tất cài đặt OpenCV

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w