niedziela, 18 listopada 2007

Odmłodzony Canon

W lutym 2007 roku przeglądając zagraniczne fora poświęcone fotografii natknąłem się na wzmiankę o możliwości zapisu zdjęć w formacie RAW przez PowerShoty z serii 6xx. Po długich poszukiwaniach natrafiłem na firmware tworzony przez grupę rosyjskich programistów. Były to początki tego doskonałego softu, więc nie był zbyt rozbudowany i wygodny w użyciu. Nie będę opisywał jego wcześniejszej wersji, bo najnowsza ma ze starą niewiele wspólnego. Cały projekt nazywa się CHDK (nie znam dosłownego znaczenia nazwy) i stanowi według mnie najbardziej daleką ingerencję w funkcjonalność aparatu ze wszystkich nieoficjalnych biosów kiedykolwiek stworzonych (wspomnieć "ruski" i holenderski bios do EOSa 300D). Działa on jako nakładka odblokowująca poszczególne instrukcje procesora obrazu, które zostały zablokowane przez producenta z przyczyn wiadomych. Na początku chciałbym zapewnić, że bios jest bezpieczny, ponieważ jest za każdym razem wczytywany do aparatu z karty pamięci, więc nie zostawia śladów w pamięci aparatu. Jednak wgrywamy go na własne ryzyko!. Jest przeznaczony do całej rodziny aparatów wykorzystujących procesor DIG!C II. W większości przypadków aparaty z nowszymi procesorami DIG!C III również uruchamiają CHDK. Jego funkcje to:

  • zapis w RAW
  • histogram na żywo
  • zebra mode:) , czyli wskazywanie podczas robienia zdjęcia obszarów prześwietlonych i niedoświetlonych
  • kalkulator głębi ostrości
  • wskaźnik poziomu baterii
  • kompresja wideo
  • ręczne ostrzenie za pomocą pokrętła zoomu
  • czytnik plików tekstowych
  • kalendarz
  • przeglądarka plików
  • gry
  • oraz system skryptów w Basicu, które powiększają funkcjonalność (bracketing, wykrywanie ruchu)
  • obróbka plików RAW w aparacie
  • Dodatkowe możliwe do ustawienia wartości przesłony i czasu naświetlania
  • Używanie zoomu optycznego podczas kręcenia filmów

Instalacja firmware'u
Całość na temat projektu (po angielsku) można przeczytać na tej stronie. Pierwszą rzeczą, którą należy zrobić to sprawdzić wersję firmwaru w aparacie. W niektórych z nich np. S3IS istnieje kilka wersji. Pobieramy CHDK odpowiadający naszej wersji.

UWAGA- poniższy opis instalacji nie działa w przypadku PowerShot A720 IS, A650 IS oraz S5 IS i innych nowszych modelach. Opis instalacji na te modele można znaleźć niżej.

Aby to zrobić należy mieć czytnik kart pamięci i zapisać na karcie w folderze głównym aparatu plik o nazwie ver.req pamiętając o zapisaniu go jako wszystkie plik a nie tekst. Po włożeniu karty do aparatu przełączamy go w tryb podglądu i stosujemy sekwencję klawiszy set+disp.

Pobieramy odpowiednią wersję dla naszego aparatu ze strony http://mighty-hoernsche.de/chdk/. Po uruchomieniu aparatu w trybie podglądu zdjęć naciskamy klawisz Menu, a potem odnajdujemy na samym dole pozycję Firm.Update. Aby dostać się do "ukrytego" menu Po wgraniu softu aby wejść do jego menu wybieramy kombinację Klawisz druku+Menu.

UWAGA: Canon A620 wymaga zainstalowanego firmware'u w wersji F, który można pobrać na samym dole strony. Należy jednak pamiętać, że zapisujemy wtedy wewnętrzną pamięć aparatu i należy robić to na naładowanych akumulatorkach. Przerwa w dostawie prądu może mieć niezbyt miłe konsekwencje.

Instalacja CHDK na Canonie A720IS, A650IS, S5 IS, SX100 IS i innych nowych modelach

