專利名稱::在360度全景圖像中進(jìn)行頭部大小均衡的系統(tǒng)和方法
技術(shù)領(lǐng)域:
:本發(fā)明一般涉及使用計(jì)算機(jī)觀看圖像,尤其涉及對(duì)由全向相機(jī)拍攝的全景圖像進(jìn)行實(shí)時(shí)校正以緩解與這種圖像相關(guān)聯(lián)的失真和感知問題的系統(tǒng)和方法。發(fā)明背景典型的大于60度的視場(chǎng)的廣角相機(jī)一般被用于拍攝大型場(chǎng)景。由廣角相機(jī)拍攝的廣角圖像可至少使用兩種類型的投影來觀看。線性透視和圓柱投影是用來觀看廣角圖像的最典型的投影。線性透視投影是由廣角鏡頭拍攝的被投射在平面膠片上的圖像。線性透視投射以犧牲維持形狀為代價(jià)保持直線筆直。這導(dǎo)致了透視變形。如果圖像觀看者的眼睛位于投射中心則圖像將顯得正確且不會(huì)變形。然而,當(dāng)以較小的視場(chǎng)觀看該廣角圖像時(shí),觀看者期望在物體旋轉(zhuǎn)時(shí)圖像平面上的圖像大小增加較小并且變形量較小。這就是為何物體在邊緣處顯得被拉伸的原因。比預(yù)期的圖像平面上的大小變化和變形大,會(huì)使得用戶感覺場(chǎng)景不固定,特別在觀看全景圖像時(shí)就像場(chǎng)景繞觀察者游動(dòng)。使用具有曲面膠片和旋轉(zhuǎn)開縫鏡頭的廣角鏡頭產(chǎn)生圓柱投影。圓柱投影比線性投影能夠更好地保持形狀。另外,圓柱投影緩解了任何明顯的游動(dòng)運(yùn)動(dòng)。雖然圓柱投影是優(yōu)于線性投影的一種觀看改進(jìn),但是失真和感知問題仍然存在。尤其,圓柱投影多余地將直線彎曲。另外,圓柱投影幾乎完全移除了在觀看全景圖像時(shí)轉(zhuǎn)動(dòng)頭部的幻影。廣角圖像中的失真和彎曲問題是由視場(chǎng)失配所引起的。具體而言,由于計(jì)算機(jī)監(jiān)視器的有限觀看大小和標(biāo)準(zhǔn)的觀看距離,觀看時(shí)圖像所對(duì)的角度比最初將該場(chǎng)景投射到圖像平面的相機(jī)的視場(chǎng)小的多。這種失配是導(dǎo)致許多失真和感知問題的原因。在觀看時(shí)以較小的視場(chǎng)觀看廣角圖像引起的一個(gè)相關(guān)問題是深度錯(cuò)誤感知。廣角圖像夸大了遠(yuǎn)近物體之間的深度差異。場(chǎng)景中物體深度的一個(gè)重要視覺提示是位于近處和遠(yuǎn)處位置的相似物體的圖像大小之間的比率(稱為深度透視縮短率(foreshorteningratio))。較小的視場(chǎng)導(dǎo)致較小的透視縮短率。例如,假定場(chǎng)景包含彼此靠近站立的兩個(gè)人,其中一個(gè)人比另外一個(gè)人離相機(jī)稍遠(yuǎn)。如果該場(chǎng)景被用常規(guī)(近似60度)視場(chǎng)相機(jī)拍攝,而相同場(chǎng)景又由廣角視場(chǎng)相機(jī)拍攝,則場(chǎng)景中物體的大小將顯得不同。特別地,使用常規(guī)視場(chǎng)相機(jī),離相機(jī)較遠(yuǎn)的那個(gè)人將顯得比另一個(gè)人離相機(jī)稍遠(yuǎn)。然而,使用廣角視場(chǎng)相機(jī),離相機(jī)較遠(yuǎn)的那個(gè)人將顯得比另一個(gè)人小得多。由于這種被夸大的大小差異,離相機(jī)較遠(yuǎn)的那個(gè)人顯得比實(shí)際要遠(yuǎn)得多。當(dāng)在計(jì)算機(jī)監(jiān)視器上觀看深度場(chǎng)景的廣角圖像(諸如視頻會(huì)議場(chǎng)景)時(shí),觀看者的視場(chǎng)一般而言會(huì)比實(shí)際圖像的視場(chǎng)小得多。因此,觀看者所感知的深度比實(shí)際深度要大得多。顯露這些失真和感知問題的一個(gè)應(yīng)用是在視頻會(huì)議系統(tǒng)中。廣角相機(jī)常被用于視頻會(huì)議系統(tǒng)中以拍攝和發(fā)送包含有會(huì)議室中所有與會(huì)人員的圖像。然而,一個(gè)問題是在觀看該視頻會(huì)議時(shí)廣角圖像夸大了該會(huì)議室的深度。這使得圖像中間的人(通常是離相機(jī)最遠(yuǎn)的人)與會(huì)議室中的其他人相比由于極端的透視縮短而顯得非常小。通常伴隨廣角相機(jī)圖像的這些失真和感知問題在觀看覆蓋360度視場(chǎng)的全景圖像時(shí)還要突出。全景圖像可以通過對(duì)準(zhǔn)和"縫合"從單個(gè)相機(jī)獲得的輸入圖像來生成?;蛘撸皥D像可以通過使用多個(gè)相機(jī)獲取輸入圖像并將它們縫合來構(gòu)造。例如,這是在使用多個(gè)相機(jī)生成全景視頻的情形。本質(zhì)上,構(gòu)造全景視頻必需獲取描繪四周場(chǎng)景的360度景觀的多個(gè)視頻。由以背靠背方式布置的多個(gè)相機(jī)組成的相機(jī)機(jī)組有時(shí)被用來拍攝這些視頻。通常使用將輸入圖像中的像素位置映射到全景圖像中的像素位置的縫合表以將這些圖像在全景中縫合在一起。360度全向相機(jī)已被用于會(huì)議記錄和視頻會(huì)議。相機(jī)通常被放在與會(huì)人員圍聚的桌子中央。如果該會(huì)議桌是矩形,則該全景圖像上的人體頭部大小將根據(jù)他們離相機(jī)的距離而變化。例如坐在桌子遠(yuǎn)端的人將比坐得離相機(jī)近的人顯得小的多。全景圖像中的這種頭部大小變化視覺上看起來不是那么吸引人并且經(jīng)常難以辨認(rèn)位于桌子遠(yuǎn)端的人或辨認(rèn)他們的表情。采用全景圖像的視頻會(huì)議的另一問題是某些全向相機(jī)生成3700X600像素全景圖像,然而大多數(shù)用戶僅有只能顯示1024X166像素全景的1024X768像素顯示器。在分辨率降低這么大的情況下,位于桌子遠(yuǎn)端的人在沒有頭部大小歸一化時(shí)是看不到的。相應(yīng)地,需要一種對(duì)全景相機(jī)拍攝的圖像進(jìn)行實(shí)時(shí)校正以減少與這些圖像相關(guān)聯(lián)的失真和感知問題的系統(tǒng)和方法。該系統(tǒng)和方法應(yīng)該將全景圖像中的頭部大小歸一化并允許用標(biāo)準(zhǔn)分辨率監(jiān)視器觀看圖像中的人物。另外,該系統(tǒng)和方法應(yīng)該易于建立和操作并且應(yīng)該是計(jì)算上高效的。發(fā)明摘要本發(fā)明的系統(tǒng)和方法提供了對(duì)近似360度全景圖像中的失真和感知缺陷進(jìn)行實(shí)時(shí)校正。本發(fā)明的系統(tǒng)和方法,該實(shí)時(shí)全景圖像校正系統(tǒng)和方法采用參數(shù)化翹曲函數(shù)即空間變化一致(SpatiallyVaryingUniform,SVU)縮放函數(shù)來翹曲全景圖像以在不引入不連續(xù)性的同時(shí)均衡人體頭部大小。SVU函數(shù)之前在提交于2002年6月28日題為"Real-TimeWide-AngleImageCorrectionSystemAndMethodForComputerImageViewing(用于計(jì)算機(jī)圖像觀看的實(shí)時(shí)廣角圖像校正系統(tǒng)和方法)"的專利申請(qǐng)序列號(hào)10/186,915中說明過。然而,該早先專利申請(qǐng)僅使用了針對(duì)多達(dá)180度的圖像的這種技術(shù)。在本發(fā)明中,該SVU縮放函數(shù)被應(yīng)用到360度全景圖像,同時(shí)考慮了諸如會(huì)議桌幾何形狀以及和與會(huì)人員頭部相切的平面等水平特征。在上述專利申請(qǐng)中,SVU縮放函數(shù)被用在通常由放在會(huì)議室桌子的一端的廣角相機(jī)生成的至多達(dá)180度的圖像。相比而言,360度全向相機(jī)通常被放在桌子的中央。因此,用于計(jì)算廣角圖像和近似360度全景圖像的SVU縮放函數(shù)的上下曲線是不同的。該實(shí)時(shí)全景圖像校正系統(tǒng)和方法提供了頭部大小歸一化,從而使得諸如頭部等較遠(yuǎn)物體顯得較近因此也較大。同時(shí)使較大的近處頭部顯得較小。因此,位于桌子遠(yuǎn)端的人較大并且即使在1024X166像素的顯示器上也能看得到。在本發(fā)明的系統(tǒng)和方法的一個(gè)實(shí)施例中,用戶也選擇會(huì)議桌形狀和大小以及該實(shí)時(shí)全景圖像校正系統(tǒng)修改全景圖像縫合表以匹配該會(huì)議桌從而使得在計(jì)算縫合的同時(shí)歸一化與會(huì)人員的頭部大小。一般而言,在本發(fā)明的一個(gè)實(shí)施例中,該實(shí)時(shí)全景圖像校正方法輸入一一全景圖像,其中遠(yuǎn)處物體比離相機(jī)近的物體小得多,以及諸如桌子尺寸和人體頭部的頂端等圖像中的水平特征參數(shù)。然后校正被夸大的深度和水平失真,并輸出經(jīng)校正的全景圖像。該校正是通過使用被設(shè)計(jì)成在克服與全景圖像相關(guān)聯(lián)的大多數(shù)問題的同時(shí)將新失真的引入降到最低的一類翹曲函數(shù)來執(zhí)行的。這類翹曲函數(shù)包括空間變化一致縮放函數(shù)。一般而言,在局部水平上進(jìn)行縮放同時(shí)保持全局背景。對(duì)于視頻會(huì)議應(yīng)用,這意味著該翹曲在不會(huì)使每個(gè)人失真并且保持了房間背景的情況下對(duì)遠(yuǎn)處的人進(jìn)行放大。在上述實(shí)施例中,實(shí)時(shí)全景圖像校正方法接收近似360度全景圖像的像素坐標(biāo)以及水平特征尺寸并且對(duì)全景圖像的像素坐標(biāo)進(jìn)行垂直和水平縮放。該縮放是使用參數(shù)化圖像翹曲函數(shù)來執(zhí)行的。該縮放產(chǎn)生一初步翹曲表(preliminarywarptable),它對(duì)應(yīng)于保持垂直線條筆直但會(huì)彎曲水平線條的圖像。該結(jié)果輸出是將經(jīng)校正的圖像像素坐標(biāo)映射到原始圖像像素坐標(biāo)的翹曲表。換言之,該翹曲表指示了每個(gè)原始像素坐標(biāo)在新的經(jīng)校正的全景圖像內(nèi)的位置。該經(jīng)校正的全景圖像是從原始全景圖像實(shí)時(shí)構(gòu)造的。在本發(fā)明的另一實(shí)施例中,在將輸入圖像縫合成全景圖像的同時(shí)將縫合表與翹曲表級(jí)聯(lián)起來以提高計(jì)算效率并允許對(duì)頭部大小進(jìn)行歸一化。在該實(shí)施例中,使用縫合表將一組圖像縫合成虛構(gòu)的縫合全景圖像。除了這組圖像之外,還輸入了水平特征參數(shù)。該虛構(gòu)全景圖像被用于計(jì)算隨后與縫合表級(jí)聯(lián)的翹曲表。該被級(jí)聯(lián)的翹曲和縫合表然后被用于將該組輸入圖像縫合成真實(shí)的畸變經(jīng)過校正的全景。對(duì)于上述討論的兩個(gè)實(shí)施例,在適宜的情況下可使用翹曲表或級(jí)聯(lián)的縫合及翹曲表來校正垂直和水平失真。垂直縮放是使用參數(shù)化圖像翹曲函數(shù)和翹曲因子對(duì)全景圖像或虛構(gòu)全景圖像中的每條垂直掃描線單獨(dú)執(zhí)行的。主縮放因子是使用源曲線、翹曲因子、以及從源曲線和翹曲因子計(jì)算出的目標(biāo)曲線來計(jì)算的。本發(fā)明的一個(gè)方面具有由用戶定義的源曲線和翹曲因子。另外,源曲線可以從水平特征的幾何以及針對(duì)給定翹曲因子的相機(jī)參數(shù)自動(dòng)計(jì)算得出。主縮放因子被用來縮放垂直方向上的像素坐標(biāo)。在虛擬場(chǎng)景中,該垂直縮放針對(duì)所選的垂直掃描線通過主縮放因子量垂直"拉伸"/"收縮"全景圖像(或虛構(gòu)全景圖像)。還執(zhí)行垂直掃描線的水平縮放并且使用相同的主縮放因子來保持長(zhǎng)寬比。類似于垂直縮放,水平縮放在虛擬意義上可以被理解為通過主縮放因子量將全景圖像的垂直掃描線的寬度局部地水平"拉伸"/"收縮"。在虛擬意義上,通過對(duì)原始全景圖像或一組未經(jīng)縫合的輸入圖像情況下的虛構(gòu)全景圖像施加垂直和水平縮放,獲得初步校正圖像。為了加速計(jì)算,生成將該初步校正圖像的初步像素坐標(biāo)映射到原始圖像像素坐標(biāo)的初步翹曲表。水平失真通過根據(jù)像素坐標(biāo)的位置將初步翹曲表分為多個(gè)部分來校正。這些部分中的每一個(gè)都使用不同的縮放因子來垂直縮放。在本發(fā)明的一個(gè)方面,第一部分被定義為包含位于底端源曲線與頂端源曲線之間的像素所對(duì)應(yīng)的那些像素坐標(biāo)。然后主縮放因子被用于垂直地縮放該部分中的像素坐標(biāo)。其它部分中的像素坐標(biāo)使用為與主縮放因子不同值的次縮放因子來垂直縮放。為了保持連續(xù)性,每個(gè)部分使用平滑函數(shù)來連接。一旦對(duì)初步翹曲表中的像素坐標(biāo)執(zhí)行了水平失真校正處理,就生成翹曲表。使用該翹曲表,執(zhí)行全景圖像的實(shí)時(shí)翹曲以實(shí)時(shí)地生成被校正的全景圖像。如上所討論的,在本發(fā)明的一個(gè)實(shí)施例中,該翹曲表與縫合表相級(jí)聯(lián)以在縫合全景圖像并對(duì)其校正時(shí)提高計(jì)算效率。本發(fā)明可參照以下說明和示出本發(fā)明的各方面的附圖來進(jìn)一步理解。其它特征和優(yōu)點(diǎn)在結(jié)合作為示例示出了本發(fā)明的原理的附圖進(jìn)行以下本發(fā)明的具體說明時(shí)將是顯而易見的。圖1示出了由360度全景相機(jī)在會(huì)議室中拍攝的圖像。圖2示出了經(jīng)過本發(fā)明的實(shí)時(shí)全景圖像校正系統(tǒng)和方法校正的圖1中的圖像。圖3示出了針對(duì)180度圖像的SVU縮放函數(shù)的上下曲線(綠色曲線)。圖4示出了針對(duì)360度全景圖像的SVU縮放函數(shù)的上下曲線(綠色曲線)。圖5A是示出了本發(fā)明的實(shí)時(shí)全景圖像校正系統(tǒng)的一個(gè)實(shí)施例的概況的框圖。圖5B是示出了本發(fā)明的采用了級(jí)聯(lián)縫合和翹曲表的實(shí)時(shí)全景圖像校正系統(tǒng)的另一實(shí)施例的概況的框圖。圖6是示出了適于執(zhí)行本發(fā)明的計(jì)算裝置的框圖。圖7是示出了圖5A和5B中所示的實(shí)時(shí)全景圖像校正系統(tǒng)的翹曲表生成模塊的細(xì)節(jié)的框圖。圖8A是示出了圖5A中所示的實(shí)時(shí)全景圖像校正系統(tǒng)的操作的一般性流程圖。圖8B是示出了圖5B中所示的實(shí)時(shí)全景圖像校正系統(tǒng)的操作的一般性流程圖。圖9是示出了圖7中所示的垂直縮放模塊的細(xì)節(jié)的流程圖。圖IO示出了根據(jù)兩組曲線來確定翹曲函數(shù)。圖11是演示了桌子邊緣投影到圓柱膠片上(假定采用標(biāo)準(zhǔn)相機(jī)取向)的示圖。圖12是示出了圖7中所示水平縮放模塊的細(xì)節(jié)的流程圖。圖13是示出了圖7中所示的水平畸變校正模塊的細(xì)節(jié)的流程圖。圖14示出了垂直縮放函數(shù)以及將初步像素坐標(biāo)分為三個(gè)部分的概念性示圖。圖15繪出了經(jīng)填充的校正后全景圖像,其中額外的像素被添加到圖像的周界周圍從而使其與用于網(wǎng)絡(luò)傳輸或顯示的標(biāo)準(zhǔn)大小一致。發(fā)明的具體描述在以下本發(fā)明的描述中,參照了構(gòu)成本發(fā)明一部分并在其中作為示例示出了可以實(shí)踐本發(fā)明的具體示例的附圖。應(yīng)該理解的是,也可利用其它實(shí)施例并且可以改變結(jié)構(gòu)而不會(huì)背離本發(fā)明的范圍。1.0一般性概述圖1示出了由位于會(huì)議室中桌子中央的360度全向相機(jī)拍攝的圖像。該相機(jī)配置是在視頻會(huì)議應(yīng)用中可能使用的典型相機(jī)配置。參照?qǐng)Dl,可以看到穿白色衣服的人顯得比其它兩個(gè)人小得多。其原因在于他坐得離相機(jī)較遠(yuǎn)。首先,穿白色衣服的人可見度較低并且顯得離觀眾較遠(yuǎn)從而影響實(shí)時(shí)通信的體驗(yàn)。其次,由于網(wǎng)絡(luò)帶寬限制和有限的屏幕空間,圖像大小通常受到限制。如果人體圖像非常小那么浪費(fèi)了許多傳輸?shù)南袼?。因此,均衡人體頭部大小以最大地利用被傳輸和顯示的這些像素是合乎需要的。圖2示出了使用實(shí)時(shí)全景圖像校正系統(tǒng)和方法校正的圖1的圖像。實(shí)時(shí)全景圖像校正系統(tǒng)和方法采用了一種均衡或歸一化人體頭部大小同時(shí)不會(huì)造成圖像不連續(xù)性的技術(shù)。該技術(shù)是在2002年6月28日提交的題為"Real-TimeWide-AngleImageCorrectionSystemAndMethodForComputerImageViewing(用于計(jì)算機(jī)圖像觀看的實(shí)時(shí)廣角圖像校正系統(tǒng)和方法)"的專利申請(qǐng)序列號(hào)10/186,915中說明的SVU縮放函數(shù)的擴(kuò)展。在該先前專利申請(qǐng)中,SVU縮放函數(shù)被用在通常由放在會(huì)議室桌子一端的廣角相機(jī)生成的180度圖像上。相反地,以上所討論的360度相機(jī)通常被放置在桌子的中央。因此,針對(duì)360度全景圖像生成的用于計(jì)算SVU縮放函數(shù)的上下曲線與廣角(例如,至多達(dá)180度)圖像中所使用的是不同的。圖3示出了被用于計(jì)算180度圖像的SVU縮放函數(shù)的上下源曲線(綠色曲線)。圖4示出了被用于計(jì)算360度圖像的SVU縮放函數(shù)的上下源曲線(綠色曲線)。給定了綠色源曲線和目標(biāo)曲線(紅色曲線),可以用與上述專利申請(qǐng)中所述的相同方法生成SVU縮放函數(shù)。與先前提到的共審待批的專利申請(qǐng)相類似,全景圖像的校正是使用一類被稱為空間變化一致(svu)縮放函數(shù)的用于保持局部縮放透視并校正深度錯(cuò)誤感知的參數(shù)化翹曲函數(shù)來實(shí)現(xiàn)的。該svu縮放函數(shù)和縮放因子被用來執(zhí)行對(duì)圖像的像素坐標(biāo)的垂直縮放和水平縮放。這生成了將該初步校正圖像的像素位置映射到原始像素位置的初步翹曲表。該初步校正圖像是虛擬圖像而并沒有被實(shí)際構(gòu)造。然而,該初步校正圖像保持垂直線條筆直但彎曲了水平線條。這種水平失真是通過使用svu縮放函數(shù)和至少兩個(gè)不同的縮放因子來執(zhí)行水平失真校正來校正的。該處理生成了翹曲表。該翹曲表將經(jīng)過校正的全景圖像中的位置映射到失真的全景圖像中的原始像素坐標(biāo)。在其中圖像被縫合以構(gòu)造全景圖像的本發(fā)明的一些實(shí)施例中,該翹曲表可以與縫合表相級(jí)聯(lián)以提高計(jì)算效率。使用該翹曲表、或級(jí)聯(lián)的縫合和翹曲表,從原始全景圖像實(shí)時(shí)地構(gòu)造了經(jīng)過校正的全景圖像。圖5A是示出了本發(fā)明的實(shí)時(shí)全景圖像校正系統(tǒng)500A的一個(gè)實(shí)施例的一般性概況框圖。一般而言,系統(tǒng)500A獲得水平特征幾何505(例如,會(huì)議桌幾何和與人體頭部頂端相切的平面)以及全景圖像510并輸入水平特征幾何505以及與該全景圖像內(nèi)每個(gè)像素的坐標(biāo)相對(duì)應(yīng)的全景圖像像素坐標(biāo)520。水平特征幾何505和全景圖像像素坐標(biāo)520由實(shí)時(shí)全景圖像校正系統(tǒng)500A處理并輸出經(jīng)過校正的全景圖像530。全景圖像510可以是單個(gè)縫合的圖像(諸如來自靜止相機(jī))或圖像序列的一部分(諸如來自視頻相機(jī))。全景圖像510內(nèi)每個(gè)像素的坐標(biāo)被獲得以生成全景圖像像素坐標(biāo)520。例如,在直角坐標(biāo)框架中,像素坐標(biāo)520是全景圖像510內(nèi)通常對(duì)應(yīng)于被縫合以獲得全景圖像的一系列圖像的每個(gè)像素的(x,y)位置。實(shí)時(shí)全景圖像校正模塊500A包括翹曲表生成模塊540、翹曲表550以及實(shí)時(shí)圖像翹曲系統(tǒng)560。翹曲表生成模塊540被用于使用全景圖像翹曲函數(shù)生成翹曲表550。全景圖像像素坐標(biāo)520被處理以構(gòu)造翹曲表550。翹曲表生成模塊540的細(xì)節(jié)將在以下討論。翹曲表550包含以對(duì)應(yīng)于校正后的全景圖像530中的位置的方式排列的全景圖像像素坐標(biāo)520。因此,翹曲表550確定全景圖像像素坐標(biāo)520在校正后的全景圖像530中的新位置。一旦生成了翹曲表550,全景圖像510就被接收作為實(shí)時(shí)翹曲系統(tǒng)560的輸入。實(shí)時(shí)全景圖像翹曲系統(tǒng)560將翹曲表550應(yīng)用到全景圖像510以創(chuàng)建經(jīng)過校正的全景圖像530。實(shí)時(shí)翹曲系統(tǒng)560通過獲取全景圖像510位于包含在翹曲表550中的像素坐標(biāo)處的RGB值來針對(duì)經(jīng)校正的全景圖像530中的每個(gè)位置來創(chuàng)建經(jīng)校正的全景圖像530。全景像素坐標(biāo)520上的RGB值由此被重新布置在經(jīng)校正的全景圖像530中。新位置是使用翹曲表550來確定的。應(yīng)該注意的是,可以使用諸如YUV等任何顏色空間。在圖5B所示的本發(fā)明的另一實(shí)施例500B中,翹曲表被與將全景圖像縫合在一起的縫合表級(jí)聯(lián)起來。在該實(shí)施例中,一組輸入圖像512被縫合成虛構(gòu)全景圖像515并且該虛構(gòu)縫合的全景圖像的圖像像素坐標(biāo)522被輸入到系統(tǒng)500B中。實(shí)時(shí)全景圖像校正模塊500B包括翹曲表生成模塊540、翹曲表550、級(jí)聯(lián)的縫合和翹曲表555(在4.5節(jié)中更加具體地討論)、以及實(shí)時(shí)圖像翹曲系統(tǒng)560。翹曲表生成模塊540被用于使用參數(shù)化圖像翹曲函數(shù)生成翹曲表550。虛構(gòu)全景圖像515的全景圖像像素坐標(biāo)522被處理以創(chuàng)建翹曲表550。翹曲表生成模塊540的細(xì)節(jié)將在以下討論。翹曲表550包含以與經(jīng)校正全景圖像530中的位置相對(duì)應(yīng)的方式排列的全景圖像像素坐標(biāo)522。因此,翹曲表550為全景圖像像素坐標(biāo)522確定經(jīng)校正全景圖像530中的新位置。一旦生成了翹曲表550,就將其與用于縫合輸入圖像512集的縫合表相連接以創(chuàng)建級(jí)聯(lián)的翹曲和縫合表555。輸入圖像集512被作為實(shí)時(shí)圖像翹曲系統(tǒng)560的輸入被接收。實(shí)時(shí)全景圖像翹曲系統(tǒng)560將級(jí)聯(lián)的翹曲和縫合表555應(yīng)用到輸入圖像集512以生成經(jīng)校正的全景圖像530。實(shí)時(shí)圖像翹曲系統(tǒng)560通過獲取該組輸入圖像512位于包含在級(jí)聯(lián)的翹曲和縫合表555中的像素坐標(biāo)處的RGB值(或YUV、或其它顏色空間)來針對(duì)經(jīng)校正全景圖像530中的每個(gè)位置創(chuàng)建經(jīng)校正的全景圖像530。—虛構(gòu)全景像素坐標(biāo)522上的RGB值因此在縫合輸入圖像集512的同時(shí)被重新布置在經(jīng)校正的全景圖像530中。新位置是由使用級(jí)聯(lián)的翹曲和縫合表555來確定的。由于縫合器是靜態(tài)的并且需要最小的計(jì)算所以實(shí)時(shí)地進(jìn)行翹曲過程。翹曲表的生成意味著生成經(jīng)校正的全景圖像530所需的全部就是將翹曲表550(或級(jí)聯(lián)的翹曲和縫合表)應(yīng)用到全景圖像510或輸入圖像集512,這可以快速實(shí)現(xiàn)。2.0示例性操作環(huán)境本發(fā)明的實(shí)時(shí)全景圖像校正系統(tǒng)500A或500B被設(shè)計(jì)成在計(jì)算環(huán)境中操作。以下討論旨在提供可在其中實(shí)現(xiàn)本發(fā)明的合適計(jì)算環(huán)境的簡(jiǎn)短且一般性的說明。圖6是示出了適于執(zhí)行本發(fā)明的計(jì)算裝置的框圖。雖然并不要求如此,但將在諸如由計(jì)算機(jī)執(zhí)行的程序模塊等計(jì)算機(jī)可執(zhí)行指令的一般性語(yǔ)境中對(duì)本發(fā)明進(jìn)行說明。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域的技術(shù)人員將賞識(shí)到本發(fā)明還可在包括個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備、多處理器系統(tǒng)、基于微處理器的或編程消費(fèi)電子產(chǎn)品、網(wǎng)絡(luò)PC、微型計(jì)算機(jī)、大型計(jì)算機(jī)等各種計(jì)算機(jī)系統(tǒng)配置上實(shí)踐。本發(fā)明還可在通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)的分布式計(jì)算環(huán)境中實(shí)踐。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)器存儲(chǔ)設(shè)備的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)上。參照?qǐng)D6,用于實(shí)現(xiàn)本發(fā)明的一個(gè)示例性系統(tǒng)包括通用計(jì)算設(shè)備600。特別地,計(jì)算設(shè)備600包括處理單元602、系統(tǒng)存儲(chǔ)器604、以及將包括系統(tǒng)存儲(chǔ)器604在內(nèi)的各種系統(tǒng)組件耦合至處理單元602的系統(tǒng)總線606。系統(tǒng)總線606可以是包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、以及使用各種總線架構(gòu)的局部總線在內(nèi)的諸多類型的總線結(jié)構(gòu)中的任意一種。系統(tǒng)存儲(chǔ)器包括只讀存儲(chǔ)器(ROM)610和隨機(jī)存取存儲(chǔ)器(RAM)612。包含幫助在諸如啟動(dòng)期間在計(jì)算設(shè)備600內(nèi)的各要素之間傳送信息的基本例程的基本輸入/輸出系統(tǒng)(BIOS)614被存儲(chǔ)在ROM610中。計(jì)算設(shè)備600還包括對(duì)未示出的硬盤進(jìn)行讀取和寫入的硬盤驅(qū)動(dòng)器616、對(duì)可移動(dòng)磁盤620進(jìn)行讀取和寫入的磁盤驅(qū)動(dòng)器618、以及對(duì)諸如CD-ROM等可移動(dòng)光盤624或其它光學(xué)介質(zhì)進(jìn)行讀取和寫入的光盤驅(qū)動(dòng)器622。硬盤驅(qū)動(dòng)器616、磁盤驅(qū)動(dòng)器628以及光盤驅(qū)動(dòng)器622通過硬盤驅(qū)動(dòng)器接口626、磁盤驅(qū)動(dòng)器接口628以及光盤驅(qū)動(dòng)器接口630分別被連接至系統(tǒng)總線606。驅(qū)動(dòng)器極其相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)提供了對(duì)用于計(jì)算設(shè)備600的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊以及其它數(shù)據(jù)的非易失性存儲(chǔ)。雖然在此所述的示例性環(huán)境中采用了硬盤、可移動(dòng)磁盤620以及可移動(dòng)光盤624,然而本領(lǐng)域的技術(shù)人員應(yīng)該賞識(shí)到的是,諸如磁帶盒、閃存卡、數(shù)字視頻盤、Bernoulli盒式磁盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)等可以存儲(chǔ)計(jì)算機(jī)所能訪問的數(shù)據(jù)的其它類型的計(jì)算機(jī)可讀介質(zhì)也可使用在該示例性操作環(huán)境中??稍谟脖P、磁盤620、光盤624、ROM610或RAM612上存儲(chǔ)包括操作系統(tǒng)632、一個(gè)或多個(gè)應(yīng)用程序634、其它程序模塊636以及程序數(shù)據(jù)638在內(nèi)的許多程序模塊。用戶(未示出)可通過諸如鍵盤640和定點(diǎn)設(shè)備642等輸入設(shè)備向計(jì)算設(shè)備600輸入命令和信息。另外,相機(jī)643(諸如攝像機(jī))以及包括例如話筒、操縱桿、游戲墊、盤式衛(wèi)星天線、掃描器在內(nèi)的其它輸入設(shè)備(未示出)可以被連接至計(jì)算設(shè)備600。這些其它輸入設(shè)備經(jīng)常通過被耦合至系統(tǒng)總線606的串行端口接口644連接至處理單元602,但是也可以通過諸如并行端口、游戲端口或通用串行接口(USB)等其它接口來連接。監(jiān)視器646(或其它類型的顯示設(shè)備)也通過諸如視頻適配器648等接口被連接至系統(tǒng)總線606。除了監(jiān)視器646之外,諸如個(gè)人計(jì)算機(jī)等計(jì)算設(shè)備通常包括諸如揚(yáng)聲器或打印機(jī)等其它外圍輸出設(shè)備(未示出)。計(jì)算設(shè)備600可在使用對(duì)諸如遠(yuǎn)程計(jì)算機(jī)650等一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)的邏輯連接的聯(lián)網(wǎng)環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)650可以是另一臺(tái)個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它公共節(jié)點(diǎn),并且雖然在圖6中僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備652但通常包括以上關(guān)于計(jì)算設(shè)備600所述的部分或所有要素。圖6中所示的邏輯連接包括局域網(wǎng)(LAN)654和廣域網(wǎng)(WAN)656、這些聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)以及因特網(wǎng)中是較為普遍的。當(dāng)在LAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算設(shè)備600通過網(wǎng)絡(luò)接口或適配器658被連接到局域網(wǎng)654。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算設(shè)備600通常包括用于通過諸如因特網(wǎng)等廣域網(wǎng)656建立通信的調(diào)制解調(diào)器660或其它裝置??梢詢?nèi)置或外置的調(diào)制解調(diào)器660通過串行端口接口644被連接至系統(tǒng)總線606。在聯(lián)網(wǎng)環(huán)境中,關(guān)于計(jì)算設(shè)備600所繪的程序模塊或其部分可存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備652中。應(yīng)該賞識(shí)到的是,所示的聯(lián)網(wǎng)連接是示例性的,也可使用在計(jì)算機(jī)之間建立通信鏈接的其它方式。3.0實(shí)時(shí)全景圖像校正系統(tǒng)詳述一般而言,實(shí)時(shí)全景圖像校正系統(tǒng)500提供了全景圖像510的實(shí)時(shí)校正,尤其是將遠(yuǎn)離相機(jī)就坐的人的頭部大小歸一化或均衡化。系統(tǒng)500校正垂直和水平方向t的彎曲和失真。另外,系統(tǒng)500校正諸如深度和游動(dòng)運(yùn)動(dòng)等感知問題。圖7示出了圖5A或5B中所示的翹曲表生成模塊540的細(xì)節(jié)框圖。特別地,翹曲表生成模塊540包括用于輸入全景圖像像素坐標(biāo)520或虛構(gòu)全景圖像的像素坐標(biāo)522以及水平特征幾何505的輸入模塊700。這些像素坐標(biāo)520、522表示全景圖像510或虛構(gòu)全景圖像515中每個(gè)像素的位置。模塊540還包括垂直縮放模塊710。垂直縮放模塊710使用翹曲函數(shù)處理全景圖像像素坐標(biāo)520或虛構(gòu)全景圖像像素坐標(biāo)522的每條垂直掃描線從而使得在垂直方向上縮放全景圖像像素坐標(biāo)520、522。概念上,這可以被理解為在垂直方向上"拉伸"全景圖像510(或虛構(gòu)全景圖像515)。這種垂直縮放部分地校正了全景圖像510(或虛構(gòu)全景圖像515)中被夸大的深度。翹曲表生成模塊540還包括使用參數(shù)化圖像翹曲函數(shù)在水平方向上縮放圖像像素坐標(biāo)520、522的水平縮放模塊720。與垂直縮放類似,概念上這可以被理解為在水平方向上"拉伸"全景圖像510或虛構(gòu)全景圖像515。另外,水平縮放是對(duì)每條垂直掃描線個(gè)別地執(zhí)行的從而使得保持全景圖像510或虛構(gòu)全景圖像515的長(zhǎng)莧比。垂直縮放模塊710和水平縮放模塊720創(chuàng)建將初步像素坐標(biāo)映射至原始像素坐標(biāo)的初步翹曲表。該初步翹曲表可被用來創(chuàng)建初步校正圖像。實(shí)際上這并沒有被實(shí)行,且初步校正圖像是虛擬圖像。初步校正圖像具有垂直線條被保持垂直而水平線線條被彎曲這一特性。為了校正該水平失真,還在翹曲表生成模塊540中包括了水平失真模塊730。水平失真模塊730將在初步翹曲表中的初步像素坐標(biāo)根據(jù)位置垂直地縮放不同的量。翹曲表生成模塊540的輸出是翹曲表550。翹曲表將經(jīng)校正的全景圖像530中的像素坐標(biāo)映射到原始全景圖像像素坐標(biāo)520或虛構(gòu)縫合圖像的像素坐標(biāo)522。翹曲表可以與縫合表相級(jí)聯(lián)以創(chuàng)建級(jí)聯(lián)的翹曲和縫合表,并且可被用于從輸入圖像集縫合全景圖像。4.0實(shí)時(shí)全景圖像校正方法本發(fā)明的實(shí)時(shí)全景圖像校正方法使用被稱為空間變化一致縮放函數(shù)或svu縮放函數(shù)的參數(shù)化圖像翹曲函數(shù)。雖然svu縮放函數(shù)可以局部地類似于一致縮放函數(shù)以保持長(zhǎng)寬比,然而縮放因子在圖像上的變化造成翹曲。svu縮放函數(shù)避免了旋轉(zhuǎn)并且移除了在觀看全景圖像時(shí)的游動(dòng)運(yùn)動(dòng)。圖8示出了圖5A中所示的實(shí)時(shí)全景圖像校正系統(tǒng)500A的實(shí)時(shí)全景圖像校正方法的一個(gè)實(shí)施例的操作的一般性流程圖。來自全景圖像510的全景圖像像素坐標(biāo)520和水平特征幾何505作為輸入被接收(框800)。接著,生成翹曲表550(框810)。該翹曲表550被用于確定經(jīng)校正的全景圖像像素坐標(biāo)530的位置。如以下將具體討論的,翹曲表550的生成包括垂直縮放、水平縮放、水平失真校正。垂直縮放針對(duì)被夸大的深度對(duì)全景圖像510進(jìn)行校正。為了校正被夸大的深度,全景圖像510中央遠(yuǎn)處的物體或人需要相對(duì)于靠近相機(jī)的物體或人被放大。為了保持全景圖像510的長(zhǎng)寬比,還要執(zhí)行水平縮放。具體地,使用參數(shù)化圖像翹曲函數(shù)(諸如SVU縮放函數(shù))執(zhí)行水平縮放從而為全景圖像510的每條垂直掃描線生成新的寬度。雖然SVU函數(shù)保持了垂直線條垂直,但是引起了一定量的垂直剪切。視覺上,這被感知為傾斜或彎曲的水平線條。場(chǎng)景經(jīng)常包含諸如桌子和房間天花板等靠近圖像頂部或底部的水平表面,這些平面上的失真是較容易引入注意的。為了校正該垂直剪切,實(shí)時(shí)全景圖像校正方法還包括執(zhí)行針對(duì)水平失真對(duì)全景圖像510進(jìn)行校正的水平失真校正。一般而言,這是通過在全景圖像510中垂直位置上(諸如沿垂直掃描線)放寬垂直縮放的一致性以及進(jìn)行非線性縮放來實(shí)現(xiàn)的。在垂直縮放、水平縮放、以及水平失真校正之后,生成了將經(jīng)校正的全景圖像530中的像素映射到全景圖像510的翹曲表550。一旦已生成翹曲表550,全景圖像510就作為輸入被接收(框820)。全景圖像510隨后被實(shí)時(shí)地翹曲以生成經(jīng)校正的全景圖像530。翹曲表確立在全景圖像510中何處可找到對(duì)應(yīng)于經(jīng)校正的全景圖像530中的每個(gè)位置的像素以生成無畸變的全景圖像。圖8B示出了圖5A中所示的實(shí)時(shí)全景圖像校正系統(tǒng)500B的實(shí)時(shí)全景圖像校正方法的一個(gè)實(shí)施例的操作的一般性流程圖,它與關(guān)于圖8A所述的方式相類似進(jìn)行操作。來自虛構(gòu)全景圖像515的圖像像素坐標(biāo)522和水平特征幾何505作為輸入被接收(框800)。接著,生成翹曲表550(框810)。然后將翹曲表與翹曲表550相級(jí)聯(lián)以生成級(jí)聯(lián)的翹曲和縫合表(框815)。輸入用于生成虛構(gòu)全景圖像的輸入圖像集(框820)。級(jí)聯(lián)的翹曲和縫合表555然后被用于在縫合輸入圖像組的同時(shí)確定經(jīng)校正的全景圖像像素坐標(biāo)530的位置(框830)。然后輸出經(jīng)校正的全景圖像(框840)。以下進(jìn)一步具體討論各個(gè)縮放過程和模塊的細(xì)節(jié)。4.1垂直縮放圖9示出了圖7中710所示的垂直縮放模塊的細(xì)節(jié)的流程圖。水平特征幾何505和全景像素坐標(biāo)520或522作為輸入被接收(框900)。接著,使用一組曲線和縮放因子確定參數(shù)化圖像翹曲函數(shù)(諸如SVU縮放函數(shù))。特別地,連同翹曲因子(框920)—起指定源曲線(框910)。使用這些源曲線和翹曲因子,計(jì)算出目標(biāo)曲線(框930)。圖IO示出了通過(1)源曲線和(2)目標(biāo)曲線這兩組曲線確定翹曲函數(shù)。在本發(fā)明的一個(gè)方面,源曲線由用戶通過簡(jiǎn)單的用戶界面輸入。這些源曲線提供了參數(shù)化圖像翹曲函數(shù)的參數(shù)。通過該用戶界面,用戶被要求定義兩條三次曲線。這兩條源曲線定義了諸如人體頭部頂端、以及桌子邊緣等公共(實(shí)際)水平特征。如圖IO所示,頂端源曲線St和底端源曲線Sb被指定。通過對(duì)比圖10和圖4可以注意到為了計(jì)算該全景的源和目標(biāo)曲線,必須定義上下源曲線的四個(gè)不同部分以定義整個(gè)全景圖像的源曲線。除了手動(dòng)地指定源曲線之外,它們也可以從諸如會(huì)議桌以及和與會(huì)人員頭部相接觸的平面等水平特征幾何自動(dòng)地確定。假定會(huì)議桌是矩形的。可以在知道桌子寬度W和長(zhǎng)度L、相機(jī)高度h、相機(jī)的焦距長(zhǎng)度r、以及相機(jī)取向e的情況下計(jì)算出綠色源曲線。一旦確定了相機(jī)則焦距長(zhǎng)度r和相機(jī)高度h就是已知的。桌子尺寸可以在安裝期間由用戶提供。圖11演示了桌子邊緣到圓柱膠片上的投影(假定標(biāo)準(zhǔn)相機(jī)取向)。以下是表示圓柱圖像上桌子邊界的下源曲線的四個(gè)部分的方程式。rcos6Mri(W<formula>formulaseeoriginaldocumentpage17</formula>類似地,以下是表示圓柱圖像上與人體頭部的頂端相切的平面的上源曲線的四個(gè)不同部分的方程式,其中//表示相機(jī)離與會(huì)人員頭部頂端的平面距離。<formula>formulaseeoriginaldocumentpage17</formula>同樣可由用戶選擇的翹曲因子a確定圖像的翹曲程度。翹曲因子a位于0到1之間,其中01=0即無翹曲,而a-l即最大翹曲。概念上,指定00=0將不觸及該圖像,而指定01=1將源曲線上的像素拉至端點(diǎn)之間的線條。通常理想的翹曲因子位于近似0到1的中途處。一旦指定了源曲線和翹曲因子,就可計(jì)算出目標(biāo)曲線(框930)。令y=St(x)并且y-Sb(x)分別為頂端和底端源曲線的方程式。兩個(gè)目標(biāo)曲線(源曲線上的點(diǎn)將移至的位置)由源曲線和a確定。具體地,頂端目標(biāo)曲線Tt和底端目標(biāo)曲線Tb被定義。如果St(x)的端點(diǎn)之間的直線方程式被定義為y=yt(x),而連接底端源端點(diǎn)的直線方程式被定義為y=yb(x),則頂端目標(biāo)曲線的方程式為Tt(x)=(l-a)St(x)+ayt(x),和Tb(x)=(l-a)Sb(X)+ayb(x)。隨后使用源曲線和目標(biāo)曲線計(jì)算出主縮放因子r(x)(框940)。具體地,給定圖10中所示的任意垂直掃描線x,令A(yù)、B表示其與源曲線的交點(diǎn)而A'、B'表示與目標(biāo)曲線的交點(diǎn)。SVU縮放函數(shù)將AB縮放為A'B'。令t;(x)-t;(;0S,(x)-&(x)比率r(x)是位于水平位置x的垂直掃描線的主縮放因子。然后使用主縮放因子r(x)在垂直方向上縮放垂直掃描線的全景像素坐標(biāo)520(框950)。4.2水平縮放為了保持長(zhǎng)寬比,全景像素坐標(biāo)520還在水平方向上被縮放。該水平縮放使用相同的主縮放因子r(x)。換言之,就像垂直縮放那樣,垂直掃描線還根據(jù)主縮放因子r(x)被水平地縮放以保持長(zhǎng)寬比。圖12示出了圖7中所示的水平縮放模塊的細(xì)節(jié)的流程圖。被垂直縮放的全景像素坐標(biāo)作為輸入被接收(框1200)。使用主縮放因子r(x),該被垂直縮放的全景像素坐標(biāo)在水平方向上被縮放(框1210)。一旦該被垂直縮放的全景像素坐標(biāo)520被縮放,初步校正圖像的總體寬度W'就變?yōu)閣,=LK"血其中,w是全景(或源)圖像510的寬度。接著,生成初步翹曲表(框1220)。初步翹曲表包含初步像素坐標(biāo)。初步像素坐標(biāo)是己經(jīng)過垂直和水平縮放的全景像素坐標(biāo)。概念上,該初步像素坐標(biāo)可被用于構(gòu)造初步校正圖像。因此,對(duì)于全景圖像510中的任意像素(x,y),令(x',y,)表示其在初步校正圖像中的新位置。這產(chǎn)生,x,=工盧7;(x)+KxrCy-S,(x))以上方程式是SVU縮放函數(shù)的前向映射方程式。SVU縮放函數(shù)并不是在各處都是理想的一致縮放。容易證明在各處都是理想一致縮放的唯一函數(shù)是一致全局縮放函數(shù)。svu縮放函數(shù)類似于廣義圓柱表面上的投影。然而,這種簡(jiǎn)單的投影并不產(chǎn)生局部一致的縮放。需要局部一致縮放并且缺乏局部一致縮放導(dǎo)致初步校正圖像中的物體顯得被拉伸。4.3水平失真校正一旦已在垂直和水平方向上縮放全景像素坐標(biāo)520,就針對(duì)水平畸變糾正校正得到的初步翹曲表。水平失真校正是需要的,因?yàn)殡m然參數(shù)類圖像翹曲函數(shù)(諸如SVU縮放函數(shù))保持垂直線條垂直,但是彎曲了水平線條。為了使該問題最小化,在每條垂直掃描線上放寬縮放的一致性并且進(jìn)行非線性縮放。圖13示出了圖7中所示水平失真模塊730的細(xì)節(jié)的流程圖。一般而言,模塊730將初步翹曲表中的初步像素坐標(biāo)分為多個(gè)部分并根據(jù)用于每個(gè)部分的專用縮放因子在垂直方向上縮放該部分。各部分之間的縮放因子可以不同,并且通常在至少一個(gè)部分上不同。特定地,該水平失真校正模塊730首先將初步翹曲表分為多個(gè)部分(框1300)。在本發(fā)明的一個(gè)方面,初步校正圖像在概念上如圖14中所示的被劃分。圖14示出了垂直縮放函數(shù)以及初步校正圖像被分為三個(gè)部分的概念性視圖。應(yīng)該注意到的是在圖14中y是垂直方向。參照?qǐng)D14,第一部分1400被定義于底端源曲線Sb和頂端源曲線St之間。其它部分包括源曲線之外的部分,其中包括源曲線以下的第二部分1410和源曲線之上的第三部分920。位于源曲線之間的第一部分1300中的初步像素坐標(biāo)在垂直(y)方向使用主縮放因子r(x)縮放(框1310)。該垂直方向上的縮放是如上所述地執(zhí)行的。位于源曲線之外的部分(第二部分1310和第三部分1320)中的初步像素坐標(biāo)在垂直方向上被較小地縮放。這是通過最初指定次縮放因子(框1320)來執(zhí)行的。次縮放因子s在圖14中被示為位于主縮放因子r(x)以下。接著,位于源曲線之外的其它部分1410、1420中的初步像素坐標(biāo)在垂直方向上使用次縮放因子(框1330)被縮放。應(yīng)該注意的是,水平縮放保持相同(換言之,使用相同的主縮放因子r(x))從而使得垂直線條的直線性被保持。為了保持各部分之間的連續(xù)性,各部分之間的過渡通過應(yīng)用平滑參數(shù)w來獲得(框B40)。該平滑參數(shù)使垂直縮放函數(shù)平滑并且在垂直縮放函數(shù)穿越源曲線時(shí)平滑地連接不相同的縮放因子。參照?qǐng)D10和14,考慮圖10中所示的位于x上的垂直線條。如圖14所示,g(y)是可被定義為該垂直線上任意一點(diǎn)y上的垂直縮放因子的垂直縮放函數(shù)。應(yīng)該注意的是,g(y)依存于x。函數(shù)g(y)由次縮放因子s和平滑參數(shù)w這兩個(gè)參數(shù)控制。垂直掃描線中距離源曲線大于w/2的部分當(dāng)中,位于源曲線之間的按照主縮放因子r(x灘放,而位于源曲線之外的按照次縮放因子s縮放。三個(gè)恒定部分通過[St-0.5w,St+0.5w]中的兩個(gè)三次樣條粘合在一起。每個(gè)三次樣條具有值為s和r(x)的端點(diǎn)并且在兩個(gè)端點(diǎn)處斜率為0。平滑參數(shù)w控制源曲線處的連續(xù)性。例如,如果場(chǎng)景在源曲線處不連續(xù),則可以選擇非常小的w而不會(huì)有明顯偽像。在s,(x)的情況下,g(y)變成在獲得初步校正圖像中的新像素位置時(shí)假定的常量。一旦水平失真校正函數(shù)已被應(yīng)用到初步翹曲表,就生成包含經(jīng)校正的全景圖像530中全景像素坐標(biāo)的位置的翹曲表550(框1350)。翹曲表550然后作為輸出被發(fā)送(框1360)。翹曲表被用于從全景圖像510構(gòu)造經(jīng)校正的全景圖像530。4.4校正全景圖像觀看錯(cuò)誤感知svu縮放函數(shù)有助于校正深度錯(cuò)誤感知問題。這是通過使用用于觀看全景圖像的對(duì)稱svu縮放函數(shù)來實(shí)現(xiàn)的。底端源曲線是頂端源曲線的鏡像。源曲線經(jīng)過圖像拐角并且在中心垂直掃描線處具有最小值(或最大值)。一個(gè)參數(shù)指定中心點(diǎn)的高度而第二參數(shù)是以上討論的翹曲因子a。4.5級(jí)聯(lián)的翹曲/縫合表如上所提到的,翹曲表可以與被用來將圖像縫合成全景圖像的縫合表級(jí)聯(lián)在一起。例如,在一個(gè)圓形會(huì)議桌的實(shí)施例中,通過將從多個(gè)相機(jī)拍攝的圖像縫合在一起來生成會(huì)議室的圓柱投影??p合器使用將相機(jī)圖像映射到全景圖像上的縫合表??p合表通常是在制造校準(zhǔn)期間由相機(jī)制造商在工廠里創(chuàng)建的。該表包含全景中每個(gè)像素(x,y)的以下信息。(x,y)-全景像素坐標(biāo)(ul,vl)-相機(jī)1的圖像像素坐標(biāo)(u2,v2)-相機(jī)2的圖像像素坐標(biāo)相機(jī)1-主源相機(jī)相機(jī)2-在(x,y)處于重疊區(qū)域中時(shí)的次源相機(jī)。令S(x,y)表示像素(x,y)上的縫合器表項(xiàng)。艮卩,S(x,y)-(相機(jī)l,ul,vl,相機(jī)2,u2,v2}。為了將縫合器從圓柱轉(zhuǎn)化為直角,需要將該縫合表與翹曲表級(jí)聯(lián)起來。對(duì)于最終全景圖像(頭部大小歸一化之后)上的每個(gè)像素(x,y),令W(x,y)表示作為圓柱全景圖像上的像素坐標(biāo)的表項(xiàng)而令T表示S和W的級(jí)聯(lián)表。則T(x,y)=S(W(x,y))。該級(jí)聯(lián)表可以在安裝時(shí)刻被預(yù)先計(jì)算。在運(yùn)行時(shí)刻,操作與全景縫合相同。5.0用戶界面實(shí)時(shí)全景圖像校正系統(tǒng)的一個(gè)實(shí)施例為用戶提供了簡(jiǎn)化系統(tǒng)操作的用戶界面(UI)。該UI包括用于輸入所需設(shè)置的控制面板(例如,觸摸面板液晶顯示器),以及其中歸一化頭部從全景圖像被提取和顯示的具有發(fā)言人窗口的顯示器。另外,UI可包括用于顯示經(jīng)校正的或經(jīng)縮放的全景圖像的顯示,其大小將隨應(yīng)用的翹曲因子而變化,并且在圖像周界有額外的像素。這允許以標(biāo)準(zhǔn)大小在網(wǎng)路上傳輸經(jīng)校正的圖像而不需要為了發(fā)送不同大小和分辨率的圖像去重新協(xié)商網(wǎng)絡(luò)堆棧。5.1控制面板用于拍攝全景圖像的全向相機(jī)可具有諸如觸摸LCD屏等用于安裝和正常使用本發(fā)明的實(shí)時(shí)全景圖像校正系統(tǒng)的控制面板。在一個(gè)實(shí)施例中,可以輸入桌子形狀和大小、相機(jī)位置和取向以及頭部大小歸一化設(shè)置(0-100%)等。桌子形狀和大小設(shè)置可包括圓形(優(yōu)選地為默認(rèn));小矩形(例如,10X5');大矩形(例如,16X5');以及其它(在該情形中被用戶要求指定桌子的長(zhǎng)度和寬度)。默認(rèn)桌子設(shè)置(圓形)為非圓形桌子生成縫合圖像,但不將針對(duì)這些桌子類型的頭部大小歸一化。如上所討論的,在本發(fā)明的一個(gè)實(shí)施例中,全向相機(jī)位置和取向可以通過控制面板來設(shè)置。默認(rèn)位置是桌子中央。默認(rèn)取向是LCD在靠近桌子長(zhǎng)端處可讀(即,文本(text)平行于桌子的主對(duì)稱軸)。相機(jī)的取向是非常重要的,因?yàn)槿绻∠虿徽_,則翹曲可能實(shí)際上使得頭部大小更加不同而不是使其相等。相機(jī)取向可在不影響可知效果的情況下+/-15度變化。各種常規(guī)方法可被用來保持相機(jī)在安裝后的取向。還可以自動(dòng)地確定相機(jī)桌形狀和大小以及全向相機(jī)位置。此外,在本發(fā)明的一個(gè)實(shí)施例中,頭部大小歸一化百分比可通過LCD設(shè)置。該參數(shù)可以用滑塊來設(shè)置從而允許從0%歸一化(圓柱)到100%歸一化(直角)之間連續(xù)性設(shè)置。沒有將設(shè)置處于100%的主要原因是使得歸一化對(duì)于相機(jī)位置和旋轉(zhuǎn)變化更為穩(wěn)健,并且提供了某些用戶期望的一些透視失真。5.2發(fā)言人窗口UI可包括通過從全景圖像直接復(fù)制子窗口以從全景圖像提取頭部的具有發(fā)言人窗口的顯示窗格。該子窗口然后作為單獨(dú)的顯示窗格被顯示。所提取的頭部可以不被歸一化或被歸一化。該特征在視頻會(huì)議中正在講話的人,特別是在他們位置離相機(jī)相對(duì)較遠(yuǎn)時(shí)尤其有用。通過提取被放大的頭部,可以看到人的表情。這在人們正在講話時(shí)尤其有益。5.3經(jīng)填充的全景圖像另外,UI可包括用于顯示和發(fā)送經(jīng)過填充的全景圖像的特征。由于顯示具有不同翹曲因子的圖像將會(huì)被校正為不同的大小,所以該經(jīng)填充的全景圖像顯示在經(jīng)校正的圖像周圍添加了額外的像素以使其成為標(biāo)準(zhǔn)大小。例如,諸如黑色條等條形可被添加在圖像的頂端或底端。經(jīng)填充的校正圖像的一個(gè)例子在圖15中被示出。該經(jīng)填充的全景圖像允許系統(tǒng)相對(duì)于每幅經(jīng)校正的全景圖像都保持恒定大小和分辨率D這還允許在不需要為了發(fā)送不同大小和分辨率的圖像而重新協(xié)商網(wǎng)絡(luò)堆棧的情況下傳輸每一幅經(jīng)校正的全景圖像。接收?qǐng)D像的一方然后可顯示該經(jīng)填充的具有或沒有條形的全景圖像。出于示例和說明的目的給出了本發(fā)明的以上說明。其不是意在無遺漏的描述或者將本發(fā)明限制于所公開的精確形式中。根據(jù)以上教義,許多修改和變更都是可能的。本發(fā)明的范圍旨在由所附權(quán)利要求而不是本發(fā)明的具體說明來限制的。權(quán)利要求1.一種用于執(zhí)行全景圖像的實(shí)時(shí)校正的方法,包括從約360度的全景圖像獲得全景像素坐標(biāo);通過對(duì)所述全景像素坐標(biāo)應(yīng)用空間變化一致(SVU)縮放函數(shù)來生成翹曲表;以及使用所述翹曲表和所述全景圖像中水平特征的幾何來翹曲所述全景圖像以生成經(jīng)校正的全景圖像。2.如權(quán)利要求l所述的方法,其特征在于,生成翹曲表還包括使用所述SVU縮放函數(shù)垂直地縮放所述全景圖像像素坐標(biāo)以創(chuàng)建經(jīng)過垂直縮放的全景圖像像素坐標(biāo);使用所述SVU縮放函數(shù)水平縮放所述經(jīng)垂直縮放的全景圖像像素坐標(biāo)以創(chuàng)建包含初步像素坐標(biāo)的初步翹曲表;以及使用所述SVU縮放函數(shù)對(duì)所述初步翹曲表執(zhí)行水平畸變校正以創(chuàng)建所述翹曲表。3.如權(quán)利要求2所述的方法,其特征在于,垂直縮放包括使用主縮放因子在垂直方向上縮放所述全景圖像像素坐標(biāo)。4.如權(quán)利要求3所述的方法,其特征在于,還包括使用源曲線和目標(biāo)曲線來計(jì)算所述主縮放因子。5.如權(quán)利要求4所述的方法,其特征在于,還包括指定源曲線;指定翹曲因子;以及使用所述源曲線和所述翹曲因子來計(jì)算目標(biāo)曲線。6.如權(quán)利要求5所述的方法,其特征在于,所述源曲線還包括底端源曲線和頂端源曲線。7.如權(quán)利要求6所述的方法,其特征在于,所述底端源曲線由所述水平特征幾何來定義。8.如權(quán)利要求7所述的方法,其特征在于,所述水平特征是桌子,并且拍攝所述全景圖像的相機(jī)近似位于所述桌子的中央。9.如權(quán)利要求8所述的方法,其特征在于,所述底端源曲線由以下各式定義<formula>formulaseeoriginaldocumentpage3</formula>其中,『是桌寬,丄是桌長(zhǎng),A是相機(jī)高度,r是相機(jī)焦距,cc是在0到l之間的翹曲因子,并且0是相機(jī)取向。10.如權(quán)利要求6所述的方法,其特征在于,所述頂端源曲線是基于與坐在桌子周圍的人的頭部頂端近似相接觸的平面,所述桌子中央放有拍攝所述全景圖像的相機(jī)。11.如權(quán)利要求IO所述的方法,其特征在于,所述頂端源曲線由以下各式定義:<formula>formulaseeoriginaldocumentpage3</formula>其中,『是桌寬,丄是桌長(zhǎng),/V是所述與人的頭部相接觸的平面的高度,r是相機(jī)焦距,a是在o到i之間的翹曲因子,并且e是相機(jī)取向。12.如權(quán)利要求2所述的方法,其特征在于,所述水平縮放還包括使用針對(duì)每條垂直掃描線的主縮放因子在水平方向上縮放所述全景圖像像素坐標(biāo)。13.如權(quán)利要求12所述的方法,其特征在于,所述主縮放因子是使用源曲線和目標(biāo)曲線計(jì)算得到的。14.如權(quán)利要求3所述的方法,其特征在于,執(zhí)行水平畸變校正還包括將所述初步翹曲表分為多個(gè)部分;以及使用至少兩個(gè)不同的縮放因子在垂直方向上縮放包含在所述各部分的每一個(gè)部分中的初步像素坐標(biāo)。15.如權(quán)利要求1所述的方法,其特征在于,所述翹曲表是從用戶指定的桌子尺寸和相機(jī)參數(shù)計(jì)算出的。16.—種具有用于執(zhí)行如權(quán)利要求1所述的方法的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì)。17.—種用于校正約360度全景圖像的畸變的方法,包括輸入一組圖像;輸入與從所輸入的一組圖像創(chuàng)建的虛構(gòu)全景圖像的像素坐標(biāo)相對(duì)應(yīng)的圖像像素坐標(biāo);使用具有縮放因子的空間變化一致(SVU)縮放函數(shù)來生成包含對(duì)圖像畸變進(jìn)行校正的經(jīng)校正的像素坐標(biāo)的翹曲表;將用于創(chuàng)建所述虛構(gòu)全景圖像的縫合表與所述翹曲表級(jí)聯(lián);以及使用級(jí)聯(lián)的翹曲和縫合表從所輸入的一組圖像創(chuàng)建經(jīng)校正的全景圖像。18.如權(quán)利要求17所述的方法,其特征在于,所述經(jīng)校正的全景圖像是實(shí)時(shí)創(chuàng)建的。19.如權(quán)利要求18所述的方法,其特征在于,還包括將所述翹曲表與用于將圖像縫合在一起以創(chuàng)建所述全景圖像的縫合表級(jí)聯(lián)。20.如權(quán)利要求18所述的方法,其特征在于,所述經(jīng)校正的全景圖像被校正以增大遠(yuǎn)離拍攝圖像序列相機(jī)的物體的大小。21.—種具有用于實(shí)時(shí)校正和觀看全景圖像的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),所述指令包括執(zhí)行生成翹曲表以翹曲用來創(chuàng)建全景圖像的圖像序列中的像素,還包括在所述全景圖像上指定源曲線;指定與被應(yīng)用到所述全景圖像像素坐標(biāo)的翹曲量相對(duì)應(yīng)的翹曲因子;使用所述源曲線和所述翹曲因子計(jì)算目標(biāo)曲線;使用所述源曲線和所述目標(biāo)曲線計(jì)算主縮放因子;使用所述主縮放因子來縮放所述全景圖像像素坐標(biāo)以生成所述翹曲表;將所述翹曲表與被用以創(chuàng)建所述全景圖像的縫合表級(jí)聯(lián);以及在將所述圖像序列縫合成經(jīng)校正的全景圖像的同時(shí)應(yīng)用所述級(jí)聯(lián)的翹曲和縫合表。22.如權(quán)利要求21所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述計(jì)算機(jī)可讀介質(zhì)被嵌入在全向相機(jī)中。全文摘要一種用于減少由全向相機(jī)拍攝圖像中的畸變和感知問題的實(shí)時(shí)近似360度圖像校正系統(tǒng)和方法。一般而言,該實(shí)時(shí)全景圖像校正方法從全景圖像的像素坐標(biāo)中生成翹曲表并將該翹曲表應(yīng)用到全景圖像以生成經(jīng)校正的全景圖像。該校正是使用包括空間變化一致(SVU)縮放函數(shù)在內(nèi)的參數(shù)類翹曲函數(shù)來執(zhí)行的。該SVU縮放函數(shù)和縮放因子被用來執(zhí)行對(duì)該全景圖像像素坐標(biāo)的垂直和水平縮放。使用SVU縮放函數(shù)以至少兩個(gè)不同的縮放因子執(zhí)行水平失真校正。該處理生成可被應(yīng)用到全景圖像以產(chǎn)生經(jīng)校正的全景圖像的翹曲表。在一個(gè)實(shí)施例中,該翹曲表被與用于創(chuàng)建全景圖像的縫合表相級(jí)聯(lián)。文檔編號(hào)G06T5/00GK101160591SQ200680012198公開日2008年4月9日申請(qǐng)日期2006年2月16日優(yōu)先權(quán)日2005年4月14日發(fā)明者M(jìn)·科恩,R·柯特勒,劉自成,張正友申請(qǐng)人:微軟公司