Zamień tablicę pikseli w obiekt Image za pomocą Java ImageIO?

Obecnie obracam tablicę wartości pikseli (pierwotnie utworzonych za pomocą obiektu java.awt.image.PixelGrabber) do obiektu Image przy użyciu następującego kodu:

public Image getImageFromArray(int[] pixels, int width, int height) {
    MemoryImageSource mis = new MemoryImageSource(width, height, pixels, 0, width);
    Toolkit tk = Toolkit.getDefaultToolkit();
    return tk.createImage(mis);
}

Czy możliwe jest osiągnięcie tego samego wyniku przy użyciu klas z pakietów ImageIO, więc nie muszę używać zestawu narzędzi AWT?

Toolkit.getDefaultToolkit () nie wydaje się być w 100% wiarygodny i czasami rzuca AWTError, podczas gdy klasy ImageIO powinny być zawsze dostępne, dlatego jestem zainteresowany zmianą mojej metody.