PDA

Zobacz pełną wersję : RAW a wywoływanie



dobryjanek
06-10-2008, 23:42
Witam
Laikiem będąc, szukam odpowiedzi. Z góry przepraszam, jeśli już było, ale znajduję jedynie teksty powtarzające się, a nie wyjaśniające kwestii. Mówi się mianowicie potocznie o wywoływaniu RAWów czy nazywa je cyfrowymi negatywami. I tego się czepiłem i zacząłem szukać. Wszędzie znajduję jednak z grubsza te same informacje, że to "surowy format", że bezstratny(*), że daje większe możliwości obróbki, dowiaduję się o zapisie danych z poszczególnych pikseli, o interpolacjach i masie innych rzeczy. Ale paradoksalnie nadal nie wiem czym do końca jest RAW. Chodzi mi o to, czy funkcjonuje on jako samodzielny obraz, który można wyobracać na (prawie) wszystkie strony, czy obrazem sam w sobie nie jest, a dopiero możemy z niego obraz zrobić (coś jak surowe ciasto i gotowy wypiek :P). Cały czas sądziłem, że jest to po prostu określony, specyficzny format zapisu obrazu (w końcu jakoś to w aparacie chociażby mogę oglądać), myli mnie zaś termin "wywoływania".
Wiem, że szukam problemów na siłę i lepiej, żebym poszedł jakieś zdjęcia porobić, ale mimo wszystko liczę, że kto światły się wiedza na ten temat podzieli ;)

(*) - przy okazji czytałem też, że w Nikonach RAWy są kompresowane, w wyższych modelach podobno można to wyłączyć, ja w swoim - bądź co bądź niższym - D80 takiej opcji (ani informacji o kompresji) nie widziałem. Prawda to?

Czornyj
06-10-2008, 23:45
RAW nie istnieje jako samodzielny obraz. Teoretycznie można by go było zobaczyć, ale wyglądałby naprawdę ch...

dobryjanek
07-10-2008, 00:20
Właśnie o to mi chodzi. Czyli oglądając go w aparacie widzę tak naprawdę jakieś jego "wywołanie w locie" dla domyślnych/automatycznie dostrojonych parametrów? A konwersja NEFa do jpeg jest tymże samym - wywołaniem na z góry określonych (i zazwyczaj niekoniecznie fortunnych) warunkach?
Czyli de facto NEF czy żaden inny format RAW nie jest żadnym formatem pliku obrazu (żeby nie powiedzieć graficznego), tylko ciągiem informacji o stanie pikseli + jakieś informacje nagłówkowe (co za aparat, jaka przysłona i tym podobne EXIF-owe dobra), tak?

Erie
07-10-2008, 00:25
pozwól, że pomogę

1. mamy sobie obrazeczek

https://forum.nikoniarze.pl//brak.gif
źródło (http://img231.imageshack.us/img231/6020/imagewd1.png)

2. tak w uproszczeniu wygląda jego RAW (dla matrycy RGGB)

https://forum.nikoniarze.pl//brak.gif
źródło (http://img231.imageshack.us/img231/6261/rawimagegraysl1.png)

3. a tak to wygląda po dodaniu filtrów barwych w celu pokazania jakie kolory zostały zarejstrowane przez poszczególne komórki matrycy

https://forum.nikoniarze.pl//brak.gif
źródło (http://img231.imageshack.us/img231/3176/rawimageye5.png)

Erie
07-10-2008, 00:26
Właśnie o to mi chodzi. Czyli oglądając go w aparacie widzę tak naprawdę jakieś jego "wywołanie w locie" dla domyślnych/automatycznie dostrojonych parametrów? A konwersja NEFa do jpeg jest tymże samym - wywołaniem na z góry określonych (i zazwyczaj niekoniecznie fortunnych) warunkach?
Czyli de facto NEF czy żaden inny format RAW nie jest żadnym formatem pliku obrazu (żeby nie powiedzieć graficznego), tylko ciągiem informacji o stanie pikseli + jakieś informacje nagłówkowe (co za aparat, jaka przysłona i tym podobne EXIF-owe dobra), tak?

praktycznie rzecz biorąc bardzo trafnie to ujęto zostało :), przy czym same warunki nie są określone z góry tylko sam użytkownik aparatu ustala sobie je w jakimś zakresie

Czornyj
07-10-2008, 00:28
To co widzisz, jest już wywołane przez aparat dla kombinacji parametrów, które można dobrać w puszce. NEF to swoista tabula rasa, mająca niewiele wspólnego ze obrazem w kategoriach ludzkiej percepcji + trochę tagów z informacjami.


pozwól, że pomogę...
Tylko do tego jeszcze będzie to ciemne, mdłe i totalnie nieostre :D

Erie
07-10-2008, 00:44
Tylko do tego jeszcze będzie to ciemne, mdłe i totalnie nieostre :D

i zwykle opisane jeszcze większą liczbą bitów niż 8 jak w powyższym przykładzie, ale to jest tylko poglądowa ilustracja :)

dobryjanek
07-10-2008, 00:53
Dzięki wszystkim za wyjaśnienia, zarówno obrazowe jak i tekstowe :) Wychodzi więc, że faktycznie termin wywoływania jest tu na miejscu i mogę spokojnie iść spać ;)