Proces instalacji na tym aparacie jest nieco bardziej skomplikowany niż w starszych modelach.
  1. Ściągamy firmware ze strony http://mighty-hoernsche.de/chdk/ , odpowiadający naszemu modelowi
  2. Pobieramy z tej strony program bootujący kartę pamięci
  3. Rozpakowujemy plik bootable.zip i kopiujemy bootable.exe na kartę SD
  4. Aby nasza karta zachowywała się jak napęd musimy przypisać jej literę np. G. W tym celu uruchamiamy konsole windowsową wybierając Start-Uruchom i wpisujemy cmd. Przypisujemy literę napędu, na którym zamontowana jest karta pamięci poprzez wpisanie G: i naciśnięcie Enter (litera G to tylko przykład-wszystko zależy od litery pod jaką jest czytnik kart).
  5. Uruchamiamy bootable.exe komendą bootable.exe G: i naciskamy Enter
  6. Potwierdzamy naciskając y i Enter
  7. Kopiujemy na kartę pamięci plik diskboot.bin powstały po wypakowaniu pobranego firmware'u.
  8. Wyjmujemy kartę pamięci i blokujemy ją przesuwając suwak z boku karty.
  9. Wkładamy kartę do aparatu. Jeśli wszystko przebiegło pomyślnie to ujrzymy na ekranie niebieskie logo.
W przypadku kart o pojemności 4GB należy przeprowadzić formatowanie z wiersza poleceń Windows, wydając komendę: format X: /fs:fat (X to przykładowa litera zamontowanego czytnika kart). Aby na takiej karcie CHDK działał należy pamiętać o formatowaniu jej tylko z wiersza poleceń (nie należy tego robić w aparacie).

Porady

  1. Szybkie wlączanie/wyłączanie zapisu RAW - naciskamy kombinację klawiszy Print+Remove
  2. Dodawanie skryptów - najczęściej znajdujemy je w postaci zwykłego tekstu na forach. Aby je zapisać kopiujemy tekst do notatnika i zapisujemy jako nazwa_skryptu.bas UWAGA-zapisujemy jako wszystkie pliki, a nie *txt. Potem kopiujemy je do folderu SCRIPTS w folderze CHDK na karcie SD. Po uruchomieniu aparatu wczytujemy wybrany przez nas skrypt w menu i uruchamiamy go naciskając przycisk Print. Jego nazwa musi być wyświetlana na niebieskim pasku na dole wyświetlacza. Aby powrócić do normalnego fotografowania naciskamy przycisk Print. Po naciśnięciu spustu migawki skrypt zostaje wykonany. Najlepsze według mnie skrypty znajdziesz niżej.
  3. Automatyczne wczytywanie firmware'u przy uruchomieniu- naciskamy kombinację Print+Menu, aby wejść do głównego menu i wybieramy Debugowanie=>Bootowanie z karty pamięci (klawiszem SET). Po tym wyłączamy aparat i wyjmujemy kartę pamięci, po czym blokujemy jej możliwość zapisu przesuwając przycisk z boku karty. Wkładamy ponownie kartę do aparatu i gotowe.

