Medsearch:矢量驱动的X射线图像相似性搜索
概述
MedSearch探索了向量相似性搜索技术在医疗图像检索中的应用。核心重点是开发概念验证系统,该系统使用户能够使用上传的查询图像在数据集中找到类似的X射线图像。
用例
- 放射学(概念验证):为放射科医生提供一种工具,可以快速参考视觉上相似的X射线图像,从而有助于诊断或识别微妙的模式。
- 研究(探索):允许研究人员根据视觉相似性研究X射线图像之间的潜在关系。
- 教育(演示):在医学环境中可以理解图像表示和相似性搜索的学习帮助。
技术堆栈
后端:
- Python
- 烧瓶(网络框架)
- MILVUS(向量相似性搜索数据库)
- TensorFlow(Resnet-50型号)
前端:
- HTML,CSS
- JavaScript(用于API交互的Fetch API或AJAX)
数据库:
数据集
- CHESTX-RAY14:公开可用的X射线数据集,适用于初始原型。
系统体系结构
深度学习模型:
- RESNET-50(在Imagenet上进行了预训练):该模型提取了代表X射线图像的视觉内容的有意义的特征向量。我们利用预先训练的模型来提高效率,并避免对该原型进行广泛的培训。
向量相似性搜索数据库:
- MILVUS:在高维矢量数据上进行快速有效的相似性搜索进行了优化。
工作流程
图像预处理:调整传入的X射线并标准化以保持一致性。
特征提取:预训练的Resnet-50模型(没有最终分类层)将每个X射线图像转换为高维特征向量。
向量存储:Milvus存储提取的特征向量,从而实现快速相似性比较。
查询图像:用户上传查询X射线图像。
搜索:
- 查询图像的特征向量是生成的。
- MILVUS执行矢量相似性搜索,从而在数据集中找到最相似的图像。
结果:后端返回发现最相似X射线图像的图像和ID。
前端(原型最小)
基本的Web界面允许用户上传图像并显示X射线图像及其ID。
结果
MedSearch成功地展示了媒介相似性搜索医学图像检索的核心原理。用户可以上传查询映像,并查看从数据集检索到的视觉上相似的X射线图像。
未来的增强
- 模型微调:通过微调X射线数据集上的Resnet-50模型来改善X射线域的相似性结果。
- 元数据搜索:将元数据(例如,诊断)与矢量搜索进行更集中的检索。
- 可伸缩性:研究数据库优化和分布式体系结构以容纳较大的数据集。