praktycznie rzecz biorąc bardzo trafnie to ujęto zostało :smile:, przy czym same warunki nie są określone z góry tylko sam użytkownik aparatu ustala sobie je w jakimś zakresie

Jak już drążę temat, to dogłębnie ;> Czyli w tym momencie to, co wyświetla mi aparat jako NEFa, to jest ów NEF przerobiony wg ustawień, przy których robiłem zdjęcie, czy tak? Mam tu na myśli rzeczy typu np. balans bieli. Bo rozumiem, że rzeczony WB, przy którym nacisnąłem spust, nie jest wtedy zapisywany w NEFie?

I jeszcze czy ktoś wie (czy też jak to się teraz mówi jest w posiadaniu takiej wiedzy ;)) o wspomnianej kompresji NEFów?

Erie
07-10-2008, 01:14
Jak już drążę temat, to dogłębnie ;> Czyli w tym momencie to, co wyświetla mi aparat jako NEFa, to jest ów NEF przerobiony wg ustawień, przy których robiłem zdjęcie, czy tak? Mam tu na myśli rzeczy typu np. balans bieli. Bo rozumiem, że rzeczony WB, przy którym nacisnąłem spust, nie jest wtedy zapisywany w NEFie?

Tak, to co wyświetla Ci aparat przy przeglądaniu to jest wywołany przez aparat NEF z parametrami ustawionymi podczas wykonywania zdjęcia (przy czym dokładnie to jest pokazywany zaszyty w NEFie JPG Basic, gdyż każdorazowe wywoływanie NEFa byłoby uciązliwe dla aparatu, czaso- i energochłonne)


I jeszcze czy ktoś wie (czy też jak to się teraz mówi jest w posiadaniu takiej wiedzy ;)) o wspomnianej kompresji NEFów?

są dwa rodzaje kompresji - bezstratna obecna w aparatach z wyższej półki (np. D200, D300, D700, D2, D3) oraz stratna (w D50, D70, D80 itd), polegająca na tym że dla pewnych zakresów natężenia światła z różną dokładnością zapisywana jest informacja, dokładne dane podawane były kiedyś tutaj na forum, ale ich nie pamiętam

dobryjanek
07-10-2008, 08:27
Tak, to co wyświetla Ci aparat przy przeglądaniu to jest wywołany przez aparat NEF z parametrami ustawionymi podczas wykonywania zdjęcia (przy czym dokładnie to jest pokazywany zaszyty w NEFie JPG Basic, gdyż każdorazowe wywoływanie NEFa byłoby uciązliwe dla aparatu, czaso- i energochłonne)
Zaraz zaraz, chcesz powiedzieć, że NEF, oprócz tego, że jest RAWem, to zawiera jeszcze tak czy inaczej JPG w sobie? Chyba źle zrozumiałem, prawda?


są dwa rodzaje kompresji - bezstratna obecna w aparatach z wyższej półki (np. D200, D300, D700, D2, D3) oraz stratna (w D50, D70, D80 itd), polegająca na tym że dla pewnych zakresów natężenia światła z różną dokładnością zapisywana jest informacja, dokładne dane podawane były kiedyś tutaj na forum, ale ich nie pamiętam
Zatem jako posiadacz D80 czuję się trochę okradziony ;) Chyba w tych modelach powinna być (ot, dla przyzwoitości) jakaś opcja wyłączenia, jeśli nie samej kompresji, to chociaż jej stratności. A za cynk o tych danych dzięki, wieczorem po pracy spróbuję przekopać forum pod tym kątem.

