戴 波,安海洋,3,劉學君,周澤彧,3,李雁飛
(1.北京石油化工學院 信息工程學院,北京 102617;2.北京石油化工學院 機械工程學院,北京 102617; 3.北京化工大學 信息科學與技術學院,北京 100029)
?;放c普通貨物的化學性質存在較大差異[1],在倉儲方面,我國大部分危化品倉庫采用堆垛碼放的方式貯存,為避免堆放過密而引發安全事故,《常用危險化學品貯存通則》對堆垛的堆距、墻距、頂距、柱距和通道距等安全距離(五距)提出了嚴格要求。但是國內大多數倉庫對堆垛五距缺乏有效的自動化監察手段[2-3],并且安監部門難以進行實時的監督管理[4]。要實現對五距的監管,查看堆垛的實時3D貯存狀態最為直觀。采用單目視覺技術對?;范讯膺M行精準定位和三維幾何重建,可以達到監管要求。但是該技術也存在一定難點,三維重建是成像的逆過程,其求解過程是非線性的,存在多解情況,且易受噪聲干擾[5]。單目視覺技術通過單個攝像頭獲取圖像進行三維重建,相比于雙目視覺和多目視覺,它避免了因圖像匹配帶來的技術難點,但是因單張圖像缺少深度等信息而增加了重建難度[6]。而實現三維重建首要解決的是相機標定問題。
相機標定方法主要有3種:傳統標定方法、自標定方法和基于主動視覺的標定方法[7]。傳統標定方法典型代表有直線線性變換法(DLT)[8-9],迭代法[10],簡易標定方法[11-13]等.其優點是適用任意攝像機模型,標定精度高,不足是標定過程復雜,需要高精度的標定塊,在實際應用中較難實現。自標定方法最初由Faugeras和Maybank提出[14]。該方法僅依靠多幅圖像對應點之間的關系直接進行標定,靈活性強,應用范圍廣泛,但是其最大不足是魯棒性差[15-16],并且需要求解Kruppa方程來獲得攝像機內參數[17],相對困難。一般用于精度要求不高的場合?;趥鹘y標定法和自標定法的局限性,有人提出了基于主動視覺的攝像機標定方法[18]。典型代表為馬頌德提出的三正交平移運動算法[19]。在馬頌德的基礎上,胡釗政[20]提出了一種三維結構恢復和直接歐式重建算法,相機僅需作一組三正交平移運動即可,降低了約束條件。
這些經典的標定算法在實現過程中均相對復雜,如需要精準標定塊、標定板作參考,或者需要相機以特定的方式運動獲取多幅圖片進行匹配對比等。由于投影矩陣需要求解的未知參數較多,在算法實現上也存在不小的運算量。在立方體幾何三維重建問題上,文獻[21]通過單攝像機在2次不同焦距情況下對同一物體拍攝圖像,根據2幅圖像同一特征點不同的像素坐標結合當前的相機焦距等信息推算該點的世界坐標,實現了物體的幾何重建,但前提需要已知精準的相機焦距參數。文獻[22]利用最小二乘法實現攝像機的標定,直接通過地磚的角點做參考標定相機參數,但是結果易受相機高度和俯仰角的影響,魯棒性較差。文獻[23]將針孔模型應用在視覺測距中,通過相似三角形原理,測算目標物與相機的一維距離,無需已知相機的內參數,但是相機俯仰角對測算結果影響很大,且不易精確測量。文獻[24]提出一種投射點幾何轉換的方法測算物體的高度,與測距原理類似,測算結果對相機角度參數要求較高,且該方法依靠被測物先驗知識僅能實現一個維度的測量。文獻[25]提出一種利用滅點幾何原理實現規則物體的三維重建,但是僅能對平行邊緣物體進行重建且需已知相機焦距參數。
在?;穫}儲應用中,繁瑣的相機標定過程顯然不符實際應用需求,因為相機使用中可能會隨時改變一些參數,并且相機往往固定在倉庫角落不會移動。需要一種簡單可行的方法快速確定相機參數實現視覺定位和三維重建,同時要求測算得到的相機參數有較強的魯棒性。本文首先構建了單目視覺三維投影模型,提出了一種依托環境中標識點與其像點對應關系的相機標定方法。該方法僅需已知攝像機的三維坐標即可,無需測算相機內參數和空間角度等難以精確得到的信息,可得到投影模型的參數,簡化了傳統標定過程且保證了較高精度。三維幾何重建過程是相機參數標定的線性逆運算,由得到的參數作為基礎條件首先求取堆垛在空間的特殊解,即實現射影重建,再根據箱體幾何結構屬性作為約束,最終實現歐式意義下的三維幾何重建。由此重建的結果客觀上對標定算法的易用性和精確性進行了驗證。
三維空間中每個成像范圍內的物點信息都與其像點信息存在對應關系,這種對應關系由攝像機成像的幾何模型決定。傳統的成像模型一般以針孔模型作為研究,基于該模型有學者定義了4種坐標系[26]的數學轉換實例化,存在如下關系[27]:
(1)

