Codifica e presentazioni di immagini fisse per terminali mobili in reti a commutazione di pacchetto

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Codifica e presentazioni di immagini fisse per terminali mobili in reti a commutazione di pacchetto"

Transcript

1 Università degli studi Roma Tre Facoltà di Ingegneria Elettronica Anno Accademico 2001/2002 Codifica e presentazioni di immagini fisse per terminali mobili in reti a commutazione di pacchetto Francesco Stabile Relatore: Ch.mo Prof. A. Neri Co-Relatore: Ing. F. Romano 2 Relatore: Ch.mo Prof. C. Palma

2 PREFAZIONE La tesi è stata svolta presso le strutture ed i laboratori dalla Scuola di Formazione Superiore ELIS di Roma, nell'ambito del progetto Servizi Multimediali commissionato da Ericsson a Vivai D Impresa. Le basi su cui poggia l informatica sono sempre soggette a continui cambiamenti, ed inevitabili cedimenti dovuti alla rapidità con cui emergono le nuove necessità. Gli impulsi dati da Internet, dall e-commerce e dai nuovi dispositivi digitali, in particolare dalla diffusione di cellulari e pda, tendono a mettere in evidenza le carenze di tecnologie consolidate da tempo. Resta da vedere se le innovazioni saranno così importanti da comportare l abbandono di formati largamente diffusi e supportati quali lo JPEG ed il GIF. Questi attuali sistemi di codifica delle immagini hanno consentito l incredibile sviluppo delle telecomunicazioni multimediali e di internet, ma già ci si scontra con i loro limiti nell evoluzione dei nuovi scenari. Un breve ma significativo esempio: un codificatore a perdita di informazioni per compressione come JPEG, a bassi bit rate fornisce immagini di pessima qualità percettiva; non permette inoltre la definizione di zone dell immagine più importanti. La soluzione a queste necessità ed altre necessità ha portato alla definizione dello standard JPEG Scopo del lavoro di ricerca e sperimentazione presentato in questa tesi è lo sviluppo di un software multipiattaforma per dispositivi wireless e portabili che consenta di sfruttare le caratteristiche di JPEG Nel corso del primo capitolo si descrivono brevemente gli standard attuali per le immagini fisse con particolar riguardo a JPEG, JPEG-LS, PNG e JBIG; si analizzeranno le limitazioni rispetto a JPEG Quest ultimo verrà trattato ampiamente nel secondo capitolo, dove si affronteranno: la trasformata pag. II

3 Wavelet per il supporto alla scalabilità della risoluzione; la codifica entropica, che grazie al rate allocator, permette una scalabilità del livello di dettaglio; il packet partitioning che ha lo scopo di migliorare la capacità di accesso diretto a regioni dell immagine. Nel terzo capitolo si descriveranno le peculiarità del linguaggio Java, analizzando soprattutto le piattaforme utilizzate in ambito mobile: Java 2 MicroEdition e Personal Java. Piattaforma, quest ultima, che è stata utilizzata per lo sviluppo del software. Nel capitolo quattro si analizza l architettura software alla base dello sviluppo: il compilatore ed il simulatore per piattaforme Symbian; inoltre verrà analizzato in dettaglio il processo che permette di creare i files di installazione, utili per testare l applicativo sul Sony Ericsson P800, il terminale utilizzato per i effettuare i test finali dell applicativo. Nel capitolo cinque si descrivono le scelte progettuali effettuate e le caratteristiche del visualizzatore realizzato. Verranno analizzate l interfacce grafiche utilizzate e le soluzioni adottate per risolvere i problemi di compatibilità con la piattaforma Personal Java del P800. Nel capitolo 6 si analizzano alcune architetture implementate per lo streaming, in special modo quella utilizzante JPIP (JPEG 2000 Internet Protocol), protocollo di comunicazione interattivo per dati compressi in formato JPEG Tale protocollo è il più accreditato, tra tutti gli altri a diventare un vero e proprio standard di riferimento. Nel corso del capitolo, oltre ad una disamina tecnica di JPIP, è presente anche un applicazione Java (lato client) che testa il meccanismo di richiesta scalabile secondo questo protocollo. Infine nel settimo capitolo si presentano le considerazioni conclusive, commentando i risultati ottenuti ed indicando eventuali sviluppi futuri. pag. III

4 INDICE CAPITOLO 1 STANDARD ATTUALI PER LE IMMAGINI IMMAGINI FISSE JPEG-LS PNG JBIG E JBIG JPEG... 6 CAPITOLO 2 LO STANDARD JPEG INTRODUZIONE CODIFICA TRASFORMAZIONE DELLE COMPONENTI TRASFORMATA WAVELET QUANTIZZAZIONE CODIFICA ENTROPICA REGIONI DI INTERESSE DECODIFICA DECODIFICA ENTROPICA DEQUANTIZZAZIONE ANTITRASFORMATA WAVELET TRASFORMAZIONE INVERSA DELLE COMPONENTI CAPITOLO 3 JAVA, J2ME E PJAVA LINGUAGGIO JAVA INTRODUZIONE AL LINGUAGGIO UN LINGUAGGIO SEMPLICE ARCHITETTURA NEUTRALE SICUREZZA IN JAVA J2ME (JAVA 2 MICROEDITION) INTRODUZIONE IL SETTORE EMBEDDED L ARCHITETTURA J2ME PJAVA (PERSONAL JAVA) CAPITOLO 4 AMBIENTE DI SVILUPPO INTRODUZIONE SOFTWARE UTILIZZATI ECLIPSE IDE UIQ SDK PER SYMBIAN pag. 1

