李云龍,卿粼波,韓龍玫,王昱晨
1.四川大學 電子信息學院,成都610065
2.成都市規劃設計研究院,成都610041
可供性這一概念由生態心理學家Gibson在1966年[1]首次提出,他在1979 年[2]將可供性定義為“The affordances of the environment are what it offers the animal,what it provides or furnishes,either for good or ill.The word affordance implies the complementarity of the animal and the environment.”即環境的可供性描述其可為動物行為活動提供的或正向或負向的支持,反映動物與環境之間的互補性。Norman[3]將可供性進一步解釋為“決定如何使用該事物的基本屬性”,其認為可供性為暗示事物的相關操作提供了充分的線索。比如,旋鈕可以旋擰,按鈕可以按下以及球可以投擲或拍打等。
可供性理論一經提出即受到了廣泛關注,相繼被引入環境心理學[4-5]、城市規劃[6]等相關領域,開展結合可供性基礎理論的研究。近年來,隨著視覺數據逐漸增加,利用計算機視覺直觀地研究可供性漸成趨勢。Gibson認為計算機視覺中應該注重物與人的交互,而不是單純地對物體進行識別。基于此,大量學者和機構開始關注物體與個人的交互,利用計算機視覺領域的技術識別物體的視覺可供性。視覺可供性一方面可以推進機器人領域的發展,促進機器人實現自我控制并完成與人或目標之間的進一步交互。另一方面,對計算機視覺領域而言,視覺可供性的引入可以打破傳統物體檢測任務中的桎梏,利用物體的屬性進一步挖掘其潛在的各類可供性,為物體提供新的使用思路與應用場景。
早期的視覺可供性研究基于傳統的機器學習算法,而隨著深度學習的發展,卷積神經網絡[7](convolutional neural networks,CNN)、條件隨機場[8](conditional random field,CRF)等各類神經網絡在視覺可供性研究中得到越來越多的應用。伴隨傳統機器學習的不斷改進和深度學習的不斷深入,能夠識別的范圍也從簡單的目標識別擴展到對于行為以及物體之間關系的識別研究,在識別的精度上也有大幅的提升。
視覺可供性的分類方式很多,本文與目前已有的綜述[9-12]不同的是首次對于可供性不同分類進行定義,并分別總結檢測方法。本文根據識別方法的不同,將可供性分為功能可供性、行為可供性、社交可供性三大類:
(1)功能可供性是基于物體自身性質判斷的可供性。例如利用物體的外形材質判斷。
(2)行為可供性是基于物體的使用方法判斷的可供性。例如利用人或機器人使用物體的行為判斷。
(3)社交可供性是基于目標間關系判斷的可供性。例如利用環境各要素之間或個體之間的關系判斷。
圖1展示了可供性的分類關系。

圖1 視覺可供性分類Fig.1 Visual affordances classification
視覺可供性最基礎的類別為功能可供性,即通過識別物體的外形、形狀、材質等判斷物體的可供性。
功能可供性關注物體的自身屬性,可以根據判斷方式將其分為顯性功能可供性和隱性功能可供性。顯性功能可供性即可以通過物體某一自身屬性直接推測的功能可供性,而隱性功能可供性則需要在獲取物體自身屬性的基礎之上,結合已有的先驗知識判斷對于該物體而言并不常見的功能可供性。
1.1.1 顯性功能可供性
顯性功能可供性通過物體的單個性質或形狀等直接判斷。基于顯性可供性的性質,大多研究人員將視覺顯性可供性判斷任務同等化為目標檢測任務,使用方法與目標檢測任務的方法相同,包含且不僅限于KNN、CNN、集成的ResNet或Yolo[13]等框架。例如,Ye將可供性理解為目標檢測問題,研究了認知機器人的場景功能理解問題,實現對室內場景中可供性區域的高效識別[14],(如圖2所示)“抓”作為可供性意為可以被抓取,圖2展示了圖片中檢測出存在“抓”這類可供性的區域。

圖2 場景中“抓”的顯性可供性檢測Fig.2 Affordance detection for“grasp”in pictures
1.1.2 隱性功能可供性
隱性功能可供性需要通過已知的可供性與物體的性質推斷。例如,石頭自身具有可以抓取的可供性,如果進一步判斷其有質地堅硬、尺寸合適的物理屬性,即可推斷出該石頭具備與工具錘子類似的敲擊能力,具有“敲打”這個可供性。這些潛在的可供性都不易直接通過物體的特性判斷,而是需要結合先驗知識推斷。SchoelerM等人[15]成功推斷某工具可能存在的另一種用法,如圖3,用石頭代替錘子或用頭盔代替水杯等。

