Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

วิธีจับภาพจากกล้อง Default ใน OpenCV ด้วย C++


ภาพรวม

สาธิตการเข้าถึง Default Camera (กล้องหลัก) และแสดงวิดีโอ Real-time แบบพื้นฐานที่สุด

โค้ดตัวอย่าง C++

#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;

int main() {
    Mat myImage;
    namedWindow("Video Player");
    VideoCapture cap(0);  // 0 = Default Camera
    
    if (!cap.isOpened()) {
        cout << "No video stream detected" << endl;
        system("pause");
        return -1;
    }
    
    while (true) {
        cap >> myImage;
        if (myImage.empty()) break;
        imshow("Video Player", myImage);
        char c = (char)waitKey(25);
        if (c == 27) break;
    }
    
    cap.release();
    return 0;
}

คำอธิบายพื้นฐาน

  • VideoCapture cap(0): เปิดกล้อง Default
  • cap.isOpened(): ตรวจสอบว่าเปิดสำเร็จหรือไม่
  • cap >> frame: ดึงเฟรมถัดไป (Blocking)
  • imshow(): แสดงภาพในหน้าต่าง GUI
  • waitKey(25): รอ 25ms + ตรวจสอบปุ่มกด (27 = ESC)
  • cap.release(): ปล่อยทรัพยากรกล้อง

ผลลัพธ์

แสดงวิดีโอ Real-time จากกล้อง Default ในหน้าต่าง "Video Player"

วิธีจับภาพจากกล้อง Default ใน OpenCV ด้วย C++