由式1可以得出結論:在矩陣M確定的情況下,由圖像上像點坐標不能唯一確定其物點在世界坐標系下的實際坐標,但可以確定其三維坐標解空間,結合其他約束條件,即可確定唯一解。由此分析,實現三維幾何重建的前提是確定投影矩陣M,但是矩陣M未知元素較多,需要至少6個物點與像點的對應關系才可求解,計算過程復雜。為此本文構建了單目視覺成像模型來建立世界坐標與像素坐標的線性關系,摒棄了繁瑣的矩陣變換過程,大大簡化了標定過程。
考慮到?;穫}庫應用中的客觀約束條件,首先做出以下說明:相機位置固定(光心坐標不變);實驗中堆垛貨物為規則長方體;標識點、線均設于地平面(z=0)上(實際環境中處于墻面、柱子等標識點、線可換算地平面上)。
在單目視覺測距模型的基礎上,構建了五元組單目視覺成像模型:

圖1 單目視覺成像模型Fig.1 Monocular vision imaging model
如圖1所示,該投影模型由一個五元組參數(P,γ,θ,α,β)來表示,P為攝像機光心坐標,P′為P點在地面上的垂直投影,PO為P點在地面上成像投影,C為主光軸與地面的交點,與點P,PO組成的平面為投影模型對稱面;γ為相機俯視角;θ為相機水平偏向角;2α,2β分別記為相機水平、垂直方向視野張角。D1D2D3D4為相機在地平面上可視區域;記四邊形D1D2D5D6為相機成像平面。點C′為點C在像平面的像點,位于圖像中心位置。
將圖1中的成像平面D1D2D5D6展開出來如圖2所示:

圖2 單目視覺成像平面Fig.2 Imaging plane of monocular vision


圖3 單目視覺投影模型俯視圖Fig.3 Top view of imaging model

(2)

(3)
同時可求得攝像機水平偏向角:
θ=φ1+θ1
(4)


圖4 單目視覺投影模型側視圖Fig.4 Side view of imaging model

(5)
(6)
在求解相機參數α,β,γ和θ過程中,首先要已知攝像機空間坐標P(xP,yP,zP)和P點在z=0平面上的成像投影PO(x0,y0),并且兩點坐標滿足關系:

(7)
在實驗條件中僅事先已知P=(xP,yP,zP),PO無法測得。而在求出γ和θ之前,PO=(x0,y0)無從得知。為此,首先通過循環迭代方式確定PO點位置:a.初始PO的坐標為P’的坐標,即 (x0,y0)?(xP,yP);b.通過投影模型計算得到攝像機參數γ和θ;c.由(7)式得到新的PO坐標,并與上一次PO坐標進行對比,若距離小于某個閾值,則認為確定PO點,否則繼續進行a,b步驟。
由此,攝像機參數α,β,γ和θ均以求得,相機標定過程結束。
將圖像上的二維信息還原至空間三維信息是多解問題。故首先依據視覺投影模型求出1個特殊解,實現投影重建;再根據箱體為長方體的幾何屬性作約束條件求取真實解進而實現歐式空間下三維幾何重建。


(8)

在實驗室環境下搭建?;穫}儲模擬環境,并設立空間直角坐標系:

圖5 模擬倉儲環境Fig.5 Simulated storage environment

經上述迭代運算求得了點PO坐標:PO=(0.046,0.037),和各模型參數:α=24.34,β=24.42,γ=49.45,θ=39.88。根據(8)式將貨物箱體角點A~G的像素坐標還原至三維空間z=0平面上,得到特殊解見表2。

表1 求取PO迭代的誤差

表2 特征點坐標還原情況


圖6 單個箱體三維幾何重建效果Fig.6 3D reconstruction results of single stack

圖7 各頂點重建值與真實值誤差Fig.7 Error of reconstruction value & actual value
(9)


表3 三維重建結果與實際值對比
為直觀對比幾何重建效果,繪出三維坐標圖及各頂點誤差曲線,如圖9、圖10所示。
由圖9、圖10容易看出,三維幾何重建后的箱體角點坐標情況基本上與實際情況重合,各頂點坐標重建值和真實值的誤差距離普遍在20 mm以內,效果理想。

圖8 不同時期下的堆垛狀態Fig.8 Stacking state at different times

