Noch eine Möglichkeit wäre, wenn du einfach jeden Pixel kontrollierst, und wenn sein Wert > 128 ist, machst du eine 1 und wenn < 128 dann eine 0 (oder umgekehrt, hängt davon ab, was Schwarz und was Weiß ist, das weis ich gerade nicht).
Dann kannst du dieses Array in einen Stream Speichern und hinterher wieder Auslesen.
Wenn du ganz ehrgeizig bist, kannst du dir auch entsprechende Prozeduren ausenrum Packen und standartgemäße Bitmaps erzeugen.
Ich hab vor ca. 3 Monaten genau das gemacht, eine
Unit die ein Bitmap in ein Array lädt und auch wieder speichern kann, allerdings waren das 24-Bit Bitmaps.
mfG
Markus
PS: Egal welchen Weg du nimmst, dein Projekt hört sich sehr Interessant an ...