captcha image

Hasło zostanie wysłane na twojego e-maila.

Enhance! Powiększ to ujęcie. Wyostrz. Jeszcze, jeszcze. Widzisz? Takie słowa padały w futurystycznym Blade Runnerze, Star Treku i wielu innych filmach w stylu „Kryminalne zagadki…”. Teraz z technologii super rozdzielczości może spróbować każdy z nas. Co powiecie na powiększenie zdjęcia 100×100 pikseli do wielkości 1000×1000 pikseli?

Ile to razy oglądałem film, gdzie w kilka kliknięć myszką technicy kryminalistyczni z niewyraźnego, zamazanego kadru zarejestrowanego kamerą przemysłową wyławiali twarz przestępcy czy – tak jak w Blade runnerze – odbicie w lustrze. Choć takie sceny to wciąż w dużej mierze pozostają wizją rzeczywistości wykreowaną przez reżysera, to jest w nich też ziarno prawdy.

Technika zwana super rozdzielczością (super-resolution) pozwala powiększać zdjęcia w taki sposób, że zamiast oglądać piksele albo nieostry obraz, będący wynikiem interpolacji, nasze oczy zobaczą wyraźne zdjęcie wysokiej rozdzielczości. Takie algorytmy mają głównie zastosowanie do analizy zdjęć lotniczych i satelitarnych, astrofotografii czy radiologii, gdzie służą np. do powiększania zdjęć zrobionych przez tomograf.

Super rozdzielczość przydać się może jednak każdemu z nas. W czasach, kiedy naszym aparatem stał się smartfon, ta technika staje się coraz bardziej pożądana. Telefony, choć robią świetne zdjęcia, to w większości modeli wciąż posługują się jednym, szerokokątnym obiektywem i nie pozwalają na dobrej jakości przybliżanie fotografowanych obiektów. Jedynym sposobem na uzyskanie efektu zbliżonego do tego, co dałby obiektyw zoom, pozostaje powiększanie zdjęcia. Niestety ten zabieg w praktyce oznacza albo „pikselozę” na ekranie albo niezbyt wyraźne zdjęcie poddane interpolacji.

Jak to działa

Chyba każdy z nas zetknął się z sytuacją, kiedy trzeba było wykorzystać dobre, ale bardzo małe zdjęcie w dużym formacie (np. na wydruku czy w prezentacji). Panaceum, jaki oferują na rozwiązanie tego problemu programy graficzne to interpolacja. Jest to proces tworzenia nieistniejących punktów obrazu na podstawie parametrów sąsiadujących z nim prawdziwych pikseli, jakie tworzyły zdjęcie w niskiej rozdzielczości.

Sieć neuronowa kontra interpolacja. Fragment zdjęcia.

Jak widać efekt nie zachwyca. Widoczne piksele, jak i interpolacja wyglądają źle. Dlatego naukowcy korzystają z innych technik. Jedną z nich jest łączenie wielu zdjęć w jedno, ale o minimum cztery razy większej rozdzielczości – na podobnej zasadzie w aparatach i telefonach funkcjonuje mechanizm redukowania szumów i poprawiania zdjęć robionych w złych warunkach oświetleniowych. Drugą metodą jest SISR (Single Image Super Resolution), czyli technika uzyskiwania super-zdjęcia z pojedynczego obrazu wejściowego.

Trudno jest w prosty sposób opisać, jak działa SISR. To co łączy stojące za tą techniką algorytmy to uczenie maszynowe, a w bardziej zaawansowanych realizacjach różnego rodzaju sieci neuronowe, które wcześniej zostały nauczone jak mają powiększać obraz, tak by był jak najbliższy jakości oryginału.

Najpierw algorytmowi zaprezentowane są miliony obrazów o niskiej rozdzielczości, które ma on zwiększyć, porównać z oryginałami i dostrzec różnicę. Zanim jednak zrobi to ucząc się na własnych błędach, ocenę jakości zdjęć przeprowadzają programiści.