圖3 隱性功能可供性的推斷Fig.3 Recessive affordance inference
行為可供性不直接從物體的物理屬性中推斷,而是需要結合圖像中人類或自身的行為,即使用者的行為進一步進行推理。例如一扇無把手的門,其物理屬性可以描述為“一塊平整的豎立放置的木板”,難以直接推斷出其具備的可供性。而如果結合人推門這一連續的行為動作,則可以直觀地判斷其具有“推”的可供性。現有的行為可供性分析方法主要通過學習包含人物交互的行為圖像或視頻,預測物體所支持的人類活動,進而分析物體的可供性。早期Fitzpatrick等人[16]提出機器人不應該是只對外部刺激產生反應的系統,而應該探索和理解環境。通過學習人類的行為學習與物體互動應當是它們像人類一樣行事和互動的第一步。
如圖4 所示,Pieropan 等人[17]認為人類演示視頻中包含大量人物交互性信息,可以輔助機器人更好地完成針對物體的可供性理解,因此在可供性理解框架中加入了人手與物體交互的RGBD視頻,以便更好地理解人類的活動。

圖4 通過物體使用視頻學習物體可供性Fig.4 Learn object affordances by how objects are used
社交可供性是指在會被環境中其他個體與交互目標的關系所影響的可供性,該類可供性需要基于環境各要素或個體相互間的關系判斷。
例如在圖5中所示,抓取一個人身旁的包是不合適的,因為這個包是屬于那個人,并且操作執行者會違反法律。一把被占用的椅子仍然被認為是一把椅子,人卻不能坐在它上面[18-19],這是因為這把椅子被已經被坐在它上面的人或物體所占用,故它用來坐的可供性不存在了,因此一個物體的某些可供性需要結合它身處的環境來判定。

圖5 社交可供性與環境中的元素聯系相關Fig.5 Social affordances are related to connection of elements in environment
另一方面,社會可供性也與觀察者自身的屬性存在關系,例如給殘疾人提供的專屬座位,對于一個健康的人來說,一般情況下這個座位是不合適去使用的,則可以稱殘疾人專屬座位的可供性對于健康人而言是消極的[19]。
可供性檢測的流程如圖6所示,先對輸入的文件進行預處理,包括目標檢測或目標分割,這樣有利于進一步的可供性檢測。其中預處理不是必須的,但經過預處理后,后續對圖像的處理效率更高。

圖6 可供性檢測流程Fig.6 Affordance detection process
可供性檢測的核心部分如圖7所示,主要分為傳統機器學習的方法和深度學習的方法。其中基于機器學習的方法包括K最鄰近[20](K-nearest neighbor,KNN)、支持向量機[21](support vector machine,SVM)等,而基于深度學習的方法則利用CNN[7]、CRF[8]等網絡進行可供性檢測。

圖7 可供性檢測方法Fig.7 Affordance detection method
功能可供性由目標的物理特性等性質直接體現,對視覺功能可供性的檢測旨在通過視覺信息對物體直接顯現的可供性進行判斷。可供性概念提出后,早期研究僅考慮了顯性可供性,大多數方法為目標檢測,與圖像處理中的目標檢測算法相似,使用KNN[20]、CNN[7]等基礎方法即可實現。如今對于隱性可供性的檢測,需要在檢測到物體顯性可供性的基礎上,對不易直接檢測出的潛在可供性進行推斷,需要結合物體性質、顯性可供性和先驗經驗綜合推斷,故隱性可供性檢測方法框架更加復雜。在表1 中呈現了有關功能可供性的檢測方法發展,展示了部分代表性和部分較新的研究。

