Comparazione di Kalman e ConDensation in video-tracking

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Comparazione di Kalman e ConDensation in video-tracking"

Transcript

1 Relazione di Analisi Immagini e Video Maggio 2007 Comparazione di Kalman e ConDensation in video-tracking Docente: Prof. Pietro Pala Assistenti: Ing. Walter Nunziati Ing. Andrew D. Bagdanov Autori: Nicola Martorana Iacopo Masi Marco Meoni Indice Indice 1 Elenco delle figure 2 Listings 4 1 Introduzione 5 2 Metodi di tracking basati su modelli Kalman Filter Definizione del modello Predict Correct Parametri e configurazione del filtro ConDensation Descrizione dell implementazione dei modelli Sviluppo dell applicativo Obiettivi Librerie Intel OpenCV Aree funzionali delle librerie Riferimenti Control Flow del programma Back subtraction Predizione HighGui Scripting GNUPlot Comparazione di Kalman e ConDensation in video-tracking 1

2 4 Esperimenti Video: movies12.mjpeg Test 1: MOD=3, Q=1000, S= Test 2: MOD=3, Q=2000, S= Test 3: MOD=3, Q=1000, S= Test 4: MOD=3, Q=1000, S= Test 5: MOD=3, Q=1000, S= Video: tappetonozoom.avi Test 6: MOD=3, Q=1000, S= Test 7: MOD=5, Q=1000, S= Test 8: MOD=2, Q=1000, S= Test 9: MOD=1, Q=2000, S= Test 10: MOD=1, Q=500, S= Video: singlecar.avi Test 11: MOD=3, Q=1000, S= Test 12: MOD=10, Q=5000, S= Test 13: MOD=6, Q=1000, S= Test 14: MOD=6, Q=1, S= Test 15: MOD=6, Q=0.1, S= Test 16: MOD=6, Q=0.001, S= Test 17: MOD=6, Q=0.0001, S= Test 18: MOD=1, Q=0.0001, S= Conclusioni 45 Riferimenti bibliografici 47 Elenco delle figure 1 Media Integration and Communication Centre, Firenze Il ciclio di calcolo del filtro di Kalman Ciclo di Kalman completo, con parametri ed equazioni Esempio di applicazione del ConDensation per la rilevazione del contorno di una mano Samples e relative probabilità Esempio di scelta tra due blob Esempio di background subtraction graduale Rappresentazione del vettore dello stato movie12 screenshot Test 1: Tracciamento Comparazione di Kalman e ConDensation in video-tracking 2

3 11 Test 1: Previsioni Test 2: Tracciamento Test 2: Previsioni Test 3: Tracciamento Test 3: Previsioni Test 4: Tracciamento Test 4: Previsioni Test 5: Tracciamento Test 5: Previsioni tappeto-nozoom screenshot Test 6: Tracciamento Test 6: Previsioni Test 7: Tracciamento Test 7: Previsioni Test 8: Tracciamento Test 8: Previsioni Test 9: Tracciamento Test 9: Previsioni Test 10: Tracciamento Test 10: Previsioni movie12 screenshot Test 11: Tracciamento Test 11: Previsioni Test 12: Tracciamento Test 12: Previsioni Test 13: Tracciamento Test 13: Previsioni Test 14: Tracciamento Test 14: Previsioni Test 15: Tracciamento Test 15: Previsioni Test 16: Tracciamento Test 16: Previsioni Test 17: Tracciamento Test 17: Previsioni Test 18: Tracciamento Test 18: Previsioni Comparazione di Kalman e ConDensation in video-tracking 3

4 Listings 1 Nucleo dell Applicazione - execute.cpp Background Subtraction implementato con MOG - getbackground.cpp Predizione di Kalman - kalman.cpp Predizione di Condensation- condensation.cpp Uso delle HighGui - execute.cpp Script bash che invoca GNUPlot con i vari file di configurazione - gplot.sh Un esempio di file di configurazione dello scritp che visualizza il grafico - plot-window Comparazione di Kalman e ConDensation in video-tracking 4

5 1 Introduzione Questa relazione descrive lo studio effettuato, i metodi utilizzati ed i risultati raggiunti per la realizzazione dell elaborato relativo al corso di Analisi delle immagini e dei video, appartenente al corso di laurea specialistica in Ingegneria Informatica di Firenze, tenuto dal Prof. Pietro Pala. L elaborato si è incentrato sullo studio di due algoritmi di tracking video, il filtro di Kalman ed il ConDensation, iniziando con l approfondimento delle rispettive basi teoriche per poi passare all implementazione di entrambi, finalizzata all ottenimento di risultati comparativi, che sono stati catalogati ed interpretati. Lo sviluppo dell elaborato è stato coordinato all interno del Media Integration and Communication Center 1 in particolare dall Ing. Walter Nunziati e dall Ing. Andrew D. Bagdanov, ai quali va un particolare ringraziamento per l attenzione che hanno riposto in questo lavoro. Figura 1: Media Integration and Communication Centre, Firenze L implementazione del software che ha fornito i risultati comparativi è stata effettuata nel linguaggio di programmazione C++ tramite le librerie per il computer vision OpenCV 2, sviluppate internamente ad Intel, ma rese pubblicamente fruibili ed utilizzabili tramite una licenza GPL-compatibile; lo sviluppo del codice è stato effettuato sotto controllo di versione Subversion (SVN), in hosting presso Google Code 3. Il software è stato reso pubblico sotto licenza libera GNU GPL 4. Grazie al sistema di controllo di versione è stato possibile sviluppare il software contemporaneamente sia sotto architettura Unix (nello specifico diverse distribuzioni di GNU/Linux) che sotto architettura Microsoft Windows, risultando così pienamente compatibile con entrambe. Con questa relazione ci si prefigge l obiettivo di ripercorrere il cammino fatto nello sviluppo dell elaborato, iniziando nel primo capitolo con una introduzione ai due metodi di tracking, con un breve approfondimento delle rispettive basi matematiche per poi concludere focalizzando l attenzione sulla specifica implementazione del modello utilizzato. La descrizione passerà nel secondo capitolo ad affrontare lo sviluppo del software che ha reso possibile lo sviluppo della comparazione, approfondendo i punti fondamentali delle librerie utilizzate per andare poi ad analizzare dettagliatamente il control-flow del programma. L ultima sezione sarà invece dedicata allo studio dei risultati ottenuti, e fornirà i risultati più importanti di tutta la serie di esperimenti che sono stati compiuti con il software ottenuto, riportandone grafici comparativi e schermate di esecuzione. 1 MICC, 2 Open Source Computer Vision Library GNU General Public License Comparazione di Kalman e ConDensation in video-tracking 5

6 2 Metodi di tracking basati su modelli Il video tracking è il processo secondo il quale si localizza un oggetto in movimento all interno di uno stream video e rappresenta uno dei più interessanti problemi di computer vision. Esistono svariati approcci al video tracking, ognuno orientato ad ottimizzare le prestazioni relativamente al campo d azione. In questo lavoro è stato scelto di effettuare il tracking secondo l approccio basato su modelli, che viene eseguito secondo due passi fondamentali: la localizzazione dell oggetto da tracciare ed il tracciamento effettivo. Il primo passo, computazionalmente non molto oneroso, è stato realizzato tramite il background subtraction (descritto nella sezione 3.3.1) e consiste nella rilevazione dell oggetto all interno dell immagine e nell ottenimento delle informazioni relative. Il secondo passo, ovvero l applicazione del tracking al video, rappresenta il punto di maggior interesse del lavoro in quanto consiste nell elaborazione di una stima della posizione al frame successivo dell oggetto selezionato; l esecuzione si basa sull elaborazione dei dati ottenuti dal processo di localizzazione dell oggetto. Gli obiettivi di questo elaborato sono la realizzazione, l analisi e la comparazione dei due più importanti algoritmi di tracking basato su modelli: il filtro di Kalman, conosciuto in letteratura sin dalla fine degli anni 50 (sarà descritto nella sezione 2.1) ed il Condensation, decisamente più recente rispetto al primo, riconducibile alla fine degli anni 90 (descritto nella sezione 2.2). 2.1 Kalman Filter Il Kalman Filter[1] è un efficiente filtro ricorsivo che valuta e stima lo stato di un sistema dinamico sulla base di una serie di misure soggette a rumore. Il filtro è molto potente in quanto supporta la stima degli stati passati, presenti e futuri del sistema anche quando la natura del sistema è sconosciuta. É usato in molti campi ingegneristici, che vanno dall applicazione in tecnologie radar all applicazione in computer vision, come utilizzato in questo stesso ambito Definizione del modello Il filtro ha l obiettivo di stimare lo stato x R n di un processo a tempo discreto governato dalla seguente equazione alle differenze dove x k = Ax k 1 + Bu k 1 + w k 1 (1) A è la matrice di transizione del modello, ed è applicata allo stato precedente x k 1 ; è quindi una matrice quadrata che mette in relazione due vettori delle stesse dimensioni: lo stato al tempo k 1 e lo stato al tempo k. Risulta la responsabile dell aggiornamento dello stato. B è la matrice di controllo sull input del sistema. É applicata al vettore di controllo u k 1 R l e mappa questo nella dimensione dello stato x; è quindi una matrice rettangolare nxl. w k R n è il rumore che affligge il processo. Si assume che sia descritto da una gaussiana a media 0 e covarianza descritta dalla matrice Q k. Formalmente w k N(0,Q k ). Al tempo k l osservazione dello stato reale x k è effettuata tramite il vettore della misura z R m che è modellato da z k = Hx k + v k (2) dove H è la matrice che mappa lo spazio dello stato reale nello spazio dello stato osservato e risulta per questo rettangolare, di dimensione mxn. Comparazione di Kalman e ConDensation in video-tracking 6

