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.

 採用された回答

Sean de Wolski
Sean de Wolski 2022 年 4 月 27 日

1 投票

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 件のコメント

Vincenzo Giacalone
Vincenzo Giacalone 2022 年 11 月 22 日
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?
Rakshit Kothari
Rakshit Kothari 2023 年 7 月 25 日
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.
Vincenzo
Vincenzo 2023 年 7 月 27 日
A guy changed the original viscircle function and now it works well

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeDevelop 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