修改大量 DICOM (.dcm) 文件。
Modifying a large number of DICOM (.dcm) files.
也许是一个简单的问题,但我没有取得进展,希望得到帮助。
我有一个大小为 422 的列表。在索引 0 中有 135 个指向 .dcm 图像的文件路径。例如'~/images/0001.dcm','~/images/0135.dcm' 在index 1中有112个图片路径,index 2有110个,依此类推
所有图片的尺寸均为 512 x 512。我希望将它们的尺寸调整为 64 x 64。
这是我第一次同时处理图像和 .dcm 数据,所以我不确定如何调整大小。如果您愿意,我也不确定如何访问和修改 'inner' 列表中的文件。
这样的事情离题了吗?
IMG_PX_SIZE = 64
result = []
for i in test_list:
result_inner_list = []
for image in i:
# resize all images at index position i and store in list
new_img = cv2.resize(np.array(image.pixel_array (IMG_PX_SIZE,IMG_PX_SIZE))
result_inner_list.append(new_img)
# Once all images at index point i are modified, append them these to a master list.
result.append(result_inner_list)
您似乎正在为两个问题而苦苦挣扎:
- 正在访问文件路径
- 调整大小
为了你赢,最好把这两个任务分开,下面是示例代码
IMG_PX_SIZE = 64
def resize(image):
# your resize code here similar to:
# return v2.resize(np.array(image.pixel_array(IMG_PX_SIZE,IMG_PX_SIZE))
pass
def read(path):
# your file read operation here
pass
big_list = [['~/images/0001.dcm','~/images/0135.dcm'],
['~/images/0002.dcm','~/images/0136.dcm']]
resized_images = [[resize(read(path)) for path in paths] for paths in big_list]
也许是一个简单的问题,但我没有取得进展,希望得到帮助。
我有一个大小为 422 的列表。在索引 0 中有 135 个指向 .dcm 图像的文件路径。例如'~/images/0001.dcm','~/images/0135.dcm' 在index 1中有112个图片路径,index 2有110个,依此类推
所有图片的尺寸均为 512 x 512。我希望将它们的尺寸调整为 64 x 64。
这是我第一次同时处理图像和 .dcm 数据,所以我不确定如何调整大小。如果您愿意,我也不确定如何访问和修改 'inner' 列表中的文件。
这样的事情离题了吗?
IMG_PX_SIZE = 64
result = []
for i in test_list:
result_inner_list = []
for image in i:
# resize all images at index position i and store in list
new_img = cv2.resize(np.array(image.pixel_array (IMG_PX_SIZE,IMG_PX_SIZE))
result_inner_list.append(new_img)
# Once all images at index point i are modified, append them these to a master list.
result.append(result_inner_list)
您似乎正在为两个问题而苦苦挣扎:
- 正在访问文件路径
- 调整大小
为了你赢,最好把这两个任务分开,下面是示例代码
IMG_PX_SIZE = 64
def resize(image):
# your resize code here similar to:
# return v2.resize(np.array(image.pixel_array(IMG_PX_SIZE,IMG_PX_SIZE))
pass
def read(path):
# your file read operation here
pass
big_list = [['~/images/0001.dcm','~/images/0135.dcm'],
['~/images/0002.dcm','~/images/0136.dcm']]
resized_images = [[resize(read(path)) for path in paths] for paths in big_list]