PDA

Zobacz pełną wersję : Interaktywny symulator i kalkulator głębi ostrości



Bemko
06-04-2014, 21:44
Jako, że jest to mój pierwszy post na forum, to chciałbym się na początku przywitać. Mam nadzieję, że z tego względu mój wpis nie zostanie potraktowany jako nachalna reklama. Chcę się po prostu podzielić przydatnym narzędziem, którego jestem autorem.

Jest to aplikacja internetowa nad którą pracowałem przez ostatnie 2 miesiące w wolnym czasie. Służy ona do symulacji efektu rozmycia tła na zdjęciach oraz obliczania i wizualizowania zakresu głębi ostrości. Umożliwia ustawienie dowolnych kombinacji parametrów takich jak ogniskowa obiektywu, przysłona, rozmiar matrycy oraz odległość fotografowanej osoby i tła od aparatu. Zmiany parametrów są natychmiast widoczne na podglądzie, co pozwala w łatwy sposób obserwować jak wpływają one na efekt końcowy.

Wiem, że w internecie dostępne są różne kalkulatory głębi ostrości i symulatory aparatów, ale żaden z nich nie oferuje chyba symulacji rozmycia tła w takim zakresie, a jest to parametr równie istotny co sama głębia ostrości. Pomysł na aplikację wziął się z chęci znalezienia odpowiedzi na pytanie typu: którym obiektywem uzyskam bardziej rozmyte tło: 85/1.8 czy 200/5.6? Starałem się również aby była ona jak najbardziej funkcjonalna i wygodna w użytkowaniu.

Screenshot na zachętę:


https://canon-board.info/imgimported/2014/04/lYBbMXg-1.png
źródło (http://dofsimulator.net/)

Aplikację można znaleźć pod adresem: http://dofsimulator.net/ Znajduje się tam też dokładniejszy opis wszystkich funkcji oraz wbudowana pomoc wyjaśniająca działanie poszczególnych elementów. Jest to tak na prawdę zwykła strona internetowa wykorzystująca najnowsze technologie webowe takie jak HTML5 i CSS3. Działa w oparciu o JavaScript i framework AngularJS, dzięki czemu do uruchomienia nie są wymagane żadne dodatkowe wtyczki. Można ją zapisać na dysku i używać całkowicie offline.

Zapraszam do przetestowania i czekam na wasze opinie. Będę wdzięczny za wszelkie uwagi i pomysły jak można by ją jeszcze poprawić lub usprawnić.
Proszę również o zgłaszanie zauważonych błędów, bo jestem świadomy, że na pewno takie się pojawią.

Na koniec chciałbym się podzielić dwiema, ciekawymi moim daniem, obserwacjami na podstawie zabawy z parametrami w symulatorze:
- Przy zachowaniu stałego pola widzenia, głębia ostrości zależy wyłącznie od użytej przysłony i jest niezależna od kombinacji ogniskowa-odległość obiektu. Stopień rozmycia tła rośnie wraz ze wzrostem ogniskowej.
- Przy takim samym kadrze (a więc mniejszej odległości) ten sam obiektyw na pełnej klatce daje mniejszą głębię ostrości niż na body APS-C, ale taki sam stopień rozmycia tła.

Adlatus
06-04-2014, 22:25
Gratuluję pomysłu i wykonania. Jeżeli mogę podpowiedzieć to pomyśl o wersji na smartfona.

Jednego czego mi brakuje to pośrednich wartości przysłony. Ale może różnice w rozmyciu są tak małe że nie warto się męczyć.

Bemko
06-04-2014, 23:07
Wersja mobilna + appka na smartfony/tablety jest w planach, ale na razie trudno mi powiedzieć kiedy to nastąpi, bo będzie wymagało sporo zmian.

Wartości pośrednie przysłony można wpisywać bezpośrednio w polu. Na suwaku jest za mało miejsca żeby dało się wcisnąć chociażby co 1/2EV.

Adlatus
06-04-2014, 23:20
Wartości pośrednie przysłony można wpisywać bezpośrednio w polu. Na suwaku jest za mało miejsca żeby dało się wcisnąć chociażby co 1/2EV.

Dzięki za odpowiedź. Może warto dopisać że działa z separatorem kropki a nie przecinka.

jan pawlak
07-04-2014, 04:21
Bardzo dobry pomysł na aplikację.

Dla mnie dobrze by było aby był zwizualizowany także metr bym widział że gdy np. ustawię odległość na 5 metrów to głębia jest od 4,50 do 5,20

jp

pan.kolega
07-04-2014, 08:19
Muszę pochwalić - to może być najlepszy kalkulator-simulator GO jaki widziałem, po dokładnym sprawdzeniu i drobnych korektach.
Po szybkim sprawdzeniu nie widziałem żadnych błędów poza drobnymi typu odświeżania tła.
Teoretyczne rozmycie tła wyglada wiarygodnie, oczywiście dla rzeczywistych obiektywów będą odchylenia, ale nic się na to nie poradzi.

Poza GO i rozmyciem może się przydać do rozstrzygania typowych problemów dyskutowanych na forum typu: czy 85 mm na minimalnej odległości zmieści kocią mordę, spreparowaną głowę dziecka, czy łeb chomika z wodogłowiem :lol::lol::lol:
http://www.canon-board.info/obiektywy-21/ef-85mm-1-8-a-94397/index7.html

W tym celu trzebaby tylko umożliwić odległości ostrzenia cokolwiek poniżej 1 m i określić wysokości modeli. No i każdy model mógłby miec inną wysokość i proporcjonalną budowe ciała, od kurdupla do koszykarza. :idea: :p

Albo inny dylemat - czy warto dźwigać zoom f/2.8 zamiast f/4 dla lepszego rozmycia.

mkkaczy
07-04-2014, 10:00
Super robota.

homesicalien
07-04-2014, 16:24
Fantastyczne. Potwierdziłem kilka swoich przemyśleń. Ciekawostka (nieznacząca): przy zablokowaniu zawartości kadru (pierwszego planu), wraz z ogniskową delikatnie rośnie głębia ostrości.

Bemko
07-04-2014, 19:09
Dziękuję wszystkim za tak pozytywne opinie. :)


