SatDump 卫星数据解码完整指南:从 SDR 接收出图的实战教程
【免费下载链接】SatDumpA generic satellite data processing software.项目地址: https://gitcode.com/GitHub_Trending/sa/SatDump
SatDump 是一款开源的卫星数据解码软件,用软件定义无线电(SDR)接收气象卫星、数据中继等信号的基带或音频信号,再把它解码成图片、数据集等产品。界面党和命令行党都能用。这篇教程覆盖安装、首次上手、典型用法和扩展方向,适合第一次接触地面站接收的爱好者。
🛰️ SatDump 能做什么
直播解码、离线处理和录音三条路线
SatDump 的工作方式可以归为三类:
- 直播解码:SDR 接到电脑,锁定频率后边收边解,卫星过境期间直接产出图像,不需要先存文件。
- 离线处理:把之前录好的基带(cs16、cf32 等格式)或 .wav 文件丢进去解码,适合信号弱、过境时没看住的情况。
- 纯录音:只录基带不解码,事后慢慢处理。
三种方式在 GUI 和 CLI 里都有对应入口,流程一致。
覆盖的卫星类型
仓库内置了上百条卫星处理流水线,docs/pages/Pipelines.md 有完整列表。常见的包括:
- 气象卫星:NOAA、MetOp、Fengyun 2/3/4、Meteosat、Himawari、GOES、GK2A 等
- 气象与科研卫星:EOS(Terra/Aqua)、MetOp-SG、Jason-3、LandSat、OceanSat
- 其他:SpaceX、BlueWalker-3、DMSP、Inmarsat、CubeSat(GeoScan、Lucky-7 等)
每条流水线对应一种信号格式和载荷,选对流水线是出图的前提。
哪些人适合用
如果你是业余无线电或天文爱好者,有一台几十元的 RTL-SDR 或几百元的 Airspy,想亲眼把 NOAA 气象云图收下来;或者你手头有一批录好的基带文件不知道怎么处理,SatDump 都能覆盖。它免费、跨平台,Windows、macOS、Linux、Android 都能跑。
📦 三种系统完成安装
Windows:下载即用
到 SatDump 的 Release 页面下载安装包或便携版即可,无需编译。安装后运行satdump-ui.exe启动图形界面,satdump.exe进入命令行。运行环境要求 Visual C++ 运行库,多数电脑已自带。
macOS:源码编译或官方构建
Release 页提供免依赖的 macOS 构建。想自己编译的话,需要先装 Homebrew 工具链:
brew install cmake dylibbundler libtool autoconf automake meson然后克隆仓库、执行macOS/build_deps.sh构建第三方依赖,再用 CMake 编译。注意 mingw 方案在 Windows 上不受支持,VOLK 无法工作。
Linux:apt 装依赖再 CMake
Linux 推荐源码编译。Debian/Ubuntu 系统一条命令装好大部分依赖:
sudo apt install git build-essential cmake g++ pkgconf libfftw3-dev libpng-dev libtiff-dev libjemalloc-dev libcurl4-openssl-dev libvolk-dev libnng-dev libglfw3-dev其中libvolk-dev、libnng-dev是核心运行依赖,libglfw3-dev只在需要 GUI 时装。之后进入源码目录:
git clone https://gitcode.com/GitHub_Trending/sa/SatDump && cd SatDump mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr .. make -j$(nproc)-DCMAKE_BUILD_TYPE=Release开启优化编译,make -j$(nproc)用满 CPU 核心数。想直接跑可以不安装,把../resources和../satdump_cfg.json软链进 build 目录即可;系统级安装则执行sudo make install。
另外仓库自带 Dockerfile 和 docker-compose.yml,用docker compose build再docker compose run也能跑,适合不想污染宿主环境的使用者。
🚀 第一次上手:GUI 与 CLI 最短路径
GUI:File → Processing 解一个文件
拿到一个录好的基带文件后,打开图形界面,走这条最短路径:
- 菜单
File→Processing打开处理面板 - 选择对应卫星的流水线(如
noaa_hrpt) - 选择输入文件,并设置输入类型(基带、帧、软符号)
- 核对采样率等参数,点 Start
解码出的产品会自动挂在Root的Products分类下,点选仪器就能看到图像。详细步骤见仓库内的 docs/pages/QuickStart.md。
GUI:Add → Recorder 直播收星
不想先录后解的话:Add→Recorder新建一个录音器,选择 SDR 设备并设置频率、增益,选好流水线后直接开始,直播解码与录音可以同时进行。录音器里还能配置跟踪、定时过境接收和云台控制。
CLI:一条命令完成离线解码
命令行同样够用,格式是:
satdump pipeline metop_ahrpt baseband ~/metop_baseband.cs16 ./out --samplerate 6e6 --baseband_format cs16--samplerate 6e6指定 6 MHz 采样率,--baseband_format cs16告诉 SatDump 输入是有符号 16 位 I/Q 文件,与录制时的格式保持一致即可。想看某个流水线的全部参数,命令末尾加--help。
SatDump 命令行初始化完成后的终端界面
📡 典型用法与出图流程
一条命令直播解码 NOAA / MetOp
最经典的场景是过境期间直播收图像:
satdump legacy live metop_ahrpt ./out --source airspy --samplerate 6e6 --frequency 1701.3e6 --general_gain 18 --bias --timeout 780--source airspy指定设备,--frequency 1701.3e6对准 1701.3 MHz 的 MetOp AHRPT 下行,--bias开启偏置供电,--timeout 780让任务在 13 分钟后自动停止。其他 SDR 的专用参数(HackRF、BladeRF 等)见 docs/pages/SDR_Options.md,运行satdump sdr_probe可以列出电脑上可用的设备。
只录不解:先把基带存下来
信号弱时可以只录音,留待信号好的时候处理:
satdump legacy record ./baseband --source airspy --samplerate 6e6 --frequency 1701.3e6 --bias --baseband_format cf32注意参数里不要带扩展名,文件由 SatDump 自动命名;--baseband_format cf32输出浮点 32 位格式,动态范围大,适合事后精细处理。
解码后:预设、叠加与投影
图像出来后还有一步"出图":在仪器上选择预设(如 False Color 合成),用Current → Add Overlay叠加国界、城市等信息。投影则支持等距圆柱(equirec)、立体投影、UTM、Web Mercator 等多种方式,通常选 Equirectangular 并开启 Auto 模式即可,还能导出带地图的 GeoTIFF,方便导入 GIS 软件继续分析。规则详见 docs/pages/Projections.md。
🔌 生态与扩展
支持的 SDR 设备
仓库 plugins/sdr_sources/ 目录按设备拆成了独立的源插件,覆盖面很广:RTL-SDR、Airspy、AirspyHF、HackRF、LimeSDR、BladeRF、Pluto、ADALM 系列、SDRPlay、USRP,以及 MiriSDR、Sdr++ Server、RemoteSDR 等网络源。Android 端支持 RTL-SDR、Airspy、AirspyHF、LimeSDR Mini、HackRF。想接新设备的话,照着这个目录写插件即可。
LUT 生成器:给图像配色
气象图像处理的一大块工作是写 LUT(查找表)做真彩、假彩合成。SatDump 内置了 LUT 生成器,可视化调节通道映射曲线,规则说明在 docs/pages/LutGenerator.md。
脚本与工具链
- AngelScript 脚本:内置 AngelScript 引擎(src-core/angelscript/),可以用脚本描述图像处理、投影、自动保存流程,替代手工点界面。
- 卫星专属插件:每个卫星一个插件目录,如 plugins/noaa_metop_support/、plugins/fengyun4_support/,是阅读某卫星解码原理的好入口。
- 辅助小工具:tools/ 下有 SDR 探测、图像模拟器、投影测试等独立 CLI,调试信号链时很有用。
【免费下载链接】SatDumpA generic satellite data processing software.项目地址: https://gitcode.com/GitHub_Trending/sa/SatDump
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考