Facebook最新開源工具——不費吹灰之力識別圖片中的對象

2021-01-09 雷鋒網

聯合編譯:高斐,Blake 

雷鋒網(公眾號:雷鋒網)註:Piotr Dollar於2014年成為FAIR研究科學家,主要研究領域為計算機視覺和機器學習,曾在MSR任職三年,並建立Anchovi Labs(於2012年被Dropbox收購)。2011年在加州理工大學獲得計算機視覺實驗室博士後學位,2007年於UCSD獲得博士學位。在計算機視覺和機器學習方面已發表的最新論文有:Learning to Refine Object Segments (2016), A MultiPath Network for Object Detection (2016), Unsupervised Learning of Edges (2016), Metric Learning with Adaptive Density Discrimination (2016)等。本文著重介紹計算機圖像分割技術及其應用,並對與本文密切相關的三篇論文的主要內容做簡要概括。

計算機能否像人眼一樣不費吹灰之力地識別一張照片包含的許多對象嗎?

面對一個圖像,人們能夠輕鬆識別其中的對象,甚至能夠識別圖像中對象像素高低。在FAIR過程中,我們正在將機器視覺領域的研究推向一個新的發展階段——我們的目標是使機器能夠像人一樣在像素層面理解圖像和物體。

在過去幾年裡,深度卷積神經網絡研究領域取得的進展和更為強大的計算架構的出現為機器視覺系統的精度和性能帶來了突破性的提升與發展。我們目睹了圖像分類(圖像中的內容)與對象檢測(對象的位置)兩種技術取得的巨大進步(見下方圖像中的a,b兩個圖片)。然而,這兩種技術的發展僅僅是理解任意一幅圖像或一段視頻中最相關視覺內容的小小開端。近來,我們正在研發設計能夠識別並分割一幅圖像中的每個對象的技術,見下方圖像右側c圖片,這種技術體現出機器視覺系統的一種關鍵性能,並將帶來全新的應用。

促進我們在圖像分割技術方面取得進步的主要新算法是與我們的Sharpmask 分割微調模塊搭配運用的Deepmask分割框架。兩種圖像分割技術的結合使得FAIR的機器視覺系統具備檢測與精確描述一幅圖像中每一個物體的能力。在圖像識別技術發展的最後階段,我們運用一種專業化卷積網絡,稱之為MultiPathNet(多路徑網絡),旨在依照對象所屬的類別(例如,人,狗,羊)為每一個物體標記掩碼。稍後,我們將具體介紹這種專業化卷積網絡的具體應用。

當前,我們正在為DeepMask+SharpMask和MultiPathNet編碼,我們的研究論文和與研究相關的樣本都對大眾開放,希望我們的努力能夠加速機器視覺領域的研究發展。我們將不斷改善這些核心技術,與此同時,也將繼續發表最新研究成果,更新向該研究領域開放的開源工具。

在像素中尋找模式

下面我們一起來看一下如何為這些算法建模。

大致瞥一眼下方的第一張照片,左邊的一張,你看到了什麼?一位攝影師正在操作他的老式相機。一塊綠草地。圖片背景裡的建築物。你也可能注意到其他無數細節。不過,一臺機器可沒有看到你描述的圖片中的這些人和物,一幅圖像被編碼成為代表每一個像素顏色值的數組,如第二張照片,右邊的一張。因而,我們該如何使機器視覺能夠深度理解一幅圖像,而不僅僅基於像素層面?

這可不是一項輕鬆的任務,因為在實物背景中,對象和場景都趨向無窮變化,對象的形狀、外觀、尺寸、位置、紋理與顏色無時無刻不在變化。綜合考慮上述變化因素和實物場景的內在複雜性、變化的背景、光線條件、世界萬物的多姿多彩,我們不難理解要使機器像人一樣深度理解每一幅圖像該是多麼困難。

