gpt4 book ai didi

python - 将 DICOM 图像保存为无损 JPEG

转载 作者:太空宇宙 更新时间:2023-11-03 21:44:00 26 4
gpt4 key购买 nike

我的原始图像是 DICOM 格式,我想将其保存为无损 jpg 格式(或者至少保留尽可能多的信息!!!)。我怎样才能在Python中做到这一点?目前,我正在使用以下代码来生成有损 png 图像。我将其称为有损 png,因为当我通过 dicom 浏览器查看 dicom 图像时,png 图像看起来与 dicom 图像不同。另外,如何修改此图像以获得 jpg 图像而不是 png 图像。

import numpy as np
import png
import pydicom
ds = pydicom.dcmread("./MyImage.dcm")
shape = ds.pixel_array.shape
# Convert to float to avoid overflow or underflow losses.
image_2d = ds.pixel_array.astype(float)
# Rescaling grey scale between 0-255
image_2d_scaled = (np.maximum(image_2d,0) / image_2d.max()) * 256
# Convert to uint
image_2d_scaled = np.uint8(image_2d_scaled)
# Write the PNG file
with open("out.png", 'wb') as png_file:
w = png.Writer(shape[1], shape[0], greyscale=True)
w.write(png_file, image_2d_scaled)

最佳答案

丢失信息的问题取决于像素深度,而不是图像压缩。您的 DICOM 图像可能每像素大约有 11 位(从 -1024 到 1023),甚至可能更多。您可以将其转换为 8 位图像,而无需设置强度窗口。

这意味着值 -1024 的原始像素变成黑色,+1023 的像素变成白色,但图像最重要的部分,从 -100 到 +300 左右变成平均灰色。如果您对肺部感兴趣,则重要值较低,如果您想查看骨骼,则重要值较高,等等。最重要的是,您无法在单个 png/jpg/bmp 图像上看到 DICOM 图像的所有部分。您需要一个特殊的查看器,它可以设置灰度级。最常见的非医疗格式是 TIFF,它可以处理全像素深度,但您仍然需要一个特殊的查看器。

关于python - 将 DICOM 图像保存为无损 JPEG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52633803/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com