How to perform Hot Spot Detection ?

7 vues (au cours des 30 derniers jours)
Syed Muhammad Ali Minhal
Syed Muhammad Ali Minhal le 30 Jan 2021
HI,
what is the equivalent code to be used in App Designer, for the below .m file ?
Thanks
%% Calculate Object Properties Using Pixel Values of Grayscale Image
ti = imread('ti2.jpg');
sc = regionprops('ti2erode.png','ti2rgb.png',{'Centroid','WeightedCentroid'});
figure()
subplot(1,3,1)
imshow(ti)
title('Weighted (red) and Unweighted (blue) Centroids');
hold on
numObj = numel(sc);
for k = 1 : numObj
plot(sc(k).WeightedCentroid(1), sc(k).WeightedCentroid(2), 'r*')
plot(sc(k).Centroid(1), sc(k).Centroid(2), 'bo')
end
hold off

Réponse acceptée

Mario Malic
Mario Malic le 30 Jan 2021
There's no equivalent code in AppDesigner, if you just open it and do few examples there, you'll figure out what to do. I made some changes to your code, as this is most likely how it'll look like in App Designer, excluding these first two lines.
uiFig = uifigure;
uiAxes = uiaxes('Parent', uiFig)
%% Calculate Object Properties Using Pixel Values of Grayscale Image
ti = imread('ti2.jpg');
sc = regionprops('ti2erode.png','ti2rgb.png',{'Centroid','WeightedCentroid'});
imshow(ti, 'Parent', uiAxes)
title(uiAxes, 'Weighted (red) and Unweighted (blue) Centroids');
hold(uiAxes, 'on')
numObj = numel(sc);
for k = 1 : numObj
plot(uiAxes, sc(k).WeightedCentroid(1), sc(k).WeightedCentroid(2), 'r*')
plot(uiAxes, sc(k).Centroid(1), sc(k).Centroid(2), 'bo')
end
hold off
  1 commentaire
Syed Muhammad Ali Minhal
Syed Muhammad Ali Minhal le 30 Jan 2021
Thankyou @Mario Malic, you were right. By the end of the day I was able to figure out what was missing.
Also I was trying to plot in the UIImage instead of the UIAxes
thanks again
Ihsd = imshow(app.ti, 'Parent', app.UIAxes_4, ...
'XData', [1 app.UIAxes_4.Position(3)], ...
'YData', [1 app.UIAxes_4.Position(4)]);
hold(app.UIAxes_4, 'on')
app.alpha = imread("ti2erode.png"); %binary imaage
app.bravo = imread("ti2rgb.png"); % gray scale image
app.sc = regionprops(app.alpha,app.bravo,{'Centroid','WeightedCentroid'});
app.numObj = numel(app.sc);
for k = 1 : app.numObj
plot(app.UIAxes_4, app.sc(k).WeightedCentroid(1), app.sc(k).WeightedCentroid(2), 'r*');
plot(app.UIAxes_4, app.sc(k).Centroid(1), app.sc(k).Centroid(2), 'bo');
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by