Изображения HDR через Core Image?
Можно ли обрабатывать (фильтровать) изображения HDR через Core Image? Я не мог найти много документации по этому поводу, поэтому мне было интересно, есть ли у кого-нибудь ответ на него. Я знаю, что при инициализации CIContext
можно выполнить вычисления рабочего пространства с помощью RGBAh
, поэтому я решил, что если мы сможем делать вычисления с форматами изображений с плавающей запятой, это должно быть возможно.
Что, если это невозможно, являются альтернативами, если вы хотите создавать HDR-эффекты для iOS?
EDIT: Я думал, что постараюсь быть немного более кратким. По моему мнению, HDR-изображения могут быть зажаты и сохранены как .jpg,.png и другие форматы изображений, зажав значения пикселей. Тем не менее, меня больше интересует тонирование, отображаемое через Core Image на HDR-изображении, которое еще не было преобразовано. Проблема заключается в кодировании CIImage с HDR-изображением, предположительно с расширением .hdr.
EDIT2: Возможно, было бы полезно использовать CGImageCreate
, а также CGDataProviderCreateWithFilename
?
Ответы
Ответ 1
Надеюсь, у вас есть общее представление о том, как работает HDR. Файл HDR генерируется путем захвата 2 или более изображений при различных экспозициях и их объединении. Так что даже если есть что-то вроде файла .HDR, это будет формат контейнера с более чем одним jpg. Технически вы не можете сразу предоставить два файла изображений в качестве входа в общий CIFilter.
И в iOS, как я помню, невозможно получить доступ к исходному набору фотографий HDR, но обработанному окончательному выводу. Даже если бы вы могли, вам придется вручную выполнить HDR-процесс и создать один HDR png/jpg в любом случае, прежде чем загружать его в CIFilter.