王曙光++田西蘭
【摘 要】雷達目標識別技術在現代戰場中具有重要的應用價值。SQLite數據庫具有體積小、實用性強的特點,可有效的實現識別數據的積累。本文以SQLite數據庫為基礎,對雷達目標識別中數據庫的設計和搭建進行了研究。工程應用實踐證明了本文所提方法的有效性。
【關鍵詞】雷達目標識別;數據庫;SQLite
Research on database design for radar target classification
WANG Shu-guang1,2,3 TIAN Xi-lan1,2,3
(1.No.38 Research Institute of CETC,Hefei Anhui 230088,China;
2.Key laboratory of Aperture Array and Space Application,Hefei Anhui 230088,China;
3.Key laboratory of Intelligent Information Processing,Hefei Anhui 230088,China)
【Abstract】Radar target classification has important application value on modern war filed.SQLite database is concise and efficient,thus can be used as the storage solution.The design and build of the database has been researched in this paper.Its efficiency has been proved by the real world application.
【Key words】Radar target classification;Database;SQLite
0 引言
在現代戰場中,雷達目標識別可有效提高裝備的預警能力,增強對抗的針對性,有助于取得戰場主動性,在現代戰爭中具有重要的應用價值[1-3]。
豐富有效的數據可以為識別算法的改進以及識別性能的驗證提供可靠支撐,進而推動目標識別技術的發展。當前,雷達目標識別數據的來源主要有電磁仿真和實際測量。仿真數據便于獲取,但其與真實數據之間存在一定程度的差異,其應用價值也不如實測數據。如何準確、高效的完成識別數據的積累,成為了目標識別工程應用中需要解決的問題。
SQLite數據庫具有體積小、配置簡單、實用性強的特點,是理想的數據庫解決方案。本文從數據積累的角度出發,針對雷達目標識別數據積累的需求,對SQLite識別數據庫的架構和設計進行了研究。
1 SQLite數據庫簡介
SQLite是D.Richard Hipp 在2000年開發出來的一個輕量型的關系數據庫,具有三級模式的結構體系。相對于傳統數據庫,SQLite具有更好的實時性、系統開銷小、底層控制能力強[4-5]。其主要特征如下:
1)支持原子的、一致的、獨立的和持久的(ACID) 事務特性,能夠在系統崩潰和斷電時不會丟失數據。
2)零配置(Zero- configuration),無須安裝和管理配置。
3)支持數據庫大小至2TB,體積小,全部源碼大概3萬行的C語言代碼,250KB的程序空間,每個數據庫完全存儲在單個磁盤文件中。
4)簡單易用的API,由程序直接調用相應的API函數去實現對數據庫中數據的存取操作,對數據的操作較快。
5)支持C/C++,PHP,Perl,Python,Java等多種語言,可運行于多個平臺上,容易移植。
SQLite的接口是一些已經編寫好的C 庫,即使使用不同語言的API,在底層仍然使用C庫執行。SQL語句通過接口進入到高效的SQL編譯器,由標記處理器分解成分析器可以識別的各個標志符,然后由分析器重新組合標志符并調用代碼生成器生成虛擬機器碼,交由虛擬機去執行,最終完成SQL語句指定的任務。
2 識別數據庫總體架構
雷達目標識別數據庫總體設計架構見圖1。對應于雷達目標識別的典型處理流程,在識別數據接收、特征數據提取和識別結果發送這幾個步驟中,將對應的識別數據、特征數據和識別結果信息進行入庫。綜合考慮識別分系統的可擴展性以及數據分析的需要,對應的測量環境信息、軟件版本信息等作為環境信息入庫。除此之外,設立目標參數庫以儲存目標的結構參數、組成等標簽信息。
數據錄入方面,考慮到實際應用中的效率及使用便捷性,采用自動錄入的存儲策略,由程序在運行過程中,定期對待入庫數據進行整理,重組為數據入庫格式并進行入庫操作。
在主程序目錄下建立相應的數據庫目錄,用以存儲數據庫文件。數據庫相關的用戶名、密碼等信息則以配置文件的形式,在目標識別軟件初始化時自動加載。加載后由程序連接數據庫并進行數據庫信息的檢測,若數據庫存在,則將連接保存,以供后續調用;若不存在,則新建數據庫,并保存對應連接。
考慮到通用性,采用模塊化的組件方式,將數據庫功能編寫成為獨立的模塊,由目標識別軟件在程序運行過程中調用,實現數據入庫以及維護等操作。
3 數據庫設計
為了不影響正常的識別流程,在實際應用中,數據庫模塊與目標識別模塊采取并行運行的策略。
在與數據庫交互中,為了避免頻繁的數據庫操作,在數據存入時使用緩存池暫存待入庫記錄,當緩存池記錄達到特定數目時,對該批記錄統一入庫。在實際應用中,該數值可依據識別數據的入庫頻次進行調整。在查詢時,考慮到交互的時效性,實時返回數據庫的查詢結果。
考慮到裝備的長期使用及無人值守情況,在數據庫設計中還應考慮容量問題。在程序執行時,還應定期對數據庫文件大小進行檢查,當數據庫容量預警時,自動刪除入庫時間較早的記錄,避免容量不足的問題。
識別數據庫中主要包含目標特性知識、測量環境信息、識別數據、目標特征數據等數據表。數據表的具體內容應符合具體裝備的識別內容及識別方法。在這里以氣動目標識別為例,對識別數據表和特征數據表進行介紹。
識別數據表用來存儲目標識別模塊接收到的回波信息,主要包含內容見表1。
4 總結
本文以SQLite數據庫為例,對雷達目標識別數據庫的整體架構、交互方式、存儲內容以及數據表結構等內容進行了介紹。工程實踐表明,文中的數據庫設計方法在雷達目標識別應用中具有良好的效果,能夠滿足應用中數據積累的需求。
【參考文獻】
[1]黎湘,范梅梅.認知雷達及其關鍵技術研究進展[J].電子學報,2012,40(9): 1863-1870.
[2]李程,王偉,施龍飛,王雪松.基于多源信息融合的有源雷達組網方式序貫識別方法[J].電子與信息學報,2014,36(10):2456-2463.
[3]王福友,羅釘,劉宏偉.低分辨機載雷達飛機目標分類識別技術研究[J].雷達學報,2014,3(4):444-449.
[4]李坤,姚龍海,程濤.嵌入式數據庫SQLite在雷達信號處理系統中的應用[J]. 計算機系統應用,2009,10:182-185.
[5]林回祥,程小軍.SQLite數據庫在雷達日志管理中的應用[J].雷達科學與技術, 2016,14(2):194-197.
[責任編輯:田吉捷]