我需要制作一个matlab gui来读取和显示Dicom文件的目录。 gui需要有一个文件菜单。 2.在文件菜单中,有一个文件打开功能,可以读取DICOM文件的目录。我不知道该怎么做。有人可以帮我这个吗?
答案 0 :(得分:2)
这是一些让你前进的代码。您绝对应该关注this链接并尝试为自己提供的代码。我认为这将极大地帮助您完成项目的其余部分,并帮助您了解正在发生的事情。
话虽如此,下面创建了一个简单的图形,其中有一个轴来显示图像。还有一个菜单,其中包含用于打开文件的按钮,在本例中为DICOM文件(.dcm)。最困难的部分是照顾我的Matlab;你只需要在回调中调用一个函数(uigetfile)" open"按钮,然后调用函数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的屏幕截图,其中包含用于展开菜单的按钮,您可以从中选择要打开的文件(以红色圈出):