国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LabVIEW平臺的實(shí)時(shí)圖像采集與處理系統(tǒng)的應(yīng)用

2016-10-14 06:44:49楊文祥杜昭平莊肖波
電子設(shè)計(jì)工程 2016年12期
關(guān)鍵詞:調(diào)用圖像處理攝像頭

楊文祥,杜昭平,莊肖波

(1.江蘇科技大學(xué)電子信息學(xué)院,江蘇鎮(zhèn)江212003;2.鎮(zhèn)江比太系統(tǒng)工程有限公司江蘇鎮(zhèn)江212009)

基于LabVIEW平臺的實(shí)時(shí)圖像采集與處理系統(tǒng)的應(yīng)用

楊文祥1,杜昭平1,莊肖波2

(1.江蘇科技大學(xué)電子信息學(xué)院,江蘇鎮(zhèn)江212003;2.鎮(zhèn)江比太系統(tǒng)工程有限公司江蘇鎮(zhèn)江212009)

針對工業(yè)領(lǐng)域里普通攝像機(jī)采集圖片模糊不清、無法辨認(rèn)等問題,提出了在LabVIEW、MATLAB和NI-IMAQ Vision軟件平臺下,利用USB攝像頭、動態(tài)鏈接庫以及NI-IMAQ Vision視頻處理模塊開發(fā)了一種實(shí)時(shí)圖像采集處理虛擬儀器系統(tǒng)。系統(tǒng)對現(xiàn)場連續(xù)采集的視頻和圖像進(jìn)行處理,包括對實(shí)時(shí)視頻進(jìn)行錄制保存、拍照保存、抓拍截圖保存以及LabVIEW調(diào)用MATLAB對保存的真彩圖片進(jìn)行增強(qiáng)處理。彩圖增強(qiáng)方法是將彩色圖像分解到R、G、B 3個(gè)灰度圖,分別對3個(gè)灰度圖分量進(jìn)行增強(qiáng)處理,最后使用MATLAB的cat函數(shù)將R、G、B三分量整合成彩色圖。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)采集圖片快捷,能夠改進(jìn)彩圖質(zhì)量,提高肉眼對彩圖的可視性。

LabVIEW;USB攝像頭;動態(tài)鏈接庫;MATLAB;增強(qiáng)

目前雖然國內(nèi)視頻采集技術(shù)已經(jīng)相當(dāng)成熟,但主要局限于視頻監(jiān)控這一領(lǐng)域,內(nèi)嵌具有圖像處理功能的配套系統(tǒng)卻少之又少,加之圖像采集與處理系統(tǒng)存在諸多弊端,例如:開發(fā)周期長、通用性差、成本高、采集到的圖像模糊不清、無法辨認(rèn)等問題。所以設(shè)計(jì)一款價(jià)美物廉、通用性強(qiáng)、性能穩(wěn)定的圖像采集與處理系統(tǒng)就顯的尤為重要。

LabVIEW是通用的編程系統(tǒng),使用圖形化編程語言,用它開發(fā)的軟件亦稱虛擬儀器[1],能夠提供廣泛的接口,可以與DLL、MATLAB、Visual Basic等多種軟件交互調(diào)用。LabVIEW同時(shí)附帶擴(kuò)展庫函數(shù),在自身配備的工具不能完成一些任務(wù)時(shí),就可以調(diào)用專業(yè)的數(shù)據(jù)采集和處理工具包擴(kuò)展庫,進(jìn)行強(qiáng)大的專業(yè)數(shù)學(xué)分析等。

為了滿足工程需求,鑒于LabVIEW諸多功能優(yōu)點(diǎn),本系統(tǒng)采用美國國家儀器(NI)公司的虛擬儀器開發(fā)平臺LabVIEW作為軟件編程平臺,采用NI-IMAQ Vision中的NIIMAQ模塊、NI-IMAQdx模塊以及普通的USB攝像頭來實(shí)現(xiàn)視頻圖像的采集,通過調(diào)用動態(tài)鏈接庫CameraDLL.dll以此實(shí)現(xiàn)對實(shí)時(shí)視頻或圖像進(jìn)行抓拍截圖保存功能,借助LabVIEW腳本與公式模塊,采用MATLAB Script節(jié)點(diǎn)調(diào)用MATLAB圖像處理算法以此實(shí)現(xiàn)對采集的圖像進(jìn)行增強(qiáng)處理[2],該系統(tǒng)具有操作簡單、編程容易、易于開發(fā)等優(yōu)點(diǎn)。

1 系統(tǒng)總體架構(gòu)

