自动摘要: |时间|对应版本号|修订人|主要修订内容| ||||| |2021年12月15日|V1.0.0| ……..
时间 | 对应版本号 | 修订人 | 主要修订内容 |
---|---|---|---|
2021年12月15日 | V1.0.0 | 杨新 | 由测试部测试验收 |
2023年3月20日 | V1.1.0 | @Sindre Yang(sindre) | 添加测试具体细节 |
V1.0.0
特性:
- 完成初始版
缺陷:
- 对于公司提供的较深面积较大的嵌体修复后会有洞;
推测原因:用于训练的数据集数量较少,嵌体类型较为简单
- 细节信息恢复的不太好;
推测原因:数据量少,提取不到局部特征
- 针对下述BUG出现原因是集成版本与python版本的测试结果不一致
推测原因:集成版本与python版本的测试结果不一致@邹童玺(xixidd)
- BUG#7634噪声问题
- 推测原因:集成成版本重建产生噪声@邹童玺(xixidd)
规划:
嵌体v1.1版需要解决的问题
1.增强细节信息的恢复
2.可以补全较深的嵌体
数据需求
@吴晓燕
三颗牙在同一平面,缺失牙在中间;
目前只需要待修复牙位为36号牙和46号牙;
左右邻牙牙花完整,不要牙龈;
数据需求数量:500套左右
改进方向
根据自测产生的问题,可能会增加一个鉴别器来学习局部细节信息(待确定)@张新霞(zhangxinxia);
对C++
集成中产生的噪声进行改进@邹童玺(xixidd);
按照@陈冬灵(u21610379)陈总的建议增加一个挡片来解决嵌体过深的问题@邹童玺(xixidd);
增加toothmarker
中三角化的功能@邹童玺(xixidd);
待定改进:如果可以测试生成的嵌体是否会穿透到对颌牙齿,可以提出另一个改进方案(加入直方图损失)@张新霞(zhangxinxia)
改进方案
1.最好能用公司提供的真实数据参与训练,增加嵌体形态的多样性
2.做数据增强,增加数据量
3.尝试提取局部特征,把待修复牙位单独抽出来提取特征
4.改进集成版本的效果
V1.1.0
特性:
- 支持一面,二面,三面类型嵌体
- 只支持三颗为一组的待修复体,只能修复36,46号牙
- 嵌体深度很深的,能修复,但效果不太好–>数据多样性,数量不足
已知问题:
- 问题1
- 对嵌体深度较浅、待修复嵌体范围较小的模型修复效果比较好(对简单的嵌体效果好),但对于复杂的嵌体形状效果不好;
- 推测原因:可能是训练集数据比较单一,训练的都是简单的嵌体,对于复杂的嵌体模型并没有接触过
- 改进方案:增加数据集,需要加入一些形状比较复杂的嵌体数据
- 问题2
- 对于公司的数据,细节信息恢复的不好
- 推测原因:公司的数据牙花特征比较浅,特征不太明显
- 改进方案:一方面增加公司提供的数据进行训练,另一方面增加一个判别器来提取局部的细节信息(待探究)
- 问题3
- 用
C++
编译的版本与python版本有较大的差异,产生噪声 - 推测原因:
C++
编译过程中的问题@邹童玺(xixidd) - 改进方案:在
V2
版中@邹童玺(xixidd)改进
- 用
- 问题4
toothmarker
中三角化存在问题,对于下面较稀疏的点云,不能生成面片,看起来像噪声- 推测原因:点云中离散点比较多,离散点对周围的重建有影响
- 解决方案:增加滤波对点云处理@陈珏
方式:
网格(.ply)–>深度图(.png)–>深度图(.png)–>网格(.ply)(meshlab渲染)
数据:
- 测试牙位号:
- 36号和46号牙位
- 三颗牙在同一平面
- 待修复嵌体在中间,左右邻牙牙花完整
- 不要牙龈
- 全部类型:
- 一面
- 二面
- 三面
- 四面
- 高嵌体
- 牙齿深度:
- 不超过7mm
- 嵌体深度
- 不超过6mm
效果:
问题(禅道链接):
- 7659,7658,7655
- 重建问题
- 7657
- 南航数据在四面体上输入与输出有绝对误差,希望产品部提供这种数据
分析:
- 以现有的数据及当前的深度学习模型—>优化余地不多。
- 公司数据制作中,如没接近南航数据的质量及数量–>本质难以改变
- 其他深度学习方案及优化方案探索中–>人力资源短缺
- 现有数据与DL模型存在问题基本解决–>无新问题产生
- 建议以现有条件建立里程碑,集成版V1.1作为基础,不再进行小规模优化,待数据或方案发生质的改变,在开发V1.2版。
尝试过的方法:
- 数据方面
- 图像方面
- 通过图像处理方法识别待修复轮廓,进行抠图做大范围数据增强
- 效果有,但没有本质改变
- 通过检测中间牙位,并扣取做复制增强
- 失败
- 通过填充图像信息
- 失败
- 通过图像处理方法识别待修复轮廓,进行抠图做大范围数据增强
- 图形方面
- 增加挡片,防止深度过深
- 有效果,但不太理想
- 增加挡片,防止深度过深
- 图像方面
- 模型方面
- 训练方式
- 增加待修复牙训练次数
- 有效果,并集成
- 增加待修复牙训练次数
- 模型选择
- 尝试了现阶段优秀的GAN
- 失败,效果有,但不及当前效果
- 尝试了现阶段优秀的GAN
- 训练方式
- 其他方面
- 点云到网格的重建
- 噪声点优化
反馈:
- 嵌体生成的光泽不太好看,没CAD里面的好看(个人认为是渲染问题)
- 嵌体生成牙花纹路感觉不太真实
- 嵌体生成形态上与真实新形态有微小误差
- 主观上愿意使用,原因为:能节约大量时间
后续规划:
1、存档目前AI嵌体处理的成果。2、@邹童玺 上传、封装相关的库。通知一下@陈冬灵(u21610379),需要做测试处理。3、排优先级,处理以下工作(1)以正畸为背景,优化分牙,即限定扫描件模型数量在一个范围(2)以修复为背景,优化分牙,即不限定扫描件模型数量(3)智能排牙(4)全冠智能生成,限定磨牙(5)以修复为背景,限定嵴线,限定冠,查找颈缘线
(6)提取待修复牙位的位置及牙位号–暂定为分牙分支
(7)现在嵌体的处理方式:给定模板,将嵌体进行变形,深度学习可否探索学习这种变形的方式?–来自几何算法组
(8)@毛礼荣 建议将公司的C++库进行封装,方便使用Python进行调用,@陈冬灵(u21610379) 也已经在思考,并且打算先进行Linux平台的移值
(9)全冠 @叶子扬 在进行3D重建的尝试(10)分牙,用于正畸,牙齿一般是12~14颗,最多可能有16颗牙,能否在不指定牙齿数量的情况下进行分牙, –>能否找出特征线、牙弓线、颈缘线(很有用) –>明年(@毛礼荣,进行正畸的后续处理),深度学习也可以在过程中参与分牙与排牙的工作 –>@张萍萍 使用VTK自动提取牙位、迭代、半口,可否对不同的牙齿数目进行混合分类,还是需要前期进行确定
4. 建立里程碑,集成版V1.1作为基础,@邹童玺 上传、封装相关的库,由@陈冬灵(u21610379)测试
5. 现在嵌体的处理方式:给定模板,将嵌体进行变形,深度学习可否探索学习这种变形的方式?–来自几何算法组