Propety of variable in one line matlab

1 visualizzazione (ultimi 30 giorni)
Vatsal Shah
Vatsal Shah il 21 Ago 2019
Commentato: Rik il 21 Ago 2019
I want to get a specific property (location in this case) of the variable that is returned from the function detectSURFFeatures in one line.
The following would work
temp = detectSURFFeatures(imgA, 'MetricThreshold', 1000);
features = temp.Location;
but I need to be able to get features using only one line of code like the
features=(detectSURFFeatures(imgA, 'MetricThreshold', 1000)).Location;
I was wondering if there was any way I would be able to do this

Risposte (1)

Rik
Rik il 21 Ago 2019
Why do you need one line? It is generally less readable if you try to write it like that.
But if you insist: the subsref function should do the trick.
  2 Commenti
Vatsal Shah
Vatsal Shah il 21 Ago 2019
I need it in one line because I plan on using that in the fun function for blockproc. I am unable to put multiple lines of code in the fun function for blocproc as far as I know. Thank you so much!
Rik
Rik il 21 Ago 2019
You can do it with subsref, but you can also supply a function handle (e.g. B=blockproc(A, sz, @mean2); ), so you can write any length function you like. Just make sure the input satisfies the restrictions of blockproc.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by