为什么变量在 Matlab 中不取负值?
Why variable does not take negative value in Matlab?
我是 Matlab 新手。
我有这些简单的线条。问题是 sum 变量不取负值。所有变量都是双精度的。
Inp_pixel = Inp_padded(x, y);
Filter_pixel = Filter(f_row, f_col);
sum = sum + (Inp_pixel * Filter_pixel);
例如:如果 Filter_pixel = -1 且 Inp_pixel = 150 且 sum = 0。预期结果应该是 -150 但我得到 sum = 0
问题出在Inp_pixel。此变量从 uint8 二维数组分配。
这就是为什么这个变量没有取乘积的负值。我使用 cast() 函数来解决这个问题。
有关此功能的更多详细信息,请查看此 link。
MATLAB documentation page
我是 Matlab 新手。 我有这些简单的线条。问题是 sum 变量不取负值。所有变量都是双精度的。
Inp_pixel = Inp_padded(x, y);
Filter_pixel = Filter(f_row, f_col);
sum = sum + (Inp_pixel * Filter_pixel);
例如:如果 Filter_pixel = -1 且 Inp_pixel = 150 且 sum = 0。预期结果应该是 -150 但我得到 sum = 0
问题出在Inp_pixel。此变量从 uint8 二维数组分配。 这就是为什么这个变量没有取乘积的负值。我使用 cast() 函数来解决这个问题。 有关此功能的更多详细信息,请查看此 link。 MATLAB documentation page