python - pytorch int32 到 int64 的转换
问题描述
我正在尝试将一个简单的图像蒙版转换为int64
image = np.array([[1, 2], [3, 4]], dtype='int32')
transform = Compose([
torch.from_numpy,
ConvertImageDtype(torch.int64)
])
然而,transform(image)
产量
tensor([[ 4294967296, 8589934592],
[12884901888, 17179869184]])
有什么问题,还是我从根本上误解了转换应该如何工作?
解决方案
如果您跳过火炬的转换,则图像将正确转换。
image = np.array([[1, 2], [3, 4]], dtype='int64')
transform = Compose([
torch.from_numpy
])
transform(image)
# tensor([[1, 2],
# [3, 4]])
推荐阅读
- javascript - 如何根据多个条件更改数组中项目的值?
- ubuntu - HTTP 响应代码 403,但原因是“OK”
- vb.net - “System.NullReferenceException:对象引用未设置为对象的实例”的应用程序错误
- java - 即使进入 else 语句,使用 Mockito 的集成测试也没有得到覆盖
- javascript - 异步调用后如何渲染所有组件?
- javascript - 如何在 QML 的弹出窗口中排列项目?
- mongodb - 如何从 mongo 获取不同的行,包括匹配的父行
- python-3.x - 基于“查找”创建 MultiIndex 列
- javascript - 向 chartOptions 添加缩放属性不会添加任何缩放功能
- javascript - 如何从 fetch javascript 请求的响应中获取数据