Imellipse ROI not resizing in MATLAB GUIDE (2017b)

1 view (last 30 days)
I want to select a circular ROI in a set of image axes in a GUIDE GUI.
The following test code works as expected:
%% Clear the workspace
clear all
close all
clc
fclose('all');
%% Read a standard test image and display it
x = imread('pout.tif');
hf = figure;
ha = axes(hf);
imshow(x);
%% Initialise a circular ROI, allow it to be moved and re-sized, then save the image masked by the selected ROI
x0 = 40;
y0 = 40;
wd = 60;
ht = 60;
Start = [ x0, y0, wd, ht ];
he = imellipse(ha, Start);
setResizable(he, true);
setFixedAspectRatioMode(he, true);
he.Deletable = false;
Venue = wait(he);
BW = createMask(he);
x(~BW) = 0;
imwrite(x, fullfile(pwd, 'ROI.png'));
delete(he);
delete(ha);
delete(hf);
I get the result:
However, the ROI remains fixed at its original size if I attempt the same thing in my GUIDE project. I can move it and double-click to finish, but although there are 4 visible grab handles (NE, NW, SE, SW), I can't resize the circle. The only material change is:
HE = imellipse(handles.ImageDisplayAxes, Start);
I am using 2017b under W10 on a well-specified Dell Precision workstation. Please advise: it is so odd that stepping into GUIDE causes this very simple code to misbehave.

Accepted Answer

Pawel Tokarczuk
Pawel Tokarczuk on 25 Nov 2019
Edited: Pawel Tokarczuk on 27 Nov 2019
To answer my own question: the solution is to use MATLAB 2015aSP1 rather than 2017b.
This is not the first time that problems with regions of interest (polygons, ellipses) in GUIDE have been resolved in this way.
So, case closed. I shall leave the question available for others to find.
  1 Comment
Jayant
Jayant on 21 Nov 2021
For me with same case, in matlab 19a, for one GUI it is behaving exactly what i want. But for 2nd GUI, strange but ellipse not resizing. Everything is exactly same, copy paste, but still not resizing imellipse...

Sign in to comment.

More Answers (0)

Products


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!