我們來了解一下深度卷積神經網絡。深度網絡的架構相對簡單,包含經過訓練的而非設計出的數以千萬計的參數,而不是試圖為對象檢測技術程序化地定義基於規則的系統。這些深度卷積神經網絡能夠自動從成百上千萬標註過的實例學習模型,當看過足夠數量類似的例子,這類網絡開始將學習所得的模式套用到新的圖像中。深度網絡被專門訓練以便能夠回答關於圖像(分類)簡單的「是/否」問答式問題,例如,一幅圖像中是否有一頭羊?

分割物體

我們應當如何將深度網絡應用於對象檢測與圖像分割?我們在DeepMask中運用的技術是將分割看作大量兩分法分類問題。首先,對於一幅圖像中每一(重疊)部分,我們會問:「這個部分中是否包含一個對象」?其次,倘若對於一個特定的部分,第一個問題的答案為「是」,那麼我們對該部分的每一個像素提問:「這個像素是該部分內中心物體的組成成分嗎」?我們運用深度網絡來回答這類簡單問答式問題,通過把我們的網絡設計得更為智能化,使計算方法能夠適用於每一部分和每一個像素,我們能夠快速發現並分割一幅圖像中的所有對象。

DeepMask運用一種極為傳統的前饋式深度網絡設計方法。在此類網絡中,隨著網絡層級逐漸加深,信息將變得愈來愈抽象,所包含的語義信息也將愈來愈豐富。例如,一個深層網絡的初始層可能捕獲邊緣與斑點,而高級層將捕獲更多的語義概念,如動物的臉或四肢。在設計過程中,這些高級層捕獲的特徵將在相當低的空間解析度條件下(由於計算原因及為了保證這些特徵不隨一些像素位置的微小變化而變化)進行計算。這一點呈現出掩碼預測的問題:高級層特徵可以被用於預測那些用於捕獲一個對象基本形狀的掩碼,但是不能精確地捕獲對象的邊緣信息。

我們為什麼運用SharpMask模塊?SharpMask對DeepMask的輸出信息進行微調,生成能夠更為精確地描繪對象邊緣信息的高逼真掩碼。DeepMask在網絡的前饋式通道中粗略預測對象掩碼,SharpMask在深層網絡中使信息反向流通,並對DeepMask通過運用網絡中初始層捕獲的特徵預測所得的信息進行微調。我們可以如此看待該過程:為了捕獲對象的基本形狀,需要對所觀察的對象有高層次的理解(DeepMask),但是為了精確地捕獲對象的邊緣信息,需要依照像素高低反觀低層次特徵(SharpMask)。從本質上來講,運用一個網絡中所有層捕獲的信息,同時監管小型額外的信息,這是我們的目標。

下方是由DeepMask生成,SharpMask微調得到的一些實例輸出信息。為了保持所得對象形象的簡潔性,我們只展示與圖像中實際對象(人為標註)相一致的預測所得的掩碼。需要注意的是,這一系統目前還不夠完備,圖像中呈現紅色輪廓的對象是人為標註出的,而被DeepMask漏掉的信息。

給對象分類

DeepMask只能識別具體對象的類型,因而,儘管該框架能夠詳盡描述一條狗和一頭羊,卻不能對兩者的差異進行區分。此外,DeepMask的性能並不是那麼優越,生成的圖像區域掩碼可能不會太有趣。因而,我們應當如何縮小相關掩碼集,進而識別那些實際存在的對象?

正如你可能預料到的,我們將再次運用深度神經網絡。給定一個由DeepMask生成的掩碼,我們訓練一個獨立的深度網絡,以對每一個掩碼的對象類型進行分類(且「任意一種分類」都不是有效地答案)。我們運用一個由Ross Girshick率先提出的基本參數——區域卷積神經網絡,或縮寫為RCNN。RCNN由兩個階段構成,第一個階段用於注意某些圖像區域,第二個階段運用一個深度網絡識別呈現出的對象。在研發RCNN的過程中,第一個處理階段是極為原始的,通過在RCNN第一階段運用DeepMask,並利用深度網絡的力量,我們在對象檢測精度方面得到了很大的提升,同時也具備了分割圖像的能力。

