π
<-
Chat plein-écran
[^]

[Librairie] Compress - Compressez vos données/images !

Pour TI-Nspire OS 3.0 ou ultérieur.

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Adriweb » 12 Juin 2013, 15:37

Bon travail :)

Au passage, peut-être seras-tu intéressé par ce code que j'ai fait ya quelques jours pour justement avoir des fonctions de base pour un lecteur d'images en Lua :
viewtopic.php?p=142571#p142571

Le tien propose de bouger, le mien propose en plus des fonctions de zoom :)

Reprends le code comme tu le souhaites :)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Morhaus » 12 Juin 2013, 16:22

Je viens juste d'apprendre que la méthode copy permettait en effet de scaler des images :) Le mode d'interpolation est loin d'être idéal pour les annales par exemple où le texte n'est pas lissé, mais c'est mieux que rien. J'en ai profité pour intégrer assez rapidement des raccourcis pour zoomer / dézoomer / 1:1 / adapter.
Avatar de l’utilisateur
Morhaus
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 78.1%
 
Messages: 19
Inscription: 16 Jan 2013, 14:04
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Morhaus » 12 Juin 2013, 19:37

Nouvelle version !
https://mega.co.nz/#!UxYBAZQR!BfvEC079- ... 5xsJMV1KYY

Changelog :
  • image.py n'effectue plus de correction de couleur.
  • lzw.compress est beaucoup plus efficace.
  • convert.py lance une erreur lorsque aucun fichier d'entrée n'a été trouvé.
  • convert.py peut créer des scripts & classeurs contenant plusieurs images avec le paramètre -z ou --zip.
  • convert.py accepte le paramètre facultatif -l[N] qui limiter la taille maximale du dictionnaire de codes de l'algorithme LZW (utile en cas de manque de mémoire).
  • convert.py accepte le paramètre facultatif --rle qui force l'utilisation de la compression RLE
  • touches de zoom :
    • +: zoom avant
    • -: zoom arrière
    • *: l'image occupe toute la largeur de l'écran
    • /: l'image occupe toute la hauteur de l'écran
    • 0: zoom 1:1
  • les touches 1, 2, 3, 4, 6, 7, 8, 9 envoient à un coin de l'image.
  • les touches A, B, C, ..., Z permettent de naviguer entre les images.
Avatar de l’utilisateur
Morhaus
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 78.1%
 
Messages: 19
Inscription: 16 Jan 2013, 14:04
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Lionel Debroux » 13 Juin 2013, 06:29

Ca avance bien :)
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Adriweb » 13 Juin 2013, 07:20

En effet, bon boulot !)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Morhaus » 13 Juin 2013, 17:22

surprise surprise... la limite d'utilisation mémoire des scripts lua est située quelque part entre 28 et 32mb. Et certains des plus gros fichiers (notamment lorsqu'ils sont mis en classeurs) vont faire dépasser cette limite au décompresseur lorsqu'il s'agit de restaurer la string d'origine (table.concat).
J'ai donc ajouté un paramètre de plus en ligne de commande nommé -p [N]/--part-size [N] qui va spécifier une taille pour découper la décompression en plusieurs parties, afin d'appeler garbagecollect() entre chaque table.concat. Ce n'est pas idéal et des problèmes persistent (évidemment). Une solution serait de découper les images trop grandes en plusieurs parties, une autre de les réduire au préalable.

Edit : ou bien décharger une image et la recharger à la demande.
Avatar de l’utilisateur
Morhaus
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 78.1%
 
Messages: 19
Inscription: 16 Jan 2013, 14:04
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Morhaus » 13 Juin 2013, 18:57

Bonne nouvelle :)
La décompression est suffisamment performante pour permettre la décompression des différentes images d'un classeur à la volée (~2s de chargement pour une page d'annale en 700*1200). Les problèmes de mémoire sont donc inexistants !
Cette approche permet aussi de charger les fichiers 2 à 3x plus rapidement.

Du coup je vais compresser tous les sujets d'annales pour diminuer le nombre de classeurs dans la TI-Nspire.

Autre info, si la taille vous préoccupe beaucoup, réenregistrez les classeurs créés par luna dans Student Software, ça devrait récupérer environ 10% de la taille du fichier.
Avatar de l’utilisateur
Morhaus
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 78.1%
 
Messages: 19
Inscription: 16 Jan 2013, 14:04
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Levak » 13 Juin 2013, 19:01

Morhaus a écrit:Autre info, si la taille vous préoccupe beaucoup, réenregistrez les classeurs créés par luna dans Student Software, ça devrait récupérer environ 10% de la taille du fichier.

Ah ? En 3.1 on avait trouvé que Luna optimisait à 30% plus que TI-Nspire Computer Software qui compressait moins à 40% que la calto (il ajoutait surement des choses)...
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Morhaus » 13 Juin 2013, 19:07

Je pense que ça dépend beaucoup du format de donnée. Compressées, les images sont des suites de nombres séparés par des virgules, ce qui est donc extrêmement répétitif. Je ne fais que constater : sur tous les classeurs que j'ai réenregistré sous Student Software, j'ai pu constater un gain de l'ordre de 10% (sur le plus gros, 207ko -> 189ko).
Avatar de l’utilisateur
Morhaus
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 78.1%
 
Messages: 19
Inscription: 16 Jan 2013, 14:04
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: [Librairie] Compress - Compressez vos données/images !

Message non lude Excale » 13 Juin 2013, 19:18

En utilisant 7-zip au lieu de la lib normale, on peut les compresser encore bien plus^^.
Avatar de l’utilisateur
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 3.9%
 
Messages: 2955
Images: 3
Inscription: 10 Sep 2010, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile

PrécédenteSuivante

Retourner vers Nspire-Lua

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 7 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1138 utilisateurs:
>1116 invités
>18 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)