If a matrix contains 1's and 0's ,i would like to get only those 1's and want to take avg values of those corresponding intensity values

4 ビュー (過去 30 日間)
If a matrix contains 1's and 0's ,i would like to get only those 1's and want to take avg values of those corresponding intensity values
  1 件のコメント
Jan
Jan 2016 年 11 月 20 日
Which intensity values? The average of the ones in a matrix is 1.0, so what is "corresponding" here?

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

採用された回答

KSSV
KSSV 2016 年 11 月 20 日
Let a be your vector which have 0 and 1.
% get indices of 1
idx = a(a==1);
Let b be your intensity values corresponding to a.
% extract inentisity values of positions 1
b_1 = b(idx);

その他の回答 (1 件)

Image Analyst
Image Analyst 2016 年 11 月 20 日
If matrix1 is your matrix of 0's and 1's, and matrix2 is your intensity matrix, you can get the mean intensity of matrix2 only where the values of matrix1 are 1 like this:
theMean = mean(matrix2(matrix1));

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by