劉東輝,楊麗麗,趙新偉,孫曉云
(1.河北科技大學電氣信息學院,河北石家莊 050018;2.石家莊鐵道大學電氣與電子工程學院,河北石家莊 050043)
基于MATLAB的雙足仿生電動移動平臺設計
劉東輝1,楊麗麗1,趙新偉1,孫曉云2
(1.河北科技大學電氣信息學院,河北石家莊 050018;2.石家莊鐵道大學電氣與電子工程學院,河北石家莊 050043)
通過MATLAB設計了一種新型代步工具平臺——雙足仿生電動移動平臺。利用MATLAB平臺下的虛擬現(xiàn)實工具箱,視頻采集工具箱以及GUI,Simulink仿真等軟件,建立并驅動人體下肢三維模型,完成人體下肢運動控制仿真;在GUI人機交互界面,通過攝像頭對人體下肢運動情況進行運動捕捉,提取髖骨關節(jié)、膝關節(jié)及踝關節(jié)在運動過程中角度的變化值,完成人體下肢運動數(shù)據(jù)的存儲。
視頻采集;仿真模型;虛擬現(xiàn)實;數(shù)據(jù)存儲
普通的代步輪椅在一定的程度上給老年人和殘疾人的生活帶來了方便,但它的局限性也是顯而易見的。例如當遇到障礙(如溝、坎等)或者上下樓梯、臺階時,就會有很大的困難,沒有旁人協(xié)助根本無法完成。筆者針對以上問題提出了一種新式的可跨步行走的足式椅的設想,并對其進行基于MATLAB的運動仿真。足式椅改變原來輪椅的四輪定向結構,利用仿生學原理,模擬人體雙足交替運動,在使用者的控制下使胯關節(jié)、膝關節(jié)等多關節(jié)協(xié)同,完成完整的行走動作。
在GUI界面采集按鈕的回調函數(shù)中利用MATLAB的視頻采集工具箱將人體下肢行走動作進行捕捉,通過編寫程序函數(shù)實現(xiàn)各控件的函數(shù)功能,然后利用算法將得到的圖像中各關節(jié)的數(shù)據(jù)進行存儲。將得到的數(shù)據(jù)放到Simulink仿真模塊中,將關節(jié)的數(shù)據(jù)和虛擬世界的三維模型進行連接,使模型按數(shù)據(jù)進行運動。
編輯圖形用戶界面,并設置不同功能的回調函數(shù)[1]。為了得到人體下肢運動參數(shù),通過MATLAB對人體下肢運動進行圖像采集,將采集數(shù)據(jù)保存?zhèn)溆谩?/p>
整體仿真界面上需要包含以下信息:實驗者的個人基本信息(包括姓名、年齡、性別、步速),以便之后存儲;實驗中實驗者的運動狀態(tài)選擇,以及采集視頻用的攝像頭選擇;采集開始、采集信息處理、關閉采集按鈕;與Simulink連接的調用按鈕以及關閉界面按鈕。整體效果如圖1所示。
Image Acquisition Toolbox(圖像采集工具箱),是MATLAB工具箱中重要的軟件包之一。它為用戶提供了一種面向對象的圖像采集方法[2]。將圖像采集設備連接到MATLAB,并通過工具箱提供的函數(shù),對圖像進行采集,如果對控制對象的屬性進行修改控制,就可以按照需要決定何時開始采集,采集多少數(shù)據(jù)等。
在MATLAB中,要確定選用什么樣的適配器,則在MATLAB與外部視頻設備連接好后,在MATLAB命令窗口中調用imaqhwinfo函數(shù)。函數(shù)的返回值中包括了在Installed Adaptors領域可選用的適配器等相關信息。例如在MATLAB命令窗口輸入imaqhwinfo,則可知系統(tǒng)可選用適配器名稱為winvideo,此時就可以建立一個視頻輸入對象myvid=videoinput(‘winvideo’)。想要預覽視頻采集窗口,則需在MATLAB命令窗口鍵入:preview(myvid),即可打開一個視頻預覽窗口如圖2所示。查看視頻設備所支持的格式,可調用函數(shù)imaqhwinfo返回值Deviceinfo中的Supported Formats。例如建立的視頻輸入對象my_vid=imaqhwinfo(‘winvideo’,1),查看其支持的視頻格式可用my_vid.Supported Formats即可。
圖1 整體效果圖Fig.1 Overall effect diagram
關閉預覽窗口則可用closepreview(myvid)命令。除了winvideo,設備適配器種類一般還有coreco(主要適用于Coreco圖像處理生產的視頻設備)、dcam(適用于IEEE 1394(FireWire)圖像采集設備)、dt(應用于數(shù)據(jù)轉換的視頻設備)、matrox(應用于Matrox電子系統(tǒng)的視頻設備)[3]。
視頻采集工具箱提供了相當豐富的函數(shù)來設置相關參數(shù)。通過設置,可以控制視頻采集數(shù)據(jù)量、采集圖像的亮度、色調和飽和度。采集到的圖像數(shù)據(jù)可以存儲到AVI文件以備用。圖像采集工具提供了相應函數(shù),首先創(chuàng)建一個AVI文件,執(zhí)行下面程序代碼即可實現(xiàn),aviobj= avifile(‘my_datalog.avi’),對于創(chuàng)建的 AVI文件對象返回值,通過修改其屬性值,可以設定存儲數(shù)據(jù)質量、數(shù)據(jù)壓縮等。例如aviobj.Quality=50即為修改圖像質量,數(shù)值越小,文件就越小。
在視頻采集模塊中,通過人體下肢運動進行動作捕捉,提取相應的髖骨關節(jié)、膝關節(jié)及踝關節(jié)在運動過程中運動角度一系列的變化值,并保存到相應的.mat文件中。
圖2 視頻預覽窗口Fig.2 Video preview window
實驗中分別用紅色、藍色、綠色3種圓形標簽作為髖關節(jié)、膝關節(jié)、踝關節(jié)的運動標記。因此只需在采集到的視頻圖像中,提取3個顏色圖像,并把無用的背景賦值白色即可。另外,建立好視頻輸入對象,開始采集記錄數(shù)據(jù)。可發(fā)現(xiàn)采集到的數(shù)據(jù)為4維矩陣,其中多出一個時間向量,該向量記錄的是采集到圖像的時間順序。如vid(:,:,:,1)表示采集到的第1幅圖像,vid(:,:,:,n)為采集到的第n幅圖像,分清這些就可以對想要處理的圖像進行處理了。按正確方法讀取其中的一幅圖像,即可對其進行顏色提取。圖像提取流程圖如圖3所示。
完成了背景去除工作,接下來需要找到紅、綠、藍3個圓形標簽的中心點。背景去除后的圖像,只有紅、綠、藍3個標簽且背景是白色。由于上步處理過程中把圖像像素理想化,即圖像中背景顏色白色的R,G,B分量為(255,255,255),紅色的R,G,B 分量為(255,0,0),綠色的R,G,B 分量為(0,255,0),藍色的R,G,B分量為(0,0,255),沒有其他雜色。找3種顏色的中心點坐標值實質是找其中心點的行列值。
為了更好地控制三維模型,必須對所得到的坐標值做進一步處理,將平面坐標值轉換為各關節(jié)旋轉的角度值。這樣通過控制角度旋轉模擬人體下肢的運動過程。
圖3 圖像提取流程圖Fig.3 Flow chart of image extraction
依照雙足仿生電動移動平臺仿真的設計要求,分析人體下肢骨架的組成結構,然后根據(jù)人體下肢骨骼的運動連帶關系,建立起人體骨架的球棍模型。最后利用MATLAB中V-Realm Builder軟件構建、完成下肢三維模型的建立。
模型中人體下肢骨骼的連帶關系[4]如圖4所示,完整模型見圖5。
圖4 人體下肢骨骼連帶關系Fig.4 Relationship between lower limb joint bones
圖5 雙足仿生運動平臺三維模型Fig.5 Three-dimensional model of bionic bipedal motion platform
采用Simulink中適當?shù)姆抡婺K(如圖6所示),對采集到的數(shù)據(jù)進行讀取[5],并做相應運算,最后通過虛擬現(xiàn)實工具箱連接下肢三維仿真模型,對其進行驅動,仿真人體下肢的運動。
圖6 仿真模塊框圖Fig.6 Block diagram of simulation
利用MATLAB自帶的VRML瀏覽器查看三維仿真結果(見圖7)。從仿真結果可知,可以應用上述方法進行相應的實驗研究、驗證模型的準確性以及控制算法的有效性。同時在此基礎上,還能建造可載人的實物平臺,進行工程研究。
圖7 運動仿真結果Fig.7 Results of motion simulation
利用MATLAB平臺下的虛擬現(xiàn)實工具箱、視頻采集工具箱以及GUI,Simulink仿真等軟件包互相結合,共同完成了人體下肢運動控制仿真。建立GUI人機交互界面,通過攝像頭對人體下肢運動情況進行運動捕捉,將人體下肢運動數(shù)據(jù)通過Simulink及VR工具箱,驅動下肢三維仿真模型運動,實現(xiàn)了雙足仿生電動移動平臺前期研究工作的運動仿真。
[1] 邱金蕙,王矞輝,李振全.基于 Matlab/GUI的新型界面開發(fā)方式[J].河北工業(yè)科技(Hebei Journal of Industrial Science and Technology),2008,25(4):233-235.
[2] 周廣芬,李 鵬,楊久義.利用MATLAB圖像處理工具箱進行圖形數(shù)字化的研究[J].河北科技大學學報(Journal of Hebei University of Science and Technology),2005,26(4):309-311.
[3] 王正林,劉 明.精通 MATLAB[M].北京:電子工業(yè)出版社,2006.
[4] SIMS M E.Reusable,lifelike virtual humans for mentoring and roleplaying[J].Computers and Education,2007,49(1):75-92.
[5] 佟 杰,王 嵐,吳 洋.基于MATLAB虛擬現(xiàn)實工具箱的手臂康復機器人仿真[J].應用科技(Applied Science and Technology),2006,33(10):63-65.
Design of bipedal bionic electric mobile platform based on MATLAB
LIU Dong-hui1,YANG Li-li1,ZHAO Xin-wei1,SUN Xiao-yun2
(1.College of Electrical and Information Engineering,Hebei University of Science and Technology,Shijiazhuang Hebei 050018,China;2.College of Electrical and Electronics Engineering,Hebei Tiedao University,Shijiazhuang Hebei 050043,China)
A new kind of double foot bionic electric mobile platform based on MATLAB is proposed.Virtual reality toolbox,video acquisition Toolbox,GUI and Simulink are used to complete the whole simulation,in which a 3D lower limb model is built and drived.In GUI,the movement of lower limbs is got by a camera,then the changed angle data of hip joints,knee joints and ankle joints in movement are extracted,and the data of the lower limbsmorement are stored.
video acquisition;simulation model;virtual reality;data storage
TP391
A
1008-1542(2011)05-0477-05
2011-04-03;
2011-09-08;責任編輯:李 穆
國家自然科學基金資助項目(50874035);河北省自然科學基金資助項目(F2009000732)
劉東輝(1971-),男,山西晉城人,教授,博士,主要從事生物醫(yī)學工程及圖像處理方面的研究。