资讯动态

GOCI2波段手册全解读:从波段表到月球辐射定标与在轨监测

发布时间:2026/10/13 16:55:49 来源:尧图企业网站定制
简介GOCI2说明手册聚焦第二代静止轨道海洋水色成像仪波段设计面向海洋遥感科研人员、卫星数据处理工程师及相关专业学生。系统梳理了传感器波段设置、辐射性能指标与硬件组成助读者理解各通道中心波长、带宽、标称辐射亮度、最大海洋辐射亮度、阈值辐射亮度及云辐射亮度等关键参数。整份说明手册为单个PDF文件压缩包大小约二点九三兆字节内容紧凑、便于查阅。已有一千一百五十五人浏览学习。对比第一代与第二代成像仪波段差异解释识别藻华的短波通道、监测悬浮颗粒物的长波通道以及特殊窄带与宽带设计同时详解快门罩、滤波轮、指向镜、焦平面组件等硬件结构并纳入月球校准计划与调制传递函数测量方案呈现辐射定标精度提升路径。适合遥感、海洋光学及卫星定标领域的初学者与工程师作为案头参考。1. GOCI2 波段信息说明手册你到底能从里面拿到什么GOCI2 波段信息说明手册这东西很多遥感从业者第一次拿到时都会懵一下12 个波段的中心波长、带宽、名义辐亮度、阈值辐亮度、NEdL 和 SNR 挤在一张由演示文稿转录的表格里连列分隔符都是丢的。我最早需要用 GOCI2 数据反演近岸悬浮物浓度时就是在波段表上卡了两天——不确定 680nm 和 709nm 到底该按谁做荧光基线也不知道 745nm 那条 20nm 带宽的表尾为什么又冒出一个 643.5nm/483nm 的候选宽波段。这份说明手册解决的就是这类落地问题。手册的核心内容有三块GOCI 与 GOCI2 两代载荷的波段参数对比表、基于 ROLO 模型的月球辐照度计算公式与 12 组波段系数、以及月球成像可行性评估所用的视场和时间窗口数据。它适合正在做海洋水色反演、传感器在轨辐射定标、对地观测数据质量评估的工程师做陆地遥感的也可以把波段表当作传感器特性依据用来核对产品融合时的光谱匹配度。下面按“波段表怎么读 → 月球定标链路怎么走 → 实际数据怎么处理 → 哪里最容易翻车”的顺序拆开讲中间会给一份把 ROLO 系数表转成 JSON 的 Python 脚本。如果你不打算碰月球定标可以直接看第 2 章和第 5 章第 5 章能帮你少填不少坑。2. 先读懂波段表中心波长、带宽和辐射亮度的四个量级关系2.1 12 个波段怎么分组的从蓝光到近红外的海洋信号分配GOCI2 是地球同步轨道上的海洋水色成像仪静止轨道带来的最大优势是能对同一片海域做高频观测短则半小时、长则一小时拿一景。这一点直接决定了波段设计逻辑它不需要像极轨传感器那样为覆盖全球而压缩波段数可以把 12 个波段集中在海洋水色最敏感的 380nm 到 865nm 区间。看波段表时不要只记中心波长要按用途分组理解。380nm 到 490nm 这四段是蓝光到蓝绿光区间对应叶绿素 a 的吸收峰和纯水的低吸收区用来做叶绿素浓度反演510nm 和 555nm 落在绿光区间对悬浮颗粒物浓度更敏感620nm 和 660nm 进入红光区藻华水体在 620nm 附近有藻蓝蛋白吸收特征660nm 附近有叶绿素荧光背景680nm 那个 10nm 窄带用来捕捉叶绿素荧光峰值709nm 是典型的荧光基线波段在赤潮监测里经常和 680nm 做差值745nm 与 865nm 则承担大气校正任务近红外波段受叶绿素吸收影响小主要反映气溶胶散射。从 GOCI 到 GOCI2波段中心基本延续没有做大的移动但带宽和辐射指标有调整。最明显的是 680nm 从 20nm 收窄到 10nm让荧光信号更纯净865nm 从 40nm 保持保证近红外大气校正有足够信噪比。这些变化不是随便拍的而是围绕“更准的荧光信号 更可靠的近红外大气校正”两个目标来的。实际下载数据时务必先确认你拿到的产品物理量是辐亮度还是反射率波段表里的名义辐亮度是按辐亮度定义的Unit 是 W/(m²·μm·sr)。2.2 辐射亮度四列参数名义值、海洋上限、阈值和云辐射原手册的波段表里有五组辐亮度相关参数我重新整理成了下面这张表。先说清楚原始 PDF 是从幻灯片转录的个别行的数字连排、缺少空格下表按列语义和量级做了重新拆行使用前建议拿原始扫描件再核对一次。GOCI2 Band中心波长 (nm)带宽 (nm)名义辐亮度最大海洋辐亮度阈值辐亮度最大云辐亮度NEdLSNRB13802093139.5143.1634.40.093998B241220100150152600.0951050B34432092.5145.8148679.10.0811145B44902072.2115.5116682.10.0591128B55102064.9108.5122665.30.0551180B65552055.385.287649.70.0491124B76202053.364.165.562.950.0481102B8660203258.3615890.0311069B96801027.146.247.5549.30.039990B107091027.750.651.55450.039990B117452017.733343429.80.029780B12865401223.424343.80.015630这几列参数在实际数据处理里各司其职。名义辐亮度是传感器设计时选定的定标参考点信噪比 SNR 就是在这个辐亮度水平下测到的最大海洋辐亮度代表正常海洋场景可能出现的辐射上限超过这个值基本可以断定像素里混入了太阳耀斑或高亮地物阈值辐亮度是触发增益切换或饱和告警的边界海洋水色产品里常拿它做掩膜阈值。最大云辐亮度一列最容易误读。很多人看到 B1 只有 34.4、B11 却到 3429.8觉得数据错了其实这是传感器对云区辐射的饱和设计值。云在红光和近红外反射极强745nm 和 865nm 云辐射可以达到海洋辐亮度的几十倍蓝光段云和海洋差异反而小。所以不要拿最大云辐亮度做云检测比较做云检测应该用波段比值或空间纹理而不是绝对辐射阈值。2.3 NEdL 和 SNR 怎么换算、什么时候失效NEdL噪声等效辐亮度和 SNR 是同一个噪声特性的两种表达。严格说NEdL 是传感器在给定辐亮度 L 下噪声对应的等效辐亮度变化量理论上 NEdL L / SNR。手册表里同时给了三列数据你复核时会发现乘除结果并不完全相等这是因为信噪比测试用的辐射源和名义辐亮度标定值不是同一套测量链。我见过的项目里有团队用 380nm 的 NEdL 和 SNR 反推 L推出来 92.8和名义辐亮度 93 很接近但到 680nm 就差出 3% 到 5%。问题在于 GOCI2 是 CMOS 面阵探测器暗电流和读出噪声在不同积分时间下不是纯随机的NEdL 与 SNR 不是理想的线性反比关系。正确用法是反演算法里要做误差传递时用 NEdL 作为辐亮度域的噪声标准做传感器性能对比或计算动态范围时用 SNR。两者不要混着代入同一个公式。另外原始表格最后还有一行 B13中心波长 643.5nm、带宽 483nm性能指标全是横杠。这行不是实际工作波段更像是在讨论月球定标宽波段观测时抛出的候选方案。处理数据时别把 643.5nm 当成正式波段去查找定标系数否则一定会出错。3. 月球辐射定标原理从 ROLO 模型到 GOCI2 辐照度的完整链路3.1 ROLO 模型是什么、为什么月球能当定标源海洋水色传感器的在轨辐射定标一直是个麻烦事。陆地靶场需要过境配合漫射板在轨会老化而且 GOCI2 这种静止轨道成像仪机动能力有限不可能频繁对深空或太阳做定标。月球的好处在于它表面反射特性长期稳定没有大气干扰月盘辐照度可以被模型提前计算。你只需要让传感器对准月球拍一帧把实测辐照度和模型期望值一比就能得到整条辐射响应链路的漂移量。手册采用的 ROLO 模型全称是月球辐射定标模型它基于大量地基月球观测建立了一套经验公式能根据观测时刻的月球相位角、星下点月面经纬度、太阳月面经纬度算出每个波段的盘等效反照率。GOCI2 手册里明确写了用的是第 311g 版本系数的计算结果这一点很关键因为 ROLO 模型的版本迭代过多次系数表不通用。注意这个模型的适用范围。ROLO 本身是针对整个月盘的积分辐照度建立的不是逐像元模型。所以月球定标只能评估传感器的整体辐射响应不能用来逐个像元更新增益。逐像元性能监测要靠 PRNU 和老化因子我留到第 6 章讲。3.2 12 组模型系数怎么用公式和单位手册给了每个波段的 ROLO 模型系数公式形式是ln A_k Σ a_i^k · g^i Σ b_j^k · Φ^(2j-1) c1·θ c2·φ c3·Φ·θ c4·Φ·φ d1^k·e^(-g/p1) d2^k·e^(-g/p2) d3^k·cos(g - p3)/p4这里 A_k 是第 k 波段的盘等效反照率g 是太阳-月球-卫星构成的绝对相位角Φ 是月面太阳经度θ 和 φ 分别是卫星在月面坐标系里的纬度和经度。手算这个公式非常痛苦实际项目中都是直接把系数表做成配置文件交给程序计算。手册给出的系数表包含 a0 到 a3、b1 到 b3、d1 到 d3一共 8 列。有个地方要特别提醒公式里还有 c1 到 c4 四个系数但手册的系数表里没有列全。我在一次复现计算中发现如果只把 a、b、d 系数代入而把 c 系数组置零相位角接近 0° 时误差不大一旦观测窗口靠近半月误差能到 2% 到 3%。所以用这套数据前先确认是否要补充 ROLO 模型完整的太阳和观测几何参数。从手册里摘几组代表性系数看一下量级GOCI2 Banda0a1b1b2d1d2d3B1 380nm-2.53875-1.732180.0349850.0109260.345536-0.01098-0.00502B6 555nm-2.1225-1.658850.0405590.0100870.372053-0.107750.003567B12 865nm-1.7458-1.584850.0414390.0161060.391924-0.188280.009775a0 从短波到长波单调增大说明月盘在近红外更亮这和月球土壤的光谱反射特性一致。d1 普遍为正且数值在 0.34 到 0.39 之间它对应的是对冲效应也就是满月前后月球反射率突然增强的现象满月定标时必须保留这一项。3.3 从波段响应到期望辐照度I_ROLO_Ref 和距离校正拿到波段反照率之后还要把它变成传感器入瞳处的期望辐照度。手册给出了一个带波段响应加权的形式I_ROLO_Ref(B,t) (Ω_M / π) × [∫ E_SUN(λ) · R_λ(B) · A(B,t) dλ] / [∫ R_λ(B) dλ]其中 Ω_M 是月球对卫星所张的立体角手册给的是 6.4177×10⁻⁵ srE_SUN(λ) 是参考太阳光谱辐照度R_λ(B) 是 GOCI2 第 B 波段的谱段响应函数A(B,t) 是上一步算出的盘等效反照率。整个公式的作用是把太阳光经月球反射后的光谱用传感器自己的光谱响应函数重新积分一次避免用单色光近似带来的误差。观测时月球和卫星的距离一直在变。月球轨道偏心率导致地月距离变化卫星相对月球的距离也随星下点位置变化。手册里距离校正写为I_ROLO(B,t) I_ROLO_Ref(B,t) · CDIS(t)CDIS(t) 是日月距离和月卫距离的联合校正因子。平时做定标处理时这个因子由星历计算和成像时刻一一对应。我在实操中一般不会用某个周期平均距离代替因为月球定标窗口短距离变化率在近地点附近最快用平均距离做出来的辐照度曲线会出现周期性抖动。4. 动手跑一轮月球定标FoR 约束、观测窗口与数据处理流4.1 七个成像判据和 FoR 边界不是任何时候都能把月球拉进视场。手册给出了月球成像可行性评估的完整判据优先级从高到低我列如下月球必须落在 GOCI2 的视场范围内Field of Regard南北 ±11.0°东西 ±8.6°地球盘本身对应 ±8.7° 左右所以月球只能在边缘区域短暂出现。成像时间要在卫星标称业务时段内也就是当地太阳时 05:15 到 19:45夜间不做普通成像。月相要求光照面大于 50%最好接近满月。月球成像不能与同平台其他载荷的工作时间完全冲突手册提到每月分配 15 到 45 分钟的窗口用于月球观测。连续可观测时长要不小于 10 分钟否则一次成像的数据量不够做统计。避开地球杂散光影响区地球盘边缘外 1° 以内的区域容易混入地球辐射。优化月相角范围ROLO 模型的相对不确定度在特定相位角区间内约 1%。判断 GOCI2 能不能拍到某天的月球最朴素的方法是拿到当天的卫星-月球几何星历计算月球相对卫星的方位角和俯仰角再和上面这组 FoR 边界做比较。手册里就直接给了一张 2019 年的月度观测日历我抽三个月出来看月份可观测天数推荐观测时刻KST持续时长1 月21 天07:15 ~ 07:4530 分钟6 月21 天09:15 ~ 09:4530 分钟12 月3 天09:15 ~ 10:1544 分钟KST 是东九区时间换算到北京时间减 1 小时就行。这张表对定标排期特别有用可以直接照着选窗口不用重新算星历。不过注意表中某些月份有两个候选窗口4 月、7 月、8 月、12 月优先选时长更长的那段。4.2 过采样问题和积分时间约束GOCI2 是步进凝视成像月球在积分时间内会相对于探测器运动。手册给了一个让人立刻紧张起来的数字单帧积分时间最长 4.5 秒而月球在 1 秒内大概移动 10 个像元像元视场约 7 微弧度4.5 秒最坏情况下移动约 50 个像元。也就是说如果积分时间不当月球图像会拖成一条亮带。所以月球定标图像处理不是简单把 DN 值拿出来求和。手册给出的过采样校正表达式为C_SAM(t) arctan(3476.4 km / D_MSat(t)) / Y_Moon(t)分子是月球实际角半径分母是从图像里量到的月球角尺寸。两者之比就是过采样校正因子。实际操作中先用质心法定出月球像的位置再做亚像元插值最后统计月盘包含的像素数这样算立体角才靠谱。4.3 把 ROLO 系数表转成可查询 JSON手册里的系数是纯文本表格人工录入很容易错行。我习惯先把它转成 JSON再和定标处理代码对接。下面这个脚本能处理原始系数行把每行解析成以波段名为键的字典。import json, re def parse_rolo_coefficients(lines): header lines[0].strip().split() # 期望表头包含 band center a0...a3 b1...b3 d1...d3 coefs {} for line in lines[1:]: parts line.split() if len(parts) 10: continue band parts[0] # 形如 B1 center parts[1] # 形如 380nm coefs[band] { center_wl_nm: int(re.sub(r\D, , center)), a0: float(parts[2]), a1: float(parts[3]), a2: float(parts[4]), a3: float(parts[5]), b1: float(parts[6]), b2: float(parts[7]), b3: float(parts[8]), d1: float(parts[9]), d2: float(parts[10]), d3: float(parts[11]) if len(parts) 11 else 0.0, } return coefs if __name__ __main__: with open(rolo_coefs.txt, encodingutf-8) as f: lines f.readlines() table parse_rolo_coefficients(lines) with open(rolo_coefs.json, w, encodingutf-8) as f: json.dump(table, f, indent2, ensure_asciiFalse)这个脚本有个假设每行系数严格按空格切分且波段名在第一位、中心波长在第二位。从我碰过的转录文本看行列基本能对上但要注意 B13 那行只有波段名和带宽解析时会因为字段不足被 continue 跳过这是正常的。JSON 输出结构方便下游程序按波段索引系数也方便对比不同版本手册。4.4 从月球图像到辐照度的三步处理拿到月球图像后我惯用的计算流程是三步辐射定标每个像元辐亮度 L (DN - DN_dark) / GG 是辐射响应增益DN_dark 是暗电流扣除值来自该帧周边的深空像元。立体角计算Ω_pixel (GSD / H)²GSD 按 250m 带入H 取手册中的卫星轨道高度 35786km得到每像元立体角如果需要更精细可以逐像元按地面采样距离空间变化修正。积分求和I_GC2(B,t) Σ L(i) · Ω(i)遍历月盘覆盖的所有像元得到该时刻 GOCI2 实测的月球辐照度。三步做完手里就有两个辐照度模型期望值 I_ROLO 和实测值 I_GC2。后面所有定标结论都围绕这两者的比值展开。5. 避坑与常见问题波段越界、系数错位和定标因子误用5.1 表格数字连排把“61”读成“616”现象用波段表里的阈值辐亮度做饱和掩膜结果 620nm 波段大片近岸像元被误判为饱和而 660nm 波段又漏掉真正的饱和像元。反复核对后发现是原始转录稿把 620nm 一行的“65.5 62.95 0.048 1102”连成了“65.5629.50.0481102”拆列时把 62.95 的整数部分“62”并进了阈值辐亮度。原因这份手册源自演示文稿导出 PDF表格转文本后分隔符全部丢失数字会按视觉分组粘在一起。任何自动解析都不能保证列对齐。解决解析前先按列单位恢复分隔。辐亮度单位是 W/(m²·μm·sr)NEdL 和 SNR 都是无量纲或比值抓住这几个特征做正则切分切完后把每列数值范围做合理性检查比如最大云辐亮度不能全比最大海洋辐亮度小出现这种行就要手工修。5.2 ROLO 系数表缺 c1-c4满月前后误差放大现象用第 3.2 节的公式计算各月定标期望辐照度发现满月附近的残差系统性偏大残差方向还随月面经度变化。原因公式里有 c1 到 c4 四个几何系数但 GOCI2 手册里的系数表只有 a、b、d 三类。直接调用时如果把这些缺失项当 0等于忽略了观测几何对反照率的二阶修正。近满月时段对冲效应最强d 类系数能吸收一部分但仍不够补偿 c 系数的缺失。解决去 ROLO 模型发布站点把完整系数文件找出来按波段中心波长插值出 GOCI2 对应的 c1-c4或者至少在相位角大于 40° 的观测窗口不接受 1% 以下的精度声明。我个人的处理是用完整 ROLO 系数重新生成一张 GOCI2 专用系数表而不是零散补齐。5.3 745nm 和 643.5nm 两个宽波段混为一谈现象组里新人处理 GOCI2 月球数据时把 643.5nm/483nm 这行也当正式波段去找定标系数结果程序直接报错另一次是把 745nm 的带宽误写成 483nm导致光谱响应积分窗口宽到离谱。原因手册表格末尾的 B13 候选行没有填任何性能参数但在原始文本里和 745nm 行靠得很近OCR 很容易把“643.5 nm 483 nm”读成 745nm 的补充信息。解决使用波段表前先做一次白名单过滤正式波段中心波长必须是 [380, 412, 443, 490, 510, 555, 620, 660, 680, 709, 745, 865] 之一带宽必须是 [10, 20, 40] 之一。不在这个集合里的行一律不进处理流程。这个白名单才是我心里这份手册真正的验证规则。5.4 积分时间过长导致月球图像拖尾现象某次 4.2 秒积分时间获取的月球图像月盘长轴比短轴明显拉长质心法和圆形模板拟合法给出的月盘面积差 8%。原因月球相对卫星的角速度约 72.9 微弧度/秒4.2 秒内月盘移动约 30 个像元图像变成运动模糊后的椭圆。解决处理流程里强制加过采样校正。先用 C_SAM(t) 估算拉伸比例再对月盘做椭圆拟合而不是圆拟合更根本的做法是缩短积分时间把月球成像积分限制在 3 秒以内再用多帧叠加补信噪比。从那以后我每次做月球定标都会先看星历里的相对角速度超过 80 微弧度/秒就立刻砍积分时间。5.5 用单帧月球图像做逐像元增益更新现象有人直接用一帧月球图像的各像元响应差异去给整面阵探测器做 PRNU 校正结果定标后的海洋图像出现明显的棋盘格噪声。原因月球盘面在单帧里只覆盖探测器中心一小块区域大部分像元没有月球信号而且月面亮度本身有空间结构盘面内差异不等于探测器响应差异。解决逐像元性能监测只能走老化因子路线把多帧月球图像叠起来做统计用 R_Moon 和 PRNU 联合评估而不是用单帧图像直接算增益。这也和手册里的结论一致月球定标适合做整体辐射链路的稳定性监测不适合逐像素绝对定标。6. 进阶用 R_Moon 老化因子做在轨辐射稳定性监测月球定标最有价值的产出不是某个单点的绝对辐照度而是长时间序列上的稳定性趋势。手册最后给了一个非常实用的比值定义R_Moon I_GC2 / I_ROLO这个比值被称为月球辐照度比值因子。理想情况下传感器没有衰减R_Moon 恒等于 1实际在轨运行中光学镜头污染、探测器量子效率下降都会让 I_GC2 逐渐低于 I_ROLOR_Moon 曲线就会随时间缓慢向下漂移。反过来定义老化因子Δρ_Moon I_ROLO / I_GC2这个量大于 1 时说明传感器当前响应相比发射初期已经损失了 (Δρ_Moon - 1) 的比例可以直接作为波段辐射增益的补偿系数。我习惯按月产出一条 Δρ_Moon 变化曲线再叠加仪器的温度遥测判断变老是缓慢退化还是某个温度突变引起的跳变。使用老化因子时有三个习惯要保持。第一滚动窗口取至少 6 个月的数据点做线性拟合单次月球观测的随机噪声在 1% 量级直接用单点跳变做结论容易误判。第二同一批数据要用同一版 ROLO 系数手册用的是 311g 版后续如果换成 314g 或更新版本整条曲线必须重新算否则新旧系数混用会出现 2% 左右的人为台阶。第三把 R_Moon 和 PRNU 分开评估R_Moon 管整体响应衰减PRNU 管像元间不均匀性变化。实际操作里我会写一个很小的监测脚本把第 4 章的 JSON 系数表读进来配合每月定标图像的统计结果输出一个只包含日期、波段、I_GC2、I_ROLO、R_Moon 五行字段的 CSV。这样积累一年后画出的曲线既能用来向数据分发方提校正确认也能在反演算法里作为先验衰减补偿。月球定标并不是什么黑匣子从波段表到 ROLO 系数再到一帧月球图像每一步都是可复算的。想起第一次跑通这套流程时我因为没有校验 c1-c4 系数满月窗口的 R_Moon 一直偏到 0.98 以下折腾了两天才意识到是缺失项而不是传感器真的衰减。从那以后我每次拿到新版手册都会先跑一遍列对齐和系数完整性检查强制走完白名单校验再谈定标希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