Próbuję napisać 10,12 bit RGB plików TIFF z libtiff.Pisanie 10,12 plików bit TIFF z libtiff C++
Dane pikseli są zapisywane lokalnie w buforze unsigned short
(16bits)
1) Jeżeli ustawić TIFFTAG_BITSPERSAMPLE
do 10 lub 12, nie ma wystarczającej liczby bitów są odczytywane z bufora, a wyjście jest nieprawidłowe. (Rozumiem, że jest to po prostu odczyt 10 lub 12 bitów na komponent, zamiast 16 i to jest problem)
2) Próbowałem upakować bity w buforze, tak aby było naprawdę 12-R, 12- G, 12-B. W tym przypadku, myślę, że plik jest zapisywany poprawnie, ale żaden widz nie mógł znaleźć może poprawnie wyświetlić ten obraz.
3) Jeśli ustawię TIFFTAG_BITSPERSAMPLE
na 16, widzowie mogą wyświetlać obraz TIFF, ale wtedy mam problem, że nie wiem, czy obraz był pierwotnie 10 lub 12 bitów (Jeśli chcę później przeczytać go z LibTIFF). Ponadto przeglądarka oczekuje, że zakres dynamiczny będzie wynosił 16 bitów, a nie 10 lub 12, co również daje zły widok.
4) Najbardziej irytujące jest to, że nie mogłem znaleźć jeden 10, 12, lub 14-bitowy TIFF w internecie, aby zobaczyć, co nagłówek powinien wyglądać.
więc ostatecznie, jaka jest właściwa droga do napisania 10 lub 12 bitowe dane do pliku TIFF ?????
Zadałem to samo pytanie jakiś czas temu, brak wyników, wygląda na to, że format tiff nie ma takiego znacznika. Mam nadzieję, że się mylę ... –