7 v k R m è il rumore dell osservazione, che come per il rumore w k è descritto da una gaussiana a media zero e covarianza R k. Formalmente si può esprimere come v k N(0,R k ). Da notare che lo stato iniziale ed i vettori che descrivono la presenza di rumore negli stati successivi sono da considerarsi mutualmente indipendenti. Come detto in precedenza il filtro di Kalman è un estimatore ricorsivo: questo significa che il filtro applica la sua stima dello stato del processo ed ottiene un feedback nella forma del vettore della misura, dal quale può aggiornare la sua computazione. Le equazioni del filtro sono raggruppabili in due macrocategorie: time-update, responsabili della proiezione nel tempo dello stato corrente per ottenere la stima a priori dello stato successivo (rappresentata dal vettore ˆx k Rn ), e measurement-update, responsabili dell incorporazione della misura allo stato corrente nella stima a priori, ottenendo così la stima a posteriori (rappresentata dal vettore ˆx k R n ). Solitamente lo stadio relativo al time-update viene definito come predict, mentre quello relativo al measurement-update come correct. Figura 2: Il ciclio di calcolo del filtro di Kalman Predict Le equazioni specifiche per il passo di predict, che proiettano lo stato e la covarianza dallo stato k 1 allo stato k sono ˆx k = A ˆx k 1 + Bu k 1 (3) P k = AP k 1A T + Q (4) dove A e B derivano dalla formula (1), considerando sempre la covarianza relativa a w come Q, mentre Pk è una matrice che rappresenta la covarianza sull errore nella stima a priori e P k è una matrice che rappresenta la covarianza sull errore nella stima a posteriori Correct Le equazioni che invece formalizzano il passo di correct effettuano una stima sul guadagno del filtro tra l osservazione attuale e quella predetta (5), ottengono la stima a posteriori (equazione (6)) data la stima a priori effettuata nel passo di update (3) e dall osservazione dello stato reale, definita in 2; viene calcolata anche la covarianza sull errore nella stima a posteriori (7): K k = P k K T (HP k HT + R) 1 (5) ˆx k = ˆx k + K k(z k H ˆx k ) P k = (1 K k H)P k (6) (7) Comparazione di Kalman e ConDensation in video-tracking 7

8 2.1.4 Parametri e configurazione del filtro L esecuzione dell algoritmo è direttamente dipendente dalla scelta che viene effettuata riguardo ai parametri di configurazione, in particolare dai valori dei componenti delle matrici Q ed R. La matrice che tiene conto della covarianza dell errore sulla misura, R, è generalmente misurata prima dell applicazione del filtro. Misurare questa grandezza è possibile perchè si suppone di poter misurare il processo in ogni momento, cosicchè possiamo avere anche delle misure offline con le quali possiamo affinare il calcolo. La determinazione dei valori della matrice Q invece, è solitamente molto più complicata da ottenere, perchè non c è la possibilità di osservare direttamente il processo che il filtro sta stimando. In entrambi i casi la tecnica solitamente utilizzata per effettuare la stima tramite il filtro di Kalman è di renderlo più performante sintonizzando i valori di Q ed R e riapplicando il filtro, in modo da determinare empiricamente la miglior configurazione. Possiamo notare inoltre che quando nell esecuzione le matrici P e Q sono costanti, anche la covarianza sull errore della stima P k ed il guadagno di Kalman K k si stabilizzano velocemente fino a rimanere costanti. Figura 3: Ciclo di Kalman completo, con parametri ed equazioni Comparazione di Kalman e ConDensation in video-tracking 8

9 2.2 ConDensation Il ConDensation (Conditional Density Propagation) [2] è un algoritmo probabilistico molto noto in computer-vision, conosciuto anche come Particle Filtering. Peculiarità di questo algoritmo è quella di riuscire a stimare e tracciare con precisione i contorni di un oggetto in movimento all interno di un video, come si può vedere dalla figura 4. L algoritmo risulta ottimo nel tracking di traiettorie non lineari o afflitte da rumore non gaussiano. Figura 4: Esempio di applicazione del ConDensation per la rilevazione del contorno di una mano Per quanto rigurda il nostro lavoro il Condensation ci interessa perchè risulta robusto rispetto a dati molto rumorosi ed a cambiamenti di stato non lineari. La semplicità di questo permette di utilizzare per la descrizione approssimata del moto dell oggetto anche modelli dinamici non lineari. In modo particolare è quest ultima caratteristica che lo contraddistingue in modo netto con il filtro di Kalman, che viceversa raggiunge il massimo della sua efficienza in ambiti lineari. L algoritmo utilizza un campionamento casuale e ordinato per modellare funzioni di densità di probabilità arbitrariamente complesse. Utilizza N campioni pesati per approssimare la curva che descrive la distribuzione dei dati. Ciascun campione - sample - consiste dunque di uno stato e di un peso. Il peso è proporzionale alla probabilità che lo stato del sample sia lo stato predetto dall algoritmo. Chiamiamo con H t il vettore dei samples { s 1 (t), s 1 (t),..., s N (t)} all istante t. (ipotesi) si (t) = { x i (t), p(x i (t))} (8) xi (t) è la posizione stimata per il sample i all istante t. p( x i (t)) è la probabilità associata alla posizione x i (t) che caratterizza il sample i Inizializzazione - passo 0 Al primo passo dell algoritmo si inizializza tutti i samples: Ciascuna posizione può essere scelta in modo casuale secondo una distibuzione uniforme. La probabilità associata a ciascun sample al primo passo è invece distribuita secondo una gaussiana standard centrata nel valore medio tra il valore massimo e il valore minimo assumibile per la posizione dell oggetto e la relativa varianza. Esecuzione - passo t Il sample s i (t) con probabilità maggiore è la predizione per il Condensation. Per passare dal vettore di stato H t al successivo H t+1 si eseguono i seguenti passi: 1. Si campiona la posizione reale dell oggetto al passo t. [ z (t)] Comparazione di Kalman e ConDensation in video-tracking 9

