OpenCv访问像素

时间:2011-10-27 16:44:13

标签: opencv pixels

for (x=0; x<width-1; x++){
    for(y=0; y<height-1; y++){
        s = cvGet2D(binImage, x, y);
        printf("%f\n", s.val[(x,y)]);
        //if (s.val[(x,y)] == 0){

        //} 
    }
}

我只想在这里询问这段代码。我在每次迭代中打印像素值,但它不能完全打印,并且在程序运行结束时出现分段错误。原因是什么以及如何修复此代码?非常感谢你。

1 个答案:

答案 0 :(得分:2)

该行

s = cvGet2D(binImage, x, y);

应该是

s = cvGet2D(binImage, y, x);

虽然,这方面的文件不是很清楚......

另外,我想打印出你想要做的像素(假设有一个通道浮动图像):

printf("%f\n", s.val[0]);