【发布时间】:2015-04-20 21:41:24
【问题描述】:
我需要制作一个读取和显示 Dicom 文件目录的 matlab gui。 gui 需要有一个文件菜单。 2. 在文件菜单中,有一个文件打开功能,可以读取DICOM文件的目录。我不知道该怎么做。有人可以帮我解决这个问题吗?
【问题讨论】:
标签: matlab user-interface dicom
我需要制作一个读取和显示 Dicom 文件目录的 matlab gui。 gui 需要有一个文件菜单。 2. 在文件菜单中,有一个文件打开功能,可以读取DICOM文件的目录。我不知道该怎么做。有人可以帮我解决这个问题吗?
【问题讨论】:
标签: matlab user-interface dicom
这里有一些代码可以帮助你。您绝对应该关注this 链接并尝试为自己提供的代码。我认为这将极大地帮助您完成项目的其余部分,并帮助您了解正在发生的事情。
话虽如此,下面创建一个带有轴的简单图形来显示图像。还有一个带有用于打开文件的按钮的菜单,在本例中为 DICOM 文件 (.dcm)。最难的部分是照顾我的 Matlab;你只需要在那个“打开”按钮的回调中调用一个函数(uigetfile),然后调用函数dicomread来读取一个dicom文件的内容。
剩下的交给您,但这应该可以帮助您入门。如果有不清楚的地方,请随时提问。
代码:
function DicomReadGUI
%// Create figure
hFigure = figure('Position',[200 200 600 600],'MenuBar','none', ...
'Toolbar','none','HandleVisibility','callback');
%// Add an axes just to display an image.
hAxes = axes('Position',[.1 .1 .8 .8],'Parent',hFigure);
%// Add menu in which you will add the "open" button
hFileMenu = uimenu('Parent',hFigure,'HandleVisibility','callback','Label','File');
%// Add a button to browse and open files
hOpenMenuitem = uimenu('Parent',hFileMenu,...
'Label','Open','HandleVisibility','callback', ...
'Callback', @hOpenMenuitemCallback);
%// Callback of the "open" button
function hOpenMenuitemCallback(hObject,eventdata)
%// Browse the computer and select .dcm files.
FileToRead = uigetfile('*.dcm')
[YourImage, ColorMap] = dicomread(FileToRead);
%// Display image in Axes1
imshow(YourImage,'Parent',hAxes)
end
end
以及用于展开菜单的 GUI 屏幕截图,您可以从中选择要打开的文件(红色圆圈):
【讨论】: