Show viscircles results in App Designer

Hi everyone,
I'm trying to show the processed image after viscircles function. I would like to select the images by app designer and do background subtraction, then detect the circles by using viscircles function. The results after circle detection is required to show at the app designer.
However, what I got is the image after background subtraction. The viscircle does not appear. Is there any solution to fix this problem?
The following image is the result I obtained from script.
But what I require at left is like this:
Thank you very much for the help.

 采纳的回答

Specify the app UIAxes as the first input
a = uiaxes; % replace with you app.UIAxes
imshow('coins.png',Parent=a)
[centers,radii] = imfindcircles(imread('coins.png'),[20 100]);
viscircles(a,centers, radii)

3 个评论

Hi, I am using this solution in app designer and it works well, but viscircle opens a new figure anyway, while plotting the circle in the correct axes. I tried to solve this using close, but it's not the perfect solution because I can see the new figure popping up for a moment, before closing it.
Can you please help me?
Hi @Vincenzo Giacalone, how did you resolve this issue? I am facing a similar issue. I can confirm that `viscircle` opens a new figure despite being provided an axis to plot on. It doesn't help if I add a wait n seconds or explicitly setting hold -> on.
A guy changed the original viscircle function and now it works well

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Develop Apps Using App Designer 的更多信息

产品

版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by