QObject::moveToThread: Current thread(...) is not the object`s thread. Cannot move to target thread(

最近在使用 conda 环境踩了个坑,运行 opencv 项目时弹出满屏的 Qthread 报错。

网上的解决方法大多是把 opencv-python 降级,或者 sudo 用包管理器安装到系统,但是都没有很彻底或者说优雅地解决问题。

问题描述

python 3.8 (conda) 环境下,运行 opencv 项目出现报错:QObject::moveToThread: Current thread(…) is not the object`s thread. Cannot move to target thread(…)。

问题溯源

以上报错是由于使用 conda 安装 pyqt ,用 pip 安装 opencv ,由版本冲突导致的:

如果您使用 Anaconda 虚拟环境并同时执行 conda install pyqtpip install opencv-python。 opencv-python 会在两个 PyQt 版本之间产生冲突并导致错误。

解决方案

卸载当前用 conda 装的 PyQt:

conda uninstall pyqt

通过 pip 安装 PyQt :

pip install PyQt5
pip install opencv-python

参考

解决方案参考 stackoverflow 答主 a_guest :原帖地址

评论 32
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值