Nowy algorytm od Adobe potrafi na podstawie jednego zdjęcia odtworzyć wygląd osoby od niemowlęctwa po starość. Czy wiernie? Sprawdźcie sami

Większość z was prawdopodobnie korzystała z FaceApp lub choćby słyszała o tej aplikacji. Program umożliwia modyfikację wysłanego zdjęcia twarzy – jej odmłodzenie, postarzenie, a nawet zmianę płci z zachowaniem podobieństwa. O rosyjskiej apce było głośno w zeszłym roku. Najpierw zachwycaliśmy się jej możliwościami i wysyłaliśmy znajomym swoje zmodyfikowane selfie, a potem martwiliśmy się, czy nasze zdjęcia nie zostaną wykorzystane przez rosyjski wywiad.

Jeśli wtedy obawy o prywatność powstrzymały was przed użyciem apki, może rozwiązanie Adobe Research bardziej przypadnie wam do gustu. Firma stworzyła algorytm, który na podstawie jednego zdjęcia jest w stanie odtworzyć wizerunek osoby od niemowlęctwa po starość.

Twórcy mechanizmu opisali swoje rozwiązanie w pracy „Lifespan Age Transformation Synthesis” w serwisie arXiv. Eksperci Adobe chwalą się, że ich algorytm jest o wiele bardziej zaawansowany niż wcześniejsze rozwiązania tego typu.

Zdjęcie pochodzi z artykułu „Lifespan Age Transformation Synthesis”
Źródło: https://arxiv.org/pdf/2003.09764.pdf

„Aplikacje takie jak FaceApp pozwalają na wiarygodne transformacje dorosły – dziecko i dziecko – dorosły, ale – podobnie jak najlepsze stosowane dotychczas rozwiązania – skupiają się głównie na fakturach, nie na kształtach, więc rezultat jest daleki od ideału. W dodatku operowały tylko rozmytymi klasami wieku (‘młody’, ‘stary’)” – czytamy w pracy.

Jak piszą badacze, inne algorytmy tego typu skupiają się na transformacji „dorosły” – „stary”, ponieważ twarze osób dorosłych nie podlegają znacznym zmianom strukturalnym, więc transformacje dotyczą głównie tekstur skóry – zmian w kolorze, zmarszczek itp.

Eksperci z Adobe podeszli do sprawy ambitniej. Ich celem było stworzenie algorytmu, który symuluje zmiany twarzy w całym spektrum czasowym od 0 do 70 lat. Aby było to możliwe, konieczne jest uwzględnienie także zmian w kształcie twarzy z zachowaniem „tożsamości” osoby na zdjęciu, czyli zestawu cech składających się na podobieństwo.

Ich rozwiązanie zakłada stworzenie sześciu osobnych klas wiekowych: 0-2, 3-6, 7-9, 15-19, 30-39, 50-69. Za każdą z nich odpowiada osobny algorytm, który został wyuczony na tysiącach zdjęć osób w określonym wieku. Algorytmy nauczyły się symulować zmiany kształtu ludzkiej twarzy w określonym przedziale wiekowym.

Osobny algorytm odpowiada za ekstrakcję ze zdjęcia źródłowego „tożsamości”, czyli zestawu cech, które czynią nas nami przez cały okres naszego życia. Te cechy są rzutowane na sekwencje obrazów generowanych przez każdy z sześciu algorytmów symulujących zmiany postępujące z wiekiem.

Rezultatem jest krótka sekwencja wideo, która pokazuje płynną zmianę wyglądu twarzy od niemowlaka po osobę starszą. Efekt robi wrażenie, zwłaszcza w porównaniu z działaniem innych algorytmów.

Wygenerowane zdjęcia mają wysoką jakość, są pozbawione artefaktów, a oglądając sekwencję obrazów, nie mamy ani przez moment wątpliwości, że patrzymy na tę samą osobę (nasze eksperymenty nie były aż tak przekonujące).

Ale czy są zgodne z rzeczywistością? Czy możemy użyć tego narzędzia, żeby na przykład przewidzieć, jak nasze dziecko będzie wyglądało za 20 lat? Nie. Każdy z nas starzeje się inaczej i o tym, jak będziemy wyglądać w przyszłości, decydują ekspresje genów, które nie trzymają się jednego algorytmu. Możemy co najwyżej przypuścić, że postać z wygenerowanego obrazu będzie do naszego przyszłego dziecka nieco podobna.

Zachęcamy do eksperymentów z użyciem tego narzędzia. Eksperci z Adobe przygotowali do tego celu skrypt na platformie Google Colab.