Как настроить окно просмотра файла .mhd, чтобы лучше рассмотреть медицинские изображения? - PullRequest
1 голос
/ 27 апреля 2019

Я загружаю некоторые файлы .mdh и .raw для медицинских изображений, но меня беспокоит одна вещь.Я понимаю, что в файле .dicom вы можете преобразовать интенсивность пикселей в HU, используя rescale.slope и rescale.intercept, который не может быть включен в файл .mhd.Поэтому мне интересно, как я могу получить лучшее представление о моих данных изображения из файлов .mdh и .raw. Это генерируемое изображение , это тип image чего я хочу достичь.
Здесь я загружаю срез из данных и строю гистограмму значений каждого «пикселя» (не уверен, называть ли их пикселем или вокселем).
Хотя у меня есть идея просто сбросить пиксель с наименьшим значением, я действительно хочу услышать от опытных пиров, есть ли более изощренный способ достигнуть этого.

itk_img = SimpleITK.ReadImage(mhd_file) 
img_array = SimpleITK.GetArrayFromImage(itk_img)
plt.imshow(img_array[80], cmap=plt.cm.gray) # show a slice from a 3D data
plt.show()

plt.hist(img_array[80].flatten(), bins=80, color='c')
plt.xlabel("Value")
plt.ylabel("Frequency")
plt.show()

Я загрузил все свои фотографии на github, поскольку мне еще разрешено загружать изображения, поэтому, пожалуйста, не стесняйтесь нажимать.

Большое спасибо!

1 Ответ

1 голос
/ 26 мая 2019

Значения, хранящиеся в файле .mhd / .mha, уже являются значениями HU.То, о чем вы думаете, это Окно и Уровень средства просмотра изображений, которое преобразует значения HU в значения пикселей, которые могут отображаться на мониторе.

Я не рекомендую масштабировать значенияв самих файлах, так как это приведет к потере информации.Скорее, я предлагаю скачать программу, способную отображать изображения, например ITK-Snap и / или MeVisLab , которая позволяет настроить окно и уровень

...