10 2. Si calcola la posizione per ciascun sample secondo lo spostamento dato dal modello dinamico che in qualche modo descrive il moto dell oggetto: xi (t + 1) = f ( x i (t)) (9) 3. Si stima la probabilità p( z (t)) secondo la densità di probabilità che caratterizza i campioni all istante t. 4. Per ogni sample è ricalcolata la probabilità condizionata applicando il teorema di Bayes: p i ( x i (t + 1)) = p( x i (t) z (t)) (10) Il risultato otteenuto è un nuovo set di N samples per il tempo t. Figura 5: Samples e relative probabilità 2.3 Descrizione dell implementazione dei modelli Solitamente in letteratura si considera come Modello la rappresentazione di un oggetto che corrisponda al fenomeno modellato per il fatto di riprodurne le caratteristiche ed i comportamenti fondamentali. Risulta quindi fondamentale riuscire a definire un modello formale il più precisamente possibile, in modo da garantire che l astrazione matematica dell evento che vogliamo poi utilizzare per l esecuzione degli esperimenti sia il più coerente possibile all entità reale. L obiettivo è stato quello di modellare il moto generico di un oggetto nel piano, per poi riuscire tramite model based tracking a predirne il moto. Inizialmente la modellazione si è basata sull osservazione del fenomeno fisico della caduta di un grave (Bouncing Ball) e sulla successiva scrittura del sistema dinamico che lo rappresenti a livello teorico. L attenzione si è poi volta all estensione del modello costruito per un moto che non fosse solo di caduta verticale, ma che potesse spaziare anche su di un piano con una certa velocità verticale e orizzontale. Il modello quindi risulta la rappresentazione formale della posizione del punto di interesse sul piano, della velocità del punto sul piano stesso e quindi dell aggiornamento della posizione; rispetto al modello iniziale, il modello sul quale sono stati effettuati gli esperimenti è quindi dotato di una strutturazione a due componenti, x ed y, piuttosto che una semplice componente verticale. Come descritto nella sezione 2.1.1, il modello si struttura sulla definizione delle matrici e dei vettori alla base delle equazioni 1 e 2. L equazione 1 descrive l aggiornamento dello stato del modello, rappresentato appunto dal vettore x k al tempo precedente x k 1, del vettore di controllo u k 1 e del rumore sul processo w k 1. Comparazione di Kalman e ConDensation in video-tracking 10

11 Il vettore x risulta essere di dimensione 4x1, della forma x x = y v x v y (11) dove ogni componente risulta: x l ascissa della posizione sul piano cartesiano come rappresentato dalla figura 8. y l ordinata della posizione sul piano cartesiano come rappresentato dalla figura 8. v x la velocità della componente orizzontale. v y a velocità della componente verticale. Responsabile della mappatura del suddetto stato al tempo k 1 verso lo stato al tempo k è la matrice A, matrice di transizione del modello, che risulta essere quadrata (4x4) in quanto mantiene la relazione tra due vettori delle stesse dimensioni. 1 0 t 0 A = t (12) dove i parametri al suo interno mappano la transizione di ogni componente: rispettivamente le posizioni passate vengono sovrascritte da quelle nuove e lo stato aggiornato dall equazione x + t v x, per ogni riga della matrice. Il vettore B, moltiplicato per il vettore dei controlli esterni u, comporta una modifica al sistema solo sull ultima componente (velocità verticale). Nella realizzazione si è impostato il parametro g e t pari ad 1, per tracciare il moto su un piano, in quanto non si avevano forze esterne, che potessero condizionare il sistema. B = g t L ultima componente della relazione 1 è la modellazione vettoriale del rumore, rappresentata come visto tramite il vettore w. Assumendo il rumore come gaussiano, risulta di interesse la descrizione della matrice, che modella la covarianza di questo, rappresentata da Q, riguardo all importanza che riveste nella sintonizzazione del filtro di Kalman, come si è ampiamente spiegato nella sezione 4 Esperimenti Q = (14) Le ultime due matrici che compaiono nelle equazioni del modello riguardano la misura, cioè i valore ottenuti dal background subtraction. La prima ( 15 ) pesa il valore dell osservazione, effettuata dal background subtraction, per correggere la predizione del filtro di kalman. H = [ ] (13) (15) Comparazione di Kalman e ConDensation in video-tracking 11

12 La seconda ( 16 ) rappresenta la covarianza associata al rumore nella misura, che nel nostro caso assume i valori sottostanti,molto vicini a zero,data la quasi assenza di rumore nel calcolo della misura. R = [ ] (16) Il nostro modello viene inserito nell applicazione combinando l uso del calcolo matriciale fornito dalle OpenCv con il parsing di un file testuale data.txt, che risulta essere l input dei dati dell applicazione. É bene sottolineare che questo modello è usato ovviamente il kalman, ma soprattutto la matrice A di transizione dello stato è riutilizzata anche nell algoritmo ConDensation come modello dinamico. Per maggior approfondimento sullo sviluppo, costruzione e progettazione del software si rimanda alla sezione 3. Comparazione di Kalman e ConDensation in video-tracking 12

13 3 Sviluppo dell applicativo 3.1 Obiettivi L obiettivo del software è quello di realizzare un applicativo che esegua model based tracking (vedi sezione 2) sulla base di un video passatogli come ingresso. Più nel dettaglio l applicazione esegue il tracciamento tramite il filtro di Kalman [1] e il ConDensation [3], in maniera tale da poter confrontare le prestazioni dell uno e dell altro. Altri requisiti funzionali sono quelli di: fare scegliere all utente l oggetto da tracciare in caso di tracking multiplo: in questo caso il software si ferma sul primo frame del video, dando possibilità di scegliere l oggetto di cui si vuol fare il tracciamento. Per migliorare la selezione di un oggetto, vengono evidenziati dei puntini gialli in corrispondenza dei blob identificato. Vedi figura 6 tracciare a video l andamento dei due algoritmi, evidenziandoli con colori differenti; visualizzare un ellissi per ogni algoritmo che indichi la varianza del vettore di stato per quel tipo di tracking. fornire un output razionalizzato su terminale e su filesystem per verificare rispettivamente la corretta esecuzione degli algoritmi e per avere un riscontro finale sulle performance e l accuratezza di ognuno. Successivamente parsare i suddetti file per una rappresentazione grafica dell accuratezza dei due metodi di tracking. progettare e realizzare l applicazione in maniera tale che possa essere compilata ed eseguite su piattaforme diverse. I dettagli implementativi di questi punti sono rimandati alla sottosezione 3.3 Figura 6: Esempio di scelta tra due blob su tracking multiplo: l utente ha la possibilità di sccegliere su quale blob effettuare il tracciamento semplicemente cliccando vicino ad uno dei punti gialli. Il Sistema automaticamente selezionerà il blob più vicino attraverso il calcolo della distanza euclidea É bene sottolineare che il video in ingresso possiede delle restrizioni; infatti affinchè il background subtraction lavori in maniera ottima, è necessario che il video: Comparazione di Kalman e ConDensation in video-tracking 13

14 possieda semper uno sfondo fisso o che comunque non vari durante la ripresa. Cambiare sfondo sarrebbe come rinizializzare l agoritmo per il detecting dei blob. possieda un numero ( n > 40 ) di frame inziale che mostrino solo il background per facilitare il calcolo della ground truth, cioè del blob osservato da cui prendere le misure per i due algoritmi. sia stato registrato da una postazione fissa e quindi che la telecamera di ripersa non introduca nel video un moto relativo. Qualsiasi video che rispetti questi tre vincoli è considerato non solo adeguato, ma ottimale per effettuare il tracking con la nostra applicazione. 3.2 Librerie Intel OpenCV Per svilluppare l applicazione sono state utilizzate le librerie OpenCV (Open Source Computer Vision), emergente nel campo della computer vision e sviluppata da Intel sotto una licenza di tipo OpenSource, compatibile con la GNU GPL. É bene però prima fare chiarezza sull uso e lo scopo di queste librerie. La capacità di interpretare ed utilizzare correttamente le informazioni acquisite da una videocamera o fotocamera attualmente presenta molti problemi insoluti. Convertire un immagine in informazioni oggettive astraendone il contenuto dalla pura rappresentazione luminosa, sebbene sia un operazione banale per un cervello umano adulto è, a tutt oggi, un problema di elevata complessità per un sistema automatico. Oltretutto il campo di ricerca è evidentemente molto giovane, con meno di trent anni di esperienza. In quest ottica si inserisce la necessità di una base comune di potenti strumenti analitici, primo dei quali una libreria che raccolga le funzionalità degli algoritmi più utilizzati e citati in letteratura, oltre che una serie di formati di rappresentazione dei dati secondo standard aperti e condivisi. Le librerie OpenCV nascono appunto a questo scopo; lo sviluppo prende le mossa da un gruppo di ricerca sponsorizzato da Intel. E infatti parzialmente basata sulla Intel Image Processing Library (IPL): tale prodotto è oggi integrato nella libreria commerciale IIPP (Intel Integrated Performance Primitives), con cui conserva piena compatibilità e verso la quale rende disponibili un completo ventaglio di funzioni più specifiche. Tra i punti di forza sottolineiamo inoltre la politica di licenza utilizzata, in stile BSD e definita nella Intel License Agreement For Open Source Computer Vision Library, completamente compatibile con la licenza GPL. A grandi linee questo permette una libera ridistribuzione sia in forma sorgente che binaria, anche all interno di prodotti commerciali, a condizione di mantenere le note di copyright e di non utilizzare il nome Intel a scopo promozionale di prodotti derivati. Inoltre un altra potenzialità offerta è la caratteristica di essere cross-platform: cioè possono essere compilate e usate sia sotto sistema operativo Microsft Windows che GNU/Linux. Questa caratteristica le rende molto appetibili per i requisiti di portabilià che ci eravamo prefissi di raggiungere. Da notare che le librerie sono scritte in linguaggio C e non fanno uso quindi di un linguaggio orientato agli oggetti Aree funzionali delle librerie Si vuol chiarire subito un fatto che può essere causa di equivoci: con il termine libreria grafica infatti si identificano genericamente almeno tre famiglie di librerie, i cui scopi sono sostanzialmente differenti: 1. I Toolkit, ovvero librerie di primitive per la creazione di oggetti grafici di interfaccia (finestre, icone, bottoni,ecc). Parzialemente ricoperto in OpenCV dalle HighGui. 2. Librerie di rendering e multimedia, come DirectX e OpenGL, orientate alla massima performance nella creazione di effetti poligonali o vettoriali. L utilizzo più comune è teso all ottenimento di elevate prestazioni grafiche sfruttate ad esempio nei videogiochi o nelle applicazioni multimediali. Comparazione di Kalman e ConDensation in video-tracking 14

