Файлы DNG основаны на стандарте TIFF / EP, ISO 12234-2 (по сути, это растровые изображения с дополнительными метаданными), поэтому, если вы начнете с соответствующей библиотеки ввода-вывода TIFF, которая поможет вам частично, вам нужно будет заполнить дополнительные данные, требуемые DNG, что может быть сложно.
Исходные преобразователи должны знать больше, чем просто интенсивность пикселей. Другая важная информация включает форму и ориентацию пикселей или свойства красителей (просто зная, что они переходят в GRBG, недостаточно, вам может понадобиться знать точный оттенок (или, точнее, частотную характеристику) каждого красителя, чтобы создать представление цвета в это варьируется между производителями). Я думаю, что DNG справляются с этим с помощью встроенного «профиля камеры».
редактирование:
Существует приложение для управления фотографиями с открытым исходным кодом, называемое digiKam, которое может записывать файлы DNG, поэтому, вероятно, лучше всего было бы просмотреть их источник и попытаться извлечь функции кодирования DNG.