表1 功能可供性檢測研究Table 1 Functional affordance detection research
在早期可供性理論的定義還未統一時,傳統機器學習方法已經被用來檢測物體的功能可供性,其方法是成功檢測到物體后,通過該物體對應的標簽來確定其可供性。伴隨機器學習理論的發展,越來越多的學者使用SVM、KNN、貝葉斯網絡等機器學習方法檢測更加廣泛的可供性種類。Stark和Bowyer[22]最初構建了基于形式和函數的通用識別系統,根據對象的功能來識別對象,而不是使用分配給多個函數基元來進行基于函數的識別,此研究作為對于可供性識別的開端。早期,Piyathilaka等人[23]使用SVM對可供性的檢測研究用于實現更好的人機交互,提出了通過查看環境幾何特征來繪制可供性地圖。最后使用SVM分類器作為映射可供性的二進制分類器解決多標簽分類問題,以完成可供性識別。
KNN 作為一個理論上比較成熟的方法,也是最簡單的機器學習算法之一,常常被用在可供性檢測之中。近來對于KNN算法的使用往往結合其他的算法以提高KNN 的精度或簡化運算。Hermans 等人[24]引入一種依賴于物理和視覺特征的方法,如材料、形狀、大小和重量,來學習可供性標簽。基于這些特征,同時使用SVM和KNN分類器來測試方法。這種方法強調了結合物理和視覺特征可以增強可供性理解的概念。
Hjelm等人[25]將物體的RGBD 圖片轉化為2 維圖像和點云,并將物體的特征分為全局特征和局部特征。使用large margin component analysis(LMCM)的正則化版本LMCA-R,將輸入空間的每類結點的K階最鄰近結點聚集,同時將非同類成員分散,損失函數使用梯度下降法。可供性類別分類中,為每個可供性類別學習一個特定的值L,將問題理解為二元決策問題,對L使用kNN對可供性進行分類,最終達到可以定位對象的重要部分以分類到可供性。
由于隱性可供性起步較晚,且需要對已有的信息進行綜合判斷,大部分傳統機器學習方法無法高效完成此問題,故傳統機器學習只有對于顯性功能可供性的檢測。同時伴隨近十年深度學習的提出和改進,深度神經網絡已經實現了遠遠超過傳統機器學習方法的精確度,并且由于傳統機器學習不能在獲得更多數據的情況下準確率繼續穩步提升,因此近期使用深度學習進行顯性功能可供性檢測的研究也更多。
和傳統機器學習算法相比,深度學習的一個主要優勢是它能夠從訓練集中包含的有限特征集合中推斷出新的特征,準確率更高、適用性更強。近幾年,深度學習在圖像、聲音、視頻方面的處理都取得了較為出色的成果,同樣伴隨CNN、RNN 等發展,深度學習在物體可供性檢測方面也有著較為顯著的成果。
2.2.1 顯性功能可供性檢測
CNN是一類包含卷積計算且具有深度結構的前饋神經網絡,是深度學習的代表算法之一,在功能可供性的識別中也是常被使用的方法之一。Roy等人[37]使用四個多規模的CNN進行可供性分割:三個多尺度CNN獨立應用于圖像,以提取三個線索——深度圖、表面法線和場景中粗層表面的語義分割;另一個多尺度CNN用于融合這些中級線索,以進行像素可供性預測。Nguyen等人[38]提出了一種從RGBD 圖像中檢測對象可供性的實時方法訓練一個深度卷積神經網絡,以端到端的方式從輸入數據中學習深度功能。在之后Nguyen 等人提出了[27]一種使用深度卷積神經網絡、目標檢測器和密集條件隨機場檢測現實場景中對象可供性的新方法,并成功應用于全尺寸人形機器人。此方法第一階段,通過在文獻[39]中提出的R-FCN 方法作為目標檢測器預測輸入圖像的邊界框和對象類別,以完全卷積的方式訓練一個非常深的網絡。第二階段,從語義分割網絡中獲得提供分割結果,為了能夠生成對于每個像素可供性預測的熱圖,將VGG-16網絡最后一層替換為1×1的10維的卷積層來預測數據集中每個類的分數,之后將其所有全連接層轉換為卷積層。下一步,使用基于CRF的后處理模塊來進一步提高提供分割的準確性。
在目前已有的很多成熟圖像檢測算法的基礎上,對其進行針對于功能可供性檢測的改進,也可得到較好的效果。Luddecke 等人[28]提出了改進版ResNet 架構[40]的殘差卷積神經網絡,并且獲得了較好的效果。Ko 等人[41]也使用Yolo進行目標檢測,下一步進行主成分分析以判斷可供性,并達到理想的效果。
但直接使用目標檢測的方法會面臨一個目標中存在多個區域與人交互等目標檢測原本不存在的問題,故Abdalwhab 等人[42]引入了一個單階段可供性檢測框架,利用特征融合來提高視覺可供性檢測性能。將已知性能良好的分割模型SegNet[43]開始作為模型主干,通過在每次采樣步驟后將可供性與編碼器學習的相應可供性合并到下一層之前來增強此架構。下一步,通過將低分辨率、加強語義的功能與高分辨率功能相結合,實現更好的特征表示。Wu 等人44]提出一個可供性檢測框架ASPN(affordance space perception network),ASPN 是一個完全卷積的拓撲,用于用RGB 圖像輸入近似可供性映射,該網絡以圖像為輸入并輸出可供性地圖。與推斷圖像空間像素概率可供性地圖的現有作品不同,此處的可供性是在現實世界中定義的,消除了人工校準的必要性。Yin等人[29]使用SEAnet作為主要框架,加入空間梯度融合模塊與共享梯度注意力模塊,對于可供性檢測與可供性語義邊緣檢測更加一致。
綜上所述,常見的方法是使用兩個獨立的深度神經網絡模型分別執行可供性分割和對象檢測任務。然而,這種常見方法的缺陷是大大降低了整個系統的處理速度,并且網絡模型的計算復雜性大大提高。另一種可行的方法是使用多任務網絡模型同時執行兩項任務,但多任務網絡的設計比單任務網絡更困難。
2.2.2 隱性功能可供性檢測
物體檢測及其可供性的推理是視覺智能的一個基本問題。大多數工作將這個問題轉換為分類任務,訓練單獨的分類器來標記對象、識別屬性或分配賦值。Zhu等人[30]使用知識庫(knowledge base,KB)表示進行對象提供推理的問題。對象的多樣化信息首先從圖像和其他元數據來源中獲取,使知識庫包含廣泛的異構信息,包括對象屬性、可供性、人體姿勢等,之后使用馬爾科夫邏輯網絡[45](Markov logic network,MLN)通過學習關系來構建知識庫,即一般規則的權重,通過加權的一階邏輯知識庫指定馬爾可夫隨機場,以構建知識庫。最后無需訓練單獨的分類器就可完成一套不同的視覺推理任務,包括對人類姿勢的預測和對象識別。例如蘋果在知識圖中,一些描述其視覺屬性的節點與可供性連接,如形狀、顏色、質地等節點與可食用連接。
在此之后,Zhu等人[46]再次提出面向任務的建模、學習和識別,旨在了解將對象用作“工具”的基本功能、物理和因果關系,提出物體識別。不僅僅是記住每個類別的典型外觀示例,而是推理各種任務中的物理機制,以實現概括。在此基礎上,Schoeler 等人[15]成功推斷工具的任何可能用法,證明了可以識別各種工具甚至不常見的工具類型,系統“理解”對象可以用作臨時替代品。例如,頭盔或空心顱骨可用于運輸水,是因為都存在一個空間可以儲存水。但是這個框架忽視了對象的大小,并且未考慮目標屬性,僅僅通過形狀判斷。近期Nair 等人[31]討論了任務規劃背景下的工具構建問題,引入了一種名為可供性引導搜索的方法,使機器人能夠在無法獲得執行任務所需的工具的情況下有效地構建和使用工具。在此之后,Fitzgerald等人[32]在工具的替代問題進行了更深一步的研究,表明交互式校正中學習的模型可以推廣到為新工具有類似可供性的其他任務。
綜上,在隱性可供性探索的前期,主要方法為通過找到目標的各部件和各部件的關系,并且學習其中的聯系進行隱性可供性檢測。隨著時間的發展,隱性可供性的研究集中到了目標物體的功能可供性擴展,其中包含三個關鍵步驟:探索、評估以及將隱性可供性運用到任務。
行為可供性通過物體被使用的一系列行為動作判斷,其需要檢測視頻或圖像中正在發生的行為,或者類人機器人對于自己正在執行的行為或正在交互的物體進行理解。以動作倒水為例,Mottaghi 等人[47]認為機器人在完成該動作時需要估計杯子的體積,近似水罐中的水量,并預測傾斜水罐時的水的行為,容器的角度等。在表2中呈現了有關行為可供性的檢測方法發展,展示了部分代表性和部分較新的研究。