15 3. Librerie di gestione hardware grafico, come digitalizzatori e frame-grabber. Pur includendo tipicamente una base di funzioni di trattamento sono generalmente da considerarsi come API dei relativi driver hardware. Le OpenCV, pur includendo alcune funzionalità tipiche di ciascuna delle famiglie citate 5, non fanno parte di nessuno di questi gruppi. L utilizzo primario è infatti quello collegato alla visione artificiale, il cui problema principale, come già visto, è quello di estrarre da immagini/video dati significativi, trattabili in modo automatico. Tale campo di studio trova le sue applicazioni più comuni nella robotica, nei sistemi di videosorveglianza evoluti e nei sistemi di monitoraggio e sicurezza, oltre che in ogni sistema di archiviazione automatica di informazioni visive. La libreria include attualmente più di 300 funzioni, che coprono le più svariate esigenze di trattamento di immagini, comprese funzioni matematiche ottimizzate (elevamento a potenza, logaritmi, conversioni cartesiane-polari, ecc.) ed un completo pacchetto di algebra matriciale, sviluppato funzionalmente al resto del sistema. La principale categoria di uso rimane comunque il processing di tipo real-time su immagini e video. Una panoramica generale delle librerie comprende questi aspetti della computer vision: 1. Human-Computer Interface (HCI) 2. Object Identification 3. Segmentation and Recognition 4. Face Recognition e Gesture Recognition 5. Motion Tracking Riferimenti Come molti progetti opensource in maturazione 6 è stata carente la parte che riguarda la documentazione. Nonostante la presenza di un colosso alle spalle e di una struttura basata sul modello wiki, la documentazione ufficiale in pdf e html, anche se facilmente fruibile, non è stata sufficiente per colmare le lacune iniziali. Per questo motivo è stato effettuato un grosso lavoro di studio per capire il funzionamento del toolkit OpenCv, che spesso è terminato con la ricerca di documentazione in website asiatici, dove sembra che queste librerie siano molto gradite. Alcuni riferimenti importanti per OpenCV: Sito web ufficiale [4] Portale di wiki [5] OpenCv - Groups Community [6] 3.3 Control Flow del programma Come citato precedentemente, si va ora a evidenziare quelli che sono stato gli accorgimenti tecnici per implementare il nostro software di comparazione tra Kalman e Condensation. Si cerca di non riportare tutto il codice sorgente, ma di evidenziare solo spezzoni di esso, che possono fornire preziose informazioni sulla struttura. É bene sottolineare che in linea con le OpenCV, la parte principale del software non è stata sviluppata secondo il paradigma Object Oriented, ma si è usato la creazione di strutture dati sottoforma di classi solo quando necessario. Il nucleo centrale dell applicazione è il ciclo for, il quale dipende dalla lunghezza del video da analizzare. Ogni passo di computazione verrà fatto in modalità online, cioè ad ogni passo dentro il ciclo stesso, in maniera incrementale. In questo senso nessuno dei passi che andiamo a eseguire per fare il tracking risulta avere 5 vedi esempio delle HighGui 6 La versione 1.0 ufficiale è stata rilasciata nel tardo 2006; parte del progetto è stato scritto con librerie in beta testing Comparazione di Kalman e ConDensation in video-tracking 15

16 priorità su altri. 7 Gli steps effettuati durante l esecuzione del software sono i seguenti: Apertura del video da filesystem e ottenimento delle informazioni Ciclo su tutti frame del video: 1. Background Subtraction 2. Aggiornamento di Kalman e Condensation 3. Rappresentazione dei risultati Nel listato di pseudo codice sottostante è riportata l idea dell andamento dell applicativo. Listing 1: Nucleo dell Applicazione - execute.cpp void e x e c u t e ( f i l e ) { v i d e o = capturefromavi ( f i l e ) i n i t B a c k g r o u n d S u b t r a c t i o n ( v i d e o ) f o r ( i n t f r = 1 ; frame = c a p t u r e N e x t F r a m e ( v i d e o ), f r ++ ) { u p d a t e B a c k g r o u n d S u b t r a c t i o n ( frame ) i f ( frame == FIRST FRAME ) { blob = g e t B l o b S e l e c t e d F r o m U s e r ( frame ) i n i t K a l m a n ( blob ) ; } } i n i t C o n d e n s a t i o n ( blob ) ; } e l s e { blob = g e t B l o b ( Frame ) ; updatekalman ( b lob ) ; u p d a t e C o n d e n s a t i o n ( blob ) ; } Successivamente analizzeremo solo alcuni dei precedenti steps elencati Back subtraction L idea di base del Background Subtraction è quella di identificare il livello di background per un determinato video, segmentando ogni frame in altri due frames chiamati rispettivamente: Foreground Mask Background Mask 7 Per meglio spiegare gli effetti del metodo online si suppone di effettuare fuori dal ciclo il background subtraction su tutto il video e una volta finito questo passare all analisi. Così facendo si appesantisce tutto l algoritmo di calcolo e si fornisce una lunga e inutile attesa lato utente Comparazione di Kalman e ConDensation in video-tracking 16

17 In letteratura vi sono diversi modelli e/o metodi per calcolare la segmentazione tra foreground/background. particolare citiamo: In Distribuzione Unimodale Il più semplice modello assume che l intensità del valore di un pixel può essere modellata da una distribuzione unimodale, come una distribuzione Gaussiana del tipo N(µ,σ 2 ) Mixture of Gaussian MoG Il modello MoG generalizzato viene di solito usato per modelli abbastanza complessi, non statici con molteplici background. Questo tipo di modellazione è di tipo statistico e online. L idea è quella di modellare ogni pixel in un processo di funzioni gaussiane, successivamente eseguire l apprendimento online e rilevare il foreground passo passo sulla base dell intensità del valore di grigio di ogni pixel. In particolare un pixel sarà classificato come un pixel di foreground se la distribuzione a lui associata ha peso sufficientemente basso e varianza alta, viceversa verrà classificato come background pixel. Tecniche Non Parametriche Si stima la funziona di densità di probabilità per ogni pixel preso dai tanti campioni, usando una tecnica di stima sulla densità di probabilità. Approccio basato su regioni o frame É una tecnica basata su pixel, che assume che le serie di temi dell osservazione è indipendente per ogni pixel. L approccio ad alto livello è eseguito segmentando un immagine in una regione o ridefinendo un sottolivello di classificazione ottenuto su ogni pixel. Nell applicativo sarà usato il modello di Mixture of Gaussians (MoG), sia perchè si vuole coprire anche video di una certa complessità e sia perchè le librerie offrono un buon supporto per questo modello. In particolare nel listato sottostate è visualizzato l uso di esse nel file addetto al background subtraction. Listing 2: Background Subtraction implementato con MOG - getbackground.cpp / / / The f u n c t i o n t h a t i n i t t h e Background s u b t r a c t i o n w i t h Gaussian model / \param bgmodel t h e model s t r u c u t r e \param tmp frame t h e temporary frame \param bgmodel parammog t h e p a r a m e t e r s / void i n i t B a c k g r o u n d M o d e l ( CvBGStatModel bgmodel, I p l I m a g e tmp frame, CvGaussBGStatModelParams parammog ) { } / / I n i t o f t h e params parammog >w i n s i z e = 200; parammog >n g a u s s = 3 parammog >b g t h r e s h o l d = 0. 1 ; parammog >s t d t h r e s h o l d = 5 ; parammog >minarea = f ; parammog >w e i g h t i n i t = ; parammog >v a r i a n c e i n i t = 3 0 ; / / I n i t o f t h e model bgmodel = cvcreategaussianbgmodel ( tmp frame, parammog ) ; / / / The f u n c t i o n t h a t make t h e Background s u b t r a c t i o n w i t h Gaussian model / \param aviname t h e name o f t h e a v i v i d e o t o p r o c e s s \ r e t u r n savedbackgroundimage t h e background o f t h e v i d e o / Comparazione di Kalman e ConDensation in video-tracking 17

