Это довольно просто, поскольку, когда вы имеете дело с BufferedImage в Java, каждый пиксель хранится (или, по крайней мере, доступен) как внутренний. Полный диапазон значений доступен, если ваше изображение ARGB (32-битное). Подойдет любой формат изображения без потерь.
int[] array = new int[100];
final BufferedImage im = new BufferedImage(array.length, 1, BufferedImage.TYPE_INT_ARGB);
for (int i = 0; i < array.length; i++)
im.setRGB(i, 0, array[i]); // NOTE: this is probably optimizable