Eine große Frage ist, ob Sie das gesamte Raster aus der Datei vor der Verarbeitung in den Speicher lesen oder ob die Datei so groß ist, dass Sie sie inkrementell verarbeiten oder eine Teilmenge der Gesamtdatei verarbeiten.
Wenn Sie alles in den Speicher laden, erfolgt der Zugriff zumeist sequenziell, und das schnellste Format ist eine Aufteilung zwischen normalem und komprimiertem Speicher (abhängig davon, wie schnell Ihre CPU im Vergleich zur Festplatte ist). Jedes der Binärdateiformate wird wahrscheinlich ziemlich ähnlich sein (ASCII wird langsamer sein).
Wenn Sie eine Teilmenge einer sehr großen Datei verarbeiten müssen, kann ein Format, in dem die gewünschte Teilmenge näher beieinander liegt, schneller sein, z. B .: Kacheln oder ein Format, in dem Offsets berechnet werden können. Manchmal gewinnen unkomprimierte Ansätze an Bedeutung, da es möglicherweise trivial ist, zu berechnen, wo sich ein bestimmter Teil des Bilds in der Datei befindet, insbesondere, wenn Sie nur einen Teil einer sehr großen Zeile benötigen, die Komprimierung jedoch auf granulare Weise erfolgen kann, die für einige gut geeignet ist Zugriffsmuster.
Tut mir leid, aber Sie müssen wahrscheinlich abhängig von Ihrem Zugriffsmuster einen Benchmark durchführen, anstatt eine Einheitsgröße zu erhalten. Dies hängt natürlich nicht nur vom Dateiformat und den oben genannten Faktoren ab, sondern auch von den Treibern für dieses Format und Ihrer Software.