Autore Topic: Problema conversione rgba/rgb  (Letto 1332 volte)

Offline GiuseppeL

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg optimus one
  • Play Store ID:
    milano
Problema conversione rgba/rgb
« il: 07 Maggio 2011, 12:50:29 CEST »
0
Buon giorno, come da titolo ho un problema nella conversione da argb ad rgb.
Codice (Java): [Seleziona]
 
Bitmap mBitmap = BitmapFactory.decodeResource(getResources(),R.drawable.pic);

if(mBitmap.equals(null)){
           testo2="Immagine non presente";
           width =0;
           height =0;
    }else{
         alt = mBitmap.getHeight();
         larg = mBitmap.getWidth();
           
         
     }
                int a = mBitmap.getPixel(0, 0);
                String s1 = getRGBa(a);
               
                testo2 = "Alta: "+alt +" Larga: "+larg +" Pixel:" +s1;
            tv1.setText(testo2);
Leggo pic.jpg in drawable.

getRGBa è un metodo statico:
Codice (Java): [Seleziona]
public static String getRGBa(int pixel){
       
        int red = (pixel >> 16) & 0xff;
        int green = (pixel >> 8) & 0xff;
        int blue = (pixel) & 0xff;
        return "rgb: "  + red + ", " + green + ", " + blue;
      }
Leggendo le specifiche di rgba ho capito che è un itero a 32 bit dove i primi 8 sono il canale alpha, poi red, green e blue. Ho realizzato questo metodo in maniera tale che mi ritorni la tripla rgb del pixel.

Il mio problema però è che non ritorna il valore esatto, infatti se ho un pixel con valore 127,127,127 il risultato del metodo è: 140,134,140 la differenza tra la tripla ritornata e l'originale non è una costante. Ho provato anche i metodi: Color.red(pixel); Color.green(pixel);Color.blue(pixel); ma ottengo sempre lo stesso risultato.

Cosa sbaglio ?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Problema conversione rgba/rgb
« Risposta #1 il: 07 Maggio 2011, 15:59:28 CEST »
0
Che ha colore 127,127,127 da dove lo vedi? Apri l'immagine in un editor grafico o cosa?
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline GiuseppeL

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg optimus one
  • Play Store ID:
    milano
Re:Problema conversione rgba/rgb
« Risposta #2 il: 07 Maggio 2011, 16:19:01 CEST »
0
Si in photoshop

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Problema conversione rgba/rgb
« Risposta #3 il: 10 Maggio 2011, 12:35:08 CEST »
+1
non sono sicuro, ma credo che sia legato al fatto che la bitmap, manipolata da android, sia una versione non più a 24bit ma a 16 o simile....
in alcuni casi, se la stampi, ti puoi accorgere di alcune sfumature con aloni più marcati.

Prova a dirgli che stai manipolando un'immagine a 24/32bit colore:

Codice (Java): [Seleziona]
  BitmapFactory.Options opt = new BitmapFactory.Options();
  opt.inDither=false;
  opt.inPreferredConfig = Bitmap.Config.ARGB_8888;
  Bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.pic, opt);


7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline GiuseppeL

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg optimus one
  • Play Store ID:
    milano
Re:Problema conversione rgba/rgb
« Risposta #4 il: 16 Maggio 2011, 15:38:47 CEST »
0
Grazie 7h38ugg3r con le tue dritte ora trasforma perfettamente.  ;-)

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Problema conversione rgba/rgb
« Risposta #5 il: 16 Maggio 2011, 15:40:13 CEST »
0
Se il post ti è stato di aiuto, premi thanks (il tasto verde in alto ad ogni post).
^_^
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline GiuseppeL

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg optimus one
  • Play Store ID:
    milano
Re:Problema conversione rgba/rgb
« Risposta #6 il: 17 Maggio 2011, 14:46:58 CEST »
0
ummm non trovo questo "pulsante"  :-[

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Problema conversione rgba/rgb
« Risposta #7 il: 17 Maggio 2011, 14:50:16 CEST »
0
E' questo pulsante che trovi                                                                  ^^^^ QUI SOPRA ^^^^

Offline GiuseppeL

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg optimus one
  • Play Store ID:
    milano
Re:Problema conversione rgba/rgb
« Risposta #8 il: 17 Maggio 2011, 14:54:21 CEST »
0
Eh... non c'è  o_O ora è comparso magicamente.... :-o

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Problema conversione rgba/rgb
« Risposta #9 il: 17 Maggio 2011, 15:29:01 CEST »
0
Eh... non c'è  o_O ora è comparso magicamente.... :-o

Mmm... mi sa che c'è un limite e possono ringraziare solo gli utenti da 5 post in su... ;)