999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

聲納圖像對比度增強的并行算法研究*

2013-02-21 07:53:00王石成袁昌斌
網絡安全與數據管理 2013年8期

王石成,袁昌斌

(1.江蘇省連云港市氣象局,江蘇 連云港222000;2.中國海洋大學 信息科學與工程學院,山東 青島266100)

隨著聲成像技術的發展,聲圖像在海洋開發領域的應用日益廣泛,利用聲圖像進行目標識別已經成為數字圖像處理領域的一個重要課題。聲納圖像的增強應在保持圖像邊緣的前提下提取特征信息,增強處理的目的是改善原圖像的“視覺效果”。智能水下機器人通過對聲納圖像的不斷濾波、平滑和分割等處理,提取出目標點特征和線特征,構建基于環境特征的特征地圖仿真平臺,使用同時定位與地圖創建(SLAM)算法實現機器人的自主定位和導航[1]。隨著聲納圖像尺寸和數量的不斷增加,矩陣計算需要消耗更多的時間,從而很難滿足圖像處理的實時性要求,嚴重影響了機器人導航定位的精度。而并行處理技術的發展和多核計算機的普及,加快了數據處理的速度,能有效處理大量數據,克服了上述問題。

并行計算是指將一個應用分解成多個子任務,分配給不同的處理器,各個處理器之間相互協同,并行地執行子任務,從而達到加快求解速度[2]或者提高求解應用問題規模的目的。基于集群的并行圖像處理系統價格低廉、性能較高、可擴展性好,具有廣闊的前景和重要的實用價值。

1 MATLAB集群的搭建

MATLAB并行計算就是把一個大規模的工作分解為若干小任務讓不同的計算機去處理,最后把計算結果回收,從而提高計算效率。

1.1 PCT和MDCS

在集群中利用MATLAB進行并行計算需要并行計算工具箱 PCT(Parallel Computing Toolbox)和 MATLAB分布式計算服務器MDCS(MATLAB Distributed Computing Service)兩個必備的產品。PCT保證用戶利用MATLAB進行應用程序編寫并與MATLAB進行交互,給用戶提供了一個平臺。PCT支持全部MATLAB的M語言特性,同時支持大多數的工具箱語法。MDCS是在集群環境中實現并行計算的前提條件,使PCT的應用程序得到擴展,使其可以運行在任意數量計算機的任意數量節點上。只要保證MDCS正確安裝,在使用過程中用戶不需要再對MDCS進行任何操作。這對用戶是透明的,它可以看作是在后臺為機群中的PC提供一種連接通信支持。

1.2 MATLAB并行集群的搭建和配置

一個簡單的MATLAB集群模型如圖1所示,集群中所有PC存在于一個局域網中。

圖1中,每個方框代表一臺PC,節點機1作為客戶機負責把一個大的工作分解成若干小任務分配給節點機 2、3、4來處理。Schedule和 Job Manager起著資源調度和管理作用,可以指定集群中的任意一臺PC來完成這個角色。

License Manager是一個許可管理服務[3],裝有License Manager的PC為頭節點機 (即Client),機群中其他利用License Manager生產的License許可的PC為Worker節點機。MATLAB的安裝分為頭節點的安裝和Worker節點的安裝,為保證配置的穩定性,所有節點都安裝MATLAB(R2010b)。各個Worker節點激活時需選擇頭節點機生成的license.dat許可文件,該文件位于頭節點機MATLAB安裝路徑的etc文件中。

2 滑動鄰域操作

鄰域運算是一種重要的空間域圖像增強方法。滑動鄰域操作每次處理一個像素,輸出圖像中任何給定像素的值,都通過給輸入圖像中對應像素鄰域內像素值應用一個算法來確定。鄰域是一個矩形塊,當圖像矩陣中從一個元素向下一個元素移動時,鄰域塊向相同方向滑動。采用滑動鄰域操作來增強灰度圖像的對比度,即輸入圖像將以像素為單位進行處理,鄰域塊空白的地方補0,對輸入圖形的每一個像素,指定的滑動鄰域操作將決定輸出圖像相應的像素值。