表2 行為可供性檢測研究Table 2 Behavioral affordance detection research
行為可供性檢測作為實現人與機器人的無縫交互關鍵的一步,與機器人技術、人機交互、認知科學、人工智能、動作識別等多個學科共同實現。行為可供性在機器人理解環境并與之交互中起到了關鍵的作用。
在早期,研究可供性運用了SVM分類器的學者中,Ugur等人[48]提出了一個兩步學習過程,引導階段和好奇心驅動(curiosity-driven learning)的學習階段。在引導階段,使用初始交互數據來查找可供性的相關感知特征,并訓練SVM分類器。在好奇心驅動學習階段,使用SVM決策超平面的好奇心決定給定的互動機會是否值得探索。
Akgun 等人[49]使用SVM 分析機器人與一組不同類型和大小的對象進行交互,以學習其環境中的可供性關系。首先控制機器人對物體進行敲擊,物體由初始特征變為最終特征,從最終特征中減去初始特征得到所有物體的效應特征;下一步,使用1D 鄰域的Kohonen selforganizing maps(SOM)[58]進行聚類;再通過ReliefF 算法[59],將相關性強的效應特征整合為相關特征;最后使用分類標簽和相關特征共同訓練SVM,最終將初始特征與動作聯系,機器人由此可以執行特定動作并預測它對物體產生的效果。此研究證實了SVM分類器可以使用相關特征成功地學習效應類別。
Koppula 等人[60]通過給定一個RGBD 視頻,將人類活動和對象可供性聯合建模為馬爾可夫隨機場,之后選擇使用結構支持向量機(SSVM)方法來進行機器學習以判斷行為可供性。
貝葉斯網絡又稱信度網絡,是貝葉斯方法的擴展,是目前不確定知識表達和推理領域最有效的理論模型之一。Hassan等人[61]為了實現對行為可供性的檢測,分別運用SVM、KNN和貝葉斯網絡構成檢測模型,對正在進行的操作圖像進行圖像檢測,經過對比結果,使用基于貝葉斯網絡的方法構建最終可供性模型準確率最高。
基于深度學習的方法較傳統方法在進行行為可供性檢測時對于不同行為的檢測更加高效,學習能力更強。Gupta等人[51]提出了一個以人為中心的場景理解范式,用于估計3D場景幾何形狀,預測以數據驅動的人類互動詞匯,以表示的人類“工作空間”。在有著內場景理解和運動捕捉數據方面[62-63]工作的基礎上,創建一個人類姿勢和場景幾何的聯合空間。但其只著重于對相互作用的檢測,而未強調物體本身的可供性。之后Qi 等人[52]提出一種使用ST-AOG 觀測RGBD 視頻以預測人類未來的運動的方法,其中使用隨機語法模型來捕獲事件的組成結構,整合人類行為、物體及其可供性。
行為可供性的研究在對物體的可供性檢測之外也包括對于人類活動的理解,Li 等人[64]提出了一種高效、全自動的3D 人姿勢合成器,該合成器利用從二維學到的姿勢分布和從三維中提取的可供性。其在此之后開發了一個3D 可供性能力預測生成模型,該模型從單個場景圖像中生成具有完整3D信息的可信的人類姿勢。
行為可供性識別的另一個方向是使用現實或虛擬的機器人進行實際操作。Shu等人[65]使用ST-AOG作為可供性檢測方法,從人類交互的RGBD 視頻中學習,并輸出到類人機器人,以實現實時運動推理人機交互(human-robot interaction,HRI)。Chu 等人[66]通過語義分割預測對象的可供性,并用于真實的機器人操作。Mandikal 等人[67]將以對象為中心的視覺可供性模型嵌入到一個深度強化學習循環中,以學習使用人們更傾向的對象區域。模型由兩個階段組成。首先,訓練一個網絡,從靜態圖像預測可供性區域。其次,使用可供性來訓練動態抓取規則。Zhao 等人[54]考慮了多可供性之間的共生關系以及可供性和客觀之間的組合關系。與現有CNN 的方法不同,所提出的網絡以端到端的方式直接從輸入圖像生成像素提供映射。
靜態的視覺觀察只能識別物體的一些特征如形狀和紋理。如果不了解對象的全部范圍而規劃動作可能會導致策略失誤,Veres等人[53]針對這個問題,主要研究了機器人抓取時所需要考慮的屬性,例如物體表面的摩擦力或者物體的剛度都進入可供性一起進行考慮,提出通過機器人手腕上的力和扭矩讀數,將CoM 隱含地納入抓取承受力預測中。其主要是對文獻[68]中的框架進行了改進,將引導網絡方法擴展到感官反饋的機器人抓取問題。先使用CNN 模型,通過幾個卷積加池化操作對RGB對象圖像進行編碼。此深度學習網絡同時由另一個CNN和MLP編碼RGB圖像和力/扭矩讀數的形式展示了k與之前完全相同的物體的抓取嘗試的預測抓取成功的概率。
以前的方法通常將移動對象視為主對象,并依靠光流來捕獲視頻中的運動線索,當嘈雜的運動特征與外觀特征相結合時,主對象的定位有幾率被誤導,此時僅靠流動信息不足以區分主物體和一起移動的背景物體。Luo 等人[55]利用視頻中手的位置和行動提供的輔助線索,消除多種可能性,更好地定位對象中的交互區域。此方法在可供性基礎方面取得了先進的結果。
Lu等人[69]建立一個循環雙邊一致性增強網絡(cyclic bilateral consistency enhancement network,CBCE-Net),以逐步調整語言和視覺特征。此外,對比實驗結果表明,在客觀指標和視覺質量方面,此方法在四個相關領域(語義分割、顯著性檢測、可供性檢測和實例分割)都優于九種典型方法,其中包括用于可供性檢測的OSADNet[70]和OAFFD[54]。
社交可供性檢測目的是通過研究個體與環境屬性或環境屬性自身內部的關聯性,探索出更加深層次的可供性的可能或限制。各物體互相或與觀測個體的相互聯系造就的可供性則稱之為社交可供性。現實生活中,人類對物體的感知就一部分取決于時空上下文知識[71-72],鑒于人類對環境已有的了解,這種機制有助于識別未知物體及其可供性[73]。總體而言,對于社交可供性的檢測,重點在于對于物體上下文信息等的推斷,由于社交可供性起步較晚,深度學習已經被熟練運用在此檢測中,例如CRF、CNN 等,故使用傳統機器學習方法的社交可供性研究較少。在表3 中呈現了有關社交可供性的檢測方法發展,展示了部分代表性和部分較新的研究。

