การใช้งาน OpenCV ภาษา C++


OpenCV ย่อมาจาก Opensource Computer Vision หรือก็คือ Computer Vision ไลบรารี

ความสามารถหลักๆ ของ OpenCV  ก็คือสามารถช่วยให้เราจัดการวิดีโอหรือรูปภาพ เพื่อให้เกิดการเปลี่ยนแปลงกับรูปภาพ อย่างเช่น ทำให้ภาพชัดขึ้น ทำให้เบลอ ลดสัญญาณรบกวน (noise) ในรูปภาพ จากแหล่งที่มาของรูปภาพต่างๆ ไม่ว่าจะเป็น webcam ภาพถ่าย วิดีโอ หรือกล้องวงจรปิด  


ภาษาการเขียนโปรแกรม


OpenCV ถูกเขียนขึ้นด้วยภาษา C++ มีการรองรับ Python, Java และ MATLAB/OCTAVE — API สำหรับอินเทอร์เฟสเหล่านี้สามารถพบได้ในเอกสารออนไลน์ ซึ่งมีการรวมไว้หลากหลายภาษา เช่น C#, Perl, Ch, Haskell และ Ruby ได้รับการพัฒนาเพื่อส่งเสริมการนำมาใช้งานโดยผู้ใช้ที่เพิ่มขึ้น


OpenCV  นอกจากการปรับปรุงภาพแล้วนั้น ยังมีการใช้เทคนิคการประมวลผลภาพ ที่ทำให้เรารู้จักกับวัตถุนั้นๆ เราอาจจะเคยได้ยินตัวอย่างมาบ้าง เช่น การแบ่งประเภท Object ว่าเป็น หมา แมว คน รถยนต์ เป็นต้น ไปจนถึงการนำไปใช้งานที่ซับซ้อนมากขึ้น เช่น การจดจำใบหน้าของคน


ขั้นตอนการทํางาน


1 : Download และ ติดตั้ง OpenCV


ไปที่ https://opencv.org/releases/


เลือกเวอร์ชัน และ Windows


คลิกที่ ไฟล์ และ คลิกเลือกที่ติดตั้ง


ในตัวอย่างเลือกติดตั้งไว้ที่ ไดรฟ์ C -> OK


คลิก Extract


แสดง Folder ที่ติดตั้ง OpenCV


2 : เพิ่ม OpenCV ไปที่ System path


เปิด Start Search พิมพ์ “env” แล้วเลือก “Edit the system environment variables”


เลือก Advanced -> Environment Variables…


คลิกที่ Path -> Edit…


คลิก New


เพิ่ม C:\opencv\build\x64\vc15\bin -> OK

“แล้ว รีสตาร์ท คอมพิวเตอร์”



3 : โปรแกรมแรก กับ Visual Studio 2019


โดยศึกษา ขั้นตอนการทำงาน จากลิงค์บทความ ด้านล่าง


4 : ติดตั้ง Desktop development with C++


ไปที่ Visual Studio Installer -> Modify


เลือก Desktop development with C++ แล้วติดตั้งเพิ่มเข้าไปใน Visual Studio 2019


5 : สร้าง โปรเจค OpenCV


เปิด Visual Studio 2019 เลือก Create a new project


เลือก Empty Project ของ C++ -> Next


ตั้งชื่อโปรเจค ในตัวอย่างชื่อ BasicOpenCV -> Create


ตั้งค่าเป้าหมายแพลตฟอร์มเป็น x64 โดยการเปลี่ยน Solution Platforms จาก x86 เป็น x64


ไปที่ Project -> Properties


บอกคอมไพเลอร์ว่า เส้นทางไปยังไฟล์ส่วนหัว ( build/include) ของ OpenCV โดยไปที่ VC++ Directories -> Include Directories -> ดรอปดาวน์ -> Edit


แก้ไขเป็น C:\opencv\build\include -> OK



และให้ สามารถค้นหาไฟล์ lib สำหรับโมดูลต่างๆได้ที่ไหน โดยไปที่ VC++ Directories -> Library Directories -> ดรอปดาวน์ -> Edit


แก้ไขเป็น C:\opencv\build\x64\vc15\lib -> OK



ไปที่ Linker -> Input -> Additional Dependencies -> ดรอปดาวน์ -> Edit


แก้ไขเป็น opencv_world450d.lib -> OK


OK


ขั้นตอนนี้ เกี่ยวข้องกับเวอร์ชั่น ของ OpenCV ที่ติดตั้ง โดยสามารถตรวจสอบชื่อไฟล์ได้ที่ C:\opencv\build\x64\vc15\lib

*** ให้แก้ไขตามชื่อไฟล์ที่อยู่ในโฟลเดอร์นี้ ***


6 : โปรแกรมแรกกับ OpenCV


คลิกขวาที่ ชื่อโปรเจค


Add -> New Item…


C++ File(.cpp) -> ชื่อไฟล์ในตัวอย่างชื่อ Chapter1.cpp -> Add


เขียนโค้ดดังนี้

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main()
{
	Mat image = Mat::zeros(300, 600, CV_8UC3);
	circle(image, Point(250, 150), 100, Scalar(0, 255, 128), -100);
	circle(image, Point(350, 150), 100, Scalar(255, 255, 255), -100);
	imshow("Display Window", image);
	waitKey(0);
	return 0;
}


Save


คลิกที่ Local Windows Debugger เพื่อทดสอบการทำงาน


ถ้าไม่มีอะไรผิดพลาด จะได้ภาพรูปด้านล่าง แสดงว่าการใช้งาน OpenCV ด้วย ภาษา C++ ของเรานั้นสำเร็จแล้ว