Erie
07-10-2008, 08:37
Zaraz zaraz, chcesz powiedzieć, że NEF, oprócz tego, że jest RAWem, to zawiera jeszcze tak czy inaczej JPG w sobie? Chyba źle zrozumiałem, prawda?

bardzo dobrze zrozumiałeś, NEF zawiera: a) metadane wraz z bardzo małym podglądem zdjęcia, b) JPGa z pełnym zdjęciem z dużą kompresją oraz najważniejsze c) zrzut z matrycy aparatu


Zatem jako posiadacz D80 czuję się trochę okradziony ;) Chyba w tych modelach powinna być (ot, dla przyzwoitości) jakaś opcja wyłączenia, jeśli nie samej kompresji, to chociaż jej stratności. A za cynk o tych danych dzięki, wieczorem po pracy spróbuję przekopać forum pod tym kątem.

cóż... takie życie niestety :(

ajt
07-10-2008, 09:18
Zaraz zaraz, chcesz powiedzieć, że NEF, oprócz tego, że jest RAWem, to zawiera jeszcze tak czy inaczej JPG w sobie? Chyba źle zrozumiałem, prawda?


Co więcej, z tego zaszytego jpg korzysta nie tylko aparat w czasie podglądu, ale także rozmaite przeglądarki. Np. IrfanView - klikasz dwa razy na nefie i bez straty czasu na konwersję od razu widzisz tego jpg właśnie (chyba że mu to w opcjach wyłączysz). Jak chcesz możesz te zaszyte obrazki wydobyć z plików programem PreviewExtractor:
http://drchung.new21.net/previewextractor/

dobryjanek
07-10-2008, 09:21
bardzo dobrze zrozumiałeś, NEF zawiera: a) metadane wraz z bardzo małym podglądem zdjęcia, b) JPGa z pełnym zdjęciem z dużą kompresją oraz najważniejsze c) zrzut z matrycy aparatu

Jest jakieś określenie rozmiaru tego małego podglądu? To się czymkolwiek różni od pstrykania w RAW+Basic? ;> Nawiasem mówiąc sytuacja mnie trochę dziwi, z jednej strony kompresują mi tego NEFa (i to stratnie), a z drugiej dorzucają jakiegoś jotpega :| Mały podgląd mogę zrozumieć do np. przeglądania zdjęć poza aparatem (gdyby nie to, to w samym aparacie załatwiałbym to osobnymi plikami miniaturek, normalnie niewidocznymi, ot żeby nie tuczyć NEFa). Ale nie rozumiem po co pakują tam całego, pełnowymiarowego jpg :|

Erie
07-10-2008, 09:42
Jest jakieś określenie rozmiaru tego małego podglądu? To się czymkolwiek różni od pstrykania w RAW+Basic? ;> Nawiasem mówiąc sytuacja mnie trochę dziwi, z jednej strony kompresują mi tego NEFa (i to stratnie), a z drugiej dorzucają jakiegoś jotpega :| Mały podgląd mogę zrozumieć do np. przeglądania zdjęć poza aparatem (gdyby nie to, to w samym aparacie załatwiałbym to osobnymi plikami miniaturek, normalnie niewidocznymi, ot żeby nie tuczyć NEFa). Ale nie rozumiem po co pakują tam całego, pełnowymiarowego jpg :|

pakują tego jpga po to by użytkownik mógł sobie szybko przeglądać zdjęcia na ekranie aparatu, bez konieczności każdorazowego wywoływania tego NEFa

a ten mały podgląd ma 360 x 240 pikseli czy jakoś tak

Sindbad
07-10-2008, 11:20
są dwa rodzaje kompresji - bezstratna obecna w aparatach z wyższej półki (np. D200, D300, D700, D2, D3) oraz stratna (w D50, D70, D80 itd), polegająca na tym że dla pewnych zakresów natężenia światła z różną dokładnością zapisywana jest informacja, dokładne dane podawane były kiedyś tutaj na forum, ale ich nie pamiętam

A czy przypadkiem d70s nie ma bezstratnej kompresji? Pytam z ciekawości, bo coś mi się kiedyś obiło, że m.in. tym się różni od d50.

dobryjanek
07-10-2008, 17:11
pakują tego jpga po to by użytkownik mógł sobie szybko przeglądać zdjęcia na ekranie aparatu, bez konieczności każdorazowego wywoływania tego NEFa

