2009-11-15 2 views
1

i ont une image et je veux nuances de gris pour balayer les pixels de l'image et ce que je reçois:getPixel-méthode - comment puis-je obtenir la valeur R de RGB?

var i:int; 
    var j:int; 
    for (i = 0; i < img.contentWidth ; i++) 
    { 
    for(j = 0; j < img.contentHeight; j++){ 
     pixeldaten.addItem({x:i,y:j,pixel:bmd.getPixel(i,j)}); 

    } 
    } 

mais la table ne ressemble pas à des valeurs RVB. (R, B et G doit être le même)

: example

Répondre

2

getPixel doit retourner la valeur de valeur hexadécimale du pixel, vous pouvez faire quelque chose comme

// obtenir la valeur rouge

bmd.getPixel(i,j) >> 16 
+0

Merci. Cela fonctionne parfaitement! – n00ki3

1
//for Image processing 
     Bitmap myBitmap = new Bitmap(CurrentBitmap); 
     int imgH = myBitmap.Height; 
     int imgW = myBitmap.Width; 
     ARed = new double[imgH, imgW]; 
     AGreen = new double[imgH, imgW]; 
     ABlue = new double[imgH, imgW]; 
     doubles = new double[imgH, imgW]; 

     var max = new double[imgH, imgW]; 
     var min = new double[0, 0]; 

     //seperating each RGB components 
     for (int x = 0; x < imgH; x++) 
     { 
      for (int y = 0; y < imgW; y++) 
      { 
       Color color = myBitmap.GetPixel(x, y); 
       // things we do with pixelColor 
       //ARed[x][y] = myBitmap.GetPixel >> 16; 
       ARed[x, y] = color.R; 
       ABlue[x, y] = color.B; 
       AGreen[x, y] = color.G; 
       max[x, y] = ARed[x, y]; 

      } 
     } 
+0

Merci d'avoir posté une réponse! Alors qu'un extrait de code pourrait répondre à la question, il est toujours bon d'ajouter des informations complémentaires, comme expliquer, etc. – j0k

Questions connexes