使用LabVIEW圖形化編程語言編寫系統(tǒng)功能,使用NIIMAQ Vision中的NI-IMAQ模塊、NI-IMAQdx模塊以及普通的USB攝像頭進(jìn)行視頻圖像的實(shí)時(shí)采集與錄制;通過調(diào)用動態(tài)鏈接庫CameraDLL.dll對實(shí)時(shí)視頻圖像進(jìn)行抓拍截圖保存;借助LabVIEW腳本與公式模塊中的MATLAB Script節(jié)點(diǎn)來調(diào)用MATLAB圖像處理算法對實(shí)時(shí)圖像進(jìn)行增強(qiáng)處理。該系統(tǒng)可以分為兩部分實(shí)現(xiàn),一部分為上位機(jī)即測試用臺式工控機(jī),并且內(nèi)置NI公司的LabVIEW專業(yè)版開發(fā)系統(tǒng)軟件,主要完成視頻圖像的顯示、拍照保存、視頻錄制保存、視頻圖像的截圖抓拍保存與圖像增強(qiáng)處理等任務(wù);另一部分為下位機(jī)即工控機(jī)外置普通USB攝像頭,主要完成對現(xiàn)場場景的實(shí)時(shí)采集等任務(wù)。其系統(tǒng)總體架構(gòu)如圖1所示。

圖1 系統(tǒng)總體架構(gòu)圖

2 視頻圖像采集過程

視頻圖像采集、錄制、抓拍截圖等功能的實(shí)現(xiàn)需要使用到NI-IMAQdx模塊和NI-IMAQ模塊,這就要求用戶軟件平臺安裝NI公司的Vision Acquisition Software模塊與Vision Development Module模塊[3]。

2.1實(shí)時(shí)視頻采集及拍照

實(shí)時(shí)視頻圖像采集及拍照局部框圖程序如圖2所示。其實(shí)現(xiàn)步驟如下:

視頻采集:程序中Session In首先指定了包含連接于PC機(jī)全部的USB攝像頭的字符串?dāng)?shù)組。系統(tǒng)默認(rèn)選擇數(shù)組的第一個(gè)元素即前面板Cam0為測試用USB攝像頭。函數(shù)面板中使用IMAQdx Open Camera.vi連接并打開前面板選定的Cam0攝像頭,加載攝像頭的配置文件,繼而使用IMAQdx Congigure Grab.vi來配置并開始采集圖像。采集過程中通過IMAQdx Grab.vi獲取輸出圖像的當(dāng)前幀,IMAQ Create.vi對獲取圖像的子VI設(shè)置緩存空間。最后IMAQ Dispose.vi釋放圖像所占的緩存空間。視頻圖像采集完之后,使用IMAQdx Close Camera.vi停止獲取圖像并關(guān)閉USB攝像頭。視頻圖像通過LabVIEW中的Image Display控件呈現(xiàn)在前面板上。

圖2 實(shí)時(shí)視頻采集及拍照框圖程序

拍照:將IMAQ Create.vi緩存空間中的視頻圖像經(jīng)由IMAQ Write File.vi按照選定的文件格式寫入,圖像格式有BMP、JPEG、PNG和TIFF等,在這里圖片格式選擇BMP類型[4]。在IMAQ Write File.vi的輸入端口File Path處創(chuàng)建路徑,即可在事件結(jié)構(gòu)中將拍到的圖像通過IMAQ Write File.vi按照指定的路徑保存起來。拍照方式分為連續(xù)拍照和斷續(xù)拍照兩種方式。連續(xù)拍照:將IMAQ Write File.vi放置于事件結(jié)構(gòu)中,在條件結(jié)構(gòu)內(nèi)設(shè)置一個(gè)加1加法器與事件結(jié)構(gòu)外圍的While循環(huán)構(gòu)成移位寄存器,能夠?qū)崿F(xiàn)連續(xù)拍照,有序保存。斷續(xù)拍照:將File Dialog設(shè)置好類型端口和提示端口后與IMAQ Write File.vi對應(yīng)端口相連,置于事件結(jié)構(gòu)中,即可實(shí)現(xiàn)按照自己設(shè)定的路徑和圖像名稱來保存。

2.2實(shí)時(shí)視頻錄制

