Chciałbym agresywnie kompresować niektóre naukowe 16-bitowe pliki obrazów w skali szarości, ale bez zmniejszania zakresu dynamicznego. Czy coś takiego jest możliwe?
Rozumiem, że format JPEG wykorzystuje kompresję stratną, a zatem dostrajająco agresywną, ale obsługuje tylko 8 bitów na kanał koloru.
Format PNG obsługuje 16-bitowe obrazy w skali szarości, ale obsługuje tylko kompresję bezstratną, co ogranicza współczynnik kompresji plików.
Format TIFF obsługuje również 16-bitowe obrazy w skali szarości, ale o ile mi wiadomo, nie obsługuje standardowej kompresji stratnej obrazów 16-bitowych.
jpeg
hdr
black-and-white
file-format
image-compression
Christopher Bruns
źródło
źródło
Odpowiedzi:
Wygląda na to, że szukasz JPEG2000. Ma szereg opcji, w tym 16-bitową kompresję stratną i lepsze współczynniki kompresji niż JPEG. Nie został tak powszechnie przyjęty, jak się spodziewano (z wielu powodów) i może mieć pewne problemy patentowe, które mogą utrudnić jego użycie w pewnych sytuacjach, ale w przeciwnym razie pasuje do twoich potrzeb.
Osobiście gdybym był na twoim miejscu, powiedziałbym, że przechowywanie jest tanie i używam PNG, który jest odpowiednio zdefiniowanym i bezpłatnym standardem.
źródło
JPEG2000, możesz też spojrzeć na OpenEXR, ponieważ jest on obsługiwany przez sprzęt wideo.
źródło
Maksymalny zakres dynamiczny liniowego kodowania 8-bitowego wynosi tylko 8 przystanków, jednak zakres dynamiczny, który można zapisać za pomocą kodowania nieliniowego, jest nieograniczony.
Dlatego sugerowałbym zastosowanie silnej krzywej tonalnej do zdjęć, a następnie można użyć standardowego JPEG bez utraty zakresu dynamicznego. Jeśli chcesz użyć oryginalnych obrazów, przekonwertuj je na 16-bitowe i zastosuj odwrotną krzywą tonalną.
Jest tak oczywiście, jeśli Twoim jedynym zmartwieniem jest zakres dynamiczny. Jeśli musisz także zachować zakres tonalny , być może będziesz musiał zastosować własną kompresję stratną ...
źródło