Chętnych do zapoznania się z kuchnią tego typu systemów odsyłam do wpisu Katarzyny Kańskiej i Pawła Golińskiego jaki ukazał się na platformie deepsense.ai. Tam też możecie sami sprawdzić jak działają prostsze mechanizmy SISR.

4x większe i prawie tak dobre jak oryginał

Jeśli zrobiliście test na platformie Deepsense to pewnie zauważyliście, że sieci neuronowe są zdecydowanie lepsze niż interpolacja oferowana przez program graficzny, ale to wciąż jeszcze nie to. Dlatego naukowcy nadal poszukują jeszcze lepszych metod (tutaj znajdziecie interaktywne źródło pokazujące różnice pomiędzy różnymi metodami).

Jednym z najbardziej zaawansowanych programów jest EnhanceNet-PAT stworzony przez naukowców z Max Planck Institute for Intelligent Systems w Tybindze. Wykorzystuje ona sieci CNN (Convolutional Neural Networks), a rezultaty jej działania możecie zobaczyć na tym zdjęciu (więcej tutaj):

Po lewej powiększenie małego zdjęcia, w środku zdjęcie powiększone metodą EnhanceNet-PAT, po prawej oryginał w wysokiej rozdzielczości. (zdjęcie: MPI-IS)

Jeden z jej wynalazców, Mehdi S. M. Sajjadi, na łamach Digital Trends, oprócz wspomnianych wcześniej zastosowań SISR, przywołał też i inne pomysły. Nowa metoda ma przydać się podczas upsamplingu starych filmów do rozdzielczości 4K, restaurowaniu rodzinnych zdjęć robionych starymi cyfrówkami, a nawet pomóc sztucznej inteligencji w samochodach autonomicznych we wcześniejszym dostrzeganiu pieszych wkraczających na tor jazdy.

Innym przykładem jest algorytm ukraińskiej firmy LetsEnhance.io, który korzysta z generatywnej sieci z przeciwnikiem (GAN, generative adversarial network). W wielkim uproszczeniu są to dwie sieci neuronowe, które w pewnym sensie konkurują ze sobą. Jedna tworzy powiększenie, a druga próbuje odgadnąć, co jest oryginałem, a co powiększeniem. Obecna sieć, jak powiedzieli jej założyciele Alex Savsunenko i Vladislav Pranskevičius na łamach PetaPixela, została przeszkolona na bardzo szerokim zestawie obrazów i jej ideą jest wykorzystanie różnie wytrenowanych algorytmów, uwzględniających treść zawartą na obrazie wejściowym. Obecnie LetsEnhance najlepiej sprawdza się w przypadku fotografii zwierząt i krajobrazów.

Od lewej: oryginał, powiększenie zdjęcia małej rozdzielczości i działanie algorytmu Magic.

Na koniec zostawiłem to, co najlepsze. Działanie tego algorytmu możecie sprawdzić sami. Wystarczy wejść na stronę LetsEnhance.io i przeciągnąć na nią zdjęcie, które chcemy powiększyć. Efekty są imponujące. Algorytm tworzy za każdym razem trzy wersje powiększanego zdjęcia. Pierwsza z nich, Anti-JPEG usuwa tylko artefakty powstałe podczas kompresji; wersja Boring jest nudna i skaluje z zachowaniem obecnych wcześniej krawędzi i szczegółów, a wersja Magic sięga po odrobinę AI i dodaje to czego nie ma, a sztucznej inteligencji wydaje się, że być powinno.

Od lewej: powiększenie, interpolacja i działanie algorytmu Magic.

Uwaga: Testujcie z rozwaga, bo po wrzuceniu 5 zdjęć wykorzystaliśmy już darmowy dostęp.

Zbiór źródeł dla dociekliwych

Super rozdzielczość: sposób na powiększanie małych zdjęć
5 (100%) 4 głosów

Nie ma więcej wpisów