当前位置: 首页 > article >正文

torch.fft 出现 ComplexHalf 或 Half 不支持

错误报告

错误信息

  1. 错误类型: RuntimeError: Unsupported dtype Half
    发生位置: torch.fft.rfft2

  2. 错误类型: RuntimeError: "roll_cuda" not implemented for 'ComplexHalf'
    发生位置: fft.fftshift

环境信息

bash
pip list | grep torch
torch 1.12.1+cu102
torchaudio 0.12.1+cu102
torchvision 0.13.1+cu102

原因

  • 在 PyTorch 的 FFT 操作中,许多操作不支持 ComplexHalf 数据类型。

解决

  1. ComplexHalf 转换为 ComplexFloat:
    在调用 FFT 操作之前,确保将输入数据类型转换为 ComplexFloat

python
if x.dtype == torch.complex64:
x = x.to(torch.complex64)

  1. 使用 CPU 处理:
    如果性能要求不高,可以选择在 CPU 上执行 FFT 操作,避免 CUDA 相关问题。

python
xfreq = fft.fftn(x.cpu(), dim=(-2, -1))
xfreq = fft.fftshift(x_freq, dim=(-2, -1))


http://www.kler.cn/a/350659.html

相关文章:

  • 令牌主动失效机制实现——Redis登录优化
  • UI自动化测试:异常截图和page_source
  • 【17】Word:林楚楠-供应链❗
  • NLP自然语言处理分词模块HanLP
  • SpringBoot Starter 通用接口加密组件(防篡改)+ RequestBodyAdvice和ResponseBodyAdvice原理
  • Spring Web MVC综合案例
  • java互联网医院智能导诊系统源码,Uniapp前端开发框架,支持一次编写,多端运行
  • 分享一个图片RGB以及16进制颜色提取的在线网站
  • Lobby——网络游戏大厅设计与参考建议!!!
  • FreeRTOS:事件标志组
  • SpringMVC源码-接口请求执行流程,包含九大内置组件的实例化初始化,拦截器调用,页面渲染等源码讲解
  • K8s中pod 间通信的两种情况
  • Oracle中解决select into值集为空的报错情况
  • 洛谷 P1106:删数问题 ← 贪心算法
  • 常见的微控制器(ESP8266、ESP32,、51单片机、stm32)区别
  • 自感式压力传感器结构设计
  • 私有聊天平台的数据管理策略与分析实践
  • 什么是 SQL 注入
  • 深入剖析 Java Spring 中的 @Autowired、@Resource、@Qualifier、@Inject 注解:使用详解与注意事项
  • Vue的响应式原理
  • Linux查看处理器信息
  • Adobe Illustrator如何在图片插入latex公式
  • VS code连接远程服务器
  • webGL进阶(三)-动态变换与动画理论基础
  • Android——通过MediaStore查询图片
  • 【目标检测---旋转框标注】roLabelImg安装与使用