視頻錄制:首先用Vision Utilities中File下AVI里的IMAQ AVI Create.vi在條件結(jié)構(gòu)內(nèi)創(chuàng)建一個(gè)*.avi文件,用來保存將要存儲的視頻文件,然后經(jīng)由While循環(huán)內(nèi)的IMAQ AVI Write Frame.vi以每秒設(shè)定幀數(shù)將圖片記錄下來,寫入到AVI引用句柄指定的AVI文件中,最后用條件結(jié)構(gòu)內(nèi)的AVI close.vi關(guān)閉AVI保存,即完成了實(shí)時(shí)視頻的錄制工作。為了使保存的視頻或圖片能夠記錄視頻拍攝的時(shí)間,對于抓取到的圖像添加時(shí)間文本[5]。程序中使用IMAQ Draw Text.vi將獲取的時(shí)間添加至圖像上,如圖3所示。

圖3 添加時(shí)間至圖像上

2.3實(shí)時(shí)視頻抓拍截圖

系統(tǒng)通過調(diào)用相關(guān)子VI程序來實(shí)現(xiàn)截圖,將子VI程序放入事件結(jié)構(gòu)中,通過大循環(huán)外的截圖按鈕事件觸發(fā)子VI程序?qū)崿F(xiàn)截圖[6]。動態(tài)鏈接庫是一個(gè)可以被其它應(yīng)用程序共享的程序模塊,其中封裝了一些可以被共享的例程和資源。關(guān)于截圖子VI功能的編寫,系統(tǒng)中使用的是調(diào)用動態(tài)鏈接庫的方法。調(diào)用動態(tài)鏈接庫方法:首先需要下載截圖鏈接庫CameraDll.dll,選擇函數(shù)選板互連接口中的庫與可執(zhí)行程序,拖放調(diào)用庫函數(shù)節(jié)點(diǎn)至函數(shù)面板中,右擊庫函數(shù)節(jié)點(diǎn)進(jìn)行配置。經(jīng)過試驗(yàn)發(fā)現(xiàn)鏈接庫中CameraSubArea函數(shù)是截圖的入口函數(shù),繼而對該鏈接庫進(jìn)行參數(shù)設(shè)置,設(shè)置函數(shù)的返回類型為整形,數(shù)據(jù)類型為有符號32位整形。截圖過程判斷:動態(tài)鏈接庫中的截圖函數(shù)的返回值設(shè)置為int型,該條件結(jié)構(gòu)外添加了一個(gè)比較器,當(dāng)截圖動作完畢返回1,輸出結(jié)果為真,觸發(fā)條件結(jié)構(gòu)程序;放棄截圖動作則返回0,輸出結(jié)果為假。

截圖顯示于前面板:首先創(chuàng)建一個(gè)調(diào)用節(jié)點(diǎn)于函數(shù)面板中,右擊該調(diào)用節(jié)點(diǎn)選擇剪切板中的獲取圖像,然后根據(jù)調(diào)用節(jié)點(diǎn)的剪切板中的獲取圖像的元素與按照名稱捆綁相連,繼而創(chuàng)建繪制平化像素圖和二維圖片控件,視頻截圖效果圖,如圖4所示。其中繪制平滑像素圖是用來將剪切板上的圖像數(shù)據(jù)繪制到二維圖片控件上去。

圖4 實(shí)時(shí)視頻抓拍截圖前面板效果圖

3 實(shí)時(shí)圖像增強(qiáng)處理的實(shí)現(xiàn)

為了彌補(bǔ)LabVIEW工具箱內(nèi)圖像處理算法的局限性,采用了LabVIEW和MATLAB混合編程[7]的方法,對采集到的圖片進(jìn)行增強(qiáng)處理。在LabVIEW中利用MATLAB Script節(jié)點(diǎn)調(diào)用MATLAB進(jìn)行圖像處理[8]的過程:在框圖程序窗口中通過功能函數(shù)-數(shù)學(xué)-腳本與公式-MATLAB Script,打開MATLAB Script節(jié)點(diǎn),通過添加輸入輸出完成MATLAB Script節(jié)點(diǎn)的參數(shù)傳遞,在節(jié)點(diǎn)邊框上鼠標(biāo)右擊選擇“添加輸入”或“添加輸出”,在此我們直接定義輸入變量類型為path,設(shè)置原圖像路徑為輸入量。

圖5 LabVIEW與MATLAB混合編程圖像處理前面板效果圖

