首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用NHWC数据初始化火炬NCHW通道的最后张量?

如何用NHWC数据初始化火炬NCHW通道的最后张量?
EN

Stack Overflow用户
提问于 2022-02-16 03:22:03
回答 1查看 323关注 0票数 0

现在我有一个张量,它的内存格式和形状都是NHWC。如果我想最后将它更改为NCHW形状和通道,如下所示:

代码语言:javascript
复制
x = x.to(memory_format=torch.channels_last)

它具有NCHW形状,但通道步长为1,因此不会引起记忆运动。有没有办法在没有内存开销的情况下实现它?

EN

回答 1

Stack Overflow用户

发布于 2022-02-16 13:38:41

使用x = torch.permute(0, 3, 1, 2)不应造成任何重大开销。由于C= 1,数据的连续性被保持,因此数据缓冲区不受影响。

代码语言:javascript
复制
import torch

t = torch.rand(5, 224, 224, 1)
print(f"is t contiguous? {t.is_contiguous()}")  # returns True
t = t.permute(0, 3, 1, 2)
print(f"is t contiguous? {t.is_contiguous()}")  # returns True, again
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71136010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档