我无法计算eye(100)
和s = imread('1','gif')
的乘积。矩阵的维数相等,但MATLAB注意到以下错误:
Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.
如何在MATLAB中将s
定义为具有浮点值的矩阵?
答案 0 :(得分:3)
MATLAB的imread
返回一个矩阵,其中包含uint8
类型的元素(无符号8位整数)。与eye(100)
形成对比,double
生成类型为.*
的矩阵。由于未为不同类型的操作数定义操作s
,因此在操作之前需要将double
转换为s = double(imread('1', 'gif'));
:
{{1}}