在系統(tǒng)程序框圖中,現(xiàn)場采集到的彩圖通過Read JPEG File.vi讀入,經(jīng)由Read JPEG File.vi的路徑端口輸出,通過一個(gè)Input節(jié)點(diǎn)傳至MATLAB Script節(jié)點(diǎn)中,圖像路徑變量賦值給a,執(zhí)行圖像灰度變換,將彩色圖像分解到R、G、B 3個(gè)灰度圖,分別對3個(gè)灰度圖分量進(jìn)行增強(qiáng)處理[9],最后使用MATLAB程序中的cat函數(shù)將R、G、B三分量整合成彩色圖,彩色灰度直方圖均衡后的圖像經(jīng)由MATLAB顯示函數(shù)輸出圖像[10]。Read JPEG File.vi的另一輸出端為圖像數(shù)據(jù)端,系統(tǒng)為了讓原彩圖能夠?qū)崿F(xiàn)窗口自適應(yīng)大小,在圖像數(shù)據(jù)端將圖像數(shù)據(jù)按名稱解除捆綁輸出圖像的4個(gè)簇元素:left,top,right,bottom。4個(gè)簇元素的輸出經(jīng)過數(shù)學(xué)運(yùn)算處理后對圖像高度和寬度進(jìn)行了設(shè)置,最終將高度與寬度輸出至圖像的繪圖區(qū)域大小屬性,改變彩圖的寬度和高度。圖像顯示是通過繪制平化像素圖顯示在LabVIEW的前面板上,從而完成MATLAB與LabVIEW的混合編程,實(shí)現(xiàn)彩圖增強(qiáng)處理[11],其效果圖如圖5所示。

LabVIEW與MATLAB混合編程中MATLAB Script節(jié)點(diǎn)導(dǎo)入的MATLAB圖像增強(qiáng)處理源程序分析[12]步驟如下:

第一步:在MATLAB Script上定義原彩色圖像為路徑變量a;

第二步:讀取原彩色圖像相關(guān)信息、測量原圖像尺寸參數(shù)及顯示原圖像;

第三步:將彩色圖像分解到R、G、B 3個(gè)灰度圖[13],并分別對3個(gè)灰度圖分量進(jìn)行增強(qiáng)處理,以分量R灰度圖增強(qiáng)為例。首先將原彩圖圖片轉(zhuǎn)為灰度圖,并將數(shù)據(jù)存入數(shù)組中,計(jì)算各灰度出現(xiàn)的概率,然后計(jì)算每級灰度出現(xiàn)的頻率,將其存入gp中相應(yīng)位置,隨后計(jì)算新的各灰度出現(xiàn)的概率,最后計(jì)算Sk值,將Sk規(guī)劃到最近的灰度,填充各像素點(diǎn)新的灰度值,最終將各個(gè)像素歸一化后的灰度值賦給當(dāng)前像素[14];

第四步:在圖像處理中,使用MATLAB程序中的cat函數(shù)將R、G、B三分量整合成彩色圖[15],并經(jīng)由MATLAB顯示函數(shù)輸出圖像。

4 結(jié)論

本文在LabVIEW、MATLAB和NI-IMAQ Vision軟件平臺下,使用USB攝像頭、動態(tài)鏈接庫函數(shù)以及NI-IMAQ Vision視頻處理模塊開發(fā)了一種實(shí)時(shí)圖像采集處理虛擬儀器系統(tǒng)。通過NI-IMAQ Vision中的NI-IMAQ模塊、NI-IMAQdx模塊以及普通的USB攝像頭完成了視頻圖像的采集、拍照及錄制;通過調(diào)用動態(tài)鏈接庫CameraDLL.dll實(shí)現(xiàn)了實(shí)時(shí)視頻圖像的抓拍截圖保存;借助LabVIEW腳本與公式模塊中MATLAB Script節(jié)點(diǎn)來調(diào)用MATLAB圖像處理算法實(shí)現(xiàn)了彩圖增強(qiáng)處理的目的。該系統(tǒng)提高了視頻圖像采集速率,豐富了圖像采集與處理的功能,突破了常規(guī)視頻監(jiān)控模式,增添了圖像增強(qiáng)處理功能,解決了工業(yè)領(lǐng)域普通攝像頭采集圖片模糊不清的問題,系統(tǒng)能夠很好的應(yīng)用到工業(yè)領(lǐng)域和日常生活中。

[1]鄭對元.精通LabVIEW虛擬儀器程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2012.

[2]宋廣東,王昌,王金玉,等.基于DLL技術(shù)和COM組件技術(shù)實(shí)現(xiàn)LabVIEW和MATLAB混合編程[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(1):287-289.

[3]郭漭,祝連慶,韓曉泉,等.基于LABVIEW的CMOS相機(jī)圖像采集系統(tǒng)設(shè)計(jì)[J].自動化應(yīng)用,2014(3):15-17.

[4]闞鈺淇,張寧,徐熙平.LabVIEW平臺下USB圖像采集與處理系統(tǒng)設(shè)計(jì)[J].工業(yè)儀表與自動化裝置,2013(6):80-83.

[5]吳仁濤,姜云海,左建勇.基于LabVIEW平臺的USB視頻采集方法與應(yīng)用[J].工業(yè)儀表與自動化裝置,2011(3):80-82.

[6]闞鈺淇,徐熙平.基于LabVIEW的截圖保存系統(tǒng)設(shè)計(jì)[J].設(shè)計(jì)與研發(fā),2013(18):9-10.

[7]曲麗蓉,胡容,范壽康.LabVIEW、MATLAB及其混合編程技術(shù)[M].北京:機(jī)械工業(yè)出版社,2011.

[8]袁培鐸.基于LabVIEW與MATLAB混合編程的應(yīng)用研究[J].機(jī)械制造與自動化,2007(6):129-211.

[9]林振衡,宋駱林,黃元慶.基于LabVIEW的電子散斑干涉圖像處理系統(tǒng)[J].廈門大學(xué)學(xué)報(bào):自然科學(xué)版,2013,52(1): 43-47.

[10]陳霞,衛(wèi)靜婷.基于MATLAB的圖像增強(qiáng)處理與應(yīng)用[J].科技廣場,2013(3):73-76.

[11]武劍,杜云剛,甘世明.MATLAB在虛擬儀器平臺LabVIEW中的調(diào)用研究[J].科技信息,2011(21):523-524.

[12]宋玉婷.基于三維彩色直方圖均衡化的彩色圖像增強(qiáng)算法研究[D].山東:山東財(cái)經(jīng)大學(xué),2013.

[13]楊丹,趙海濱,龍哲,等.MATLAB圖像處理實(shí)例詳解[M].北京:清華大學(xué)出版社,2013.

[14]張濤,齊永奇.MATLAB圖像處理編程與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2014.

[15]任杰.彩色圖像增強(qiáng)算法的研究與實(shí)現(xiàn)[D].武漢:武漢理工大學(xué),2013.

Application of real-time image acquisition and processing system based on LabVIEW platform

YANG Wen-xiang1,DU Zhao-ping1,ZHUANG Xiao-bo2
(1.School of Electronic and Information,Jiangsu University of Science and Technology,Zhenjiang 212003,China;2.Zhenjiang Bittek System Engineering Co.,LTD,Zhenjiang 212009,China)

Focused on the issue that images collected by ordinary camera are blurred and unrecognizable in industrial field,a virtual instrumentation system is presented which uses USB camera,dynamic link library and NI-IMAQ Vision video processing module to complete real-time image collection and processing under LabVIEW,MATLAB and NI-IMAQ Vision software platform.The system deals with continuous collecting video and images on the spot,including real-time video recording preservation,camera preservation,capture screenshot preservation and the LabVIEW calling MATLAB to enhance the preserved true color images.Image enhancement method is to decompose color images to R,G,B three grayscales,respectively,to enhance three grayscale weight,finally use cat function of MATLAB to integrate R,G,B three components into color maps.The simulation results show that the system quickly collects color images and improves quality and visibility of color maps to naked eye.

LabVIEW;USB camera;dynamic link library;MATLAB;enhance

TN911.73

A

1674-6236(2016)12-0159-03

2015-12-06稿件編號:201512063

國家自然科學(xué)基金資助項(xiàng)目(61304249,61374063)

楊文祥(1990—),男,江蘇鹽城人,碩士研究生。研究方向:光電測控技術(shù)與儀器、虛擬儀器等。

猜你喜歡
調(diào)用圖像處理攝像頭
浙江首試公路非現(xiàn)場執(zhí)法新型攝像頭
攝像頭連接器可提供360°視角圖像
核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
機(jī)器學(xué)習(xí)在圖像處理中的應(yīng)用
電子制作(2018年18期)2018-11-14 01:48:20
模糊圖像處理,刑事偵查利器
圖像處理技術(shù)的實(shí)戰(zhàn)應(yīng)用
基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
奔馳360°攝像頭系統(tǒng)介紹
Photo Shop通道在圖像處理中的應(yīng)用
河南科技(2014年1期)2014-02-27 14:04:06
波密县| 浦东新区| 谷城县| 电白县| 内江市| 灯塔市| 中西区| 广宁县| 太保市| 全椒县| 陇川县| 巴里| 四川省| 甘洛县| 阿瓦提县| 德兴市| 六枝特区| 凌源市| 和龙市| 四会市| 无棣县| 古蔺县| 台山市| 东阳市| 新绛县| 鹰潭市| 岢岚县| 康马县| 陕西省| 阜南县| 瑞丽市| 新干县| 女性| 琼海市| 双辽市| 耒阳市| 紫阳县| 肥乡县| 呼伦贝尔市| 长宁县| 武宣县|