5 4.3 PROCESSO DI SVILUPPO DI APPLICAZIONI JAVA PER PIATTAFORME SYMBIAN INTRODUZIONE SVILUPPO DEL CODICE JAVA SVILUPPO PER L INTERFACCIA SYMBIAN GENERAZIONE DEL FILE SYS SONY ERICSSON P CAPITOLO 5 REALIZZAZIONE DEL VISUALIZZATORE DI IMMAGINI JPEG JPEG 2000 VIEWER ANALISI REQUISITI SCELTE PROGETTUALI INTERFACCIA GRAFICA VISUALIZZATORE CAPITOLO 6 ARCHITETTURE SCALBILI PER LO STREAMING DI IMMAGINI JPEG STREAMING SCALABILE UTILIZZANDO JPIP INTRODUZIONE ARCHITETTURA PROPOSTA SINTASSI DI RICHIESTA SINTASSI DI REPLICA JPIP HEADERS DESCRIZIONE DEL PROTOCOLLO INTERATTIVO JPIP-H DESCRIZIONE DEL PROTOCOLLO INTERATTIVO JPIP-HT COMUNICAZIONI NON INTERATTIVE STREAMING SCALABILE UTILIZZANDO HTTP ARCHITETTURA SAMPLE SESSION STRUTTURA DEL CODESTREAM JPEG STRUTTURA DELL INDEX FILE LE DUE ARCHITETTURE A CONFRONTO CAPITOLO 7 CONCLUSIONI E SVILUPPI FUTURI APPENDICE A: LISTATO DEL MAIN DI JP2VIEW APPENDICE B: LISTATO RELATIVO ALL IMPLEMENTAZIONE DEL CLIENT JPIP-H IN JAVA BIBLIOGRAFIA pag. 2

6 CAPITOLO 1 STANDARD ATTUALI PER LE IMMAGINI In questi ultimi anni stiamo assistendo ad una grande diffusione di dispositivi quali fotocamere digitali, smart phone dotati di fotocamere on-board, pda. In questi apparati più che in altri, si ha l esigenza di avere un formato che consenta di memorizzare immagini occupando poca memoria ma che nello stesso tempo permette una visualizzazione con qualità percettive soddisfacenti. Con particolar riguardo al campo della telefonia mobile, un formato più snello, consente un utilizzo inferiore della risorsa di banda nel caso di trasmissione o ricezione di un immagine. In genere per le immagini ci sono due tipi differenti di compressione o codifica: lossless (senza perdita) o lossy (con perdita). Nel primo caso si è in grado di restituire, al termine della decompressione, un'immagine esattamente uguale all'originale, com'era prima che venisse compressa. Nel secondo caso non si può assicurare una reversibilità assoluta, infatti l immagine ricostruita è una versione simile a quella di partenza ma non identica. 1.1 IMMAGINI FISSE Ci sono differenti formati per rappresentare le immagini, dipende dal programma utilizzato per salvarle; i più conosciuti sono bmp (Bitmap Image for Windows o OS/2), tiff (Tagged Image File Format), tag (Truevision Targa), gif (CompuServe Graphics Interchange), i quali codificano l immagine normalmente o talvolta utilizzano tecniche di compressione con perdita. Dipendentemente dal formato, un immagine è rappresentata da un set di tre matrici di numeri, dove ogni numero indica l ampiezza della caratteristica del pixel, per esempio l ampiezza del pag. 3

7 colore (es. rosso, verde o blu). Ogni numero è compreso in un intervallo tra 0 e 255, oppure è normalizzato tra 0 ed 1, e mostra l ampiezza della scala di grigio dell intensità del pixel, dove zero è nero e 255 è bianco. Questo numero è rappresentato da un set di otto bit ( a seconda del formato anche 12, 16 o 24 bit). Queste tre matrici potrebbero rappresentare i tre colori principali nello spazio dei colori, normalmente rosso verde e blu per RGB, o è possibile trasformarli in YCbCr o YUV dove vengono rappresentate le caratteristiche di luminanza e crominanza dell immagine. Ci sono molti standard che cercano di ridurre in modi differenti le dimensioni delle immagini utilizzando diversi metodi e proprietà. Quelli più importanti e più efficienti per compressioni lossy e lossless sono JPEG che utilizza la trasformata DCT, e JPEG 2000 che verrà descritto nel capitolo 2; tratterò brevemente anche differenti tecniche come JPEG-LS, PNG, JBIG JPEG-LS JPEG-LS è uno standard introdotto per le codifiche lossless di immagini fisse ed è stato proposto da ISO/ITU-T recentemente. Prevede anche una compressione quasi lossless per incrementare il tasso di compressione dell immagine. Il sistema base descritto nella Parte 1 dello standard, utilizza tecniche di predizione adattativa; la compressione quasi lossles è ottenuta invece, fissando un errore di campionamento massimo. Nella Parte 2 vengono introdotte alcune estensioni, ed in particolare un algoritmo di codifica aritmetica, questo algoritmo è utilizzato per raggiungere alti tassi di compressione lossless utilizzando una codifica con bassa pag. 4

8 complessità computazionale. JPEG-LS comunque non prevede supporti per la scalabilità, per la resistenza agli errori e caratteristiche simili PNG Il formato PNG (Portable Network Graphics), è stato sviluppato da 3WC per la codifica di immagini fisse è importante perché nasce in contrapposizione al Gif come un formato grafico compresso e del tutto gratuito. Vedremo ora alcune le sue caratteristiche: Compressione: utilizza esclusivamente compressione lossless, non esistono opzioni per salvarlo in un formato non compresso oppure in modalità lossy. Controllo Errore: utilizza un sisteme chiamato chiamato CRC-32, ovvero cyclic redundancy check (controllo di ridondanza ciclico) a 32 bit, che associa valori di controllo ad ogni blocco di dati ed è in grado di rilevare immediatamente qualsiasi corruzione delle informazioni salvate o trasmesse via Internet. Supporto milioni di colori: Le immagini PNG supportano la modalità RGB. E bene sottolineare che non supportano la modalità CMYK o YUV. Altre caratteristiche supportate sono il canale alfa e l interlacciamento. pag. 5

