Un sistema avanzato di sorveglianza del cielo che monitora 24/7 l'attività meteorica attraverso una rete di 5 telecamere astronomiche posizionate per riprendere in completezza il cielo sopra Acri (Cs). Il sistema utilizza algoritmi di computer vision per il rilevamento automatico di bolidi e meteore, registrando video in tempo reale e calcolando parametri come velocità e luminosità. Ogni rilevamento viene sincronizzato con il database remoto e condiviso pubblicamente per gli appassionati.
Rilevamenti Bolidi RealTime
Bolidi rilevati automaticamente dal sistema AGBolideTracker con 5 camere Sony IMX 664
Video Astronomici
Dalle aurore boreali alle meteore spettacolari, catturate dal mio sistema automatizzato
Aurore Boreali ad Acri (Latitudine 39°N)
Evento eccezionale! Il mio osservatorio ha catturato due spettacolari aurore boreali, fenomeno rarissimo a queste latitudini. La prima l'11 Maggio 2024 con camera Hikvision, la seconda il 12 Novembre 2025 con il sensore Sony IMX 664 in qualità superiore. Questi eventi sono testimonianza dell'intensa attività solare di questo ciclo.
AllSkyCam Lunga Esposizione
Foto e video time-lapse catturati con camera ZWO ASI662MC - esposizioni da 45 secondi
Astrofotografia Deep-Sky
Nebulose, galassie e oggetti del profondo cielo catturati con lunghe esposizioni
Il Progetto
Un sistema complesso che unisce passione astronomica, programmazione avanzata ed elettronica per catturare i fenomeni celesti
Il Sistema AllSkyCam
Questo sito è l'ultima parte di un progetto per la realizzazione di un osservatorio astronomico amatoriale. In questo momento l'osservatorio è formato da 5 camere realtime che registrano video a 7 fts, di cui 4 riprendono le visuali rispetto ai quattro punti cardinali ed un'altra lo zenit. Inoltre, c'è una camera che effettua scatti a lunga esposizione ed anch'essa inquadra lo zenit.
Alla fine di ogni sessione di ripresa, vengono prodotti dalla camera a lunga esposizione (All sky camera) dei video contenenti tutte le foto catturate durante la notte e uno Star Trail, cioè una foto che contiene tutte le tracce luminose che le stelle formano nel loro movimento nel cielo notturno. Con gli Star Trails si può anche determinare la natura degli oggetti luminosi, infatti, i pianeti hanno traiettorie diverse da quelle che determinano le stelle. I bolidi riconosciuti e tracciati, quindi fotografati e ripresi, hanno due modalità diverse di pubblicazione, quelli ripresi tramite le foto a lunga esposizione e determinati dal software di gestione della camera Allskeye, sono immediatamente pubblicati sul sito (molti falsi positivi), mentre quelli ripresi tramite le camere realtime sono caricati sul sito, ma solo dopo una verifica vengono pubblicati (nessun falso positivo). Ci sono anche due archivi: il primo "Archivio", contiene gli scatti della camera a lunga esposizione, star trail, le immagini dei bolidi catturati e in più i video montaggi degli scatti stessi. L’altro archivio è “Bolide Tracker“ che contiene tutti i tracciamenti realtime, con fotogrammi e video clip dei bolidi "catturati" con relativi dati dei tracciamenti. Infine, c'è anche una pagina con le statistiche inerenti ai bolidi con grafici navigabili.
Obiettivi del Progetto
Il progetto ha lo scopo di riprendere il cielo notturno con foto e video, per tutta la notte in piena autonomia attraverso algoritmi e domotica, per catturare le immagini ed i video di bolidi e meteore di una certa entità. Il prossimo sviluppo del progetto è indirizzato allo sviluppo di una verifica automatica delle condizioni meteo ed in base a quelle, in automatico impostare i parametri di tracciamento dei bolidi, così evitando il più possibile falsi positivi.
Questo progetto mi appassiona molto perché contempla gran parte delle mie passioni: la fotografia (specialmente quella astronomica), l'editing video, l'elettronica, la programmazione e la realizzazione di pagine web.
Lunga Esposizione
45 secondi per frame, cattura stelle e bolidi
RealTime
5 camere direzionali per copertura completa
Detection Intelligente
Rilevamento automatico con algoritmi proprietari
Cloud Sync
Sincronizzazione automatica database remoto
Sistema di Acquisizione
Camera Principale (Lunga Esposizione)
- ZWO ASI662MC - Camera astronomica CMOS
- Esposizione: 45 secondi per frame
- Software: AllSkeye Pro (proprietario)
- Posizionamento: Tetto dell'abitazione
- Orario: Tramonto +30min → Alba -30min
Sistema RealTime (5 Camere)
- Sensore: Sony IMX664 - 1/1.8" CMOS Starlight
- Risoluzione: 2688 x 1520 pixel (4MP)
- Pixel Size: 2.9 μm
- Sensibilità: Starlight (eccellente in condizioni di scarsa luce)
- Frame Rate Operativo: 7 fps (il sensore supporta fino a 120fps)
- Configurazione: Camera Nord, Sud, Est, Ovest + Camera AllSky panoramica 360°
- Streaming: HLS/WebRTC in tempo reale
- Risoluzione Detection: 1280x720 (downscale per performance), originale per registrazione
Computing & Networking
- PC: Lenovo Mini PC TINY M93P
- CPU: Intel Core i5-4570T
- Sistema Operativo: Windows 10
- Connettività: LAN + WiFi disponibili sul tetto
- Alimentazione: 220V con interruttori smart Sonoff
- Automazione: Home Assistant per gestione ON/OFF automatica
Sistema Domotico
Home Assistant gestisce l'intero ciclo operativo: accensione del PC al tramonto tramite funzione OnPower del BIOS, spegnimento automatico dopo l'upload dei file. Inoltre controlla telecamere con illuminatori IR e luci del giardino, spegnendole durante le ore di ripresa per evitare disturbi luminosi.
Stack Tecnologico
Acquisizione Immagini
- AllSkeye Pro: Gestione camera ASI662MC
- Output: 2 versioni immagini (convertita + last), video time-lapse, StarTrail
- Upload: FTP automatico al termine sessione
- Rilevamento base bolidi con cerchiatura automatica
AGBolideTracker (Sistema Proprietario Python)
- Linguaggio: Python 3.x
- Computer Vision: OpenCV per analisi frame
- Database: SQLite locale + MySQL remoto (sync API)
- Web Interface: Flask per dashboard amministrativa
- Streaming: Gestione 5 stream RTSP simultanei
- Multi-threading: Un thread per ogni camera
Interfaccia Web AGBolideTracker
L'interfaccia web di AGBolideTracker permette il monitoraggio e la gestione completa del sistema di rilevamento bolidi direttamente da browser, accessibile sia da desktop che da dispositivi mobili.
Web Frontend
- Backend: PHP 7.4+ con MySQL
- Streaming: HLS.js per video live
- Charts: Chart.js per statistiche avanzate
- Responsive: CSS3 con media queries mobile-first
- API: Endpoint REST per sync Python ↔ MySQL
Astronomical Manager v5.0 - Orchestratore Sistema
Sistema di gestione automatica che coordina tutti i componenti software dell'osservatorio. Funziona come servizio Windows eseguendosi in background senza bisogno di login utente, garantendo operatività continua anche dopo riavvii automatici del sistema.
Caratteristiche Principali
- Avvio/Stop Automatico: Calcola alba e tramonto per Acri (CS) e avvia/ferma le applicazioni astronomiche negli orari configurati (tramonto +30min → alba -30min)
- Esecuzione Headless: Avvia BolideTracker e Rtmp_Audio senza interfaccia grafica, completamente in background
- Monitoraggio Continuo: Thread dedicato che verifica ogni 5 minuti lo stato delle applicazioni e le riavvia automaticamente in caso di crash
- Gestione Intelligente: Gestisce finestre nascoste, flag di processo e configurazioni per garantire l'esecuzione senza interazione utente
- Retry Logic: Sistema di tentativi multipli con metodi alternativi (wrapper Python) in caso di fallimento avvio standard
- Logging Dettagliato: Registra ogni operazione per debug e analisi delle performance
Architettura del Sistema
Componenti Gestiti
- BolideTracker: Sistema principale di rilevamento bolidi con 5 camere
- Rtmp_Audio: Sistema streaming RTMP per dirette live
Modalità di Avvio
Funzionalità Avanzate
1. Calcolo Astronomico Alba/Tramonto
Database interno con orari medi mensili per la località di Acri (39°N, 16°E). Sistema aggiornato automaticamente con offset configurabili (+30min dopo tramonto, -30min prima alba) per garantire acquisizione in completa oscurità.
2. Gestione Headless BolideTracker
Modifica automaticamente il file config.json di BolideTracker per
abilitare modalità headless, disabilitare notifiche desktop, e configurare
auto-start. Questo permette l'esecuzione come servizio Windows senza GUI.
3. Sistema di Monitoraggio e Auto-Ripristino
Thread separato che verifica continuamente lo stato dei processi. Se rileva un crash o un'interruzione anomala, tenta automaticamente il riavvio. Check ogni 5 minuti con retry logic intelligente.
4. Verifica Web Interface
Oltre al check del processo, verifica che la web interface Flask di BolideTracker (porta 8081) sia effettivamente raggiungibile e funzionante. Questo garantisce che l'applicazione non sia solo "avviata" ma operativa.
Integrazione con Windows Service
Lo script è progettato per essere eseguito come servizio Windows utilizzando NSSM (Non-Sucking Service Manager). Questo permette:
- Avvio automatico all'accensione del PC (senza login utente)
- Esecuzione in background permanente
- Riavvio automatico in caso di crash del servizio
- Log persistenti anche dopo riavvio sistema
- Gestione priorità di processo
Modalità di Esecuzione
1. Servizio Completo (Produzione)
2. Test Manuale Avvio
3. Test Manuale Stop
4. Solo Monitoraggio
Logging e Diagnostica
Sistema di logging completo che registra ogni operazione in
C:\AstronomicalManager\astro_service.log con formato:
Emoji per Stato Operazioni
- 🚀 Avvio sistema
- ✅ Operazione riuscita
- ⚠️ Warning / Retry in corso
- ❌ Errore critico
- 🛑 Stop sistema
- ℹ️ Informazione
Vantaggi del Sistema
- Zero Intervento Manuale: Sistema completamente automatico, nessun login richiesto
- Affidabilità 24/7: Monitoraggio continuo con auto-ripristino automatico
- Risparmio Energetico: Avvio/stop preciso basato su alba/tramonto reali
- Sicurezza: Nessuna GUI esposta, esecuzione in background sicura
- Manutenibilità: Log dettagliati per debug e analisi problemi
- Scalabilità: Facile aggiunta di nuove applicazioni da gestire
Configurazione
File C:\AstronomicalManager\astro_config.json:
Algoritmo di Rilevamento Bolidi
Il cuore del sistema è l'algoritmo di detection sviluppato completamente da zero per rilevare bolidi attraverso l'analisi della luminosità e del movimento degli oggetti nel campo visivo.
Caratteristiche Principali
- Background Modeling: Calcolo background tramite media mobile di 30 frame
- Motion Detection: Rilevamento oggetti in movimento tramite differenza frame
- Brightness Threshold: Soglia fissa di luminosità minima (180/255)
- Tracking Oggetti: Segue il movimento di oggetti luminosi per più frame consecutivi
- Filtri Qualità: Area (30-50000 px²), velocità (50+ px/s), durata minima (4 frame), linearità traiettoria (>80%)
BREAKTHROUGH: Brightness Increase Detection
L'innovazione chiave per eliminare i falsi positivi!
Implementazione di un calcolo dell'incremento percentuale di luminosità rispetto ai 30 frame precedenti al rilevamento. Questo permette di distinguere un vero bolide (che causa un aumento significativo di luce) da oggetti normali in movimento.
Prestazioni del Sistema
- Prima dell'implementazione: 25% falsi positivi (foglie, nuvole, riflessi)
- Dopo l'implementazione: 8% falsi positivi
- Riduzione: 68% di falsi positivi eliminati
- Precisione rilevamento: ~92%
Cosa viene filtrato
- Movimento di alberi o foglie
- Nuvole in transito
- Riflessi o luci artificiali
- Animali o insetti vicini alla camera
- Artefatti luminosi
Come Funziona
Esempio pratico (soglia configurata = 0.03%):
• Bolide intenso: baseline=120, picco=150 → incremento=25.0% ✓
• Bolide debole: baseline=120, picco=120.1 → incremento=0.08% ✓
• Foglia mossa: baseline=120, picco=120.02 → incremento=0.017% ✗
• Rumore: baseline=120, picco=120.01 → incremento=0.008% ✗
Nota tecnica: La soglia minima è configurabile partendo da 0.04% (molto sensibile) in su. Il valore attuale di 0.03% è estremamente sensibile e permette di catturare anche bolidi molto deboli, riducendo al contempo i falsi positivi del 68% rispetto al sistema senza questo filtro. Con questa configurazione il sistema raggiunge una precisione del 92%. Valori più alti (es. 0.5% o 1%) ridurrebbero ulteriormente i falsi positivi ma perderebbero eventi deboli.
Workflow Completo
Frame Buffer & Recording
Sistema intelligente di buffering pre/post evento
- Buffer Pre-Evento: 10-45 secondi configurabile (default 10s)
- Recording Post-Evento: +8 secondi dopo fine rilevamento
- Estrazione Frame: Primo e ultimo frame del bolide a risoluzione originale
- Codec Video: H.264 qualità 85, ~2-5 MB per video
- Organizzazione File: YYYYMMDD/camera/bolide_timestamp.mp4
Database Sync System
Sincronizzazione automatica bidirezionale SQLite ↔ MySQL
Workflow
- Rilevamento locale → salvataggio immediato SQLite
- Upload FTP video + frames (thread asincrono)
- Sync API REST → MySQL remoto ogni 5 minuti
- Admin conferma via web → update flag "confirmed"
- Sync inverso per coerenza database
Campi Database
- timestamp, camera, duration, speed, distance
- brightness, linearity
- brightness_increase (nuovo campo!)
- video_path, thumbnail_path
- confirmed, false_positive, notes
- ftp_uploaded, remote_synced
Scripts Python Realizzati
1. AGBolideTracker.py (Core Sistema)
Coordina tutti i moduli e gestisce il ciclo di vita dell'applicazione.
2. camera_manager.py (Gestione Stream)
Thread dedicato per ogni camera che gestisce stream, buffer e rilevamento.
3. bolide_detector_dynamic.py (Algoritmo Detection)
Algoritmo proprietario con soglia adattiva.
4. database.py & database_sync.py
Gestione database locale e sincronizzazione remota.
5. ftp_manager.py (Upload Automatico)
Thread dedicato per upload FTP asincrono.
6. web_interface.py (Dashboard Flask)
Dashboard per monitoraggio e gestione sistema.
Scripts PHP Realizzati
1. ordinare.php (Organizzazione File)
Script automatico per organizzazione file caricati.
2. get_all_images.php (API Immagini Live)
Endpoint unificato per recupero immagini live.
3. sync_api.php (Endpoint Sync Python)
API REST per sincronizzazione rilevamenti da Python.
4. bolidetracker/index.php (Galleria Pubblica)
Interfaccia pubblica con filtri e paginazione.
5. admin.php (Pannello Amministrazione)
Area riservata per validazione rilevamenti.
6. statistics.php (Statistiche Avanzate)
Dashboard con grafici Chart.js.
Risultati e Statistiche
Il sistema è operativo da oltre un anno con risultati significativi:
- 132 bolidi confermati (157 tracciamenti totali)
- Operativo da Dicembre 2024 (tracking ufficiale dal 21/12/2024)
- Precisione migliorata: ~92% rilevamenti validi con brightness_increase
- Falsi positivi ridotti: Da 25% a 8% con il nuovo filtro
- Copertura cielo: 360° grazie alle 5 camere
- Database: 157 rilevamenti totali
- Storage: ~0.5 GB video
Evoluzione del Progetto
Dal concept iniziale al sistema multi-camera completo
🌟 Nascita del Progetto - AllSkyCam Lunga Esposizione
Il progetto parte da Agosto 2024, con l'installazione della AllSkyCam lunghe esposizione ASI662MC sul tetto, con PC, automazione e sito internet.
⚡ AllSkyCam RealTime - Sensore Sony IMX 664
La successiva evoluzione è stato l'inserimento di una AllSkyCam realtime, con sensore più grande il Sony IMX664, posizionata anch'essa sul tetto.
🚀 AGBolideTracker v1.0 - Sistema Automatico
Il cuore del progetto: AGBolideTracker, il sistema proprietario Python che gestisce tutto automaticamente. Home Assistant dà alimentazione ai PC al tramonto (accendendoli) e toglie alimentazione a fine sessione alle 7 del mattino (i PC sono già spenti in automatico).
Architettura a due PC:
• PC Tetto: Collegato via USB alla ASI662MC (AllSkyCam lunga esposizione).
AllSkeye Pro e script proprietario caricano le immagini sul sito.
• PC Interno: AGBolideTracker (BolideTracker.exe), Astronomical Manager.exe,
AGRelay per audio camera IP. Gestisce stream RTSP locali per rilevamento, stream RTMP verso
server IONOS che converte in WebRTC per dirette sul sito.
La logica: Nessun intervento dell'uomo, tutto in automatico.
🌌 SkyCam Nord - Caccia all'Aurora
In Aprile 2025 ho installato la Skycam Nord, in previsione di un'Aurora boreale visibile a basse latitudini, che si è verificata il 12 novembre 2025. La camera è posizionata sul terrazzo con visuale Nord.
📡 Sistema Multi-Camera Completo
Infine, nell'estate del 2025 ho installato le tre camere rimanenti: Skycam Sud, Est ed Ovest.
Sud sopra ed Est sotto. Ed Ovest dislocate in diversi punti per avere la visuale migliore.
Tutte le tre camere sono collegate via LAN fino all'osservatorio, poi fino a casa con un ponte wireless.
💡 Brightness Increase Detection
Breakthrough algoritmico. Implementazione calcolo incremento percentuale luminosità rispetto ai 30 frame precedenti. Falsi positivi ridotti da 25% a 8%. Precisione rilevamento ~92%.
🎯 Astronomical Manager v5.0
Sistema orchestrazione completa. Servizio Windows (via NSSM) con calcolo astronomico preciso alba/tramonto per Acri. Esecuzione headless, monitoraggio continuo, auto-ripristino. Zero intervento manuale - operatività 24/7.