如何将.dcm
(dicom)图片转换为.bmp
格式。
我试过这个,但它不适合我。
000000.dcm
是医学肺部图像(大小6 MB)
dcmimg = dicomread('000000.dcm');
>> imshow(dcmimg);
在dcmimg
imwrite(dcmimg, 'myfile.bmp');
获取错误:
Error using writebmp (line 15)
Expected X to be one of these types:
logical, uint8, single, double
Instead its type was uint16.
Error in imwrite (line 477)
feval(fmt_s.write, data, map, filename, paramPairs{:});
我不理解这些错误,出了什么问题。帮助我,谢谢你。
答案 0 :(得分:1)
Dicom使用无符号16位整数。写入.bmp文件的函数需要不同的数据类型,如错误消息所述。这表明以下内容应该有效:
imwrite(double(dcmimg), 'myFile.bmp');
通过将数据类型显式转换为double
,您应该摆脱错误。实际上single
可能就够了......它也可以代表16位整数而不会损失精度。