陳鄧安,沈培志,叢紅日
( 海軍航空工程學院 指揮系,山東 煙臺264001)
一般認為,武器毀傷概率是武器射擊命中概率與目標毀傷函數乘積的積分[1]。實際上,運用這種解析方法評估目標尤其是不規則形狀目標的毀傷情況,過程都非常復雜。基于目標灰度圖像運用像素點法評估毀傷效果則較為簡單。
基于目標灰度圖像運用像素點法評估毀傷效果,是在獲取目標實物圖像前提下,直接在目標灰度圖像上進行模擬射擊,并將模擬射擊的彈著點以特定顏色顯示。這樣,模擬射擊結束后,圖像上的彈著點都將顯示出該種特定顏色,在計算機屏幕上就能形象地顯示這次射擊的命中情況,經過統計分析目標圖像上顯示該種特定顏色的像素點個數,即可得到相對命中概率。
考慮到目標各部分的重要程度可能各不相同,故射擊時命中部位不同,毀傷效果也不一樣。因此,將目標實物圖像按重要程度不同區分為若干區域,用不同灰度等級表示。通過分析目標不同區域的命中情況,可以更加精確地評估射擊的毀傷效果。
通過光學偵察等手段獲取清晰度滿足使用要求的圖像。
對目標圖像進行初步處理,從背景中分離目標實物圖像,為方便下一步計算,將目標實物圖像處理為白色背景。
將目標圖像處理為灰度圖像,并用不同的灰度等級表示目標不同部位的重要程度。
數值數組是Matlab 的基本數據類型,非常適于表達圖像。在Matlab 軟件中導入圖像,并將圖像數據存入數組中。在Matlab 軟件命令窗口中輸入命令:
A=imread (‘d: square.bmp’)。
導入計算機D 盤根目錄下square.bmp 的圖像[2],得到數組A。

圖1 方形灰度圖Fig.1 Square gray image
執行命令后,在命令窗口顯示出許多數據,這些數據表示square.bmp 各個像素點的灰度值。觀察數組A,主要由3 個數值組成,其中1 號區域為0,2 號區域為128,3 號區域為200。
灰度圖像導入Matlab 軟件后是1 個數據矩陣(二維數組),數組元素的值表示圖像在該元素位置上的亮度值。用0 表示黑色,255 表示白色,用0 ~255 之間的整數表示灰(亮)度。
繼續分析目標圖像的基本數據:
S=size (A),得到S=[95,95],說明該圖像長寬均為95 像素。
以圖像中心作為模擬射擊的瞄準中心,直接在目標灰度圖像上進行模擬射擊,采用蒙特卡羅方法確定每次模擬射擊的彈著點坐標,將每次射擊的命中點以區別于目標實物著色的特定顏色顯示。故每次射擊,均能在計算機屏幕上形象地顯示這次射擊的彈著點分布情況。
火炮對目標進行射擊,受到隨機因素影響,其彈著點服從正態分布,利用正態分布的隨機數可以模擬得到彈著點坐標(xi,yi)[1],從而可以直接在目標圖像上以該坐標畫出彈著點,為方便計算,將彈著點顏色設置為白色,與目標背景色相同。
將目標實物圖像處理為白色背景,其步驟如下:
1)在模擬射擊之前,分別統計目標圖像上以不同灰度等級顯示的不同部位的像素點數量。
2)以圖像中心為模擬射擊的瞄準點進行模擬射擊,通過蒙特卡羅模擬得到彈著點坐標,并直接在目標灰度圖像上畫出彈著點,設置彈著點為白色,得到彈著點分布圖。
3)射擊結束后,再次統計不同灰度等級的像素點數量。
4)因為模擬射擊彈著點顏色被設置為白色,故目標圖像上不同灰度等級區域的彈著點數量,實際等于該區域原像素點數量減去模擬射擊后統計得到的像素點數量,也就是本輪射擊在該區域的命中次數。
5)根據既定條件,分析評估模擬射擊對目標的毀傷情況。
光學偵察發現3 000 m 外敵軍輕型護衛艦,目標圖片經處理后如圖2所示,使用火炮對該艦進行射擊。設火炮射擊系統的系統誤差為0,彈著點坐標受隨機因素影響服從正態分布。在命中情況下,關鍵區域如指揮室、輪機艙命中3 發以上炮彈,則目標喪失全部戰斗能力;關鍵區域命中2 發,且重要區域如主要武備與集控室命中2 發以上,則目標被重傷,喪失大部分戰斗力;其余情況均為輕傷。若向該輕型護衛艦射擊100 發炮彈,試分析評估目標的毀傷情況。

