find the euclidean distance

2 ビュー (過去 30 日間)
vasantha malairamar
vasantha malairamar 2017 年 4 月 5 日
コメント済み: Jan 2017 年 4 月 5 日
for bd=1:144
for fd=1:128
D =(sum((fe(bd,fd)-U(bd,fd)).^2));
s=sqrt(D);
end
end
Undefined operator '-' for input arguments of type 'cell'.
Error in samptest (line 239) D =(sum((fe(bd,fd)-U(bd,fd)).^2));

回答 (2 件)

Walter Roberson
Walter Roberson 2017 年 4 月 5 日
D =(sum((fe{bd,fd}-U(bd,fd)).^2));
  2 件のコメント
vasantha malairamar
vasantha malairamar 2017 年 4 月 5 日
same error.....
Jan
Jan 2017 年 4 月 5 日
Then U is a cell also?!

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


Jan
Jan 2017 年 4 月 5 日
編集済み: Jan 2017 年 4 月 5 日
The error message is clear: One or two of the arguments of the - operation is a cell, but you cannot perform arithmetic operations with cells.
Use the debugger to find the reason of your problem. Type this in the command window:
dbstop if error
Now run the code and wait until Matlab stops at teh error. Now check the types of the locally used variables:
% D =(sum((fe(bd,fd)-U(bd,fd)).^2))
class(fe)
class(U)
Perhaps walter's suggestion does not work, if if was not fe but U -- well, his idea is still correct and I'd expect you can apply the changes for U by your own.

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by