Использование lut-файла

Я получил задачу создать таблицу соответствия цветов для программы на C. Эта таблица должна храниться в файле lut. Хорошо, я понимаю, что "lut" обозначает таблицу поиска, но почему существует этот специальный тип файла? Я видел lut-примеры внутри кода, где они просто хранятся в виде массивов, я это понимаю. Но что я пишу в файл? Я предполагаю, что я просто записал бы значения rgb в него без скобок или запятых и прочитал бы его с помощью fread(). Но это также работает, если я сохранил файл как.c или что-то еще. Поэтому я чувствую, что я не совсем понимаю это.

Любая помощь будет оценена.

1 ответ

Решение

В файле таблицы поиска нет ничего особенного, и для таких файлов нет стандартизированного формата. Все зависит от компромиссов, с которыми вы хотите иметь дело. Если к таблице нужно получить доступ во время компиляции, то, вероятно, это будет просто файл C (как вы уже видели). Если к нему нужно обращаться во время выполнения в отдельном файле, то вам нужно будет найти подходящий формат.

"Таблица поиска" часто подразумевает, что поиск значения будет быстрым. Возможно, двоичный формат файла будет наиболее подходящим (по сравнению с текстовым форматом, который вы должны проанализировать). Если у вас есть 256 значений RGB, каждое из которых состоит из 3 байтов, вы можете найти определенное значение RGB в файле, взяв номер цвета, умножив его на 3 и выполнив поиск в этом месте в файле.

Другие вопросы по тегам