圖2 護衛艦灰度圖Fig.2 Frigate gray image
1)對目標圖像進行處理
將光學偵察得到的目標圖像處理為灰度圖像,并用不同灰度等級表示該艦不同部位的重要程度,如圖2所示。其中,A 為指揮室,B 為輪機艙,C為主要武備,D 為集控室,E 為其他部位。
將區域A 和B 用灰度等級0 表示其重要程度,C和D 用灰度等級80 表示,其余部位的重要性程度用灰度等級132 表示,得到圖示輕型護衛艦灰度圖像,命名為frigate.bmp,并將其存儲在D 盤根目錄下。
2)導入目標灰度圖像數據
在Matlab 軟件中導入目標灰度圖像文件,并將數據存入數組A。
A=imread (‘d: frigate.bmp’),
即讀入D 盤根目錄下命名為frigate 的位圖。并將圖像數據存入數組A 中。
分析數組A,size(A)=[219,758],即A 為219 ×758 的矩陣,同時表示該圖像高219 像素、寬758 像素。因該圖為灰度圖像,故矩陣A 各元素的數值表示以該元素下標為坐標的像素點的灰度值[2]。
該圖中采用矩陣式坐標[3],即原點在圖像左上角,坐標單位為像素。如A(181,377)=80,則說明坐標為(181,377)的像素點其灰度值為80。
3)統計不同重要程度區域的像素點數量
在Matlab 軟件中,統計不同灰度等級區域的像素點數量。
通過查找數組A 中數值為0 元素的個數,確定A 和B 區域的像素點數量x1。
x1=size(A(find(A==0)))[3],
得到
x1=8 398。
通過查找數組A 中數值為80 元素的個數,確定C 和D 區域的像素點數量y1。
y1=size(A(find(A==80)))[3],
得到
y1=9 629。
通過查找數組A 中數值為132 元素的個數,確定E 區域的像素點數量z1。
z1=size(A(find(A==132)))[3],得到
z1=38 803。
4)瞄準目標的中心點坐標進行模擬射擊,并直接在目標灰度圖像上畫出彈著點。
在Matlab 軟件中顯示并保持該灰度圖像。
imshow (A)
hold on
以frigate 圖像中心坐標(110,380)為瞄準中心進行模擬射擊,其彈著點服從正態分布,利用正態分布的隨機數模擬得到彈著點坐標(xi,yi)。
射擊系統的系統誤差為0,彈著點坐標在水平方向上偏差為σx,垂直方向上偏差為σy。彈著點坐標(xi,yi)由于隨機因素的影響散布服從正態分布[4],產生標準正態分布的隨機數η1和η2,在Matlab 軟件中產生服從標準正態分布的隨機數組[5]。設模擬射擊n 次,則需產生n 組隨機數,得到模擬射擊彈著點坐標為[4]

式中:i=1,2,3,…,n 為模擬射擊次數;μx和μy為選定坐標系中的瞄準點坐標,取μx=110,μy=380;σx和σy為中間偏差,σx=80,σy=80。
令n=100,即模擬射擊100 次,通過式(4)得到彈著點坐標。在Matlab 軟件中調用plot 命令直接在目標灰度圖像中畫出彈著點,可以得到模擬射擊彈著點分布如圖3所示。

圖3 彈著點分布圖Fig.3 Dropping point distribution image
在Matlab 軟件中,通過編程計算得到模擬射擊的彈著點坐標。為便于計算,設置所畫“點”的顏色為白色,大小為1。
plot (X,Y′,.w′,′MarkerSize′,1),得到射擊效果圖(見圖4)。

圖4 射擊效果圖Fig.4 Shooting effect image
5)分析模擬射擊的命中情況
仿真射擊結束后,再次統計目標灰度圖像上不同灰度等級的像素點數量。則本輪射擊在某灰度區域的命中次數,也就等于該區域原像素點數量減去模擬射擊后統計得到的像素點數量。
x2=8 396,y2=9 627,z2=38 798,
則
ShootAB=x1-x2=2,表示A 和B 區域命中2 發。
ShootCD=y1-y2=2,表示C 和D 區域命中2 發。
ShootE=z1-z2=5,表示E 區域命中5 發。
6)根據既定條件,分析評估模擬射擊對目標的毀傷情況
綜上所述,本輪射擊發射炮彈100 發,命中輕型護衛艦關鍵區域2 發,重要區域2 發,其他區域5發,依據既定條件,判斷該艦毀傷情況為重傷,喪失大部分戰斗力。
直接結合目標實物圖像運用像素點法進行毀傷效果評估,并采用蒙特卡羅方法模擬分析這一隨機過程,可以繞開繁雜的公式推導,通過分析目標圖像的像素點分布情況,直接得到統計結果。特別是針對不規則目標,在無法用確切的函數關系來描述其毀傷概率情況下,這種方法更加具有優越性。
此外,運用這種方法也可直接計算模擬射擊的命中概率。即將模擬射擊的彈著點顯示為特定顏色,多次射擊后,統計圖像中目標輪廓內特定顏色的像素點個數,即為本輪射擊的命中次數,計算其占總射擊次數的百分比,即可得到相對命中概率。
[1]張野鵬.作戰模擬基礎[M].北京:高等教育出版社,2004.284-324.
[2]岡薩雷斯,等.數字圖像處理(MATLAB 版)[M].北京:電子工業出版社,2007.202-222.
[3]張志涌.精通Matlab 6.5 版教程[M].北京:北京航天航空大學出版社,2003.38-76.
[4]裴鹿成,王仲廳.蒙特卡羅方法及其應用[M].北京:海洋出版社,1998.211-268.
[5]史峰,成本森,陳冰,等.MATLAB 函數速查手冊[M].北京:中國鐵道出版社,2011.410-448.