Dzięki za odpowiedź. Może warto dopisać że działa z separatorem kropki a nie przecinka.
Słuszna uwaga, dopisałem odpowiednią informację w opisie konfiguracji.


Dla mnie dobrze by było aby był zwizualizowany także metr bym widział że gdy np. ustawię odległość na 5 metrów to głębia jest od 4,50 do 5,20
Dodałem podziałkę na skali w podglądzie głębi ostrości, o coś takiego chodziło?


Poza GO i rozmyciem może się przydać do rozstrzygania typowych problemów dyskutowanych na forum typu: czy 85 mm na minimalnej odległości zmieści kocią mordę, spreparowaną głowę dziecka, czy łeb chomika z wodogłowiem :lol::lol::lol:
http://www.canon-board.info/obiektywy-21/ef-85mm-1-8-a-94397/index7.html

W tym celu trzebaby tylko umożliwić odległości ostrzenia cokolwiek poniżej 1 m i określić wysokości modeli. No i każdy model mógłby miec inną wysokość i proporcjonalną budowe ciała, od kurdupla do koszykarza. :idea: :p
Z tymi różnymi rozmiarami modeli to dobry pomysł, nie wszyscy mają 1,7m wzrostu ;) Przy mniejszych obiektach jest problem ze sposobem określania odległości - czy powinna być od końca obiektywu czy od płaszczyzny matrycy. Teraz dla uproszczenia jest liczona od przedniej soczewki, przy większych odległościach nie ma to aż takiego znaczenia. Inna sprawa to fakt, że obiektywy z wewnętrznym focusowaniem dość mocno zmieniają swoją ogniskową przy fotografowaniu z bliska, co też trzeba by uwzględniać, a jest to cecha indywidualna każdego modelu.

