Streamng videa z RPi Zero 2W a AI Camera

23.06.2025 Raspberry Pi #zero #rpi #raspberry #aicamera

Základní instalace a nastavení Raspberry Pi Zero 2W.


Instalace pythonu:

sudo apt update
sudo apt upgrade
sudo apt install python3
sudo apt install python3-pip
sudo apt install python3-venv python3-pip python3-dev -y

Instalace knihoven pro kameru:

sudo apt update
sudo apt install python3-picamera2 libcamera-apps python3-flask -y

Instalace VENV s přístupem ke globálním balíčkům

python3 -m venv --system-site-packages ~/venv_cam
source ~/venv_cam/bin/activate

Python skript pro zobrazení streamu ve webovém rozhraní:

from flask import Flask, Response
from picamera2 import Picamera2
from io import BytesIO
from time import sleep

app = Flask(__name__)
picam2 = Picamera2()
picam2.configure(picam2.create_video_configuration(main={"size": (640, 480)}))
picam2.start()
sleep(1)

def generate():
    while True:
        buffer = BytesIO()
        picam2.capture_file(buffer, format='jpeg')
        frame = buffer.getvalue()
        yield (b'--frame\r\n'
               b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n')

@app.route('/')
def index():
    return '''
        <html>
        <head><title>RPi Kamera</title></head>
        <body>
            <h1>Živý přenos z RPi kamery</h1>
            <img src="/video_feed" width="640" height="480">
        </body>
        </html>
    '''

@app.route('/video_feed')
def video_feed():
    return Response(generate(),
                    mimetype='multipart/x-mixed-replace; boundary=frame')

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)