在Ubuntu 18.04上搞定Anubis 2.3静态版:从下载、配置到跑通第一个GNSS数据质量分析
在Ubuntu 18.04上搞定Anubis 2.3静态版:从下载、配置到跑通第一个GNSS数据质量分析
全球导航卫星系统(GNSS)数据处理领域,数据质量分析是确保定位精度的关键环节。Anubis作为一款开源的GNSS数据质量检核工具,以其轻量级和高效性受到研究人员的青睐。本文将手把手带你完成Anubis 2.3静态版在Ubuntu 18.04系统上的完整部署流程,从环境准备到第一个质量分析报告的生成,涵盖你可能遇到的所有"坑点"。
1. 环境准备与基础配置
在开始安装Anubis之前,我们需要确保系统环境满足所有依赖条件。Ubuntu 18.04 LTS(Bionic Beaver)是一个长期支持版本,提供了稳定的基础环境,这也是推荐使用该版本的主要原因。
首先更新系统软件包列表并升级现有软件:
sudo apt update && sudo apt upgrade -y接下来安装必要的编译工具和库文件:
sudo apt install -y build-essential wget perl gnuplot gnuplot-x11特别需要注意的是,Anubis的绘图功能依赖于ImageMagick,而Ubuntu 18.04默认安装的ImageMagick 6.9.7-4版本存在一些安全限制,需要我们手动调整:
sudo apt install -y imagemagick libchart-gnuplot-perl安装完成后,必须修改ImageMagick的策略文件,否则在生成PNG图片时会遇到权限错误。使用vim或nano编辑器打开配置文件:
sudo vim /etc/ImageMagick-6/policy.xml找到类似下面的段落,将所有rights属性修改为read|write:
<policy domain="coder" rights="read|write" pattern="PDF" /> <policy domain="coder" rights="read|write" pattern="PNG" /> <policy domain="coder" rights="read|write" pattern="EPS" />提示:如果找不到特定格式的策略行,可以直接在
<policymap>节点内添加上述内容。修改完成后保存退出,无需重启服务,更改会立即生效。
2. Anubis主程序安装与验证
Anubis提供了预编译的静态版本,这意味着我们不需要处理复杂的编译过程,但仍需正确配置可执行权限和环境变量。
从官方下载地址获取Anubis 2.3 static 64b版本:
wget https://gnutsoftware.com/software/anubis/download/anubis-static-64b -O anubis下载完成后,重命名并设置可执行权限:
chmod +x anubis sudo mv anubis /usr/local/bin/验证安装是否成功:
anubis -v成功安装后,终端应显示类似以下版本信息:
G-Nut/Anubis [2.3.0] (64-bit static) - GNSS data quality control tool如果遇到"command not found"错误,可能是因为/usr/local/bin不在你的PATH环境变量中。可以通过以下命令临时添加:
export PATH=$PATH:/usr/local/bin为了使更改永久生效,可以将这行添加到~/.bashrc文件中。
3. plot_Anubis绘图工具安装
plot_Anubis是一个Perl脚本,用于将Anubis生成的.xtr分析结果转换为可视化图表。虽然它不是Anubis的核心组件,但对于数据分析结果的直观展示至关重要。
首先确保系统已安装必要的Perl模块:
sudo apt install -y libchart-gnuplot-perl libfile-which-perl从官方源下载plot_Anubis.pl脚本:
wget https://www.pecny.cz/sw/plots/anubis/plot_Anubis.pl chmod +x plot_Anubis.pl sudo mv plot_Anubis.pl /usr/local/bin/验证Perl环境是否正常:
perl -v你应该能看到Perl的版本信息(Ubuntu 18.04默认安装的是Perl 5.26)。如果缺少某些模块,可以通过CPAN安装:
sudo cpan install Chart::Gnuplot File::Which4. 准备GNSS观测数据与配置文件
Anubis需要两种输入文件:GNSS观测数据(通常为RINEX格式的.o和.n文件)和XML配置文件。我们将创建一个完整的工作流程示例。
首先建立项目目录结构:
mkdir -p ~/anubis_project/{data/obs,data/brdc,config,output}假设我们有以下观测数据文件:
- nico3600.10o (观测数据)
- brdc3600.10n (导航电文)
将这些文件放入对应的目录:
~/anubis_project/data/obs/nico3600.10o ~/anubis_project/data/brdc/brdc3600.10n接下来创建配置文件config.xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <!DOCTYPE config> <config> <gen> <beg>"2010-12-26 00:00:00"</beg> <end>"2010-12-26 23:59:59"</end> <sys>GPS</sys> <int>30</int> <rec>NICO</rec> </gen> <inputs> <rinexo>data/obs/nico3600.10o</rinexo> <rinexn>data/brdc/brdc3600.10n</rinexn> </inputs> <qc sec_sum="1" sec_hdr="1" sec_est="2" sec_obs="2" sec_gap="1" sec_bnd="2" sec_pre="1" sec_ele="1" sec_mpx="2" int_stp="1200" int_gap="600" int_pcs="1800" mpx_nep="20" mpx_lim="3.0" /> <outputs verb="1"> <log>output/anubis.log</log> <xtr>output/$(rec).xtr</xtr> <xml>output/$(rec).xml</xml> </outputs> </config>配置文件关键参数说明:
| 参数组 | 关键元素 | 说明 |
|---|---|---|
<gen> | <beg>/<end> | 分析时间范围,格式必须为"YYYY-MM-DD HH:MM:SS" |
<sys> | 卫星系统,如GPS/GLO/GAL等,多个系统用空格分隔 | |
<rec> | 接收机名称,将用于输出文件名 | |
<inputs> | <rinexo> | RINEX观测文件路径,相对于Anubis工作目录 |
<rinexn> | RINEX导航电文文件路径 | |
<qc> | 各种sec_*参数 | 质量控制参数,控制分析的严格程度 |
<outputs> | <xtr> | 输出分析结果文件路径 |
注意:文件路径可以使用相对路径(相对于Anubis运行目录)或绝对路径。如果使用相对路径,确保在执行Anubis时位于正确的目录层级。
5. 运行分析与生成可视化报告
一切准备就绪后,我们可以开始运行数据质量分析了。首先切换到项目目录:
cd ~/anubis_project执行Anubis分析:
anubis -x config/config.xml -l output/process.log -v 5参数说明:
-x:指定XML配置文件路径-l:指定日志文件路径-v:详细级别(0-9,数字越大输出越详细)
成功运行后,你将在output目录下看到:
- NICO.xtr(分析结果)
- NICO.xml(XML格式结果)
- anubis.log(详细日志)
接下来使用plot_Anubis生成可视化图表:
plot_Anubis.pl --ifile output/NICO.xtr --plot="output/NICO.png" --all --title="NICO Station [2010:360]"常见问题解决:
**"*Not Anubis extraction"错误: 打开.xtr文件,检查首行版本号格式是否为三位(如[2.3.0])。如果不是,手动修改为三位版本号。
生成的PNG图片模糊: 可以先生成EPS矢量图再转换为PNG:
plot_Anubis.pl --ifile output/NICO.xtr --plot="output/NICO.eps" --all convert output/NICO.eps output/NICO.png缺少数据或时间范围不匹配: 检查XML配置中的时间范围是否在观测数据时间范围内,以及观测文件和导航文件是否匹配。
分析结果解读:
- .xtr文件包含了丰富的质量指标,如:
- 数据完整性和连续性
- 多路径效应
- 信噪比
- 卫星可见性和几何分布
- PNG图像直观展示了这些指标的时变特性
对于更深入的分析,可以调整XML配置中的qc参数,例如:
- 增加
sec_obs值以提高观测数据质量检查的严格程度 - 调整
mpx_lim以改变多路径效应的检测阈值 - 修改
int_gap以定义可接受的数据中断时长
通过多次运行和参数调整,你可以针对特定研究需求定制分析流程,获得最具参���价值的质量评估结果。
