python3调用opencv报错:TypeError: Expected cv::UMat for argument 'src’
由python2 升级到python3版本后,安装opencv执行之前代码,发现报错TypeError: Expected cv::UMat for argument ‘src’,在网上搜索发现也有些同学遇到了,但是没有行之有效的解决方案,鼓捣了半天终于弄好了,这了和大家分享一下~
1、首先同过分析和百度以及排查定位了问题产生的原因是由于opencv版本不合适导致的。
2、查看当前使用python版本为3.6.5,opencv版本4.1.0
3、考虑之前在python2中使用的是opencv版本3.4.2,这里决定将opencv版本更新为3.4.2版本
执行:pip install opencv-python==‘3.4.2’
这时候会提示没有3.4.2,目前支持的版本有:
这里选择3.4.2.16就好~
执行:
pip install opencv-python==‘3.4.2.16’
4、这时候我遇到了新的报错:raise ReadTimeoutError(self._pool, None, ‘Read timed out.’)超时了。。。
。。。。
5、百度了一下解决办法,可以指定下载数据源或者延长超时时间,想了下节省时间还是选择指定数据源吧~
执行:pip install --index-url https://pypi.douban.com/simple opencv-python==‘3.4.2.16’
完美解决~希望可以帮助到大家~