写了一个很简单的有关opencv_python的代码,但是出现了这个错误。仔细看了代码,确定代码没有问题,逻辑也没有问题,但是!!!上天对我很厚爱,给了我一个bug!!!
话不多说,上报错!
仔细看了一下报错内容,发现它跟opencv,numpy有关。通过自己的思考,大概知道最后一句报错内容说的是xxx方法已经有了xxxx(由于本人英语不好,所以不知道那几个单词的意思,呜呜呜)
经过谷歌翻译,它的中文意思是:RuntimeError:implement_array_function 方法已经有一个文档字符串。
emmmm,虽然知道了中文意思,但是具体问题还是不知道在哪。最后还是在网上找到了思路。
原因分析:
浏览了网上有提及到的几点可能原因(只是可能原因哈),总结起来就是版本的问题,可以往以下几个点来排查:
1、与opencv的版本有关
2、与numpy,matplotlib,scipy等的版本有关
3、可能与pycharm的版本有关,导致那些库与pycharm不兼容
解决方案:
顺着网上提供的思路,我去查看了numpy的版本。我的numpy版本是1.21.6。
看起来版本蛮高的,所以就给降低版本。先pip uninstall numpy
一波。
但我卸载完然后再重新安装的时候发现我的虚拟环境里面还有numpy。嗯?好奇怪。
咋就是说,这里面有两个版本的numpy(可能是之前配置yolov5环境(pip install -r requirements.txt)不成功,之后我又手动配置,导致有残余吧)。我卸载了1.21.6版本,剩下1.16.6的,想着这下应该没有问题了吧,但是再运行程序还是有问题,所以我猜想可能之前有两个版本的numpy,就算卸载了一个,剩下的可能还有残余!!!所以我就把1.16.6的也卸载了,再重新安装,运行程序就没有问题了。
文章来源:https://www.toymoban.com/news/detail-460214.html
总结:
我这里的问题应该不是版本的问题,我觉得应该是不同版本参杂在一起的问题。一般来说,如果涉及到版本的问题,基本都是版本过高或过低的问题,导致不兼容(这有点像废话文学了,哈哈哈哈哈哈)。
这是我第一次写博客,记录一下我解决问题的过程,通过写一遍出来印象会更深刻,也是想通过这种方式来督促我及时总结,积累经验。
上述如有不妥之处,还希望大佬们多多指教哈!写得不好也别喷哈。文章来源地址https://www.toymoban.com/news/detail-460214.html
到了这里,关于成功解决:RuntimeError: implement_array_function method already has a docstring的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!