18 I p l I m a g e updatebackground ( CvBGStatModel bg model, I p l I m a g e tmp frame ) { / / Updating t h e Gaussian Model cvupdatebgstatmodel ( tmp frame, bg model ) ; / / r e t u r i n g t h e b i n a r y background } return bg model >f o r e g r o u n d ; Dalla prima funzione si nota come vengano inizializzati i parametri su cui poi sarà costruito il modello di previsione del foreground; in particolare si nota che: ogni pixel è classificato come processo che condivide 3 gaussiane la soglia ( il valore di grigio) per essere considerato background è settata a 0.1 Per il resto del codice è giusto notare che ogni volta che si processa un nuovo frame anche l algoritmo viene aggiornato su quel frame. Figura 7: Esempio di background subtraction graduale. Viene segnalato nella prima finestra quello che è il foreground del video e in seguito nella seconda l effetto del background subtraction che mette in rilievo il blob bianco rilevato sullo sfondo. Ovviamente come si vede nella figura se l algoritmo non lavora in maniera ottimale è possibile ottenere blob che non esistono nell immagine di partenza. Comparazione di Kalman e ConDensation in video-tracking 18

19 3.3.2 Predizione La parte di predizione dei dei due algoritmi è descritta nei file kalman.cpp e condensation.cpp ed è sufficientemente semplice, grazie all astrazione fornita dalle librerie OpenCV. Nel listato sottostante è rappresentato il passo di predizione del filtro di Kalman, già inizializzato, che effettua in sequenza: 1. La predizione (Predict - Time Update) del nuovo punto di stato sulla base del modello dinamico da noi descritto, cioè sulla base delle matrici A,B ed u. 2. La correzione (Correct - Measurament Update) sul nuovo punto sulla base della misura ottenuta dalla ground truth con il metodo del Background Subtraction. É da notare come nel vettore measurement vengono proprio inserite le componenti ottenute dall osservazione. Listing 3: Predizione di Kalman - kalman.cpp / / / The f u n c t i o n t h a t w i l l u p date t h e kalman s t r u c t u r e w i t h t h e data c o l l e c t e d i n e x t r a c t B l o b. i t w i l l p r o v i d e t o do t h e p r e d i c t and t h e c o r r e c t kalamn s s t e p. / \param kalman t h e p o i n t e r t o t h e kalman s t r u c t u r e \param s t r u c t c o o r d i n a t e t h e s t r u c t i n which are t h e measurement c o o r d i n a t e. ( z k ) / f l o a t updatekalman ( CvKalman kalman, coord coord ) { } i n t Meanx, Meany ; CvMat measurement = cvcreatemat ( 2, 1, CV 32FC1 ) ; Meanx = ( i n t ) coord. cx ; Meany = ( i n t ) coord. cy ; cvmset ( measurement, 0, 0, Meanx ) ; cvmset ( measurement, 1, 0, Meany ) ; CvMat u = cvcreatemat ( 1, 1, CV 32FC1 ) ; u >d a t a. f l [ 0 ] = 1 ; / / Kalman P r e d i c t c o n s t CvMat p r e d i c t = c v K a l m a n P r e d i c t ( kalman, u ) ; / / Kalman C o r r e c t c o n s t CvMat c o r r e c t = cvkalmancorrect ( kalman, measurement ) ; return c o r r e c t >d a t a. f l ; Quanto detto è stato già ampiamente dimostrato nella sezione 2.1 e in particolare nella figura 2; a livello di codice si nota che l aggiornamento di Kalman è effettuato richiamando le funzioni cvkalmanpredict(kalman,u) e cvkalmancorrect(kalman, measurement). Infine è bene sottolineare che la predizione, come accordato nella 2.3, è rappresentata da un vettore di due componenti, dove la prima rappresenta l ascissa e la seconda l ordinata nel piano del Video, che hanno come centro (0,0) il pixel in alto a sinistra. Comparazione di Kalman e ConDensation in video-tracking 19

20 Lo studio che è stato effettuato per la descrizione del modello dinamico non è servito solo nel filtro di Kalman, ma è stato riusato anche nell algoritmo del ConDensation. La matrice di transizione dello stato A, infatti è usata in esso per inizializzare ogni samples dell algoritmo, generando i valori con un random seed e limitandoli sulla base di due margini. Quanto detto è implementato nel listato sottostante nella funzione initcondensation. Infine il processo di aggiornamento del condensation vede fondamentalmente due passi principali: 1. l aggiornamento delle varie probabilità per ogni samples inizializzato sulla base dell osservazione ottenuta dalla ground truth. Eseguito dall funzione updateprocessprobdens 2. la scelta del sample a probabilità maggiore, operazione delegata dalla funzione presente in OpenCv dal nome cvcondensupdatebytime Listing 4: Predizione di Condensation- condensation.cpp CvConDensation i n i t C o n d e n s a t i o n ( CvMat indexmat, i n t nsample, i n t maxwidth, i n t maxheight ) { i n t DP = indexmat [0] > c o l s ; / /! number o f s t a t e v e c t o r d i m e n s i o n s / i n t MP = indexmat [2] >rows ; / /! number o f measurement v e c t o r d i m e n s i o n s / CvConDensation ConDens = c v C r e a t e C o n D e n s a t i o n ( DP, MP, nsample ) ;... f o r ( i n t i =0; i<dp DP ; i ++) { ConDens >DynamMatr [ i ]= indexmat [0] > d a t a. f l [ i ] ; } c vcondensinitsampleset ( ConDens, lowerbound, upperbound ) ; CvRNG r n g s t a t e = cvrng(0 x f f f f f f f f ) ; f o r ( i n t i =0; i < nsample ; i ++) { ConDens >f l S a m p l e s [ i ] [ 0 ] = cvrandint ( &r n g s t a t e ) % maxwidth ; ConDens >f l S a m p l e s [ i ] [ 1 ] = cvrandint ( &r n g s t a t e ) % maxheight ; } } return ConDens ; coord u p d a t e C o n d e n s a t i o n ( CvConDensation ConDens, coord Measurement, f l o a t stddx ptr, f l o a t s t d D Y p t r ) { coord p r e d i c t i o n ; u p d a t e P r o c e s s P r o b D e n s ( ConDens, Measurement, stddx ptr, s t d D Y p t r ) ; cvcondensupdatebytime ( ConDens ) ; } p r e d i c t i o n. s e t ( ConDens >S t a t e [ 0 ], ConDens >S t a t e [ 1 ] ) ; return p r e d i c t i o n ; Comparazione di Kalman e ConDensation in video-tracking 20

