<sup id="k62se"></sup>
<xmp id="k62se"><option id="k62se"></option>
<object id="k62se"><tr id="k62se"></tr></object><rt id="k62se"><wbr id="k62se"></wbr></rt>
<tt id="k62se"></tt>
<bdo id="k62se"><label id="k62se"></label></bdo>
  • <menu id="k62se"><sup id="k62se"></sup></menu>
    安防峰會
    您正在使用IE低版瀏覽器,為了您的雷鋒網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
    網絡安全 正文
    發私信給李勤
    發送

    0

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    本文作者:李勤 2019-02-28 15:58
    導語:視頻里換臉后人臉的輪廓、表情都一樣,動起來的效果也很真實,幾乎看不出破綻。

    不好意思了,一篇文章帶了三個熱點:朱茵、楊冪以及波多野結衣。

    我就說吃瓜群眾平常要多關注科技新聞,一個在科技界已經誕生了一年多的“老技術”Deepfake 居然因為“明星換臉”的視頻火出了圈。

    起因是這樣的:一個熱心網友運用 Deepfake 把《射雕英雄傳》里黃蓉的臉由朱茵變成了楊冪,然后這個小視頻就在網上火了,一些酸溜溜的評論就出來了:

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    呵,我們楊女士早就拿過國際影后了好嗎。

    言歸正傳,視頻里換臉后人臉的輪廓、表情都一樣,動起來的效果也很真實,幾乎看不出破綻。高階的換臉技術也引來了一些恐慌:“怎么實現的換臉?如果這一技術被用在其他地方,會怎么樣?我會不會被別人假冒了都不知道?”

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    不用恐慌,因為早就發生了。

    AI 換臉術誕生后,造出了無數假視頻,并且還被用到了制作“不可描述”視頻,各種“不可描述”視頻被換上了好萊塢女星的臉,比如《神奇女俠》的女主角蓋爾·加朵( Cal Gadot )的臉就被嫁接到一個成人電影女星的身上。

    所以,在視頻里化身波多野結衣也不是不可能?這種“想看誰演AV就看誰演AV”的技術好像還真有點危險,不過雷鋒網作為一個優秀的科技媒體,已經報道了太多關于 Deepfake 的新聞,讓我們回顧一下:

    一、換臉術在技術上如何實現?

    博客平臺“medium”有位作者就描述了把尼古拉斯凱奇的臉,放在川普的頭上的過程,最后效果如下↓↓↓

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    雷鋒網(公眾號:雷鋒網)發現,實現這個效果分三步:

    1.收集凱奇的照片并選擇要修改的視頻區域。

    由于只需換臉,所以第一步就是要識別圖片上的臉部,找到要替換的位置,確定方向和大小。如下圖,就像照片的像素一樣,現在的人臉被分解為很多個像素,你要找出替換的像素區域。

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    2.使用方向梯度直方圖(簡稱HOG)得到凱奇的臉部特征。

    把梯度方向平均劃分為多個區間,在每個單元里面對所有像素的梯度方向,在各個方向區間進行直方圖統計,得到一個多維的特征向量,每相鄰的單元構成一個區間,把一個區間內的特征向量聯起來得到多維的特征向量,用區間對樣本圖像進行掃描,掃描步長為一個單元。最后將所有塊的特征串聯起來,就得到了人臉的特征。

    3.使用特征數據,訓練一個自動編碼器。

    自動編碼器是一種神經網絡學習工具(深度學習背后的計算系統)。

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    通過在目標圖片上訓練模型,以保證即使輸入的是一個不同的面孔,模型也會把它轉換成原來的面孔。現在可以在目標視頻中識別人臉(視頻只是一堆圖片),然后通過訓練模型將川普轉換為凱奇。

    最后,合并圖像,大功告成。

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    原文:除了一鍵生成明星色情片,“AI 換臉術”的應用場景還有很多

    二、詳解技術細節

    Deepfake 的整個流程包括三步,一是提取數據,二是訓練,三是轉換。其中第一和第三步都需要用到數據預處理,另外第三步還用到了圖片融合技術。所以我在技術上主要分三個方面來剖析:圖像預處理、網絡模型、圖像融合。

    1. 圖像預處理

    從大圖(或視頻)中識別,并摳出人臉圖像,原版用的是 dlib 中的人臉識別庫(這個識別模塊可替換),這個庫不僅能定位人臉,而且還可以給出人臉的 36 個關鍵點坐標,根據這些坐標能計算人臉的角度,最終摳出來的人臉是擺正后的人臉。

    2. 網絡模型

    Encoder: 64x64x3->8x8x512
    x = input_
    x = conv(128)(x)
    x = conv(256)(x)
    x = conv(512)(x)
    x = conv(1024)(x)
    x = Dense(ENCODER_DIM)(Flatten()(x))
    x = Dense(4 * 4 * 1024)(x)
    x = Reshape((4, 4, 1024))(x)
    x = upscale(512)(x)

    Decoder:8x8x512->64x64x3
    x = input_
    x = upscale(256)(x)
    x = upscale(128)(x)
    x = upscale(64)(x)
    x = Conv2D(3, kernel_size=5, padding='same', activation='sigmoid')(x)

    整個網絡并不復雜,無非就是卷積加全連接,編碼->解碼,但是仔細研究后發現作者其實是匠心獨運的,為什么我不急著說,我們先看看 con 和 upscale 的內部實現:

    def conv(filters):
       def block(x):
           x = Conv2D(filters, kernel_size=5, strides=2, padding='same')(x)
           x = LeakyReLU(0.1)(x)
           return x
       return blockdef upscale(filters):
       def block(x):
           x = Conv2D(filters * 4, kernel_size=3, padding='same')(x)
           x = LeakyReLU(0.1)(x)
           x = PixelShuffler()(x)
           return x
       return block

    conv 是中規中矩的卷積加 relu 激活函數,upscale 中有個函數叫 PixelShuffler,這個函數很有意思,其功能是將 filter 的大小變為原來的 1/4,讓后讓高 h、寬 w 各變為原來的兩倍,這也就是為什么前面的卷積層的 filter 要乘以 4 的原因。

    經過測試對比,比如拿掉 upscale 換成步長為 2 的反卷積,或者簡單 resize 為原來的兩倍,實驗的效果都大打折扣,結果是網絡只能自編碼,而得不到需要的人臉。雖然作者沒有說這樣設計是引用那篇論文的思想,筆者也未讀到過直接討論這個問題的論文,但是有一篇論文可以佐證:Deep Image Prior,包括 Encoder 中的全連接層都是人為打亂圖像的空間依賴性,增加學習的難度,從而使網絡能夠更加充分地理解圖像。所以 Encoder 中的全連接層和 PixelShuffler 都是必不可少的。經筆者測試,在不加 Gan 的情況下,去掉這兩個要素,網絡必定失敗。

    3. 圖像融合

    圖像融合放在技術難點分析中討論。

    原文:深度解密換臉應用 Deepfake

    三、“AI 換臉術”還能怎么用

    除了被用于色情內容,這項技術其實也許還應該有更寬泛的應用場景。

    比如在電影《速度與激情7》中,主演保羅·沃克在 2013 年 11 月因車禍逝世,當時電影還沒有拍完,

    當時外界猜測可能會有三種彌補方案,一,原劇本拍攝,找替身,使用 CGI 特效,讓沃克把戲“演”完。 二,重新修改劇本,把保羅所飾演的角色寫死,或者讓他消失。三,重新找男一號,重頭拍攝。

    在當時,后兩種成本都很高,修改劇本,把保羅所飾演的角色寫死,缺少對死者和影迷的尊重。而如果重新拍攝,損失太慘重。

    最終,制片公司找到了保羅的弟弟,讓他飾演保羅的角色,然后用 CGI 動作捕捉技術,加上保羅之前拍過但沒使用的素材,把弟弟的臉變成保羅的臉,觀眾在看電影時基本看不出來。

    如果這部電影放在今天,也許可以嘗試文章開頭所用的技術。

    其實,關于類似人工智能技術在視頻制作領域的應用,以制作圖形處理器而聞名的英偉達已經在嘗試了,去年12月,它就發布了一款圖像算法,可以改變視頻中的天氣或時間。

    汽車明明行駛在陽光明媚的道路上,而經過 AI 的改變,視頻居然呈現出了夜晚的景象。不僅汽車的尾燈清晰明亮,就連原本沒有路燈的道路兩旁,都出現了真實的燈光效果。

    時間再往前推,在2016年,還有一項更牛氣的技術,一位來自德國紐倫堡大學的教授 Justus Thies 帶領團隊,做了一個能實時進行面部轉換的模型,叫Face2Face。

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    使用者選擇一個目標角色,比如川普,Face2Face會將他和川普的面部特征重構并追蹤,當他做出一個面部表情時,比如大張嘴,模型會重新渲染川普的臉的形狀和光影,并對背景進行修改。

    他們還拿普京做目標,效果看來也不錯。

    AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    原文:除了一鍵生成明星色情片,“AI 換臉術”的應用場景還有很多

    四、DeepFake 現在怎么樣了

    誰被和諧都能接受,你偏偏跟我說這次是GitHub?不對不對,這也對不上號呀!為啥這么說?我們先來看看GitHub是個啥吧:

    雷鋒網得知,GitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git作為唯一的版本庫格式進行托管,故名GitHub。而DeepFake則是GitHub的一個開源項目代碼倉庫,按照正常狀態來說,即使在尚未登錄的情況下該庫也是對外開放的。然而,就是這樣一個不黃、不賭也無毒的東東在一篇來自Hacker News的帖子里被曝出——當在隱身模式下以未登錄的方式訪問DeepFake的GitHub 倉庫時,頁面的顯示結果卻如下圖示: AI 讓朱茵秒變楊冪,但我拒絕成為波多野結衣

    沒錯,待審核。正如上面說的,DeepFake是一個開源的項目代碼倉庫,如今卻被提示處在審核狀態,那不就是被“和諧”了嗎?好端端的DeepFake為啥會遭到這般“待遇”呢?對此,該貼吧中開發者們展開了激烈的討論,這塊編輯會在文章的后面詳細講到。那么,能肯定的是這個DeepFake開源項目還真不一般,那它究竟是干啥的呢?實際上,這里面的程序代碼的確能夠讓人們實現“換臉”的操作。

    原文:DeepFake疑遭審查,網友:此乃它“干爹”所為

    五、被黑灰產應用?

    這一技術的應用會引發何種問題?

    阿里安全圖靈實驗室高級算法專家覺奧表示,除了換臉引發的道德和倫理問題,黑灰產利用 AI 換臉,是目前常見的一種攻擊手段,“在人臉識別系統中,識別換臉的技術叫活體檢測技術,這是一個攻防對抗技術,即用 AI 的手段來解決 AI 的攻擊。” 

    舉個例子,2017 年 11 月下旬,阿里安全圖靈實驗室就發現,有犯罪團伙通過 3D 軟件控制人臉照片進行攻擊操作,共發起過幾百次攻擊,導致近百名受害人駕照分被盜刷。通過 3D 合成“假臉”認證賬號注冊或登陸后,黑灰產人員可在受害人毫不知情的情況下,用于黑卡虛假注冊、刷單、薅羊毛、詐騙等不法行為。

    基于安全 AI 的方法來很好地解決這一攻擊問題。“通過深度學習技術,訓練模型,來通過兩者的紋理、膚色、反光等特性的不同而識別出來。”覺奧表示,可實現在毫秒級時間內揪出假人臉,目前識別準確率達到 99.9 %。

    雷鋒網版權文章,未經授權禁止轉載。詳情見轉載須知

    分享:
    相關文章

    文章點評:

    表情
    最新文章
    請填寫申請人資料
    姓名
    電話
    郵箱
    微信號
    作品鏈接
    個人簡介
    為了您的賬戶安全,請驗證郵箱
    您的郵箱還未驗證,完成可獲20積分喲!
    請驗證您的郵箱
    立即驗證
    完善賬號信息
    您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
    立即設置 以后再說
    江苏11选5投注