15.07.2013 Views

Titel: Om fingeraftryk – komprimering med ... - of Arne Mejlholm

Titel: Om fingeraftryk – komprimering med ... - of Arne Mejlholm

Titel: Om fingeraftryk – komprimering med ... - of Arne Mejlholm

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7.3 De enkelte moduler og deres funktioner. 7. Udvikling af programmet<br />

i omr˚ade 5 udregnes værdien, ved hjælp af de 4 søgte felter udfra formel<br />

6.27. De 4 søgte felter farver vi HVID. Dette er tilsammen en skalering.<br />

Efter hver skalering farver vi de SORTe felter i omr˚adet 5 HVIDe for<br />

at gøre klar til en ny transformation. Funktionen kører indtil den ønskede<br />

skalering er opn˚aet. Som parameter tager funktioen en pointer til en struct<br />

af typen billede og returner det omr˚ade 5, se figur 7.2.<br />

bil trans<br />

Denne funktion kopierer data fra omr˚ade 5 over i et nyt array, ved hjælp af<br />

dynamisk allokering, <strong>med</strong> samme størrelse som omr˚ade 5.<br />

7.3.5 IO - wavelets<br />

Funktioner<br />

Skriver det komprimerede data i en fil <strong>med</strong> vores egen notation, og læser<br />

filen ind og gør opsætningen klar til en de<strong>komprimering</strong>. Følgende funktioner<br />

findes i dette modul.<br />

• write out file<br />

• read in file<br />

write out file<br />

Da vores udvidede array er 9 gange s˚a stort, som det oprindelige ikke udvidede<br />

array, finder vi derfor en m˚ade at gemme det komprimerede data<br />

til senere brug <strong>med</strong>. Alle værdierne i omr˚ade 5 skal gemmes, da de udgør<br />

selve billedet. Desuden har nogle af felterne uden for omr˚ade 5 ogs˚a en betydning<br />

for de<strong>komprimering</strong>en. Derfor <strong>med</strong>tager vi de felter, som er farvet<br />

GUL, se afsnit 7.3.3. Vi har valgt at gemme informationerne fra omr˚ade 5<br />

ved først at gemme farven af selve feltet efterfulgt af værdien i feltet. Da<br />

der bliver mange gentagelser af farven ROED efterfulgt af værdien 0, har vi<br />

valgt at beskrive mønsteret <strong>med</strong> betegnelsen A. For andre værdier og farver<br />

i omr˚adet 5 benytter vi tegnet ’R’ og ’H’ som separatorer for henholdsvis<br />

farverne ROED og HVID efterfulgt af en værdi. Nedenst˚aende afsnit viser<br />

hvordan vores output filformat er udformet.<br />

Forberedelses filoutput til Huffman<br />

Fil-output : hoej bred skal tresholding F1V1F2V2F3V3....FsVs m1 n1<br />

vaerdi1 m2 n2 vaerdi2.... ms ns vaerdis R R R.<br />

• hoej og bred — er højden og bredden af vores oprindeligt billede.<br />

80

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!