Reshaping with Different Sizes

There are two lines of code in someone's script that I can't figure out how it works. Here is the code and attached is a .mat file with the variables themselves. Note that the .mat file begins with the original regionMat_m, and once you run the code regionMat_m changes.
bar = tmp(rnum(1:rc));
regionMat_m = reshape(bar(regionMat_m),R,C);
bar and regionMat_m have conflicting sizes of 1x156 and 256x400 respectively, so I'm not sure how bar(regionMat_m) even compiles. Once it does compile, I don't see the correlation between the output and the input. Help would be much appreciated!
Sidenote: I know bar is also a MATLAB function for graphing. I don't know why the variable is named bar. I didn't write this code! Just trying to figure out what is going on.

 Risposta accettata

Matt J
Matt J il 29 Ago 2023
Modificato: Matt J il 29 Ago 2023
There is no requirement that an index array be the same size as the array being indexed. Example:
values=[20,30,40]
values = 1×3
20 30 40
values(ones(5))
ans = 5×5
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

Più risposte (0)

Categorie

Prodotti

Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by