我试图弄清楚cv2
软件包的自动完成功能为何无法正常工作。以下是一些有关我正在使用的问题和版本以及我试图解决的信息:
VS代码中的自动完成
版本信息
以上所有3个软件包都安装在C:\...\anaconda3\lib\site-packages
我的尝试
我检查了我的软件包是否安装在默认位置(由this question建议)没有成功。它们安装在默认位置,但仍无法正常工作。
按照this issue的建议,命令行print(jedi.Script("import cv2\ncv2.").completions())
在PowerShell中执行时会自动为我自动完成,但是在VS Code中仍然不起作用。结果如下:
PS:我限制了输出,因为问题对字符数有所限制,不能全部使用。
>>> print(jedi.Script("import cv2\ncv2.").completions())
<stdin>:1: DeprecationWarning: Deprecated since version 0.16.0. Use Script(...).complete instead.
[<Completion: >, <Completion: absdiff>, <Completion: ACCESS_FAST>, <Completion: ACCESS_MASK>, <Completion: ACCESS_READ>, <Completion: ACCESS_RW>, <Completion: ACCESS_WRITE>, <Completion: accumulate>, <Completion: accumulateProduct>, <Completion: accumulateSquare>, <Completion: accumulateWeighted>, <Completion: ADAPTIVE_THRESH_GAUSSIAN_C>, <Completion: ADAPTIVE_THRESH_MEAN_C>, <Completion: adaptiveThreshold>, <Completion: add>, <Completion: addText>, <Completion: addWeighted>, <Completion: AffineTransformer>, <Completion: AGAST_FEATURE_DETECTOR_AGAST_5_8>, <Completion: AGAST_FEATURE_DETECTOR_AGAST_7_12D>, <Completion: AGAST_FEATURE_DETECTOR_AGAST_7_12S>, <Completion: AGAST_FEATURE_DETECTOR_NONMAX_SUPPRESSION>, <Completion: AGAST_FEATURE_DETECTOR_OAST_9_16>, <Completion: AGAST_FEATURE_DETECTOR_THRESHOLD>, <Completion: AgastFeatureDetector>, <Completion: AgastFeatureDetector_AGAST_5_8>, <Completion: AgastFeatureDetector_AGAST_7_12d>, <Completion: AgastFeatureDetector_AGAST_7_12s>, <Completion: AgastFeatureDetector_create>, <Completion: AgastFeatureDetector_NONMAX_SUPPRESSION>, <Completion: AgastFeatureDetector_OAST_9_16>, ...
numpy
软件包更新到最新版本(1.19),并且还尝试使用旧版本(1.10)。没有成功。如果有人可以给我一个提示,我将很高兴,甚至可以指出问题的真正出处(VS代码,python扩展,jedi软件包)。
最后一条信息:numpy自动完成正常工作。
答案 0 :(得分:0)
按照Paul McWhorter的说明,我在设置Jetson Nano 2GB时遇到了同样的问题。卸载python3-opencv软件包后,这会破坏cv2的完成。
我追踪了一下,发现绝地找不到图书馆。我的解决方案是创建指向所要查找位置的链接。我认为有比我的方法更好的解决方法。
cd /usr/lib/python3.6/dist-packages/cv2;ln -s python-3.6/cv2.cpython-36m-aarch64-linux-gnu.so ./__init__.cpython-36m-aarch64-linux-gnu.so
很可能需要更改路径和命令语法以匹配您安装的python版本。