IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Compression de bitmap


Sujet :

Android

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 56
    Points
    56
    Par défaut Compression de bitmap
    Bonjour à toutes et à tous =)

    J'aurai une petite question concernant la compression de photo sur Android.
    J'ai une photo de taille N et j'aimerais la compresser (en conservant les proportions hauteur/largeur) pour qu'au final elle ne fasse qu'au plus 100Ko. (En se rapprochant le plus possible du 100Ko).

    J'ai ma petite idée de comment procéder, mais ça me parait aussi hasardeux que pas du tout opti x)
    Je pense enregistrer la photo sous une structure Bitmap. Ensuite, recréer cette Bitmap avec des dimensions divisées par x (x, à déterminer..) via la méthode createScaledBitmap. Si la taille de ma Bitmap n'est pas inférieur à 100Ko, je réitère l'opération.

    Existe-t'il une manière plus propre de procéder ?
    En vous remerciant =)

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Java / C++
    Inscrit en
    Mars 2013
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java / C++

    Informations forums :
    Inscription : Mars 2013
    Messages : 128
    Points : 228
    Points
    228
    Par défaut
    Bonjour kegilko,

    Je ne sais pas comment compresser/décompresser une image, mais, en attendant qu'un expert passe, tu peut peut-être regarder le code source des logiciels de compression, ou regarder si une librairie ne le fait pas déjà. Cela peut te donner des idées!
    Pensez à lire les règles du forum avant de poster.

    Si un poste ou un commentaire vous a été utile, merci de mettre un petit !
    Problème résolu? alors pensez à cliquer sur .
    Si vous avez trouvé la solution tout seul, merci de la poster, ça pourrait aider les suivants!

    Bonjour, s'il vous plaît et merci => ses mots ne coûtent rien, mais ils font toujours plaisirs!

  3. #3
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    1. Choisir un algorithme de compression (JPEG ?)
    2. Choisir une qualité de compression pour cet algorithme (par exemple Q=50 pour JPEG)
    3. Déterminer le ratio moyen de compression (pour JPEG Q=50, le ratio moyen est de 15 : 1) (R)

    Ensuite on peut faire une estimation de la taille nécessaire:
    Surface originale: WH
    Surface finale: wh
    Taille mémoire finale non compressée: 4wh
    Taille mémoire finale compressée: 4wh/R

    4wh/R = 100000
    hors, w = h * W / H
    4h²W/HR = 100000

    Donc, première estimation de taille:
    h = sqrt(25000 * H * R / W)
    w = h * W / H

    Pour une image de 2500x1400 (W=2500, H=1400), avec une compression JPEG Q=50 (R=15)

    Cela fait: h = sqrt(25000 * 1400 * 15 / 2500) = 458
    et donc w = 818
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 56
    Points
    56
    Par défaut
    huuuu, merci beaucoup Nicro !

    @Minicalion : j'avais parcouru la doc android et fais quelques recherches sur le net sans trouver de vrai solutions...
    Et du coup la manip' de Nicroman va me permettre de faire ça 'à la main', c'est pas plus mal.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Conversion de BITMAP avec compression RLE
    Par Wahahoo dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 16/10/2013, 11h27
  2. NullPointerException sur bitmap.compress
    Par John Blobsmith dans le forum Android
    Réponses: 3
    Dernier message: 30/04/2012, 19h20
  3. Compression DCT sur une image bitmap
    Par Supr3M dans le forum C
    Réponses: 8
    Dernier message: 13/01/2010, 19h29
  4. Réponses: 0
    Dernier message: 10/04/2009, 11h21
  5. compression de données du point de vue algorithmique
    Par GoldenEye dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 26/06/2002, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo