周 蕓,呂金華
(武漢船舶職業(yè)技術(shù)學(xué)院,湖北 武漢 430050)
隨著遙感和雷達(dá)技術(shù)的不斷發(fā)展,基于圖像處理的目標(biāo)探測(cè)技術(shù)領(lǐng)域里迎來(lái)了大數(shù)據(jù)時(shí)代,一方面探測(cè)器的精度提高,使得船舶圖像分辨率和像素大幅提高,圖像中包含的信息量不斷增加;另一方面,視頻探測(cè)等新型目標(biāo)探測(cè)技術(shù)導(dǎo)致的圖像幀數(shù)量也不斷增加,提高目標(biāo)探測(cè)精度的同時(shí),對(duì)船舶圖像處理器的計(jì)算和存儲(chǔ)能力帶來(lái)了挑戰(zhàn)。
針對(duì)船舶圖像處理過(guò)程的計(jì)算資源不足等問(wèn)題,云計(jì)算技術(shù)的資源調(diào)度提供了良好的解決思路。云計(jì)算利用互聯(lián)網(wǎng)鏈路將分散式的計(jì)算資源進(jìn)行整合,針對(duì)某一特定的運(yùn)算任務(wù),可以實(shí)現(xiàn)云平臺(tái)內(nèi)計(jì)算資源的調(diào)度,防止計(jì)算資源浪費(fèi)的同時(shí),有針對(duì)性的對(duì)某些計(jì)算任務(wù)進(jìn)行資源傾斜[1]。
本文對(duì)圖像處理過(guò)程的多任務(wù)調(diào)度算法進(jìn)行研究,載體為T(mén)S201 圖像處理硬件平臺(tái),采用的多任務(wù)調(diào)度算法是遺傳算法與模擬退火算法相結(jié)合的方法,解決船舶圖像處理過(guò)程中的計(jì)算資源分配不均衡的問(wèn)題。
云計(jì)算是一種基于互聯(lián)網(wǎng)技術(shù)的資源整合運(yùn)算模式,相對(duì)于傳統(tǒng)的線(xiàn)下計(jì)算,云計(jì)算技術(shù)可以利用互聯(lián)網(wǎng)將線(xiàn)下的各種計(jì)算資源,包括存儲(chǔ)資源進(jìn)行整合和匹配,線(xiàn)下用戶(hù)通過(guò)分配的訪問(wèn)接口直接訪問(wèn)云計(jì)算的網(wǎng)上資源。云計(jì)算可以實(shí)現(xiàn)多任務(wù)同時(shí)計(jì)算,在使用任務(wù)管理進(jìn)程后,將一個(gè)計(jì)算任務(wù)分解成若干個(gè)小任務(wù),并調(diào)用多個(gè)計(jì)算模塊進(jìn)行計(jì)算,最后對(duì)所有計(jì)算結(jié)果進(jìn)行匯總。通過(guò)這樣多任務(wù)的調(diào)度方式,云計(jì)算比傳統(tǒng)的計(jì)算方式更加快速,也更加可靠。
目前,云計(jì)算平臺(tái)多由分散的數(shù)據(jù)中心構(gòu)成,包括標(biāo)準(zhǔn)化接入、統(tǒng)一的數(shù)據(jù)管理和空間資源整合等幾個(gè)特點(diǎn),圖1 為云計(jì)算技術(shù)的基本架構(gòu)。
圖1 云計(jì)算技術(shù)的基本架構(gòu)Fig. 1 The basic architecture of cloud computing technology
云計(jì)算的體系主要由以下4 個(gè)部分構(gòu)成:
1)SOA 構(gòu)建層
SOA 模塊是云計(jì)算的組件模型,其主要功能是為云計(jì)算用戶(hù)提供各類(lèi)服務(wù)、注冊(cè)、訪問(wèn)接口,將云計(jì)算中的云端應(yīng)用程序與用戶(hù)的實(shí)際需求相結(jié)合。SOA模塊的接口獨(dú)立于硬件平臺(tái)和操作系統(tǒng)。為了提高云計(jì)算用戶(hù)的數(shù)據(jù)安全性,SOA 構(gòu)建層還具有設(shè)置秘鑰等功能[2]。
2)管理控件
云計(jì)算機(jī)中的管理控件主要是為用戶(hù)提供任務(wù)程序管理、資源管理、數(shù)據(jù)安全管理等服務(wù),用戶(hù)可以通過(guò)分配的訪問(wèn)接口,實(shí)時(shí)查詢(xún)當(dāng)前任務(wù)在云端的處理進(jìn)程,同時(shí)也能對(duì)前期上傳的云計(jì)算資源進(jìn)行查看、復(fù)制和剪切。
3)物理資源
云計(jì)算中進(jìn)行調(diào)用的計(jì)算資源、存儲(chǔ)資源等,是指線(xiàn)下通過(guò)互聯(lián)網(wǎng)連接的基礎(chǔ)設(shè)施,包括計(jì)算機(jī)資源、CPU 資源、存儲(chǔ)器等。
4)虛擬資源池
與物理資源相對(duì)應(yīng)的,云計(jì)算采用虛擬化技術(shù)將分散在線(xiàn)下的計(jì)算、存儲(chǔ)、數(shù)據(jù)資源進(jìn)行虛擬化,用戶(hù)在云計(jì)算界面看到的資源模型,是經(jīng)過(guò)虛擬化的虛擬資源。
遺傳算法的關(guān)鍵環(huán)節(jié)包括:
1)生成初始種群
遺傳算法中初始種群的生成方式主要有2 種:
①隨機(jī)生成
這種初始種群的生成方法是根據(jù)所設(shè)計(jì)的適應(yīng)度函數(shù)和閾值,計(jì)算個(gè)體的適應(yīng)度值,滿(mǎn)足閾值要求的留下,不滿(mǎn)足閾值要求的去除,不斷重復(fù)這個(gè)過(guò)程,直到種群中所有個(gè)體都滿(mǎn)足閾值,此時(shí)生成新的遺傳算法種群。
②針對(duì)性生成
這種方法需要對(duì)系統(tǒng)中的初始個(gè)體有一定的了解,將系統(tǒng)種群的初始個(gè)體限定在初始解的范圍內(nèi),生成新的遺傳算法種群。
2)計(jì)算適應(yīng)度函數(shù)值
適應(yīng)度函數(shù)值是判斷種群中個(gè)體是否滿(mǎn)足要求的依據(jù),符合適應(yīng)度函數(shù)的個(gè)體將會(huì)保留形成新的種群,基于遺傳算法的個(gè)體優(yōu)化過(guò)程中,適應(yīng)度函數(shù)值的閾值會(huì)不斷發(fā)生變化,不斷的對(duì)種群中的個(gè)體進(jìn)行淘汰。
常規(guī)的適應(yīng)度函數(shù)如下式:
式中:c1,c2為學(xué)習(xí)因子, ωt為慣性權(quán)重,ybest為最優(yōu)解,N為初始種群個(gè)體數(shù),g(xi,p,wt)為種群中個(gè)體的函數(shù)。
③遺傳與變異
遺傳和變異使生成的新種群更加貼近最優(yōu)解,N為種群的個(gè)體數(shù),每個(gè)個(gè)體的適配值為fi(i=1,2,3,···,N),通過(guò)遺傳與變異產(chǎn)生的下一代種群個(gè)數(shù)為:
圖2 為遺傳算法流程。
圖2 遺傳算法流程圖Fig. 2 Genetic algorithm flow chart
本文以應(yīng)用范圍較廣的TS201[3]圖像處理硬件平臺(tái)為研究對(duì)象,該硬件平臺(tái)能夠同時(shí)對(duì)兩路圖像進(jìn)行處理,核心部件為DSP 圖像處理器和對(duì)應(yīng)的DSP 鏈路接口。
TS201 圖像處理硬件平臺(tái)主要技術(shù)指標(biāo)如下:
圖像輸入分辨率,兩路輸入接口分別為320×256和496×496,16 位/32 位,圖像類(lèi)型為單一色系圖像、灰度圖、雷達(dá)圖像,幀頻為100 Hz,輸出的圖像與輸入格式相同。
由于船舶圖像處理的任務(wù)量不斷增加,TS201 圖像處理硬件平臺(tái)采用DSP+FPGA 平臺(tái)模式,2 個(gè)處理模塊相互之間具有較高的獨(dú)立性。
TS201 圖像處理硬件平臺(tái)的關(guān)鍵架構(gòu)包括核心處理器(DSP+FPGA)、時(shí)鐘管理模塊、雷達(dá)圖像采集模塊、接口模塊、電源模塊等。
TS201 圖像處理硬件平臺(tái)的架構(gòu)圖如圖3 所示。
圖3 TS201 圖像處理硬件平臺(tái)的架構(gòu)圖Fig. 3 Architecture diagram of the TS201 image processing hardware platform
船舶雷達(dá)成像過(guò)程不僅受雷達(dá)電磁波質(zhì)量的影響[4],也會(huì)受到海上水汽、云層等噪聲的影響,建立船舶雷達(dá)圖像的信號(hào)模型為:
式中:A(x,y,z) 為雷達(dá)圖像的目標(biāo)像素函數(shù),B(x,y,z)為海天背景像素函數(shù),N(x,y,z)為雷達(dá)圖像的噪音像素函數(shù)。
為了提高雷達(dá)圖像的處理精度,往往需要進(jìn)行圖像信號(hào)的濾波,定義雷達(dá)圖像中某像素點(diǎn)S0(x,y)的灰度值為f(x,y),建立雷達(dá)圖像的濾波模型為
雷達(dá)圖像的像素差分模型[5]為:
式中:Sn(i,j)為 第n個(gè)像素點(diǎn),Sn-1(i,j)為n-1 個(gè)像素點(diǎn)。
船舶圖像處理的物理資源為分散在線(xiàn)下的TS201圖像處理硬件平臺(tái),而云平臺(tái)可以根據(jù)不同用戶(hù)的船舶圖像處理需求進(jìn)行資源調(diào)配和任務(wù)調(diào)度,確保線(xiàn)下資源不浪費(fèi)的同時(shí),提供船舶圖像的處理效率。結(jié)合模擬退火算法和遺傳算法,研究云平臺(tái)的船舶圖像處理多任務(wù)調(diào)度過(guò)程。
模擬退火算法是一種快速尋優(yōu)的智能算法,其特點(diǎn)包括:
1)局部搜索能力強(qiáng)
模擬退火算法的計(jì)算過(guò)程簡(jiǎn)單,能夠快速定位小范圍數(shù)據(jù)的極值,且魯棒性強(qiáng)。
2)不依賴(lài)初始解
模擬退火算法的初始輸入不影響整個(gè)求解過(guò)程,也可以說(shuō)影響程度很低,因此模擬退火不會(huì)局限于初始解的局域范圍。
3)模擬退火算法具有一定的容錯(cuò)率[6],可以避免算法在局域極值上停止。
遺傳算法和模擬退火算法相結(jié)合的任務(wù)調(diào)度優(yōu)化算法流程如圖4 所示。
圖4 遺傳算法和模擬退火算法相結(jié)合的任務(wù)調(diào)度優(yōu)化算法流程Fig. 4 The task scheduling optimization algorithm process combining genetic algorithm and simulated annealing algorithm
定義云計(jì)算的資源總數(shù)為P,集合表示為R=(r1,r2,···,rP),線(xiàn)下提交的船舶圖像處理任務(wù)總數(shù)為M,定義集合為J=(j1,j2,···,jM),將M任務(wù)劃分為T(mén)個(gè)子任務(wù),對(duì)應(yīng)集合T=(t1,t2,···,tM),則得到M個(gè)任務(wù)的總數(shù)為:
定義測(cè)試環(huán)境指標(biāo)如下:
操作系統(tǒng)Windows 7,處理器為AMD A10-7300 1.90 GH,內(nèi)存RAM 為4 GB,硬盤(pán)為500 GB/5 400/min,開(kāi)發(fā)工具為Eclipse Oxygen。
圖5 為單位時(shí)間內(nèi)采用優(yōu)化調(diào)度方案和原始方案的任務(wù)完成個(gè)數(shù)對(duì)比,左為原始圖像處理方案,右為基于遺傳/退火進(jìn)行任務(wù)調(diào)度的圖像處理方案??梢?jiàn),當(dāng)任務(wù)個(gè)數(shù)超過(guò)一定數(shù)量時(shí),采用多任務(wù)調(diào)度算法后,單位時(shí)間內(nèi)船舶圖像的處理個(gè)數(shù)明顯提升。
圖5 單位時(shí)間船舶圖像處理任務(wù)對(duì)比Fig. 5 Comparison of ship image processing tasks per unit time
為了提高云計(jì)算技術(shù)中的多任務(wù)調(diào)度和分配質(zhì)量,本文采用遺傳算法和模擬退火算法,對(duì)艦船圖像處理過(guò)程的云計(jì)算任務(wù)調(diào)度進(jìn)行優(yōu)化,并在測(cè)試環(huán)境下進(jìn)行了2 種方案的對(duì)比,表明基于遺傳算法和模擬退火算法的任務(wù)調(diào)度,能夠顯著提高船舶圖像處理效率。