2022.03.20-高宝琪毕设阶段性汇报

第9次汇报 (2022.03.20)

基本跑通了印度学者ECG数字化的代码, 但发现其只给出了提取波形的代码, 并未给出得出网格大小的代码, 这导致整个心电数字化的算法不完整; 论文中也是将此处一笔带过. 所以这篇论文也很大程度失去了参考价值
但很幸运地发现了另一个ECG数字化的开源项目, 来自一些美国学者, 他们做的就要完善和复杂很多, 我试了一下他们的程序, 感觉效果不错, 所以打算以此为参考进行学习

基本流程

1. 预处理
  • 旋转校正 (调用扫描全能王的智能裁剪接口?)
  • 导联切割 (用户手动划分导联?)
2. 信号提取和网格提取
  • 对每一个导联
    • 信号检测
      • 灰度化: 彩图 —> 灰度图
      • 二值化: 将灰度图二值化
        • 计算灰度图的otsu阈值
        • 将otsu阈值不断减小, 直到用该阈值二值化的图像检测不到网格 或 阈值减小到原阈值的60%
        • 用得到的阈值去做二值化
    • 信号提取
      • 维特比算法 (一种动态规划算法)
        • 对于每一列, 都有一些连续True像素的区域, 我们将每个区域的中心都标记为该列的节点
        • 第一列的每个节点代价为0
        • 第二列的每个节点, 都计算自己连接上一列的每个节点, 各要付出多少代价, 保留最小值和所连接的上一列节点的像素值
        • 之后的列重复这一过程, 直到最后一列
        • 找出最后一列代价最小的节点, 回溯得出路径, 即为波形路径
        • [ 注 ] 代价函数为同时考虑节点距离和角度变化的一个函数
    • 网格检测
      • 灰度化: 彩图 —> 灰度图
      • 二值化: 将灰度图用230二值化
    • 网格提取
      • 计算每一列黑色素的个数
      • 得到基频, 即一个格子是多少像素 (调用SciPy库里的函数)
3. 后处理
  • 信号归零
  • 信号缩放 (一个格子边长为1mm, 25mm/s, 10mV/mm; 所以一个格子为0.04s 或 10mV)
  • 0填充

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值