STDIO
Tìm kiếm gần đây
    • Nội dung
    • QR Code
    • 0
    • 0
    • Sao chép

    OpenCV – Cài Đặt và Ví Dụ Minh Họa Sử Dụng

    Giới thiệu tổng quan OpenCV, hướng dẫn cài đặt và viết chương trình minh hoạ bằng C++.

    Vũ Quang Huy

    29/09/2014
    15/09/2020
    4 phút đọc
    OpenCV – Cài Đặt và Ví Dụ Minh Họa Sử Dụng

    Giới thiệu

    OpenCV (Open Computer Vision) là một thư viện mã nguồn mở chuyên dùng để xử lý các vấn đề liên quan đến thị giác máy tính. Nhờ một hệ thống các giải thuật chuyên biệt, tối ưu cho việc xử lý thị giác máy tính, vì vậy tính ứng dụng của OpenCV là rất lớn, có thể kể đến như:

    • Nhận dạng ảnh: nhận dạng khuôn mặt, các vật thể, ...
    • Xử lý ảnh: khử nhiễu, điều chỉnh độ sáng, ...
    • Nhận dạng cử chỉ
    • ...

    Có thể sử dụng nhiều ngôn ngữ lập trình khác nhau để làm việc với OpenCV như C++, Java, Python, C#, ...

    Bài viết này hướng dẫn cách tải, cài đặt OpenCV và viết chương trình minh họa sử dụng với C++.

    Cài đặt OpenCV

    Truy cập trang web https://opencv.org/releases/ để tải về phiên bản OpenCV mới nhất.

    Chọn phiên bản OpenCV thích hợp cho mục đích sử dụng và tải về:

    Tiến hành chạy file cài đặt, chọn đường dẫn để bộ cài đặt giải nén thư viện OpenCV.

    ss_3

    Quá trình giải nén

    ss_1

    Sau khi giải nén, thu được 2 folder:

    • Build: chứa thư viện OpenCV đã được biên dịch thành thư viện cho nhiều ngôn ngữ khác nhau: C++, Java, Python.
    • Sources: tài liệu hướng dẫn, ví dụ và mã nguồn của OpenCV.
    ss_9

    Tiếp theo, tích hợp thư viện OpenCV vào trong project. Song song đó, để minh họa việc sử dụng thư viện này, viết một ví dụ load và hiển thị ảnh sử dụng các API của OpenCV.

    Tích hợp OpenCV vào project

    Khởi tạo một project trống.

    ss_8

    Tại thư mục chứa project, tạo folder Lib/opencv và copy toàn bộ nội dung ở đường dẫn <extracted_path>/build/x86/vc12<extracted_path>/build/include vào. Trong đó, <extracted_path> là đường dẫn cài đặt OpenCV ở trên.

    Sau khi copy, có được cấu trúc folder như sau

    ss_6

    Tại giao diện của Visual Studio, chọn Project Properties -> Configuration Properties -> C/C++ -> General -> Addition Include Directories, thêm đường dẫn $(ProjectDir)\Lib\opencv\include.

    ss_4

    Tiếp theo, cũng tại trang Project Properties, chọn Linker -> General -> Addition Library Directories, thêm vào đường dẫn $(ProjectDir)\Lib\opencv\lib.

    ss_2

    Và tại Linker -> Input, thêm vào các thư viện sau

    opencv_ts300d.lib
    opencv_world300d.lib
    ss_10

    Cuối cùng, copy file opencv_world300d.dll trong Lib\opencv\bin vào folder Debug của project.

    Kết thúc việc tích hợp thư viện OpenCV vào project. Để kiểm tra tính chính xác của công việc đã làm, viết một ví dụ nhỏ sử dụng OpenCV.

    Minh họa sử dụng thư viện OpenCV

    Trong ví dụ minh họa này, chương trình có chức năng:

    • Load một ảnh bất kì
    • Đọc vào đối tượng Mat của OpenCV
    • Hiển thị lên màn hình

    Tạo file sample.cpp có nội dung như sau:

    #include <stdio.h>
    #include "opencv2/core/core.hpp"
    #include "opencv2/highgui/highgui.hpp"
    
    using namespace cv;
    
    int main()
    {        
        // Read image
        Mat image = imread("Lena.png", CV_LOAD_IMAGE_COLOR);
    
        // Check for valid
        if (!image.data)
        {
            printf("Could not open or find the image\n");
            return -1;
        }
    
        // Create and show image in window    
        imshow("STDIO OpenCV Sample", image);
    
        // Wait input and exit
        waitKey(0);
    
        return 0;
    }
    • Dòng 10: đọc file ảnh lên với hàm imread cùng tùy chọn CV_LOAD_IMAGE_COLOR (đọc ảnh màu). Hàm này trả về một ma trận các pixel màu. Ý nghĩa của các tùy chọn:
      • CV_LOAD_IMAGE_UNCHANGED: load ảnh bình thường (bao gồm cả kênh alpha nếu có)
      • CV_LOAD_IMAGE_GRAYSCALE: load ảnh và chuyển về trắng đen
      • CV_LOAD_IMAGE_COLOR: load ảnh phần màu (RGB), bỏ qua kênh alpha.
    • Dòng 13 – 17: kiểm tra việc đọc ảnh có thành công hay không.
    • Dòng 20: hiển thị ảnh đã load sử dụng hàm imshow với tham số là tiêu đề cửa sổ và nội dung ảnh.

    Kết quả của đoạn chương trình:

    ss_7

    Thử thay đổi tùy chọn tại dòng 10 từ CV_LOAD_IMAGE_COLOR thành CV_LOAD_IMAGE_GRAYSCALE 

    ss_5

    Download chương trình mẫu

    • STDIO_OpenCV_Sample.zip (127 MB): bản đầy đủ.
    • STDIO_OpenCV_Sample_Compact.zip (485 KB): tương tự như bản đầy đủ nhưng đã loại bỏ thư mục Lib và Debug, chỉ cần copy lại nội dung như hướng dẫn trên là có thể chạy được.
    0
    Computer Vision

    Computer Vision

    Thị giác máy tính.

    Khi bạn nhấn vào liên kết sản phẩm do STDIO đề xuất và mua hàng, STDIO có thể nhận được hoa hồng. Điều này hỗ trợ STDIO tạo thêm nhiều nội dung hữu ích.. Tìm hiểu thêm.

    Đề xuất

    Cài Đặt Và Cấu Hình Microsoft SQL Server 2014 Express
    Cài đặt và cấu hình Microsoft SQL Server 2014 Express, tạo môi trường ...
    Mã Hóa Base64
    Base64 không phải là một thuật toán mã hóa và trong mọi trường hợp, nó ...

    Khám phá

    SmartHome - Từ Rời Rạc Hóa đến Tổng Thể Thông Minh
    Từ những thiết bị vốn được tạo ra tự động một cách rời rạc đến kết nối ...
    Thỏa Thuận Sử Dụng Dịch Vụ STDIO
    Thỏa thuận này quy định về điều kiện giao kết hợp đồng, quyền lợi, nghĩa ...
    LinQ – Giới Thiệu và Cách Sử Dụng
    Giới thiệu LinQ to SQL, hướng dẫn cài đặt và sử dụng LinQ to SQL.
    Biến Trong Ngôn Ngữ Lập Trình JavaScript
    Biến là một khái niệm khá quen thuộc trong mọi ngôn ngữ lập trình. Nhắc ...
    15/11/2015
    Localhost và Cách Cài Đặt XAMPP
    Khái niệm, cài đặt và cách sử dụng localhost.
    15/03/2015
    Sử Dụng graphics.h Để Xây Dựng Ứng Dụng Đồ Họa
    Hướng dẫn bạn đọc sử dụng Borland Graphics Interface để xây dựng ứng ...
    BigData - Xu Thế Hay Điều Tất Yếu Đang Xảy Ra
    BigData đem lại sức mạnh về sự dự báo, sự tối ưu và sự cải thiện. Tìm ...
    26/05/2015
    Validate Form Bằng Thư Viện Knockout-Validation trong Dự Án Durandaljs
    Bài viết hướng dẫn sử dụng thư viện Knockout-Validation để kiểm tra dữ ...
    STDIO
    Trang chính
    Công ty TNHH STDIO

    30, Trịnh Đình Thảo, Hòa Thạnh, Tân Phú, Hồ Chí Minh
    +84 28.36205514 - +84 942.111912
    developer@stdio.vn

    383/1 Quang Trung, Phường 10, Quận Gò Vấp, Hồ Chí Minh
    Số giấy phép ĐKKD: 0311563559 do sở Kế hoạch và Đầu Tư TPHCM cấp ngày 23/02/2012

    ©STDIO, 2013 - 2020