Bemko
17-05-2014, 21:32
Pojawiła się nieco większa aktualizacja mojego wizualnego symulatora GO (http://dofsimulator.net). Najważniejsza zmiana to wprowadzenie obiecywanej wcześniej wersji mobilnej. Tablety/smartfony powinny zostać rozpoznane na podstawie rozdzielczości i przełączyć się automatycznie, ale można też zmienić tryb ręcznie przyciskiem.

Oprócz wersji mobilnej wprowadziłem też możliwość przeciągania modelki i drzewka na podglądzie głębi ostrości, oraz możliwość wyboru innego krążka rozmycia niż standardowa wartość. Na przykład można wybrać wartość odpowiednią do prezentacji w internecie, wydruku na papierze czy dla wybranej rozdzielczości matrycy. Ma to wpływ na obliczane wartości głębi ostrości i odległość hiperfokalną.

MMM
17-05-2014, 22:58
Fajne :-)
Chciałbym jednak bardziej zaawansowaną symulację tła np. takiego:


https://canon-board.info/imgimported/2014/05/13920042640_9aa8b24cf8_b-2.jpg
źródło (https://farm6.staticflickr.com/5191/13920042640_9aa8b24cf8_b.jpg)

homesicalien
18-05-2014, 10:43
Tło mi się nie ładuje na androidowym tablecie. Próbowałem Paryż i budynek. Załadowała się wersja mobilna. "Plan boczny" przydałby się oprócz planu pierwszego i tła. Pokazywałby stopniową zmianę rozmycia wraz ze zmianą odległości.

Bemko
18-05-2014, 12:30
Tło mi się nie ładuje na androidowym tablecie. Próbowałem Paryż i budynek. Załadowała się wersja mobilna.
Pokazuje komunikat z błędem czy pasek postępu zatrzymuje się na 0%? Jakiej przeglądarki używasz i jaką masz wersję Androida?


"Plan boczny" przydałby się oprócz planu pierwszego i tła. Pokazywałby stopniową zmianę rozmycia wraz ze zmianą odległości.
Zrobienie takiego tunelu jak na zdjęciu MMM byłoby raczej trudne ze względu na kwestie perspektywy itp. Ale jak znajdę lub zrobię dobre zdjęcie jakichś krzaków, które da się wyszparować, to pomyślę nad jednym obramowaniem które by można było przesuwać, bo to całkiem fajny pomysł.

homesicalien
18-05-2014, 12:57
Czysty Android 4.4.2. Opera Classic. Pasek postępu ładowania tła dochodzi do końca, ale mimo to tło pozostaje czarne. Na przeglądarkach Chrome i Firefox wszystko śmiga jak należy.

Bemko
18-05-2014, 15:33
Przetestowałem u siebie i niestety na Operze Classic nie chce działać żaden ze sposobów rozmywania tła, dlatego obrazki nie są w ogóle wyświetlane. Niestety z tymi przeglądarkami mobilnymi już tak jest, że niektóre strony działają gorzej a inne lepiej. Opera Classic jest już niestety dość stara i ponieważ nie jest rozwijana to będzie miała coraz większe problemy ze współczesnymi stronami.

Bemko
11-08-2014, 21:35
Po dłuższej przerwie przyszedł czas na kolejną porcję zmian w symulatorze. Najważniejsza z nich to nowa funkcja pozwalająca na generowanie linków do aktualnie ustawionych parametrów, którymi można się następnie dzielić na forum czy w mailu - osoba, która przez taki link wejdzie na stronę zobaczy dokładne to samo co było widoczne w momencie jego generowania.

Drobniejsze zmiany to możliwość zmiany wartości suwaków za pomocą kółka myszy, wyświetlanie odległości od której zaczyna się ostrość przy hiperfokalnej, możliwość sortowania listy zapisanych ustawień oraz opcja pozwalająca na wyświetlanie odległości w jednostkach imperialnych (dla rodaków raczej mało przydatne).

W związku ze zmianami w ustawie o zbiórkach publicznych odważyłem się dodać na stronie testowo przycisk "Przekaż darowiznę", który umożliwia przesłanie mi kilku złotych za pomocą PayPal. Liczę na to, że nikt nie przekroczy ustawowego progu 4.902zł darowizny i nie będę musiał odprowadzać od tego podatków. ;)