9 1.1.3 JBIG E JBIG 2 JBIG (Joint Bi.level Image Export Group), come JPEG, è un gruppo di esperti nominati da enti di standardizzazione nazionali, per lavorare alla produzione di standard per immagini bi-livello; in questi anni hanno prodotto due standard: JBIG e JBIG2. Possono anche essere utilizzati per la codifica di immagini a scala di grigio ed a colori con un numero limitato di bit per pixel. La prima versione dello standard è stata sviluppata molto tempo fa; recentemente i tecnici stanno lavorando per completare la nuova versione, JBIG2 che ha vantaggi significativi: migliore nella compressione, prestazioni migliori anche nella decodifica, supporta anche le tecniche lossless e lossy JPEG E uno standard flessibile che definisce una serie di possibili elaborazioni da eseguire sulle immagini, che possono essere saltate. In pratica non viene specificato come si deve fare la compressione ma solo quali regole devono essere rispettate dai dati compressi per poter poi ottenere una corretta decompressione. Segue una breve analisi dei passi da eseguire per la codifica; si tratta di una procedura più o meno standard che viene maggiormente utilizzata. Conversione di spazio monocromatico L immagine originale viene convertita dallo spazio cromatico RGB a quello YIQ( o YUV). Il formato YUV consiste in 3 piani di colore: luminanza (Y) e due componenti di crominanza (U e V). Questa separazione, anche se non necessaria, permette una migliore compressione. Infatti, sfruttando un fenomeno noto nel campo video, è possibile ridurre le dimensioni dell'immagine YUV con una pag. 6

10 leggera riduzione della qualità applicando un sotto campionamento (decimazione) delle componenti cromatiche e mantenendo intatte le informazioni sulla luminosità. Se questa fase viene saltata, la successiva processerà l'immagine in RGB invece che in YUV. Analisi in Frequenza (DCT) L'elaborazione chiave del JPEG è sicuramente la DCT, Discrete Cosine Transform nella sua versione bidimensionale (2D). La DCT è una trasformata che in generale fa passare il segnale dal dominio del tempo al dominio della frequenza. Si tratta di una versione in campo reale della FFT che invece è in campo complesso. I coefficienti che ne derivano rappresentano le ampiezze di quei segnali armonici (coseno) che sommati ricostruiscono il segnale. Nel JPEG viene usata la versione bidimensionale della DCT ed in questo caso non si parla di tempo e frequenza ma di spazio e frequenze spaziali. Per poter essere processata, l'immagine viene divisa in piani (tre piani cromatici R-G-B o Y-U-V a seconda dallo stadio precedente) e all'interno di ogni piano viene di nuovo suddivisa in blocchi di 8x8 pixel. Il blocco di 8x8 pixel nel dominio dello spazio viene trasformato in un blocco di 8x8 coefficienti nel dominio della frequenza spaziale. In questo blocco avremo i coefficienti in alto a sinistra che rappresentano le basse frequenze spaziali mentre quelli via via in basso a destra rappresentano le alte frequenze spaziali ossia i dettagli dell'immagine. In particolare il primo coefficiente del blocco trasformato rappresenta la media dei valori del blocco 8x8 originario. pag. 7

11 Quantizzazione In questa fase avviene l'eliminazione delle informazioni visive meno importanti. Ciò si realizza moltiplicando la matrice 8x8 di coefficienti in frequenza per una quantization table. La tabella contiene valori tra zero ed uno, quelli più bassi si trovano in corrispondenza delle alte frequenze mentre quelli più alti in corrispondeza delle basse frequenze. I valori così ottenuti vengono arrotondati all'intero più vicino, in questo modo i coefficienti meno significativi tendono ad azzerarsi mentre rimangono i coefficienti relativi ai contributi informativi più importanti. Essendo già piccoli, i valori in alta frequenza vengono molto spesso arrotondati a zero. Il risultato è la concentrazione di pochi coefficienti diversi da zero in alto a sinistra e zero tutti gli altri. Quando in un file JPEG si sceglie il fattore di compressione, in realtà si sceglie un fattore di scala sui valori della quantization table. Più i valori sono bassi e maggiore è il numero di coefficienti che si azzerano con conseguente riduzione del numero di coefficienti significativi. Questo processo ovviamente cancella informazioni via via più importanti e porta ad un progressivo deterioramento della qualità dell'immagine compressa. Codifica entropica Una volta eliminati i dettagli meno importanti grazie alla DCT e alla quantizzazione, è necessario adottare una serie di tecniche entropiche per ridurre la quantità di memoria necessaria per trasmettere le restanti informazioni significative. Tra i restanti coefficienti è importante separare la componente continua (DC) dalla componente variabile (AC). La componente AC viene analizzata tramite una lettura a Zig-Zag. La lettura a Zig Zag rende adiacenti il più possibile i coefficienti uguali a zero e permette un ottimale rappresentazione dei dati tramite Run Lenght Encoding (RLE). Si tratta di una semplice tecnica di pag. 8