圖9 多個堆垛三維幾何重建效果Fig.9 3D reconstruction results of multiple stacks
上節實現了單個貨物箱體的三維幾何重建,為驗證標定所得相機參數能夠對處于圖像內各個區域的堆垛均有較精確的三維重建效果,本節通過對多個堆垛進行三維幾何重建予以驗證。
在存放多個貨物堆垛情況下,堆垛之間存在相互遮擋情況,圖像中不能獲得被部分遮擋或全遮擋的貨物完整角點信息,將無法實現其三維幾何重建。對此,采用動態實時監測的方式,分時段三維重建。在庫房空置的情況下,根據提出的算法對相機參數進行標定,然后在貨物存放于倉庫時,對當前完整角點信息貨物堆垛進行三維重建,以此累加計算,具體實驗如下:
在實驗室環境下構建范圍3.6 m×3.6 m×1.2 m模擬危化品倉庫,首先求得點PO=(0.184 , -0.496 ),同時得到模型參數:α=23.88,β=24.99,γ=47.50,θ=55.21。圖8為不同時期的堆垛情況,在每個時段對新增的當前貨物堆垛進行三維幾何重建。在時期1時,對1號堆垛進行三維重建,時期2時對2號堆垛三維重建,以此類推,直接給出三維幾何重建結果計算結果,見表5(篇幅所限,不列出實際坐標信息)。
對比三維幾何重建的效果,如圖9和圖10。

圖10 多堆垛特征點重建值和真實值誤差Fig.10 Errors of reconstruction value & actual value

