【问题标题】:In an assignment A(:) = B, the number of elements in A and B must be the same在赋值 A(:) = B 中,A 和 B 中的元素个数必须相同
【发布时间】:2016-04-26 11:59:53
【问题描述】:

您能帮我纠正以下 matlab 代码中的上述问题吗?

    E = [5,200];  Selected edge values 
    X = imread('LENNA128.bmp');
    N = length(X);
    Y = false(N+2);
for k = 1:numel(E);
    Y(2:end-1,2:end-1) = X==E(k);
    Z = Y(1:end-2,2:end-1) | Y(3:end,2:end-1) | Y(2:end-1,3:end) | Y(2:end-1,1:end-2);
    X(Z) = round((X(end-3,3:end-2) + X(end-3,4:end-1))/2);
end

【问题讨论】:

  • 你能解释一下你想用这段代码实现什么吗?为什么是Y = false(N+2)
  • @Benoit_11 我正在尝试消除该错误。
  • 是的,我知道。但有时了解代码的用途是件好事,您不觉得吗?
  • 哪一行会报错?不要让我们猜测。

标签: image matlab location variable-assignment pixel


【解决方案1】:

我猜那是 matlab 代码(下次可能会添加 matlab 标签)。如果您查看 matlab doc http://de.mathworks.com/help/matlab/ref/colon.html 中的冒号运算符,那么当在分配的左侧使用时,它将填充矩阵并保持维度,因此您需要相同数量的元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多