12 compressione applicata ai componenti AC. Il vettore 1x64 risultante dalla lettura a Zig-Zag contiene molti zero in sequenza, per questo si rappresenta il vettore tramite coppie (skip, value), dove skip è il numero di valori uguali a zero e value è il successivo valore diverso da zero. La coppia (0,0) viene considerata come segnale di fine sequenza. Sul valore DC di ciascun blocco viene invece applicata una tecnica detta DPCM. In pratica esistendo generalmente una relazione statistica nelle immagini tra le componenti DC di blocchi adiacenti, è possibile codificare la componente DC di un blocco come differenza rispetto al valore del blocco precedente. Questo stratagemma consente una ulteriore riduzione dello spazio occupato dai dati. L'ultima codifica entropica applicata ai dati è la classica codifica a lunghezza di codice variabile. In pratica i dati vengono suddivisi in parole (stringhe di bit), viene analizzata la frequenza statistica di ciascuna parola e ognuna viene ricodificata con un codice a lunghezza variabile in funzione della frequenza di apparizione. Un codice corto per le parole che appaiono frequentemente e via via codici più lunghi per quelle meno frequenti. Complessivamente il numero di bit necessari per rappresentare i dati si riduce consistentemente. Decompressione JPEG è un codec simmetrico per sua natura quindi l'elaborazione necessaria per la decompressione è l'esatto inverso di quella necessaria per la compressione. Sui dati compressi si applica la decompressione Huffman, i dati risultanti servono per la ricostruzione blocco dopo blocco delle componenti DC e AC, quindi i coefficienti vengono moltiplicati per una tabella di quantizzazione inversa. il blocco 8x8 risultante viene sottoposto ad una DCT inversa e a questo punto, a seconda delle impostazioni del file si è già ottenuto l'immagine RGB oppure si deve effettuare la conversione da YUV a RGB. pag. 9

13 Verso JPEG 2000 JPEG è uno standard abbastanza semplice nella sua essenza, eppure l'importanza che ha assunto nel mondo dell'informatica è stata ed è tutt'oggi veramente enorme. Tutto questo non sarebbe stato possibile senza l'impegno del Joint Picture Expert Group. Ma come per tante altre tecnologie è arrivata l ora di essere sostituito. Siamo infatti ormai vicinissimi alla completa definizione del nuovo standard JPEG 2000 che promette maggiori prestazioni in compressione, maggiore qualità e maggiori funzionalità nell'ambito della sicurezza. Nel corso del secondo capitolo si parlerà in modo dettagliato di JPEG pag. 10

14 CAPITOLO 2 LO STANDARD JPEG INTRODUZIONE JPEG 2000 è il nuovo standard di compressione di immagini statiche destinato al Web e alla distribuzione su PDA, cellulari, PC, televisioni,ecc. Esso costituisce l'evoluzione del famosissimo formato JPEG e, anche se dotato di caratteristiche fortemente innovative, JPEG 2000 non mira, almeno nel breve termine, a sostituire JPEG, piuttosto ci si attende una "transizione", durante la quale il nuovo standard integrerà ed amplierà le funzionalità offerte da JPEG. Le caratteristiche salienti di JPEG 2000 sono: Consente sia la compressione con perdita d informazione (lossy), sia quella senza perdita (lossless). E' un sistema di codifica unico, in grado di trattare in modo efficace immagini provenienti da sorgenti diverse, con diverse necessità di compressione. Produce immagini con qualità visive migliori, specialmente a bassi bitrate, rispetto a quelle ottenibili con JPEG, grazie alle proprietà della trasformata Wavelet. Permette di modificare ed, eventualmente, di decodificare regioni qualsiasi dell'immagine, operando direttamente sui dati in forma compressa. Può generare immagini compresse scalabili sia in risoluzione sia in livello di dettaglio, lasciando all utilizzatore la libertà di scegliere quanta informazione e quali parti dell'immagine utilizzare per la decompressione. Introduce il concetto di Region of Interest (ROI, Regione di Interesse) di un'immagine. pag. 11

15 E' in grado di raggiungere notevoli tassi di compressione con qualità ancora accettabili. Lo standard JPEG 2000 è suddiviso principalmente in sei documenti distinti, chiamati Part nella terminologia dello standard. Part 1 - Definisce i requisiti minimi che un decoder deve avere. Serve a creare un insieme di opzioni di base per le quali sia garantita la massima interoperabilità tra le diverse realizzazioni. Part 2 - Si occupa di applicazioni più specifiche, che forniscono incrementi prestazionali, specialmente in particolari ambiti applicativi. Un immagine codificata con queste estensioni potrebbe non essere interpretata correttamente da decoder conformi soltanto alle specifiche della Part I. Part 3 - Riguarda "Motion JPEG 2000", uno standard video digitale di elevata qualità. Part 4 - Indica le regole di conformità allo standard JPEG Part 5 - E' costituito da modelli software che possono essere usati come riferimento nello sviluppo di prodotti JPEG Part 6 - Contiene una serie di specifiche per l'impiego di JPEG 2000 in ambiti quali fac-simile numerico ed editoria elettronica (fax-like). Nella Part 1 dello standard viene specificato soltanto l'algoritmo di decodifica e il formato dei dati compressi. Per l algoritmo di codifica non c è nessun vincolo di implementazione, ma ovviamente deve essere compatibile con l'algoritmo di decodifica. Nella Part 9 dello standard, che non è ancorà disponibile, si parla di Jpip (Jpeg 2000 internet protocol) che è un protocollo di comunicazione interattivo per lo scambio di dati compressi con JPEG JPEG 2000 è un formato a multirisoluzione. L'immagine viene memorizzata in numerose risoluzioni in un unico file, senza ridondanza dei dati e può essere trasmessa o decodificata a una risoluzione adatta al dispositivo su cui viene visualizzata. In questo modo l'immagine viene compressa una sola volta ad una pag. 12

