大家好,欢迎来到IT知识分享网。
M3D 项目使用与启动指南
项目地址:https://gitcode.com/gh_mirrors/m3/M3D
1. 项目介绍
M3D 是一个开源项目,致力于推进 3D 医学图像分析的多模态大规模语言模型。该项目包括以下几个部分:
- M3D-Data:最大的开源 3D 医学数据集,包含 120K 图像-文本对和 662K 指令-响应对。
- M3D-LaMed:具有 M3D-CLIP 预训练视觉编码器的多模态模型,能够执行图像-文本检索、报告生成、视觉问答、定位和分割等任务。
- M3D-Bench:最全面的自动评估基准,涵盖 8 项任务。
2. 项目快速启动
以下是基于 Hugging Face 的模型快速启动步骤:
首先,安装必要的依赖:
pip install -r requirements.txt
然后,准备您的 3D 医学图像:
- 图像的形状需要处理为 1x32x256x256,可能需要调整大小和其他方法。
- 图像需要归一化到 0-1 范围,考虑使用 Min-Max 归一化。
- 图像格式需要转换为 npy。
- 虽然模型未在 2D 图像上训练,但理论上可以将 2D 图像插值到 1x32x256x256 形状作为输入。
接着,加载模型并生成结果:
import numpy as np import torch from transformers import AutoTokenizer, AutoModelForCausalLM import simple_slice_viewer as ssv import SimpleITK as sitk # 设定设备和类型 device = torch.device('cuda') # 'cpu' 或 'cuda' dtype = torch.bfloat16 # 或 float16, float32 # 模型路径 model_name_or_path = 'GoodBaiBai88/M3D-LaMed-Phi-3-4B' # 准备问题 question = "What is liver in this image? Please output the segmentation mask." # 图像路径 image_path = "/Data/data/examples/example_03.npy" # 加载模型和分词器 model = AutoModelForCausalLM.from_pretrained(model_name_or_path, torch_dtype=dtype, device_map='auto', trust_remote_code=True) tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, model_max_length=512, padding_side="right", use_fast=False, trust_remote_code=True) model = model.to(device=device) # 加载和处理图像 image_np = np.load(image_path) image_pt = torch.from_numpy(image_np).unsqueeze(0).to(dtype=dtype, device=device) # 生成指令和图像标记 image_tokens = "<im_patch>" * 256 input_txt = image_tokens + question input_id = tokenizer(input_txt, return_tensors="pt")['input_ids'].to(device=device) # 生成分割掩码 seg_logit = model.generate(image_pt, input_id, seg_enable=True, max_new_tokens=256, do_sample=True, top_p=0.9, temperature=1.0) seg_mask = (torch.sigmoid(seg_logit) > 0.5) * 1.0 # 显示图像和分割结果 image = sitk.GetImageFromArray(image_np) ssv.display(image) seg = sitk.GetImageFromArray(seg_mask.cpu().numpy()[0]) ssv.display(seg)
3. 应用案例和最佳实践
(此部分将介绍一些实际的应用案例和项目的最佳实践,具体内容需根据项目实际应用情况进行编写。)
4. 典型生态项目
(此部分将介绍与 M3D 相关的典型生态项目,具体内容需根据项目生态情况进行编写。)
M3D M3D: Advancing 3D Medical Image Analysis with Multi-Modal Large Language Models 项目地址: https://gitcode.com/gh_mirrors/m3/M3D
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/116719.html