134
134
<li>Несколько снижены требования к необходимому количеству оперативной памяти</li>
135
135
<li>Работа с маскированными пикселями и уровнем черного</b>: возможно отключить обязательное вычитание уровня
136
136
черного и фильтрацию нулевых пикселов</li>
137
<li><b>Работа с краями диапазона значений</b>: минимальными значениями (часто называемыми точкой черного) и
138
максимальными значениями (точкой насыщения).
140
<li>Вычитание точки черного сделано необязательным.
142
<li>Рассчитываются максимальные значения данных по каналам.
139
149
<a name="todo"></a>
140
150
<h2>Планируемые улучшения</h2>
141
151
<p>Код dcraw нуждается в существенных изменениях и дополнениях:</p>
143
<li><b>Выдача распакованных данных в различных memory layouts</b>: в зависимости от потребностей вызывающей
144
программы, результаты распаковки RAW будут выдаваться в одном из вариантов, выбираемом на runtime:
146
<li>4-компонентные пиксели (внутренний формат данных dcraw)</li>
147
<li>байеровский формат: двумерный массив, каждый элемент которого соответствует пикселю матрицы</li>
148
<li>4 двумерных массива (по одному на каждый компонент)</li>
151
153
<li><b>Однопроходная распаковка RAW-файлов с несколькими вариантами изображения</b>: для тех камер, для которых
152
154
это применимо (камеры FUJI, камеры с режимами 4-shot/16-shot) будут извлекаться несколько планов одного
155
<li><b>Работа с краями диапазона значений</b>: минимальными значениями (часто называемыми точкой черного) и
156
максимальными значениями (точкой насыщения).
158
<li>Вычитание точки черного уже сделано необязательным. В следующие версии LibRaw будет включен код,
159
выполняющий вычисление уровня черного специфическим для конкретной камеры способом.
161
<li>Максимальные значения так же могут быть разными по каналам, соответственно эти значения надлежит
162
рассчитывать на этапе распаковки RAW-данных и выдавать в рамках API. Вычисление максимальных значений для
163
конкретного экземпляра камеры при конкретной чувствительности (калибровка конвертора) - задача приложения,
168
157
<li><b>Работа с черной рамкой</b>: данные, считанные с черной рамки (или двух черных рамок, на тех камерах, где
169
158
их две) нужно делать доступными в вызывающем приложении (например, это необходимо для подавления
170
159
определённых артефактов, в частности - banding).</li>
196
185
<li>RAW-файлы от задников с режимами 4-shot и 16-shot</li>
199
<li>Технологические улучшения, в частности:
201
<li>Извлечение ICC-профиля (для тех RAW-файлов, где он имеется).</li>
202
<li>Уменьшение объемов аллоцируемой памяти в тех случаях, когда постобработка не будет вестись в том же
203
буфере, куда были прочитаны RAW-данные.</li>
207
189
<p>В то же время, никаких модификаций и расширений кода обработки данных dcraw (де-байеризация, цветовые
208
190
преобразования и так далее) мы производить не планируем, это все должно быть задачей вызывающего