16 risoluzione sufficientemente alta per poi essere decodificata in diverse risoluzioni. La caratteristica di multirisoluzione è dovuta all'utilizzo della cosiddetta Discrete Wavelet Transform (DWT), che permette una codifica lossy o lossless a seconda del tipo di trasformata utilizzata. 2.2 CODIFICA La codifica di un immagine può essere scomposta logicamente in una successione di trasformazioni applicate sequenzialmente. Lo schema a blocchi è il seguente: Immagine Originale Trasformazione delle componenti Trasformata Wavelet Quantizzazione Codifica Entropica Immagine compressa Figura 1: Codifica JPEG 2000 (schema a blocchi) TRASFORMAZIONE DELLE COMPONENTI Il primo passo dell algoritmo consiste nel suddividere l immagine da codificare in regioni rettangolari disgiunte dette tile. Le dimensioni di tutte le tile sono uguali, fatta eccezione per le regioni che si trovano ai bordi dell immagine,che possono essere più piccole. Per motivi di efficienza computazionale, le loro dimensioni devono essere potenze di due. Nel caso in cui un immagine abbia più di una componente, solitamente rosso, verde e blu, si applica una trasformazione puntuale di decorrelazione per ogni campione di ogni componente. Possono essere impiegati due tipi di trasformazione: pag. 13

17 YCrCb. Analoga alla trasformazione utilizzata in JPEG, viene impiegata in codifiche lossy. La trasformazione da RGB ad YCrCb può essere espresse dalle seguenti equazioni poste in forma matriciale: Y C C B R = R 0.5 G B RCT Reversible Component Transform. Fornisce una decorrelazione analoga alla precedente, ma consente la ricostruzione senza perdite dell immagine; ovviamente è impiegata in codifiche lossless. In modo analogo alla trasformazione irreversibile, possiamo esprimere la RCT mediante la seguente uguaglianza matriciale: Y U V R R R R + 2G + 4 = R G B G B Le trasformazioni successive sono applicate in modo indipendente ad ogni tile di ciascun componente; così facendo è possibile estrarre e ricomporre anche singole parti dell immagine originale, realizzando una prima tipologia di accesso diretto. Più avanti vedremo un ulteriore raffinamento del metodo di accesso diretto, perchè se dipindesse esclusivamente dal tiling, potrebbe rivelarsi troppo grossolano e di scarsa utilità. E anche possibile diminuire notevolmente la pag. 14

18 memoria necessaria per la compressione elaborando separatamente le varie parti dell immagine. Infine l indipendenza della codifica rispetto a componenti e tile permette applicare tutte le trasformazioni a ciascuna tile per ogni componente. Perciò in seguito si farà riferimento ad immagini formate da una singola tile e da un unica componente. Si potrà fare un ragionamente analogo anche per casi più complessi, con immagini multi-tile e multi-componente TRASFORMATA WAVELET Mediante una trasformata Wavelet discreta (DWT) ogni tile viene scomposta in più livelli di risoluzione. Ciascun livello di decomposizione contiene un certo numero di sottobande, formate da coefficienti che esprimono le caratteristiche dell immagine in termine di frequenze spaziali orizzontali e verticali. Sono previsti tre diversi tipi di decomposizione. Nella decomposizione usata normalmente da JPEG 2000, l immagine viene scomposta tramite i seguenti filtri: LL: deriva dall applicazione di un filtro passo-basso separabile all immagine originale, seguito da un sottocampionamento in entrambe le direzioni. Quindi LL è una versione a bassa risoluzione dell immagine originale. HL: filtro passa-alto orizzontale, addolcisce i picchi orientati orizzontalmente, in modo da corrispondere maggiormente all orientazione verticale. LH: simile ad HL ma con direzioni opposte HH: corrisponde principalmente a caratteristiche orientate in diagonale La sottobanda LL, viene successivamente e reiteratamente scomposta in livelli di decomposizione successivi come mostrato in figura 2. pag. 15

19 Figura 2: Suddivisione in sottobande Nelle seguenti immagini possiamo osservare i vari livelli di decomposizione che si susseguono. Al primo livello, l immagine originale è stata scomposta i quattro sotto-immagini (con risoluzione ¼ dell originale) che rappresentano il contenuto in bassa frequenza (figura 3).Al secondo livello di decomposizione si opera sul contenuto in bassa frequenza generato al primo livello. Vengono quindi generate altre sottobande di dettaglio e nuova sottobanda di bassa frequenza (figura 4). Si procede per livelli successivi generando sempre più sottobande di dettaglio (figura 5). I dettagli generati ai livelli successivi di decomposizione sono più importanti ai fini percettivi di quelli generati ai primi livelli. In figura 6 possiamo notare quali sottobande sono necessarie per ricostruire il livello di risoluzione desiderato. pag. 16

20 Figura 3: Decomposizione in sottobande, primo livello Figura 4: Decomposizione in sottobande, secondo livello pag. 17

21 Figura 5: Decomposizione in sottobande, terzo livello Figura 6: Livelli di decomposizione in sottobande pag. 18

22 La trasformata DWT può essere reversibile o irreversibile. La trasformazione irreversibile utilizzata generalmente da JPEG 2000 impiega il filtro Daubechies 9/7, a valori reali (R). I coefficienti dei filtri di analisi, passa-alto e passa-basso, sono riportati nella tabella 1. La trasformazione reversibile viene solitamente realizzata mediante un filtro 5/3, a valori in Z. La caratteristica di questo tipo di filtro è permettere una ricostruzione completa e senza perdite in fase di sintesi. I coefficienti dei filtri di analisi, passa-alto e passa-basso, sono riportati in tabella 2. I termini analisi e sintesi indicano rispettivamente la fase codifica e decodifica. 9/7 Analisi i h L (i) (i) ± ± ± ± h H TABELLA 1 : CODIFICA JPEG2000. FILTRO DAUBECHIES 9/7 DI ANALISI pag. 19

