專利名稱:基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)字?jǐn)z影測(cè)量應(yīng)用技術(shù)領(lǐng)域的系統(tǒng),具體是一種基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng)。
背景技術(shù):
交通事故現(xiàn)場(chǎng)勘測(cè)中采用數(shù)字?jǐn)z影測(cè)量技術(shù),能夠有效縮短事故勘測(cè)時(shí)間,提高現(xiàn)場(chǎng)尺寸測(cè)繪精度,同時(shí)避免傳統(tǒng)手工測(cè)繪中的漏測(cè)、錯(cuò)畫等現(xiàn)象,為事故現(xiàn)場(chǎng)的二次取證提供法律依據(jù)。因此研究數(shù)字?jǐn)z影測(cè)量技術(shù)應(yīng)用于交通事故現(xiàn)場(chǎng)勘測(cè)的理論和方法,對(duì)于快速恢復(fù)道路暢通和提高現(xiàn)場(chǎng)尺寸測(cè)繪精度以及為事故現(xiàn)場(chǎng)的二次取證提供法律依據(jù)方面具有重要意義。交警現(xiàn)場(chǎng)拍攝的照片是從攝影中心投影形成的透視圖,由于鏡頭畸變和透視畸變?cè)斐傻膸缀巫冃?,無法直接在透視圖上測(cè)繪剎車痕跡的長(zhǎng)度、人與車的相對(duì)距離以及散落物的位置等事故現(xiàn)場(chǎng)尺寸信息。透視圖只有經(jīng)過幾何校正后才能轉(zhuǎn)換為正射影像圖,從而恢復(fù)交通事故現(xiàn)場(chǎng)的物方空間信息,進(jìn)而實(shí)現(xiàn)事故現(xiàn)場(chǎng)尺寸的測(cè)繪。如何對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行幾何校正以生成正射影像圖,并提高正射影像圖上事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度成為目前研究的焦點(diǎn)。經(jīng)對(duì)現(xiàn)有技術(shù)文獻(xiàn)的檢索發(fā)現(xiàn)Ζ· M. Tao等在I^roceedings of the 9th International Conference of Chinese Transportation Professionals, 2009 :177-184 上發(fā)表文章“Analysis of deformation characteristics of collision vehicles using close-range photogrammetry"( “采用近景攝影測(cè)量進(jìn)行事故車輛變形特征分析”,電力系統(tǒng)及其自動(dòng)化專業(yè)第九屆中國(guó)國(guó)際運(yùn)輸會(huì)議,2009 177-184),該文利用近景立體攝像機(jī)拍攝現(xiàn)場(chǎng)照片,并通過平行軸立體視覺理論計(jì)算車輛變形的三維坐標(biāo)進(jìn)行事故變形范圍、 形狀和深度分析。但該方法需要購(gòu)置昂貴的量測(cè)用立體攝像機(jī),而且其三維坐標(biāo)的計(jì)算過程比較復(fù)雜和耗時(shí),難以滿足交通事故現(xiàn)場(chǎng)快速勘測(cè)的要求。經(jīng)檢索還發(fā)現(xiàn),X.G.DU等在 Advances in Engineering Software, 2009 :497-505 上發(fā)表文章 “Geometry features measurement of traffic accident for reconstruction based on close-range photogrammetry"( “基于近景攝影測(cè)量的交通事故再現(xiàn)幾何特征測(cè)量”,工程軟件進(jìn)展, 2009:497-505),該文采用直接線性變換法建立像空間到物方空間的映射關(guān)系進(jìn)而實(shí)現(xiàn)交通事故現(xiàn)場(chǎng)圖的幾何校正。但該方法屬于純粹基于控制點(diǎn)的校正方法,當(dāng)控制點(diǎn)個(gè)數(shù)不足或像空間坐標(biāo)因鏡頭畸變發(fā)生偏差時(shí),難以準(zhǔn)確建立像空間到物方空間的映射關(guān)系,從而降低了幾何校正后生成的正射影像圖上交通事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有技術(shù)的不足,提出一種基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng)。使其充分利用事故現(xiàn)場(chǎng)提取到的直線特征,通過添加平行線相對(duì)控制約束,從而有效校正了鏡頭畸變和透視畸變?cè)斐傻氖鹿尸F(xiàn)場(chǎng)圖幾何變形,實(shí)現(xiàn)了交通事故現(xiàn)場(chǎng)圖的幾何校正及其生成的正射影像圖上的尺寸標(biāo)注功能。
本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的,本發(fā)明包括五個(gè)部分標(biāo)定物信息采集模塊、 二維DLT(直接線性變換)系數(shù)求解模塊、單應(yīng)性矩陣計(jì)算模塊、幾何校正模塊和尺寸標(biāo)注模塊。標(biāo)定物信息采集模塊負(fù)責(zé)提取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,并將相應(yīng)數(shù)據(jù)分別存入控制點(diǎn)數(shù)據(jù)庫(kù)和控制線數(shù)據(jù)庫(kù);二維DLT系數(shù)求解模塊通過與數(shù)據(jù)庫(kù)的接口獲取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,經(jīng)方程聯(lián)立解出8個(gè)DLT系數(shù)的值;單應(yīng)性矩陣計(jì)算模塊根據(jù)DLT系數(shù)建立像空間到物方空間的映射關(guān)系,進(jìn)而得出單應(yīng)性矩陣;幾何校正模塊通過單應(yīng)性矩陣對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行幾何校正,經(jīng)空間坐標(biāo)變換和灰度重采樣生成交通事故現(xiàn)場(chǎng)正射影像圖;尺寸標(biāo)注模塊以交通事故現(xiàn)場(chǎng)正射影像圖為基礎(chǔ),實(shí)現(xiàn)直接在正射影像圖上標(biāo)注任意點(diǎn)的實(shí)際空間坐標(biāo)和任意兩點(diǎn)間的實(shí)際空間距離的功能。本系統(tǒng)采用層次化和模塊化結(jié)構(gòu)設(shè)計(jì),層與層之間只存在單向調(diào)用和單向依賴關(guān)系,模塊之間相互協(xié)調(diào)和配合共同組成一個(gè)完整的系統(tǒng)。每個(gè)模塊可以單獨(dú)視為一層,當(dāng)前層的輸入數(shù)據(jù)僅依賴于上一層的輸出結(jié)果,當(dāng)前層的輸出結(jié)果僅可作為下一層的輸入數(shù)據(jù)。標(biāo)定物信息采集模塊為二維DLT系數(shù)求解模塊提供必須的控制點(diǎn)和控制線的相關(guān)參數(shù)信息,二維DLT系數(shù)求解模塊的輸出結(jié)果可作為單應(yīng)性矩陣計(jì)算模塊的輸入,而單應(yīng)性矩陣計(jì)算模塊得到的單應(yīng)性矩陣則為幾何校正模塊提供空間坐標(biāo)變換的依據(jù),幾何校正模塊生成的交通事故現(xiàn)場(chǎng)正射影像圖是尺寸標(biāo)注模塊進(jìn)行標(biāo)注的前提。這樣層與層之間通過單向調(diào)用和單向依賴,使相鄰兩個(gè)模塊間相互協(xié)調(diào)和配合起來,共同組成了一個(gè)完整的系統(tǒng)。所述標(biāo)定物信息采集模塊從交通事故現(xiàn)場(chǎng)圖中提取控制點(diǎn)和控制線的像空間坐標(biāo)信息,并將相應(yīng)的數(shù)據(jù)分別存入控制點(diǎn)數(shù)據(jù)庫(kù)和控制線數(shù)據(jù)庫(kù),控制點(diǎn)的物方空間坐標(biāo)根據(jù)交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系確定,并在存入控制點(diǎn)數(shù)據(jù)庫(kù)時(shí)通過構(gòu)建的CPoint2類(擴(kuò)展點(diǎn)類)對(duì)象與其相應(yīng)的像空間坐標(biāo)相關(guān)聯(lián)。CPoint2類派生自MFC (微軟基礎(chǔ)類庫(kù))的基類CPoint類(點(diǎn)類),它封裝了控制點(diǎn)的物方空間坐標(biāo)和像空間坐標(biāo),建立了它們之間的一一映射關(guān)系。這種數(shù)據(jù)封裝方式,能夠有效避免數(shù)據(jù)使用的混亂,確保了控制點(diǎn)物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo)的正確映射關(guān)系。標(biāo)定物信息采集模塊提取的控制點(diǎn)的相關(guān)參數(shù)信息包括每個(gè)控制點(diǎn)的物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo);提取的控制線的相關(guān)參數(shù)信息包括物方空間每條平行于X 軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo);物方空間每條平行于Y軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)。為保證二維DLT系數(shù)求解模塊能夠順利執(zhí)行,標(biāo)定物信息采集模塊在進(jìn)行控制點(diǎn)和控制線的選取時(shí)應(yīng)滿足以下兩個(gè)條件第一、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩條平行于X軸的直線段和至少兩條平行于Y軸的直線段;第二、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩個(gè)控制點(diǎn),并已測(cè)得它們實(shí)際的物方空間坐標(biāo)。所述二維DLT系數(shù)求解模塊首先通過與數(shù)據(jù)庫(kù)的接口獲取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,在此基礎(chǔ)上分別建立物方空間X軸平行線在像空間的約束方程組和物方空間 Y軸平行線在像空間的約束方程組,然后通過OpenCV(開放式計(jì)算機(jī)視覺)核心模塊中的 API (應(yīng)用程序接口)采用最小二乘法分別對(duì)這些方程組求解得出中間變量的值;再將這些中間變量的值與控制點(diǎn)的二維直接線性變換公式聯(lián)立,建立求解方程組,最后通過OpenCV
5核心模塊中的API采用最小二乘法解出DLT系數(shù)的值。所述單應(yīng)性矩陣計(jì)算模塊由二維直接線性變換公式反解出物方空間坐標(biāo)關(guān)于像空間坐標(biāo)的表達(dá)式,建立像空間到物方空間的映射關(guān)系,然后通過Visual C++語言計(jì)算單應(yīng)性矩陣中每個(gè)元素的值。單應(yīng)性矩陣計(jì)算模塊的輸入是二維DLT系數(shù)求解模塊得出的8 個(gè)DLT系數(shù)的值,輸出為一個(gè)3行3列的單應(yīng)性矩陣。所得的單應(yīng)性矩陣保存在OpenCV的基本數(shù)據(jù)結(jié)構(gòu)CvMat (矩陣結(jié)構(gòu)體)創(chuàng)建的一個(gè)3行3列64位單通道的對(duì)象中,它可作為該模塊的輸出參數(shù)提供給幾何校正模塊直接使用。所述幾何校正模塊首先根據(jù)單應(yīng)性矩陣對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行空間坐標(biāo)變換,得到事故現(xiàn)場(chǎng)圖上每個(gè)像素點(diǎn)的物方空間坐標(biāo),然后對(duì)物方空間坐標(biāo)進(jìn)行灰度重采樣得到交通事故現(xiàn)場(chǎng)正射影像圖。當(dāng)變換后的物方空間坐標(biāo)對(duì)應(yīng)的事故現(xiàn)場(chǎng)圖上的像空間坐標(biāo)恰好為整數(shù)值時(shí),這時(shí)物方空間坐標(biāo)的灰度值可直接取事故現(xiàn)場(chǎng)圖上像空間坐標(biāo)的灰度值;當(dāng)計(jì)算得到的物方空間坐標(biāo)對(duì)應(yīng)的事故現(xiàn)場(chǎng)圖上的像空間坐標(biāo)不為整數(shù)值時(shí),這時(shí)并無現(xiàn)成的灰度值能用,可采用雙線性插值法把該點(diǎn)周圍整數(shù)點(diǎn)位上灰度值對(duì)該點(diǎn)的灰度貢獻(xiàn)積累起來,構(gòu)成該點(diǎn)位新的灰度值。所述尺寸標(biāo)注模塊以交通事故現(xiàn)場(chǎng)正射影像圖為基礎(chǔ),實(shí)現(xiàn)直接在正射影像圖上進(jìn)行單點(diǎn)的坐標(biāo)標(biāo)注和任意兩點(diǎn)間的距離標(biāo)注功能。單點(diǎn)坐標(biāo)標(biāo)注首先經(jīng)坐標(biāo)轉(zhuǎn)換獲取正射影像圖上該點(diǎn)的物方空間坐標(biāo),然后通過Windows⑶I (Windows圖形設(shè)備接口)繪圖函數(shù)進(jìn)行標(biāo)注;任意兩點(diǎn)間的距離標(biāo)注可首先采取單點(diǎn)坐標(biāo)標(biāo)注的方式分別獲取兩個(gè)點(diǎn)的物方空間坐標(biāo),然后在此基礎(chǔ)上計(jì)算出它們之間的實(shí)際空間距離,再將所得結(jié)果通過Windows ⑶I繪圖函數(shù)標(biāo)注在交通事故現(xiàn)場(chǎng)正射影像圖上。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)能夠有效校正交通事故現(xiàn)場(chǎng)圖幾何變形, 并提高幾何校正后生成的正射影像圖上事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度。傳統(tǒng)的事故現(xiàn)場(chǎng)圖幾何校正方法只是基于控制點(diǎn)的校正,當(dāng)控制點(diǎn)個(gè)數(shù)不足或像空間坐標(biāo)因鏡頭的徑向畸變和切向畸變發(fā)生偏差時(shí),就無法準(zhǔn)確建立像空間到物方空間的映射關(guān)系,這樣也就難以對(duì)事故現(xiàn)場(chǎng)圖進(jìn)行精確的幾何校正,從而降低了交通事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度;不同于傳統(tǒng)的僅僅依賴于控制點(diǎn)的事故現(xiàn)場(chǎng)圖幾何校正方法,本發(fā)明充分利用交通事故現(xiàn)場(chǎng)提取到的直線特征,通過添加平行線相對(duì)控制約束,從而有效校正了鏡頭畸變和透視畸變?cè)斐傻氖鹿尸F(xiàn)場(chǎng)圖幾何變形,進(jìn)而提高了幾何校正后生成的正射影像圖上事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度。另外,本發(fā)明還可以用盡可能少(最少需要兩個(gè))的控制點(diǎn)實(shí)現(xiàn)交通事故現(xiàn)場(chǎng)圖的幾何校正。傳統(tǒng)的事故現(xiàn)場(chǎng)圖幾何校正方法至少需要確定事故現(xiàn)場(chǎng)四個(gè)控制點(diǎn)的物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo),當(dāng)控制點(diǎn)的個(gè)數(shù)少于四個(gè)時(shí),就無法完成事故現(xiàn)場(chǎng)圖的幾何校正。本發(fā)明可以在控制點(diǎn)個(gè)數(shù)不足時(shí),只需利用兩個(gè)控制點(diǎn)和兩條平行于X軸的直線段以及兩條平行于Y軸的直線段,在不必知道平行線段端點(diǎn)的物方空間坐標(biāo)的情況下,就能實(shí)現(xiàn)交通事故現(xiàn)場(chǎng)圖的幾何校正。
圖1本發(fā)明系統(tǒng)結(jié)構(gòu)2本發(fā)明標(biāo)定物信息采集示意3本發(fā)明事故現(xiàn)場(chǎng)圖幾何校正及尺寸標(biāo)注示意圖
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例作詳細(xì)說明本實(shí)施例以本發(fā)明技術(shù)方案為前提下進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式和具體的操作過程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施例。如圖1所示,本實(shí)施例包括五個(gè)部分標(biāo)定物信息采集模塊、二維DLT系數(shù)求解模塊、單應(yīng)性矩陣計(jì)算模塊、幾何校正模塊和尺寸標(biāo)注模塊。標(biāo)定物信息采集模塊負(fù)責(zé)提取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,并將相應(yīng)數(shù)據(jù)分別存入控制點(diǎn)數(shù)據(jù)庫(kù)和控制線數(shù)據(jù)庫(kù);二維DLT系數(shù)求解模塊通過與數(shù)據(jù)庫(kù)的接口獲取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,經(jīng)方程聯(lián)立解出8個(gè)DLT系數(shù)的值;單應(yīng)性矩陣計(jì)算模塊根據(jù)DLT系數(shù)建立像空間到物方空間的映射關(guān)系,進(jìn)而得出單應(yīng)性矩陣;幾何校正模塊通過單應(yīng)性矩陣對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行幾何校正,經(jīng)空間坐標(biāo)變換和灰度重采樣生成交通事故現(xiàn)場(chǎng)正射影像圖;尺寸標(biāo)注模塊以交通事故現(xiàn)場(chǎng)正射影像圖為基礎(chǔ),實(shí)現(xiàn)直接在正射影像圖上標(biāo)注任意點(diǎn)的實(shí)際空間坐標(biāo)和任意兩點(diǎn)間的實(shí)際空間距離的功能。本實(shí)施例的五個(gè)模塊之間存在一定的邏輯關(guān)系,當(dāng)前模塊的輸入?yún)?shù)僅依賴于前一個(gè)模塊的輸出結(jié)果,當(dāng)前模塊的輸出結(jié)果僅可作為下一個(gè)模塊的輸入?yún)?shù),模塊間按照從前到后的順序依次執(zhí)行完成系統(tǒng)的總功能。如圖1中的箭頭所示,這五個(gè)模塊的先后執(zhí)行順序依次為標(biāo)定物信息采集模塊、二維DLT系數(shù)求解模塊、單應(yīng)性矩陣計(jì)算模塊、幾何校正模塊和尺寸標(biāo)注模塊。相應(yīng)實(shí)現(xiàn)的功能依次為標(biāo)定物信息采集、二維DLT系數(shù)求解、 單應(yīng)性矩陣計(jì)算、事故現(xiàn)場(chǎng)圖幾何校正和尺寸標(biāo)注。下面按照這五個(gè)模塊的先后執(zhí)行順序, 對(duì)本實(shí)施例的具體操作過程和實(shí)施步驟作詳細(xì)說明1.標(biāo)定物信息采集交通事故現(xiàn)場(chǎng)標(biāo)定物信息的采集通過MFC創(chuàng)建的⑶1(圖形用戶接口)界面與用戶進(jìn)行交互。交警在事故現(xiàn)場(chǎng)拍攝的照片首先通過Windows⑶I構(gòu)建的一個(gè)m_ dcCompatible (設(shè)備環(huán)境兼容對(duì)象)加載到計(jì)算機(jī)內(nèi)存空間中,然后將其以位圖的形式顯示在Windows窗口應(yīng)用程序的客戶區(qū)。用戶根據(jù)窗口客戶區(qū)顯示的圖像內(nèi)容,通過硬件操作(鼠標(biāo)、鍵盤或觸摸屏)直接在圖像上提取控制點(diǎn)和控制線的像空間坐標(biāo)信息,控制點(diǎn)的物方空間坐標(biāo)根據(jù)交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系確定,并在用戶提取該控制點(diǎn)的像空間坐標(biāo)時(shí)通過GUI界面輸入系統(tǒng)。如圖2所示,該圖中通過選擇道路交通標(biāo)線的端點(diǎn)和邊緣分別作為控制點(diǎn)Si、S2和控制線Li、L2、L3、L4。提取的控制點(diǎn)的相關(guān)參數(shù)信息包括每個(gè)控制點(diǎn)的物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo);提取的控制線的相關(guān)參數(shù)信息包括物方空間每條平行于X軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo);物方空間每條平行于Y軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)。提取到的控制點(diǎn)和控制線的相關(guān)參數(shù)信息分別保存在由MFC的CObArray (動(dòng)態(tài)數(shù)組基類)構(gòu)建的兩個(gè)對(duì)象m_Point2Array (點(diǎn)數(shù)組)和m_ LineArray (直線數(shù)組)中。其中m_Point2Array用來收集CPoint2類對(duì)象,而CPoint2類對(duì)象封裝了控制點(diǎn)的物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo),建立了它們之間的正確映射關(guān)系。每個(gè)CPoint2類對(duì)象通過CObArray的成員函數(shù)ktAt (設(shè)置動(dòng)態(tài)數(shù)組成員對(duì)象函數(shù)) 保存在m_Point2Array對(duì)象中。
7
為保證二維DLT系數(shù)求解模塊能夠順利執(zhí)行,用戶在進(jìn)行控制點(diǎn)和控制線的選取時(shí)應(yīng)滿足以下兩個(gè)條件第一、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩條平行于X 軸的直線段和至少兩條平行于Y軸的直線段;第二、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩個(gè)控制點(diǎn),并已測(cè)得它們實(shí)際的物方空間坐標(biāo)。2. 二維DLT系數(shù)求解二維DLT系數(shù)求解模塊首先從數(shù)據(jù)庫(kù)m_Point2Array和m_LineArray中通過 CObArray的成員函數(shù)GetAt (獲取動(dòng)態(tài)數(shù)組成員對(duì)像函數(shù))提取控制點(diǎn)S1、S2和控制線Li、 L2、L3、L4的相關(guān)參數(shù)信息,在此基礎(chǔ)上分別建立物方空間X軸平行線和Y軸平行線在像空間的約束方程組,解得中間變量的值;然后把這些中間變量的值與控制點(diǎn)的二維直接線性變換公式聯(lián)立,最終求出8個(gè)DLT系數(shù)I1, I2, I3, I4, I5, I6, I7, I8的值。該過程可分為以下三個(gè)步驟第一步、根據(jù)物方空間平行于X軸的直線段在像空間的約束方程求解中間變量Pl, P2的值假定物方空間至少存在兩條平行于X軸的直線段,則根據(jù)它們?cè)谙窨臻g相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo),可通過如下求解矩陣(1)采用最小二乘法解得中間變量Pl,P2的值。該線性方程組的求解,可通過調(diào)用OpenCV核心模塊中的API函數(shù)cvSolve (線性方程組求解函數(shù))實(shí)現(xiàn)。
權(quán)利要求
1.一種基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于,包括標(biāo)定物信息采集模塊、二維DLT (直接線性變換)系數(shù)求解模塊、單應(yīng)性矩陣計(jì)算模塊、幾何校正模塊和尺寸標(biāo)注模塊,其中標(biāo)定物信息采集模塊負(fù)責(zé)從交通事故現(xiàn)場(chǎng)圖中提取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,并將相應(yīng)數(shù)據(jù)分別存入控制點(diǎn)數(shù)據(jù)庫(kù)和控制線數(shù)據(jù)庫(kù);二維DLT系數(shù)求解模塊通過與所述數(shù)據(jù)庫(kù)的接口獲取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,經(jīng)方程聯(lián)立解出八個(gè)DLT系數(shù)的值;單應(yīng)性矩陣計(jì)算模塊根據(jù)DLT系數(shù)建立像空間到物方空間的映射關(guān)系,進(jìn)而得出單應(yīng)性矩陣;幾何校正模塊通過單應(yīng)性矩陣對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行幾何校正,經(jīng)空間坐標(biāo)變換和灰度重采樣生成交通事故現(xiàn)場(chǎng)正射影像圖;尺寸標(biāo)注模塊以交通事故現(xiàn)場(chǎng)正射影像圖為基礎(chǔ),實(shí)現(xiàn)直接在正射影像圖上標(biāo)注任意點(diǎn)的實(shí)際空間坐標(biāo)和任意兩點(diǎn)間的實(shí)際空間距離的功能。
2.根據(jù)權(quán)利要求1所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述標(biāo)定物信息采集模塊從交通事故現(xiàn)場(chǎng)圖中提取控制點(diǎn)和控制線的像空間坐標(biāo)信息,并將相應(yīng)的數(shù)據(jù)分別存入控制點(diǎn)數(shù)據(jù)庫(kù)和控制線數(shù)據(jù)庫(kù),控制點(diǎn)的物方空間坐標(biāo)根據(jù)交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系確定,并在存入控制點(diǎn)數(shù)據(jù)庫(kù)時(shí)通過構(gòu)建的CPoint2 類(擴(kuò)展點(diǎn)類)對(duì)象與其相應(yīng)的像空間坐標(biāo)相關(guān)聯(lián)。
3.根據(jù)權(quán)利要求2所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述標(biāo)定物信息采集模塊提取的控制點(diǎn)的相關(guān)參數(shù)信息包括每個(gè)控制點(diǎn)的物方空間坐標(biāo)及其相應(yīng)的像空間坐標(biāo);提取的控制線的相關(guān)參數(shù)信息包括物方空間每條平行于X軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo);物方空間每條平行于Y軸的直線段的兩個(gè)端點(diǎn)在像空間相應(yīng)的起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)。
4.根據(jù)權(quán)利要求3所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 為保證二維DLT系數(shù)求解模塊能夠順利執(zhí)行,標(biāo)定物信息采集模塊在進(jìn)行控制點(diǎn)和控制線的選取時(shí)應(yīng)滿足以下兩個(gè)條件第一、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩條平行于X軸的直線段和至少兩條平行于Y軸的直線段;第二、在交通事故現(xiàn)場(chǎng)建立的二維笛卡爾直角坐標(biāo)系中,存在至少兩個(gè)控制點(diǎn),并已測(cè)得它們實(shí)際的物方空間坐標(biāo)。
5.根據(jù)權(quán)利要求4所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述二維DLT系數(shù)求解模塊首先通過與所述數(shù)據(jù)庫(kù)的接口獲取控制點(diǎn)和控制線的相關(guān)參數(shù)信息,在此基礎(chǔ)上分別建立物方空間X軸平行線在像空間的約束方程組和物方空間Y軸平行線在像空間的約束方程組,然后通過OpenCV (開放式計(jì)算機(jī)視覺)核心模塊中的API 采用最小二乘法分別對(duì)這些方程組求解得出中間變量的值;再將這些中間變量的值與控制點(diǎn)的二維直接線性變換公式聯(lián)立,建立求解方程組,最后通過OpenCV核心模塊中的API (應(yīng)用程序接口)采用最小二乘法解出DLT系數(shù)的值。
6.根據(jù)權(quán)利要求5所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述單應(yīng)性矩陣計(jì)算模塊由二維直接線性變換公式反解出物方空間坐標(biāo)關(guān)于像空間坐標(biāo)的表達(dá)式,建立像空間到物方空間的映射關(guān)系,然后通過Visual C++語言計(jì)算單應(yīng)性矩陣中每個(gè)元素的值;單應(yīng)性矩陣計(jì)算模塊的輸入是二維DLT系數(shù)求解模塊得出的八個(gè)DLT系數(shù)的值,輸出為一個(gè)3行3列的單應(yīng)性矩陣;所得的單應(yīng)性矩陣保存在OpenCV的基本數(shù)據(jù)結(jié)構(gòu)CvMat (矩陣結(jié)構(gòu)體)創(chuàng)建的一個(gè)3行3列64位單通道的對(duì)象中,它可作為該模塊的輸出參數(shù)提供給幾何校正模塊直接使用。
7.根據(jù)權(quán)利要求6所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述幾何校正模塊首先根據(jù)單應(yīng)性矩陣對(duì)交通事故現(xiàn)場(chǎng)圖進(jìn)行空間坐標(biāo)變換,得到事故現(xiàn)場(chǎng)圖上每個(gè)像素點(diǎn)的物方空間坐標(biāo),然后對(duì)物方空間坐標(biāo)進(jìn)行灰度重采樣得到交通事故現(xiàn)場(chǎng)正射影像圖;當(dāng)變換后的物方空間坐標(biāo)對(duì)應(yīng)的事故現(xiàn)場(chǎng)圖上的像空間坐標(biāo)恰好為整數(shù)值時(shí),這時(shí)物方空間坐標(biāo)的灰度值可直接取事故現(xiàn)場(chǎng)圖上像空間坐標(biāo)的灰度值;當(dāng)計(jì)算得到的物方空間坐標(biāo)對(duì)應(yīng)的事故現(xiàn)場(chǎng)圖上的像空間坐標(biāo)不為整數(shù)值時(shí),這時(shí)并無現(xiàn)成的灰度值能用,可采用雙線性插值法把該點(diǎn)周圍整數(shù)點(diǎn)位上灰度值對(duì)該點(diǎn)的灰度貢獻(xiàn)積累起來,構(gòu)成該點(diǎn)位新的灰度值。
8.根據(jù)權(quán)利要求7所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 當(dāng)計(jì)算得到的物方空間坐標(biāo)對(duì)應(yīng)的事故現(xiàn)場(chǎng)圖上的像空間坐標(biāo)不為整數(shù)值時(shí),這時(shí)并無現(xiàn)成的灰度值能用,可采用雙線性插值法構(gòu)造一個(gè)2X2的二維卷積核W(權(quán)矩陣),把它與該點(diǎn)周邊的四個(gè)原始像元灰度值構(gòu)成的2X2灰度矩陣G作Hadamard積(哈達(dá)瑪積)運(yùn)算得出一個(gè)新的矩陣,然后把這些新的矩陣元素累加,即可得到重采樣點(diǎn)的灰度值。
9.根據(jù)權(quán)利要求8所述的基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),其特征在于, 所述尺寸標(biāo)注模塊以交通事故現(xiàn)場(chǎng)正射影像圖為基礎(chǔ),實(shí)現(xiàn)直接在正射影像圖上進(jìn)行單點(diǎn)的坐標(biāo)標(biāo)注和任意兩點(diǎn)間的距離標(biāo)注功能。單點(diǎn)坐標(biāo)標(biāo)注首先經(jīng)坐標(biāo)轉(zhuǎn)換獲取正射影像圖上該點(diǎn)的物方空間坐標(biāo),然后通過Windows⑶I (Windows圖形設(shè)備接口)繪圖函數(shù)進(jìn)行標(biāo)注;任意兩點(diǎn)間的距離標(biāo)注可首先采取單點(diǎn)坐標(biāo)標(biāo)注的方式分別獲取兩個(gè)點(diǎn)的物方空間坐標(biāo),然后在此基礎(chǔ)上計(jì)算出它們之間的實(shí)際空間距離,再將所得結(jié)果通過Windows GDI繪圖函數(shù)標(biāo)注在交通事故現(xiàn)場(chǎng)正射影像圖上。
全文摘要
一種基于線特征的交通事故現(xiàn)場(chǎng)圖幾何校正系統(tǒng),包括五個(gè)部分標(biāo)定物信息采集模塊,負(fù)責(zé)從交通事故現(xiàn)場(chǎng)圖中提取控制點(diǎn)和控制線的相關(guān)參數(shù)信息;二維DLT系數(shù)求解模塊,經(jīng)方程聯(lián)立求解出8個(gè)DLT系數(shù)的值;單應(yīng)性矩陣計(jì)算模塊,負(fù)責(zé)建立像空間到物方空間的映射關(guān)系,進(jìn)而得出單應(yīng)性矩陣;幾何校正模塊和尺寸標(biāo)注模塊,經(jīng)空間坐標(biāo)變換和灰度重采樣,生成交通事故現(xiàn)場(chǎng)正射影像圖并實(shí)現(xiàn)直接在正射影像圖上標(biāo)注任意點(diǎn)的實(shí)際空間坐標(biāo)和任意兩點(diǎn)間的實(shí)際空間距離的功能。本發(fā)明能夠有效校正鏡頭畸變和透視畸變?cè)斐傻慕煌ㄊ鹿尸F(xiàn)場(chǎng)圖幾何變形,并提高幾何校正后生成的正射影像圖上事故現(xiàn)場(chǎng)尺寸的測(cè)繪精度。
文檔編號(hào)G01C11/00GK102506828SQ20111035452
公開日2012年6月20日 申請(qǐng)日期2011年11月10日 優(yōu)先權(quán)日2011年7月29日
發(fā)明者王建煒, 苗新強(qiáng), 金先龍, 韓學(xué)源 申請(qǐng)人:上海交通大學(xué)