实验一:船舶位置感知与MMSI数据分析

一、 实验目标

  1. 知识目标:理解船联网感知层的基本构成,熟悉船舶自动识别系统作为核心数据采集设备的工作原理。

  2. 技能目标:掌握船舶位置和MMSI数据的获取、预处理(去噪)、基础分析和可视化方法。

  3. 应用目标:能够利用处理后的数据,进行简单的船舶行为分析,为智慧航运、港口管理等应用提供数据支撑。

  • 实验过程
  1. 实验代码源

项目名称: AI Stream I/O(或类似名称,可能是"Aars stream IO")

功能: 通过WebSocket实时跟踪全球船舶位置

数据内容: 船舶位置、方向、轨迹、事故监测、货物信息等

特点: 实时、免费、开源

项目地址: 位于GitHub上

2.仿真过程代码

访问资源:

登录GitHub(或其他支持账号,如微软账号)

进入项目页面,点击"Get Started"查看使用说明

获取API Key:

登录后,在"Usage"页面生成API Key

API Key用于后续所有请求的认证

查看文档:

阅读官方文档(AI Stream API Reference)

了解WebSocket连接方式、消息类型、订阅与认证机制

3.仿真

准备开发环境(Python示例):

安装依赖库:

websockets

asyncio(或think i u,应为asyncio)

json(或json-file)

替换示例代码中的API Key

运行示例代码:

代码通过WebSocket连接(WSS协议)

设置查询区域(纬度-90到90,经度-180到180)

可设置过滤条件(如MMSI号)

运行代码后接收并解析船舶位置信息

4.源代码

数据输出与问题:

代码返回船舶的MMSI号、纬度、经度等信息

示例代码中存在输出标签错误(经纬度显示均为"latitude")

实际应用中需自行修正代码逻辑

扩展功能:

除了位置,还可获取船舶方向、轨迹等更多数据

需进一步调用API或修改订阅参数

三.实验总结:

本次实验通过AI Stream I/O平台实现了基于WebSocket的全球船舶位置实时感知。实验者完成了从注册、获取API Key、环境搭建到运行示例代码的全过程,并对返回数据进行了初步解析。平台提供了丰富的船舶数据,适用于海洋监测、轨迹分析等应用场景。

相关推荐
张柏慈16 小时前
Java性能优化:实战技巧与案例解析
java
天“码”行空16 小时前
简化Lambda——方法引用
java·开发语言
带刺的坐椅17 小时前
MCP 进化:让静态 Tool 进化为具备“上下文感知”的远程 Skills
java·ai·llm·agent·solon·mcp·tool-call·skills
java1234_小锋17 小时前
Java线程之间是如何通信的?
java·开发语言
张张努力变强17 小时前
C++ Date日期类的设计与实现全解析
java·开发语言·c++·算法
while(1){yan}18 小时前
Spring事务
java·数据库·spring boot·后端·java-ee·mybatis
毕设源码-赖学姐18 小时前
【开题答辩全过程】以 高校社团管理平台为例,包含答辩的问题和答案
java
余瑜鱼鱼鱼19 小时前
线程和进程的区别和联系
java·开发语言·jvm
小唐同学爱学习19 小时前
如何解决海量数据存储
java·数据库·spring boot·mysql
962464i19 小时前
SBE(simple-binary-encoding)-Demo
java