Microsoft

Jak Microsoft upiększa zdjęcia sztuczną inteligencją

Ah, ile byśmy dali, żeby nasze stare zdjęcia z albumów rodzinnych wyglądały jak zrobione nowoczesną lustrzanką… Jak się okazuje, Microsoft od lat pracuje nad ulepszaniem zdjęć za pomocą sztucznej inteligencji. Wiele narzędzi dostępnych jest już za darmo online, a oto, jak one działają.

Zwiększ rozdzielczość zdjęcia

Systemy zwiększające rozmiar obrazka bez utraty jakości istnieją nie od dziś – zarówno płatne, jak i darmowe. Moim ulubionym, którego można użyć zarówno do zdjęć, jak i sztuki, jest waifu2x. Większość z nich ma jednak niemałe ograniczenia.

Microsoft prezentuje nowy sposób zwiększania rozdzielczości zdjęcia. Nie wykorzystuje on głębokiego uczenia, lecz metodę referencyjną. W skrócie, system ten odnosi się do innych, podobnych zdjęć, analizując różnice pomiędzy ich wysoką, a niską rozdzielczością.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Wyniki osiągane przez nowy system Microsoftu (po lewej) / fot. Microsoft

Metoda ta osiąga lepsze wyniki i eliminuje problemy halucynacji komputerowej, czyli sytuacji, w których model sztucznej inteligencji błędnie rozumie kontekst obrazka. Mówimy wtedy, że źle przetworzył rzeczywistość.

Jak pisze Microsoft:

Modele trenowane na podstawie funkcji rekonstrukcji poszczególnych pikseli często skutkują w rozmazanych elementach reprezentujących kompleksowe tekstury, co nie jest zadowalające.

„Models trained with pixel-wise reconstruction loss functions often result in blurry effects for complex textures in the generated high-resolution results, which is far from satisfactory.”

Niedawno rozpoczęto także wykorzystywanie systemów GAN do rozwiązania tego problemu, lecz napotkane efekty halucynacji komputerowej są na razie zbyt dużym wyzwaniem. Tutaj wchodzi metoda Microsoftu.

Badacze nazwali ten system RefSR (skrót od Reference-Based Super-Resolution). Wykorzystuje on właśnie podobne zdjęcie o wysokiej rozdzielczości, które asystuje w zwiększaniu rozmiaru obrazu wejściowego. Oznacza to, że maszyna nie musi już próbować generować kompleksowych struktur praktycznie od zera (co jest bardzo trudnym procesem). Teraz może ograniczyć się do skopiowania części obrazu pomocniczego.

Sam system przenoszenia tekstur z jednego obrazka na drugi został nazwany Texture Transformer Network for Image Super-Resolution, w skrócie TTSR.

Wyjątek w dziedzinie

Transformator wykorzystywany jest często w dziedzinie przetwarzania języka, na przykład w Tłumaczu Google. Jak nazwa wskazuje, jego działanie opiera się na zamianie jednego rodzaju danych na inny. Pracownicy azjatyckiego działu Microsoft zaproponowali jednak zastosowanie go w nowym systemie RefSR. Tak oto powstał Transformator Tekstur TTSR.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Z czego składa się transformator TTSR / fot. Microsoft

