【发布时间】:2020-03-09 17:14:16
【问题描述】:
我正在使用 VS Code for Python(anaconda 包和 OpenCV)。
我正在调试程序(按 F5)并收到以下错误。
我遇到错误的代码
import cv2 as cv
import os
import numpy as np
pathsyn = os.path.realpath("synset_words.txt")
print("path", pathsyn)
syn = open(pathsyn,"r").read().strip().split("\n")
syncls = [r[r.find(" ") +1:] for r in syn]
vid = cv.VideoCapture(0)
net = cv.dnn.readNetFromCaffe("Classifiers/model/bvlc_googlenet.prototxt","Classifiers/model/bvlc_googlenet.caffemodel")
虽然synset_words.txt,AI02.py 两个文件都在同一个目录中
both are in the same directory
如果我将代码修改为
pathsyn = os.path.realpath("OpenCV/synset_words.txt")
然后就可以了。
import cv2 as cv
import os
import numpy as np
pathsyn = os.path.realpath("OpenCV/synset_words.txt")
print("path", pathsyn)
syn = open(pathsyn,"r").read().strip().split("\n")
syncls = [r[r.find(" ") +1:] for r in syn]
vid = cv.VideoCapture(0)
net = cv.dnn.readNetFromCaffe("OpenCV/Classifiers/model/bvlc_googlenet.prototxt","OpenCV/Classifiers/model/bvlc_googlenet.caffemodel")
Directories; .vscode is outside of the OpenCV folder
这是因为 .vscode 文件夹在前一个目录中,而我的 AI02.py 和 synset_words.txt 在 OpenCV 文件夹中。
VS Code 查找文件的目录(.vscode 文件夹也位于该目录):
C:\Users\user\Documents\Python Scripts
但文件在(vs 代码应该像终端一样直接调试器):
C:\Users\user\Documents\Python Scripts\OpenCV
【问题讨论】:
-
您可以直接发布您的代码而不是屏幕截图吗?很难在屏幕截图上查看它们。
-
@GenWan 已进行更改以便于理解。请再次查看问题。谢谢。
-
可以打印
os.getcwd()并在此处发布结果吗? -
@HamzaHathoute
current path os.getcwd(): c:\Users\user\Documents\Python Scripts并且路径应该是c:\Users\user\Documents\Python Scripts\OpenCV。希望对您有所帮助。 -
尝试在
pathsyn = ...之前使用os.chdir(path)将当前工作目录设置为您需要的目录
标签: python opencv visual-studio-code atom-editor vscode-debugger