【问题标题】:Accessing image pixel value访问图像像素值
【发布时间】:2013-05-21 03:23:10
【问题描述】:

我想从opencv中已经纠正的黑白图像中返回值。我使用.type() 来查看如何寻址image.at<>(point())。它回馈了0,所以我输入了image.at<int>()

但它返回的只是数百万的数字,而不是我所期望的;介于0255 之间。

我用.channel()查看频道数;这是1,所以我认为应该没问题。

我做错了什么?

【问题讨论】:

    标签: image opencv pixel


    【解决方案1】:

    “它返回 0,所以我输入了 image.at<int>()。”

    type==0 那是 uchar,不是 int。

    尝试:

    mat.at<uchar>(row,col); 
    

    改为

    【讨论】:

      【解决方案2】:

      如果您的数据是unsigned char,则将像素索引为img.at&lt;uchar&gt;(row,col)

      【讨论】:

      • 谢谢。我将它归一化为浮点数,因为 uchar 似乎对我不起作用;归一化(图像,dst,0,255,NORM_MINMAX,CV_32F)。
      【解决方案3】:

      也许您应该事先尝试将其标准化为 0 到 255 之间的值?使用cv::normalize,alpha = 0 和 beta = 255。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-29
        • 1970-01-01
        • 2013-07-28
        • 1970-01-01
        • 2014-01-03
        • 2011-03-18
        • 2013-04-13
        相关资源
        最近更新 更多