Java单色.png到.pbi像素数据(每像素位,1 = W,0 = B)

时间:2014-03-05 18:45:01

标签: java android image image-processing pebble-watch

尝试从Android应用程序将图像发送到Pebble智能手表。它似乎是this may be applicable,但目的不同,我不明白它是否适用于我的图像和输出。

我有RGB_565图片由BitmapFactory提供,已知是黑色&白色且已知96x96尺寸。为了将它发送到Pebble,我需要它们的.pbi格式:

  • 1位像素
  • 填充到32位宽(96x96不需要 - 因此我选择!)
  • 1 =>白色; 0 =>黑

我正在尝试:

int pbi[][] = new int[96][96];
for (int row = 0; row < 96; row++ ){
    for (int col = 0; col < 96; col++){
        if (bmp.getPixel(row, col) == 0xFFFFFFFF) pbi[row][col] = 1;
        else pbi[row][col] = 0;
    }
}

这有意义吗?我无法真正测试它,因为我需要首先实现更难以将其传输到Pebble的下一步...但为了做到这一点,我需要这种每像素位格式。

或者是否有更简单的内置方法? Something like this, but in reverse?感谢。

1 个答案:

答案 0 :(得分:-1)

你不是要检查if语句中没有设置它的颜色吗? (==而不是=)

i = 144x144
current_pix = find_first()
for i < 0
    if (pix_colour(current_pix) == white) add_binary_weight_to_output(i)
    i -= 1