為了進一步提高深度神經網絡的性能,我們也聚焦於使用一種專業化的網絡架構對每一種掩碼進行分類處理(在RCNN的第二階段)。正如我們前面提到的,現實世界的照片所包含的對象具有尺度多,背景多,分布混亂,經常被遮擋的特點。對於這樣的情況,標準的深度網絡將會出現技術上的難題,為了解決這一難題,我們提出了一種經過改進的網絡,將其命名為多路徑網絡(MultiPathNet)。由其名字可以得知,多路徑網絡允許信息在網絡中沿多條路徑流通,允許這種網絡在多圖像尺度下和周圍的圖像背景下利用流通的信息。

總之,我們的對象檢測系統是一個由三個階段構成的檢測過程:(1)DeepMask生成初始對象掩碼,(2)SharpMask對這些掩碼進行微調,(3)MultiPathNet識別每一個掩碼描述的對象。以下為我們的完整系統生成的一些實例輸出結果:

由於幾年前尚未產生能夠執行該簡單操作的技術,我們的對象檢測系統雖然不甚完美,卻也不至於低劣。

廣泛應用

視覺識別技術具有廣泛的潛在應用前景。研發這一現有的計算機視覺技術,使得計算機能夠識別照片中的物體,例如,不通過給每一張照片直接添加標籤來搜索具體圖像將會變得更為簡單。即使不考慮圖像字幕,盲人群體也能夠了解他們朋友分享的圖片信息,因為該系統能夠向他們傳遞這些信息。

前不久,我們已經驗證過為盲人研發的技術,盲人群體能夠藉助這種技術評估照片,並描述照片的內容。目前,當有視覺障礙的用戶在其信息流中遇到圖像時,僅通過聽取分享照片的人的名字和「照片」兩字,便能夠輕鬆瀏覽Facebook中的照片。我們的目的是為盲人用戶提供更為豐富的圖片信息,例如「照片中包含沙灘,樹和三個面帶笑容的人」。此外,利用我們研發的分割技術,我們設定的目標是為盲人用戶提供身臨其境的體驗,即用戶用手指點擊圖像中的任意位置,系統將描述其點擊的內容,如此用戶便能夠「看」照片。

隨著我們所研發的技術的進步,我們將繼續改善檢測算法與分割算法。你可以想像:有一天,圖像檢測、分割與識別技術將用於增強現實,例如在商業、醫療衛生及其他領域的應用。

此外,視頻中的物體是即時移動,交互變化的,如何將這些技術應用於視頻中,這將成為我們面臨的第二個挑戰。在運用計算機視覺技術看視頻,理解視頻內的即時內容,並對這些內容進行分類三個方面,我們已經取得了一定的進展。實時分類技術有助於挑選出Facebook中一些相關且重要的直播視頻,而將這些精準的技術應用於在時間和空間內檢測場景,物體和動作,終有一天將會實現實時解說。能夠繼續推動這種最優技術的發展,為Facebook用戶提供更好地體驗,我們為此感到興奮。

以下是對與本文內容密切相關的三篇論文主要內容的簡要概括:

 

學習分割候選對象(Learning to Segment Object Candidates)

摘要

