cupy/numpy,用 as_strided 替换 cupy.tile

问题描述

我不认为这会像事实证明的那样令人恼火。我有以下磁贴调用

vertices = cp.tile(
    vertices,(1,1,chunk_size,1),)

当我用chunk_size=5打印出步幅时,我发现在平铺之前是

vertices.strides=(72,24,8)

平铺后是

vertices.strides=(360,120,8)

所以我想“啊哈!,我只是将前两个步幅乘以 chunk_size”:

s = vertices.strides
vertices = cupy.lib.stride_tricks.as_strided(
    vertices,shape=(
        vertices.shape[0],vertices.shape[1],vertices.shape[2] * chunk_size,vertices.shape[3]
    ),strides=(chunk_size*s[0],chunk_size*s[1],s[2],s[3])
)

唉!这根本行不通。我是个混蛋!一个平民!一个傻瓜!有人能告诉我我应该如何去做吗?

我发现了一些其他帖子,但我无法解读如何将他们所说的内容转移到我的用例中。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)