2012-04-04 2 views
4

나는 cv::Mat에 표준 출력의 내용을 인쇄하려고 시도하고, this question에 따라 :OpenCV 2.1 : cv :: Mat의 ostream 연산자는 어디입니까?

#include <iostream> 
#include <opencv/cv.h> 
#include <opencv/cv.hpp> 
#include <opencv/cxcore.h> 
#include <opencv/cxcore.hpp> 

int main() { 

    cv::Mat m = cv::Mat::ones(10, 10, CV_32S); 
    std::cout << m << "\n"; 

} 

error: no match for ‘operator<<’ in ‘std::cout << m’ 

내가 우분투 11.10에 GCC 4.6.1를 사용하고있는 오류가 발생, these instructions 다음에 예제를 제외하고 opencv를 설치했습니다. 내 질문은 2.1에서 연산자를 사용할 수 있습니까? 그렇다면 어떻게 얻을 수 있습니까?

+0

연산자가 정의되지 않은 경우 2.2 이상으로 업그레이드해야 할 수 있습니다. –

답변

5

에서 OpenCV 2.2 (또는 그 이상)으로 업데이트하고 #include <opencv2/opencv.hpp>

는 운영자가 정의되지 않은 경우, 위 2.2 이상으로 업그레이드해야 할 수 있습니다 modules/core/include/opencv2/core/operations.hpp

+0

감사합니다. opencv 2.3.1을 설치하는 것은 다소 힘든 일이다. 예제에 필요한 유일한 헤더는 입니다. – juanchopanza

2

에서 정의합니다. 문서화 Here 어디서 오버로드 된 연산자 코드를 찾을 수 있습니까?

+0

감사합니다. 2.3.1에서는 정상적으로 작동합니다. – juanchopanza

관련 문제