摳圖專家要失業了?CV技術加持下的AR,實現隔空摳圖複製粘貼
- 2020 年 5 月 11 日
- AI
作者 | 蔣寶尚
編輯 | 賈 偉
傳說中有一種電腦高手可以在一台電腦上按下Ctrl+C,在另一台電腦上按下Ctrl+V就能進行跨設備粘貼複製。
雖然只是傳說,但有無數的電腦極客為這個目標而努力。而現在利用機器學習+AR技術攻克了這個難題。
利用這個技術只用一部手機就能將書上的圖片直接複製到電腦上,全程用不到10秒鐘。
手寫框架圖自然也不在話下~
這個項目是一位自稱藝術家的法國人創造,據在reddit提供的github地址,發現作者名為Cyril Diagne,此外其還是一家AI公司的聯合創始人。
項目地址://github.com/cyrildiagne/ar-cutpaste
雖然目前僅能用於Photoshop,但作者相信未來可以處理更加不同類型的輸出。從粘貼到複製,完成整個過程需要三個模組:移動APP、本地伺服器、背景移除。
其中,移動APP使用了Expo這個通用的React應用架構和平台搭建,本地伺服器使用了ScreenPoint超早攝影機在螢幕上所指向的位置,背景移除使用的技術是基於被Pattern Recognition 2020 收錄的論文《U^2-Net: Going Deeper with Nested U-Structure for Salient Object Detection》。目前此論文尚找到下載版本,不過論文程式碼已經放出。
程式碼地址:
部署步驟
根據作者Github,整個部署可以分為四步:Photoshop配置、設置外部顯著對象檢測伺服器、配置和運行本地服務、配置和運行移動APP。
Photoshop配置:1.進入「Preferences>Plug-ins」,啟用「遠程連接」,並設置稍後需要的密碼。2.確保PS文檔設置與server/src/ps.py中的設置匹配,否則會粘貼空白。3.確保文檔有背景,如果背景空白SIFT可能無法進行正確的匹配。
設置外部顯著對象檢測伺服器:1.需要使用 BASNet-HTTP作為外部HTTP服務部署BASNet模型;2.將需要部署的服務URL來配置本地伺服器。3.如果在與本地服務相同的電腦上運行Basnet,請務必配置不同的埠。
配置並運行本地伺服器的時候,按照上面的程式碼和說明。
配置和運行APP則需要按照上面的設置。
另外,作者也提到直接在APP中使用像DeepLap此類的技術可能會簡單的多,但是作者還沒有嘗試。
技術細節
該工具使用U2-Net (Qin et Al, Pattern Recognition 2020) 執行顯著目標檢測和背景移除。
然後,利用 OpenCV SIFT 找出手機在電腦螢幕上對準的位置。只需要一張手機照片和截圖,就可以得到準確的 x, y 螢幕坐標系。
U^2-Net架構
據論文作者介紹,U^2-Net與當前20餘種SOTA方法進行對比實驗後,無論是在模型尺寸還是結構測度等指標都獲得了比較不錯的成績。
U^2-Net工作是對其BASNet (Qin et al, CVPR 2019)工作的更新,論文暫時未放出,不過根據BASNet,我們可以知道在邊界的顯著性檢測方面,其對損失函數的設計進行了創新,使其不再像以前那樣只關注區域精度。
上面是檢測技術,而定位技術是使用的SIFT演算法,全稱是Scale-invariant feature transform,翻譯過來是:尺度不變特徵轉換。是一種不隨影像尺度旋轉變化而變化的特徵,因此SIFT特徵不會隨著影像的放大縮小,或者旋轉而改變,同時由於在提取特徵時做的一些特殊處理,使得SIFT特徵對於光照變化也有比較強的適應性。
SIFT演算法由加拿大英屬哥倫比亞大學教授David Lowe 於 1999 年發表於會議ICCV ,原論文Object recognition from local scale-invariant features ,David Lowe 是唯一作者。
廣為人知的被引用更多的是2004年發表於期刊IJCV的完善版 Distinctive image features from scale-invariant keypoints。2020年3月6日專利到期,可以免費試用,OpenCV里就有。 演算法流程一般為:構建尺度空間、尋找極值點、篩選極值點、計算特徵點的主方向、變換特徵點維度。
該工具使用 OpenCV SIFT 找出手機在電腦螢幕上對準的位置
作者:不會寫程式的設計師不是好藝術家
前面也提到,這項工具的發明者是Cyril Diagne,其自稱是藝術家、設計師、程式設計師,現居住在法國。
2008年畢業於法國巴黎的Les Gobelins學院,這所學校不僅僅是動畫製作專業全球排名第一,還有影像專業和交互設計專業同樣在國際上表現不俗。
畢業之後,他和其他五位學生共同創立了 LAB212公司,並且其本人是Google文化學院實驗室駐場藝術家,也是CAL(瑞士洛桑)的媒體和交互設計負責人。
他的工作重點是將數字技術與非常規技術融合在一起,從而創造詩意版的互動體驗。
他還曾經研究出一種人臉塗鴉工具,藉助 Tensorflow.js、FaceMesh 和 Three.js 即可在網頁瀏覽器上使用 AR 對臉部進行塗鴉。
還有一款可在 Instagram 個人主頁影像上添加 3D 效果的 chrome 擴展程式,效果生成類似於 Facebook 3D 照片功能,讓 2D 照片也能呈現多角度的景象。
圖自:github
Via //mp.weixin.qq.com/s/zZN_xQ7yGZElmrv6fOI0oQ
//inst-int.com/2015/speaker/cyril-diagne/
(雷鋒網)、(雷鋒網)、(雷鋒網)