対数計算時のエラー

画像の画素値に対して対数計算を行いたいのですが下記のようなエラーメッセージが表示されます。何がいけないのでしょうか。
>> logca1 = log(ca1)
関数 'log' の呼び出し内に、不足している引数または正しくない引数データ型がないかを確認してください

2 个评论

坂本 様
以下のコマンドを実行した結果はどうなっておりますでしょうか?
cl = class(ca1)
stozaki
夏樹 坂本
夏樹 坂本 2020-9-17
コメントありがとうございます。
コマンドを実行したところ下記のようになりました。
cl = class(ca1)
cl =
'int16'

请先登录,再进行评论。

 采纳的回答

stozaki
stozaki 2020-9-17
编辑:stozaki 2020-9-17

0 个投票

坂本様
コマンドの実行ありがとうございました。
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!