近期以來對象檢測系統主要倚靠於兩個關鍵步驟:1.儘可能高效地被預測出一系列對象檢測提議,2.這一系列候選提議隨即被傳遞到對象分類器中。這些方法被證實在實現當下最好的檢測表現的同時還能保持極快的速度。在本文中我們提出了一種新的方式來生成對象提議,介紹一種基於識別卷積網絡的方法。我們的模型結合了兩個目標一起訓練:給定一個圖像部分,系統輸出的第一部分是不知類別的分割掩碼,而系統輸出的第二部分是整個對象裡面可能是中心的區塊部分。在測試中,模型被有效應用到整個測試圖像中並且生成一系列的分割掩碼,它們中每一個都被分配了相應的對象相似分值。測試表明我們的模型在對象檢測提議算法中實現了超過當下最佳的表現結果。特別是與之前的方式對比,我們的模型使用更少的建議獲得了更好的對象檢測表現。另外我們的結果也表明我們的模型能推論出未知的類別(在訓練中未曾見過的)。與之前的所有生成對象掩碼方式不同,我們並不倚靠邊緣、超像素或者其他任何形式的低階分割技術。

 


學習改善對象分割技術(Learning to Refine Object Segments)

摘要

對象分割要求對象層面的信息和低階的像素數據。對於前饋網絡來說這提出了一個挑戰:卷積網絡中的較低層能捕獲豐富的空間信息,網絡中的高層對於對象級別的知識進行編碼,但是存在姿勢和外觀等不變的因素。在本文中我們提出了增加前饋網絡(與一種自上而下的細化方法)來進行對象分割。這種自下而上/自上而下的架構能夠有效地生成高保真的對象掩碼。與跳躍連接類似的是,我們的方法利用了所有網絡層的特徵。與跳躍連接不同的是,我們的方法不會試圖在每一層輸出獨立的預測。相反,我們在前饋傳遞中首先輸出一個初步的「掩碼」,然後在自上而下的傳遞過程中改進掩碼(使用低階成功層級中的特徵)。本方法十分簡單、迅速、有效。基於近期的DeepMask網絡來生成對象提議,我們實現了平均10-20%的準確率提升。另外通過優化整體的網絡架構,我們的方法SharpMask比原本的DeepMask快了50%。


用於對象檢測的多路徑網絡(A MultiPath Network for Object Detection)

摘要

最近的COCO對象檢測數據集提出了幾個新的挑戰,特別是它包含了廣泛尺度範圍的對象,更少的原型圖片,同時要求更精準的定位。為了解決這些挑戰,我們測試了基於Fast R-CNN對象檢測器的三種修改方法:1.跳躍連接給予檢測器能夠權限獲取多重網絡層級中的特徵 2. 一個中心架構在多重對象處理中開發出對象文本 3. 一個能提升定位的內部損失函數以及相應的網絡調整。這些調整的結果是信息能夠沿著我們網絡中多重路徑流動,包括多重網絡層級的特徵以及多重物體的視圖。我們將改進的分類器稱為「MultiPath」網絡。我們將MultiPath網絡與DeepMask對象建議方法組合起來,結合之後的系統在基準Fast R-CNN檢測器與選擇搜索結合之後的表現基礎上提高了66%(該系統在COCO2015 檢測與分割挑戰中都獲得了第二名)。

PS : 本文由雷鋒網編譯,未經許可拒絕轉載!

via: Facebook FAIR

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

