Cài đặt OpenCV cho Visual Studio 2022

OpenCV (Open Source Computer Vision) là một thư viện mã nguồn mở và đa nền tảng trong lĩnh vực thị giác máy tính. OpenCV hỗ trợ khá nhiều ngôn ngữ lập trình như C/C++, C#, Python, Java, Matlab, … Trong phạm vi bài viết này, mình xin chỉ trình bày cách cài đặt OpenCV với ngôn ngữ C++.

1. Tổng quan

Có 2 trình biên dịch C++ phổ biến nhất là g++Visual C++.

g++ là trình biên dịch chuẩn của C++, thường được sử dụng trên các IDE như CodeBlocks, DevC++, … Việc cài đặt OpenCV cho g++ khá phức tạp với những ai chưa từng sử dụng CMake, tuy nhiên đây lại là cách duy nhất để cài đặt OpenCV trên hệ điều hành Linux, mình sẽ trình bày cách cài đặt này ở bài viết khác.

Visual C++ là trình biên dịch C++ do Microsoft xây dựng, có 1 số thay đổi khác so với g++, và được tích hợp trong IDE Microsoft Visual Studio. Việc cài đặt OpenCV cho Visual C++ dễ dàng và trực quan hơn, mình sẽ trình bày cách cài đặt trong bài viết này.

Vào trang chủ của Visual Studio: https://visualstudio.microsoft.com/ và download Visual Studio IDE về. Có thể chọn bản Comumnity vì nó miễn phí nhưng vẫn đầy đủ các tính năng cho việc học tập, hoặc nếu có license cho bản Professional hay Enterprise thì cứ dùng.

Cài đặt OpenCV cho Visual Studio 2022

Các bước cài đặt như phần mềm bình thường khác, ở bước này thì đánh dấu vào 2 ô có C++: Univeversal Windows Platform developmentDesktop development with C++ sau đó bấm vào Install để bắt đầu cài đặt.

Cài đặt OpenCV cho Visual Studio 2022

3. Cài đặt OpenCV

Download OpenCV từ trang chủ về: https://opencv.org/releases.html. Bấm vào “Win pack” để download bản OpenCV đã được build thành các file thư viện .lib.dll cho Windows từ source code.

Cài đặt OpenCV cho Visual Studio 2022

Sau khi download xong, chạy file này như file cài đặt thông thường, chọn đường dẫn mà OpenCV sẽ được giải nén ra. Nên chọn nơi giải nén sao cho dễ dàng tìm thấy và tránh trường hợp lỡ tay xóa mất, phải cài đặt lại.

Cài đặt OpenCV cho Visual Studio 2022

Sau khi chọn xong đường dẫn, bấm vào Extract để bắt đầu giải nén.

Cài đặt OpenCV cho Visual Studio 2022

4. Cấu hình OpenCV cho project Visual C++

Mở Visual Studio lên.

Cài đặt OpenCV cho Visual Studio 2022

Tạo empty Project Visual C++ mới.

Cài đặt OpenCV cho Visual Studio 2022

Thêm file C++ vào Project vừa tạo

Cài đặt OpenCV cho Visual Studio 2022

Chuyển build platform của Project sang x64 vì bản OpenCV đã build sẵn chỉ hỗ trợ 64-bit.

Cài đặt OpenCV cho Visual Studio 2022

Đến đây sẽ bắt đầu những bước quan trọng nhất. Click chuột phải vào Project và chọn Property để mở cửa sổ Project Property.

Cài đặt OpenCV cho Visual Studio 2022

Chuyển Platform sang  x64.

Cài đặt OpenCV cho Visual Studio 2022

Chọn mục C/C++->General. Ở dòng Additional Include Directories, thêm vào đường dẫn đến thư mục build\include của thư mục OpenCV đã giải nén ở bước trên. Bấm vào Apply.

Cài đặt OpenCV cho Visual Studio 2022

Chuyển sang mục Linker->General. Ở dòng Additional Library Directories, thêm vào đường dẫn đến thư mục build\x64\vc15\lib (thư mục chứa các file .lib) nếu dùng Visual Studio 2017, hoặc build\x64\vc14\lib nếu dùng Visual Studio 2015. Bấm vào Apply.

Cài đặt OpenCV cho Visual Studio 2022

Chuyển sang mục Linker->Input. Ở dòng Additional Dependencies, thêm vào tên file opencv_world342d.lib (vì đang build ở chế độ Debug). Nếu build ở chế độ Release thì tên file là opencv_world342.lib. 2 file này có thể được tìm thấy trong thư mục build\x64...\bin. Bấm vào Apply.

Cài đặt OpenCV cho Visual Studio 2022

Cuối cùng bấm vào OK.

Sao chép file opencv_word341d.dll (hay opencv_word341.dll nếu đang build Release) trong thư mục build\x64.…\bin vào trong thư mục Project (thư mục chứa file cpp đã tạo).

Cài đặt OpenCV cho Visual Studio 2022

5. Chạy thử

Copy 1 file ảnh bất kỳ vào trong thư mục Project. Sau đó copy chương trình mẫu này vào file cpp trong project, build và chạy thử xem kết quả. Lưu ý là tên file phải khớp với tham số truyền vào hàm imread().


This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters

#include "opencv2/core.hpp"
#include "opencv2/highgui.hpp"
using namespace cv;
int main()
{
Mat image = imread("test.jpg");
imshow("Demo", image);
waitKey(0);
return 0;
}

Cài đặt OpenCV cho Visual Studio 2022