表3 社交可供性檢測研究Table 3 Social affordance detection research
Sun等人[74]提出了一種建模目標相互間的可供性的方法,這種可供性關系被用來提高行為識別準確度。其中使用以全監督的方式訓練目標分類器、動作分類器和貝葉斯網絡。首先獲得對目標的操縱和目標的反應的初始可能性,其中目標初始似然度是使用基于方向梯度直方圖(HoG)的滑動窗口目標檢測器估計的。并且據人類手部運動軌跡的特征估計了人類動作的初始可能性。在訓練中,全程跟蹤人手,根據速度的不同對手部動作分段。通過分割和可能的目標位置,檢測出正在交互的目標,最后利用貝葉斯網絡建立人與物體之間的聯系。此實驗通過觀察物體與主動動作之間的聯系來解決機器人學中的技能學習問題。
社交可供性的概念近幾年才開始作為一個明確的研究要點,對于社交可供性這種更加需要探究物體之間的關聯性的任務,傳統機器學習方法性能并達不到深度學習的效率,基于傳統機器學習的社交可供性檢測實例不多。
社交可供性研究的是物體之間的關系,使用深度學習的方法更適合找到各個物體的深層次聯系。為了探究物體之間可供性的影響,Pieropan 等人[75]提出利用對象到對象的時空關系來創建“對象上下文”以及功能描述符來預測人類活動。例如,只有杯子的存在不能確定是否會發生飲酒行為,但旁邊有酒瓶會增加飲酒行為的可能性。其描述了一個概率框架,為場景中物體及其隨時間推移的相互作用建模,但只局限于成對的關系。于是Hu等人[76]提出了一種分析對象間關系和對象內關系的方法,旨在根據對象的功能對其進行分類。他們使用對象的部件上下文、語義和功能來識別它們的可供性。
在過去很少有研究對象-對象交互的任務,而對象交互在機器人操作和規劃任務中發揮著重要作用。在日常生活中,有豐富的對象-對象交互場景空間,例如將對象放在凌亂的桌面上,將對象放置在抽屜里,使用工具推動對象等。Chuang 等人[19]提到為了在社會中自然融合,機器人需要像人類一樣行事,因此機器人需要了解3D 環境施加的可供性和限制,以及在特定場景中哪些行動是社會可接受的。利用空間網狀圖神經網絡(gated graph neural network,GGNN)來推理給定感興趣的操作對圖像中對象的提供。并且基于實例級語義分割映射構建一個圖表,其中節點是圖像中的對象。之后通過將相鄰對象與邊緣連接來編碼節點對的空間關系。最后空間GGNN 模型將每個對象的語義特征表示作為其初始節點表示,并通過在圖表中的鄰近點之間傳播消息來迭代更新其隱藏矢量。這能夠高效地捕捉圖像中的上下文關系。
近期,Mo等人[78]提出了一種對象-內核點卷積網絡(object-kernel point convolutional network),以推理兩個對象之間的詳細交互,以學習各種任務的對象交互。通過構建對象-對象交互任務環境,進行大規模的對象支持學習,無需人工注釋或演示。對大規模合成數據和現實世界數據的實驗證明了該方法的有效性。
總而言之,在社交可供性研究起步階段,都是對小規模的對象-對象交互進行了建模,并通過人工注釋或演示對模型進行了訓練,而近期研究進行了大規模無注釋可供性學習,涵蓋了具有不同形狀和類別的各種對象-對象交互。
目前已經存在的視覺可供性檢測方法框架數量很充足,但其中大部分方法并不適合在運算資源受限的系統中使用,如嵌入式平臺,它們主要目標是提高準確性,未關注所提出解決方案的計算成本。例如,計算機視覺用于智能假肢等移動平臺,在這種情況下,平臺能夠提供的運算資源是有限的,但需要可供性檢測可用于確認物體可供性,此時視覺可供性檢測是必要的。
在輕量化檢測框架這個方向,Yen-Chen等人[79]發現視覺任務的預訓練顯著提高了學習操作對象的泛化能力和樣本效率。因此,將模型參數從視覺網絡直接傳輸到可供性預測網絡,并成功進行零樣本適應,意味著機器人可以無訓練就能抓取物體。只需少量經驗,在拾取新物體方面成功率就能達到約80%。
Tsai 等人[80]提出了一種基于ESPNetv2 的輕量級可供性分割模型,該模型可以有效地提高處理速度,并降低運行時所需的計算需求。采用基于錨點的單級對象檢測模型作為與語義分割分支集成的骨干網絡。依靠單階段網絡架構的優勢,該網絡模型可以通過相對簡單的架構來實現,在高精確度的同時,大幅度提升運算速度,比AffordanceNet 快五倍。Apicella 等人[81]提出了一種利用對象檢測器克服幀問題的可供性檢測通道,減少通道在資源受限平臺上運行的計算負載,構建了具有輕量級結構和嵌入式重新校準技術的抓取候選評估器。
在此之后,Ragusa等人[82]提出并描述了第一個完整的嵌入式設備可供性檢測解決方案即一種基于硬件感知深度學習解決方案的可供性檢測策略。這種解決方案可用于大幅改善基于計算機視覺的假肢控制,在計算成本和準確性之間建立了更好的平衡。因此,該模型在實時嵌入式設備上在功耗有限的情況下實現并獲得了高FPS速率。
綜上所述,輕量化的解決方案應該使用在嵌入式設備上以支持的模型,降低訓練模型的整體硬件需求。其次,應僅通過處理RGB 圖像實現可供性檢測。目前最新的硬件檢測可供性模型可以在標準基準上實現與機器人學的最先進解決方案相同的精度。
對于視覺可供性檢測,數據集的重要性是不言而喻的。利用合適的數據集,結合與之對應的框架與參數能達到最好的檢測可供性的結果。
在本章中,提供了可供性注釋的可用數據集。如表1所示,所使用的文件格式也包括圖像、視頻以及3D 模型。對于視覺可供性,已經提出了許多數據集,以促進從場景中檢測可供性對象,即從輸入圖像中檢測具有可供性或功能性的對象。
如表4所示,對于適用于功能可供性的數據集需要有各類不同的物體與其對應的可供性標簽,此時物體種類越多,則此數據集的應用范圍則越大;對于適用于行為可供性的數據集需要包含動作數據或人物使用物體過程;對于適用于社交可供性的數據集不僅需要有功能可供性數據集的要求,并且需要存在多個有聯系的物體出現在同一圖中,由此也可發現對于社交可供性的數據集制作是有一定困難的。這也是為何近期可供性的數據集主要集中于功能可供性與行為可供性,而極少包含社交可供性。