相關焦點

  • Facebook開源物體識別工具Detectron,加速計算機視覺研究
    不久前,FAIR才開源了語音識別的工具wav2letter,戳這裡看大數據文摘介紹《快訊 | Facebook開源語音識別工具包wav2letter》。這一系列工具的開源,將使更多研究人員能使用到Facebook的平臺,進一步擴大Facebook人工智慧實驗室的影響力。
  • Facebook推出新AI工具可直接識別圖片中的物體
    要讓計算機學會識別一張照片中的圖像,通常來說,需要先讓它看上千張已經標註好數據的圖片。為了能簡化計算機識別圖像的過程,來自Facebook人工智慧研究實驗室(FAIR)的六名成員利用Transformer神經網絡架構創建了端到端的圖像檢測AI。
  • 橫評:五款免費開源的語音識別工具
    為此,我們對比了五款基於 HMM 和 N-gram 模型的語音識別工具:CMU Sphinx,Kaldi,HTK,Julius 和 ISIP。它們都是開源世界的頂級項目,與 Dragon 和 Cortana 等商業語音識別工具不同,這些開源、免費的工具可以為開發者提供更大的自由度以及更低的開發成本,因此在開發圈始終保持著強大的生命力。
  • 為提升AR對象分類,Facebook開源Detectron計算機視覺算法
    在我最近的一篇文章中,詳細介紹了增強現實如今面臨的三大挑戰,其中的實時對象分類是最大的障礙之一:要讓計算機視覺理解「杯子」的含義,而不是僅僅看到一個形狀,這是一個不容小覷的問題。該文章還指出,「深度學習」有可能是實時對象分類的其中一種解決方案——這種學習涉及「訓練」計算機去解讀它所看到的事物,而不是人工去編寫檢測程序。本周,Facebook已經正式開源了他們的對象檢測算法,這可能會加速能進行實時對象分類的系統的開發,從而讓增強現實發揮真正的功效。
  • Facebook推出新AI工具,可識別圖片中的物體
    PingWest品玩6月4日訊,據澎湃新聞消息,近日,來自Facebook人工智慧研究實驗室(FAIR)的六名成員利用Transformer神經網絡架構創建了端到端的AI工具「DETR」,用於簡化計算機識別圖像的過程。
  • 加速AR對象分類,Facebook開源計算機視覺算法Detectron
    >)Facebook今天正式開源基於深度學習框架的計算機視覺對象檢測算法平臺Detectron。Facebook表示,開源項目是為了加速計算機視覺的研究。目前Facebook內部團隊正把Detectron平臺用於一系列的研究,比如增強現實。在2017年9月30日的一篇文章中,映維網曾介紹過實時對象分類是AR面臨的一大挑戰:令計算機視覺能夠理解「杯子」,而不僅僅只是看到一個形狀,這是一個非常重要的問題。
  • 加速AR對象分類 Facebook開源計算機視覺算法Detectron
    Facebook今天正式開源基於深度學習框架的計算機視覺對象檢測算法平臺Detectron。Facebook表示,開源項目是為了加速計算機視覺的研究。目前Facebook內部團隊正把Detectron平臺用於一系列的研究,比如增強現實。
  • 能夠識別圖片中的物體的智能工具
    近期,計算機科學家史蒂芬·沃爾夫勒姆(Stephen Wolfram)發布了一種新工具,名叫「沃爾夫勒姆圖片識別項目」( Wolfram Image Identification Project)。用戶藉助這項工具首先需要上傳或者連結到一張圖片,然後就可以看到計算機如何來識別圖片中物體。
  • Facebook 發布無梯度優化開源工具 Nevergrad,可應用於各類機器...
    為了使得參數/超參數的調整更快、更簡單,Facebook 創建了一個名叫 Nevergrad(https://github.com/facebookresearch/nevergrad)的 Python 3 庫,並將它開源發布。Nevergrad 提供了許多不依賴梯度計算的優化算法,並將其呈現在標準的問答 Python 框架中。此外,Nevergrad 還包括了測試和評估工具。
  • 6月份Github上熱門的開源項目
    6月份GitHub上熱門的開源項目排行已經出爐啦,一起來看看上榜詳情吧!7. detrhttps://github.com/facebookresearch/detrStar 3999DETR來自Facebook AI,是DEtection TRANSformer的縮寫,它的模型非常簡單,你無需安裝任何庫即可使用它。
  • Facebook 開源 CV 開發平臺 Detectron,打包支持各種物體識別算法
    雷鋒網 AI 科技評論消息,Facebook 人工智慧實驗室今日宣布開源自己的頂級物體檢測研究平臺 Detectron,為廣大研究人員們未來的新計算機視覺研究課題提供靈活、快速的模型實現和評估途徑。這些由 Detectron 在背後支持的算法為實例分割之類的重要計算機視覺任務提供了直觀的模型,也在視覺感知系統這一整個研究社區的研究重點近幾年的飛速發展中起到了重要作用。除了本來計劃的研究用途之外,也有一些 Facebook 團隊用這個平臺訓練自定義模型,並把它們用在增強現實、社區完整性等各種各樣的任務中。
  • 谷歌幫助開發,正式支持TensorBoard | 5大開源項目
    不僅宣布支持TensorFlow的可視化工具TensorBoard,還正式向工業界邁進,為生產環境改進了PyTorch處理分布式訓練的方式。而且,根據Facebook介紹,開發這一版本的過程中谷歌還幫了不少忙。
  • 專注E2E語音識別,騰訊AILab開源語音處理工具包PIKA
    機器之心報導作者:魔王、杜偉PyTorch + Kaldi,騰訊 AI Lab 開源輕量級語音處理工具包 PIKA,專注於端到端語音識別任務。Kaldi 是一個開源的語音識別系統,由 Daniel Povey 主導開發,在很多語音識別測試和應用中廣泛使用。
  • 在線文字圖片識別工具
    騰訊優圖,提供圖片整體文字的檢測和識別服務,返回文字框位置與文字內容。支持多場景、任意版面下整圖文字的識別,以及中英文、字母、數字、常見字符的識別。百度文字識別,支持多場景下的文字檢測識別。OCRMaker,提供在線文字識別,文字提取等服務。
  • 怎麼用工具識別圖片文字?超實用的圖片文字識別方法
    怎麼用工具識別圖片文字?有關圖片識別文字的問題相信很多小夥伴都遇到過,例如當我們看上網頁上的文本內容不能直接提取時,就可以將其製作成圖片的形式然後再用工具識別其中的文字信息達到提取效果。接下來分享一個超實用的圖片文字識別方法,有需要的小夥伴可以學習一下喲!
  • 60款流行網絡工具的開源替代選擇
    開源網絡工具能派得上用處。無論你是在管理大型企業數據中心中成千上萬的系統,還是僅僅把你家裡的幾臺電腦連接起來,開源網絡工具都能幫助你搭建和維護一個低成本的網絡。本文整理出了讓這項任務變得更容易一點的60款開源網絡工具。
  • 語音識別開源工具PyTorch-Kaldi:兼顧Kaldi效率與PyTorch靈活性
    機器之心原創作者:Nurhachu Null本文主要介紹用於語音識別的開源工具——PyTorch-Kaldi。語音識別的最終結果就是在聲學模型得分和語言模型得分上進行搜索得到的。具體的內容這裡不做展開。在語音識別技術的發展史上,深度學習絕對是極具影響力的。可以說,沒有對深度學習的引入,就不會有今天如此先進的語音識別引擎。
  • Facebook 發布 Detectron2:基於 PyTorch 的新一代目標檢測工具
    雷鋒網 AI 開發者按:Detectron 是 FAIR 在 2018 年初公開的目標檢測平臺,包含了大量業內最具代表性的目標檢測、圖像分割、關鍵點檢測算法,該框架主要基於 python 和 caffe2 實現,開源項目已獲得了超 2.2w 的星標數。
  • Facebook AI的DETR,一種基於Transformer的目標檢測方法
    今天,Facebook開源了一個這樣的框架,DETR(DEtection TRansformer)在本文中,我們將快速了解目標檢測的概念,然後直接研究DETR及其帶來的好處。目標檢測在計算機視覺中,目標檢測是一項任務,我們希望我們的模型將對象與背景區分開,並預測圖像中存在的對象的位置和類別。
  • 谷歌推出開源工具DeepVariant,用深度學習識別基因變異
    Root 李林 編譯整理量子位 出品 | 公眾號 QbitAIGoogle今天推出了一個名叫DeepVariant的開源工具,用深度神經網絡來從DNA測序數據中快速精確識別鹼基變異位點。學科研究的革命性進展,特別是基因學上,需要依賴於新技術的出現。比如桑格發明了測序法之後,才實現了人類基因組的測序。