用于數(shù)據(jù)庫創(chuàng)建目的的交互式且自動(dòng)3d對(duì)象掃描方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明大體上涉及圖像辨識(shí),且明確地說,涉及可用于輔助識(shí)別對(duì)象的對(duì)象表示 基礎(chǔ)信息的創(chuàng)建。
【背景技術(shù)】
[0002] 例如數(shù)碼相機(jī)、具有嵌入式相機(jī)的電話,或其它相機(jī)或傳感器裝置等裝置識(shí)別并 跟蹤三維環(huán)境中的對(duì)象。這可用于創(chuàng)建增強(qiáng)現(xiàn)實(shí)顯示,其中關(guān)于系統(tǒng)所辨識(shí)的對(duì)象的信息 可呈現(xiàn)給正觀察所述系統(tǒng)的顯示器的用戶。此類信息可在裝置的顯示器中在真實(shí)環(huán)境的覆 層上呈現(xiàn)。來自對(duì)象數(shù)據(jù)庫從信息可隨后用以識(shí)別裝置所觀察到的環(huán)境中的對(duì)象。
[0003] 特別是具有嵌入式數(shù)碼相機(jī)的移動(dòng)裝置可能具有存儲(chǔ)和處理,特別是與強(qiáng)大的固 定安裝服務(wù)器系統(tǒng)相比。減少實(shí)施此類對(duì)象檢測/跟蹤的系統(tǒng)的處理和帶寬負(fù)載的一種方 法是存儲(chǔ)可用于識(shí)別環(huán)境中的對(duì)象的對(duì)象信息的本地?cái)?shù)據(jù)庫。此數(shù)據(jù)庫信息可基本上被視 為幫助裝置使用存儲(chǔ)在數(shù)據(jù)庫中的模板來識(shí)別對(duì)象的輔助信息。當(dāng)裝置正在增強(qiáng)現(xiàn)實(shí)或?qū)?象識(shí)別模式下操作時(shí),將所述裝置所捕獲的圖像與數(shù)據(jù)庫中的對(duì)象表示進(jìn)行比較,以確定 是否存在對(duì)象匹配,且如果存在,那么將相機(jī)的當(dāng)前姿態(tài)與所識(shí)別的物體進(jìn)行比較。當(dāng)發(fā)生 對(duì)象匹配時(shí),可起始響應(yīng)性操作,或可結(jié)合含有所識(shí)別的對(duì)象的圖像,在裝置顯示器中呈現(xiàn) 關(guān)于所述對(duì)象的額外信息。
[0004] 雖然存在用于創(chuàng)建此類數(shù)據(jù)庫信息的系統(tǒng),但現(xiàn)存的系統(tǒng)無法根據(jù)各種各樣的移 動(dòng)裝置而縮放。此現(xiàn)存系統(tǒng)的一個(gè)實(shí)施例使用所關(guān)注對(duì)象的組合是幾何/紋理模型。這些 模型有時(shí)是對(duì)象生產(chǎn)級(jí)(CAD模型)處已知的,但在大多數(shù)情況下,它們是不可用的。另一 已知方法是使用基于激光或基于IR的掃描系統(tǒng),來同時(shí)估計(jì)幾何形狀并收集對(duì)象的圖像。 然而,此類掃描系統(tǒng)通常較昂貴,且歸因于對(duì)所使用的不同傳感器的物理限制而具有紋理 挑戰(zhàn)。因此,一般來說,所述模型不可用或有點(diǎn)準(zhǔn)確達(dá)到它們會(huì)影響檢測性能的點(diǎn)。
[0005] 用于創(chuàng)建三維對(duì)象表示以用于如本文所述的計(jì)算機(jī)視覺的系統(tǒng)和方法可以當(dāng)前 獲得對(duì)象表示以用于檢測和跟蹤系統(tǒng)的方式來提供改進(jìn)和簡化。
【發(fā)明內(nèi)容】
[0006] 本文中描述用于創(chuàng)建三維對(duì)象表示的系統(tǒng)和方法。一個(gè)實(shí)施例可為捕獲適合于 離線對(duì)象檢測的三維對(duì)象的緊湊表示的方法,其包括:使用裝置的相機(jī)模塊,捕獲場景的多 個(gè)圖像,其中所述場景的多個(gè)圖像中的每一者包含對(duì)象的至少一部分的圖像;識(shí)別多個(gè)圖 像中作為第一關(guān)鍵幀的第一圖像,以及所述裝置的與所述第一圖像相關(guān)聯(lián)的第一位置,其 中所述第一圖像是由所述裝置從所述第一位置捕獲;識(shí)別多個(gè)圖像中作為第二關(guān)鍵幀的第 二圖像,以及與所述裝置的所述第二圖像相關(guān)聯(lián)的第二位置,其中所述第二圖像是由所述 裝置從所述第二位置捕獲,且其中所述第二位置不同于所述第一位置;從所述第一關(guān)鍵幀 識(shí)別第一多個(gè)關(guān)注點(diǎn),其中所述第一多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景的特征;從第二關(guān)鍵幀 識(shí)別第二多個(gè)關(guān)注點(diǎn),其中所述第二多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景的所述特征的至少一部 分;使所述第一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)匹配;至少部分地基于所述第一多個(gè)關(guān) 注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)的所述匹配,來識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn);以及將與所 述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)作為對(duì)象表示存儲(chǔ)在對(duì)象檢測數(shù)據(jù)庫中。
[0007] 額外實(shí)施例可進(jìn)一步操作,其中識(shí)別與對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)包括:對(duì)所述第一多 個(gè)關(guān)注點(diǎn)和所述第二多個(gè)關(guān)注點(diǎn)進(jìn)行濾波,以識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)注點(diǎn)。
[0008] 額外實(shí)施例可進(jìn)一步操作,其中對(duì)所述第一多個(gè)關(guān)注點(diǎn)和所述第二多個(gè)關(guān)注點(diǎn)進(jìn) 行濾波包含包括以下各項(xiàng)中的一者或一者以上:刪除距閾值數(shù)目個(gè)最近關(guān)注點(diǎn)的平均距 離小于閾值距離的關(guān)注點(diǎn);刪除與來自其它關(guān)鍵幀的關(guān)注點(diǎn)不匹配的關(guān)注點(diǎn);以及刪除在 場景的限定容量之外的關(guān)鍵點(diǎn)。
[0009] 額外實(shí)施例可進(jìn)一步操作,其中所述場景進(jìn)一步包含平面目標(biāo),或其中使所述第 一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)匹配包括:從所述第一圖像中的所述平面目標(biāo)的第一 位置識(shí)別所述裝置的所述第一位置;從所述第二圖像中的平面目標(biāo)的第二位置識(shí)別所述裝 置的所述第二位置;確定所述裝置的所述第一位置與所述裝置的所述第二位置之間的相對(duì) 位置;基于所述第一位置與所述第二位置之間的相對(duì)位置,使所述第一多個(gè)關(guān)注點(diǎn)與所述 第二多個(gè)關(guān)注點(diǎn)匹配;以及確定并記錄每一關(guān)鍵點(diǎn)在坐標(biāo)系中的位置。
[0010] 額外實(shí)施例可進(jìn)一步操作,其中每一關(guān)鍵點(diǎn)包括關(guān)鍵點(diǎn)定位信息和關(guān)鍵點(diǎn)描述 符,包括從所關(guān)注的關(guān)鍵點(diǎn)周圍的像素區(qū)域的外形導(dǎo)出的信息。在某些實(shí)施例中,關(guān)鍵點(diǎn)描 述符可包含與關(guān)鍵點(diǎn)和所述關(guān)鍵點(diǎn)周圍的像素相關(guān)聯(lián)的梯度或其它信息。
[0011] 額外實(shí)施例可進(jìn)一步操作,其中識(shí)別作為第一關(guān)鍵幀的第一圖像包括用戶選擇。
[0012] 額外實(shí)施例可進(jìn)一步操作,其中識(shí)別作為第一關(guān)鍵幀的第一圖像包括裝置的自動(dòng) 選擇。
[0013] 額外實(shí)施例可進(jìn)一步操作,其中識(shí)別作為第二關(guān)鍵幀的第二圖像包括:識(shí)別第二 圖像內(nèi)的關(guān)鍵點(diǎn)密度;識(shí)別第二位置與第一位置之間的空間關(guān)系;確定第二位置處的關(guān)鍵 幀將提供具有高于閾值的數(shù)據(jù)值的數(shù)據(jù)以用于對(duì)象表示;以及選擇第二圖像作為第二關(guān)鍵 幀。
[0014] 替代實(shí)施例可為用于捕獲適合于離線對(duì)象檢測的三維對(duì)象的緊湊表示的系統(tǒng),其 包括:裝置的相機(jī)模塊,其捕獲場景的多個(gè)圖像,其中所述場景的所述多個(gè)圖像中的每一 者包含對(duì)象的至少一部分的圖像;一個(gè)或多個(gè)處理器,其(1)識(shí)別所述多個(gè)圖像中作為第 一關(guān)鍵幀的第一圖像,以及所述裝置的與所述第一圖像相關(guān)聯(lián)的第一位置,其中所述第一 圖像由所述裝置從所述第一位置捕獲;(2)識(shí)別所述多個(gè)圖像的作為第二關(guān)鍵幀的第二圖 像,以及所述裝置的與所述第二圖像相關(guān)聯(lián)的第二位置,其中所述第二圖像由所述裝置從 所述第二位置捕獲,且其中所述第二位置不同于所述第一位置;(3)從所述第一關(guān)鍵幀識(shí) 別第一多個(gè)關(guān)注點(diǎn),其中所述第一多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景的特征;( 4)從第二關(guān)鍵 幀識(shí)別第二多個(gè)關(guān)注點(diǎn),其中所述第二多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景的所述特征的至少一 部分;(5)使所述第一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)匹配;以及(6)至少部分地基于所 述第一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)的匹配,識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn);以及 存儲(chǔ)器,其將與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)作為對(duì)象表示存儲(chǔ)在對(duì)象檢測數(shù)據(jù)庫中。
[0015] 此實(shí)施例可進(jìn)一步起作用,其中所述裝置進(jìn)一步包含:顯示器,其耦合到所述相機(jī) 模塊,其中當(dāng)所述裝置的所述相機(jī)模塊捕獲到所述場景的所述多個(gè)圖像的至少一部分時(shí), 所述顯示器輸出所述關(guān)鍵點(diǎn)的至少一部分的圖像。
[0016] 此實(shí)施例可進(jìn)一步起作用,其中所述顯示器進(jìn)一步輸出關(guān)鍵點(diǎn)重疊在對(duì)象上的場 景的視頻圖像,其中所述裝置進(jìn)一步包含運(yùn)動(dòng)傳感器,其中所述裝置的第二位置由一個(gè)或 多個(gè)處理器使用來自運(yùn)動(dòng)傳感器的信息來識(shí)別,或其中所述裝置進(jìn)一步包含:用戶輸入模 塊,其中識(shí)別作為第一關(guān)鍵幀的第一圖像包括在裝置的用戶輸入模塊處接收到的用戶選 擇。
[0017] 此實(shí)施例可進(jìn)一步起作用,其中所述裝置進(jìn)一步包含:天線;以及無線收發(fā)器;其 中一個(gè)或多個(gè)處理器經(jīng)由網(wǎng)絡(luò)、所述天線和所述無線收發(fā)器耦合到所述裝置。
[0018] 另一實(shí)施例可為非暫時(shí)性計(jì)算機(jī)可讀媒體,其包括指令,所述指令在由耦合到所 述非暫時(shí)性計(jì)算機(jī)可讀媒體的處理器執(zhí)行時(shí),致使裝置:使用所述裝置的相機(jī)模塊,捕獲場 景的多個(gè)圖像,其中所述場景的所述多個(gè)圖像中的每一者包含對(duì)象的至少一部分的圖像; 識(shí)別所述多個(gè)圖像中作為第一關(guān)鍵幀的第一圖像,以及所述裝置的與所述第一圖像相關(guān)聯(lián) 的第一位置,其中所述第一圖像是由所述裝置從所述第一位置捕獲;識(shí)別所述多個(gè)圖像中 作為第二關(guān)鍵幀的第二圖像,以及所述裝置的與所述第二圖像相關(guān)聯(lián)的第二位置,其中第 二圖像是由所述裝置從所述第二位置捕獲,且其中所述第二位置不同于所述第一位置;從 所述第一關(guān)鍵幀識(shí)別第一多個(gè)關(guān)注點(diǎn),其中所述第一多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景的特 征;從所述第二關(guān)鍵幀識(shí)別第二多個(gè)關(guān)注點(diǎn),其中所述第二多個(gè)關(guān)注點(diǎn)識(shí)別來自所述場景 的所述特征的至少一部分;使所述第一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)匹配;至少部分 地基于所述第一多個(gè)關(guān)注點(diǎn)與所述第二多個(gè)關(guān)注點(diǎn)的匹配,識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵 點(diǎn);以及將與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)作為對(duì)象表示存儲(chǔ)在對(duì)象檢測數(shù)據(jù)庫中。
[0019] 此實(shí)施例的實(shí)例可進(jìn)一步操作,其中所述指令在由所述處理器執(zhí)行時(shí),進(jìn)一步致 使所述裝置:對(duì)所述第一多個(gè)關(guān)注點(diǎn)和所述第二多個(gè)關(guān)注點(diǎn)進(jìn)行濾波,以識(shí)別與所述對(duì)象 相關(guān)聯(lián)的關(guān)注點(diǎn),作為識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)的一部分
[0020] 此實(shí)施例的實(shí)例可進(jìn)一步操作,其中所述指令在由所述處理器執(zhí)行時(shí),進(jìn)一步致 使所述裝置:刪除距閾值數(shù)目個(gè)其它關(guān)注點(diǎn)的平均距離小于閾值距離的關(guān)注點(diǎn);以及刪除 與來自其它關(guān)鍵幀的關(guān)注點(diǎn)不匹配的關(guān)注點(diǎn),作為對(duì)所述第一多個(gè)關(guān)注點(diǎn)和所述第二多個(gè) 關(guān)注點(diǎn)進(jìn)行濾波的一部分,以識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)注點(diǎn)。
[0021] 此實(shí)施例的實(shí)例可進(jìn)一步操作,其中所述指令在由所述處理器執(zhí)行時(shí),進(jìn)一步致 使所述裝置:刪除在所述對(duì)象的限定容量之外的關(guān)鍵點(diǎn),作為對(duì)所述第一多個(gè)關(guān)注點(diǎn)和所 述第二多個(gè)關(guān)注點(diǎn)進(jìn)行濾波的一部分,以識(shí)別與所述對(duì)象相關(guān)聯(lián)的關(guān)注點(diǎn)。
[0022] 此實(shí)施例的實(shí)例可進(jìn)一步操作,其中作為對(duì)象檢測數(shù)據(jù)庫中的對(duì)象表示的與所述 對(duì)象相關(guān)聯(lián)的關(guān)鍵點(diǎn)中的每一關(guān)鍵點(diǎn)包括坐標(biāo)信息、亮度信息和周圍像素模式信息。
【附圖說明】
[0023] 圖1說明包含將掃描到數(shù)據(jù)庫中的對(duì)象的一個(gè)實(shí)施例的方面;
[0024] 圖2說明根據(jù)一個(gè)實(shí)施例的掃描對(duì)象以為數(shù)據(jù)庫創(chuàng)建對(duì)象表示的方法的方面;
[0025] 圖3A說明包含來自一個(gè)裝置位置的未過濾的關(guān)注點(diǎn)的一個(gè)可能實(shí)施例的方面;
[0026] 圖3B說明包含關(guān)注點(diǎn)的直方圖的一個(gè)實(shí)施例的方面;
[0027] 圖3C說明包含經(jīng)濾波關(guān)注點(diǎn)的一個(gè)可能實(shí)施例的方面;
[0028] 圖3D說明包含經(jīng)濾波關(guān)注點(diǎn)的一個(gè)實(shí)施例的方面;
[0029] 圖3E說明包含組成對(duì)象表示以用于存儲(chǔ)在數(shù)據(jù)庫中的3D關(guān)鍵點(diǎn)的一個(gè)實(shí)施例的 方面;
[0030] 圖4說明與三角測量有關(guān)的一個(gè)實(shí)施例的方面;
[0031] 圖5是結(jié)合本文所描述的各種實(shí)施例使用的裝置的一個(gè)實(shí)施例;
[0032] 圖6是結(jié)合本文所描述的各種實(shí)施例使用的計(jì)算裝置的一個(gè)實(shí)施例;以及
[0033] 圖7是可連接本文所述的各種實(shí)施例中的裝置和數(shù)據(jù)庫的網(wǎng)絡(luò)系統(tǒng)的一個(gè)實(shí)施 例。
【具體實(shí)施方式】
[0034] 本文所述的實(shí)施例涉及用于掃描對(duì)象以創(chuàng)建對(duì)象表示的系統(tǒng)和方法,其中創(chuàng)建所 述對(duì)象表示來優(yōu)化裝置的對(duì)象辨識(shí)。
[0035] 本文所述的實(shí)施例可創(chuàng)建緊湊對(duì)象表示,其可存儲(chǔ)在數(shù)據(jù)庫中,且稍后用來使在 裝置處捕獲的圖像中所見的對(duì)象與此前所掃描的對(duì)象匹配。這可與創(chuàng)建對(duì)象的緊湊表示并 用來跟蹤所述對(duì)象但不存儲(chǔ)以供將來的對(duì)象識(shí)別的其它實(shí)施例區(qū)分開。對(duì)于本文所述的實(shí) 施例,緊湊表示可將大量視頻或圖片圖像壓縮成具有相關(guān)聯(lián)描述性數(shù)據(jù)的相對(duì)少量的關(guān)鍵 點(diǎn)。在一個(gè)實(shí)例中,可處理若干兆字節(jié)的視頻數(shù)據(jù),以實(shí)現(xiàn)具有1〇〇〇個(gè)關(guān)鍵點(diǎn)以及關(guān)于那 些關(guān)鍵點(diǎn)的描述性信息(例如從不同角度觀看的周圍區(qū)域的梯度信息)的緊湊對(duì)象模型。 顯著關(guān)鍵點(diǎn)的提取器可通過首先借助于選擇圖像的子集作為關(guān)鍵幀,將圖像從視頻數(shù)據(jù)中 的所有圖像濾出,來處理此類視頻數(shù)據(jù)。接著可通過關(guān)鍵幀內(nèi)較高對(duì)比度或較高曲率的關(guān) 注點(diǎn)來處理所述關(guān)鍵幀。接著可根據(jù)關(guān)鍵幀上的重復(fù)、其與其它關(guān)注點(diǎn)的接近性,或其它圖 像層級(jí)或幾何關(guān)注點(diǎn)值,來進(jìn)一步對(duì)所述關(guān)注點(diǎn)進(jìn)行排序。此類處理以先前技術(shù)中未知的 方式進(jìn)行,所述處理取得一端上的圖像序列,并產(chǎn)生由顯著關(guān)鍵點(diǎn)及其描述組成的緊湊對(duì) 象。某些實(shí)施例可使用SLAM(同時(shí)定位和映射)或PTAM(并行跟蹤和映射)系統(tǒng)的方面,作 為用于將圖像分為關(guān)鍵幀并建立在圖像上觀察到關(guān)注點(diǎn)與關(guān)鍵幀之間的幾何關(guān)系的裝置, 且接著可另外提供關(guān)注點(diǎn)分段和精簡,以便以先前技術(shù)中未知的方式來從若干組關(guān)鍵點(diǎn)實(shí) 現(xiàn)緊湊對(duì)象。此類系統(tǒng)因此以先前未知的方式提供適合于創(chuàng)建任意對(duì)象的緊湊對(duì)象信息的 數(shù)據(jù)庫的對(duì)象表示的高效創(chuàng)建。此類對(duì)象表示可存儲(chǔ)在不連接到網(wǎng)絡(luò)的裝置上,和可用于 辨識(shí)裝置所捕獲的圖像中的對(duì)象。
[0036] 舉例來說,可將待掃描的對(duì)象放置在緊挨著已知場景的表格上。已知場景可由已 知平面對(duì)象(平面目標(biāo))、已知三維對(duì)象(3D目標(biāo))或兩者的組合給出。目標(biāo)的位置和定向 是將掃描所述對(duì)象的移動(dòng)裝置已知的。這是通過對(duì)先前已知對(duì)象-目標(biāo)的對(duì)象檢測和跟蹤 來實(shí)現(xiàn)。移動(dòng)裝置可為例如具有相機(jī)的電話、處理器和可用存儲(chǔ)器存儲(chǔ)空