Hallo werte Java Gemeinde,
ich hänge seit einigen Tagen an einem Problem. Und zwar wollte ich aus den RAW Dateien, die es hier zu finden gibt: The Stanford volume data archive Grayscale Bilder erzeugen. Die Binary Dateien enthalten, wie der Beschreibung zu entnehmen ist 16-bit integers. Außerdem liegen entsprechende TIFF-Files bei, die einem ja erfreulicherweise eine Bestätigung geben könnten, dass man keinen völligen Blödsinn fabriziert. Dummerweise habe ich bisher weder noch, nämlich garnix produziert!
Aaaaalso, meine Idee war, einen UShortBuffer irgendwie auf die Binaries loszulassen, der sich immer quasi "bildzeilenweise" durch die Datei frisst. Erst ein Array aufzubauen wollte ich vermeiden, da die Raw Images, mit denen das später funktionieren soll, ziemlich groß sein können. Und das wäre ja doof, das Bild als Array und BufferedImage im Speicher zu haben.... oder gibt es doch Gründe dafür? Sodann wollte ich irgendwie durch die UShort Elemente iterieren und jedes als Farbwert an BufferedImage.setGrayscalePixel oder eine Ähnliche Funktion übergeben. Aber da hängts, nix mit ähnlicher Funktion, es gibt setRGB für 8-bit, und das ist doof! Jemand eine Idee?
Achja, für die Leute, die es per Array erledigen wollen, hilft vielleicht der Thread weiter, aber ich habe es noch nicht ausprobiert, weil ich ja eine andere Lösung suche:
Java 2D - create iamge from pixels
Vielen Dank für das Bemühen
ich hänge seit einigen Tagen an einem Problem. Und zwar wollte ich aus den RAW Dateien, die es hier zu finden gibt: The Stanford volume data archive Grayscale Bilder erzeugen. Die Binary Dateien enthalten, wie der Beschreibung zu entnehmen ist 16-bit integers. Außerdem liegen entsprechende TIFF-Files bei, die einem ja erfreulicherweise eine Bestätigung geben könnten, dass man keinen völligen Blödsinn fabriziert. Dummerweise habe ich bisher weder noch, nämlich garnix produziert!
Aaaaalso, meine Idee war, einen UShortBuffer irgendwie auf die Binaries loszulassen, der sich immer quasi "bildzeilenweise" durch die Datei frisst. Erst ein Array aufzubauen wollte ich vermeiden, da die Raw Images, mit denen das später funktionieren soll, ziemlich groß sein können. Und das wäre ja doof, das Bild als Array und BufferedImage im Speicher zu haben.... oder gibt es doch Gründe dafür? Sodann wollte ich irgendwie durch die UShort Elemente iterieren und jedes als Farbwert an BufferedImage.setGrayscalePixel oder eine Ähnliche Funktion übergeben. Aber da hängts, nix mit ähnlicher Funktion, es gibt setRGB für 8-bit, und das ist doof! Jemand eine Idee?
Achja, für die Leute, die es per Array erledigen wollen, hilft vielleicht der Thread weiter, aber ich habe es noch nicht ausprobiert, weil ich ja eine andere Lösung suche:
Java 2D - create iamge from pixels
Vielen Dank für das Bemühen