วิธีบันทึก Video โดยใช้ฟังก์ชัน OpenCV ใน Python 

 

          ตรงๆตามหัวข้อเลยครับ การบันทึก Video ด้วยฟังก์ชัน OpenCV ใน Python  โดยตัวโปรแกรมจะบันทึก Video ทันทีเมื่อทำการรันโค้ดเเละไฟล์ที่ได้จะออกมาจะเป็นไฟล์ .Avi โดยภายในโค้ดสามารถกำหนดขนาดของวิดีโอได้ โดยการทำงานจะมีดังนี้

1.ติดตั้ง Anaconda เพื่อเรียกใช้งานตัว OpenCV 

2.ติดตั้ง Anaconda เสร็จเเล้วให้ทำการ ลง Path ชื่อ numpy โดยใช้คำสั่ง 

> pip install numpy 

 

3.เมื่อทำการติดตั้ง Numpy เสร็จเเล้วให้นำตัวอย่างด้านล่างมาวาง 

 

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

# Define the codec and create VideoWriter object
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))

while(cap.isOpened()):
    ret, frame = cap.read()
    if ret==True:
        frame = cv2.flip(frame,0)

        # write the flipped frame
        out.write(frame)

        cv2.imshow('frame',frame)
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    else:
        break

# Release everything if job is finished
cap.release()
out.release()
cv2.destroyAllWindows()

 

4.จากนั้นทำการรันระบบ จะได้ผลลัพธ์ดังนี้ 

 

 

5.เมื่อได้ผลลัพธ์เเล้วให้สังเกตุที่โฟล์เดอร์ของเราจะมีไฟล์ .avi ชื่อ output 

 

 

          เมื่อทำการรันผลลัพธ์เเล้ววิดีโอที่ได้ จะมีขนาด 640 x 480 โดยผู้ใช้งานสามารถกำหนดขนาดของวิดีโอได้ อีกทั้งการบันทึกวิดีโอนั้นมีการใช้ทรัพยากรจากเครื่องอยู่บ้าง ในการทำงานเเต่ละครั้งอาจจะมีความล่าช้าอยู่ เเละวิดีโอที่ได้มีความละเอียดที่ไม่สูงมากนักขึ้นอยู่กับกล้อง Webcam หรืออุปกรณ์ของผู้ฝช้งานด้วย

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : Python

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว
โดย Anonymous ศ 08 มี.ค. 2024 7:02 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
300
ศ 08 มี.ค. 2024 8:12 pm โดย mindphp View Topic แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว
พี่ช่วยผมหน่อยครับ
โดย cuthbertdavies จ 04 มี.ค. 2024 3:05 pm บอร์ด Programming - PHP
1
701
จ 04 มี.ค. 2024 3:08 pm โดย mindphp View Topic พี่ช่วยผมหน่อยครับ
เอาเครื่องเก่ามาจะลงโปรแกรมใหม่ เปลี่ยน SSD เจอปัญหา
โดย Anonymous จ 04 มี.ค. 2024 2:17 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
530
จ 04 มี.ค. 2024 2:17 pm โดย บุคคลทั่วไป View Topic เอาเครื่องเก่ามาจะลงโปรแกรมใหม่ เปลี่ยน SSD เจอปัญหา
โฆษณา LINE นั้นมีประโยชน์สำหรับการทำธุรกิจอย่างไร?
โดย admeadme อ 03 มี.ค. 2024 10:49 am บอร์ด Share Knowledge
0
535
อ 03 มี.ค. 2024 10:49 am โดย admeadme View Topic โฆษณา LINE นั้นมีประโยชน์สำหรับการทำธุรกิจอย่างไร?
สอบถามเรื่อง Storage ของ notebook
โดย Narisara ศ 01 มี.ค. 2024 10:13 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
5
379
พฤ 07 มี.ค. 2024 7:27 pm โดย mindphp View Topic สอบถามเรื่อง Storage ของ notebook
การแทรกข้อความตัวอย่างใน Microsoft Office Word ทำอย่างไรดีหรือไม่
โดย BXP พ 28 ก.พ. 2024 5:04 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
582
พ 28 ก.พ. 2024 5:04 pm โดย BXP View Topic การแทรกข้อความตัวอย่างใน Microsoft Office Word ทำอย่างไรดีหรือไม่
การเป็น Software Tester ที่ดีเป็นแบบไหน
โดย BXP พ 28 ก.พ. 2024 5:03 pm บอร์ด Software testing
0
525
พ 28 ก.พ. 2024 5:03 pm โดย BXP View Topic การเป็น Software Tester ที่ดีเป็นแบบไหน
ขออภัย คุณมีการใช้งานร่วมกันเกินโควต้า
โดย Anonymous พฤ 22 ก.พ. 2024 3:32 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
417
พฤ 22 ก.พ. 2024 6:13 pm โดย mindphp View Topic ขออภัย คุณมีการใช้งานร่วมกันเกินโควต้า