堆垛編號角點編號1234A(1.519,1.913,0.452)(1.511,1.267,0.450)(1.000,1.910,0.310)(0.992,1.259,0.315)B(1.519,1.913,0)(1.511,1.267,0)(1.000,1.910,0)(0.992,1.259,0)C(1.514,1.450,0.452)(1.506,0.787,0.450)(1.000,1.444,0.310)(0.989,0.781,0.315)D(1.514,1.450,0)(1.506,0.787,0)(1.000,1.444,0)(0.989,0.781,0)E(1.880,1.449,0.452)(1.876,0.787,0.450)(1.377,1.447,0.310)(1.360,0.784,0.315)F(1.880,1.449,0)(1.876,0.787,0)(1.377,1.447,0)(1.360,0.784,0)G(1.880,1.912,0.452)(1.881,1.266,0.450)(1.378,1.911,0.310)(1.364,1.263,0.315)H(1.886,1.912,0)(1.881,1.266,0)(1.378,1.911,0)(1.364,1.263,0)
由圖9和圖10可見,對多個堆垛箱體進行三維幾何重建,重建效果與實際情況基本吻合,誤差普遍在40 mm范圍內,相對于堆垛間距和自身尺寸而言,影響基本可以忽略。由此也驗證了標定得到參數對圖像上不同位置的堆垛均有很好的還原效果,客觀驗證了標定算法的精確性。
結合實驗過程,分析誤差原因有以下幾點:測量上的人為誤差,包括攝像機光心空間坐標,堆垛箱體實際位置;攝像機自身的誤差,實際成像不完全符合小孔成像模型,鏡頭存在畸變或光心偏離中心等;圖像特征提取的誤差,所得角點坐標信息受到圖像噪聲等干擾造成精度下降等。
1)構建了五元組單目視覺成像模型來詮釋物點與像點之間的對應關系,避免了因繁瑣的坐標系變換過程而造成的標定困難問題。
2)提出一種通過識別標識點求解相機參數的方法,該方法無需已知相機內參數且標定結果具有較強的魯棒性,同時因為僅需攝像機空間位置及2個標識點的對應關系就可實現標定,所以更易于現場實現。
3)采用特征點坐標還原的方式實現了堆垛的三維幾何重建,不僅還原了堆垛尺寸信息,同時也確定了其在空間的擺放位置,實現堆垛貯存狀態場景的復原。三維重建的效果也間接驗證了本文標定算法的精確性。
[1]LIU J N, Chen T, FAN D L, et al. Ranking and screening hazardous chemicals for human health in southeast China[J]. Organic Chemistry Current Research, 2014, 3(126): 2161-0401.
[2]柴保身. 我國危險品倉儲業發展現狀與展望[J]. 物流工程與管理,2009(12):19-23.
CHAI Baoshen. Present situation and prospect of China's dangerous goods storage industry[J].Logistics Engineering and Management, 2009(12):19-23.
[3]汪濤. 探究當前?;菲髽I存在的安全問題和對策[J]. 科技風,2015(19):273.
WANG Tao. Study on the safety problems and countermeasures of the current hazardous chemicals enterprises[J]. Technology Wind,2015(19):273.
[4]范祥,葉春明,仝偉亮. 新形勢下我國危化品倉儲安全問題研究[J]. 物流科技,2016(10):148-151.
FAN Xiang, YE Chunming , TONG Weiliang. Study on the storage security of dangerous goods in China under the new situation[J]. Logistics Sci-Tech,2016(10):148-151.
[5]陳澤志. 由非定標圖像序列重建和測量三維物體[D].西安:西安電子科技大學,2002.
[6]張利. 基于單目視覺和雙目視覺的圖像三維重建技術研究[D].蘭州:蘭州理工大學,2014.
[7]邱茂林,馬頌德,李毅. 計算機視覺中攝像機定標綜述[J]. 自動化學報,2000(1):47-59.
QIU Maolin, MA Songde, LI Yi. Overview of camera calibration for computer vision[J]. Acta Automatica Sinica,2000(1):47-59.
[8]Abdel-Aziz Y I. Direct linear transformation from comparator coordinates in close-range photogrammetry[A]// Asp Symposium on Close-Range Photogrammetry in Illinois[C]. 1971(1):1-18
[9]Faugeras O D,Toseani G. The calibration problem for stereo. In: Proc IEEE Conference on Computer Vision and Pattern Recognition, Miami Beach, Florida, 1986: 15-20
[10]Weng J Y, Cohen P, Herniou M. Camera calibration with distortion model and accuracy evaluation[J]. IEEE Trans Pattern Analysis and Machine Intelligence, 1992, 14(10): 965-980
[11]Zhang Z Y. Flexible camera calibration by viewing a plane from unknown orientations. In: Proc International Conference on Computer Vision, Kerkyra, Greece,1999: 666-673
[12]Meng X Q, Li H, Hu Z Y. A new easy camera calibration technique based on circular Points. In: Proc the 11th British Machine Vision Conference, Bristol, United Kindom, 2000: 496-505
[13]王曉華,傅衛平.一種改進的攝像機標定方法[J]. 東北林業大學學報,2007,35(6):51-53.
WANG Xiaohua, FU Weiping. A new approach for camera calibration[J]. Journal of Northeast Forestry University, 2007,35(6):51-53.
[14]Maybank Stephen J, Faugeras Olivier D. Theory of Self-calibration of a Moving Camera[J]. International Journal of Computer Vision, 1998, 8(2): 123-151.
[15]Hartley R, Hayman E, de Agapito L, et al. Camera calibration and the search for infinity[A]. In: Proc the 7th International Conference on Computer Vision[C]. Kerkyra, Greece, 1999: 510-517
[16]雷成,吳福朝,胡占義. Kruppa方程與攝像機自標定[J]. 自動化學報,2001(5):621-630.
LEI Cheng, WU Fuchao, HU Zhanyi. Kruppa equations and camera self-calibration[J]. Acta Automatica Sinica, 2001(5):621-630.
[17]張濤. 基于單目視覺的三維重建[D].西安:西安電子科技大學,2014.
[18]胡占義,吳福朝. 基于主動視覺攝像機標定方法[J]. 計算機學報,2002(11):1149-1156.
HU Zhanyi, WU Fuchao. A review on some active vision based camera calibration techniques[J]. Chinese Journal of Computers, 2002(11):1149-1156.
[19]Ma S D.A self-calibration technique for active vision system[J]. IEEE Trans Robot Automation, 1996, 12(1):114-120
[20]胡釗政,談正. 一種基于主動視覺的三維結構恢復和直接歐氏重建算法[J]. 自動化學報,2007(5):494-499.
HU Zhaozheng, TAN Zheng. A novel algorithm for 3D structure recovery and direct euclidean reconstruction using active vision[J]. Acta Automatica Sinica, 2007(5):494-499.
[21]趙萌. 基于單攝像機的三維幾何重建方法研究[D].哈爾濱:哈爾濱工業大學,2009.
[22]李然. 基于單目視覺的室內環境三維重構研究[D].長春:吉林大學,2007.
[23]鞠升輝. 基于單目視覺的移動機器人室內定位與運動目標跟蹤[D].天津:天津理工大學,2016.
[24]屈姍姍,陳瀟,吳曉紅,等. 基于單目視覺測距的測高測面積方法[J]. 科學技術與工程,2016(2):224-228.
QU Shanshan, CHEN Xiao,WU Xiaohong,et al. A method for measuring the height and area based on distance estimation of monocular vision[J]. Science Technology and Engineering, 2016(2):224-228.
[25]馮強. 一種利用單張影像進行規則物體三維重建的方法[J]. 測繪與空間地理信息,2016(10):154-156.
FENG Qiang. 3D reconstruction based on vanishing point principle from a single image[J]. Geomatics & Spatial Information Technology, 2016(10):154-156.
[26]馬頌德,張正友.計算機視覺—計算理論與算法基礎[M].北京:科學出版社,1998.
[27]馮春. 基于單目視覺的目標識別與定位研究[D].南京:南京航空航天大學,2013.