docker_webcam/README.md

2.5 KiB

Live Webcam Stream Flaskilla ja OpenCV:llä

Tämä projekti tarjoaa yksinkertaisen verkkosovelluksen, joka suoratoistaa reaaliaikaista videota verkkokamerasta käyttäen Flaskia ja OpenCV:tä. Sovellus pitää kameran jatkuvasti päällä ja palvelee videolähetystä yhdistetyille asiakkaille.


Ominaisuudet

  • Suoratoistaa reaaliaikaista videota verkkokamerasta verkkoselaimeen.
  • Flask-hoitaa HTTP-pyynnöt.
  • OpenCV käytetään videon kaappaamiseen ja kehysten käsittelyyn.
  • Säikeistys varmistaa, että kamera pysyy päällä riippumatta asiakkaan toiminnasta.

Vaatimukset

  • Python 3.8 tai uudempi
  • Flask
  • OpenCV

Asennus ja käyttöönotto

1. Kloonaa repositorio

Kloonaa tämä repositorio Gitea-palvelimellesi tai paikalliselle koneellesi:

git clone http://88.114.1.82:3000/RikuSi/docker_webcam.git
cd docker_webcam

2. Asenna riippuvuudet

Suosittelemme käyttämään Python-virtuaaliympäristöä:

python3 -m venv venv
source venv/bin/activate
pip install flask opencv-python

3. Käynnistä sovellus

Käynnistä Flask-sovellus paikallisesti:

python app.py

Avaa sovellus selaimessasi osoitteessa:

http://localhost:5000

Dockerin käyttö

1. Luo Docker-image

Luo Docker-image mukana toimitetusta Dockerfile-tiedostosta:

sudo docker build -t webcam .

2. Käynnistä Docker-kontti

Käynnistä kontti kameran käyttöoikeudella:

sudo docker run -it --rm -p 5001:5000 --device /dev/video0 webcam

tai

sudo docker run --name="webcam" \
    -p 5001:5000 \
    --restart="always" \
    --detach=true \
    --device=/dev/video0 \
    webcam

Avaa sovellus selaimessasi osoitteessa:

http://<docker-isäntä-ip>:5001

Tiedostorakenne

.
├── app.py          # Pääasiallinen Flask-sovellus
├── Dockerfile      # Docker-konfiguraatio
├── README.md       # Projektin dokumentaatio
└── requirements.txt # Python-riippuvuudet

Vianetsintä

Verkkokameraa ei löydy

Varmista, että verkkokamera on oikein liitetty ja käytettävissä. Jos käytät Dockeria, varmista, että --device /dev/video0-lippu on mukana.

Suorituskykyongelmat

Jos suoratoisto pätkii, harkitse resoluution alentamista OpenCV:n VideoCapture-asetuksista.


Osallistuminen

Voit vapaasti haarauttaa tämän repositorion ja lähettää pull requesteja parantaaksesi projektia.


Lisenssi

Tämä projekti on lisensoitu MIT-lisenssillä.