假设srcHoughMatrix
是3维矩阵:
代替
if (currentRadius >= MINIMUM_ALLOWED_RADIUS )
% we're using only radiuses that are 6 or above
currentHough = srcHoughMatrix(index,jindex,currentRadius);
srcHoughMatrix(index,jindex,currentRadius) = currentHough + 1;
end
如果条件为true,如何在不使用临时变量的情况下向每个单元格添加
1
有无srcHoughMatrix(index,jindex,currentRadius) = srcHoughMatrix(index,jindex,currentRadius) + 1;
谢谢
最佳答案
不是说我不会按照@Jonas的建议去做,而是要使用 operator
呢?它用于定义新的用户定义的运算符或删除它们(不过您将需要符号工具箱)。operator(symb, f, T, prio)
定义了一个类型为symb
(前缀|后缀|二进制| Nary)的新运算符T
(优先级prio
)。函数f
使用new运算符对表达式求值。
给定运算符符号“++”,例如,使用评估函数f
,解析器将根据运算符的类型构建以下表达式,其中:
前缀:输入++ x导致f(x)。
后缀:输入x++导致f(x)。
二进制:输入x++ y++ z得出f(f(x(y,y),z)。
Nary :输入x++ y++ z得出f(x,y,z))。
在matlab的documentation上查看更多信息。