我安装的环境是torch==2.4.1 和 torchvision==0.19.1的环境,

  • functional_tensor 是 torchvision 在 ​0.9.0 及以上版本 中新增的功能
  • 若 torchvision 版本低于此要求,或与 torch 版本不兼容,会导致该模块无法导入

但是我的版本高也不行。 

ImportError: cannot import name 'functional_tensor' from 'torchvision.transforms',问题核心在于 ​新版本 torchvision 已弃用 functional_tensor 模块

问题来源于:

  1. 模块弃用
    torchvision.transforms.functional_tensor 在较新版本的 torchvision(如 0.19.1)中已被官方弃用,其功能已迁移到 torchvision.transforms.functiona

  2. 第三方库兼容性
    项目中可能依赖的库(如 basicsrRealESRGAN)尚未适配新版 torchvision,仍强制引用 functional_tensor

解决方法: 直接修改代码导入路径

找到报错文件中引用 functional_tensor 的代码行(例如 degradations.py 第8行),将:

from torchvision.transforms.functional_tensor import rgb_to_grayscale

改成

from torchvision.transforms.functional import rgb_to_grayscale

解决!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