專利名稱:手持式設備上的立體(3d)全景圖創(chuàng)建的制作方法
技術領域:
本發(fā)明涉及使用便攜式和/或手持式照相機、數(shù)碼相機、諸如照相機電話或其他手持式設備的其他支持照相機的設備以及具有圖像采集能力的基于處理器的便攜式設備的立體(3D)全景成像。
背景技術:
全景照片是具有非同尋常的大視場、夸大的縱橫比或二者的照片。例如,水平全景照片的寬度遠大于其高度,且具有相對于其垂直視角而言大的水平視角。垂直全景照片的高度可以遠大于其寬度,且具有相對于水平視角而言大的垂直視角。有時也被簡單稱為“全景圖”的全景照片或全景圖像可以提供獨特且有時驚人的景象視圖。全景成像涉及采集擴展的水平景象圖像的序列,且將這些圖像組合成單個擴展圖像。這使得能夠使用具有有限視場(field-of-view)的普通光學系統(tǒng)的標準照相機捕獲“全景的”、典型地是室外景象。備選方法是使用已知為具有高達170’的增強視場的魚眼的專用光學鏡頭捕獲景象。這種專用透鏡需要對透鏡元件的昂貴制造和精確機械加工。在數(shù)碼相機中實施全景成像方法支持以小成本實現(xiàn)類似的結(jié)果。歷史上,一直使用專門制備的照相機獲得全景照片。一種全景照相機在移動膠卷經(jīng)過透鏡后面的狹窄曝光狹縫的同時,使用旋轉(zhuǎn)透鏡和本體跨過大視場進行掠掃。在較早的商業(yè)模型之后,這種旋轉(zhuǎn)照相機(有時稱為“Cirkut型”照相機)可以拍攝360度或更大視場的照片。移動鏡頭照相機以類似原理操作,但是相對于靜止本體和膠卷旋轉(zhuǎn)其透鏡和曝光狹縫。移動鏡頭照相機可以拍攝具有略微小于180度的視場的照片。形成全景照片的另一方法可以涉及拍攝若干重疊的標準或常規(guī)照片(每個典型地具有約3:2的縱橫比或其他小于全景照片中所需縱橫比的值)并將它們一起接合成單個較大照片。該接合典型地使用針對組成部分照片(例如使用數(shù)碼相機拍攝的照片)的數(shù)字表示的計算機操作來完成。將數(shù)字圖像組合成較大照片的處理被稱為“縫合”或“拼接”。原則上,可以縫合任意數(shù)目的組成部分圖像,且所得的全景畫可以覆蓋高達360度或更大的視場??p合可能在計算方面是敏感的。例如,執(zhí)行圖像縫合的軟件可以在縫合組成部分圖像之前,校正可能在組成部分圖像中存在的失真,諸如鏡頭失真和透視失真。另外,找到組成部分圖像之間的正確對準和顏色或色調(diào)平衡可能涉及反映圖像片段之間對準的“良好度”的相關系數(shù)的多次計算。諸如視角變化或鏡頭漸暈之類的效果所導致的色調(diào)變化可以被校正或以其他方式調(diào)節(jié)。執(zhí)行縫合所需的時間隨著組成部分圖像的尺寸或分辨率增加而急劇增加。
一些現(xiàn)代數(shù)碼相機提供一種模式,該模式幫助照相機的用戶拍攝組成部分照片的集合以用于稍后縫合成全景照片。例如,全景模式可以使用照相機上的顯示屏幕來幫助用戶設計每個組成部分照片,以用于與集合中原先的照片進行適當重疊,且可以確保針對集合中所有組成部分照片的一致曝光設置。數(shù)碼相機的至少一個現(xiàn)有模型可以針對低分辨率“屏幕略圖(screen nail) ”圖像的集合執(zhí)行縫合,從而使得攝影者可以檢測諸如組成部分圖像中的不足重疊之類的某些問題。“屏幕略圖”可以包括類似于“縮略圖”圖像的數(shù)字圖像的小低分辨率副本,且尺寸被調(diào)整以符合照相機上的顯示。典型的屏幕圖釘圖像例如可以具有約320X240個像素。該能力在美國專利申請20060182437 (Hewlett-Packard)中描述。然而,原先的數(shù)碼相機并未實時地執(zhí)行高分辨率或全分辨率圖像的縫合,因為在數(shù)碼相機中使用的相對簡單的處理器不能足以快速地執(zhí)行計算敏感的縫合算法以提供滿意的用戶體驗。原先,希望將高分辨率組成部分圖像縫合成全景圖的照相機用戶必須將組成部分圖像上載到外部計算機,并且使用計算機上執(zhí)行的軟件來執(zhí)行縫合。該現(xiàn)有方法涉及使用計算機(可能包括在計算機上安裝附加軟件),并且使用戶不能立即打印或共享全景圖。最近,描述了很多在數(shù)碼相機或諸如照相機手機或智能手機的手持式成像設備上直接創(chuàng)建全景圖像的技術。作為示例,Sorek等人的 US20090022422 (Hewlett-Packard)描述了一種方法,該方法基于幀的內(nèi)容組合至少第一和第二圖像幀,并且基于預定對準在變換域中組合這些幀以形成合成圖像。該方法采用每個圖像中感興趣的公共特征并且使用這些特征來確定兩個圖像之間的水平和垂直對準。圖像的組合可以部分地在執(zhí)行剩余偏移的圖像域中且部分地在可以執(zhí)行塊偏移的變換域中執(zhí)行。在Linder 等人的 US20090021576(三星)(也見 US20090022422)中描述了在照相
機或照相機手機內(nèi)產(chǎn)生全景圖像的另一方法。該方法使用視頻流作為構(gòu)建全景圖像的基礎,該視頻流可以在很多現(xiàn)有技術照相機中采集。它首先采集多個視頻幀,接著是從圖像/視頻序列選擇初始幀。該方法還允許采集附加靜態(tài)圖像以補充原始視頻流。附加視頻和靜態(tài)圖像可以與原始圖像縫合且重疊對準,和/或可以使用運動檢測增強縫合處理。該方法看上去依賴于引導照相機或照相機手機的用戶來移動設備以采集附加圖像。注意該美國公布的專利申請還包括對相關文獻的非常詳細的回顧。在US20060268130中描述另一方法,該US20060268130描述了如下方法,其用于在同時處理較高分辨率圖像的相應序列的同時,從景象的相對低分辨率圖像序列“實時”產(chǎn)生全景圖像、顯示全景圖像以供用戶批準,從而使得一旦用戶承認了低分辨率版本,可以獲得高分辨率全景圖像以進行存儲。注意該技術與US20090021576的相似之處在于它使得用戶能夠在用戶控制下實現(xiàn)用戶修改和/或重新捕獲或添加圖像。兩個申請均給出了用戶界面的重要細節(jié)?,F(xiàn)有技術成像設備當前能夠捕獲幀速率為60pfs的720p或更高的HD視頻以及尺寸為3000X2000像素的靜態(tài)圖像。這種較大圖像以及涉及對準圖像以防止難看的“接縫”出現(xiàn)在全景圖中的增加精確度的處理需求對于全景圖像創(chuàng)建提出了新的挑戰(zhàn),尤其在它希望無需用戶干涉的情況下、“實時”地可靠創(chuàng)建可接受的圖像時。在手持式設備上創(chuàng)建立體 (3D)全景圖像的希望也提出了新挑戰(zhàn)。
圖1說明根據(jù)某些實施例的數(shù)字成像設備的特征,該數(shù)字成像設備被配置成從主圖像采集和處理鏈產(chǎn)生全分辨率主圖像和經(jīng)過子采樣或經(jīng)過尺寸調(diào)整的圖像。圖2示出用于兩個圖像巾貞的水平圖像廓圖(profile)的示例圖示,包括針對兩個圖像幀中的每一個繪制用于每一行的列的求和,其中示出的圖示基本是重疊的。圖3示出在沿著圖2的廓圖計算差異之后的這些廓圖的示例圖示,其中同樣示出的圖示基本是重疊的。圖4示出說明圖2和3的兩個圖像幀之間的運動估算的圖示。圖5示出像素偏移與從視頻或序列圖像幀測量的水平照相機移動的幀數(shù)目之間的關系的圖不。圖6示出像素偏移與從視頻或序列圖像幀測量的垂直照相機移動的幀數(shù)目之間的關系的圖不。圖7A說明從在幀之間基本水平且稍微垂直移動的照相機而獲得的順序圖像縫合在一起的三個圖像,其中三個圖像中的每一個稍微水平且基本垂直地與一個或兩個相鄰圖
像重疊。圖7B說明通過在垂直方向中剪裁圖7A的縫合在一起的三個圖像中的兩個或更多而產(chǎn)生的全景圖像。圖8是說明根據(jù)某些實施例將參考廓圖與偏移廓圖的插值進行比較的圖示。圖9是說明根據(jù)某些實施例相對于子像素偏移的廓圖之間的誤差變化的圖示。圖10說明根據(jù)某些實施例作為處理的一部分在重疊區(qū)域上彼此相向傳播的兩個輪廓(contour)的演進。圖11示出根據(jù)某些實施例從兩個圖像產(chǎn)生且通過處理混合的全景圖像。圖12說明圖11示出的全景圖像的產(chǎn)生中使用的混合遮罩(mask)。圖13說明根據(jù)某些實施例的圖像混合處理。圖14A-14B說明通過在圖像捕獲之間使得數(shù)碼相機移位幾個厘米捕獲兩個圖像,所述圖像捕獲可以用于產(chǎn)生三維組成部分圖像且與另外的三維組成部分圖像組合以產(chǎn)生立體全景圖像。圖15說明來自全景掠掃序列的圖像巾貞,其示出圖14A-14B的數(shù)碼相機的相對水平空間位移,其中圖像對被合并以形成立體全景圖像。圖16A-16B說明在全景掠掃半徑和將被合并以形成立體全景圖像的圖像對的捕獲之間數(shù)碼相機位移的遠遠更短的距離之間的關系。圖17說明使用來自各個關鍵幀的左和右剪裁產(chǎn)生立體(3D)全景圖像的技術。
具體實施例方式提供用于產(chǎn)生立體(3D)全景圖像的方法。將曝光水平固定以用于使用便攜式成像設備采集圖像的全景掠掃序列。成像設備對景象進行搖攝(panning)。使用便攜式成像設備的光學和成像傳感器,采集景象部分的多個至少部分重疊的圖像幀。對圖像幀進行配準,包括確定在圖像幀的采集之間成像設備的位移。產(chǎn)生多個全景圖像,包括根據(jù)空間關系接合景象的圖像幀以及確定多個全景圖像之間的立體對應部分關系。基于立體對應部分關系處理多個全景圖像以形成立體全景圖像。立體全景圖像被存儲、傳送和/或顯示。位移的確定可以涉及測量位移。位移可以包括在一個、兩個或三個維度(包括正交于深度維度的一個或兩個維度以及深度維度本身)中的位移。立體對應部分關系的確定可以涉及使得具有第一預定范圍(配置成提供選擇的立體效果)內(nèi)的相對位移的圖像幀成對;組合成對的圖像幀,以形成組成部分立體圖像;以及保留在第二預定范圍內(nèi)與相鄰成對圖像幀重疊的成對圖像幀。第一預定范圍可以是5-7.5cm。部分重疊可以介于10%至50%的重疊之間。該方法還包括將成對圖像幀的接合與下一圖像幀的采集或產(chǎn)生或二者交錯。第一預定范圍可以被限制為15%或小于成像設備的搖攝半徑。根據(jù)某些實施例,在數(shù)字成像設備跨過全景景象的單次掠掃期間,捕獲多個重疊圖像的單個集合。在這種掠掃期間,確定這些多個圖像中的每一個之間的幀至幀像素位移。這些可能涉及通過預定校準的照相機的實際物理位移;在一些實施例中,照相機可以合入運動檢測子系統(tǒng),該運動檢測子系統(tǒng)可以用作用于測量幀至幀像素位移的備選。來自這種掠掃的初始圖像可以用作關鍵幀或基礎圖像。可以通過將附加圖像接合到該基礎圖像來創(chuàng)建掠掃景象的第一全景圖像。然后,確定從第一關鍵幀圖像具有相對物理位移的第二關鍵幀圖像。在一個實施例中,位移可以處于5-7.5cm的范圍內(nèi),這是人眼之間的距離的量級,不過其他距離也足以提供立體效果。下面參考圖14A-17描述涉及不同位移距離的實施例。可以從相對幀至幀像素位移,或如果它并入了運動感測子系統(tǒng)則通過確定照相機相對運動,或通過其某種組合,來確定相對物理位移。也可以確定和記錄該第二基礎圖像相對于第一基礎圖像的垂直像素位移。這是需要的,以便在手持式設備中垂直對準第二全景圖像和第一全景圖像??梢詣?chuàng)建相同掠掃景象的第二位移的全景圖像。兩個全景圖像垂直對準且被剪裁以消除非重疊區(qū)域。它們?nèi)缓罂梢赞D(zhuǎn)換成標準立體圖像格式,且可以可選地被壓縮。所得的立體全景圖像被存儲、傳送和/或顯示。此處提供了使用便攜式成像設備采集全景圖像的其他方法。在一個方法中,固定曝光水平,以便使用便攜式成像設備采集全景圖像。成像設備跨過全景景象進行搖攝。對全景景象的重疊部分的至少兩個相對低分辨率圖像幀進行采集和處理。處理包括對相對低分辨率圖像幀的集合進行分類和保留。確定相對低分辨率圖像幀的集合中的每個圖像之間的相對位移。還確定相對低分辨率圖像幀的每對圖像之間的近似最佳縫合線。該方法還包括采集且存儲對應于相對低分辨率圖幀的集合的主圖像幀的集合?;谙鄬Φ头直媛蕡D像的集合的相應圖像的相對位移,對主圖像幀進行配準或?qū)驶蚨?。針對低分辨率圖像對確定的一個或多個近似最佳縫合線被映射到被接合以形成主全景圖像的配準和/或?qū)实囊粋€或多個相應主圖像幀對。近似最佳縫合線的確定可以包括確定在近似最佳縫合線附近的alpha混合圖。近似最佳縫合線到高分辨率圖像的映射還可以包括對混合圖進行映射,其中高分辨率圖像的接合包括基于alpha混合圖的映射混合圖像。接合可以包括混合主圖像幀的集合,包括將用于一系列相對低分辨率圖像幀映射到主系列圖像幀的alpha混合圖。被接合以形成全景圖像的組成部分圖像幀中的一個或多個可以被剪裁??梢圆杉跋蟮慕M成部分的兩個、三個或更多低分辨率圖像幀的集合。當連續(xù)圖像之間的水平重疊落在預定范圍之外時,可以告知用戶和/或丟棄圖像。該方法還包括針對相對低分辨率圖像執(zhí)行子像素圖像配準以防止相對低分辨率序列到主序列的alpha混合圖的映射中的像素偏移。主序列的數(shù)字圖像對的接合可以與相對低分辨率圖像的子像素配準交錯和/或與相對低分辨率圖像的相應對的采集和/或產(chǎn)生和/或接合交錯。使用便攜式成像設備產(chǎn)生全景圖像的另一方法包括固定針對使用便攜式成像設備采集全景圖像的曝光水平以及使成像設備跨過全景景象進行搖攝。使用便攜式成像設備的光學裝置和成像傳感器,采集和處理所述全景圖像的重疊部分的至少兩個圖像幀的集合。處理包括分類以及保留包括一個或多個重疊圖像幀對的圖像幀的集合。確定重疊圖像幀集合中的每一個之間的相對距離,包括確定用于每個圖像對的重疊區(qū)域。基于相對位移來對集合的圖像進行配準和/或?qū)?。針對每對重疊圖像幀確定alpha混合圖和/或最佳縫合線。一對或多個對圖像幀被接合以形成被存儲、傳送和/或顯示的全景圖像。相對位移的確定可以包括確定重疊圖像幀的集合的圖像對之間的相對水平位移。圖像列中的像素值可以跨過第一和第二圖像中的每一個進行求和,以確定用于每個圖像的水平圖像廓圖??梢源_定跨過圖像中每一個的列差異廓圖??梢愿鶕?jù)圖像列差異廓圖確定圖像對之間的相對誤差函數(shù)。相對誤差函數(shù)的最小值指示圖像對之間的水平位移的像素列的相對數(shù)目。相對位移的確定還可以包括確定重疊圖像幀的集合的圖像對之間的相對垂直位移。圖像行中的像素值可以跨過第一圖像和第二圖像中的每一個進行求和,以確定用于每個圖像的垂直圖像廓圖。可以確定跨過圖像中的每一個的行差異廓圖。可以根據(jù)圖像行差異廓圖,確定圖像對之間的相對誤差函數(shù)。相對誤差函數(shù)的最小值指示圖像對之間的垂直位移的像素行的相對數(shù)目。在計算圖像對之間的相對誤差函數(shù)之前,可以將平滑函數(shù)應用于每個圖像的列和/或行差異廓圖。使用alpha混合圖或最佳縫合線或二者執(zhí)行接合。接合可以基于確定近似最佳縫合線和alpha混合圖。近似最佳縫合線可以包括圖像對的重疊像素之間約50%的混合比,且該圖可以從近似最佳縫合線附近的圖像對中,提供用于重疊像素的混合比。該方法還可以包括使圖像幀對的接合與下一圖像幀的采集和/或產(chǎn)生交錯。全景圖像也可以被剪裁成均勻的垂直高度。提供使用包括光學裝置、圖像傳感器和處理器的便攜式成像設備產(chǎn)生全景圖像的超分辨率方法。針對使用便攜式成像設備獲取全景圖像,曝光水平是固定的。成像設備搖攝全景景象。采集或處理圖像的兩個或更多集合,每個集合包括全景景象的部分的至少兩個圖像幀。該方法包括分類且保留兩個或更多集合的多個圖像。確定圖像幀的兩個或更多集合中的每一個內(nèi)的每個相鄰幀對之間的相對位移。該方法還包括彼此在圖像集合中的每一個內(nèi)配準的圖像。所述兩個或更多集合中的每一個被接合以形成兩個或更多基本重疊的全景圖像。這些圖像被組合以形成基本相同景象的較高分辨率圖像,該較高分辨率全景圖像被存儲、傳送和/或顯示。兩個或更多基本重疊全景圖像的組合可以包括應用超分辨率技術。較高分辨率圖像的剪裁可以包括從一個或多個組成部分全景圖像中移除一個或多個非重疊區(qū)域。該方法還可以包括確定在圖像幀的兩個或更多集合中每一個的第一或其他相應獲取幀之間的相對位移??梢詫膬蓚€或更多集合中的每一個的圖像得出的組合全景圖像進行配準。該方法可以包括使得圖像幀對的接合與下一圖像幀的采集和/或產(chǎn)生交錯。提供產(chǎn)生全景圖像的另一方法,該方法包括使得被配置成用于采集數(shù)字圖像的基于處理器的設備跨過景象進行搖攝。在搖攝期間,使用該設備采集多個主序列圖像。多個圖像中的每一個包括全景景象的不同角度范圍。同樣,在搖攝期間,采集對應于多個主序列圖像的相對低分辨率圖像,和/或?qū)χ餍蛄袌D像進行子采樣,以產(chǎn)生相對低分辨率圖像。相對低分辨率圖像被接合,以形成將被顯示的低分辨率全景圖?;谙鄬Φ头直媛蕡D像的接合在設備上實時合成多個主序列圖像,以形成主序列全景圖像。接合可以包括縫合和/或匹配曝光、顏色平衡或亮度或其組合;對準和/或配準圖像的邊緣區(qū)域以及混合匹配的對準圖像?;旌峡梢园:谌皥D像的相鄰組成部分圖像之間產(chǎn)生的接縫線。針對使用便攜式成像設備采集全景圖像,可以固定曝光水平。接合可以包括對準和/或配準圖像的邊緣區(qū)域以及混合匹配的對準圖像?;旌峡梢园:谌皥D像的相鄰組成部分圖像之間產(chǎn)生的接縫線。合成可以包括估算搖攝的全局運動以及確定全局運動是否足夠。 合成可以包括估算相對景象位移且確定相對景象位移是否足夠。該方法包括在確定相對景象位移不足時,告知用戶、丟棄圖像中的一個或多個個、和/或中斷該方法。當幀至幀重疊包括介于10%至40%或介于20%至30%的范圍時,可以確定相對景象位移充足,或者如果幀至幀重疊處于諸如10-40%、20-30%的預定范圍之外,則確定相對景象位移不足。估算相對位移可以包括用于多個圖像對的多維運動估算。該方法可以在使用或不使用用戶干涉以及使用或不使用設備運動測量的條件下執(zhí)行。全景圖像可以在存儲之前被壓縮。相對低分辨率圖像的接合可以包括產(chǎn)生alpha混合圖,且alpha混合圖可以用在主序列圖像的接合中。提供用于產(chǎn)生全景圖像的另一方法。該方法涉及使用基于處理器的圖像采集設備,該設備被配置成用于采集全景景象的主序列數(shù)字圖象,且產(chǎn)生和/或采集對應于主序列的相對低分辨率圖像的序列。該設備搖攝全景景象。在搖攝期間,使用設備來采集數(shù)字圖像的主序列。數(shù)字圖像的主序列中的每一個包括不同角度范圍的全景景象?;緦谂c主序列的數(shù)字圖像基本相同的全景景象的相對低分辨率圖像的序列被采集和/或產(chǎn)生。相對低分辨率圖像的序列的圖像被接合以形成相對低分辨率全景圖像。產(chǎn)生相對低分辨率圖像的序列的接合圖。數(shù)字圖像的主序列基于該圖接合以形成主全景圖像,該主全景圖像被顯示、存儲、進一步處理和/或傳送。該方法還包括在搖攝期間估算相對景象位移。全景景象的部分可以在搖攝期間,至少部分地基于相對景象位移的估算來選擇性地捕獲。該方法可以包括在確定相對景象位移不足(例如,當確定幀至幀重疊處于10%和40%或20%至30%之間的范圍或其他設置或選擇范圍之外)時,告知用戶、丟棄圖像中的一個或多個、和/或中斷該方法。估算相對景象位移可以涉及針對多個圖像對的多維位移估算。可以基于相對景象位移的估算確定序列中連續(xù)圖像之間的水平(長全景圖像維度)和垂直偏移。如果序列的圖像小于來自序列的原先圖像的閾值水平偏移,它可以被丟棄。當設備的搖攝不超過閾值運動時,可以告知用戶。當垂直偏移超過使用系列的另一圖像的閾值偏移時,可以告知用戶和/或可以丟棄序列的圖像。主序列和相對低分辨率圖像的接合可以包括縫合??p合可以涉及對準和/或配準圖像的邊緣區(qū)域,以及混合匹配的對準圖像。針對使用便攜式成像設備獲取全景圖像,曝光水平可能是第一位的,和/或接合可以涉及匹配曝光、顏色平衡和/或亮度?;旌峡梢园:谌皥D像的相鄰組成部分圖像之間產(chǎn)生的接縫線。該圖可以包括alpha混合圖,該alpha混合圖包括從相對低分辨率圖像的接合確定的近似最佳縫合接縫的信息。主序列的接合可以包括用于低分辨率序列到主序列的alpha混合圖的映射。該方法可以涉及相對低分辨率圖像的子像素圖像配準,以防止在低分辨率序列到主序列的alpha混合圖的映射期間出現(xiàn)像素偏移。相對低分辨率圖像序列和/或主序列的接合可以部分地基于相對景象位移的估算。還提供了能夠在照相機內(nèi)產(chǎn)生全景圖像的支持便攜式照相機的設備,該設備包括鏡頭、圖像傳感器、處理器和其中具有嵌入的代碼的處理器可讀介質(zhì),所述代碼用于對處理器進行編程以執(zhí)行此處描述的全景圖像產(chǎn)生方法中的任意一個。還提供了其中具有嵌入的代碼的處理器可讀存儲介質(zhì),所述代碼用于對處理器進行編程以執(zhí)行此處描述的全景圖像產(chǎn)生方法其中任意一個。提出在能夠捕獲HD視頻或高分辨率靜態(tài)圖像的數(shù)字成像設備內(nèi)產(chǎn)生高分辨率全景圖像的方法。該方法無需用戶干涉或無需成像設備的運動的外部檢測的條件下執(zhí)行。而且,“實時地”且考慮這種設備上有限的存儲器資源(一般一次可以存儲少量高分辨率視頻幀或靜態(tài)圖像)的情況下,來執(zhí)行所述方法。該方法涉及用戶以自然速度使設備跨過希望捕獲全景圖像的景象進行搖攝。當用戶搖攝場景時,該設備以它捕獲正常視頻序列時相同的方式來顯示景象。該方法涉及比主高分辨率視頻或靜止圖像更低分辨率的圖像序列的捕獲或產(chǎn)生。支持照相機的設備可以合并產(chǎn)生“預覽流”、低分辨率圖像序列的硬件,其典型地用于提供由成像傳感器捕獲的數(shù)據(jù)的實時顯示。當這種預覽流不可用時,設備仍可以具有“圖像子采樣單元”,該單元可以幾乎立即產(chǎn)生全圖像或視頻幀的較低分辨率版本。圖1說明配置成捕獲全分辨率主圖像且從主圖像采集和處理鏈產(chǎn)生子采樣(經(jīng)過尺寸調(diào)節(jié))圖像的數(shù)字成像設備。傳感器102捕獲全分辨率圖像,且圖像數(shù)據(jù)被應用于傳感器處理104和成像管道106。圖像子采樣器108例如通過僅選擇全分辨率圖像數(shù)據(jù)中整體像素的一部分I/η或以其他方式提供子采樣圖像,從全分辨率圖像數(shù)據(jù)產(chǎn)生子采樣圖像,例如其中子采樣圖像的每個像素表示高分辨率圖像中的η個像素。在110,高分辨率圖像可以是壓縮的JPEG。壓縮的全尺寸圖像111可以與子采樣圖像114 一起存儲在存儲器112中,該存儲器112可以是臨時圖像存儲器112。通過接合子采樣圖像114中的兩個或更多個,低分辨率全景圖像116可以被產(chǎn)生,且臨時存儲在圖像存儲112中。低分辨率全景圖像116可以被顯示或不被顯示。圖像后處理器118基于在低分辨率全景圖像116的產(chǎn)生中收集的信息,產(chǎn)生高分辨率圖像120,由此有利地節(jié)省計算資源。高分辨率全景圖像120可以與全尺寸圖像111 一起存儲在諸如SD卡或等同物之類的圖像存儲122中??梢愿鶕?jù)另一實施如下處理低分辨率圖像(或低分辨率圖像)。首先,可以獲得初始低分辨率圖像或視頻幀,且將其用作第一參考幀。相應的高分辨率圖像被存儲。接下來,在某些實施例中獲得附加的低分辨率圖像,且諸如在美國公布的專利申請2008/0309769中所描述,可以在參考幀和每個附加圖像幀之間應用全局運動估算的可選方法,以確定其水平和垂直偏移。如果水平偏移小于預定范圍,則可以與相應高分辨率圖像將一起低分辨率幀丟棄。在某些實施例(例如靜態(tài)照相機)中,相應高分辨率圖像的采集可能仍未完成。在這種情況中,高分辨率圖像捕獲可以簡單地被丟棄且可以啟動新的采集。當在某一時幀內(nèi)沒有實現(xiàn)足夠的水平運動時,處理可以暫停和/或可以顯示錯誤消息,諸如“用戶未使照相機搖攝”。備選地,警告嗶嗶聲可以向用戶指示更快速搖攝。在垂直偏移超過預定閾值時,可以提供錯誤指示以警告用戶他們正在“漂移”。在某些實施例中,在用戶在全景處理中以合理速度使設備跨過景象搖攝時,不涉及用戶方向?!┮呀?jīng)實現(xiàn)了預定水平偏移,例如,在一個實施例中,幀至幀重疊例如可以設置在10-30%和20-40%之間或20%和30%之間,則保留該幀且存儲相應的高分辨率圖像。該保留幀變成下一參考幀,且重復該處理。在基于用戶選擇、預定限制或由于設備存儲器的限制確定足夠數(shù)目的重疊幀之后,暫停采集處理。接下來,使用尤其對于低分辨率嵌入設備有效的方法來“接合”低分辨率圖像。所得的低分辨率圖像然后被剪裁,且可選地可以被顯示以供用戶接受。在形成低分辨率全景圖的低分辨率圖像接合處理結(jié)束時,可以創(chuàng)建用于全景圖中低分辨率或參考圖像幀的相鄰對之間的重疊區(qū)域接合的alpha混合圖。該相同圖然后可以有利地用于接合相應的高分辨率圖像,以創(chuàng)建高分辨率全景圖。該alpha混合圖的使用意味著接合算法不必針對高分辨率圖像進行重復(這將是資源敏感的),因為已經(jīng)從低分辨率圖像的接合有利地確定了每個圖像對之間的“最佳接縫”。在某些實施例中還提供針對低分辨率圖像執(zhí)行子像素圖像配準的方法,以確保當從低分辨率向高分辨率圖像對映射alpha混合圖時不發(fā)生像素偏移。該高分辨率全景圖像然后被壓縮成JPEG且被存儲。在某些實施例中,低分辨率對的接合與新低分辨率圖像幀的采集交錯。在其他實施例中,當在圖像采集鏈內(nèi)提供足夠的硬件支持時,高分辨率圖像部分的接合和JPEG壓縮可以與低分辨率圖像的獲取、配準和接合交錯。圖像縫合根據(jù)某些實施例中,當應用于全景圖像的產(chǎn)生時,圖像縫合可以涉及以下步驟中的任意一個或全部:1.圖像校準,包括透視校正、漸暈校正和/或色差校正,其中可以在該可選階段處
理圖像以改善結(jié)果。2.圖像配準,包括用于平移、旋轉(zhuǎn)和/或焦距的分析,其中可以使用直接的或基于特征的圖像對準方法。直接對準方法可以搜索最小化重疊像素之間的絕對差異的求和的圖像取向。基于特征的方法通過識別在多個圖像中出現(xiàn)的特征且重疊它們來確定適當?shù)膱D像取向。3.圖像混合或以其他方式組合分段可以涉及以下任意一個或全部:顏色校正,包括針對顏色、對比度和/或亮度匹配組成部分圖像的接合區(qū)域,以避免接縫的可見性;動態(tài)范圍擴展;和/或運動補償、去重影和/或去模糊,以補償移動對象。根據(jù)某些實施例的技術不涉及步驟1,而是在采集將被處理成全景圖像的圖像序列之前固定照相機曝光。另外,在某些實施例中,圖像配準可以涉及基于圖像行和圖像列的全局圖像分析,來確定圖像的相對位移,而不是基于可能涉及針對每個相鄰圖像的像素進行計算的本地化逐個像素分析。在步驟3中,在涉及在單個操作中確定alpha混合圖和/或圖像接縫的實施例中,可以消除局部對比度和/或亮度水平的顏色校正和/或分析。有利地,根據(jù)某些實施例的技術可以在無需常規(guī)圖像縫合算法中使用的某些標準步驟的條件下執(zhí)行,和/或同時簡化某些步驟,以提供尤其適于可以具有相對低的系統(tǒng)存儲器和/或計算資源的嵌入式技術系統(tǒng)中實施的方法。這樣,根據(jù)某些實施例的“縫合”技術可以被稱為“接合”,因為它與常規(guī)縫合算法極大地不同。自動全景成像為了創(chuàng)建需要很少用戶輸入或無需用戶輸入的自動全景圖像,根據(jù)某些實施例可以采用以下步驟。首先,為了確??梢越M合所有采集的圖像而無需明顯的幀間顏色或色調(diào)調(diào)節(jié),在采集需要處理的圖像的主集合之前,針對成像設備固定曝光水平。該水平可以簡單地固定在適于采集全景序列的初始幀的水平。在其他實施例中,可以允許用戶手動增加或減小曝光水平。在備選實施例中,可以提示用戶執(zhí)行全局景象的預掃描,使得可以確定整個景象上的平均曝光水平。該“預掃描”可以涉及在主采集掠掃之前跨過全景景象掠掃照相機手機。根據(jù)某些實施例,全景圖創(chuàng)建的第二階段涉及用戶使設備以自然速度跨過希望捕獲全景圖像的景象進行掠掃或搖攝。該設備可以可選地在用戶掠掃景象時以與捕獲正常水平序列或組合靜態(tài)圖像時相同的方式實時地顯示景象。在掠掃或搖攝的結(jié)束時,采集處理可以以很多方式其中任意一種終止:通過檢測(i)在隨后的圖像幀(用戶保持照相機在固定位置)之間沒有變化(或低于閾值的變化);(ii)后續(xù)圖像幀(用戶非??焖俚貙⒄障鄼C移動到不同視場)之間沒有相似性(或相似性低于閾值)照相機的突然運動(對于裝配有運動傳感器的照相機);(iv)開關按下或“無反應(deadman) ”開關釋放;(V)時間間隔的消逝;(vi)采集的主圖像幀的閾值數(shù)目或設備的存儲器容量的飽和;或上述事件的各種組合。在全景掠掃期間照相機手機采集圖像的同時,可以連續(xù)地處理這些圖像,使得可以實時采集全景圖像。根據(jù)某些實施例,在該處理期間,很多采集的圖像可以在分類處理中丟棄,而與最終全景圖相關的圖像被保留。再者,這些圖像可以實時地配準。可以對配準的圖像執(zhí)行混合操作。在某些實施例中,可以針對主采集圖像或視頻幀的子采樣版本執(zhí)行分類、配準和初始混合。分類處理可以使得相應的主圖像幀能夠被保留或立即丟棄,使得在全景掠掃期間存儲少量全尺寸圖像。配置和混合處理可以實現(xiàn)將在采集圖像時確定的低分辨率圖像之間的最佳“接縫線”。只要全景掠掃終止,則可以使用來自相應低分辨率或預覽圖像的配準和最佳接縫信息,將保留的全分辨率圖像可以無延時接合在一起。所得的高分辨率全景圖像然后可以被壓縮成JPEG格式且被存儲。在某些實施例中,低分辨率對的接合與新的低分辨率幀的采集交錯。在其他實施例中,當在圖像采集鏈內(nèi)提供足夠的硬件支持時,高分辨率圖像的部分的接合和/或JPEG壓縮的一個或更多片段還可以與低分辨率圖像的采集、分類、配準和/或混合交錯。圖像配準在某些實施例中,確定一個圖像幀相對于下一個圖像幀的x&y像素位移。該位移信息然后可以用于選擇將在全景圖像的創(chuàng)建中使用的圖像幀。在本上下文中,可以使用在US20060171464和US20080309769描述的實施例。描述了使用圖像處理技術的視頻穩(wěn)定化的方法。根據(jù)某些實施例的技術涉及估算圖像幀的一個或更多對(或序列)的幀間水平和垂直位移。該圖像幀位移信息可以用于選擇將與原先圖像幀重疊所需數(shù)目像素的圖像幀。在某些實施例中,它備選地可以用于引導照相機采集(或完全采集)新的全分辨率圖像。下面給出對幀間位移測量的更深度的描述。在這種說明書中,第二圖像幀(圖像2)與第一圖像幀(圖像I)進行比較以確定幀間X、Y位移。為了測量X方向中(水平)的位移,圖像I和圖像2中的列被求和,其處理解釋如下。在示例性實施例中,圖像1&2的廓圖被求和,且然后使用長度15的運行平均核來進行平滑。該長度可以是可變的,例如使得長度可以增加以進一步平滑廓圖。根據(jù)該示例性實施例,沿著列對圖像像素值求和,且來自列的求和形成此處可以被稱為廓圖的矢量。為簡單起見,在RGB圖像的情況中僅使用G通道,且在YUV圖像的情況中僅使用Y通道。在這種情況中,可以使用包括關于圖像細節(jié)的足夠信息的任意顏色通道。使用長度適應于圖像尺寸和噪聲量的卷積核對來自兩個配準圖像的廓圖進行平滑以及求差值。在某些實施例中,長度是可變的且可以增加或減少。這具有過濾小特征和噪聲的效果。以這種方式,運動估算基于運動序列中的強邊緣。這還意味著X、Y位移的估算對于曝光中的變化更魯棒。該估算方法針對在曝光水平、噪聲水平和分辨率方面變化的寬范圍圖像景象極其適用。水平(X)位移估算對所有列求和,而垂直(Y)位移估算沿著圖像行進行求和。此后,運動估算的處理是相同的,因此下面僅概括用于水平位移的細節(jié)。最初地,針對圖像I和2求和每一行的所有列。這用于從位移估算創(chuàng)建圖像廓圖。%對圖像求和horl = sum(iml) ; %沿著列的對圖像求和以創(chuàng)建水平廓圖hor2 = sum(im2);MATLAB中上面的處理等價于下面的等式,horl = y = Iy = niml (x, y)
其中η是行數(shù)。這創(chuàng)建了如下圖2中所示作為列的求和值的水平圖像廓圖與行數(shù)目的關系的圖示。圖2說明當列被求和時且在計算差異之后的圖像廓圖。下一步驟是對廓圖求差值且平滑。這具有使得位移估算對于圖像之間的強度差異不變的效果。Profile Differences (廓圖差異)horl = diff(horl) ; %獲得沿著用于的廓圖差異)hor2 = diff (hor2);這等于下面的等式,horli = x1-xi+1 for i = l:m_l,其中m是行數(shù)。圖3說明計算差異之后的圖像廓圖。圖3示出作為列的求和值的水平圖像廓圖與行數(shù)的關系的圖示。然后使用下面的MATLAB代碼對廓圖進行平滑以減小噪聲影響。在MATLAB中,使用等價于下面示出的運行平均過濾器的卷積函數(shù),xi = xii_15ixi%具有長度15的核的平滑廓圖一注意,該長度是可變的%根據(jù)廓圖的噪聲/平滑度kernel = 15 ; %設置運行平均核的長度avg = ones (I, kernel)./kernel ; %運行平均核horl = conv(horl, avg) ; %使用運行平均核的平滑廓圖horl = horl (kernel/2:end-kernel/2) ; %通過由核創(chuàng)建的剪裁廓圖結(jié)尾)hor2 = conv (hor2, avg);hor2 = hor2(kernel/2:end-kernel/2);wI = length (horl) ; %水平廓圖的長度herr = zeros (I, 2*radius+l) ; % (初始化herr,以計算水平廓圖的均方誤差)然后使一個圖像廓圖相對于另一個偏移I個像素偏移。在每個偏移,計算絕對差異的求和以發(fā)現(xiàn)最小化這些差異的偏移。herr(i+radius+l-1mx) = sum(abs(horl_hor2))/wl這等同于下面的等式,herri = i_30i+30hor l~hor2(i)wl上面的操作的結(jié)果是誤差函數(shù)的圖示,從該誤差函數(shù)我們發(fā)現(xiàn)在水平方向中提供圖像I和圖像2之間的幀至幀位移量的最小值的位置。對于圖4中的示例,測量的位移是-1個像素。圖4說明通過繪制使廓圖偏移而發(fā)現(xiàn)的絕對差異的求和與像素偏移的關系的運動估算。圖4說明在計算差異之后的圖像廓圖。圖4中最小值的位置指示廓圖之間的位移。如前所述針對垂直位移估算實施相同的處理。如上所述,針對全局值且針對4個子區(qū)域計算X和y運動估算二者。下面描述用于過濾由于景象內(nèi)的主題運動導致的誤差的方法。在該部分中,不存在用于僅僅描述邏輯操作的計算。圖5中示出的圖示說明沿著水平方向(圖像幀數(shù)目)的像素中的累積X偏移。圖5說明示出作為像素偏移的照相機總水平移動與幀數(shù)目的關系的累積圖示。針對垂直位移重復相同處理。圖6中示出相對于第一圖像幀的垂直位移的示例。圖6說明示出作為像素偏移的照相機總垂直移動與幀數(shù)目的關系的累積圖示。US 20080309769中描述的原始位移估算算法被設計為跟蹤相對于第一幀而不是幀到幀的xy偏移。為了擴展該位移測量技術以還提供針對其保留圖像的分類機制,我們保留來自所有早先圖像的位移信息且使用它們來調(diào)節(jié)用于后續(xù)圖像的搜索區(qū)域。因而來自幀I和2的信息用于調(diào)節(jié)用于圖像I和3的搜索區(qū)域。這一直執(zhí)行直到從圖像I到圖像1+n的總X偏移超過給定像素數(shù)目。此時,圖像1+n變成新參考幀且后續(xù)偏移相對于它配準。所有中間幀2、3...η可以被丟棄,且僅幀I和1+n被保留。該處理重復直到某一事件終止全景采集處理。用于分類處理的位移值被選擇以確保在需要接合在一起的圖像之間存在足夠的重疊。它也可以變化以考慮圖像幀上的鏡頭或光學失真。因而,在存在足夠的邊緣失真時,在圖像幀之間可能需要更大的重疊。作為示例,對于低失真透鏡和480X640的低分辨率視頻幀,水平方向中140個像素的重疊可能是適當?shù)?;對于高失真透鏡,可能需要250+個像素的重疊。在后一種情況中,圖像的后續(xù)混合不能使用全圖像幀——因為太失真而不能在混合處理中使用,在每個圖像的每個結(jié)尾丟去棄高達25% (150個像素)。這種處理針對視頻幀的完整序列被重復。結(jié)果是可以讀取序列中任意圖像幀的X和y偏移。這然后允許選擇圖像以創(chuàng)建全景圖像。然后選擇相對彼此具有例如500個像素的像素偏移的圖像。然后使用X方向中500個像素的像素偏移以及計算的y偏移,將圖像2接合到圖像I。該過程重復以將多個連續(xù)圖像接合在一起。圖7A和圖7B的圖像是使用全局運動估算算法與測量的x&y位移配準的三個圖像幀的示例。對于該全景圖像,選擇具有620個像素的水平位移的幀。圖7A說明根據(jù)某些實施例,從通過算法選擇的視頻幀產(chǎn)生且與計算的x&y偏移對準的全景圖像。圖7B說明圖7A的全景圖像的剪裁版本。具有子像素精確度的圖像配準根據(jù)某些實施例的圖像配準方法可以計算至少具有一個像素精確度的水平和垂直位移。當希望從低分辨率圖像伸縮為全分辨率圖像時,該算法配置成防止在使用卷積算法時否則會跨過接縫線的部分出現(xiàn)的明顯誤差。例如,在QVGA分辨率的一個像素配準誤差可以轉(zhuǎn)換成720p HD分辨率的6個像素的誤差。為了處理該問題,根據(jù)某些實施例,圖像配準方法被擴展,以計算使具有子像素精確度(即分數(shù)精度)的圖像位移?;诶獔D的樣條過采樣的估算,可以用于以高像素精確度對準圖像。算法的基礎可以是Catmul1-Rom樣條(A =-0.5的立方樣條)。為了保持良好的性能水平,廓圖可以初始地對準于一個像素精確度。過采樣步驟可以用于使用預定子像素步長發(fā)現(xiàn)±I個像素范圍內(nèi)的位移。當前實施方式可以假設1/256個像素的最小步長。歸功于該樣條函數(shù),系數(shù)可以被預計算且存儲在具有256個元素的查找表中。在子采樣對準中,可以將最小步長值作為單位。在一些實施例中,為了實現(xiàn)1/4個像素的精確性,其對于低分辨率圖像的最實際放大可能足夠的,用于估算的步長尺寸可以設置為64。第二廓圖使用臺階增量左、右偏移,且使用樣條插值計算樣本間的值。因為偏移針對所有廓圖樣本是均勻的,它可以涉及盡可能少的單組系數(shù),以處理所有樣本。圖8說明步
驟之一。圖1示出在示例性實施例中比較廓圖1和廓圖2的插值的圖示。使用方塊標記的插值,且使用圓圈標記的參考值被用于針對給定偏移計算誤差的求和。產(chǎn)生至少誤差求和的偏移以固定點格式返回8位小數(shù)值。下一圖片顯示誤差與偏移圖示的示例。圖2說明根據(jù)某些實施例誤差度量值與子像素偏移的關系。誤差函數(shù)在考慮的范圍內(nèi)是平滑的,且不具有確保發(fā)現(xiàn)正確小數(shù)偏移的局部最小值。源于HD視頻的全景圖——照相機內(nèi)實施方式在從HD視頻幀創(chuàng)建全景圖的情況中,上述圖像配準處理太耗時且耗費存儲器而不能允許實時照相機內(nèi)實現(xiàn)。在該情況中,在示例中說明根據(jù)某些實施例的技術,如下:1.HD幀被下采樣為QVGA ;2.第一 QVGA幀被認為是參考幀; 3.根據(jù)某些實施例QVGA幀與參考幀配準;4.當達到幀之間某一數(shù)量的重疊時,根據(jù)某些實施例,當前幀和參考幀被接合或縫合在一起。在接合處理的結(jié)尾,可以通過沿著接縫線應用模糊核創(chuàng)建alpha混合圖;5.alpha混合圖可以被上采樣為HD幀分辨率;6.使用在步驟5產(chǎn)生的圖將HD幀混合在一起;7.當前幀變成參考幀,步驟3-7重復,直到已經(jīng)達到某一幀數(shù)目。下面的部分說明算法的某些有利組成部分。圖像接合算法該算法的目的是發(fā)現(xiàn)兩個重疊圖像之間的最佳接縫位置,使得圖像可以合并以創(chuàng)建全景圖。接縫必須經(jīng)過如下區(qū)域,在該區(qū)域中,這兩個圖像之間的差異是最小值以便不產(chǎn)生明顯切口。一般思想是使兩個輪廓在重疊區(qū)域的相對邊開始,這兩個輪廓將以依賴于重疊圖像之間的局部差異的速度彼此相向移動。輪廓跨過圖像以某一彈性水平地傳播,使得某些像素可以更快地移動,不過如果相鄰像素具有較低的速率,它們被阻止。該思想是像素快速地通過重疊圖像之間存在較大差異的區(qū)域移動,且在圖像之間存在小或可忽略差異的區(qū)域減速。這樣,水平相向傳播的兩個輪廓在兩個圖像之間的近似最佳或近最佳接縫處相遇?!┹喞龅较袼?,它們就被分配給與輪廓相關的相關圖像。因而,從左向右傳播的輪廓將把像素和左手圖像關聯(lián)。從右向左移動的輪廓將把像素與重疊圖像對的右手圖像關聯(lián)。在重疊區(qū)域中不存在更多未分配像素時,該處理停止。兩個重疊組成部分圖像被認為在水平方向或全景圖的長方向中或搖攝的方向中重疊。所以,存在僅屬于左手(LH)圖像的區(qū)域和僅屬于右手(RH)圖像的區(qū)域。則存在重疊區(qū)域,其中像素可以從LH圖像或RH圖像或基于其的一些組合或計算選擇。每個輪廓在該重疊區(qū)域的LH或RH邊界開始。LH邊界完全屬于LH圖像,同時該技術涉及沿著圖像的像素行向右移動該邊界以及同時向左移動RH邊界。
每個邊界移動的(相對)速度通過重疊LH和RM圖像像素之間的(相對)差異確定。在RH和LH像素之間存在極少差異時,輪廓更緩慢地移動,因為這是具有圖像接縫而不是更快速移動片段的更好位置。在存在大差異時,輪廓更快地移動,因為接縫不應出現(xiàn)在RH和LH圖像像素之間的高差異區(qū)域中。在某些實施例中,在重疊區(qū)域中,可以從LH或RH圖像選擇像素。還注意此處“速度”在重疊區(qū)域內(nèi)的輪廓片段之間是相對的?,F(xiàn)在,因為像素差異中的變化,某些行中的輪廓像素將比其上面(或下面)的行更快地傳播。在某些實施例中,行向右(針對LH輪廓)或向左(針對RH輪廓)傳播的速度也部分地通過其相鄰行限制。在這些實施例中,輪廓被稱為是“彈性”的。因而,在一行將基于RH和LH圖像之間的大差異非??焖俚匾苿訒r,因為上面(或下面)的行以明顯更低的速度移動,它可以減速,且反之亦然?,F(xiàn)在當LH輪廓向右傳播時,該傳播“邊界線”(或“狀態(tài)線”)之后(或其左邊)的像素100%取自LH圖像,而RH輪廓右邊的類似像素取自RH圖像。最終,這兩個“狀態(tài)線”將開始在某些點相遇,且當它們“碰撞”時它們簡單地在相遇點停止傳播。最終,這兩個輪廓將跨過重疊區(qū)域的所有行相遇且確定通過重疊區(qū)域的最終接縫線。備選實施例可以使用涉及在一個方向中傳播輪廓(輪廓不能返回)的技術,這類似于Sethian等人在A Fast Marching Level Set Method for Monotonically AdvancingFronts,Proceedings from the National Academy of Sciences,submitted October 20,1995中描述的技術。在某些實施例中,可以使用類似于Dijkstra算法的方法,該算法例如在Dijkstra, E.W.(1959) " A note on two problems in connexion with graphs ".Numcrischc Mathcmatik 1:269-271, http://www-m3.ma.rum.de/twikL/pub/MN0506,/WebHome/dijkstra.pdf,和 / 或 Sniedovich,M.(2006)." Dijkstra ' s algorithmrevisited:the dynamic programming connexion " (PDF).Journal of Control andCybernetics 35(3):599-620, http://matwbn.1cm.cdu.pL/ksiazki/cc/cc35/cc3536.pdf中提及??梢酝ㄟ^對求解不同等式獲得的值進行分類管理輪廓演進。它是PC上相對快的算法,但是涉及重復分類(在每個輪廓更新I個像素)和動態(tài)數(shù)據(jù)結(jié)構(gòu)。這樣,尤其涉及嵌入式平臺的某些實施例不使用Dijkstra方法。在某些實施例中,F(xiàn)IFO隊列用于執(zhí)行且實現(xiàn)有利技術,既使不使用存儲器分配。圖10說明將在全景圖中使用的相鄰圖像之間的重疊區(qū)域上彼此相向傳播的兩個輪廓。輪廓的傳播可以通過包括256個優(yōu)先FIFO桶的集合的隊列控制。255號桶編有最高優(yōu)先權(quán),而O號桶具有最低優(yōu)先權(quán)。只要重疊區(qū)域的新點被添加到隊列,它變成等于重疊圖像之間的加權(quán)差異的桶編號。差異處于O至255的范圍。在某些實施例中,如果點將從隊列被移除,則將它從最高權(quán)限非空桶中去除。添加到隊列中的每個點使用識別點所屬的輪廓的標志進行標記。示例傳播算法可以如下進行:1.通過向隊列添加重疊區(qū)域的左和右垂直邊緣處的點來初始化輪廓。右邊緣處的點與左邊緣處的點被不同地標記;2.如上所述根據(jù)規(guī)則從隊列去除第一點;3.如果存在非分配點,檢查左、右、上、下方向。如果這種點存在,將它們添加到隊列中,為它們分配與源點具有的標記相同的標記;以及4.如果隊列不為空,轉(zhuǎn)向2。因為噪聲和一些細節(jié)的存在,輪廓的形狀可以變得極其復雜,這意味著輪廓具有較大的長度,需要較大的存儲器數(shù)量來維持隊列。為了平滑輪廓形狀且減小需要的存儲器的數(shù)量,可以通過以下矩陣定義的過濾器平滑重疊圖像之間的差異:
權(quán)利要求
1.一種用于產(chǎn)生立體全景圖像的方法,該方法包括: 固定用于使用便攜式成像設備采集所述全景圖像的曝光水平; 使所述成像設備跨過景象進行搖攝; 采集所述景象的部分的多個至少部分重疊的圖像幀,包括使用所述便攜式成像設備的光學成像傳感器; 配準所述圖像幀,包括確定所述成像設備在圖像幀的采集之間的位移; 產(chǎn)生多個全景圖像,包括根據(jù)空間關系接合所述景象的圖像幀以及確定所述多個全景圖像之間的立體對應部分關系; 基于所述立體對應部分關系處理所述多個全景圖像,以形成立體全景圖像;以及 存儲、傳送或顯示所述立體全景圖像,或其組合。
2.根據(jù)權(quán)利要求1所述的方法,其中確定位移包括測量所述位移。
3.根據(jù)權(quán)利要求1所述的方法,其中確定位移包括確定至少兩個維度中的位移。
4.根據(jù)權(quán)利要求3所述的方法,其中所述至少兩個維度包括正交于深度維度的兩個維度。
5.根據(jù)權(quán)利要求4所述的方法,其中確定位移包括確定包括深度維度的三個維度中的位移。
6.根據(jù)權(quán)利要求1所述的方法,其中確定立體對應部分關系包括: 使得具有第一預定范圍內(nèi)的相對位移的圖像幀成對,所述第一預定范圍被配置成提供所選的立體效果; 組合成對圖像幀以形成組成部分立體圖像;以及 保留與相鄰成對圖像幀具有的重疊在第二預定范圍內(nèi)的成對圖像幀。
7.根據(jù)權(quán)利要求6所述的方法,其中所述第一預定范圍包括5-7.5cm。
8.根據(jù)權(quán)利要求1所述的方法,其中所述部分重疊包括10%至50%的重疊。
9.根據(jù)權(quán)利要求1所述的方法,還包括使圖像幀對的接合與下一圖像幀的采集或產(chǎn)生或二者交錯。
10.根據(jù)權(quán)利要求1所述的方法,其中所述第一預定范圍不大于所述成像設備的搖攝半徑的15%。
11.一種使用便攜式成像設備產(chǎn)生全景圖像的方法,所述方法包括: 固定用于使用所述便攜式成像設備采集所述全景圖像的曝光水平; 使所述便攜式成像設備跨過所述景象進行搖攝; 采集至少兩個圖像集合且處理所述集合,每個集合包括所述景象的部分的至少兩個圖像幀,所述采集包括使用所述便攜式成像設備的光學成像傳感器,所述處理包括: 分類且保留所述至少兩個集合的至少兩個圖像幀; 確定所述至少兩個圖像幀集合內(nèi)基本重疊的幀之間的相對位移; 相對彼此配準所述至少兩個集合內(nèi)的圖像; 組合所述基本重疊的幀; 接合所述全景圖像的組成部分圖像;以及 存儲、傳送或顯示所述全景圖像,或其組合。
12.根據(jù)權(quán)利要求11所述的方法,還包括確定所述兩個或更多圖像幀集合中每一個的第一或其他相應采集幀之間的相對位移。
13.根據(jù)權(quán)利要求11所述的方法,還包括配準從所述兩個或更多集合中每一個的圖像得到的組合全景圖像。
14.根據(jù)權(quán)利要求11所述的方法,還包括使圖像幀對的接合與下一圖像幀的采集或產(chǎn)生或二者交錯。
15.一種能夠在照相機內(nèi)產(chǎn)生全景圖像的支持照相機的便攜式設備,包括鏡頭、圖像傳感器、處理器以及其中具有嵌入的代碼的處理器可讀介質(zhì),所述代碼用于對所述處理器進行編程,以執(zhí)行根據(jù)上面權(quán)利要求其中任一項所述的全景圖像產(chǎn)生方法。
16.一個或更多計算機可讀存儲介質(zhì),其中具有嵌入的代碼,所述代碼用于對處理器進行編程,以執(zhí)行根 據(jù)權(quán)利要求1-14其中任一項所述的全景圖像產(chǎn)生方法。
全文摘要
一種產(chǎn)生立體全景圖像的技術,包括使便攜式照相機設備進行搖攝以及采集多個圖像幀。采集景象部分的多個至少部分重疊圖像幀。該方法涉及配準圖像幀,包括確定成像設備在圖像幀的采集之間的位移。產(chǎn)生多個全景圖像,包括根據(jù)空間關系接合景象的圖像幀,以及確定多個全景圖像之間的立體對應部分關系。基于立體對應部分關系處理多個全景圖像,以形成立體全景圖像。
文檔編號G06T7/00GK103168315SQ201180051076
公開日2013年6月19日 申請日期2011年9月9日 優(yōu)先權(quán)日2010年9月9日
發(fā)明者I·巴科維斯奇, P·比喬伊, G·蘇珊, P·斯特克, L·默里, A·德里姆巴里安, P·科科倫 申請人:數(shù)字光學歐洲有限公司