Python:dcm批量转jpg用代码
时间: 2024-12-24 22:41:17 浏览: 75
在Python中,你可以使用`pydicom`库来读取DICOM文件,并将其转换为JPEG格式。以下是一个简单的示例,展示了如何批量处理这个过程:
```python
from pydicom import dcmread
import os
import matplotlib.pyplot as plt
# 定义源目录和目标目录
src_dir = 'path_to_your_dcm_folder'
dst_dir = 'path_to_output_jpg_folder'
if not os.path.exists(dst_dir):
os.makedirs(dst_dir)
# 遍历源目录中的所有DICOM文件
for filename in os.listdir(src_dir):
if filename.endswith(".dcm"):
# 读取DICOM文件
ds = dcmread(os.path.join(src_dir, filename))
# 将图像数据提取并转换为RGB格式
img = ds.pixel_array
# 可选地,应用窗口中心和宽度设置,如果有的话
window_center, window_width = ds.WindowCenter, ds.WindowWidth
if window_center and window_width:
img = apply_window(img, window_center, window_width)
# 转换为RGB并保存为JPEG
plt.imsave(os.path.join(dst_dir, filename[:-4] + ".jpg"), img, cmap='gray')
def apply_window(image, window_center, window_width):
min_value = window_center - (window_width / 2)
max_value = window_center + (window_width / 2)
return np.clip((image - min_value) * (255 / (max_value - min_value)), 0, 255).astype(np.uint8)
```
请注意替换 `src_dir` 和 `dst_dir` 为实际的源目录和目标目录路径。这个脚本会遍历每个.dcm文件,读取其中的图像数据,转换并保存为.jpg。
阅读全文
相关推荐

















