対数計算時のエラー

1 回表示 (過去 30 日間)
夏樹 坂本
夏樹 坂本 2020 年 9 月 17 日
コメント済み: 夏樹 坂本 2020 年 9 月 17 日
画像の画素値に対して対数計算を行いたいのですが下記のようなエラーメッセージが表示されます。何がいけないのでしょうか。
>> logca1 = log(ca1)
関数 'log' の呼び出し内に、不足している引数または正しくない引数データ型がないかを確認してください
  2 件のコメント
stozaki
stozaki 2020 年 9 月 17 日
坂本 様
以下のコマンドを実行した結果はどうなっておりますでしょうか?
cl = class(ca1)
stozaki
夏樹 坂本
夏樹 坂本 2020 年 9 月 17 日
コメントありがとうございます。
コマンドを実行したところ下記のようになりました。
cl = class(ca1)
cl =
'int16'

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

採用された回答

stozaki
stozaki 2020 年 9 月 17 日
編集済み: stozaki 2020 年 9 月 17 日
坂本様
コマンドの実行ありがとうございました。
ca1のクラスが "int16"となっています。log関数のドキュメントを見ると、入力引数のデータ型は "single" もしくは "double" となっています。従って、"int16"のデータ型は受け付けないという仕様です。
回避策としては、singleもしくはdoubleにキャストする方法は如何でしょうか?
logca1 = log(double(ca1))
どうぞ、ご検討ください。
stozaki
  1 件のコメント
夏樹 坂本
夏樹 坂本 2020 年 9 月 17 日
データ型を変更すると動くようになりました。アドバイスありがとうございました。

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

その他の回答 (0 件)

タグ

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!