本發(fā)明涉及電子技術,尤其涉及一種圖像處理方法及電子設備。
背景技術:
即時定位與地圖構建(simultaneouslocalizationandmapping,slam)也稱為并發(fā)建圖與定位(concurrentmappingandlocalization,cml),即機器人在未知環(huán)境中從一個未知位置開始移動,在移動過程中根據(jù)位置估計和地圖進行自身定位,同時在自身定位的基礎上建造增量式地圖,從而實現(xiàn)機器人的自主定位和導航。slam空間位姿定位是增強現(xiàn)實(augmentedreality,ar)/虛擬現(xiàn)實(virtualreality,vr)應用中的關鍵技術,slam空間位姿定位需要提取周圍環(huán)境圖像的穩(wěn)定靜止的特征點作為“路標”,當周圍環(huán)境中有運動目標時,運動目標上的特征點會影響定位的精度和穩(wěn)定性。在ar/vr應用中,手勢操作是一種常見的交互方式,然而手勢操作中手掌的運動會影響上述slam定位精度和穩(wěn)定性。
技術實現(xiàn)要素:
有鑒于此,本發(fā)明實施例為解決現(xiàn)有技術中存在的問題而提供一種圖像處理方法及電子設備,能夠消除手勢操作的運動對slam定位影響,從而提升定位的精度和穩(wěn)定性。
本發(fā)明實施例的技術方案是這樣實現(xiàn)的:
一方面,本發(fā)明實施例提供一種圖像處理方法,應用于電子設備,所述方法包括:
獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
確定第一圖像采集裝置采集的包括目標對象的第一圖像;
根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;
對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
另一方面,本發(fā)明實施例提供一種電子設備,所述電子設備包括第一圖像采集裝置、第二圖像采集裝置和處理器,其中所述處理器用于:
獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
確定第一圖像采集裝置采集的包括目標對象的第一圖像;
根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;
對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
本發(fā)明實施例提供一種像處理方法及電子設備,其中,獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;確定第一圖像采集裝置采集的包括目標對象的第一圖像;根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位;如此,能夠消除手勢操作的運動對slam定位影響,從而提升定位的精度和穩(wěn)定性。
附圖說明
圖1為本發(fā)明實施例一種圖像處理方法的實現(xiàn)流程示意圖;
圖2為本發(fā)明實施例另一圖像處理方法的實現(xiàn)流程示意圖;
圖3a為本發(fā)明實施例的場景示意圖一;
圖3b為本發(fā)明實施例的場景示意圖二;
圖4為本發(fā)明實施例一種圖像處理裝置的組成結構示意圖;
圖5為本發(fā)明實施例一種電子設備的組成結構示意圖。
具體實施方式
下面結合附圖和具體實施例對本發(fā)明的技術方案進一步詳細闡述。
本實施例提供一種圖像處理方法,該方法應用于電子設備,該圖像處理方法所實現(xiàn)的功能可以通過電子設備中的處理器調(diào)用程序代碼來實現(xiàn),當然程序代碼可以保存在計算機存儲介質中,可見,該電子設備至少包括處理器和存儲介質。
圖1為本發(fā)明實施例一種圖像處理方法的實現(xiàn)流程示意圖,如圖1所示,該方法包括:
步驟s101,獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
這里,所述電子設備在具體實施例的過程中可以為各種類型的具有信息處理能力的ar或vr設備,例如所述電子設備可以包括手機、平板電腦等。
一般來說,vr或ar設備都包括至少兩個相機,其中一個相機用于獲取包括手勢的圖像(第一圖像),另一個相機用于獲取周圍環(huán)境圖像(第二圖像)。
步驟s102,確定第一圖像采集裝置采集的包括目標對象的第一圖像;
這里,目標對象可以包括用戶的手勢,這樣即判斷所述第一圖像中是否包括用戶的手勢區(qū)域,如果所述第一圖像中包括用戶的手勢區(qū)域,則確定所述第一圖像包括目標對象;如果所述第一圖像中沒有包括用戶的手勢區(qū)域,則確定所述第一圖像不包括目標對象。
步驟s103,根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;
這里,所述第一圖像除了包括目標對象外,所述第一圖像還包括周圍的環(huán)境對象,例如穩(wěn)定靜止的特征點,而這樣特征點往往可以作為路標。
步驟s104,對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
這里,所述過濾是指去除第二圖像中的特征區(qū)域,或者提取除所述特征區(qū)域之外的圖像區(qū)域。在實現(xiàn)的過程中,所述方法還包括:提取特征區(qū)域的特征點,對應地,對所述第二圖像中的特征區(qū)域進行過濾,包括對對所述第二圖像中的特征區(qū)域中的特征點進行過濾。
本發(fā)明實施例中,獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;確定第一圖像采集裝置采集的包括目標對象的第一圖像;根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位;如此,能夠消除手勢操作的運動對slam定位影響,從而提升定位的精度和穩(wěn)定性。
在本發(fā)明的其他實施例中,所述對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位包括:
步驟s141,對所述第二圖像中的特征區(qū)域進行過濾,得到第三圖像;
步驟s142,利用所述第三圖像進行定位。
這里,去除第二圖像中的特征區(qū)域,得到第三圖像,或者提取除第二圖像中所述特征區(qū)域之外的圖像區(qū)域,得到第三圖像。
這里,所述利用所述第三圖像進行定位,包括:
步驟a1,從所述第三圖像中提取周圍環(huán)境圖像的特征點作為路標;
這里,路標一般采用輪廓清晰、路標的圖像區(qū)域滿足預設的大小,如果路標的圖像區(qū)域過大或過小,對定位的精度都會產(chǎn)生影響,一般設置一個圖像占比,例如將圖像區(qū)域滿足圖像占比的對象確定為路標。
步驟a2,將所述第三圖像的路標與預存的圖像中的路標進行對比,得到所述電子設備的相對位置。
這里,由于vr、ar為三維地圖,那么相對位置也是三維方向上的。
從以上實施例提供的技術方案可以看出,1)在包括手勢的圖像中分割出手勢(例如手掌、手指)的區(qū)域;2)標定手勢獲取相機(第一圖像采集裝置)與slam應用相機(第二圖像采集裝置)的相對位姿信息,將手勢應用相機圖像中的手勢區(qū)域映射到slam應用相機圖像坐標系下,得到slam應用相機圖像的手勢區(qū)域;3)在slam算法中對提取到的特征區(qū)域進行過濾,去掉slam應用相機采集的圖像中的手勢區(qū)域,在此基礎上再進行后續(xù)slam算法定位。
本實施例提供一種圖像處理方法,該方法應用于電子設備,該圖像處理方法所實現(xiàn)的功能可以通過電子設備中的處理器調(diào)用程序代碼來實現(xiàn),當然程序代碼可以保存在計算機存儲介質中,可見,該電子設備至少包括處理器和存儲介質。
圖2為本發(fā)明實施例另一圖像處理方法的實現(xiàn)流程示意圖,如圖2所示,該方法包括:
步驟s201,獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
步驟s202,確定第一圖像采集裝置采集的包括目標對象的第一圖像;
步驟s203,確定所述第一圖像采集裝置與第二圖像采集裝置之間的相對位姿信息;
步驟s204,根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域。
在本發(fā)明的其他實施例中,步驟s203和步驟204提供了一種實現(xiàn)所述根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域的方法。
步驟s205,對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
在本發(fā)明的其他實施例中,所述根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域,包括:
根據(jù)所述相對位姿信息將所述第一圖像中的目標對象映射至所述第二圖像采集裝置的第二圖像中,得到所述特征區(qū)域。
在本發(fā)明的其他實施例中,步驟s204,所述根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域,包括:
步驟s241,利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,所述第一位置信息為所述目標對象在所述第一圖像中的位置信息;
步驟s242,根據(jù)所述相對位姿信息和所述第一位置信息確定第二位置信息,所述第二位置信息為所述目標對象在所述第二圖像中的位置信息;
步驟s243,根據(jù)所述第二圖像中的位置信息確定所述特征區(qū)域。
這里,所述利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,包括:所述第一圖像采集裝置為深度相機時,基于點云的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
這里,所述利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,包括:所述第一圖像采集裝置為rgb相機時,基于膚色的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
在本發(fā)明實施例提供一種圖像處理方法,該方法包括:
1)在手勢應用相機圖像中分割出手掌的區(qū)域。
這里,針對深度相機,可以使用基于點云的分割算法得到手掌區(qū)域。針對rgb相機,可以使用基于膚色的分割算法得到手掌區(qū)域。
2)標定手勢獲取相機與slam應用相機的相對位姿信息;如圖3a所示,a圖中示出了在三維場景中手勢30在兩個相機中的位置,b圖示出了手勢在手勢應用相機所采集的圖像中的位置,c圖示出了手勢在手勢應用相機所采集的圖像中的位置,這樣可以將手勢應用相機圖像中的手勢區(qū)域映射到slam應用相機圖像坐標系下,得到slam應用相機圖像的手勢區(qū)域。
3)如圖3b所示,在slam算法中對提取到的特征點進行過濾,去掉手勢區(qū)域中的特征點。在此基礎上再進行后續(xù)slam算法定位。
本發(fā)明實施例中,為了辨別設備中是否應用了該方法,可以通過在一個白墻無紋理的區(qū)域進行手勢操作,查看手勢運動是否對slam的定位產(chǎn)生干擾。
下面簡要介紹一下slam理論,在slam理論中,第一個問題稱為定位,第二個稱為建圖,第三個則是隨后的路徑規(guī)劃。在實現(xiàn)的過程中,slam應用相機一般可以采用kinect相機,其測量范圍在3米(m)至12m之間,精度約3厘米(cm)。
一般來說,機器轉過了一定的角度,但究竟轉過多少度就要靠計算機來求解了。這個問題稱為相機相對姿態(tài)估計,經(jīng)典的算法是迭代最近點(iterativeclosestpoint,icp)。這個算法要求知道這兩個圖像間的一組特征點(匹配點),即牽涉到兩個簡單的問題:特征點的提取和匹配。在應用過程中可以通過尺度不變特征變換(scale-invariantfeaturetransform,sift)提取的特征點與匹配結果。得到一組特征點后,計算兩個圖像間的轉換關系(即映射關系),也叫pnp問題,它的模型中是關于r和c的函數(shù),其中r為相機的姿態(tài),c為相機的標定矩陣。r是不斷運動的,而c則是隨著相機固定的。只要不斷匹配下去,定位問題就能夠解決,不過還需要引入一個關鍵幀的結構(發(fā)現(xiàn)位移超過一個固定值時,定義成一個關鍵幀)。然后,把新的圖像與關鍵幀比較就行了。至于建圖,就是把這些關鍵幀的點云拼起來。
本發(fā)明實施例提供一種圖像處理裝置,該裝置所包括的各單元、各單元所包括的各模塊,以及各模塊所包括的各子模塊,都可以通過電子設備中的處理器來實現(xiàn),當然也可通過具體的邏輯電路實現(xiàn);在實施的過程中,處理器可以為中央處理器(cpu)、微處理器(mpu)、數(shù)字信號處理器(dsp)或現(xiàn)場可編程門陣列(fpga)等。
圖4為本發(fā)明實施例一種圖像處理裝置的組成結構示意圖,如圖4所示,所述裝置400包括獲取單元401、第一確定單元402、第二確定單元403和定位單元404,其中:
所述獲取單元401,用于獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
所述第一確定單元402,用于確定第一圖像采集裝置采集的包括目標對象的第一圖像;
所述第二確定單元403,用于根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;
所述定位單元404,用于對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
所述定位單元404包括過濾模塊和定位模塊,其中:
在本發(fā)明的其他實施例中,所述過濾模塊,用于對所述第二圖像中的特征區(qū)域進行過濾,得到第三圖像;
所述定位模塊,用于利用所述第三圖像進行定位。
在本發(fā)明的其他實施例中,所述定位模塊包括提取子模塊和對比子模塊,其中:
所述提取子模塊,用于從所述第三圖像中提取周圍環(huán)境圖像的特征點作為路標;
所述對比子模塊,用于將所述第三圖像的路標與預存的圖像中的路標進行對比,得到所述電子設備的相對位置。
在本發(fā)明的其他實施例中,所述第二確定單元包括第一確定模塊和第二確定子模塊,其中:
所述第一確定模塊,用于確定所述第一圖像采集裝置與第二圖像采集裝置之間的相對位姿信息;
所述第二確定模塊,用于根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域。
在本發(fā)明的其他實施例中,所述第二確定模塊,用于根據(jù)所述相對位姿信息將所述第一圖像中的目標對象映射至所述第二圖像采集裝置的第二圖像中,得到所述特征區(qū)域。
在本發(fā)明的其他實施例中,所述第二確定模塊,包括分析子模塊、第一確定子模塊和第二確定子模塊,其中
所述分析子模塊,用于利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,所述第一位置信息為所述目標對象在所述第一圖像中的位置信息;
所述第一確定子模塊,用于根據(jù)所述相對位姿信息和所述第一位置信息確定第二位置信息,所述第二位置信息為所述目標對象在所述第二圖像中的位置信息;
所述第二確定子模塊,用于根據(jù)所述第二圖像中的位置信息確定所述特征區(qū)域。
在本發(fā)明的其他實施例中,所述分析子模塊,用于所述第一圖像采集裝置為深度相機時,基于點云的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
在本發(fā)明的其他實施例中,所述分析子模塊,用于所述第一圖像采集裝置為rgb相機時,基于膚色的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
這里需要指出的是:以上裝置實施例的描述,與上述方法實施例的描述是類似的,具有同方法實施例相似的有益效果。對于本發(fā)明裝置實施例中未披露的技術細節(jié),請參照本發(fā)明方法實施例的描述而理解。
基于前述的實施例,本發(fā)明實施例提供一種電子設備,圖5為本發(fā)明實施例一種電子設備的組成結構示意圖,如圖5所示,該電子設備500包括第一圖像采集裝置501、第二圖像采集裝置502和處理器503,其中所述處理器503用于:
獲取所述電子設備的第一圖像采集裝置采集的第一圖像,以及第二圖像采集裝置采集的第二圖像;
確定第一圖像采集裝置采集的包括目標對象的第一圖像;
根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域;
對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位。
在本發(fā)明的其他實施例中,所述對所述第二圖像中的特征區(qū)域進行過濾,以進行空間定位,包括:
對所述第二圖像中的特征區(qū)域進行過濾,得到第三圖像;
利用所述第三圖像進行定位。
在本發(fā)明的其他實施例中,所述利用所述第三圖像進行定位,包括:
從所述第三圖像中提取周圍環(huán)境圖像的特征點作為路標;
將所述第三圖像的路標與預存的圖像中的路標進行對比,得到所述電子設備的相對位置。
在本發(fā)明的其他實施例中,所述根據(jù)所述第一圖像確定所述目標對象在所述第二圖像中所對應的特征區(qū)域包括:
確定所述第一圖像采集裝置與第二圖像采集裝置之間的相對位姿信息;
根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域。
在本發(fā)明的其他實施例中,所述根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域,包括:
根據(jù)所述相對位姿信息將所述第一圖像中的目標對象映射至所述第二圖像采集裝置的第二圖像中,得到所述特征區(qū)域。
在本發(fā)明的其他實施例中,所述根據(jù)所述第一圖像和所述相對位姿信息確定所述目標對象在所述第二圖像中所對應的特征區(qū)域,包括:
利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,所述第一位置信息為所述目標對象在所述第一圖像中的位置信息;
對應地,根據(jù)所述相對位姿信息和所述第一位置信息確定第二位置信息,所述第二位置信息為所述目標對象在所述第二圖像中的位置信息;
根據(jù)所述第二圖像中的位置信息確定所述特征區(qū)域。
在本發(fā)明的其他實施例中,所述利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,包括:
所述第一圖像采集裝置為深度相機時,基于點云的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
在本發(fā)明的其他實施例中,所述利用所述第一圖像采集裝置的類型信息對所述第一圖像進行分析,得到第一位置信息,包括:
所述第一圖像采集裝置為rgb相機時,基于膚色的分割算法對所述第一圖像進行分析,得到所述第一位置信息。
這里需要指出的是:以上電子設備實施例項的描述,與上述方法描述是類似的,具有同方法實施例相同的有益效果。對于本發(fā)明電子設備實施例中未披露的技術細節(jié),本領域的技術人員請參照本發(fā)明方法實施例的描述而理解。
應理解,說明書通篇中提到的“一個實施例”或“一實施例”意味著與實施例有關的特定特征、結構或特性包括在本發(fā)明的至少一個實施例中。因此,在整個說明書各處出現(xiàn)的“在一個實施例中”或“在一實施例中”未必一定指相同的實施例。此外,這些特定的特征、結構或特性可以任意適合的方式結合在一個或多個實施例中。應理解,在本發(fā)明的各種實施例中,上述各過程的序號的大小并不意味著執(zhí)行順序的先后,各過程的執(zhí)行順序應以其功能和內(nèi)在邏輯確定,而不應對本發(fā)明實施例的實施過程構成任何限定。上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現(xiàn)。以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,如:多個單元或組件可以結合,或可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設備或單元的間接耦合或通信連接,可以是電性的、機械的或其它形式的。
上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元;既可以位于一個地方,也可以分布到多個網(wǎng)絡單元上;可以根據(jù)實際的需要選擇其中的部分或全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各實施例中的各功能單元可以全部集成在一個處理單元中,也可以是各單元分別單獨作為一個單元,也可以兩個或兩個以上單元集成在一個單元中;上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于計算機可讀取存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括:移動存儲設備、只讀存儲器(readonlymemory,rom)、磁碟或者光盤等各種可以存儲程序代碼的介質。
或者,本發(fā)明上述集成的單元如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明實施例的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機、服務器、或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分。而前述的存儲介質包括:移動存儲設備、rom、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內(nèi),可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應以所述權利要求的保護范圍為準。