21 3.3.3 HighGui Come accennato nella sezione 3.2.1, le librerie OpenCv offrono anche un parte di toolkit per realizzare semplici widget grafici in cui poter visualizzare immagini o video, oppure semplici form per incrementare/decrementare il tuning di determinati parametri. É bene sottolineare che esse permettono anche la gestione degli eventi lato utente; per esempio è possibile catturare eventuali click del mouse. Queste widget risultano molto utile ovviamente se si vuole che l utente interagisca in maniera attiva con il software: nel nostro caso si è usato una semplice NamedWindow, fornita da questo toolkit, in cui visualizzare il video con i relativi tracciamenti; in più si è creato un gestore di eventi per catturare eventuali click del mouse che permettono all utente di selezionare il blob da tracciare in caso di tracking multiplo. Il codice seguente mostra l uso delle HighGui per realizzare quanto detto: Listing 5: Uso delle HighGui - execute.cpp / /! C r eate t h e window cvnamedwindow ( video t r a c k e r, 1 ) ;... i f ( fr ame == FIRSTFRAME) { cvsetmousecallback ( video t r a c k e r, on mouse, 0) ;... }... / /! D i s p l a y t h e temp frame i n t h e window cvshowimage ( video t r a c k e r, tmp frame ) ;... / /! L e f t C l i c k Mouse Event F u n c t i o n s void on mouse ( i n t event, i n t x, i n t y, i n t f l a g s, void param ) { } s w i t c h ( e v e n t ) { c ase CV EVENT LBUTTONDOWN: { CLICK [ 0 ] = x ; CLICK [ 1 ] = y ; } break ; } Comparazione di Kalman e ConDensation in video-tracking 21

22 3.3.4 Scripting GNUPlot Oltre lo sviluppo software, si è anche riusciti a salvare in output i risultati su file testuali, in modo tale da effettuare una successiva lettura con un qualsiasi visualizzatore di grafici com Excel o Matlab. I file prodotti contengono le coordinate, prese frame per frame, del blob stimato con il background subtraction e dei due tracciamenti. Inoltre è anche generato un file riassuntivo con i princiapli coefficieni di rendimento dei due metodi di tracking, quali varianza media e distanza media tra blob osservato e misurato. Fatto ciò si è scelto il sistema libero GNUPlot per interpretare e dare una rappresentazione grafica automatizzata dei dati raccolti, con la possibilità di creare anche immagini su hardisk al volo dei grafici. Si è infatti prodotto uno scritp bash, (fruibile anche sui sistemi Windows con GNUPlot),che automatizza il processing dell output. Lo script risulta il seguente: #! / b i n / bash Listing 6: Script bash che invoca GNUPlot con i vari file di configurazione - gplot.sh g n u p l o t p e r s i s t g n u p l o t p e r s i s t g n u p l o t p e r s i s t g n u p l o t p e r s i s t p l o t png > p l o t. png p l o t window p l o t d i s t a n c e s p l o t d i s t a n c e s png > p l o t d i s t a n c e s. png # g n u p l o t s c r i p t i n g Listing 7: Un esempio di file di configurazione dello scritp che visualizza il grafico - plot-window s e t key l e f t below R i g h t n o r e v e r s e enhanced box l i n e t y p e 1 l i n e w i d t h samplen 4 s p a c i n g 1 width 0 h e i g h t 0 a u t o t i t l e s s e t t i t l e Kalman and C o n d e n s a t i o n comparison s e t g r i d p l o t c o o r d i n a t e K a l m a n. t x t with p o i n t p t 1, c o o r d i n a t e C o n d e n s a t i o n. t x t w ith p o i n t p t 1, c o o r d i n a t e R e a l i. t x t with p o i n t p t 1 Figura 8: Rappresentazione del vettore dello stato Comparazione di Kalman e ConDensation in video-tracking 22

23 4 Esperimenti Il software prodotto è stato testato su molteplici video, tra i quali ne sono stati selezionati tre che si distinguevano per le condizioni di esecuzione, in particolare stimolando caratteristiche specifiche dei due algoritmi di tracking, in modo da efatizzarne i risultati. I tre filmati sono caratterizzati da una ripresa a camera fissa, con un singolo oggetto in movimento che può sia uscire dall inquadratura che nascondersi dietro qualche ostacolo all interno della scena (occlusione). In ognuno dei tre filmati i primi frames sono di solo sfondo, ovvero non compare alcun oggetto in moto; questa scelta è stata effettuata per facilitare l applicazione del Background Subtraction. Per ciascun video abbiamo osservato/confrontato il comportamento dei due filtri al variare di alcuni parametri quali: frequenza di campionamento (MOD) covarianza relativa al rumore del processo studiato (Q) (stabilisce la tolleranza consentita alla predizione del filtro di Kalman) numero di campioni utilizzati dal Condensation I risultati prodotti per ciascuna prova sono rappresentati in due grafici: Il primo rappresenta per ogni campionamento: la posizione dell oggetto la posizione predetta dal filtro di Kalman la posizione predetta dal Condensation Il secondo rappresenta per ogni campionamento di quanto rispettivamente ciascuna predizione si discosta dalla posizione reale dell oggetto. Inoltre per ogni test viene dato il valore medio della distanza (in pixels) tra posizione predetta e posizione reale, sia per il filtro di Kalman ( δ K ) che per il Condensation ( δ C ), oltre al valore della varianza media per il Condensation (σ x,σ y ). Comparazione di Kalman e ConDensation in video-tracking 23

24 4.1 Video: movies12.mjpeg risoluzione: 640x480 fps: durata: 50.4 s Figura 9: movie12 screenshot Si tratta di una ripresa trasversale dall alto di un automobilina radiocomandata. In questa scena i punti di occlusione sono due: una scatola al centro della scena e un ostacolo sulla sinistra. La macchina non subisce repentine accelerazioni o decelerazioni, in generale ruota attorno alla scatola centrale e riamane nascosta dietro questa per un po. L automobilina non esce mai dalla scena. Comparazione di Kalman e ConDensation in video-tracking 24

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi ControlloCosti Cubi OLAP I cubi OLAP Un Cubo (OLAP, acronimo di On-Line Analytical Processing) è una struttura per la memorizzazione e la gestione dei dati che permette di eseguire analisi in tempi rapidi,

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Il controllo della visualizzazione

Il controllo della visualizzazione Capitolo 3 Il controllo della visualizzazione Per disegnare in modo preciso è necessario regolare continuamente l inquadratura in modo da vedere la parte di disegno che interessa. Saper utilizzare gli

Dettagli

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video Video Librerie digitali Gestione di video Ogni filmato è composto da più parti Video Audio Gestito come visto in precedenza Trascrizione del testo, identificazione di informazioni di interesse Testo Utile

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C.:luxx:. PREMESSE In questa guida non verranno trattati i costrutti di flusso, le funzioni, o comunque le caratteristiche del linguaggio, che si danno come presupposte.

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

Dettagli

Sistemi Informativi Territoriali. Map Algebra

Sistemi Informativi Territoriali. Map Algebra Paolo Mogorovich Sistemi Informativi Territoriali Appunti dalle lezioni Map Algebra Cod.735 - Vers.E57 1 Definizione di Map Algebra 2 Operatori locali 3 Operatori zonali 4 Operatori focali 5 Operatori

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools Una breve introduzione operativa a STGraph Luca Mari, versione 5.3.11 STGraph è un sistema software per creare, modificare ed eseguire modelli di sistemi dinamici descritti secondo l approccio agli stati

Dettagli

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia Scuola Digitale Manuale utente Copyright 2014, Axios Italia 1 SOMMARIO SOMMARIO... 2 Accesso al pannello di controllo di Scuola Digitale... 3 Amministrazione trasparente... 4 Premessa... 4 Codice HTML

Dettagli

EasyPrint v4.15. Gadget e calendari. Manuale Utente

EasyPrint v4.15. Gadget e calendari. Manuale Utente EasyPrint v4.15 Gadget e calendari Manuale Utente Lo strumento di impaginazione gadget e calendari consiste in una nuova funzione del software da banco EasyPrint 4 che permette di ordinare in maniera semplice

Dettagli

Nuovi oggetti grafici per la Visualizzazione del Tracker

Nuovi oggetti grafici per la Visualizzazione del Tracker Chapter 4 Nuovi oggetti grafici per la Visualizzazione del Tracker In questo capitolo illustrerò i nuovi oggetti grafici che ho sviluppato ed implementato nel software di visualizzazione di CMS. Prima

Dettagli

Setup e installazione

Setup e installazione Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo

Dettagli

Corso di. Dott.ssa Donatella Cocca

Corso di. Dott.ssa Donatella Cocca Corso di Statistica medica e applicata Dott.ssa Donatella Cocca 1 a Lezione Cos'è la statistica? Come in tutta la ricerca scientifica sperimentale, anche nelle scienze mediche e biologiche è indispensabile

