2013-03-19 3 views
1

У меня есть bitmap, содержащий только один черный пиксель. Я принимаю файл bitmap и двойную петлю (например, матрицу) управляют цветом каждого пикселя. если это черное (постоянное значение: -16777216 (0xff000000)), поместите их в arrayintegers, значение 1, в противном случае 0Android растровое изображение не видно черное (astgmatic?)

Проблема в том, что Android портит изображение. потому что 8 пикселей вокруг черного пикселя, даже если они белые, они видят их не как белые (я точно не знаю, какой цвет), а центральный пиксель, не видят его как черный, а другой цвет .. затем все намерения и цели - астигматизм ... идеи о том, как исправить? Я должен считать пиксели черноту в картине ...

разместить код я использую

public int[][] DisegnaImpronta(Bitmap immagine) { 

      int[][] matrice; 

      matrice = new int[immagine.getWidth()][immagine.getHeight()]; 

      for(int i = 0; i <immagine.getWidth() ; i++) { 
        for(int j = 0; j < immagine.getHeight() ; j++) { 

          int colore = immagine.getPixel(i, j); 

          /* bianco se il valore è 1, nero se il valore è 0 */ 
          if(colore!=-1)System.out.println("coordinate: "+ i + " " + j + " c: " +colore); //qui mi notifica quando il colore è diverso da bianco 

          if(colore==-16777216){ 
            System.out.println("Un punto nero..."); 
            matrice[i][j]=1; 

          }else{ 
            matrice[i][j]=0; 
          } 

        } 
      } 

Извините за английский

ответ

1

Ваш п else пуст: else {}

Это означает, ваш код всегда выполняет линию matrix [i] [j] = 0;. Таким образом, вы установите все свои пиксели на 0.

+0

ошибка при копировании пасты. я чиню это – Lele

Смежные вопросы