如果我得到OpenCV错误:...
自OpenCV Error使用两个单词以来,它的语法是什么?我能够抓住以下cv.error,但我怎么能抓住这个?
修改
我不明白......答案显而易见吗?我不清楚吗?
编辑2
我无法重现它b / c我在另一台计算机上,但它看起来类似于:
OpenCV Error: Bad argument. Something something array
cv.error: This is another error
我可以通过以下方式捕获cv.error但不能捕获OpenCV错误:
try:
# do a thing
except (cv.error, OpenCV Error):
print "Can't do the thing"
sys.exit(1)
答案 0 :(得分:20)
尝试cv2.error
。
try:
...
except cv2.error as e:
...
Here's文档中的页面,但它仅用于C / C ++接口 - 我找不到任何关于OpenCV的Python错误处理(我发现Python界面的文档遗憾地缺乏)。
答案 1 :(得分:0)
您可以轻松地检查错误对象,例如
fvs = imutils.video.FileVideoStream(args.input).start()
while fvs.more():
frame = fvs.read()
try:
grayframe = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
except cv2.error as e:
# inspect error object
print(e)
for k in dir(e):
if k[0:2] != "__":
print("e.%s = %s" % (k, getattr(e, k)))
# handle error: empty frame
if e.err == "!_src.empty()":
break # break the while loop