日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

详细介绍XTF文件数据格式

發布時間:2023/12/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 详细介绍XTF文件数据格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

詳細介紹XTF文件數據格式

(按照數據結構順序列出)(普遍適用)

  • XTFFILEHEADER Structure
  • 這個是整個文件的header,里面存儲了文件名,SonarName,SonarType,CHANINFO等基礎信息。
    里邊會有一個判斷哪個通道的問題,這個也差不多決定了之后你的數據結構是哪一種類型的。
    比如NumberOfBathymetryChannels==1的時候,就差不多是關于Bathymetry的數據包了。
    之后CHANINFO為六個通道的信息
    通道信息還是比較重要的,關系到之后的ping文件中有幾個通道。
    這個意思是,當CHANINFO中儲存了兩個通道的有效信息,pingHeader中就有兩條數據通道。

    just like this

    (!!注意為有效信息,有些通道只是空數據包,需要跳過)
    如果遇到Bathymetry,那只有一條通道。

    以上加起來一共1024bytes。

  • 之后就是每一個ping對應的結構
  • 包括XTFPINGCHANHEADER以及具體的數據包

    2.1. XTFPINGCHANHEADER
    當你在寫這部分代碼時候,一定要注意,XTF文件中的ping數不勝數,每一個ping中都有header以及data,而且ping的類型可能還不相同。所以你需要仔細看一下你的header都有什么,對應哪一個structure。
    注意:每一個header的前六個內容基本一致,我們可以利用這一特性,先獲取HeaderType是哪一種類型,通過if判斷之后應該運行哪一個structure。
    這時候,你會遇到空數據包的存在,判斷是否為空數據包的方法為:ping的大小為該pingheader的大小,也就是整個ping中只有pingheader,data為空。當遇到這種情況的話,用return直接返回,獲取下一個ping。
    另外注意,HeaderType會有幾個特殊的結構,一定要仔細看完,不是全部的pingheader都是一樣的。

    2.2. data sturcture
    我大概理解XTF說明文件中的內容為:數據格式不歸我管,你去找別人要!聲納格式網上比較普遍,可以直接看我上一篇中的資源有哪些,里面介紹了幾個博文,可以參考。因為我需要的數據為Bathymetry,網上沒有,我直接給那個公司發郵件獲取的。我這里也給大家貼上[XTF文件],文件內容為Sonic2020,2022-2024設備的data structure以及xtf說明書,大家自取。
    鏈接:https://pan.baidu.com/s/1bIyzsWcXRHx3ggljKaCTDA
    提取碼:fyej
    大概的結構基本就是這些。

    寫代碼的時候,最好在某些顯眼的地方加入if判斷,判斷是不是剛好讀到了這個位置
    比如在開始讀取pingheader的時候

    if self.MagicNumber == 64206:# XTF文件里面有具體說明print("\nPING文件格式正確")

    如果輸出PING文件格式正確,說明前面沒有發生錯位,可以正常讀取。

    如果覺得好的話,點贊支持一下!
    之后會更新我的一些代碼邏輯。
    網上有關XTF文件的內容真的不多,如果有比較好的,也可以直接留言,讓更多人的知道。
    我今天已經全部完成了對XTF文件的解析。再次紀念一下。

    總結

    以上是生活随笔為你收集整理的详细介绍XTF文件数据格式的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。