可能每個男生心靈最深處都有個角落在期待變身“女裝大佬”。
最近,Snapchat推出了一款可以改變性別的濾鏡,不用再化妝換衣服戴假髮,只需要一鍵就能實現性別轉換。
類似濾鏡其實已經有很多,但是snapchat這款新品非常真實,保持了使用者原有的顏值特徵,並且變裝效果非常真實。並且據介紹,這個濾鏡是實時工作的,並且不需要聯網也能執行。
比如男生變身女裝大佬,會把整體畫質和五官變得柔和,磨皮美白,並且自帶髮型和妝容,連戴帽子時候對頭髮的渲染處理都非常完美。
Snapchat此功能一出,瞬間被玩壞~
比如,用“女變男”的功能給擁抱自己的男朋友一個”驚喜“,讓他轉頭忽然髮型自己女朋友變成胡茬大漢?
看他那生無可戀的表情,心中一萬匹草泥馬飛奔而過。
還有對權遊的照片處理,三傻的男裝有點像哈利波特是怎麼回事!不過雖然改變了性別,但是“他”那憂鬱的眼神卻沒有改變,依然飽含深情~
雪諾變身女裝也非常驚豔了?
有人還對音樂圈的大佬進行了一番實驗,結果喜人。
肖邦秒變美少女。
巴赫用了濾鏡之後,變成了金髮婦人。
除了性別轉換之外,Snapchat還推出了一秒變寶寶功能。如果復仇者聯盟裡面的英雄都變成了寶寶,會是什麼樣子?例如~
當然,很皮的文摘菌也在編輯部實驗了一把這款濾鏡,效果的確驚豔,玩到停不下來。
這是文摘菌變身後的“女裝”扮相,簡直要對自己動心了☹☹☹。?
來看一下美女編輯的“男裝”變形過程~
女變男的濾鏡也很真實,比如“文文”的臉型大小似乎沒有改變,只是整體的色調被調黑,下頜變寬,加上了一撮小鬍子,以及把長髮藏了起來。
買家測評:整體比較滿意
不僅素人,這款濾鏡還吸引了谷歌大腦工程師Eric Jang,他也很認真的對這項功能做了全方面的測評。
中間的照片是一張浴室自拍的原始照片。左邊是“男性”濾鏡的效果,右邊是“女性”濾鏡的效果。
Eric接下來對這款濾鏡效果進行了全面測評。
可能是隻在特定的線框內才能生效,當Eric Jang轉頭的時候,濾鏡並未發揮效果。
隨後,其進行了遮擋測試。在臉上滑動一個物體。當僅有半邊臉被遮擋時,濾鏡就能正常工作,但如果臉部被遮擋的太多,濾鏡不發揮作用。如下所示~
然後是下垂直遮擋。在測試的過程中,白色的瓶子變模糊了。而且,當Eric Jang把瓶子放在視線中央時,頭髮變成了金黃色。
Eric Jang認為這個效果一定是機器學習在起作用,因為它會從訓練過的資料中提取一些資料進行渲染。
當敷上面膜會是什麼效果?面膜遮住一半可以,但是如果超過一定比例,濾鏡轉換失敗。
遮擋小部分,濾鏡工作沒問題。
接下來是對頭髮的測試~
當用手對頭髮進行撫摸時出現了鬼畜,據Eric Jang介紹,頭髮上還有一個清晰的分割面罩,可以讓臉部顯露出來。Snapchat可能正在進行頭部的跟蹤,通過計算新增長髮效果。
背後原理猜想:CycleGAN大顯神威
關於背後的原理,Eric Jang猜測可能採用了CycleGAN架構,資料集採用的是Snapchat運營這8年使用者上傳的資料。初步估計,光自拍照就有數十億張!
在介紹CycleGAN之前,我們先介紹一下GAN。
生成對抗網路 由兩個相互博弈的神經網路組成,即生成器和鑑別器。生成器負責根據輸入生成資料(輸入可以是噪聲,也可以是一些其他的資料)。鑑別器負責分析資料,並區分這些資料是真實的(來自資料集),或者是虛假的(來自生成器)。在形式上可以看做武學中的左右互博。
上面公式下標 G 和 D 分別代表生成器 G(Generator)和鑑別器 D(Discriminator)。生成器的工作是將方程的值最小化,而鑑別器負責將這個值最大化。生成器 G 和鑑別器 D 會一直博弈,直到達到我們的滿意。
CycleGAN本質上是兩個映象對稱的GAN,構成了一個環形網路。
兩個GAN共享兩個生成器,並各自帶一個判別器,即共有兩個判別器和兩個生成器。一個單向GAN兩個loss,兩個即共四個loss。
CycleGAN的創新點就在於其能夠在沒有成對訓練資料的情況下,將圖片內容從源域遷移到目標域。CycleGAN在訓練時,只需要將源域的圖片和目標域的圖片作為輸入即可,這裡並不要求源域跟目標域的影象內容是匹配的。
簡而言之,CycleGAN可以幫助你訓練一個網路,這個網路可以把一組資料集(輸入域)中同樣風格的圖片轉換成另一組資料集(目標域)裡紋理的圖片。
CycleGAN 解決了pix2pix 必須使用成對資料進行訓練的問題,原理比較簡單,但非常有效。只需要不同域的一系列圖片即可進行訓練。類似的工作還有DualGAN,DiscoGAN。三者的想法和模型基本一樣,發在了不同的地方。
CycleGAN在轉換影象型別方面確實做的非常好,下面是一些網友用CycleGAN做的例項~
在猜想的同時,Eric Jang也提出了自己的疑問,主要集中在以下幾點:
1.他們訓練的影象轉換器真的是無需成對影象的嗎?鑑於CycleGAN存在很多問題,做到這件事情幾乎不可能。
2.在資料集方面,他們可能有一些資料是手工設計的。作用是增強資料。
3.頭髮和麵部的變換似乎是各自獨立合成的,或者可能是一起合成的,並在渲染之前分割成不同的圖層。
4.Snapchat確實有一些平滑的功能,它可以根據遮擋物體的狀態改變高光和頭髮顏色,這表明顏色可能部分是從資料中習得的。
5.另一方面,頭髮非常穩定,或許不是由GAN合成的。可能存在一個大型的haridos模板庫,並且用一些機器學習模型進行了改進。
6.如何明確CycleGAN在這麼大的資料集上訓練以後到底收斂沒有?
7.動態圖的解析度是多少,如果在有限的計算資源下執行神經網路?
8.如果它確實是一個CycleGAN,那麼將男性濾鏡應用於女性濾鏡影象的時候應該恢復成原始影象才對呀?
小夥伴們如果有自己關於原理的猜想,可以在下文給出喲~
相關報導:
https://www.jianshu.com/p/64bf39804c80