如何解决类型错误:__array__() 需要 1 个位置参数,但给出了 2 个
我一直在做 pytorch 教程 (https://pytorch.org/tutorials/intermediate/torchvision_tutorial.html) 并且遇到了这个我不知道如何修复的错误。完整错误如下:
cmake_minimum_required(VERSION 3.10.2) # set version to same as on system
project(hello) # set project name to something
add_executable(hello main.cc) # the executable should be called "hello"
SET(CMAKE_CXX_FLAGS "g++ -std=c++17 -pedantic -Wall -Wextra -Werror -Weffc++")
我相信这意味着我在某处使用了一个带有 2 个不允许的参数的数组,但我真的不知道发生了什么事情 - 也许在他们预先编写的库之一中?
如果需要,我可以完整共享代码,但认为它有点笨拙。有谁知道可能导致此错误的原因是什么?
解决方法
PyTorch 已经考虑过这个 issue。这似乎不是 PyTorch 的问题。
正如问题中提到的xwang233,我们可以通过降级枕头来修复它:
html,body {
height: 100%;
}
body {
display: flex;
justify-content: center;
align-items: center;
}
,
我在使用时遇到了同样的错误:
torch==1.9.0
torchvision==0.10.0
在我的requirements.txt 文件中,我降级了torch 库,这迫使我降级torchvision,并为我修复了错误。我最终使用的没有引发错误的库版本是:
torch==1.8.1
torchvision==0.9.1
,
这个问题也可以通过将 Pillow 从 8.3.0 升级到 8.3.1 来解决。我有同样的问题
torch==1.9.0+cu111
torchvision==0.10.0+cu111
Pillow==8.3.0
Pillow 升级到 8.3.1(没有改变 Torch 和 torchvision)后,问题消失了:
pip install --upgrade pillow
感谢 DRTorresRuiz 提供关于 Pillow 的线索。
,更改您的代码:
np.array(pic,np.float32)
到:
np.array(pic).astype('float32')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。