|
@@ -194,3 +194,16 @@
|
|
|
- ✅**完整端到端验证通过(17:25 一轮真机采集)**:4舱(2/4/6/8)拍照(一轮~15s)→ Kafka → data-transmission → **下划线库 aivfo_tl picture 分表入库 139 张** → **逐孔 embryo_id 与 embryo 表核对 20/20 全一致、0 不一致、无报错**。样例:仓2孔1-5→embryo17-21、仓4→33-37、仓6→49-53、仓8→65-69(带培养记录维度核对)。拍→入库延迟约9-15s。**图入对的库(前端读图的业务库)+ 正确关联病例,闭环达成。**
|
|
- ✅**完整端到端验证通过(17:25 一轮真机采集)**:4舱(2/4/6/8)拍照(一轮~15s)→ Kafka → data-transmission → **下划线库 aivfo_tl picture 分表入库 139 张** → **逐孔 embryo_id 与 embryo 表核对 20/20 全一致、0 不一致、无报错**。样例:仓2孔1-5→embryo17-21、仓4→33-37、仓6→49-53、仓8→65-69(带培养记录维度核对)。拍→入库延迟约9-15s。**图入对的库(前端读图的业务库)+ 正确关联病例,闭环达成。**
|
|
|
- 用户现场:未接气体源,补气[0->0]补不进=正常(新引擎"无气源提前退出"已处理,不影响采集)。
|
|
- 用户现场:未接气体源,补气[0->0]补不进=正常(新引擎"无气源提前退出"已处理,不影响采集)。
|
|
|
- **部署补充(重要)**:operate 部署/换环境时,**`operate\control\` 子目录的引擎必须同步最新编译**(编 control sln 后复制整目录),否则 operate 拉旧引擎。应纳入部署清单。
|
|
- **部署补充(重要)**:operate 部署/换环境时,**`operate\control\` 子目录的引擎必须同步最新编译**(编 control sln 后复制整目录),否则 operate 拉旧引擎。应纳入部署清单。
|
|
|
|
|
+
|
|
|
|
|
+#### [Phase5·部署] ★data-transmission 迁到 108 修抠图 + 视频合成逻辑厘清 + 原图链路分析 — 2026-06-26 晚
|
|
|
|
|
+- **现象**:用户反馈培养记录看不到照片、视频不能播、原图也看不到。
|
|
|
|
|
+- **抠图失败根因**:抠图(`PictureManage.cutCCD`)和视频合成读图都用 `client.getFileReallyPath()`(**读 FastDFS 本地磁盘路径** `/opt/fastdfs/storage/...`),但 data-transmission 跑在 **Windows**,读不到 108 Linux 的磁盘 → `FileNotFoundException` → 抠图失败 → `crop_state=0` → 前端查 `crop_state=SUCCEED` 的图查不到、视频合成无源图。
|
|
|
|
|
+- **解法(不改业务代码)**:把 data-transmission **迁到 108**(回归设计形态——生产/医院 profile 本就配 Linux 路径、用户确认改造前本就在 Linux 跑;与 FastDFS 同机即可读本地磁盘)。
|
|
|
|
|
+- **迁移步骤(全自动)**:① SSH 免密(本机无 sshpass,用仓库里的 trilead-ssh2 jar 写 Java 推公钥)② scp 传 jar(184MB)+ `lib.zip`(Linux 原生库)③ 解压 `libjavaImg.so`+opencv3.4.16 全套 `.so`,跑 install.sh 注册 ldconfig ④ **yum 装 GTK3/cairo/gdk-pixbuf2/libtiff/gstreamer1**(opencv highgui 依赖,缺则 UnsatisfiedLinkError libgtk-3)⑤ 写 108 配置 `/home/soft/aivfo/aivfo-data-transmission/application-local.properties`(关键:`storagePath=/opt/fastdfs/storage`=108 FastDFS 真实路径、`jna.lib-path=/home/soft/aivfo/lib`、连 127.0.0.1 的 mysql/kafka/nacos)⑥ 停 Windows 端 ⑦ 108 启动(`setsid java -Xmx256m -Djna.library.path=/home/soft/aivfo/lib -jar ... </dev/null >run.log 2>&1 &`,note:nohup 不彻底 detach 会让 SSH 挂起,用 setsid+</dev/null)。
|
|
|
|
|
+- **验证**:① 用户给的 8 号舱样片实测抠图 `success=1, radius=616, 760ms`、输出 119KB(原生库能干活)② 108 自动抠图实证:**20:29 起各舱 700+ 张 `crop_state=1`,新图入库后 1 秒抠成功**(real-time)。
|
|
|
|
|
+- **结果**:
|
|
|
|
|
+ - ✅ **抠图迁 108 后恢复正常**(健康运行、Nacos 注册、`/actuator/health` UP)。
|
|
|
|
|
+ - ⏳ **视频合成**:逻辑正常,**非 bug**——日志「图片张数不足,视频需要 8 帧,只有 6 张图片,没有视频合成」。因抠图才从 20:29 成功、每胚胎每层才攒 6 个采集周期的图,差 2 帧。**再拍 2 轮(约 30 分钟)自动合成**。video 表 64 条 url 全空、video_splice 待合成队列消费中(48→26)。
|
|
|
|
|
+ - **原图查看**:`getSourcePictures` 代码改造前后**一字未改**(用 `sourceImageUrl`、`crop_state` 过滤已注释);`FastDFSClient` 也无改动;FastDFS 协议下载(`downloadFile`)实测通(621KB)。**原图链路本身没问题**。若前端仍看不到原图 = **前端(网页端,WebView2)拼下载地址的 IP/调用问题**(独立小问题,源码不在本仓库,待定位)。operate 详情页新老都只用 `imageUrl`(抠图),非原图入口。
|
|
|
|
|
+- ★**部署形态变更(运维须知)**:**data-transmission 现在跑在 108**(`/home/soft/aivfo/aivfo-data-transmission/`),不再在 Windows 跑。`start-all.sh` 已移除它。重启后 data-transmission 需在 108 单独起(命令见上)。Windows 端起 data-transmission 会与 108 抢 Kafka 消费组,**勿双开**。
|
|
|
|
|
+- **待明天**:接气源拍 2+ 轮 → 验证视频自动合成 + 前端能看图/视频;若原图仍看不到,定位网页前端的图片地址配置。
|