我正在使用 OpenCV 和 python,更具体地说findTransformECC
的功能cv2
执行图像配准。如果算法不收敛,此函数可能会引发错误。我用一个简单的方法捕获了错误try ... except
指令,然后我处理错误。但是 OpenCV 错误消息仍然显示在我的终端中,我想隐藏它。我应该怎么做?
这是一个简单的例子
try:
cc, warp_matrix = cv2.findTransformECC(img1, img2, warp_matrix)
except cv2.error:
cc = 15;
print("An error occured but it does not matter")
If the findTrnaformECC
函数抛出错误我的程序正确输出我的自定义错误消息(An error occured but it does not matter
)但是 OpenCV 错误(OpenCV Error: Iterations do not converge (The algorithm stopped before its convergence. The correlation is going to be minimized. Images may be uncorrelated or non-overlapped) in findTransformECC, file /home/travis/miniconda/conda-bld/conda_1485299288502/work/opencv-3.2.0/modules/video/src/ecc.cpp, line 530
)我想阻止这种情况发生。
重定向stderr
似乎不起作用,但它给了我从命令行重定向它的想法,效果很好(在基于 Unix 的系统上)
python myscript.py 2> /dev/null
但是,这将隐藏应显示的所有其他错误stderr
。这对于我的精确应用来说不是问题,但它可能是。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)