Dettagli

Come creare il test di Conconi tramite l applicazione Training Center

Come creare il test di Conconi tramite l applicazione Training Center Come creare il test di Conconi tramite l applicazione Training Center Nella seguente nota tecnica, è spiegato passo passo come creare un allenamento avanzato, nello specifico, il Test di Conconi. Un test

Dettagli

I file PDF possono essere creati : 1. dall interno del programma Adobe 2. Per quelli che lo prevedono direttamente dall interno di altri programmi

I file PDF possono essere creati : 1. dall interno del programma Adobe 2. Per quelli che lo prevedono direttamente dall interno di altri programmi I file PDF possono essere creati : 1. dall interno del programma Adobe 2. Per quelli che lo prevedono direttamente dall interno di altri programmi quali: 3. Tutto il pacchetto Office di Microsoft, 4. alcuni

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Cosa è un foglio elettronico

Cosa è un foglio elettronico Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

PowerPoint 2007 Le funzioni

PowerPoint 2007 Le funzioni PowerPoint 2007 Le funzioni Introduzione Cos è un ipertesto L' ipertesto è un testo organizzato in link, o collegamenti ad altre parti del testo e/o altri testi, in modo da consentire all utente di scegliere

Dettagli

L analisi dei dati. Capitolo 4. 4.1 Il foglio elettronico

L analisi dei dati. Capitolo 4. 4.1 Il foglio elettronico Capitolo 4 4.1 Il foglio elettronico Le più importanti operazioni richieste dall analisi matematica dei dati sperimentali possono essere agevolmente portate a termine da un comune foglio elettronico. Prenderemo

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

MArine Coastal Information SysTEm

MArine Coastal Information SysTEm GUIDA ALL UTILIZZO DELL INTERFACCIA CARTOGRAFICA Il MArine Coastal Information SysTEm è un sistema informativo integrato che permette di gestire dati ambientali interdisciplinari (fisici, chimici e biologici)

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Esercizio 1: trading on-line

Esercizio 1: trading on-line Esercizio 1: trading on-line Si realizzi un programma Java che gestisca le operazioni base della gestione di un fondo per gli investimenti on-line Creazione del fondo (con indicazione della somma in inizialmente

Dettagli

Tutorial per il modulo Composizione e tecnica fotografica Un approfondimento sulla fotografia panoramica. Roberto Gonella, Alberto Terragni

Tutorial per il modulo Composizione e tecnica fotografica Un approfondimento sulla fotografia panoramica. Roberto Gonella, Alberto Terragni Tutorial per il modulo Composizione e tecnica fotografica Un approfondimento sulla fotografia panoramica Roberto Gonella, Alberto Terragni INDICE 1. Introduzione... 2 2. Scattare e importare le fotografie...

Dettagli

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

marketing highlights Google Analytics A cura di: dott. Fabio Pinello

marketing highlights Google Analytics A cura di: dott. Fabio Pinello marketing highlights Google Analytics A cura di: dott. Fabio Pinello Google Analytics è uno strumento gratuito fornito da Google per monitorare il traffico di visite dei siti web su cui è installato. Cos

Dettagli

ISTRUZIONI PER LA GESTIONE BUDGET

ISTRUZIONI PER LA GESTIONE BUDGET ISTRUZIONI PER LA GESTIONE BUDGET 1) OPERAZIONI PRELIMINARI PER LA GESTIONE BUDGET...1 2) INSERIMENTO E GESTIONE BUDGET PER LA PREVISIONE...4 3) STAMPA DIFFERENZE CAPITOLI/BUDGET.10 4) ANNULLAMENTO BUDGET

Dettagli

Guida alla registrazione on-line di un DataLogger

Guida alla registrazione on-line di un DataLogger NovaProject s.r.l. Guida alla registrazione on-line di un DataLogger Revisione 3.0 3/08/2010 Partita IVA / Codice Fiscale: 03034090542 pag. 1 di 17 Contenuti Il presente documento è una guida all accesso

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Come creare il test di Yasso tramite l applicazione Training Center

Come creare il test di Yasso tramite l applicazione Training Center Come creare il test di Yasso tramite l applicazione Training Center A differenza degli altri test pubblicati da Garmin, il test di Yasso necessita di un approfondimento. Il test di Yasso è un test molto

Dettagli

SPC e distribuzione normale con Access

SPC e distribuzione normale con Access SPC e distribuzione normale con Access In questo articolo esamineremo una applicazione Access per il calcolo e la rappresentazione grafica della distribuzione normale, collegata con tabelle di Clienti,

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

13. Campi vettoriali

13. Campi vettoriali 13. Campi vettoriali 1 Il campo di velocità di un fluido Il concetto di campo in fisica non è limitato ai fenomeni elettrici. In generale il valore di una grandezza fisica assegnato per ogni punto dello

Dettagli

2010 Ing. Punzenberger COPA-DATA Srl. Tutti i diritti riservati.

2010 Ing. Punzenberger COPA-DATA Srl. Tutti i diritti riservati. 2010 Ing. Punzenberger COPA-DATA Srl Tutti i diritti riservati. Tutti i diritti riservati la distribuzione e la copia - indifferentemente dal metodo - può essere consentita esclusivamente dalla dittacopa-data.

Dettagli

Con SIGNUM è possibile intervenire con diversi livelli di personalizzazione e controllo sui dati letti. In particolare SIGNUM può essere usato:

Con SIGNUM è possibile intervenire con diversi livelli di personalizzazione e controllo sui dati letti. In particolare SIGNUM può essere usato: Il software SIGNUM è stato interamente realizzato da Technosoft, società che da sempre si pone l obiettivo di automatizzare e migliorare tutte le fasi di raccolta dati da documenti cartacei. SIGNUM, abbinato

Dettagli

Guida Compilazione Piani di Studio on-line

Guida Compilazione Piani di Studio on-line Guida Compilazione Piani di Studio on-line SIA (Sistemi Informativi d Ateneo) Visualizzazione e presentazione piani di studio ordinamento 509 e 270 Università della Calabria (Unità organizzativa complessa-

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass 0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Mon Ami 3000 Cespiti Gestione cespiti e calcolo degli ammortamenti

Mon Ami 3000 Cespiti Gestione cespiti e calcolo degli ammortamenti Prerequisiti Mon Ami 3000 Cespiti Gestione cespiti e calcolo degli ammortamenti L opzione Cespiti è disponibile per le versioni Contabilità e Azienda Pro. Introduzione Il cespite è un qualsiasi bene materiale

Dettagli

Documentazione esterna al software matematico sviluppato con MatLab

Documentazione esterna al software matematico sviluppato con MatLab Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

Introduzione all analisi dei segnali digitali.

Introduzione all analisi dei segnali digitali. Introduzione all analisi dei segnali digitali. Lezioni per il corso di Laboratorio di Fisica IV Isidoro Ferrante A.A. 2001/2002 1 Segnali analogici Si dice segnale la variazione di una qualsiasi grandezza

Dettagli

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Una tabella Pivot usa dati a due dimensioni per creare una tabella a tre dimensioni, cioè una tabella

Dettagli

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato

Dettagli

exe Learning Costruire e modificare oggetti e materiali per l apprendimento

exe Learning Costruire e modificare oggetti e materiali per l apprendimento exe Learning Costruire e modificare oggetti e materiali per l apprendimento di Romolo Pranzetti http://www.comeweb.it Disporre di materiali didattici Sempre più spesso servono materiali didattici per gli

Dettagli

ARTICOLO TECNICO Smart-MED-Parks: il Software

ARTICOLO TECNICO Smart-MED-Parks: il Software ARTICOLO TECNICO Smart-MED-Parks: il Software Introduzione Da Febbraio 2013, data di lancio del progetto Smart-MED-Parks, sono state realizzate un insieme di azioni al fine di: - Aumentare il livello di

Dettagli

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro

Dettagli

Università degli Studi di Salerno

Università degli Studi di Salerno Università degli Studi di Salerno Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Informatica Tesi di Laurea Algoritmi basati su formule di quadratura interpolatorie per GPU ABSTRACT

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

CHIUSURE di MAGAZZINO di FINE ANNO

CHIUSURE di MAGAZZINO di FINE ANNO CHIUSURE di MAGAZZINO di FINE ANNO Operazioni da svolgere per il riporto delle giacenze di fine esercizio Il documento che segue ha lo scopo di illustrare le operazioni che devono essere eseguite per:

Dettagli

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste versione 2.1 24/09/2015 aggiornamenti: 23-set-2015; 24-set-2015 Autore: Francesco Brunetta (http://www.francescobrunetta.it/)

Dettagli

MANUALE SOFTWARE F24 ISTRUZIONI PER L UTENTE

MANUALE SOFTWARE F24 ISTRUZIONI PER L UTENTE MANUALE SOFTWARE F24 ISTRUZIONI PER L UTENTE PAGINA 2 MODELLO F24 Indice Capitolo 1: Come muoversi all interno del programma 3 1.1 Importazione dati da anno precedente 3 1.2 Inserimento di una nuova anagrafica

Dettagli

Animazioni 3D. Informatica Grafica I. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D

Animazioni 3D. Informatica Grafica I. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D Informatica Grafica I Marco Gribaudo marcog@di.unito.it Animazioni 3D L'animazione 3D si basa sugli stessi principi dell'animazione tradizionale. Il filmato viene realizzato attraverso una sequenza di

Dettagli

CONTENT MANAGEMENT SY STEM

CONTENT MANAGEMENT SY STEM CONTENT MANAGEMENT SY STEM I NDI CE I NTRODUZI ONE Accesso al CMS 1) CONTENUTI 1.1 I nserimento, modifica e cancellazione dei contenuti 1.2 Sezioni, categorie e sottocategorie 2) UTENTI 3) UP LOAD FILES

