Github高贊:給文字打馬賽克=形同虛設(shè),AI看透你一切小心思,已開源
“來P個圖吧!” “好呀,不過這段話得打碼,不然就麻煩了!”
如果現(xiàn)在告訴你,”打碼“已經(jīng)不再安全,你所想保護的信息,已然如”皇帝的新衣“,你會作何想?
不,這不是聳人聽聞,最近一個名為 Depix 的 GitHub 項目火了,上線僅僅三天,star 量就已經(jīng)高達 7K。截止發(fā)文,此項目已經(jīng)火速達到 1w+ 的 star 量:
而就是這項技術(shù),能夠解碼被打上馬賽克的文字,你的所有努力,甚至有了”欲蓋彌彰“的效果。
手機涂鴉如同“徒勞”,外行也能輕易恢復隱藏信息
前段時間,網(wǎng)絡(luò)上爆出,使用手機涂鴉對圖片所進行的操作,其實可以輕易被恢復:
簡單拿微信聊天截屏的文字涂鴉來說:
我們身邊太多的人,都可能會用這種涂鴉技術(shù),遮蓋自己想保密的信息。
看似很安全,對不對?
其實在有心人看來,你的操作可以馬上成為徒勞:
只需要再次利用手機的圖片編輯功能,將曝光、鮮明度、高光、陰影、亮度等參數(shù)全部調(diào)至 +100,然后再將對比度參數(shù)調(diào)至-100,然后,神奇的事情發(fā)生了:
行家都知道,相比于涂鴉,馬賽克卻無法被修復和逆轉(zhuǎn),令人非常的安心。
可是,放在現(xiàn)在,在 AI 面前,修復厚碼圖片中隱藏的內(nèi)容,也成為了可能:
Depix——修復厚碼文字內(nèi)容,現(xiàn)已開源
Depix 的主要功能,就是利用 AI 算法,將被像素化的文本內(nèi)容從馬賽克中還原出來。其適用于用線性盒過濾器創(chuàng)建的像素化圖像。
其目的不是去馬賽克,而是做文字恢復使用。雖說這可能令一些宅男失望,但其作用依舊強大且有意義。
此項目是由信息安全顧問 Sipke Mellema 開發(fā)的,目前僅支持英文字母、數(shù)字和英文標點符號。
而任何此個開源項目的使用者,簡簡單單使用以下指令,就可以恢復你想“窺探”的文字內(nèi)容:
python depix.py -p images/testimages/testimage3_pixels.png -s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png -o output.png
完整操作如下:
從截圖中剪出像素化的方塊,作為一個矩形。
將 De Bruijn 序列粘貼到編輯器中,使用相同的字體設(shè)置(文本大小、字體、顏色、hsl)。
制作序列的截屏。如果可能的話,使用同樣的截圖工具來創(chuàng)建像素化的圖像。
運行 run python depix.py -p [pixelated rectangle image] -s [search sequence image] -o output.png
算法原理簡單:分割小塊,德布魯因序列字符庫助力像素匹配
Depix 的原理是將馬賽克區(qū)域的內(nèi)容分割成許多個小塊,然后將每個小塊都和預先設(shè)置好的字符庫(德布魯因序列(De Bruijn sequence))進行像素匹配。
具體算法流程如下:
該算法利用了線性盒濾波器,來分別處理每個塊的特性。對于每個塊,它對搜索圖像中的所有塊進行像素化,以檢查是否直接匹配。
對于大多數(shù)像素化的圖像,Depix 設(shè)法找到單一匹配的結(jié)果。它假設(shè)這些都是正確的。然后,將周圍的多匹配塊的匹配在幾何上與像素化圖像中的相同距離進行比較。匹配也被視為正確。這個過程要重復幾次。
當正確的塊沒有幾何匹配時,它將直接輸出所有正確的塊。對于多匹配塊,它輸出所有匹配的平均值。
開發(fā)這個 AI 項目,Mellema 并不是為了竊取信息,而是利用 ECB 和明文攻擊的模式,提高信息保護技術(shù)。
在他看來,不知道如何破壞當前的保護模式,是信息安全中的常見陷阱。
Depix 主要是針對打碼文字的處理,而說到修復馬賽克像素級別圖片的技術(shù),我們不得不提杜克大學的 AI 算法 PULSE:
宅男福利?渣畫質(zhì)修復還要看杜克 PULSE
杜克大學的 AI 算法 PULSE(Photo Upsampling via Latent Space Exploration),可以將像素渣到馬賽克級別的圖片修復:
該算法可以將模糊、無法識別的人臉圖像轉(zhuǎn)換成計算機生成的圖像,并且具有比之前任何時候都更加精細、逼真的細節(jié)。
按照之前的方法,想要把一張模糊的大頭照變清晰,最多只能將這張照片縮放到原始分辨率的八倍。
而 PULSE,可以僅在幾秒鐘內(nèi),就可以把 16x16 像素的低分辨率小圖,放大 64 倍,變成 1024 x 1024 像素的高分辨率圖像。
這種將像素放大 64 倍級別的,絕對是業(yè)界首次。
原本低分辨率照片中無法看到的細節(jié),比如毛孔、細紋、睫毛、頭發(fā)和胡茬等,經(jīng)過 PULSE 算法處理后,都能看得一清二楚:
涉及到實際應(yīng)用方向上,論文的共同作者 SachitMenon 介紹稱:
「在這些研究中,我們只是用面部作為概念驗證。
但從理論上講,該技術(shù)是通用的,從醫(yī)學、顯微鏡學到天文學和衛(wèi)星圖像,都可以通過該技術(shù)改善畫質(zhì)。」
與此類似的,還有谷歌的超強像素遞歸方案,感興趣的朋友可以自行探索。
最后附上 Depix,PULSE 的項目鏈接:
Depix 項目地址:https://github.com/beurtschipper/Depix
PULSE 項目地址:https://github.com/adamian98/pulse