a ten mały podgląd ma 360 x 240 pikseli czy jakoś tak

Ten jpg chyba bardziej, jeśli chcemy sobie zrobić jakieś "zbliżenie" zdjęcia i pooglądać szczegóły (chociaż nie wiem na ile to sensowne, żeby robić zdjęcia w NEFie, a badać rezultat wpatrując się w szczegóły tego jpega). Trochę to mało fajne, do zorientowania się jakie zdjęcie siedzi w NEFie wystarczy taki mały podglądzik. Osobiście bym chyba wolał, żeby zamiast pakować tego dużego jpega, zrezygnowali z owej kompresji stratnej.

Erie
07-10-2008, 17:23
Ten jpg chyba bardziej, jeśli chcemy sobie zrobić jakieś "zbliżenie" zdjęcia i pooglądać szczegóły (chociaż nie wiem na ile to sensowne, żeby robić zdjęcia w NEFie, a badać rezultat wpatrując się w szczegóły tego jpega). Trochę to mało fajne, do zorientowania się jakie zdjęcie siedzi w NEFie wystarczy taki mały podglądzik. Osobiście bym chyba wolał, żeby zamiast pakować tego dużego jpega, zrezygnowali z owej kompresji stratnej.

no o to powiększenie mi chodziło :), może nie do końca wyraziłęm tę myśl, a co do rezty - no cóż niestety nie mamy tego co byśmy chcieli (np. D700 za 2999 ;))

valoos
10-10-2008, 13:51
hej hej... to jakaś kuriozalna bzdura z tym pełnowymiarowym JPGiem w NEFie. Nie ma żadnego racjonalnego powodu by go tam umieszczać (co innego mały podgląd). Aparat potrafi wywoływać NEF'y w locie, w tempie zbliżonym do tempa fotografowania, a w każdym razie w tempie wystarczajacym do przeglądania. Nasze puszeczki to wyspecjalizowane procesory sygnałowe, które z takimi zadaniami radza sobie z przysłowiowym palcem w... nosie. Ciekaw jestem skąd ta rewelacyjna informacja o pełnowymiarowym JPEG'u w NEFie - jak nie zobaczę to nie uwierzę.

Szuwar
10-10-2008, 14:01
W D100 jest możliwość zapisu NEF skompresowany (bezstratnie) i nieskompresowany. Przy czym i tak wolny zapis NEF w tej puszce przy kompresowaniu wydłuża się o czas zrobienia kawy :mrgreen:. Ale wybór jest.

Erie
10-10-2008, 14:43
hej hej... to jakaś kuriozalna bzdura z tym pełnowymiarowym JPGiem w NEFie. Nie ma żadnego racjonalnego powodu by go tam umieszczać (co innego mały podgląd). Aparat potrafi wywoływać NEF'y w locie, w tempie zbliżonym do tempa fotografowania, a w każdym razie w tempie wystarczajacym do przeglądania. Nasze puszeczki to wyspecjalizowane procesory sygnałowe, które z takimi zadaniami radza sobie z przysłowiowym palcem w... nosie. Ciekaw jestem skąd ta rewelacyjna informacja o pełnowymiarowym JPEG'u w NEFie - jak nie zobaczę to nie uwierzę.

nie mów nigdy o czymś że jest kuriozalną bzdurą jak nie masz kurde wiedzy - ściągnij sobie programik Preview Extractor (http://drchung.new21.net/previewextractor/), uruchom, wyjmij JPGa z NEFa i powiedz jeszcze raz, że coś jest bzdurą - no chyba że wierzysz że program 150 kB może wywołać NEFa :D, a że jego autor kłamie

co do reszty - to tak, aparaty mają wyspecjalizowane procesory sygnałowe, które właściwie moga wywoływać RAWy i je wyświetlać za kazdym razem, tylko po co robić to samo wiele razy jak mozna zrobić raz? po co zużywac kolejny raz energię i rozładowywać akumulatory?

valoos
13-10-2008, 11:23
Sprawdziłem, zobaczyłem i uwierzyłem - jak niewierny Tomasz. :) Kajam się i przyznaję, że użyłem zbyt mocnego sformułowania co do prawdziwości owych informacji.

