Nur eine Idee, am Besten an einem Beispiel erklärt: Du hast ein 50*50 Bild, das du horizontal auf's doppelte strecken willst. Du nimmst ein array[0..99] und schreibst in jedes zweite Feld eine Farbe rein, also in Feld 3, die Farbe vom 2.Pixel, in Feld 5 Die Farbe vom 3.Pixel usw.. Die Lücken könntest du dann mit einer Art durchschnittsfarbe der Nachbar füllen. Also etwa so:
[2][4][3][9] // Die Farben einer Zeile in einem 4*4 Pixel Bild
// dann lücken bilden:
[2] [4] [3] [9]
// und füllen:
[2]
[3][4]
[3][3]
[6][9]
jetzt hast du die oberste Zeile eines 8*4 Pixel Bild. Ich hab ehrlich gesagt keine Ahnung wie das aussieht.
Erwarte das Beste und bereite dich auf das Schlimmste vor.