背景: DeepCW (e04/deepcw-engine) 是基于 CTC 的神经网络 CW 解码模型。本地实测 弱信号解码率显著优于传统 DSP 方案: SNR<0dB 时 CER 16.0% vs ggmorse 52.6%; SNR>=0dB 时两者均接近 0%。模型 400-1200Hz 固定频窗自带定频, 无需频谱峰值 跟踪与噪声门。 改动: - assets/deepcw/model.onnx 15,139,839 字节, 原样收录未作修改 - assets/deepcw/model.onnx.json 模型元数据 (采样率 3200, FFT 256, hop 48, 65 个频段, log1p 归一化, 42 类含 CTC blank) - licenses/DeepCW-AGPL-3.0.txt AGPL-3.0 许可证全文 - licenses/NOTICE.md 来源仓库/作者/取用 commit/SHA-256/ 许可证兼容性说明/复现步骤 - app/build.gradle.kts: androidResources.noCompress += "onnx" 关于 noCompress: ONNX Runtime 通过 mmap 直接读取 assets, 压缩后无法内存映射, createSession 会失败。该配置只在打包 APK 的 app 模块生效, 在 feature 库模块声明无效。 许可证: Look4Sat 为 GPL-3.0-or-later, DeepCW 模型为 AGPL-3.0-only。GPL v3 第 13 条 明确允许两者合并分发。推理完全在本地设备进行, 不通过网络向远程用户提供 模型功能, 故 AGPL 第 13 条的网络源码提供义务不被触发。本仓库公开, 完整 对应源码提供义务已满足。 上游取用 commit: 8e264d243bbd4467bd19f3f28292219405b47e0e 模型 SHA-256: ef120799457bca042d4690944f0faf93268eb4654e7f50f28784ad63bdc1fe02
2.8 KiB
Third-Party Notices — CW Decode Module
DeepCW neural CW decoding model
The CW (Morse code) decoder in this module performs inference with a neural network model obtained from the DeepCW project.
| Component | src/main/assets/deepcw/model.onnx and model.onnx.json |
| Upstream project | DeepCW / deepcw-engine |
| Source repository | https://github.com/e04/deepcw-engine |
| Author / copyright | e04 |
| License | GNU Affero General Public License v3.0 only (AGPL-3.0-only) |
| License text | DeepCW-AGPL-3.0.txt |
| Obtained at commit | 8e264d243bbd4467bd19f3f28292219405b47e0e |
| File size | 15,139,839 bytes |
| SHA-256 | ef120799457bca042d4690944f0faf93268eb4654e7f50f28784ad63bdc1fe02 |
| Modifications | None. The model and its metadata are vendored verbatim. |
Related upstream repositories by the same author (not vendored here):
- https://github.com/e04/web-deep-cw-decoder — reference web application
- https://github.com/e04/HamNoise — neural noise reduction (not used)
License compatibility
Look4Sat is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later). The DeepCW model is licensed under AGPL-3.0-only.
Section 13 of the GPL version 3 expressly permits combining GPL-3.0 covered work with AGPL-3.0 covered work; the resulting combination may be conveyed, with the AGPL's additional network-interaction requirement applying to the AGPL-covered portion. Accordingly:
- The Look4Sat source code remains under GPL-3.0-or-later.
- The DeepCW model remains under AGPL-3.0-only.
- Distributions of the combined application are accompanied by complete corresponding source, satisfying both licenses.
AGPL section 13 (network interaction)
Inference runs entirely on the local device via ONNX Runtime. The application does not offer the model's functionality to users interacting with it remotely over a network, so the additional network-source-offer requirement of AGPL-3.0 section 13 is not triggered by this usage. The complete corresponding source for both the application and the vendored model remains publicly available at the repository hosting this file.
Reproducing the vendored files
SHA=8e264d243bbd4467bd19f3f28292219405b47e0e
curl -sLO https://raw.githubusercontent.com/e04/deepcw-engine/$SHA/model.onnx
curl -sLO https://raw.githubusercontent.com/e04/deepcw-engine/$SHA/model.onnx.json
curl -sL -o DeepCW-AGPL-3.0.txt \
https://raw.githubusercontent.com/e04/deepcw-engine/$SHA/LICENSE
sha256sum model.onnx
# expected: ef120799457bca042d4690944f0faf93268eb4654e7f50f28784ad63bdc1fe02
ONNX Runtime
Inference engine: com.microsoft.onnxruntime:onnxruntime-android, licensed
under the MIT License. Consumed as a published Maven artifact; not vendored in
this repository.