23 5/3 Analisi i h L (i) (i) 0 3/4 1 ± 1 1/4-1/2 ± 2-1/8 h H TABELLA 2:CODIFICA JPEG FILTRO 5/3 DI ANALISI Lo standard permette di realizzare la trasformata Wavelet in due modi differenti. Il più tradizionale fa uso dell implementazione a banco di filtri; il secondo si basa sul lifting scheme. Sinteticamente, il filtraggio basato sul lifting scheme consiste in una serie di operazioni elementari, dette passi di lifting, mediante le quali: il valore dei campioni di posto pari è aggiornato in base ad una media pesata dei campioni di posto dispari (prediction); il valore dei campioni di posto dispari è aggiornato in base ad una media pesata dei campioni dei nuovi campioni di posto pari (update). Il filtraggio basato sul lifting scheme, per la trasformazione reversibile 5/3, è espresso dalle seguenti relazioni (analisi): y 2n+ 1 = x 2n+ 1 x 2n + x 2 2 n+ 2 1 y 2n = x 2n + y 2n 1 + y 4 2n+ 1 2 pag. 20

24 Dove x (n) è l estensione simmetrica periodica del segnale x (n). I campioni da trasformare devono essere estesi ai bordi dell immagine a prescindere dal tipo di trasformazione utilizzata. Lo standard prescrive l utilizzo di un estensione simmetrica e periodicache è necessaria per garantire la consistenza delle operazioni di filtraggio effettuate in prossimità dei bordi dell immagine. Il numero di campioni che dovranno essere prodotti per estensione simmetrica dipende strettamente dalla lunghezza del supporto e dal tipo di filtro utilizzato QUANTIZZAZIONE Nel processo di quantizzazione i coefficienti prodotti dalla trasformata Wavelet vengono discretizzati, con conseguente riduzione della precisione. JPEG 2000 utilizza una quantizzazione scalare ed uniforme. Il quantizzatore scalare è un processo che associa ad ogni valore scalare d ingresso un valore scalare in uscita, mediante opportuni intervalli di quantizzazione chiamati soglie. L aggetttivo uniforme definisce un quantizzatore scalare che ha tutti gli intervalli di quantizzazione uguali, con ampiezza pari a bi. Per la quantizzazione scalare uniforme bi è detto passo di quantizzazione. La quantizzazione, raggruppando in intervalli discreti la dinamica continua dell ingresso, è un processo che porta alla perdita di informazione. Unica eccezione è il caso di coefficienti interi prodotti, ad esempio, con Wavelet 5/3 e passo di quantizzazione unitario: qui la quantizzazione può avvenire senza alcuna perdita di informazione. Possiamo avere quindi due possibili condizioni: pag. 21

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16 Un ripasso di aritmetica: Conversione dalla base 1 alla base 16 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base sedici sarà del tipo: c m c m-1... c 1 c (le c i sono cifre

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it

Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it Corso di laurea magistrale in Ingegneria delle Telecomunicazioni Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it Trasmettitore

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Accuratezza di uno strumento

Accuratezza di uno strumento Accuratezza di uno strumento Come abbiamo già accennato la volta scora, il risultato della misurazione di una grandezza fisica, qualsiasi sia lo strumento utilizzato, non è mai un valore numerico X univocamente

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Progetto Didattico di Informatica Multimediale

Progetto Didattico di Informatica Multimediale Progetto Didattico di Informatica Multimediale VRAI - Vision, Robotics and Artificial Intelligence 20 aprile 2015 Rev. 18+ Introduzione Le videocamere di riconoscimento sono strumenti sempre più utilizzati

Dettagli

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni UNIVERSITÀ DEGLI STUDI DI MILANO FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica IL SAMPLE AND HOLD Progetto di Fondamenti di Automatica PROF.: M. Lazzaroni Anno Accademico

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Guida rapida all uso di ECM Titanium

Guida rapida all uso di ECM Titanium Guida rapida all uso di ECM Titanium Introduzione Questa guida contiene una spiegazione semplificata del funzionamento del software per Chiputilizzare al meglio il Tuning ECM Titanium ed include tutte

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Codifica dei numeri negativi

Codifica dei numeri negativi E. Calabrese: Fondamenti di Informatica Rappresentazione numerica-1 Rappresentazione in complemento a 2 Codifica dei numeri negativi Per rappresentare numeri interi negativi si usa la cosiddetta rappresentazione

Dettagli

12 famiglie e tipi di file (estensioni più comuni)

12 famiglie e tipi di file (estensioni più comuni) 12 famiglie e tipi di file (estensioni più comuni) Ogni file è caratterizzato da un proprio nome e da una estensione, in genere tre lettere precedute da un punto; ad esempio:.est Vi sono tuttavia anche

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

TRASMISSIONE DATI SU RETE TELEFONICA. 1 Fondamenti Segnali e Trasmissione

TRASMISSIONE DATI SU RETE TELEFONICA. 1 Fondamenti Segnali e Trasmissione TRASMISSIONE DATI SU RETE TELEFONICA Fondamenti Segnali e Trasmissione Trasmissione dati su rete telefonica rete telefonica analogica ISP (Internet Service Provider) connesso alla WWW (World Wide Web)

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

Elementi di Statistica

Elementi di Statistica Elementi di Statistica Contenuti Contenuti di Statistica nel corso di Data Base Elementi di statistica descrittiva: media, moda, mediana, indici di dispersione Introduzione alle variabili casuali e alle

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 telecamere. I sistemi di acquisizione ed archiviazione

Dettagli

Rappresentazione delle Immagini

Rappresentazione delle Immagini Rappresentazione delle Immagini Come si rappresenta un immagine Un immagine e di norma rappresentata come un raster, cioe una matrice di elementi discreti, detti pixel, ciascuno di un colore. Memorizzare

Dettagli

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale !"$#%!" #% Nella prima lezione... Definizione di Informatica Cosa è una soluzione algoritmica Esempi di algoritmi cicalese@dia.unisa.it 2 Prima parte: Società dell informazione Ma cosa vuol dire società

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Il World Wide Web: nozioni introduttive

Il World Wide Web: nozioni introduttive Il World Wide Web: nozioni introduttive Dott. Nicole NOVIELLI novielli@di.uniba.it http://www.di.uniba.it/intint/people/nicole.html Cos è Internet! Acronimo di "interconnected networks" ("reti interconnesse")!

Dettagli

Cos è un protocollo? Ciao. Ciao 2:00. tempo. Un protocollo umano e un protocollo di reti di computer:

Cos è un protocollo? Ciao. Ciao 2:00. <file> tempo. Un protocollo umano e un protocollo di reti di computer: Cos è un protocollo? Un protocollo umano e un protocollo di reti di computer: Ciao Ciao Hai l ora? 2:00 tempo TCP connection request TCP connection reply. Get http://www.di.unito.it/index.htm Domanda:

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

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

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Trasmissione Seriale e Parallela. Interfacce di Comunicazione. Esempio di Decodifica del Segnale. Ricezione e Decodifica. Prof.

Trasmissione Seriale e Parallela. Interfacce di Comunicazione. Esempio di Decodifica del Segnale. Ricezione e Decodifica. Prof. Interfacce di Comunicazione Università degli studi di Salerno Laurea in Informatica I semestre 03/04 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ 2 Trasmissione

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

GUIDA ALLE SOLUZIONI

GUIDA ALLE SOLUZIONI La caratteristica delle trasmissioni digitali è " tutto o niente ": o il segnale è sufficiente, e quindi si riceve l'immagine, oppure è insufficiente, e allora l'immagine non c'è affatto. Non c'è quel

Dettagli

Così come le macchine meccaniche trasformano

Così come le macchine meccaniche trasformano DENTRO LA SCATOLA Rubrica a cura di Fabio A. Schreiber Il Consiglio Scientifico della rivista ha pensato di attuare un iniziativa culturalmente utile presentando in ogni numero di Mondo Digitale un argomento

Dettagli

TELECOMUNICAZIONI (TLC) Generico sistema di telecomunicazione (TLC) Trasduttore. Attuatore CENNI DI TEORIA (MATEMATICA) DELL INFORMAZIONE

TELECOMUNICAZIONI (TLC) Generico sistema di telecomunicazione (TLC) Trasduttore. Attuatore CENNI DI TEORIA (MATEMATICA) DELL INFORMAZIONE TELECOMUNICAZIONI (TLC) Tele (lontano) Comunicare (inviare informazioni) Comunicare a distanza Generico sistema di telecomunicazione (TLC) Segnale non elettrico Segnale elettrico TRASMESSO s x (t) Sorgente

Dettagli

3. TEORIA DELL INFORMAZIONE

3. TEORIA DELL INFORMAZIONE 3. TEORIA DELL INFORMAZIONE INTRODUZIONE MISURA DI INFORMAZIONE SORGENTE DISCRETA SENZA MEMORIA ENTROPIA DI UNA SORGENTE NUMERICA CODIFICA DI SORGENTE 1 TEOREMA DI SHANNON CODICI UNIVOCAMENTE DECIFRABILI

Dettagli

Il Concetto di Processo

Il Concetto di Processo Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono

Dettagli

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

Il ciclo di vita del software

Il ciclo di vita del software Il ciclo di vita del software Il ciclo di vita del software Definisce un modello per il software, dalla sua concezione iniziale fino al suo sviluppo completo, al suo rilascio, alla sua successiva evoluzione,

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN per Expert NANO 2ZN Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie Expert NANO 2ZN Nome documento: MODBUS-RTU_NANO_2ZN_01-12_ITA Software installato: NANO_2ZN.hex

Dettagli

su web che riportano documentazione e software dedicati agli argomenti trattati nel libro, riportandone, alla fine dei rispettivi capitoli, gli

su web che riportano documentazione e software dedicati agli argomenti trattati nel libro, riportandone, alla fine dei rispettivi capitoli, gli Prefazione Non è facile definire che cosa è un problema inverso anche se, ogni giorno, facciamo delle operazioni mentali che sono dei metodi inversi: riconoscere i luoghi che attraversiamo quando andiamo

Dettagli

5.2. Pipetta. 2: Lo strumento di luce/ombra

5.2. Pipetta. 2: Lo strumento di luce/ombra 2: Lo strumento di luce/ombra Scostamento Luce a «0%» e Ombra a «100%» Con lo strumento di luce/ombra possono essere fissati il punto più chiaro, il punto medio e quello più scuro dell immagine. Sotto

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Deviazione standard delle misure : dove è la varianza e sono gli scarti quadratici

Deviazione standard delle misure : dove è la varianza e sono gli scarti quadratici ELEMENTI DI PROBABILITA Media : migliore stima del valore vero in assenza di altre info. Aumentare il numero di misure permette di approssimare meglio il valor medio e quindi ridurre l influenza degli

Dettagli

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE 1. EQUAZIONI Definizione: un equazione è un uguaglianza tra due espressioni letterali (cioè in cui compaiono numeri, lettere

Dettagli

Minimizzazione di Reti Logiche Combinatorie Multi-livello

Minimizzazione di Reti Logiche Combinatorie Multi-livello Minimizzazione di Reti Logiche Combinatorie Multi-livello Maurizio Palesi Maurizio Palesi 1 Introduzione Obiettivo della sintesi logica: ottimizzazione delle cifre di merito area e prestazioni Prestazioni:

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento.

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. Excel: le funzioni Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. DEFINIZIONE: Le funzioni sono dei procedimenti

Dettagli

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t.

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t. Il programma MATLAB In queste pagine si introduce in maniera molto breve il programma di simulazione MAT- LAB (una abbreviazione di MATrix LABoratory). Introduzione MATLAB è un programma interattivo di

Dettagli

esercizi Esercizi / problemi

esercizi Esercizi / problemi Sistemi informativi applicati (reti di calcolatori): esercizi 1 Esercizi / problemi 1. Creare un applicazione che calcoli la media aritmetica dei seguenti valori interi: 35, 117, 23 e ne visualizzi il

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

Studio sperimentale della propagazione di un onda meccanica in una corda

Studio sperimentale della propagazione di un onda meccanica in una corda Studio sperimentale della propagazione di un onda meccanica in una corda Figura 1: Foto dell apparato sperimentale. 1 Premessa 1.1 Velocità delle onde trasversali in una corda E esperienza comune che quando

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Compilazione con WinEdt

Compilazione con WinEdt Luciano Battaia Sommario Guida rapida ed elementare ai diversi modi di compilazione di un file L A TEX, usando WinEdt, con alcune indicazioni di base sui formati immagine supportati. Gli output standard

Dettagli

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test Prefazione, Contenuto Parte 1: Sviluppo di programmi Parte 2: Uso e test SIMATIC Parte 3: Descrizione del linguaggio Programmazione di blocchi Appendici Glossario, Indice analitico Manuale Numero di ordinazione

Dettagli

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE In un mercato delle Telecomunicazioni sempre più orientato alla riduzione delle tariffe e dei costi di

Dettagli

Bus di sistema. Bus di sistema

Bus di sistema. Bus di sistema Bus di sistema Permette la comunicazione (scambio di dati) tra i diversi dispositivi che costituiscono il calcolatore E costituito da un insieme di fili metallici che danno luogo ad un collegamento aperto

Dettagli

Principal Component Analysis (PCA)

Principal Component Analysis (PCA) Principal Component Analysis (PCA) Come evidenziare l informazione contenuta nei dati S. Marsili-Libelli: Calibrazione di Modelli Dinamici pag. Perche PCA? E un semplice metodo non-parametrico per estrarre

Dettagli

Esercizi per il recupero del debito formativo:

Esercizi per il recupero del debito formativo: ANNO SCOLASTICO 2005/2006 CLASSE 3 ISC Esercizi per il recupero del debito formativo: Disegnare il diagramma e scrivere la matrice delle transizioni di stato degli automi a stati finiti che rappresentano

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Lab 02 Tipi semplici in C Obiettivo dell esercitazione Acquistare familiarità con i tipi di dato semplici supportati

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

Documentazione tecnica

Documentazione tecnica Documentazione tecnica Come spedire via Post 1.1) Invio di Loghi operatore 1.2) Invio delle Suonerie (ringtone) 1.3) Invio di SMS con testo in formato UNICODE UCS-2 1.4) Invio di SMS multipli 1.5) Simulazione