Składa się on z następujących 4 części:

  • Uczący Transformator Tekstur (Learnable texture transformer), czyli model sztucznej inteligencji, który potrafi wybrać rodzaj i wielkość potrzebnej części obrazu pomocniczego zależnie od obrazu pierwotnego;
  • Moduł Osadzania Trafności (Relevance embedding). Jak widzimy na powyższym obrazku, druga część TTSR ma trzy elementy wejściowe, oznaczone Q, K i V. Pierwszy z nich – Q (query – zapytanie) określa informacje o teksturach pobrane z obrazka pierwotnego. Natomiast dwa ostatnie – K (key – klucz) oraz V (value – wartość) razem służą do uzyskania danych służących do przeniesienia części obrazu pomocniczego do zdjęcia o niskiej rozdzielczości. To pomiędzy nimi zaimplementowany został Moduł Osadzania Trafności. Mapuje on odpowiednie wartości pomiędzy 0 i 1 do poszczególnych pikseli, co następnie służy do poprawnego przenoszenia części obrazu referencyjnego. Tworzy dwie mapy – miękką i twardą;
  • Moduł Twardej Uwagi (Hard attention) – proces ten używa twardej mapy z powyższego procesu w celu stworzenia części transformatora oznaczonej literą T. Zawiera ona najbardziej przydatne elementy obrazka pomocniczego, które zostaną połączone ze zdjęciem pierwotnym w procesie konkatenacji;
  • Moduł Miękkiej Uwagi (Soft attention), czyli ostatnia część układanki, polegająca na podkreślaniu najbardziej widocznych tekstur na obrazku pierwotnym (np. im bliżej, tym więcej szczegółów potrzeba). Informacje te uzyskiwane są analogicznie za pomocą lekkiej mapy.

Dodatkowo, tekstury transferowane do obrazka pierwotnego są skalowane na trzy rozdzielczości – 1x, 2x i 4x. Dzięki temu, system może lepiej zrozumieć kontekst danego przedmiotu (eliminując halucynację komputerową) i użyć najlepiej wyglądających części z każdego rozmiaru zdjęcia, osiągając lepsze wyniki.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Droga od transformatora do rezultatu procesu TTSR / fot. Microsoft

Udany eksperyment

Proponowany system TTSR został przetestowany na 4 popularnych graficznych bazach danych – CUFED5, Sun80, Urban100 i Manga109, czego wyniki możemy zobaczyć poniżej.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Porównanie wyników systemów z TTSR i SRNTT (starym modelem) / fot. Microsoft

TTSR również zwyciężył w teście upodobań, w którym to ankietowani musieli wybrać najlepiej wyglądające powiększone zdjęcie. System Microsoftu został wybrany w ponad 90% przypadków.

Poniżej możemy na własne oczy zobaczyć wizualną różnicę, którą oferuje TTSR (ostatnia kolumna).

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
TTSR działa wręcz wybitnie / fot. Microsoft

Więcej o systemie RefSR, napędzanym TTSR, możemy dowiedzieć się na stronie arXiv.

Napraw stare zdjęcia

Zapewne nie tylko ja pragnę zobaczyć fotografie z XX-wiecznych albumów rodzinnych w idealnej kondycji. Nie mówiąc już o jeszcze wcześniejszych zdjęciach znanych zabytków (albo ich braku), naukowców i wydarzeń. Gdyby tak tylko jednym kliknięciem można było je naprawić, wyostrzyć i pokolorować…

Cóż, niedawno spróbowałem wykorzystać obecne narzędzia online do pokolorowania fotografii. Chociaż serwis Algorithmia zadziałał całkiem nieźle, proces ten wciąż wymagał manualnego udoskonalania zdjęcia. W przypadku fotografii w gorszym stanie, mogłoby to zająć nawet kilka godzin.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Manualne naprawianie obrazków przez specjalistów nie jest tanie / fot. Microsoft

Naukowcy z firmy Microsoft zaproponowali niedawno technikę automatyzacji tego procesu, która nadaje życie starym zdjęciom przy pomocy sztucznej inteligencji. W przeciwieństwie do nakładania na siebie wielu obecnie dostępnych procesów, firma proponuje nowe rozwiązanie, przeznaczone specjalnie do starych zdjęć, dzięki czemu osiągamy znacznie lepsze wyniki.

Wraz z rozwojem uczenia głębokiego możemy zautomatyzować szereg problemów związanych z naprawianiem zniszczonych obrazów, wykorzystując konwolucyjne sieci neuronowe (ang. convolutional neural networks), czyli ucząc komputer odpowiedniego mapowania zmian dla określonego zadania (np. usuwania szumu) z dużej liczby (ponownie) obrazów pomocniczych.

Stare zdjęcia są jednak nękane wieloma rodzajami degradacji (np. zadrapaniami, skazami, blaknięciem kolorów) i nie istnieje jeden model, który mógłby uzyskiwać perfekcyjnie realistyczne rezultaty bez artefaktów. Ponadto, technologia fotograficzna stale się rozwija, przez co zdjęcia z różnych epok mają różne problemy.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Sposób działania procesu, który stworzyła firma z Doliny Krzemowej / fot. Microsoft

