用户故事

IDNEO开发了用于解释血型结果的嵌入式计算机视觉和机器学习算法

挑战

自动化医院工作人员用于确定患者血液抗原性分型的卡片的视觉解释

解决方案

使用MATLAB开发、测试和生成嵌入式代码,用于图像分析和机器学习算法

后果

  • 精度要求超过
  • 项目完成时间减半
  • 优化系统交付

“通过使用Embedded Coder生成代码节省的时间,我们能够试验新的功能,并在MATLAB中完成额外的迭代,结合客户对早期原型的反馈。”

马克•漂白IDNEO

的Grifols MDmulticard。


了解医疗创伤患者的血液抗原分型通常是医生提供有效治疗的关键。Grifols MDmulticard可以在五分钟内从一滴血中确定血液抗原分型。该卡采用基于免疫层析条带的横向流动技术,显示清晰的红色条带,指示是否存在关键抗原。

为了帮助临床医生解释MDmulticard结果,Grifols聘请IDNEO开发了一种自动读卡器。在MATLAB中开发的读卡器软件®并在Android target硬件上实现,包括图像处理、计算机视觉和机器学习算法,这些算法可以将卡上带的模式和形状转换为血液抗原分型结果。

IDNEO的研发硬件主管Marc Blanch说:“MATLAB使我们能够快速分析图像,并通过多次迭代改进算法。”“在我们开发了算法后,MATLAB使其易于部署到嵌入式系统。用C语言或其他语言做这件事会困难得多,尤其是在短时间内。”

挑战

MDmulticard上的红色条带有时会因湿度、温度、患者的输血史、用于稀释血样的手动过程或其他因素而变形或褪色。因此,IDNEO团队需要开发能够处理条带模式和形状重大变化的算法。该团队只有在项目开始时获得有限数量的卡片。他们需要一个支持快速迭代的工作流程,以便在收到更多具有不同波段模式和形状的卡片时,能够轻松改进算法。金宝app

Grifols和IDNEO希望尽快交付原型,以便临床工作人员在算法部署到生产硬件之前提供软件反馈。由于团队的工作时间很短,他们希望采用敏捷开发方法,使他们能够结合客户的输入,并对变化的需求快速做出反应。

解决方案

IDNEO工程师在MATLAB中开发了图像处理、计算机视觉和机器学习算法,然后生成代码,用于使用嵌入式编码器实现MDmulticard阅读器®.

核心图像分析算法,由MATLAB和image Processing Toolbox™开发,执行颜色均衡和白平衡,将图像转换到CIELUV颜色空间,计算颜色差异,然后在图像中指示波段模式的卡片上定位基准标记。IDNEO团队将波段分析添加到核心算法中,创建图像的二进制版本,然后应用形态学操作获得卡上每个波段的骨架图像。

接下来,他们用从骨骼图像中提取的特征来训练线性回归分类器。该分类器可检测出实带(分类为阳性)、无带(分类为阴性)和混合带(分类为可疑),这可能发生在患者以前输血时。

在对Grifols提供的图像进行算法测试后,工程师使用MATLAB App Designer设计了一个用户界面。他们使用MATLAB Compiler™生成了一个独立的MATLAB应用程序,Grifols工程师和选定的医院工作人员可以在不安装MATLAB的情况下使用。

IDNEO团队使用嵌入式编码器从核心图像分析算法生成生产C代码。他们通过比较C代码生成的结果与原始MATLAB算法生成的结果来测试C代码,并使用MATLAB Profiler测量代码覆盖率。

该团队将生成的代码集成到一个Android应用程序中,该应用程序为Grifols MDmulticard阅读器提供触摸屏界面。

为了满足客户紧凑的时间表,IDNEO团队在整个开发过程中使用了Scrum流程框架和持续集成。MATLAB支持这一工作流程,Jenkins jobs在一个卡片图像数据库中测试嵌入式编码器生成的代码。金宝app

一个经过充分验证的预生产原型读卡器正在西班牙多家医院进行可用性测试。同时,IDNEO工程师使用统计和机器学习工具箱中的分类学习器应用程序,继续提高算法的准确性™ 评估支持向量机和其他机器学习模型。金宝app

后果

  • 超出了精度要求。Blanch说:“我们的客户设定了一个要求,即在识别阳性和阴性波段时,准确率要高于90%。”。“我们在MATLAB中开发的算法在样本数据集中产生零误报或漏报,因此我们超出了这一要求。”
  • 项目完成时间减半。布兰奇说:“MATLAB和嵌入式编码器使我们能够将完成项目所需的时间从24个月减少到12个月,而不需要为团队增加更多的工程师。”“这种方法使团队成员能够专注于他们的特定角色,使我们更有效率,同时减少了软件缺陷的数量。”
  • 优化系统交付.布兰奇说:“使用嵌入式编码器为设备生成C代码,使我们能够完全专注于开发和优化算法。”。“因此,我们能够在现有的时间内提供更高质量的系统。”