本文使用雙頻數字機械掃描式前視聲納作為水下探測工具,根據回波強度的不同生成聲納圖像。聲納圖像中強度比較大的回波形成圖像的白色區域,弱的回波形成圖像的黑色區域。根據聲納圖像的特點,選擇非線性變換來增強灰度圖像的對比度。MATLAB中nlfilter()函數可實現多種滑動鄰域操作,其用法為:

x=nlfilter(x,[3,3],@enhance);

3個輸入參數分別為待處理的圖像、鄰域大小和一個返回標量的圖像處理函數,輸出為一幅大小與輸入圖像相同的圖像。輸出圖像中的每個像素的值通過將對應輸入像素的鄰域傳遞給返回標量的那個函數來進行計算。

3 并行算法研究

3.1 數據并行編程

MATLAB并行編程可分為任務并行和數據并行兩種方式。當有大數據量需要同時處理,而單機又無法存儲大數據量時,可考慮使用數據并行編程方法。數據并行是將大量的數據包分割成小的數據片段,再將這些片段分配給計算節點進行存儲和交互計算,提高了大數據量同時處理的能力。

使用 SPMD(Single Program Multiple Data)結構,可以指定代碼的區段以在所有參與并行計算的Worker間并行運行。程序執行過程中,該結構會自動將在其內部使用的數據和代碼傳輸給Worker,并在執行完畢后將結果返回給MATLAB客戶端會話。SPMD結構內部可以是分布式數組、并行函數以及消息傳遞函數。其中,“Single Program”指的是同一段代碼運行在多個Worker上,在MATLAB客戶端上運行一段程序,被標志為SPMD的模塊運行在各自的 Worker上。“Multiple Data”是指雖然SPMD語句在所有的Worker上運行相同的代碼,但每一個Worker可以有獨有的數據,所以多數據集可以在多個Worker上同時被容納。

3.2 并行算法的執行步驟

實驗在客戶機(Client)上定義了作業管理器(Job Manager)和工作(Job),通過分布式數組將 Client內部使用的數據和代碼傳輸給Worker,程序執行的流程圖如圖2所示。讀入原始圖像,進行灰度處理,先在Client機上進行串行計算,再判斷是否存在作業管理器,若沒有則創建,然后打開MATLAB進程池,利用distributed函數生成分布式數組發送給4個Worker進行各自的滑動鄰域操作,再將處理結果返回到Client中,合成一幅完整的圖像。最后Client機串行處理圖像,4個SPMD Worker濾波后的圖像在一幅圖中顯示出來,以便將處理結果進行比較。

4 算法的實現及實驗結果

4.1 算法的編譯環境

實驗中操作系統為Windows 7,集群系統由兩臺計算機通過路由器來構建,可在DOS命令行下打開圖形用戶界面Admin Center來管理集群機器。兩臺計算機的CPU配置分別為:Intel Core i3 CPU 2100 3.10 GHz(四核)和 Intel Core i5 CPU 2320 3.0 GHz(四核),內存都為4 GB。

4.2 實驗結果與分析

根據配置的環境運行程序,經過4個SMPD Worker濾波后的效果如圖3所示。其中,3條白線將圖像平均分為4部分,嚴重影響了圖像的完整性。這是因為在圖像分割的過程中,distributed函數向4個Worker發送分布式數組時,各個Worker間的數據相互獨立,因而沒有捕捉到前一個Worker數據的最后1列和下一個Worker數據的第1列。

圖2 程序執行的流程圖

為解決上述問題,MATLAB通過labSend-Receive命令來實現各個Worker間的通信,從而實現數據的交換。labSendReceive的用法為:

其中,data為發送lab中將要發送的數據,received為接收lab中保存的數據。利用labSendReceive命令重新修改程序后的運行效果如圖4所示。其中,圖4(a)是經Client主機串行濾波后的圖像,右圖是改進算法后4個SMPD Worker濾波后的圖像。圖 4(b)可見,并行圖像增強算法和串行算法處理效果一樣,但前者在處理大量數據時具有明顯的優勢。

