2013-11-21 8 views
2

OpenCV를 처음 사용하고 있는데 그레이 스케일 이미지에서 픽셀 값을 얻으려고합니다.OpenCV의 픽셀 값 얻기

#include<opencv2\opencv.hpp> 
#include<opencv2\highgui\highgui.hpp> 
#include<opencv2\core\core.hpp> 
#include<iostream> 

using namespace cv; 

int main() 
{ 
    VideoCapture cap(1); 
    Mat image,gray_image; 
    cap>>image; 
    cvtColor(image,gray_image,CV_BGR2GRAY); 
    std::cout<<"Value: "<<gray_image.at<uchar>(0,0); 
    imshow("Window",gray_image); 
    waitKey(0); 
    return 0; 
} 

픽셀 값은 * 또는 ~ 등으로 표시됩니다. ASCII 값으로 변환되는 것으로 생각됩니다. 어떻게 수정해야합니까?

감사합니다.

+0

가능한 중복 (http://stackoverflow.com/questions/20092087/visualization-pixel-with-opencv-mat-at) – Bull

답변

4

정수로 출력하려고

같은

을 인쇄하기 전에 int로 당신의 UCHAR 변수를 타입 변환 할 필요가

std::cout<<"Value: "<<static_cast<int>(gray_image.at<uchar>(0,0)); 
[에서 OpenCV의 매트와 시각화 픽셀]의
1

당신은

std::cout<<"Value: "<<(int)src.at<uchar>(0,0);