Natomiast uważam za nieuzasadnione stwierdzenie, że programik wielkości 150 kB nie może z jakichś powodów wywoływać NEF'ów bo tu się chyba Erie zapędziłeś :D

Czornyj
13-10-2008, 11:46
Sprawdziłem, zobaczyłem i uwierzyłem - jak niewierny Tomasz. :) Kajam się i przyznaję, że użyłem zbyt mocnego sformułowania co do prawdziwości owych informacji.

Natomiast uważam za nieuzasadnione stwierdzenie, że programik wielkości 150 kB nie może z jakichś powodów wywoływać NEF'ów bo tu się chyba Erie zapędziłeś :D

Profil dla jednego aparatu z informacją dotyczącą interpretacji kolorymetrycznej może ważyć więcej niż 150k, więc to raczej ty się zapędziłeś ;)

Erie
13-10-2008, 12:21
Natomiast uważam za nieuzasadnione stwierdzenie, że programik wielkości 150 kB nie może z jakichś powodów wywoływać NEF'ów bo tu się chyba Erie zapędziłeś :D

tak, masz teoretycznie rację - są nawiedzeni ludzie co piszą w asemblerze lub nawet kodzie maszynowym - może ktoś jest na tyle porąbany, aby takie dzieło uczynić (oczywiście działać będzie w trybie tekstowym) - jednakże na tyle na ile wskazuje mi marne doświadczenie oraz niewielka wiedza na ten temat stwierdzę, że jest to prawdopodobieństwo takiego zdarzenia jest wystarczająco małe (praktycznie infinitezymalne) abym sądził, że programik o wielkości 132 kB (działający w dodatku w trybie graficznym) pozwalał na wywołanie NEFa :D

pebees
13-10-2008, 12:30
(..)prawdopodobieństwo takiego zdarzenia jest wystarczająco małe (praktycznie infinitezymalne) abym sądził, że programik o wielkości 132 kB (działający w dodatku w trybie graficznym) pozwalał na wywołanie NEFa :D
Mówimy o dowolnym programiku? Bo jeśli tak, to jest to możliwe :) Dowolny programik w java czy c# (celowo pomijam inne egzotyczne języki :D) Wiem, potrzebne jest jakieś RE. Ale znowu dla takiego przykładowego NX-a runtime to .NET i Windows, więc sam NX też nie zadziała :)
Nie wiem też, czy czasem w C by się jednak tego nie dało napisać, ale... czy w ogóle jest sens?
A poza tym... to już jest OT :)

Erie
13-10-2008, 12:39
Mówimy o dowolnym programiku? Bo jeśli tak, to jest to możliwe :) Dowolny programik w java czy c# (celowo pomijam inne egzotyczne języki :D) Wiem, potrzebne jest jakieś RE. Ale znowu dla takiego przykładowego NX-a runtime to .NET i Windows, więc sam NX też nie zadziała :)
Nie wiem też, czy czasem w C by się jednak tego nie dało napisać, ale... czy w ogóle jest sens?
A poza tym... to już jest OT :)

no cóż... powodzenia - chyba najmniejszy jaki istnieje to DCRAW, ale samo źródło ma 250 kB, a po skompilowaniu i z bibliotekami dużo więcej, dodatkowo jest w trybie tekstowym

pebees
13-10-2008, 12:46
A dzięki Erie, ale już zaniechałem projektu. Wystarczyło, że zadziałał tak jak chciałem, dalej szkoda mi było czasu. Tak pokrótce - taki c# korzystający z dcraw właśnie. Sama część 'moja' miała całe 7 kilobajtów, po skompilowaniu :D

valoos
13-10-2008, 13:05
Profil dla jednego aparatu z informacją dotyczącą interpretacji kolorymetrycznej może ważyć więcej niż 150k, więc to raczej ty się zapędziłeś ;) widzę Czornyj że całkowicie się nie zrozumielismy, ale te kilka postów wyżej wyjaśnia o co mi chodziło.

Erie co do "konstrukcji" i zawartości NEF'a zgadzam się już z tobą w 100% procentach i nie ma o czym dyskutować.
Natomiast po obejżeniu kilku produkcji demosceny w kategorii 64kB przestałem oceniać programy po wilekości. Lenistwo programistów, bajeranctwo interfejsu i "jedyne słuszne środowisko programowania" powodują, że całkiem proste programy potrafią ważyć setki megabajtów. Z mojej strony juz również end of OT.