wenn es nur um einen Linienfolger gehen soll, würde ich mir über die RAM-Größe überhaupt keine Gedanken machen. Es genügt, wenn man nur eine Zeile - sagen wir mal - knapp oberhalb der Bildmitte und ein knapp unterhalb der Mitte digitalisiert und abspeichert. Man bildet den Betrag der Differenz der beiden Zeilen und speichert diesen wieder im RAM ab (meinetwegen ab der Adresse der ersten Zeile. Nun sucht man das Maximum in der Differenzzeile. Dessen Adresse ist die Posiotion und damit die Lageabweichung der schwarzen oder weißen Linie.
Die Digitalisierung würde ich auch mit einem parallelem ADC machen. Damit wäre der µC weitgehendnd entlastet und der RAM-Verbrauch minimal.