\documentclass[a4paper,twocolumn,11pt]{article}
\usepackage[left=3cm,right=3cm,top=2.5cm]{geometry}%bottom=1.7cm
\usepackage[latin1]{inputenc}
\usepackage[italian]{babel}
\usepackage[T1]{fontenc}
\usepackage[dvips]{graphicx}
\usepackage{float}
\usepackage{epsf}
\usepackage{verbatim}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsbsy}
%\usepackage{fancyhdr}  <-- per avere sopra la riga alla pagina
%\pagestyle{fancy}
\usepackage{hyperref}
\usepackage{psfrag}

\hypersetup{colorlinks,%
citecolor=blue,%
filecolor=black,%
linkcolor=black,%
urlcolor=blue,%
pdftex}
%\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}}  |
%\fancyhf{}																										 |
%\fancyhead[LE,RO]{\thepage}																	 |	<--  seve per numerare e scrivere titolo sopra
%\fancyhead[LO,RE]{\scshape\rightmark}												 |       la linea margine superiore pagina
%\renewcommand{\headrulewidth}{0.4pt}
%\renewcommand{\footrulewidth}{0pt}


\begin{document}
\begin{titlepage}
%\textcolor{white}{\_}\\[1cm]
\begin{center}
{\LARGE {\bfseries UNIVERSIT\`A DEGLI STUDI DI PADOVA\\}}
\vspace{1cm}
\includegraphics[width=4cm]{figure/logo.jpg}\\[1cm]
Facolt\`a di Ingegneria\\Corso di Laurea Magistrale in Ingegneria dell'Automazione\\[1cm]{\large Progettazione di sistemi di controllo a.a. 2009/2010\\} \vspace{3cm}
{\LARGE {\bfseries  EXTENDED ABSTRACT}}\vspace{6cm}

\begin{tabular*}{0.9\textwidth}{@{\extracolsep{\fill}}ccc}
Riccardo Ghirardello & Roberto Guiotto & Fabio Paggiaro\\
607377/IAM & 601527/IAM & 603370/IAM
\\[3cm] & Padova, 23 Novembre 2009 & 
\end{tabular*}


\end{center}
\end{titlepage}

\newpage

\section{Formulazione del problema ed obiettivi}

\subsection{Descrizione del problema}
Il problema consiste nello studiare ed analizzare la topologia dell'ambiente da monitorare, intesa come insieme di aree di visibilità, individuate dall'intersezione dei campi "ottici" delle videocamere (abbr. VCC), in base al sistema di  videosorveglianza utilizzato. In particolare si vuole associare una probabilità di transizione che descriva la possibilità di un  \emph{target} di spostarsi da una regione all'altra.
La valutazione di tali aree e probabilità sarà effettuata sulla base dei dati provenienti dalle videocamere, nella la fase di calibrazione del sistema. Durante questa fase l'impiantista o chi per esso, dopo aver provveduto all'installazione del sistema di videosorveglianza, dovrà muoversi all'interno dell'ambiente da monitorare con un oggetto facilmente riconoscibile dalle videocamere, tramite programmi di visione computazionale. Lo scopo è fornire al sistema dati che permettano di identificare un primo modello che descriva le aree visuali e le relazioni fra esse cioè le probabilità di transizione dall'una all'altra. 
Il sistema dovrà poi essere in grado di apprendere dati in maniera autonoma per migliorare tale modello rendendolo il più possibile affine alla topologia dell'ambiente da monitorare.

\subsection{Utilità}

Essenzialmente, la realizzazione di questo modello topologico ha lo scopo di migliorare la notifica dei segnali di allerta al sorvegliante dell'impianto  di videocontrollo. Quindi al sorvegliante, invece di delegare il compito di monitorare i segnali provenienti dalle videocamere senza alcun particolare criterio, è affidato quello di esaminare solo i video forniti dal sistema in caso di "eventi anomali". 
Il sistema dovr\'a quindi essere in grado di individuare questi eventi anomali e di fornire sullo schermo dell'addetto alla sorveglianza non solo i segnali video provenienti  dalle videocamere che inquadrano l'area in cui si verifica ma anche quelli che inquadrano aree adiacenti, in cui è più probabile che l'evento si sposti. 
Tutto ciò è utile affinché non si realizzi un deterioramento della concentrazione del sorvegliante. E' stato infatti dimostrato come l'attenzione di un addetto alla sorveglianza, anche di un numero limitato di monitor, in cui sono trasmessi i video provenienti dalle telecamere, cali significativamente gi\'a dopo breve tempo, rendendolo incapace di riconoscere eventi anomali che avvengono nell'ambiente sorvegliato. Invece, con l'utilizzo del sistema sopra descritto, l'operatore viene avvisato in automatico sia dell'evento anomalo, sia di dove esso si stia verificando. Inoltre è possibile seguirne i movimenti grazie al fatto che nei monitor sono visualizzate anche quelle zone dove l'evento anomalo non è presente ma è più probabile che transiti.

\subsection{Ipotesi di partenza}


L'idea e' quella di monitorare una regione spaziale estesa (ad esempio 1000x500m), con molte videocamere (anche centinaia) del tipo PTZ ( pan - tilt - zoom ).
Si suppone di lavorare in un ambiente volumetrico interno (ad esempio un terminal aeroportuale) in questa maniera i loro "coni" di visibilità possono intersecarsi. 
Per ridurre la complessità si decide innanzitutto di studiare il problema in due dimensioni, restringersi a un'area di $25$x$50$m con $N =10$ telecamere posizionate sul perimetro e fisse. 

\begin{figure}[ht]
\begin{center}
\includegraphics[width=0.5\textwidth]{pianta_con_descrizione.pdf}
\end{center}
\caption{Ambiente videosorvegliato}
\label{fig1}
\end{figure}

Il modello di telecamera scelto, raffigurato nella figura seguente, possiede come parametri intrinseci raggio di visibilità pari a $20$m per un angolo di campo di $30°$.

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=0.3\textwidth]{videocamera.pdf}
\end{center}
\caption{Parametri VCC utilizzata nel modello.}
\label{fig2}
\end{figure}

Si suppone che tramite strumenti di visione computazionale si riesca a discriminare esattamente la presenza dell'oggetto (noto) che serve per la taratura del sistema. 
Delle VCC non sono note posizione e orientamento, e quindi neppure la forma delle partizioni dello spazio date dall'intersezione dei coni di visibilità. Proprio questa sarà la causa dei cosiddetti ''stati nascosti'' ( descritti pi\'u avanti) .
I dati che le VCC forniscono sono treni di impulsi binari (a tempo discreto): 1 quando la telecamera vede l'oggetto e 0 altrimenti.  
Si considera un contesto di controllo centralizzato il quale ad ogni istante ha a disposizione un vettore di $N$ booleani (dominio $\left\{0,1\right\}^N$ ) che rappresenta uno stato del sistema (nella realtà in concetto di stato corrisponde a una partizione  dello spazio). Potenzialmente si possono avere $2^N$ stati $v$ possibili, ma non tutti saranno verificati: alcuni perché quasi impossibili (tipo 1 1 \dots 1 cio\'e tutte le VCC vedono contemporaneamente il \emph{target}), altri perché non sono generabili dai dati raccolti (ad esempio se il \emph{target} per la calibrazione non passa in una certa zona). Saranno quindi di numerosità $M$, dove $M<2^N$ e si potr\`a cos\'i definire  $\mathcal{V}=\left\{ v_1, \dots , v_M \right\}$ come insieme degli stati.
 
\begin{figure}[htpb]
\begin{center}
\includegraphics[width=0.5\textwidth]{dati.pdf}
\end{center}
\caption{Tipologia dati in ingresso.}
\label{fig3}
\end{figure}


\subsection{Obiettivi}

Usando i dati forniti dalle telecamere, che sono prodotti da un ipotetico  \emph{target} che si muove in mondo casuale cercando di coprire la maggior superficie di interesse possibile, si vuole determinare le probabilità di transizione da una partizione all'altra, e in particolare dal campo visivo di una videocamera a un altro.
Si costruirà dapprima un grafo i cui stati sono sopra descritti, gli archi rappresentano i possibili passaggi tra di essi, e i pesi ad essi corrispondenti indicano le probabilità di transizione. In sostanza si costruisce un modello di Markov.
Si pensa di dover successivamente passare a un Hidden Markov Model (HMM) per tener conto della eventuale presenza di stati nascosti (descritti pi\'u sotto). La sua costruzione sfrutter\'a in modo pi\'u completo i dati, tenendo in particolare conto di parte una parte di storia passata e anche futura (in un qualche modo da definirsi).

Questo servirà poi per creare un Hidden Markov Model su cui si potrà implementare un filtro di Kalman per predire in base a questo la posizione dell'oggetto finale.

\section{Problematiche e possibili soluzioni}


\begin{itemize}
\item[-] Innanzitutto e' necessario avere dei dati su cui lavorare.
Si realizza preliminarmente un simulatore in cui le telecamere sono fisse e in posizione nota. I "treni di impulsi" provenienti dalle singole telecamere sono dovuti al movimento di un punto lungo una traiettoria generata casualmente cercando allo stesso tempo di coprire la maggior superficie di interesse possibile.
L'output sarà una tabella $G$ di $N$ colonne e $T$ righe (dove $T$ rappresenta il numero di istanti di campionamento) in cui l'elemento $G_{i,j}$ può essere 1 se all'istante $i$ la telecamera $j$ vede il \emph{target} e 0 altrimenti.

\item[-] Il secondo problema e' costruire il grafo topologico.
La costruzione viene direttamente dall'analisi dei dati: ogni riga di $G$ rappresenta uno stato (non necessariamente diverso dai precedenti) e il passaggio da un ipotetico stato $v_\alpha$ a uno stato $v_\beta$, cioè da una riga alla successiva, definisce un arco $a_{\alpha,\beta}$ di probabilità $p_{\alpha,\beta}$ non nulla (la cui modalità di assegnazione sarà decisa in fase di implementazione). 

\item[-] Nella determinazione degli stati e' possibile che aree distinte viste dalle stesse VCC vengano interpretate come un singolo stato quando invece, nella realtà, ciascuna di esse dovrebbe essere descritta da uno stato diverso (ad esempio se metà delle volte che ci si trova nello stato $v_2$ si proviene da $v_1$ e si va nello stato  $v_3$, mentre l'altra metà si  proviene da $v_7$ e si va nello stato  $v_8$, allora in questo caso si può ipotizzare che lo stato $v_2$ corrisponda in realtà a due partizioni distinte). In questo caso si parla di stati nascosti e il problema sarà realizzare un algoritmo che, per quanto possibile, cerchi di identificarli. Naturalmente, in questa maniera, il numero di stati passa da $M$ a $M+H$ (con $H$ numero di stati nascosti) e la complessità del modello aumenterà di conseguenza.

\item[-] Il fatto di avere ostacoli (intesi come barriere visive e non oltrepassabili) all'interno dell'area monitorata non \'e da ritenersi un problema di rilievo perché il sistema dovrebbe risultare trasparente ad essi, dato che per creare il modello 

\item[-] Come sviluppi successivi si pensava eventualmente di analizzare il comportamento del sistema quando vengono aggiunti o sottratti agenti di videosorveglianza.
 
 \end{itemize}

\section{Approccio}

Si intende innanzitutto costruire il simulatore per avere dati sintetici su cui applicare i nostri algoritmi e dai quali si può valutare se i risultati ottenuti sono verosimili in quanto le condizioni di simulazione sono note.
Si implementer\'a, con l'ausilio delle catene di Markov (normali prima e nascoste poi) un algoritmo per determinare stati, archi e probabilit\'a di transizione che andranno a costituire il grafo.
Sar\'a poi da valutare quale struttura dati ottimizza, sia in termini computazionali che di memoria utilizzata, la realizzazione del grafo.


\section{Agenda}
\begin{itemize}
\item[-] Dal 24/11 al 29/11: lettura articoli
\item[-] Dal 30/11 al 07/12: implementazione del simulatore
\item[-] Dal 08/12 al 20/12: implementazione algoritmo per la creazione del grafo
\item[-] Dal 21/12 al 17/01: variante del punto precedente con HMM
\item[-] Dal 18/01 al 31/01: stesura relazione
\item[-] Dal 01/02 a data appello: presentazione
 \end{itemize}

\section{Riferimenti}

\begin{itemize}
\item[-] articoli che descrivono le catene di Markov e le catene di Markov nascoste, loro proprietà;
\item[-] non si sono ancora trovate fonti che trattano del nostro problema con il nostro stesso tipo di dati in ingresso, bensì più che altro riferiti a problemi di visione e riconoscimento di immagini.
 \end{itemize}

\end{document}