Skrypty

  1. Bracketing- jest wiele skryptów do bracketingu. Ja zamieszczam według mnie najlepszy. Każdy z nich po wczytaniu oferuje możliwość ustawienia parametrów w stylu ilość robionych zdjęć i skok EV (W najnowszych wersjach Allbest'a są wbudowane opcje, które działają podobnie jak skrypt do bracketingu, ale po przełączeniu aparatu w tryb zdjęć seryjnych.)
  2. Motion Detection (md) - możliwość wykrywania ruchu w kadrze (tylko niektóre wersje firmware'u go obsługują m.in. wspomniana wcześniej wersja Allbest). Wersja którą zamieszczam po wykryciu ruchu automatycznie robi zdjęcie i przechodzi w stan oczekiwania na kolejny ruch w kadrze do momentu ręcznego wyłączenia skryptu. Możliwe do ustawienia parametry to ilość pól wykrywających ruch, czas reakcji i czułość. Udostępniona teraz w dodatkach wersja jest szybsza od wcześniejszej (ustawia ostrość zanim robi zdjęcie)
  3. AntiMD - skrypt działający wprost przeciwnie do MD - robi zdjęcie wtedy gdy w kadrze nic się nie porusza

Inne strony ze skryptami to np. ta strona lub projektu na wikipedii.

Instalacja spolszczenia

Plik językowy z rozszerzeniem *.lng kopiujemy do folderu LANG na karcie SD (w folderze CHDK) i w menu softu wybieramy visual settings -> language. Po wybraniu naszego pliku ustawiamy kodowanie znaków na win1250 i cieszymy się polskim menu.

Uwaga!!! Wersje od 616 w górę zawierają już w sobie polski plik językowy. Warunkiem jest pobranie wersji "complete".


Obróbka plików RAW

Najwięcej problemów sprawia początkującym użytkownikom obróbka rawów tworzonych przez ten firmware. Są to pliki dość dziwne, bo otwierają je raptem dwa programy. Aby móc je obrabiać w każdym programie trzeba je przekonwertować do formatu DNG. Zrobimy to za pomocą darmowego programu o nazwie dng4ps. Należy przed przerobieniem wybrać model naszego aparatu w zakładce Settings... Po tej operacji bez problemu obrobimy nasze rawy w Picassie, Ufraw, Raw Therapee czy pluginie CameraRaw do Photoshopa.

Uwaga: wersje 0.9.8-788 i nowsze oferują zapis plików RAW w formacie DNG już na poziomie aparatu. Niżej jest zamieszczony opis tej funkcji.

Zapis plików RAW w formacie DNG

Najnowsze wersje CHDK oferują bezpośredni zapis plików RAW w formacie DNG. Wcześniej, aby móc obrabiać pliki np. we wtyczce CameraRaw do Photoshopa musieliśmy dokonać konwersji za pomocą programu DNG4PS. Aby móc skorzystać z tego dobrodziejstwa należy wczytać i uruchomić skrypt badpixel.lua. Dzięki temu stworzony zostanie plik badpixel.bin, który zawiera informacje o martwych pikselach na matrycy, co pozwoli aparatowi w czasie zapisu do formatu DNG je zamaskować (to normalna praktyka, wykonywana nawet przez wbudowane oprogramowanie lustrzanek). Cały proces trwa około pół minuty, w czasie których aparat wykona 2 zdjęcia (można je potem usunąć). Najlepiej zasłonić w tym czasie obiektyw czymś ciemnym lub robić je w ciemnym pomieszczeniu. Na koniec należy przycisnąć na aparacie przycisk FUNC.SET, który zapisuje wynik pracy skryptu do pliku. Po tym wszystkim możemy wejść do pozycji Parametry RAW i zaznaczyć pola Format DNG oraz Rozszerzenie pliku 'DNG'. Od tej chwili pliki RAW będą zapisywane w formacie DNG i bez problemu otwierane przez programy graficzne. Do plików DNG, tworzonych przez aparat są dołączone dane o zdjęciu EXIF, a rozmiar plików to około 9 megabajtów.

Opis wybranych funkcji 1
  1. Włączyć szybkie przełączanie w sekcji Wymuszone opcje naświetlania. Po jej aktywowaniu mamy możliwość szybkiej korekty ekspozycji o ustawiony krok za pomocą klawiszy góra/dół . Aktualna wartość korekty jest wyświetlana na ekranie.
  2. Wyłącz wymuszane opcje w sekcji Wymuszone opcje naświetlania. Umożliwia szybkie włączanie/wyłączanie ustawień w Wymuszone opcje naświetlania. Dokonujemy tego naciskając do połowy przycisk migawki oraz przycisk Dół. Domyślnie opcja ta jest wyłączona (Disabled).
  3. Personalizuj krzywe - to opcja, która pozwala na kontrolę nad priorytetem ciemnych partii obrazu. To odpowiednik funkcji Dynamic Range Optimizer w obecnych lustrzankach. Pozwala ona już na etapie zapisu zdjęcia do JPG wydobyć więcej szczegółów z cieni. Wiąże się to jednak ze wzrostem szumu w ciemnych partiach obrazu. Aby używać tej funkcji należy obowiązkowo posiadać w katalogu /CHDK/ plik syscurves.CVF (obecnie domyślnie w wersji complete). Dostępne tryby pracy to:+1EV - zwiększa szczegóły w cieniach o 1 krok EV;+2EV - zwiększa szczegóły w cieniach o 2 kroki EV;Custom- wczytujemy profil z pliku (pliki umieszczamy w folderze CURVES; Auto DR - odpowiednik trybu +200, +400 Dynamic Range w aparatach takich jak Fuji S100. Aby z niego skorzystać należy:
  • Posiadać w katalogu /CHDK/ plik syscurves.CVF (obecnie domyślnie w wersji complete)
  • Aktywować Zebrę
  • Aktywować Auto DR
  • Użyć w aparacie kompensacji ekspozycji, aby "wygasić" przepalone jasne obszary, pokazywane przez tryb Zebra
  • Zrobić zdjęcie. Otrzymany plik JPG będzie wynikiem pracy tej funkcji.
  • Powyższy tryb Auto DR możemy użyć w funkcji RAW Develop/Wywołanie RAW. Jednak przy wywoływaniu RAW-a także należy pamiętać o zastosowaniu kompensacji ekspozycji.
Opis wybranych funkcji 2 (w Dodatkowych opcjach fotografowania)
  • Wymuszony czas ekspozycji - wraz z wartością Mnożnik czasu ekspozycji pozwala na dobranie dowolnego czasu naświetlania. Jest wyrażana dwiema wartościami, ponieważ czas naświetlania stanowi wynik mnożenia jednej wartości przez drugą. Wbrew pozorom jest to bardzo wygodne, ponieważ pozwala bardzo dokładnie dobrać żądany czas naświetlania. Niestety, każdy aparat ma swoje bariery, więc pomimo ustawienia czasy np. 300 sekund osiągniemy w rzeczywistości np. 65.
  • Wymuszona przysłona - wybór przesłony. Pokazywany on jest (od wersji 15) w formie rzeczywistej wartości przesłony. Maksymalna wartość przesłony to 16.
  • Wymuszona wartość ISO - wraz z Mnożnikiem wartości służy do zmieniania wartości ISO. Wynik końcowy należy traktować jako mnożenie tych wartości. Niestety, są tutaj również ograniczenia. Aby zaobserwować np. ISO 20 należy wcześniej mieć ustawioną wartość 50 lub Auto w menu aparatu. Niestety, na moim aparacie wartości większej niż ISO 400 nie uzyskałem.
  • Ustaw odległość ostrości - wraz z Mnożnikiem wartości służy do określania dystansu ostrzenia obiektywu. Podobnie jak w poprzednich przypadkach-jest to wynik mnożenia tych wartości, a wynik podawany jest w milimetrach.Funkcja ta działa po przełączeniu trybu ostrzenia na ręczny.
Kolejną ciekawą funkcją są ustawienia w czasie trybu ciągłego robienia zdjęć - Ustaw Bracketing
  • Bracketing migawki - jego działanie jest identyczne jak skryptów do bracketingu, tylko działa w trybie zdjęć ciągłych. Sposób ustawiania podstawowego parametru jest podobny (poziom korekcji ekspozycji). Istnieje jednak jeszcze dodatkowa funkcja towarzysząca wszystkim wartościom bracketingu. Na samym dole mamy Kolejność bracketingu. Dzięki niemu możemy określić czy nasze wartości mają rosnąć, maleć lub zmieniać się na przemian za każdym zrobionym zdjęciem (wartość ustawiona domyślnie).
  • Bracketing przysłony - służy do ustawiania bracketingu za pomocą przesłony. W przeciwieństwie do sposobu wybierania tej wartości, który obowiązuje w funkcji Wymuszona przysłona (za pomocą wartości przesłony wyrażonej liczbą F) zmieniamy go za pomocą poziomu EV, któremu w rzeczywistości odpowiada wartość przesłony.
  • Bracketing ISO - funkcja bracketingu realizowana za pomocą zmiennej wartości ISO. Jej skok jest wynikiem mnożenia przez Mnożnik ISO.
  • Bracketing ostrości - funkcja przydatna w makrofotografii, która pozwala przeprowadzać bracketing odległości ostrzenia. Wynikiem podobnie jak w funkcji override jest mnożenie dwóch wartości (w milimetrach). Uzyskane w ten sposób zdjęcia można na przykład połączyć na komputerze za pomocą specjalnego oprogramowania w zdjęcie z pożądaną głębią ostrości.
Ostatnią funkcją, która jest warta uwagi to Wywołaj RAW i zapisz jako JPG w menu Parametry RAW. Spełnia trzy funkcję: uśredniania plików RAW (robimy co najmniej dwa identyczne zdjęcia w RAW-ie na statywie i uśredniamy je, tworząc jedno zdjęcie. Użyteczne przy fotkach z dużym ISO, aby łatwiej pozbyć się szumu) sumowania plików RAW (podobnie jak w wypadku uśredniania robimy co najmniej 2 zdjęcia w formacie RAW. Efekt końcowy to jeden plik .WAV, który powstaję przez sumę ekspozycji wszystkich razem np. jeśli zrobiliśmy 5 zdjęć z czasem 65" to powstanie nam jeden plik, który odpowiada ekspozycji 5 minutą i 25 sekundą) oraz wywoływania plików RAW (aparat wywołuje je do plików JPG, które bez problemu można podejrzeć na podglądzie w aparacie)
  • Uśrednianie (average)/sumowanie (sum) plików RAW- wchodzimy w RAW develop. Otwiera się nam przeglądarka plików. Wchodzimy do folderu, w którym mamy nasze RAW-y i zaznaczamy te, które chcemy uśrednić naciskając na obudowie przycisk w prawo. Wybrane zdjęcia zmieniają kolor na żółty. Następnie naciskamy przycisk w lewo i z rozwiniętego menu wybieramy interesującą nas funkcję. Aparat zaczyna przetwarzać nasze RAW-y. Plik wynikowy jest w formacie....WAV. Aby móc z nim cokolwiek zrobić należy zmienić mu na komputerze rozszerzenie na .CRW za pomocą TotalCommandera. Programem, który bez problemów sobie z nimi radzi jest Xnview lub bardzo rozbudowany i darmowy Raw Therapee. Możemy oczywiście przekonwertować je do DNG za pomocą DNG4PS. Trzecim sposobem jest wywołanie go do pliku JPG w aparacie za pomocą metody opisanej niżej.
  • Wywoływanie plików RAW - wchodzimy w Wywołaj RAW... i naciskamy przycisk FUNC.SET na interesującym nas pliku RAW lub WAV. Wyświetla się informacja, że musimy przełączyć się w tryb robienia zdjęć i nacisnąć migawkę. Po wyłączeniu menu CHDK "robimy" zdjęcie, które w rzeczywistości okazuje się plikiem JPG wywołanym z naszego pliku RAW, który nadal pozostaje nietknięty. W dodatku na wygląd wywołanego pliku wpływają ustawienia dotyczące zdjęć w aparacie. Ustawiając np. zdjęcia czarno-białe, takie otrzymamy po wywołaniu. Podobnie z balansem bieli, nasyceniem kolorów, itp.
Opis wybranych funkcji - Menu użytkownika

Powyższa funkcja daje nam możliwość stworzenia własnego menu podręcznego z dowolnymi dziesięcioma linijkami. Opiszę w jaki sposób możemy je stworzyć i jak się nim posługiwać.
  1. Naciskamy klawisz Print + Menu, aby dostać się do menu głównego CHDK. Następnie wybieramy Parametry OSD-> i zatrzymujemy się przy wartości Aktywuj Menu Użytkownika.
  2. Strzałką w prawo wybieramy Edit
  3. Następnieidziemy w górę do Menu Użytkownika i zjeżdżając w dół zatrzymujemy się na interesującym nas miejscu przeznaczonym na wklejenie nowej funkcji.
  4. Naciskamy FUNC.SET i strzałkę w lewo.
  5. Następnie przechodzimy do dowolnej pozycji, którą chcemy mieć w menu podręcznym. Zatrzymując się na niej naciskamy przycisk Usuń, który w CHDK służy do kopiowania. Po tej operacji nasza funkcja będzie dodana do wybranego przez nas wcześniej miejsca w Menu Użytkownika. Postępując analogicznie dodajemy kolejne żądane wartości.
  6. Po stworzeniu własnego menu przechodzimy do pozycji Aktywuj Menu Użytkownika i strzałką w prawo wybieramy jeden z czterech trybów pracy:
  • Off - menu podręczne wyłączone
  • On - menu podręczne włączone i dostępne po naciśnięciu Print+MENU. Zawsze można przejść do menu głównego CHDK po zjechaniu strzałką na sam dół i wybraniu Menu Główne.
  • On dire - menu podręczne dostępne już po naciśnięciu klawisza Print. Przy okazji należy dodać, że po aktywowaniu tego trybu będzie utrudniony dostęp do obsługi skryptów. Natomiast po naciśnięciu Print+MENU wchodzimy do menu głównego CHDK.
  • Edit - przełączenie do trybu edycji menu podręcznego
Nowych funkcji w CHDK ciągle przybywa i na ogół nie mam czasu przybliżać ich na blogu. Zainteresowanych odsyłam na stronę http://chdk.wikia.com/wiki/CHDK/MoreBest
Jest na niej opis wszystkich nowych funkcji CHDK, niestety w języku angielskim.

CHDK a zużycie energii

Bez wskaźnika baterie wytrzymywały przecież długo, ale po wczytaniu CHDK wskaźnik po jakimś czasie pokazuje bardzo szybki spadek poziomu naładowania. Sądzimy, że to CHDK jest tego przyczyną. W rzeczywistości tak nie jest i wynika to z tendencji samych baterii NiMH do nagłego spadku poziomu naładowania. Stabilizuje się on w pewnym momencie na dłuższy czas. Efekt ten jest jeszcze większy podczas używania aparatu w niskich temperaturach np. zimą, kiedy sprawność akumulatorków gwałtownie spada. Dochodzi do tego stan akumulatorków, czyli ich wiek i producent-jedne mają gwałtowniejsze spadki, a inne nie. Podczas nieużywania aparatu dłuższy czas np. miesiąc od naładowania, baterie również nie mają pełnej sprawności z czasu naładowania.

Tak więc, CHDK nie wpływa na większe zużycie energii pod warunkiem korzystania z podobnych funkcji jak w przypadku oryginalnego biosu (zebra i histogram na żywo są pomijalne-w gruncie rzeczy aparat i tak tworzy histogram, tylko nam go wyświetla dopiero na podglądzie zdjęć). Należy pamiętać również o tym, aby nie przejmować się gwałtownymi spadkami poziomu naładowania, które ukazuje wskaźnik, bo są one naturalne. To właśnie dlatego w aparatach opartych o akumulatorki NiMH nie stosuje się wskaźników baterii. Po prostu trudno jest wyznaczyć ich czas rozładowania na podstawie chwilowego napięcia.

Download

bootable.zip
dng4ps2-0.2.3-beta26.exe
Dodatki_do_ CHDK.rar
A620.F.original.rar
Spolszczenie jest już zawarte w każdym wydaniu. Można je także znaleźć tutaj: http://chdk.wikia.com/wiki/Language:_Polish

Aktualności:
  • Wersja 0.9.8-788 oferuje zapis plików RAW w formacie DNG prosto w aparacie. Więcej na ten temat na blogu powyżej
  • Od wesji 616 wydanie http://mighty-hoernsche.de/chdk/ zawiera polski plik językowy oraz większość potrzebnych plików (wersja "complete"). Dlatego zmieniam zawartość dodatków odejmując zbędne rzeczy
  • Połączenie sił twórców CHDK. Od tej pory jest jedno wydanie, dostępne pod tym adresem: http://mighty-hoernsche.de/chdk/



Pierwszy post

Na początku chciałbym powitać wszystkich gości odwiedzających mojego bloga. Główny temat, który będę na nim poruszał to fotografia. Przedstawię Wam moje doświadczenia (skromne, bo trzyletnie) dotyczące fotografii oraz związane z odwiecznymi jej dylematami przemyślenia. Jako posiadacz (od września 2006 roku) Canona PowerShot A620 postaram się opisać moje doświadczenia związane z tym (pod pewnymi względami leciwym) sprzętem. Niestety nie mam zbyt wiele czasu na pisanie tego bloga, jednak jestem otwarty na konstruktywną krytykę i z chęcią wysłucham również Waszych doświadczeń z fotografią.