#+TITLE: Compression d’images par surfaces unies #+AUTHOR: Lucien Cartier-Tilet #+EMAIL: phundrak@phundrak.fr #+CREATOR: Lucien Cartier-Tilet #+LANGUAGE: fr * Introduction - Compresser et décompresser des images - Méthode : surfaces de couleurs unies * Méthode et algorithme * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix1.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix2.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix3.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix1.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix4.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix1.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix5.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix1.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix6.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix7.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix8.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix9.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix10.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix11.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix12.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix13.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix14.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix15.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix16.png]] * Méthode et algorithme #+attr_html: :height 750px [[./img-pres/asterix17.png]] * Implémentation et résultats | header | | | | | | sizeX | | src_c{uint64_t} | | | sizeY | | src_c{uint64_t} | | | | | | | nb zones | | | src_c{uint64_t} | | | | | | | zones[nb zones] | | | | | | R | | src_c{uint8_t} | | | G | | src_c{uint8_t} | | | B | | src_c{uint8_t} | | | nb segments | | src_c{uint64_t} | | | | | | | | segment[nb segments] | | | | | | left limit | src_c{uint32_t} | | | | right limit | src_c{uint32_t} | * Implémentation et résultats | taille du fichier d’origine | 3582016 bytes | | taille du fichier compressé | 2403581 bytes | | taux de compression | ~33% | | vitesse d’exécution | 7.06 sec | Tests réalisés sur un CPU Intel i7-6700HQ (3.500GHz) * Améliorations - Algorithme :: ignorer les tests de pixels supérieurs et inférieurs à un segment - Sortir du concept d’image :: ignorer le concept de lignes et colonnes - Compression à pertes :: Authoriser la perte de qualité pour un gain de place * Améliorations - Algorithme :: perte de vitesse - Sortir du concept d’image :: gains négligeables (12KB sur 2.4MB) * Améliorations - Compression à pertes :: #+attr_html: :height 750px [[../img/asterix5p.png]] * Améliorations - Compression à pertes :: | tolérance | vitesse d’exécution | taille de l’image compressée | |-----------+---------------------+------------------------------| | 0 | 7.37s | 2.3Mo | | 5 | 0.85s | 2.0Mo | | 10 | 0.82s | 2.0Mo | | 15 | 0.86s | 2.0Mo | | 20 | 0.84s | 1.9Mo | | 25 | 0.85s | 1.9Mo | | 30 | 0.92s | 1.8Mo | | 40 | 1.18s | 2.1Mo | | 50 | 0.90s | 1.5Mo | | 60 | 1.41s | 1.9Mo | | 70 | 1.34s | 1.8Mo | | 80 | 1.40s | 1.9Mo | | 90 | 1.42s | 1.9Mo | | 100 | 0.17s | 12Ko | * Conclusion * Liens et références - Dépôt du code :: [[https://labs.phundrak.fr/phundrak/surfaces-unies]] - Rapport de projet :: [[https://phundrak.fr/surfaces-unies/rapport.pdf]] - Documentation du code :: [[https://phundrak.fr/surfaces-unies/]]