80 likes | 195 Views
PROGETTINI DI FINE CORSO. Facoltativi ... ... ma molto utili x sviluppare un po’ di competenze di programmazione Qualsiasi linguaggio di programmazione ma meglio C++/Java Gruppi di 2-3 persone Breve relazione (5-10 pagine) di presentazione delle scelte implementative e dei risultati ottenuti.
E N D
PROGETTINI DI FINE CORSO • Facoltativi ... • ... ma molto utili x sviluppare un po’ di competenze di programmazione • Qualsiasi linguaggio di programmazione ma meglio C++/Java • Gruppi di 2-3 persone • Breve relazione (5-10 pagine) di presentazione delle scelte implementative e dei risultati ottenuti Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - I • HUFFMAN CODING • Costruire un programma che effettui la codifica/decodifica di un file di testo attraverso al codifica di Huffman, calcolando le probabilità con una prima passata sui dati • Deve essere possibile visualizzare il codice prodotto per ogni simbolo, la lunghezza media associata al codice prodotto e l’entropia • Si valutino le prestazioni ottenute • Deve essere possibile visualizzare una rappresentazione anche schematica dell’albero di Huffman Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - II • CANONICAL HUFFMAN CODING • Si progetti un programma che effettui la codifica/decodifica di un file di testo implementando il codice di Huffman canonico • Deve essere possibile visualizzare il codice corrispondente ad ogni simbolo • Si valutino le prestazioni ottenute Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - III • ADAPTIVE HUFFMAN CODING: FGK • Si progetti un programma che effettui la codifica/decodifica di un file di testo con alfabeto {A-Z,0-9} tramite l’algoritmo FGK • Si valutino le prestazioni ottenute Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - IV • LEMPEL-ZIV CODING: LZW • Si progetti un programma che effettui la codifica/decodifica di un file di testo con alfabeto {A-Z,0-9} tramite l’algoritmo LZW • Deve essere possibile specificare la dimensione del dizionario • Si valutino le prestazioni ottenute (tempo di calcolo, fattore di compressione, occupazione di memoria) al variare della dimensione del dizionario • Si confrontino le prestazioni rispetto all’utility compress Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - V • LEMPEL-ZIV CODING: LZW x immagini • Si progetti un programma che effettui la codifica di una immagine in formato bmp non compresso (ppm) attraverso l’algoritmo LZW • Deve essere possibile specificare la dimensione del dizionario • Si valutino le prestazioni ottenute (tempo di calcolo, fattore di compressione, occupazione di memoria) al variare della dimensione del dizionario • Si confrontino le prestazioni con l’immagine in formato GIF Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - VI • LEMPEL-ZIV CODING: LZ77 • Si progetti un programma che effettui la codifica di un file di testo attraverso l’algoritmo LZ77 (facoltativo, usare anche 2 alberi di Huffman) • Deve essere possibile specificare la dimensione del dizionario • Si valutino le prestazioni ottenute (tempo di calcolo, fattore di compressione, occupazione di memoria) al variare della dimensione del dizionario • Si confrontino le prestazioni con l’immagine in formato GZIP Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005
Progetti - VII • ARITHMETIC CODING • Costruire un programma che effettui la codifica/decodifica di un file di testo attraverso la codifica aritmetica calcolando le probabilità con una prima passata sui dati • Si descrivano i problemi implementativi affrontati e si proponga una soluzione Gabriele Monfardini - Corso di Basi di Dati Multimediali a.a. 2004-2005