Help to understand Matlab code

3 ビュー (過去 30 日間)
Matlab Student
Matlab Student 2018 年 10 月 23 日
コメント済み: jonas 2018 年 10 月 23 日
Hello Matlab Experts,
I am trying to understand this Matlab code, I am stuck at few lines:
% get resolution and number of band
[m n ~]=size(im);
if length(size(im))==3
b=size(im,3);
else
b=1;
end
[m n ~] = size(im) I know size(im) should return the height and width of an image, but what does ~ mean? I have reviewed size documentation but did not find the answer: https://www.mathworks.com/help/matlab/ref/size.html
Also, I need assistance to understand these two lines as well. As per Matlab documentation, szdim = size(A,dim) returns the length of dimension dim. Does this mean size(im,3) return the depth of image pixels?
if length(size(im))==3
b=size(im,3);
Thanks in advance,

採用された回答

jonas
jonas 2018 年 10 月 23 日
編集済み: jonas 2018 年 10 月 23 日
[m n ~] = size(im)
~ basically means "omit this output", and is totally useless in this context. It is useful in other cases, for example if you're only interested in the second output.
[~,out] = func(...)
"Does this mean size(im,3) return the depth of image pixels?"
yes
  2 件のコメント
Matlab Student
Matlab Student 2018 年 10 月 23 日
Thanks Jonas.
What about length(size(im))? Does length(size(im)) equals to 2 if im is a two dimensional array, and equals to 3 if im is an image with Height Width and Depth?
jonas
jonas 2018 年 10 月 23 日
My pleasure! Yep, thats correct.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCall C++ from MATLAB についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by