Dettagli

Funzioni. Corso di Fondamenti di Informatica

Funzioni. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Funzioni Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e dei

Dettagli

Il linguaggio Java. Concetti base. I packages

Il linguaggio Java. Concetti base. I packages Il linguaggio Java I packages Concetti base Un package è una collezione di classi ed interfacce correlate che fornisce uno spazio dei nomi ed un controllo sugli accessi Un package facilita il reperimento

Dettagli

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA 1. RICHIAMI SULLE PROPRIETÀ DEI NUMERI NATURALI Ho mostrato in un altra dispensa come ricavare a partire dagli assiomi di

Dettagli

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014 Processi di business sovra-regionali relativi ai sistemi regionali di FSE Versione 1.0 24 Giugno 2014 1 Indice Indice... 2 Indice delle figure... 3 Indice delle tabelle... 4 Obiettivi del documento...

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Architettura dei Calcolatori

Architettura dei Calcolatori Architettura dei Calcolatori Sistema di memoria parte prima Ing. dell Automazione A.A. 2011/12 Gabriele Cecchetti Sistema di memoria parte prima Sommario: Banco di registri Generalità sulla memoria Tecnologie

Dettagli

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012 Marco Giorgi Palazzo di Giustizia di Torino 30 marzo 2012 Post mortem (Dopo lo spegnimento del sistema) Si smonta il dispositivo e lo si collega ad un PC dedicato all'acquisizione Live forensics (Direttamente