為了檢測并行優化效果,分別進行了串并行的時間測試,實驗性能對比結果如表1所示。從表1可看出,算法由單線程改為不同數量的多線程并行執行時,加速比隨著節點數的增加而上升。隨著節點數的增加,并行加速比增加趨于緩慢,并行計算效率下降。這主要是由于隨著節點數量增加,節點間通信開銷變大,工作機之間可能出現負載不平衡等因素引起的。

表1 對比度增強并行算法的性能測試

本文搭建了MATLAB并行計算集群,詳細介紹了安裝步驟和編譯環境的配置。根據滑動鄰域原理設計了前視聲納圖像對比度增強的并行算法,總體達到了預期效果。MATLAB提供的分布式數組機制縮短了并行程序開發的周期,為海量數據進行交互處理提供了可能[4]。本文對MATLAB并行算法做了一些嘗試性工作,獲得了很好的效果,提出的方法對其他MATLAB并行相關問題的研究有實際的借鑒作用。

[1]張潔.基于聲納的水下機器人同時定位與地圖構建技術研究[D].青島:中國海洋大學,2008.

[2]Gao Wenjing,Qian Kemao,Wang Haixia,et al.Parallel computing for fringe pattern processing:a multicore CPU approach in MATLAB environment[J].Optics And Lasers In Engineering,2009,47(11):1286-1292.

[3]錢巍,呂晶,李晗靜.一種機群系統下的并行圖像處理環境[J].哈爾濱師范大學學報(自然科學版),2005,21(2):61-65.

[4]GORYAWALA M,GUILLEN M R.A comparative study on the performance of the parallel and distributing computing operation in Matlab[C].Proceedings of 24th IEEE International Conference on Advanced Information Networking and Applications,2010:150-157.

主站蜘蛛池模板: 欧美国产视频| 国产无码在线调教| 亚洲国产精品日韩欧美一区| 黄色网页在线播放| 日韩av无码精品专区| 亚洲欧美一区二区三区图片| 色哟哟国产精品一区二区| 亚洲精品大秀视频| 色老二精品视频在线观看| 国内精品九九久久久精品| 亚洲视频二| 在线欧美一区| 国产成人夜色91| 欧美亚洲一二三区| 国产哺乳奶水91在线播放| 中文成人在线视频| 国产精品久久自在自线观看| 久久免费看片| 青青青伊人色综合久久| 国产内射在线观看| 91欧美在线| 午夜激情婷婷| 亚洲日本韩在线观看| 伊人激情综合| 国精品91人妻无码一区二区三区| 伊在人亚洲香蕉精品播放| 99热线精品大全在线观看| 国产后式a一视频| 亚洲一级毛片免费观看| 色综合中文| 大香网伊人久久综合网2020| 国产成人一区在线播放| 97青草最新免费精品视频| 亚洲区欧美区| 2021亚洲精品不卡a| 欧美激情视频一区| 一区二区三区成人| 亚洲不卡网| 欧美日在线观看| 成年免费在线观看| 国产一二视频| 二级特黄绝大片免费视频大片| 91亚洲精品国产自在现线| 亚洲第一网站男人都懂| 久久久久免费看成人影片 | 国产一级片网址| www亚洲精品| 九九免费观看全部免费视频| 亚洲三级影院| 亚洲欧美日韩视频一区| 国产噜噜噜| 久久精品这里只有国产中文精品| 日韩在线网址| 日韩在线成年视频人网站观看| 国产在线精彩视频论坛| 国产原创自拍不卡第一页| 午夜国产理论| 国产美女叼嘿视频免费看| 国产精品永久不卡免费视频| 色哟哟国产精品| 亚洲色婷婷一区二区| 国产va在线| 免费人成网站在线观看欧美| 91午夜福利在线观看精品| 91亚洲免费| 97se亚洲| 亚洲AV无码乱码在线观看代蜜桃 | 国产精品美乳| 欧美日韩导航| 青青热久麻豆精品视频在线观看| 午夜视频www| 国产高潮流白浆视频| 91精品情国产情侣高潮对白蜜| 亚洲美女久久| 中文字幕av一区二区三区欲色| 色AV色 综合网站| 色悠久久久久久久综合网伊人| a级毛片网| 色AV色 综合网站| 99视频国产精品| 国产自在自线午夜精品视频| 日韩国产 在线|