103 lines
2.3 KiB
Plaintext
103 lines
2.3 KiB
Plaintext
# 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:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd <repository-folder>
|
|
```
|
|
|
|
### 2. Asenna riippuvuudet
|
|
Suosittelemme käyttämään Python-virtuaaliympäristöä:
|
|
```bash
|
|
python3 -m venv venv
|
|
source venv/bin/activate
|
|
pip install flask opencv-python
|
|
```
|
|
|
|
### 3. Käynnistä sovellus
|
|
Käynnistä Flask-sovellus paikallisesti:
|
|
```bash
|
|
python app.py
|
|
```
|
|
|
|
Avaa sovellus selaimessasi osoitteessa:
|
|
```
|
|
http://localhost:5000
|
|
```
|
|
|
|
---
|
|
|
|
## Dockerin käyttö
|
|
|
|
### 1. Luo Docker-image
|
|
Luo Docker-image mukana toimitetusta `Dockerfile`-tiedostosta:
|
|
```bash
|
|
sudo docker build -t webcam .
|
|
```
|
|
|
|
### 2. Käynnistä Docker-kontti
|
|
Käynnistä kontti kameran käyttöoikeudella:
|
|
```bash
|
|
sudo docker run -it --rm -p 5001:5000 --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ä.
|
|
|
|
|