En webapplikation til automatisk detektering og sløring af ansigter og nummerplader i 360° panoramiske videoer.
- Upload og behandling af 360° videoer (MP4-format)
- Robust detektion af ansigter - både front, profil og delvist synlige
- Automatisk nummerpladedetektering med YOLO
- Intelligent sløring af detekterede objekter med avanceret algoritme
- Håndtering af 360° videokanter med wrap-around detektion
- Realtids-fremskridtsopdateringer via Socket.IO
- Download af færdigbehandlede videoer
- Paralleliseret baggrundsbehandling på flere CPU-kerner
- Understøtter forskellige sprog: Dansk, Engelsk, Tysk, Spansk, Italiensk, Bulgarsk
- Backend: Flask, Socket.IO, OpenCV, YOLO (Ultralytics)
- Multiprocessing: Parallel videobehandling på tværs af CPU-kerner
- Frontend: HTML, JavaScript, Bootstrap
- Internationalisering: Flask-Babel
Applikationen bruger en skalerbar arkitektur:
-
Flask Web App (blur360_webapp.py):
- Håndterer brugerinteraktion og filupload
- Starter baggrundsprocesser til videobehandling
- Viser fremskridt og resultater via Socket.IO
-
Worker Process (blur360_worker.py):
- Kører som en separat proces via subprocess.Popen()
- Behandler videoen parallelt via Python multiprocessing
- Sender status og fremgangsoplysninger tilbage til webappen
-
Detektion og Sløring:
- Anvender state-of-the-art YOLOv8-modeller til objekt detektion
- DNN-baseret ansigtsdetektion som fallback
- Ekstra wrap-around teknik til at håndtere 360° videoer
- Optimeret sløring baseret på detekteringsstørrelse
Kør denne kommando i din terminal for at installere 360blur automatisk:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/rpaasch/360blur-mp/main/install-remote.sh)"Alternativt med wget:
/bin/bash -c "$(wget -qO- https://raw.githubusercontent.com/rpaasch/360blur-mp/main/install-remote.sh)"Installationsscriptet giver mulighed for avancerede indstillinger, herunder:
- Konfiguration af værtsnavn og port
- Opsætning som systemd-service (Linux)
- Integration med CloudFlare Tunnel for fjernbetjening og sikker adgang udefra
- Clone eller download repository:
git clone https://github.com/rpaasch/360blur-mp.git
cd 360blur-mp
- Opret et virtuel Python-miljø (anbefalet):
python -m venv venv
source venv/bin/activate # På Windows: venv\Scripts\activate
- Installer afhængigheder:
pip install -r requirements.txt
- (Valgfrit) Installer YOLO for bedre detektion:
pip install ultralytics
- Download nødvendige modeller:
python download_models.py
Dette vil automatisk hente de nødvendige modelfilet til mappen models.
- Start applikationen:
python blur360_webapp.py
- Åbn i browser:
http://localhost:5000
Hvis du vil fjerne 360blur, kan du bruge det medfølgende afinstallationsscript:
cd /sti/til/360blur
./uninstall.shAfinstallationsscriptet vil fjerne alle programfiler, systemd-services, og konfiguration. Du vil blive spurgt om du vil beholde en backup af dine processerede videoer.
- Vælg en videofil (MP4-format) ved at klikke på "Vælg fil"
- (Valgfrit) Aktiver debug mode for at se detekteringer
- (Anbefalet) Behold DNN aktiveret for bedre detektion
- Klik på "Upload og behandl"
- Følg fremskridtet i realtid via progressbaren
- Download den færdige video, når behandlingen er fuldført
360blur understøtter integration med CloudFlare Tunnels, hvilket giver sikker fjernadgang til din 360blur-instans fra hvor som helst i verden uden behov for port forwarding eller at eksponere din IP-adresse.
- En CloudFlare-konto (gratis)
- Et domæne registreret hos CloudFlare (eller et subdomæne af dit eksisterende domæne)
- Et CloudFlare Tunnel-token oprettet i CloudFlare-dashboardet
- Gå direkte til CloudFlare Zero Trust Dashboard
- Klik på "Tunnels" i venstremenuen
- Klik på "Create a tunnel" og giv tunnelen et navn
- Vælg "Manual" som installationsmetode
- Kopiér det viste tunnel-token
- Vend tilbage til din 360blur-installation og kør:
cd /sti/til/360blur/cloudflare && ./setup_cloudflare.sh /sti/til/360blur - Følg anvisningerne for at indtaste dit token og domæne
Efter konfiguration vil din 360blur-instans være tilgængelig på den URL, du har angivet under opsætningen (f.eks. https://360blur.mitdomæne.com).
Hvis ansigter eller nummerplader ikke detekteres korrekt:
- Kontroller at DNN-modellerne er korrekt installeret via download_models.py
- Aktiver debug mode for at se hvilke områder der detekteres
- For bedre nummerpladedetektering, installer ultralytics (YOLO)
- Tjek logfilen for eventuelle fejlmeddelelser
- Kontroller at CloudFlare-tunnelen kører med
sudo systemctl status cloudflared-360blur(Linux) - Tjek tunnellogfilen i
/sti/til/360blur/cloudflare/cloudflared.log - Verificer at dit domæne er korrekt konfigureret i CloudFlare Zero Trust dashboardet
- Gå til CloudFlare Zero Trust Dashboard > Tunnels
- Tjek at tunnelen er markeret som "Active"
- Klik på tunnelens navn og tjek "Public Hostnames" konfigurationen
- Sørg for at porten i 360blur's config.ini matcher den port, der er angivet i CloudFlare-konfigurationen
- Behandling af store 360° videoer kan være tidskrævende
- Ansigtsgenkendelse i 360° videoer er udfordrende på grund af forvrængning
- Meget små objekter kan være svære at detektere pålideligt
- CloudFlare Tunnel kræver et domæne, der er konfigureret med CloudFlare