Arvutiteaduse instituut
  1. Esileht
  2. IT koolidele
EN
Logi sisse

IT koolidele

  • OpenCV sissejuhatus
  • OpenCV paigaldamine
  • Vajalike materjalide allalaadimine
  • Mis on pilt?
  • Pildid
  • Kaamera kasutamine
  • Pilditöötlus
  • Objektide tuvastus
  • Lisa: Panoraam

Kaamera kasutamine

Eesmärk

Selles peatükis õpime, kuidas kasutada veebikaamerat. See on vajalik, et tulevikus reaalajas videole rakendada OpenCV's saadaval olevaid funktsioone.

Kaamera kasutamine

import cv2

# Alusta videovoogu
kaamera = cv2.VideoCapture(0)  # 0 on tavaliselt vaikimisi kaamera

# Kontrolli, kas kaamera on korrektselt avatud
if not kaamera.isOpened():
    print("Ei suuda kaamerat avada")
    exit()

while True:
    # Loe kaamerast uus pilt
    töötab, kaader = kaamera.read()

    # Kui pildi lugemine ebaõnnestub, lõpeta
    if not töötab:
        print("Ei suuda kaamerast pilti lugeda")
        break

    # Näita pilti aknas
    cv2.imshow('Kaameravoog', kaader)

    # Vajuta 'q', et väljuda tsüklist
    if cv2.waitKey(1) == ord('q'):
        break

# Vabasta kaamera ja sulge kõik aknad
kaamera.release()
cv2.destroyAllWindows()

Programmi töö lõpetamiseks on loodud if-lause, millega saab tsükli lõpetada. Hetkel oleme selleks määranud "q" tähe vajutuse.

Salvestamine

Piltide salvestamisel nagu õppisime, siis saab kasutada cv.imwrite() funktsiooni. Videote salvestamine on natukene keerukam. Video salvestamiseks kasutame VideoWriter funktsiooni.

import cv2 as cv

cap = cv.VideoCapture(0)
fourcc = cv.VideoWriter_fourcc(*'XVID')

out = cv.VideoWriter('salvestus.avi', fourcc, 20.0, (640, 480))

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        print("Ei tuvasta järgmist kaadrit. Kaamera sulgub...")
        break

    cv.imshow('kaamera salvestab', frame)
    # Ootame kuni kasutaja vajutab 'q' tähte, tsükkel katsestatakse
    if cv.waitKey(1) == ord('q'):
        break

cap.release()
out.release()
cv.destroyAllWindows()

Ülesanne: Loo iseseisvalt programm, mis salvestab kaamera videot.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused