文件交换的选择

我们最好的用户提交

扩大

肖恩本周的选择扩大通过马特无花果

内容

背景

马特无花果是MATLAB中央最大的贡献者之一。尽管他已经中断了两年,他还在第十贡献最高的答案和14大多数作者下载文件交换。

扩大

我今天的选择是马特的贡献,出现在我的硕士论文的代码库。我是使用大型三维CT图像和计算速度是非常重要的。这就是它的作用:

x =魔法(3)xexpanded =扩大(x, 2 [3])
x = 8 1 6 3 5 7 4 9 2 xexpanded = 1 6 6 8 8 8 8 1 1 1 6 6 8 8 1 1 6 6 5 7 7 3 3 3 3 5 5 5 7 7 3 3 5 5 7 7 4 4 9 9 2 2 4 4 9 9 2 2 4 4 9 9 2 2

正如您可以看到的x已经扩展三次沿行和两列(2 [3])。扩大也可以在n维数组但有一个限制,扩张必须匹配维度的数量。这可以规避与第二个调用repmat扩大在更高的维度。

克隆亚麻

二维扩展操作一直是可能的克隆亚麻,但它需要创建一个矩阵和的,至少在我研究生时期,是慢的扩大。因为我正与三维图像,这不是一个选择。

xkron = kron (x)的(2))
xkron = 1 6 6 8 8 8 8 1 1 1 6 6 8 8 1 1 6 6 5 7 7 3 3 3 3 5 5 5 7 7 3 3 5 5 7 7 4 4 9 9 2 2 4 4 9 9 2 2 4 4 9 9 2 2

R2015a介绍repelem

R2015a开始,运输3月的第一个星期,有一个新功能,一样的扩大和更多的建在MATLAB:满足repelem

xrep = repelem (x 3 2)
xrep = 1 6 6 8 8 8 8 1 1 1 6 6 8 8 1 1 6 6 5 7 7 3 3 3 3 5 5 5 7 7 3 3 5 5 7 7 4 4 9 9 2 2 4 4 9 9 2 2 4 4 9 9 2 2

分为三个维度:

xrep3 = repelem (x, 3、1、2)
xrep3 (:: 1) = 8 1 6 8 1 6 8 1 6 3 5 7 3 5 7 3 5 7 4 9 2 4 9 2 4 9 2 xrep3 (:,: 2) = 8 1 6 8 1 6 8 1 6 3 5 7 3 5 7 3 5 7 4 9 2 4 9 2 4 9 2

repelem在一个向量可以重复的数量不同,为构建一个向量或非常好运行长度编码

v123 = repelem ([2 4 7], 1:3)
v123 = 2 4 4 7 7 7

R2015a其他

浏览发布说明R2015a和有机会击败R2015a抢先版,这里有一些我喜欢的新功能:

  • 离散化——类似于histcountshistc但跳过直方图计算部分。
  • 数组大小限制——帮助不小心创建大型阵列,会导致你耗尽内存。
  • 选项卡为对象创作完成-终于!
  • ismembertoluniquetol——ismember和独特的宽容;这些将会拯救我几个电话离散化

评论

感谢马特提供扩大功能;它非常有用的近6年!

扩大,repelemR2015a一试,让我们知道你想其中任何一个在这里或者离开评论马特。




发表与MATLAB®R2015a

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。