Dettagli

MAUALE PIATTAFORMA MOODLE

MAUALE PIATTAFORMA MOODLE MAUALE PIATTAFORMA MOODLE La piattaforma moodle ci permette di salvare e creare contenuti didattici. Dal menù principale è possibile: inviare dei messaggi agli altri docenti che utilizzano la piattaforma:

Dettagli

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014 Progetto ICoNLingua Scienza senza Frontiere CsF- Italia Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014 1. Introduzione La valutazione sia in itinere

Dettagli

So.Di. LINUX: Software Didattico OpenSource per tutti

So.Di. LINUX: Software Didattico OpenSource per tutti So.Di. LINUX: Software Didattico OpenSource per tutti V. Candiani, G.P. Caruso, L. Ferlino, M. Ott, M. Tavella Istituto per le Tecnologie Didattiche ITD-CNR La scuola italiana non è ancora pronta per valutare

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

MANUALE DELLA QUALITÀ Pag. 1 di 6

MANUALE DELLA QUALITÀ Pag. 1 di 6 MANUALE DELLA QUALITÀ Pag. 1 di 6 INDICE GESTIONE DELLE RISORSE Messa a disposizione delle risorse Competenza, consapevolezza, addestramento Infrastrutture Ambiente di lavoro MANUALE DELLA QUALITÀ Pag.

Dettagli

GESTIONE CONTRATTI. Contratti clienti e contratti fornitori

GESTIONE CONTRATTI. Contratti clienti e contratti fornitori SPRING - CONTRATTI La Gestione Contratti di SPRING, in un'azienda, risolve le esigenze relative alla rilevazione dei contratti e delle relative condizioni. In particolare è possibile definire i servizi

Dettagli

Word processor funzione Stampa Unione

Word processor funzione Stampa Unione Word processor funzione Stampa Unione La funzione Stampa unione permette di collegare un documento che deve essere inviato ad una serie di indirizzi ad un file che contenga i nominativi dei destinatari.

Dettagli

GestVetrine 1.1 versione novembre 2014

GestVetrine 1.1 versione novembre 2014 GestVetrine 1.1 versione novembre 2014 0 GestVetrine 1.1 GestVetrine 1.0 Indice Indice pag.1 1. Finalità pag.2 2. Gestione screen pag.2 3. Come Accedere pag.3 4. Come Creare un negozio pag.4 5. Come Creare

Dettagli

PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE

PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE L approvazione di una manifestazione nazionale od internazionale comporta spesso la trasmissione

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1 PROGRAMMA GESTIONE TURNI MANUALE UTENTE INDICE 1 PREMESSA 3 2 COMANDI COMUNI 3 3 SEDI 3 4 FESTIVITÀ 4 5 PERIODI TURNI 4 6 COD. TURNI 6 7 TURNI SPORTIVI 9 8 COD. EQUIPAGGI 9 9 DISPONIBILITÀ 10 10 INDISPONIBILITÀ

Dettagli

Elaborazione ed Analisi. del Sistema di Rilevazione dei. Carichi di Lavoro per il. Servizio Infermieristico Territoriale

Elaborazione ed Analisi. del Sistema di Rilevazione dei. Carichi di Lavoro per il. Servizio Infermieristico Territoriale Elaborazione ed Analisi del Sistema di Rilevazione dei Carichi di Lavoro per il Servizio Infermieristico Territoriale 1 Sommario: 1. Premessa; 2. Riferimenti normativi; 3. Le Linee di attività; 4. Gli

Dettagli

Controllo di Gestione - Guida Operativa

Controllo di Gestione - Guida Operativa Controllo di Gestione - Guida Operativa Il modulo software di Controllo di Gestione, meglio denominato Monitoraggio e Controllo del piano degli obiettivi permette di monitorare, durante l esercizio, gli

Dettagli

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0 Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2

Dettagli

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015]

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Realizzato e distribuito da LeggeraSoft Sommario Premessa... 2 Fase di Login... 2 Menù principale... 2 Anagrafica clienti...

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

DOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida

DOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida MICROSOFT OFFICE ONENOTE 2003 AUMENTA LA PRODUTTIVITÀ CONSENTENDO AGLI UTENTI L ACQUISIZIONE COMPLETA, L ORGANIZZAZIONE EFFICIENTE E IL RIUTILIZZO

Dettagli

Ing. Simone Giovannetti

Ing. Simone Giovannetti Università degli Studi di Firenze Dipartimento di Elettronica e Telecomunicazioni Ing. Simone Giovannetti Firenze, 29 Maggio 2012 1 Incertezza di Misura (1/3) La necessità di misurare nasce dall esigenza

Dettagli

Software Gestionale per alberghi e strutture ricettive

Software Gestionale per alberghi e strutture ricettive TOURING HOME V.4.0.0 Software Gestionale per alberghi e strutture ricettive Guida all aggiornamento Abbiamo il piacere di presentarvi la nuova versione 4.0.0 di TouringHome Completamente rivisto graficamente,

Dettagli

Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto

Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto Progetto a cura di Martino Michele Matricola: 0124000461 Miglio Stefano Matricola: 0124000462 Obiettivi Iniziali Si intende realizzare

Dettagli

Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE. Operare con i numeri

Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE. Operare con i numeri COMPETENZA CHIAVE MATEMATICA Fonte di legittimazione Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE L alunno utilizza il calcolo scritto e mentale con i numeri

Dettagli

Capitolo V : Il colore nelle immagini digitali

Capitolo V : Il colore nelle immagini digitali Capitolo V : Il colore nelle immagini digitali Lavorare con il colore nelle immagini digitali L uso dei colori nella visione computerizzata e nella computer grafica implica l incorrere in determinate problematiche

Dettagli

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag. Gentile Cliente, benvenuto nel Portale on-line dell Elettrica. Attraverso il nostro Portale potrà: consultare la disponibilità dei prodotti nei nostri magazzini, fare ordini, consultare i suoi prezzi personalizzati,

Dettagli

L amministratore di dominio

L amministratore di dominio L amministratore di dominio Netbuilder consente ai suoi clienti di gestire autonomamente le caselle del proprio dominio nel rispetto dei vincoli contrattuali. Ciò è reso possibile dall esistenza di un

Dettagli

Amplificatori Audio di Potenza

Amplificatori Audio di Potenza Amplificatori Audio di Potenza Un amplificatore, semplificando al massimo, può essere visto come un oggetto in grado di aumentare il livello di un segnale. Ha quindi, generalmente, due porte: un ingresso

Dettagli

Pro e contro delle RNA

Pro e contro delle RNA Pro e contro delle RNA Pro: - flessibilità: le RNA sono approssimatori universali; - aggiornabilità sequenziale: la stima dei pesi della rete può essere aggiornata man mano che arriva nuova informazione;

Dettagli