[PYTHON] Capture de caméra WEB Ver3

Celui créé la dernière fois. Capture caméra WEB Ver2

La dernière fois, c'était un programme utilisant GPIO.

Cette fois, un programme de prise de vue qui précise le nombre de prises de vue.

La configuration de base est la même que la dernière fois.

Bibliothèque

cap_save_prg.py


import cv2
import os,os.path
from pathlib import Path
import sys
from datetime import datetime
import time

J'ai ajouté pathlib à la configuration de base.

J'étudie ce domaine de différentes manières, donc c'est tout à fait approprié.

Définition de la destination de sauvegarde et du nom du fichier

cap_save_prg.py


save_dir_path = 'Destination'
filename = 'nom de fichier'

Peu importe où vous aimez. Récemment, j'ai créé un dossier sur le bureau et y ai enregistré le programme. J'essaye de sauvegarder l'image capturée.

Créer un annuaire

cap_save_prg.py


os.makedirs(save_dir_path,exist_ok=True)
base_path = os.path.join(save_dir_path,filename)
datename = datetime.now().strftime('%m%d%H%M')

C'est comme d'habitude.

Définition de l'appareil utilisé

cap_save_prg.py


device_id = 0
width = 640
height = 480
fps = 30

cap = cv2.VideoCapture(device_id)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, height)
cap.set(cv2.CAP_PROP_FPS, fps)

Cette fois, j'ai trouvé une description de la liaison descendante qui peut définir la fonction d'Opencv lors de l'enquête. J'ai décidé de l'essayer et la description est très populaire.

Eh bien, si vous venez de tirer, il n'y a aucun problème avec cv2.VideoCapture ().

Imagerie

cap_save_prg.py


n = 0
while True:
    ret,frame = cap.read()
    cv2.imshow(filename,frame)
    key = cv2.waitKey(1) & 0xFF 

    cv2.imwrite((base_path + datename +'_'+ str(n) + ".png "),frame)
    pathl,dirsl,filesl = next(os.walk(save_dir_path))
    file_count = len(filesl)
    print(file_count)
    time.sleep(0.2)
    cap.release
    n += 1

    if file_count == 100:
        break

Cette fois, la prise de vue démarre en même temps que le programme démarre J'essaye de compter le nombre de fichiers dans le répertoire de destination de sauvegarde.

Lorsque la valeur définie est atteinte, le programme s'arrête.

Si vrai, mettez ʻif key == ord ('s'): avant cv2.imwriteet appuyez sur le clavier Je voulais commencer à tourner NameError: name'file_count 'is not defined` se produit.

J'ai fait beaucoup de recherches, mais je n'ai pas pu le résoudre, alors j'ai décidé de le suivre.

Résumé

J'essaie de faire cela même avec un seul programme, donc mon cerveau ne peut pas le gérer et la fièvre de la sagesse est générée ... Je pense que je n'ai pas d'autre choix que d'améliorer les choses que j'ai faites une par une. Eh bien, je le fais en téléchargeant des choses shobo et en me tordant.

c'est tout.

Recommended Posts

Capture de caméra WEB Ver 2
Capture de caméra WEB Ver3
Capture de caméra WEB
Capture de caméra Python, OpenCV
Capture de caméra avec Python + OpenCV
Obtenez une capture d'écran Web avec python