Dettagli

Percorsi di matematica per il ripasso e il recupero

Percorsi di matematica per il ripasso e il recupero Giacomo Pagina Giovanna Patri Percorsi di matematica per il ripasso e il recupero 1 per la Scuola secondaria di secondo grado UNITÀ CMPIONE Edizioni del Quadrifoglio à t i n U 1 Insiemi La teoria degli

Dettagli

Capitolo 9: PROPAGAZIONE DEGLI ERRORI

Capitolo 9: PROPAGAZIONE DEGLI ERRORI Capitolo 9: PROPAGAZIOE DEGLI ERRORI 9.1 Propagazione degli errori massimi ella maggior parte dei casi le grandezze fisiche vengono misurate per via indiretta. Il valore della grandezza viene cioè dedotto

Dettagli

Introduzione alla Teoria degli Errori

Introduzione alla Teoria degli Errori Introduzione alla Teoria degli Errori 1 Gli errori di misura sono inevitabili Una misura non ha significato se non viene accompagnata da una ragionevole stima dell errore ( Una scienza si dice esatta non

Dettagli

METODO DELLE FORZE 1. METODO DELLE FORZE PER LA SOLUZIONE DI STRUTTURE IPERSTATICHE. 1.1 Introduzione

METODO DELLE FORZE 1. METODO DELLE FORZE PER LA SOLUZIONE DI STRUTTURE IPERSTATICHE. 1.1 Introduzione METODO DELLE FORZE CORSO DI PROGETTZIONE STRUTTURLE a.a. 010/011 Prof. G. Salerno ppunti elaborati da rch. C. Provenzano 1. METODO DELLE FORZE PER L SOLUZIONE DI STRUTTURE IPERSTTICHE 1.1 Introduzione

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java Riassunto Rassegna API - 1 Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 17 3 maggio 2015! Programmazione

Dettagli