Czy możliwe jest przetwarzanie (filtrowanie) obrazów HDR za pomocą Core Image? Nie mogłem znaleźć wiele dokumentacji na ten temat, więc zastanawiałem się, czy ktoś może mieć odpowiedź na to. Ja wiem, że jest to możliwe do wykonania obliczeń przestrzeni roboczej z RGBAh
kiedy zainicjować CIContext
, więc pomyślałem, że jeśli możemy zrobić z obliczeń zmiennoprzecinkowych formatów obrazu punktu, że powinno być możliwe ..Obrazy HDR poprzez Core Image?
Co, jeśli w nie jest to możliwe, czy istnieją alternatywy, jeśli chcesz produkować efekty HDR na iOS?
EDYCJA: Pomyślałem, że postaram się być nieco bardziej zwięzły. Rozumiem, że obrazy HDR mogą być zaciśnięte i zapisane jako .jpg, .png i inne formaty obrazu poprzez zaciśnięcie wartości pikseli. Jednak bardziej interesuje mnie mapowanie tonów poprzez obraz rdzenia na obrazie HDR, który nie został jeszcze przekonwertowany. Problem polega na kodowaniu CIImage z obrazem HDR, podobno z rozszerzeniem .hdr.
EDIT2: Może warto byłoby użyć CGImageCreate
wraz z CGDataProviderCreateWithFilename
?
Po połączeniu, wynikowy plik nie może być w żaden sposób wykorzystywany do dostarczania informacji o pikselach? Być może mamy taki plik na zewnątrz, stąd rozszerzenie .hdr, które widziałem używane w przykładowym kodzie MATLAB do mapowania tonów, nie można po prostu dostarczyć tego pliku i zakodować wynikowy obraz do CIImage? Może nie jest to celem Core Image, aby robić odwzorowanie tonów na zdjęciach HDR? Chociaż technicznie jest to możliwe, za pomocą własnych filtrów. –
@DavidSacco pierwszy problem polega na tym, że w systemie iOS nie ma dostępu do oryginalnie przechwyconych obrazów, które mają różne ekspozycje. A po ostatecznym przetworzeniu HDR nie przechowuje informacji o pikselach plików źródłowych, ponieważ technicznie niemożliwe jest przechowywanie takich danych w 3 kanałach RGB. W przypadku obrazów w systemie iOS "HDR" są to tylko pliki JPEG, które zostały już przetworzone przy użyciu wielu zdjęć z różnymi ekspozycjami. – sleepwalkerfx
Dzięki, tak, z mojego własnego google-fu jest to również to, czego się nauczyłem. Zastanawiam się, czy którykolwiek z nowych elementów iOS 10 dotyczących obrazów .RAW może pomóc. Nauczyłem się również, że obrazy HDR można zapisywać w postaci zmiennoprzecinkowej.Plik TIFF, w którym można zachować wysokie intensywności, wystarczy, że użytkownik będzie musiał dostarczyć wspomniany obraz, jeśli chce użyć mapowania tonalnego. Możliwe jest również, że twój kontekst jest obliczany w precyzji zmiennoprzecinkowej za pomocą opcji 'kCIContextWorkingFormat'. –