SciLab矩阵分配无效索引错误

时间:2014-09-04 18:51:58

标签: matlab scilab

我想使用SciLab工具在大图像中隐藏图像,以下是我正在使用的代码片段

S1_diag = diag(s1);
S2_diag = diag(s2);

S1_diag(1:length(s1), :) = S2_diag(1:length(s1), :);

其中s1和s2是图像1和2的奇异对角矩阵

相同的代码在Matlab中有效,但会生成“无效索引”。 SciLab中的错误(21)。我缺少什么?

我是SciLab语法的新手,所以无法理解如何在SciLab中解决这个问题。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

原因是Scilab和Matlab的length命令不一样。

  • 在Matlab中,length给出了矩阵的最大维数。因此,对于2乘3矩阵,它是3。
  • 在Scilab中,length给出了元素的数量。因此,对于2乘3矩阵,它是6.

这是一本小词典:

  • Matlab' length(A)与Scilab的max(size(A))
  • 相同
  • Scilab的length(A)与Matlab的numel(A)
  • 相同