表4 近期主要可供性數據集Table 4 Recent and primary affordance datasets
有的數據集經過對較早數據集的修正、補充與篩選等更新,使得新數據集更加適合某些特定類型的可供性檢測,或能夠覆蓋更多的場景使得應用面擴大。
視覺可供性是依靠攝像頭理解世界的一個重要途徑,用于判斷環境或物體的交互方式。對于視覺可供性的檢測的兩大應用主體則分別是真人與機器人。
7.1.1 視覺可供性對于真人的應用
可供性識別可以代替人去感受,包括且不限于環境、產品等。使用可供性識別以真人的視角去評估事物,相比于真人的評估更準確與標準:
(1)城市規劃領域:通過以真人視角檢測可供性之后,可以對于一個區域的環境與設施的合理性作出建議[83],比如以小孩或老人視角評估設施環境[84],進而提升環境的兒童友好性或適老性,例如公園環境和設備所包含的可供性能給予兒童直接的感官體驗,包括自然環境、標識以及游戲設備的適宜性等能夠增加兒童的體驗舒適度。
(2)產品設計:通過運用可供性檢測的方式優化產品使得用戶有更舒適的使用體驗,Zhu 等人[85]通過坐在椅子上時不同身體部位的壓力來判斷舒適區間。
7.1.2 視覺可供性對于機器人的應用
可供性識別可以使機器人理解其所處的環境,理解工具的用法,達到一定程度的智能:
(1)操作目標對象:經過視覺可供性識別,機器人可以了解物體的性質與可供性,以便于操作對象。例如對于城市垃圾的處理分類[86],亦或者對于超市自主機器人[87]的加強。
(2)理解目標運動:結合行為可供性的運動檢測,將會幫助機器人理解觀測目標的運動,以便于后續的預測或交互更加合理。
(3)預測目標運動:以機器人視角進行視覺可供性檢測,幫助機器人更加高效預測人的活動[60,88-90],在環境存在指定可供性的情況下,可判斷為目標做特定行為的可能性會變高。Corona 等人[91]根據一個或多個物體的單個RGB 圖像,預測人類將如何抓住這些物體。預測人的活動可以有助于機器人充分理解和響應人的行為。
(4)場景理解:機器人需要掌握使用工具的方法,比如Myers等人[92]提到在廚房的機器人應該要充分理解各種工具的可供性,才能更好地代替人類工作[93]或與人交互,使得它們與人或物體的交互更加合理,使機器人更好理解其所處的環境,也可以運用到AI 使其更加智能。例如加強自動駕駛[94]的可靠性。
(5)發掘工具隱藏功能:隱性可供性檢測可發現工具之間的可替代性,例如當前任務為“開快遞”,在環境中利用隱性可供性檢測達成鑰匙來完成此任務。
(1)目前的視覺可供性識別,主要框架與計算機視覺目標檢測所使用的框架類似,存在的挑戰與目標檢測部分相同:
①視角的多樣性:同一個物體在不同的視角下的外形大多是不同的,所以需要在不同角度下都能識別出物體的可供性。
②物體的形變:現在對于可供性的檢測全部都是剛性物體,也就意味著不包含例如繩子之類的可形變物體,這對于視覺可供性是一個缺失的部分。
③遮擋:遮擋是實際對象可供性估計任務中的常見挑戰。Liu等人[100]制作了用于研究被遮擋物體的可供性的數據集。但是這個問題對于可供性檢測的影響依舊存在。
(2)同時,也存在很多在進行目標檢測時并不會顯現,而是只有在可供性檢測時才會顯現的問題:
①多區域可供性:一個對象中可能存在多個可能的區域可以與人交互,也就意味著,不能將物體看作一個整體,而是對物體自身也要有拆分。
②可供性多樣性:與物體檢測不同,同一對象區域存在多個可能的可供性。
目前視覺可供性檢測主要集中在這三種類型,即功能可供性、行為可供性、社交可供性。而對于未來的發展方向主要分為應用的方向與研究的方向。
7.3.1 未來應用方向
(1)未來可供性識別應用方向廣闊,其中機器人智能設計將為重要的應用領域,通過視覺可供性與機械相結合,可以達到如下成果:
①智能機器人與機械手:對于視覺可供性檢測,最顯而易見的應用為機器人與機械手,將可供性檢測運用到機器人上后,其可以更加智能的服務人類。
②社會輔助機器人:全球人口需求的變化和增加,需要社會輔助機器人為最需要幫助的個人提供更舒適、更安全的環境[109]。
③專用視覺:與日常生活相對應的為專業使用場景,結合視覺可供性,可以比人手更加精準的操作。例如,使用機械臂完成手術時,不會出現人為意外。
(2)不依賴機械實物作為載體,可供性識別可以在其他相關領域創造成果和創新:
①虛擬現實與建模:在虛擬現實中,重要的一點是人與建模出的物體的交互。結合可供性檢測,可以在虛擬現實中更加便捷地對于各類物體進行分類與運用。同時,在直接使用現實物體掃描進行建模的方法相比于直接建模將會更加便捷。
②5G-云端計算:與輕量化設計相對應的是,如果將所有的運算通過5G 放置云端,那么無論是運算速度或是框架的尺度都可以與在本地運算不在同量級。
7.3.2 未來研究方向
(1)目前的挑戰之一,視角的多樣性使物體在不同角度所觀察到的外形不同,對此在未來可以進行如下研究:
①數據集的創建與更新:數據集是對深度學習結果有著重要影響的因素之一。可供性研究的一個重要工作是可供性數據集的制作與優化,目前已經有很多優質的數據集可以使用,不過跟現實世界的復雜性相比,已有的數據集在標簽的種類方面依舊存在局限。同一個物體不同視角下的數據越多,則此問題更易解決。
②多視角兼容性與可遷移:在第一人稱視角下的可供性檢測與第三人稱視角下的可供性檢測是不同的。易于發現的是,第三人稱視角的數據更容易獲得,而機器人使用第一人稱觀察對象,故而在不同角度下對可供性檢測的兼容性是必要的。
(2)目前只能做到對于剛性物體的可供性檢測,而對于繩子一類可變形物體的可供性檢測技術尚不成熟,即物體的形變是現在尚未有明確解決方案的研究方向,可從如下方面進行實現:
①對已有可供性檢測框架改進:對于可形變物體需要更精準地識別與控制,對檢測框架的改進實現對非剛性物體的模擬和操控。
②多傳感器結合:在未來伴隨硬件品質的發展,以及更多種傳感器的出現,將視覺與其他傳感器相結合。例如,將視覺與壓力傳感器相結合共同檢測可供性,那么可以更加準確地判斷物體的硬度可供性。
(3)物體被遮擋條件下的可供性識別目前已有進展且有研究人員制作相關數據庫,在未來這個問題仍可以繼續深入研究:
①對于數據庫的創建與更新。
②對已有計算機視覺框架轉化:目前存在基于深度學習技術,對視覺可供性提出新的研究框架,但對還未運用到可供性方向的圖像識別等框架的改造適配,將最新的研究成果適配于可供性檢測有幾率獲得更好的成果。
(4)物體的不同區域可供性不同和同一區域可供性的多樣性使得可供性檢測與目標檢測有著顯著的差距,未來可能的研究方向如下:
①對于數據庫的創建與更新:目前研究使用的數據庫大都是專供可供性或在原始數據庫技術上為可供性更新的新數據庫。在未來可創建更多適配可供性檢測的數據庫。
②創建新的可供性檢測框架:可供性檢測與目標檢測不同在于可供性除外形等特征外,還可通過使用者的行為或與其他物體的關系來確定,在未來可以創造出更適配可供性檢測的算法框架。
(5)目前已有研究方向的加深同樣是未來可供性檢測研究的重要一環:
①輕量化設計:可見對于視覺可供性檢測的輕量化設計發展才開始被重視,將視覺可供性檢測框架做小,放在嵌入式設備或將整體做快,運算速度更快,則機器人可以有更多的反應時間。
②知識圖譜的更新與創建:在有先驗知識或知識圖譜的情況下,可以更好地去理解圖像或者視頻,基于圖或圖譜的方法和視覺可供性結合將會幫助可供性檢測。目前對于知識圖譜的可供性研究依舊處于缺失狀態,目前Zhu等人[30]使用知識庫表示進行對象提供推理的問題來完成對于隱性可供性的檢測。利用知識圖譜,將物體與可供性的聯系組合,并且通過知識圖譜相互聯系,使得AI應用更智能。
③對已有可供性檢測框架改進;目前基于可供性的機器人行為控制僅能實現簡單動作(例如移動、抓取等一次性動作),而對需要多重可供性共同控制的復雜動作(例如開鎖等復雜性更高的行為)目前仍未能實現。
(6)除以上所述,目前還有如下部分可供性檢測未有顯著成果的研究方向:
①主動視覺檢測:將感知與運動、控制結合,將視覺上升到有意識的、可控制的一個過程。作為生物的視覺可以通過實時調整,能夠在能量消耗和三維感知,分辨率等達到平衡。如果將主動視覺加入可供性檢測,機器人可以通過在新環境中的主動探索,實現智能等提升。
②動態特性:目前僅僅有行為可供性進行對于人的動態檢測,然而目前對于機器人的自我運動依舊是固定場景,未考慮到攝像頭自身運動導致動態場景的情況。
本文對視覺可供性的概念、分類與識別的相關方法對可供性理論誕生以來的文獻進行了綜述。首先將可供性劃分為三種類型,按傳統的機器學習方法和深度學習的方法出發分別進行了闡述和討論;并且梳理了可供性數據集;最后對視覺可供性的應用方向、未來可能的研究方向及潛在的應用領域進行了討論。