OpenCV를 Python과 함께 사용하고 있습니다. 더 구체적으로 findTransformECC
문자 집합을 cv2
으로 사용하여 이미지를 등록합니다. 이 함수는 알고리즘이 수렴하지 않으면 오류를 발생시킬 수 있습니다. 간단한 try ... except
명령어로 오류를 잡아 내고 오류를 처리합니다. 그러나 OpenCV 오류 메시지가 여전히 내 터미널에 표시되며이를 숨기고 싶습니다. 어떻게해야합니까? 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
)를 출력하고 나는 그것을 방지하려는 경우 여기 python 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")
입니다.
오류는'stderr'에 기록됩니다. 그래서 당신은 [stderr'를 리디렉션 할 수 있습니다] (http://stackoverflow.com/a/6735958/5008845). 아니면 출력을 억제하기 위해 [opencv] (http://stackoverflow.com/a/17575610/5008845) 말할 수 있지만'cv :: redirectError' 함수를위한 파이썬 바인딩이 있는지 나는 알지 못한다. – Miki
this 위대한 것 같지만 표준 오류를 리디렉션 아무것도하지 않았다 ... – fonfonx