Link bez zmian: http://dofsimulator.net - piszę żeby nie trzeba było szukać na poprzednich stronach, jeżeli ktoś nie pamięta.

Bemko
18-09-2014, 19:59
Opublikowałem dzisiaj zaktualizowaną wersję symulatora, która wprowadza nową, bardzo fajną funkcję: realistyczną symulację różnych typów bokeh, której efekty są bardzo zbliżone do rzeczywistości. Do wyboru jest 10 typów rozmycia: od gładkiego, delikatnego bokehu, przez zwykłe tarczki aż do obwarzanków z obiektywu lustrzanego + 5 wielokątnych przysłon. Poniżej prezentuję małą próbkę możliwości tego algorytmu. Pierwszy obrazek to stary (wciąż domyślny) sposób rozmycia, pozostałe ukazują nową metodę (kliknięcie powiększa).


https://canon-board.info/imgimported/2014/09/w9oXBTd-1.jpg
źródło (http://i.imgur.com/mFgDGoD.jpg)
Link do parametrów z obrazka powyżej. (http://dofsimulator.net/pl/?f=200&a=5.6&d=false&s=DX%20(Nikon)&y0=10300&y=null&b=false&c=f&l=false&e=false&m=girl1&t=gory&o=landscape&k=1600&g=true&h=true&i=4)

Nowy algorytm zapewnia też większą precyzję niż dotychczasowa metoda rozmycia obrazu. Niestety przetwarzanie wymaga dłuższych obliczeń i nie może ono działać w czasie rzeczywistym - jest wykonywane na żądanie lub po chwili od zmiany parametrów w trybie auto. Aby aktywować tą funkcję należy zaznaczyć pole "Symulacja bokeh" znajdujące się ponad symulowanym obrazkiem. Tam też można wybrać jaki bokeh ma zostać wygenerowany.

Druga nowość, dodana niejako "przy okazji" to funkcja pozwalająca zablokować odległość pomiędzy postacią a tłem. Dobrze symuluje to zmiany w obrazie jak podczas przesuwania się fotografa przy stałej pozycji modelki.

Bemko
30-04-2015, 13:29
Ostatni gwałtowny wzrost popularności Symulatora spowodowany m.in. przez reddit, Peta Pixel i No Film School (28 tys. osób w jeden dzień!) zmotywował mnie do bardziej intensywnej pracy nad aplikacją. Efektem tego jest duża aktualizacja która dzisiaj ujrzała światło dzienne.

Najważniejsza nowość to pełnoprawna symulacja głębi ostrości: na twarzy modelki widać rozmycie wynikające z małej głębi ostrości oraz uwzględniane są zniekształcenia perspektywiczne przy niewielkiej odległości od aparatu. Dzięki temu symulacja jest teraz zdecydowanie bardziej realistyczna. Zmienił się również zbiór dostępnych postaci, które teraz różnią się od siebie wzrostem. Tak to wygląda w praktyce:

https://canon-board.info/imgimported/2015/04/OcRGE9z-2.jpg
źródło (http://i.imgur.com/B3nWRIx.gif)
Animowany gif po kliknięciu

W Google Play dostępna jest wersja na Androida: https://play.google.com/store/apps/details?id=pl.michalbemowski.dofsimulator Również wersja offline jest teraz łatwiejsza w instalacji i działa niezależnie od przeglądarki zainstalowanej w systemie.
Inne zmiany to m.in. lista modeli aparatów do wyboru, powiększanie podglądu głębi ostrości czy tryb Video 16:9. Pełna lista zmian dostępna jest w oknie "Historia zmian" na stronie.

Zapraszam do wypróbowania nowej wersji Symulatora (dofsimulator.net). Ciekawy jestem waszych opinii odnośnie tych zmian.