BitRIC: Efficient Neural Compression of LiDAR Range Images via Hierarchical Bitplanes¶
会议: ECCV2026
Paper: https://eccv.ecva.net/virtual/2026/poster/5317
PDF: https://media.eventhosts.cc/Conferences/ECCV2026/pdfs/9932.pdf
领域: 自动驾驶 / 激光雷达数据压缩
关键词: 距离图、分层位平面、熵编码、概率估计、残差细化
一句话总结¶
BitRIC 把整数距离图拆成由高位到低位的二值平面,以共享上下文和三阶段概率估计进行熵编码,再用单步残差细化补偿截断低位,在 WOD 上相对 JPEG2000 达到 D1 BD-BR −61.73%、无损码率 6.05 Bpp,并保留较好的下游检测精度。
研究背景与动机¶
激光雷达的原生测量并不一定是无序点集:扫描角度天然提供行列索引,每个网格位置存储一条激光束的径向距离。传统点云压缩先把距离图投影到三维,再通过八叉树或稀疏结构组织点,增加了表示和计算成本;一些方法随后又投回球面坐标,形成距离图到点云再到距离图的往返。若直接保留传感器输出的规则网格,就能使用成熟的二维计算算子,但普通图像编码器并不擅长距离值的非均匀分布和物体边界处的深度突变。
已有神经距离图压缩也有各自的代价。VAE 类方法吞吐较好,却容易丢失细小几何结构;逐像素自回归或循环残差预测能提高压缩率,却把解码变成长串顺序操作;隐式神经表示需要逐帧拟合网络,编码成本很高。本文选择改变预测单位:不一次预测完整距离,也不沿整张图逐像素扫描,而是先确定距离的高位,再逐层编码剩余位的信息。
这样,同一段已恢复的高位既能告诉编码器“下一位更可能是什么”,也能告诉重建器“没有传输的低位大致是多少”。核心 idea:用分层位平面构造可逐级恢复的几何上下文,让概率估计负责准确传输,让单步残差细化负责截断后的近似恢复,以同一框架覆盖有损与无损压缩。
方法详解¶
整体框架¶
输入是预处理后的非负整数距离图,输出是压缩比特流以及接收端重建的距离图;转成三维点云供检测使用是后续步骤。分层位平面先把每个距离值拆成二进制高低位,共享上下文骨干读取已经恢复的部分距离图,三阶段概率估计 PEM 据此驱动算术编码。无损模式传完全部位平面;有损模式只传前若干层,然后由单步残差细化 ORM 一次补出未传部分的连续残差。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
Input["整数距离图"] --> Planes["分层位平面"]
Planes --> Backbone["共享上下文骨干"]
Backbone --> PEM["三阶段概率估计<br/>PEM"]
PEM --> Stream["算术编码与解码<br/>恢复已传位平面"]
Stream -->|继续传输下一层| Backbone
Stream -->|有损截断| ORM["单步残差细化<br/>ORM"]
Backbone -->|共享特征| ORM
Stream -->|全部位平面| Output["重建距离图"]
ORM --> Output
这里的“无损”以进入编码器的整数距离图为准,而不是自动意味着整个原始测量或任意点云处理链无损。距离裁剪、毫米量化,以及 SemanticKITTI 点云到伪距离图的投影,都发生在编码之前;恢复三维坐标还需要标定与运动信息。论文认为辅助元数据的数据量较小,但不能把它们理解成不需要传输或共享。
关键设计¶
1. 分层位平面:把一个大数值预测拆成有明确精度次序的二值问题
设原图为 \(I_N\),每个像素使用 \(N\) 位整数表示,\(X_1\) 是最高位,\(X_N\) 是最低位。高位对距离值的影响大,低位提供更细的数值精度,也可能包含传感器噪声;这种层次首先是数值精度的层次,不能机械理解成每个位平面对应一个空间频段。无效回波位置在输入中记为零,全部位平面精确恢复时这些零也会精确恢复。
缓存中的原式 (1) 有排版缺损,下面按二进制位的定义重写,显式写出保证结果为二值的取模操作;它是定义展开,不是另一个学习模块:
已恢复的前若干位可以直接加权合成为部分距离图 \(I_{n-1}\)。它保留了所有已知位的信息,因此无需逐张堆叠历史位平面作为条件;编码器和解码器只要持有同一个部分重建,就能计算一致的下一层概率。论文的跨位平面分解可写为:
这仍然是自回归模型,只是主要顺序依赖沿位深展开,而非让整张距离图的每个像素都依次等待。首个位平面的先验仍需编码,主文没有展开它的具体实现,不能擅自假定它免费传输或采用固定均匀分布。
2. 共享上下文骨干:把距离取值、扫描位置与横向邻域变成可复用的几何先验
部分重建首先经过可学习查找表,把离散距离值映射为连续特征;行列位置嵌入再重复到对应空间尺寸后与之拼接,使模型能学习不同扫描方向的统计差别。例如,下方激光束更常遇到近处地面,单靠像素数值未必能区分这种位置先验。缓存的方位角、俯仰角符号与张量轴命名不够一致,因此此处只按可确认的“行列位置嵌入”解释,不固化可疑轴名。
距离图横向远宽于纵向,骨干用水平空间到通道模块 HSCM 将相邻 \(1\times r\) 个位置折叠进通道,再通过 \(1\times1\) 卷积和 ReLU6 聚合。默认 \(r=4\):空间宽度缩小,后续卷积变便宜,同时折叠重排本身没有像普通抽样那样直接扔掉三个位置;不过后续通道压缩是学习映射,不能据此宣称整个模块无信息损失。缩窄后的特征送入带跳连的 U-Net,其输出与输入特征拼接,形成 PEM 和 ORM 共用的上下文。这一骨干不只提供粗略深度,还把局部边界和更大范围结构带到下一位预测中。
3. 三阶段概率估计:用少量顺序步骤换取位平面内部的相关性
若同一位平面的所有像素都只看前面的高位,模型会漏掉当前层内部的邻域依赖;若逐像素更新,又会失去并行吞吐。PEM 在横向分组上采取折中:先预测第 1 组,再利用该组已知符号预测第 3 组,最后合并第 1、3 组的信息,一起预测第 2、4 组。每一步输出的是当前二值符号为 1 的 Bernoulli 概率图,算术编码器依据该概率压缩真实符号,而不是直接把预测值当作重建值。
训练或编码时可使用真实的先行组符号,解码时只能使用已经从比特流恢复的同组符号;两者的条件必须相同,才不会形成概率不一致。主文把最后的第 2、4 组误称为“剩余奇数列”,这里按分组编号解释为偶数位置组。三阶段指的是每个目标位平面的分组预测步骤,并不是整个扫描只做三次神经网络调用;完整流程还要逐位平面推进。
4. 单步残差细化:不猜每一个低位,而是一次回归被截断的数值尾部
有损模式由 \(M<N\) 控制只传最高的 \(M\) 个位平面,剩余低位不再进入比特流。ORM 把这些低位的加权和看作一个残差目标,归一化到 \([0,1]\),再通过卷积层从共享特征回归它。接收端把预测残差反归一化回原始整数尺度并用于细化粗重建;与逐个生成低位相比,这只在终止层调用一次,论文报告平均额外解码开销为 2 ms。
这一步无法恢复没有传输的信息的真实值,它利用的是统计规律,所以只属于有损路径。其价值在于同样的比特流可以比直接补零获得更准确的车辆轮廓与小结构,而不必把节省的带宽重新花在全部低位上。主文将残差的具体归一化、网络配置和解码细节指向补充材料;当前缓存没有该补充内容,因此不编造缩放分母、取整规则或有损模式的无效像素处理细节。
一个完整示例¶
以下是帮助理解位平面机制的算术示例,不是论文中的测试样本。设一个距离像素用 8 位表示,取值 173,其二进制为 10101101。若只传前 4 位 1010,按原位权重合并得到粗重建 160,未传的数值残差为 13。
PEM 编码这几个高位时,并不孤立地看这个像素,而是参考整幅部分距离图以及当前层已恢复的列组。若继续传完全部 8 位,就精确恢复 173;若在 4 位处停止,ORM 根据空间上下文估计残差,再细化 160。这里只能确定真实残差是 13,不能无依据地声称网络一定预测出 13。例子也说明:少传低位改变的是可恢复精度,而概率建模改变的是传递这些已选位需要多少比特。
损失函数 / 训练策略¶
训练同时优化各位平面的交叉熵码率和归一化残差的均方误差。下面将主文的码率项按前述条件分布展开,\(p_n\) 表示包含适用上下文的概率模型,首层使用其先验:
论文没有另设传统率失真权重 \(\lambda\),而是以传输位平面数 \(M\) 控制运行时码率与精度。需要区分的是:训练中的失真是距离残差 MSE,测试中的 D1、D2 与 CD 则在三维点云空间测量,本文没有用检测标签训练压缩器。
实现使用 Python 3.10、PyTorch 2.1 和 Adam,训练 70,000 步,初始学习率 \(5\times10^{-4}\),batch size 为 1。低于 1 Bpp 的率失真实验还会将输入在水平方向下采样 2 或 4 倍;这种对输入的下采样不同于骨干内的 HSCM 特征折叠,不能混为同一个无损重排操作。
实验关键数据¶
主实验¶
WOD 使用 798 个训练序列和 202 个验证序列,原始距离图为 \(64\times2650\),只取第一回波,最大距离裁剪至 75 m,并量化到 1 mm。SemanticKITTI 按 00–10 序列构造训练与验证划分,其中 08 留作验证;点云球面投影为 \(64\times2048\) 伪距离图,裁剪到 70 m,同样量化到 1 mm。
码率用每点比特数 Bpp 表示。D1 PSNR 衡量点到点误差,D2 PSNR 衡量点到平面误差,二者越大越好;CD 是点集间的 Chamfer 距离,越小越好,图中以米报告。论文将 PSNR 峰值固定为 59.70。下表摘自主文表 1,D1/D2 列是相对 JPEG2000 的 BD-BR 百分比,不是 PSNR:负值表示在相近质量下平均节省码率。
| 方法 | WOD D1 BD-BR | WOD D2 BD-BR | WOD 无损 Bpp | SemanticKITTI D1 BD-BR | SemanticKITTI D2 BD-BR | SemanticKITTI 无损 Bpp |
|---|---|---|---|---|---|---|
| JPEG2000 | 0.00% | 0.00% | 13.44 | 0.00% | 0.00% | 16.16 |
| G-PCC | −44.90% | −44.74% | 21.48 | −59.32% | −58.79% | 20.84 |
| RENO | −47.30% | −47.14% | 19.42 | −61.12% | −60.61% | 18.73 |
| RPCC | −39.79% | −39.78% | 不适用 | −47.65% | −47.75% | 不适用 |
| BitRIC | −61.73% | −61.52% | 6.05 | −69.92% | −70.82% | 8.43 |
主文报告无损相对 JPEG2000 的节省分别为 54.99% 和 47.83%;表内 Bpp 已经舍入,用这些数值重新相除会有小幅舍入差异。G-PCC、RENO 的输入是点云,其余方法使用距离图,因此“无损”的对象与表示成本并不完全相同,不能把这些 Bpp 直接理解为相同原始字节流的压缩率。
主文表 2 中,BitRIC 有损编码/解码分别为 0.071/0.087 s 每帧,无损为 0.144/0.175 s 每帧。测试机为 Xeon Platinum 8352V 与 RTX 4090;有损时间是所有测试率失真点的平均值。论文的超过 10 fps 指单独阶段吞吐,若同帧串行执行编码再解码,两阶段相加为 0.158 s,尚未计通信与投影时间,不宜直接宣称端到端低于 0.1 s。
在 WOD 的 CenterPoint 检测评估中,约 2 Bpp 时行人 Level 1 类别 AP 为 65.67,未压缩数据为 67.77,RPCC 为 58.95。BitRIC 与原始数据相差 2.10 个百分点,比 RPCC 高 6.72 个百分点。主文正文称该值为 mAP,但图 6 是行人类别 AP,不应误写成三类别总体 mAP。
消融实验¶
以下均为 WOD 结果,BD-BR 继续以 JPEG2000 为锚点。主文表 3 的参数量和 FLOPs 按单个位平面的计算配置报告,不是整帧遍历全部位平面的总开销。
| 上下文骨干配置 | D1 BD-BR | D2 BD-BR | 参数量 | FLOPs |
|---|---|---|---|---|
| 去掉距离嵌入 | −16.26% | −21.03% | 1.76M | 27.78G |
| 去掉位置嵌入 | −60.37% | −60.21% | 4.42M | 27.78G |
| 去掉水平折叠 | −61.43% | −61.33% | 5.93M | 144.55G |
| 去掉 U-Net 聚合 | −45.06% | −46.39% | 2.92M | 9.90G |
| 完整骨干 | −61.73% | −61.52% | 4.42M | 27.78G |
主文表 5 则检验同一位平面内部需要多少个概率估计阶段:
| PEM 阶段数 | D1 BD-BR | D2 BD-BR | 参数量 | FLOPs |
|---|---|---|---|---|
| 1 | −24.27% | −25.12% | 4.26M | 21.55G |
| 2 | −50.25% | −50.33% | 4.34M | 24.66G |
| 3 | −61.73% | −61.52% | 4.42M | 27.78G |
| 4 | −61.90% | −61.68% | 4.52M | 31.64G |
ORM 的证据来自图 7 的具体样本而非全验证集均值:在相同 2.528 Bpp 下,加入 ORM 后 D1 PSNR 从 68.96 增至 71.58 dB,CD 从 0.062 降至 0.042 m;在 0.916 Bpp 下,D1 从 55.19 增至 57.52 dB,CD 从 0.249 降至 0.145 m。这说明相同比特流末端的残差细化有用,但不能把单样本增益当成全数据集平均增益。
关键发现¶
- 距离嵌入是核心信息入口:移除后 D1 BD-BR 节省从 61.73% 缩至 16.26%,位置先验本身不能替代已恢复的距离上下文。
- 水平折叠主要解决计算成本:不折叠需要 144.55G,而完整配置为 27.78G,率失真基本保持。主文表 4 中 \(r=8\) 时 D1 BD-BR 退至 −54.83%,说明进一步压缩宽度并非没有代价。
- 三阶段不是随意选择:从 1 到 3 阶段提升明显,从 3 到 4 阶段 D1 只再改善 0.17 个百分点,却将 FLOPs 从 27.78G 增至 31.64G。
- WOD 训练模型零样本用于 SemanticKITTI 时,D1 BD-BR 为 −56.93%,而域内训练为 −69.92%。这支持一定跨数据集迁移能力,也保留了明显域差距;主文零样本段的域内数值漏写负号,此处按表 1 校正。
亮点与洞察¶
- 精确传输和近似恢复共享条件,但职责分开。 PEM 的概率错误会增加码长,却不直接改变正确解码的位值;ORM 的预测错误则影响失真。区分这两件事,才能理解同一模型为何能同时服务有损和无损模式。
- 并行性来自重新安排依赖,而不是抛弃依赖。 跨位平面的顺序保留精度层次,位平面内的三组顺序保留邻域信息,其余位置仍可并行。这个思路可用于其他整数传感器数据,但必须重新验证位分布与空间结构。
- 原生采样几何可以决定网络结构。 水平方向折叠有效,并非因为它是通用降采样技巧,而是因为旋转式雷达的横向采样远密于纵向。迁移到扫描模式不同的传感器时,不应直接复制同一折叠方向。
局限与展望¶
- 作者承认的低码率弱点。 在低于 1 Bpp 的极低码率区间,BitRIC 不如 G-PCC、RENO 等体素方法有竞争力;八叉树的空间划分适合减少点数,本文也需要额外输入下采样帮助进入这一范围。
- 作者承认的无损延迟。 0.175 s 每帧的无损解码没有达到 10 Hz,且数据来自桌面 RTX 4090,不等于车载嵌入式性能。模型量化与利用时间冗余是作者提出的后续方向,不是已经实现的功能。
- 本笔记的复现边界。 当前缓存只有主文,缺少补充材料中的网络细节与残差解码规范,也没有确认的代码链接;首层先验、宽度不可整除时的处理及跨分辨率位置嵌入适配均不能从主文充分还原。
- 本笔记的评估边界。 已展示的下游任务是 WOD 的 CenterPoint 检测,未证明跟踪、分割、极端天气或更高频扫描下同样有效;也没有完整的多回波、强度通道与辅助元数据联合码率分析。
- 值得检验的改进。 可研究保留细小目标的输入降采样、跨帧概率上下文和硬件友好的熵解码实现,但应同时报告码率、重建质量和整条链路延迟,不能只降低神经网络 FLOPs。
相关工作与启发¶
- 对比 JPEG2000、RPCC 与 RCPCC: 前者是通用图像编码器,后两者利用距离图的专门几何规则;BitRIC 则学习位平面的条件概率。本文优势是中高保真范围的码率与几何保留,并非在所有硬件上比传统编解码器更快。
- 对比 RIDDLE 与循环残差模型: 它们依赖逐像素或循环预测,BitRIC 把顺序组织在位平面和少量列组上。本文提供的是更适合并行的依赖结构,但没有在主结果表中给出与 RIDDLE 的直接数值对比。
- 对比 G-PCC 与 RENO: 它们从三维点云结构建模,低码率下有空间简化优势;BitRIC 更充分利用原生距离网格。选择表示应取决于数据从哪里产生以及应用需要保留多少几何精度。
- 对比 NERi 等隐式表示方法: 逐帧拟合并传输网络参数与本文直接推理概率图是不同的编码成本结构。若目标是连续雷达流,编码端是否需要每帧优化,往往和压缩率同样重要。
评分¶
- 新颖性: 4/5。位平面、熵模型和 U-Net 本身并不新,针对距离图组合三阶段概率估计与单步细化的设计较完整。
- 实验充分度: 4/5。覆盖双数据集、有损/无损、检测、计算量、模块消融与零样本迁移,但缺少嵌入式端到端验证。
- 写作质量: 4/5。主线和消融清楚,部分轴名、奇偶列措辞与指标命名需要谨慎辨认,关键实现依赖补充材料。
- 价值: 4/5。对中高保真激光雷达流压缩有实用潜力,极低码率与实时无损部署仍是明确边界。