EsmeProcess: The main program is functioning dicom operation with drawing/painting multiple Region Of Interest (ROI) on a given dicom image, saving/retrieving the results into/from the dicom header, computing various statistic required, and viewing 3D images. All the imroi tools (freehand, circle, rectangle, polygon) are used to define ROI region(s) with a sophisticated binary operation between them. The statistical functions include bar, plot and boxplot. Further functions are provided:
SAVE:
- Save the ROI/painting into dicom header; save the image, statistic, mask and ROI in .dicom, .png, .mask and .xlsx formats correspondingly.
READ:
- Read the ROI/painting from header and paint to the dicom image; also load.mask.
EXPANSION:
- Expand the ROI based on the size defined in the option file.
APPLY_TO_OTHERS:
- Apply the ROI to other images within the same dicom series either directly or by loading a .mask.
STATISTIC:
- Calculate the mean, deviation and percentiles of aggregated ROI and display by plot, bar or boxplot in Statistic Menu. The aggregated ROI is computed based on an interactive binary operation. Each shape's histogram can be shown by right-click menu.
OPTIONS:
- Load and configure the parameters. For example, the text object can be switched off by setting 'roitexton' parameter to zero in Options.
INFOEDITOR:
- View, edit, anonymize and recover dicoms and headers
- View cross-section of 3D Images by scrolling up/down mouse wheel
Generated Information:
- Binary mask (.mask).
- Region Of Interest (.xlsx).
- Statistic of ROI (.png).
- Dicom images with painting history (.dicom).
This program is also a good example for people who intend to use some undocumented tools such as uitree, recent files menu and listbox context menu etc.
Jun Li (2021). Dicom Operator - EsmeProcess (https://www.mathworks.com/matlabcentral/fileexchange/43397-dicom-operator-esmeprocess), MATLAB Central File Exchange. Retrieved .
Inspired by: GetDrives, Rapid lossless data compression of numerical or string variables, boxcount, findjobj - find java handles of Matlab graphic objects, INI Config, Lacunarity of a binary image, Interactive DICOM 3D Viewer, Recursive directory listing - Enhanced RDIR, Enhanced Dicom Viewer, subtightplot
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Create scripts with code, output, and formatted text in a single executable document.
Windows only now.
it would be very nice to replace all backslashes '\' with forward slashes, or even better, the filesep() function.
on top of that; please get rid of nargchk and replace it by narginchck and nargoutchk
Hi,
I am trying to use the script but I get this error and I don't know why.
Error using sprintf
Function is not defined for 'matlab.ui.Figure' inputs.
Error in CROIEditor/createwindow (line 14)
set(this.guifig, 'Tag', ['EsmeFigures', sprintf('%.f', this.guifig)]);
Error in CROIEditor (line 107)
this.createwindow;
Error in EsmeProcess (line 49)
CROIEditor(pathstr);
Extracting the zip and setting the path, the program hangs upon execution (following the Readme file): MATLAB R2016a reports "Busy" indefinitely after several warnings about deprecated NARGCHK, much longer than the readme file's stated "few seconds". Installing it through the Add-Ons menu, it opened after a few seconds (with the same warning, "NARGCHK will be removed in a future release. Use NARGINCHK or NARGOUTCHK instead.").
Thank you for the additional code to read; it appears to have many comments as well to guide comprehension.
The program hangs upon execution (following the Readme file): MATLAB R2016a reports "Busy" indefinitely after several warnings about deprecated NARGCHK, much longer than the readme file's stated "few seconds".
Nonetheless, thank you for the additional code to read; it appears to have many comments as well to guide comprehension.
Hi!
It's a very useful script for my work. However I have a question about fractal abundance, what does that mean? I don't fully understand what's the concept behind this word...
Could you explain it to me please?
Thank you very much