[發明專利]一種船舶AIS數據大批量高效解碼方法及系統有效
| 申請號: | 201710287895.5 | 申請日: | 2017-04-27 |
| 公開(公告)號: | CN106953717B | 公開(公告)日: | 2020-01-07 |
| 發明(設計)人: | 曾祥堃;肖英杰 | 申請(專利權)人: | 上海海事大學 |
| 主分類號: | H04L1/00 | 分類號: | H04L1/00;H04B7/185;G01S19/24;G06F9/38 |
| 代理公司: | 31249 上海信好專利代理事務所(普通合伙) | 代理人: | 朱成之;周乃鑫 |
| 地址: | 201306 上海市*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 船舶 ais 數據 大批量 高效 解碼 方法 系統 | ||
1.一種船舶AIS數據大批量高效解碼方法,其特征在于,其包含以下步驟:對內存中留存的AIS報文進行篩選、二進制轉碼和二進制解碼;
通過篩選,將所述報文按照多條信息報文和單條信息報文分類:
對于多條信息報文,串行篩選出所述多條信息報文中的多條子報文的信息,串行進行二進制轉碼;對于單條信息報文,并行篩選出所述單條信息報文的信息,并行進行二進制轉碼;對留存的所有報文進行循環處理,直至所有報文的篩選和二進制轉碼全部完成;
將所有報文的二進制轉碼結果進行匯總,并行進行二進制解碼,直至二進制解碼任務全部完成;
其中,內存中的AIS報文是通過內存映射將目標報文的整個文件讀入內存而得到的,使目標報文行的順序不變,且首先讀取一個數據文件,然后解碼該數據文件且并行解碼,在前一個數據文件解碼完成后,并行保存解碼數據和讀取下一數據文件;
所述篩選和二進制轉碼過程為:
對于內存中每個留存的報文,先讀取該報文的報文總數域“x1”域,若“x1”域數值等于1,該報文為單條信息報文,直接將該報文加入單條報文信息集合C;如果所述報文總數域“x1”域數值大于1,該報文為多條信息報文,則根據該“x1”域數值提取該條報文的所有子報文,將該條報文的所有子報文分別轉換成對應的二進制信息,按順序進行拼接,將拼接完成的二進制信息報文加入二進制信息集合B;
內存中留存的所有報文的二進制信息轉換完成后,進行報文信息集合判斷:如果集合C為空,直接將集合B作為結果集合輸出;如果集合C不為空,建立并行任務將集合C內的單條信息報文轉換成對應的二進制信息獲得集合A,合并二進制信息集合A和二進制信息集合B,將合并后的結果作為結果集合輸出;
所述二進制轉碼是對報文信息進行逐個字符提取,將提取字符的ASCII碼減去48,若結果大于40則再減去8,再轉換成二進制字符串;若轉換的二進制字符串不滿6位,則在左側補0直至補滿6位作為拼接結果;若轉換的二進制字符串滿6位,則直接作為拼接結果,再進行后續字符的處理;循環進行直到所有字符處理完成,對拼接結果補充填充位和融合時間戳信息。
2.根據權利要求1所述的一種船舶AIS數據大批量高效解碼方法,其特征在于,在篩選之前,先對內存中的AIS報文進行過濾得到留存的報文;
報文過濾時,先生成目標報文字符串;所述目標報文字符串中將需要留存的每個報文類型,以一個對應的ASCII字符表示;
再對內存中的每個AIS報文提取表示其報文類型的ID碼,將ID碼能與目標報文字符串中任意一個ASCII字符相匹配的AIS報文留存在內存中;將ID碼無法與目標報文字符串中ASCII字符匹配的AIS報文丟棄。
3.根據權利要求1所述的一種船舶AIS數據大批量高效解碼方法,其特征在于,在二進制轉碼前,對所有報文進行校驗,若校驗通過則提取時間戳信息和填充位信息。
4.根據權利要求1所述的一種船舶AIS數據大批量高效解碼方法,其特征在于,獲得所有報文的二進制轉碼結果后,并行迭代進行二進制解碼:先根據解碼工作站CPU的物理核心數建立相應數量的并行二進制解碼任務,再將所有報文的二進制轉碼結果分組并分配給各個二進制解碼任務,并行進行每個二進制解碼任務,匯總解碼結果;循環進行,直至分配的所有二進制解碼任務全部完成。
5.根據權利要求4所述的一種船舶AIS數據大批量高效解碼方法,其特征在于,所述每個二進制解碼任務過程為:讀取一條待解碼的二進制信息,提取該二進制信息的前6位值,根據該二進制信息的前6位值選擇相匹配的處理函數,將前6位以外的二進制數據送入相應處理函數,進行函數解碼,得到解碼結果。
6.根據權利要求1或4所述的一種船舶AIS數據大批量高效解碼方法,其特征在于,任意一個報文文件的二進制解碼的所有任務完成后,在第一存儲器中并行保存解碼結果,同時在第二存儲器中讀取下一個報文文件。
7.一種船舶AIS數據大批量高效解碼系統,其特征在于,它包含:
衛星或者若干個岸基接收站,所述衛星或岸機接收站收集船舶AIS報文;
AIS存儲服務器,所述衛星或岸機接收站收集的AIS報文,通過網絡匯總到所述AIS報文存儲服務器進行存儲;
解碼工作站,所述解碼工作站與AIS存儲服務器連接,解碼工作站采用如權利要求1~6任意一項所述的船舶AIS數據大批量高效解碼方法,對存儲的AIS報文進行處理;
AIS解碼結果存儲服務器,對所述解碼工作站獲得的最終解碼結果進行存儲。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海海事大學,未經上海海事大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710287895.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:機器人
- 下一篇:機器人(JT700)
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





