秦國義 夏 青
(重慶郵電大學(xué)光電工程學(xué)院,重慶 400065)
基于視頻圖像的影子運(yùn)動軌跡檢測方法
秦國義夏青
(重慶郵電大學(xué)光電工程學(xué)院,重慶400065)
本文提出的運(yùn)動軌跡檢測方法包括圖像分割和透視變換。首先處理視頻采集圖像,然后進(jìn)行灰度化、二值化、連通域標(biāo)記等處理,再引入Canny邊緣檢測算法提取圖像輪廓,經(jīng)MATLAB編程求得影子的輪廓像素坐標(biāo)。最后根據(jù)透視變換,求得視頻中影子的實際坐標(biāo),并在二維和三維坐標(biāo)系下描繪了其運(yùn)動軌跡圖。
運(yùn)動軌跡檢測;圖像分割;透視變換;Canny邊緣檢測算法
太陽影子定位技術(shù)可以通過分析視頻中物體的影子變化來確定視頻拍攝的地點和日期。因此,研究分析視頻中影子變化和運(yùn)動軌跡就顯得尤為重要了。利用視頻圖像來檢測影子運(yùn)動軌跡的技術(shù)研究較少,因此本文提出的方法具有重要意義。
2.1圖像預(yù)處理
2.1.1視頻及裁剪處理
由視頻信息得出視頻每分鐘有1500幀圖像,由于影子在較短時間內(nèi)變化不太明顯,考慮到降低數(shù)據(jù)量和全面讀取影子變化,決定采用每隔2分鐘(3000幀)采集一幀圖像的方法,得到21幀圖像。采集得到的視頻圖像如圖1所示。
圖1 采集的視頻圖像
通過觀察圖像,發(fā)現(xiàn)影子頂點只在x∈(810:1700),y∈(800: 930)范圍內(nèi)運(yùn)動,所以以此范圍對圖像進(jìn)行裁剪來降低數(shù)據(jù)計算量。裁剪后的圖像如圖2所示。
圖2 裁剪后的彩色圖像
2.1.2灰度化處理[1]
灰度化就是使彩色的R、G、B分量值相等的過程。采用加權(quán)平均值法對彩色圖像進(jìn)行灰度化處理,根據(jù)實驗和理論證明,當(dāng)Wr=0.30,Wg=0.59,Wb=0.11時,即當(dāng)Vgray=0.3R+ 0.59G+0.11B時能得到最合理的灰度圖像,如圖3所示。
圖3 灰度化處理后的圖像
2.1.3二值化及連通域標(biāo)記處理[2]
二值化就是把圖像分成目標(biāo)物體和背景兩個區(qū)域,通過閾值化變換方法,將一幅灰度圖變成黑白二值圖像。采用固定閾值法,其中T為閾值。變換函數(shù)如下:
連通域標(biāo)記即通過對二值圖像中白色像素(目標(biāo))的標(biāo)記,讓每個單獨的連通區(qū)域形成一個被標(biāo)識的塊。這里我們找出影長大連通周圍的小連通域,對影長周圍的小連通域置1,將小連通域轉(zhuǎn)換成白色。處理之后的圖像如圖4所示。
圖4 二值化及連通域標(biāo)記處理后的圖像
2.2Canny邊緣檢測算法[3,4]
我們采用Canny邊緣檢測算法來提取預(yù)處理后的圖像輪廓。算法原理如下:
(1)用一個高斯濾波器平滑輸入圖像
令f(x,y)表示輸入圖像,G(x,y)表示高斯函數(shù):我們用G和f的卷積形成平滑圖像fs(x,y):
(2)計算梯度幅值圖像和角度圖像
其中g(shù)x=?fx/?x,gy=?fs/?y。
(3)對梯度幅值圖像應(yīng)用非極大值抑制
僅僅得到全局的梯度并不足以確定邊緣,因此為確定邊緣,必須保留局部梯度最大的點,而抑制非極大值。
(4)用雙閾值處理和連接分析來檢測并連接邊緣
對非極大值抑制圖像用兩個閾值T1和T2,且T1= 0.4T2。我們把梯度值小于T1的像素的灰度值設(shè)為0,得到圖像1。把梯度值小于T2的像素的灰度值設(shè)為0,得到圖像2。由于圖像2的閾值較高,去除大部分噪音,但同時也損失了有用的邊緣信息。而圖像1的閾值較低,保留了較多的信息,可以以圖像2為基礎(chǔ),以圖像1為補(bǔ)充來連結(jié)圖像的邊緣。
通過引入Canny算子,我們從預(yù)處理的圖像中提取出輪廓圖,如圖5所示。
圖5 Canny邊緣檢測得到的圖像輪廓
檢測到輪廓后,通過MATLAB編程提取影子頂端像素坐標(biāo),并描繪出影子端點的運(yùn)動軌跡粗略圖,如圖6所示。
圖6 影子端點的運(yùn)動軌跡粗略圖
透視變換將圖片投影到一個新的視平面,也稱作投影映射,變換公式如下:
u,v是原始圖片坐標(biāo),對應(yīng)得到變換后的圖片坐標(biāo)x,y,其中x=x'/w',y=y'/w'。
變換矩陣A可以拆成4部分,B表示線性變換。[a31,a32]用于平移,[a13,a23]T產(chǎn)生透視變換。變形后的變換公式:
因此,已知變換對應(yīng)的幾個點就可以求取變換公式,然后再進(jìn)行其他坐標(biāo)的變換。
已知直桿長度為2米,基于以上理論,首先取桿底座及桿頂端的點求取變換公式,然后將提取的影子頂端坐標(biāo)進(jìn)行變換得到實際坐標(biāo)。我們通過MATLAB編程將得到的影子實際坐標(biāo)進(jìn)行模擬,分別在二維和三維坐標(biāo)系描繪出影子運(yùn)動軌跡圖,如圖7所示。
圖7 二維及三維坐標(biāo)下的運(yùn)動軌跡圖
通過實際測量,我們發(fā)現(xiàn)在誤差允許范圍內(nèi),本文中方法具有可行性,算法簡單,效率較高,對影子的運(yùn)動軌跡檢測有著較好的效果。另外本文的影子軌跡檢測方法可以推廣到視頻監(jiān)控下其他緩慢運(yùn)動目標(biāo)的輪廓提取以及軌跡檢測。
[1]張濤,齊永奇.MATLAB圖像處理編程與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2014.
[2]楊杰.?dāng)?shù)字圖像處理及MATLAB實現(xiàn)[M].北京:電子工業(yè)出版社,2014.
[3]張毓晉.圖像處理和分析[M].北京:清華大學(xué)出版社,1999.
[4]阮秋琦.?dāng)?shù)字圖像處理[M].北京:電子工業(yè)出版社,2001.
[5]牛彥.關(guān)于透視變換的研究[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2001(06):549-551.
Shadow Motion Trajectory Detection Based on the Video Image
Qin GuoyiXia Qing
(Optoelectronic Engineering,Chongqing University of Posts and Telecommunications,Chongqing 400065)
A method of motion trajectory detection is proposed in this paper,including image segmentation and perspective transformation.First of all,the video images are processed.Then the images are dealed with Grayscale,Binarization and Connected Component Labeling.The contour of images are acquired with Canny edge detection algorithm,and the coordinates of contour pixel are obtained with the MATLAB programming.Finally,the actual coordinates of the video images are obtained with Perspective Transformation.And shadow motion trajectory is simulated in the two-dimensional and three-dimensional coordinate system.
motion trajectory detection;image segmentation;perspective transformation;Canny edge detection algorithm
TP751
A
1008-6609(2016)06-0068-03
秦國義,男,河北南宮人,在讀本科,研究方向:圖像處理。