Microsoft proponuje nowe rozwiązanie, które wykorzystuje trzy obrazki. W skrócie, sztuczna inteligencja próbuje zepsuć nowoczesne, bezproblemowe zdjęcie – przekształcić je w taki sposób, aby przypominało pierwotne. Następnie, próbuje je naprawiać, zbliżając się coraz bardziej do pomocniczego obrazka, a gdy osiągnie podobny rezultat – mapuje wszystkie dokonane zmiany na zdjęcie wejściowe, co możemy zobaczyć na powyższej grafice.

Microsoft opiera swój system na fuzji kontekstu globalnego (całego zdjęcia) i lokalnego (poszczególnych problematycznych części obrazka). Takie rozwiązanie stosuje się w wielu systemach wizji komputerowej. Dzięki analizie kontekstu lokalnego, można skierować większą moc obliczeniową na mniejszą liczbę pikseli, co może jednak generować elementy wyglądające nierealistycznie. Z pomocą przychodzi analiza kontekstu globalnego, która zapewnia nam poprawne proporcje i rozmieszczenie nowo wygenerowanych pikseli.

Model ten działa więc bardzo dobrze w przypadku usuwania zadrapań i smug. Możemy je w końcu zaliczyć do lokalnych problemów ze zdjęciem.

Dodatkowo, system Microsoftu skupia się na twarzach, usuwając z nich szum i artefakty halucynacji komputerowej, a także kadrując portrety w taki sposób, aby lepiej przestrzegały złotej zasady fotografii.

Czas na testy

Microsoft chwali się, że rezultaty tworzone przez model upiększania zdjęć również podobają się większości ankietowanych. Rzeczywiście – zdjęcia naprawione przez ten model są bardziej nasycone, ostre i realistyczne niż wyniki innych zautomatyzowanych procesów. Aż 64,86% ankietowanych wybrało sposób Microsoftu.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Porównanie z 4 innymi systemami wykorzystującymi sztuczną inteligencję / fot. Microsoft

Więcej o tym systemie możemy dowiedzieć się na oficjalnej stronie laboratorium Microsoft.

Coś więcej

Dodatkowo, firma pokazała model koloryzacji zdjęć i filmów, który również wykorzystuje pomocnicze obrazy. Działa on wyjątkowo dobrze i wydaje się pozwalać na dużą ilość artystycznej kontroli.

Jak Microsoft upiększa zdjęcia sztuczną inteligencją
Obrazki pomocnicze (po lewej) i wynik koloryzacji (po prawej) / fot. Microsoft

Publikację opisującą ten model znajdziemy tutaj. Może on już niedługo znaleźć praktyczne zastosowanie zarówno w Hollywood, jak i naszych domach.

Nowa generacja

Co wszystkie te systemy mogą oznaczać? Po pierwsze, automatyczną renowację rodzinnych zdjęć – w końcu zobaczymy naszych przodków w wysokiej rozdzielczości. Mówiąc o rozdzielczości – będziemy mogli zwiększyć ją bez utraty szczegółów. Pozwoli to na kreatywną wolność w tworzeniu tych ogromnych plakatów, które możemy zobaczyć w dużych miastach.

Koloryzacja filmów pełnometrażowych była dotychczas manualnym procesem. Jak rozpętałem drugą wojnę światową wygląda świetnie, lecz nawet nie mogę wyobrazić sobie ilości pracy, która weszła w tworzenie kolorowej wersji wszystkich części tego filmu. Automatyzacja kreatywnych procesów to krok w dobrą stronę. Nie oznacza jednak, że kiedykolwiek zabierze pracę artystom.

Podsumowując, jeśli teraz zobaczymy starsze, zniszczone zdjęcie lub klip filmowy, nie myślmy, że nigdy nie zobaczymy go w wysokiej jakości. Ostatnie kilka wieków stanie przed nami otworem. Już niedługo.