0
任何人都可以告訴下面的代碼有什麼問題。鼠標移動圖像的最後部分時,出現分段錯誤。我只是根據鼠標位置打印R,G,B值。OpenCV使用鼠標訪問像素值
#include <iostream>
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
Mat image;
char window_name[20]="Pixel Value Demo";
static void onMouse(int event, int x, int y, int f, void*){
Vec3b pix=image.at<Vec3b>(x,y);
int B=pix.val[0];
int G=pix.val[1];
int R=pix.val[2];
cout<<R<<endl<<G<<endl<<B<<endl;
}
int main(int argc, char** argv)
{
namedWindow(window_name, CV_WINDOW_AUTOSIZE);
image = imread("src.jpg");
imshow(window_name, image);
setMouseCallback(window_name, onMouse, 0);
waitKey(0);
return 0;
}
在此先感謝......
謝謝你好........ – Haris