supermachine--tomato-passio.../20240410RGBtest1/通信协议(旻哥暂时同意版).md
GG 828015c206 feat:新增百香果rgb部分代码;
refactor:重构部分代码逻辑
2024-06-04 22:51:02 +08:00

3.7 KiB
Raw Blame History

百香果&西红柿通信

OSI5~7层基于单播TCP/IP一包数据由8'haa打头8'hbb结束共6个字段

起始 长度1 长度2 长度3 长度4 类型1 类型2 类型3 类型4 数据1 数据2 ... 数据i 校验1 校验2 结束
8'haa 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz 8'hzz ... 8'hzz 8'hff 8'hff 8'hbb

起始

1字节8'haa

长度

一个32位无符号数length长度 = 数据字节数i + 4 。
长度1指length[31:24]长度2指length[23:16]长度3指length[15:8]长度4指length[7:0]

类型&数据

ASCII字符比如类型1为' '(空格)类型2为' '(空格)类型3为'I'类型4为'M'代表RGB图像数据包

  • RGB图像数据包' (空格)''(空格) ''I''M'数据1~数据i包含了图像的行数rows(高度)、列数cols(宽度)、以及图像的RGB数据

    
    i-4=rows \times cols \times 3
    

    具体如下:

行数1 行数2 列数1 列数2 图像数据1 ... 图像数据(i-4)
rows[15:8] rows[7:0] cols[15:8] cols[7:0] ...

返回结果数据包' (空格)''R''I''M'数据1~数据i包含了长径long、短径short、缺陷个数num、缺陷面积area、结果图像的行数rows(高度)、列数cols(宽度)、以及结果图像的RGB数据


i-14=rows \times cols \times 3

具体如下:

长径1 长径2 短径1 短径2 缺陷个数1 缺陷个数2 缺陷面积1 缺陷面积2 缺陷面积3 缺陷面积4 行数1 行数2 列数1 列数2 图像数据1 图像数据(i-14)
long[15:8] long[7:0] short[15:8] short[7:0] num[15:8] num[7:0] area[31:24] area[23:16] area[15:8] area[7:0] rows[15:8] rows[7:0] cols[15:8] cols[7:0]
  • 光谱数据包' (空格)''(空格) ''S''P'数据1~数据i包含了光谱数据的行数rows(高度)、列数cols(宽度)、谱段数bands、以及图像的光谱数据

    
    i-6=rows \times cols \times bands \times 4
    

    具体如下:

行数1 行数2 列数1 列数2 谱段1 谱段2 图像数据1 ... 图像数据(i-6)
rows[15:8] rows[7:0] cols[15:8] cols[7:0] bands[15:8] bands[7:0] ...
  • 模型切换指令

    ' (空格)''(空格) ''P''A',表示使用的是百香果分级模型

起始 长度1 长度2 长度3 长度4 类型1 类型2 类型3 类型4 数据1 校验1 校验2 结束
8'haa 8'd0 8'd0 8'd0 8'd5 ' ' ' ' 'P' 'A' 8'hff 8'hff 8'hff 8'hbb

' (空格)''(空格) ''T''O',表示使用的是西红柿分级模型

起始 长度1 长度2 长度3 长度4 类型1 类型2 类型3 类型4 数据1 校验1 校验2 结束
8'haa 8'd0 8'd0 8'd0 8'd5 ' ' ' ' 'T' 'O' 8'hff 8'hff 8'hff 8'hbb

校验

2字节校验1为8'hff校验2为8'hff

结束

1字节8'hbb