毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 开发语言 >> 正文

MFC大恒相机如何利用ConvertBayer2Rgb获取图像某一点的RGB

更新时间:2014-5-30:  来源:毕业论文

函数申明为
void __stdcall ConvertBayer2Rgb(BYTE *pDest,BYTE *pSrce, int nWid,int nHei,HV_BAYER_CONVERT_TYPE cvtype,BYTE* pLutR,BYTE* pLutG, BYTE* pLutB,bool bFlip,HV_BAYER_LAYOUT Layout);
参数
/*
\brief  bayer图像转换成RGB图像函数
\param  pDest   [out]数据输出buffer指针(24位RGB图像)
\param  pSrce   [in]数据输入buffer指针(8位Raw图像)
\param  nWid    [in]图像宽
\param  nHei    [in]图像高
\param  cvtype  [in]插值算法类型
\param  pLutR   [in]R分量数字增益查找表
\param  pLutG   [in]G分量数字增益查找表
\param  pLutB   [in]B分量数字增益查找表
\param  bFlip   [in]图像翻转标记 true:翻转 false:不翻转
\param  Layout  [in]bayer类型
return  void 
*/
//--------------------------------------------------
 
定义函数
ConvertBayer2Rgb(m_pImageBuffer,m_pRawBuffer,Width,Height,ConvertType,
        m_pLutR,m_pLutG,m_pLutB,true,m_Layout);
 
BYTE m_pLutR[256] ;      
BYTE m_pLutG[256] ;      
BYTE m_pLutB[256] ;
 
for(int i=0;i<256;i++)
    {
        m_pLutR[i] = i;
        m_pLutG[i] = i;
        m_pLutB[i] = i;
    }  


请问如何利用该函数分辨出图像某一区域偏于白色还是偏于蓝色,或者如何获得某一点的R值G值B值?m_pLutR,m_pLutG,m_pLutB这三个能转换成RGB数值吗
楼主现在需要做的,是去了解RGB格式图像在内存中是如何存储的,而不是希望有一个函数能帮你做任何事情
*(首指针+行数*每行长度+列数*3+分量号),就这么简单
当中的m_pImageBuffer就是你的RGB数据啊,只不过这个是24位的,你需要隔3个字节取一次数据就是对应的R(或B或G)值。

我也在用大恒的相机,说实话我特别不喜欢这个ConvertBayer2Rgb函数,其实数据我已经取到了,只不过是raw数据,用这个函数只不过是转成RGB模式的。明明我是8位的,非得给我转成24位的,增加了我处理的时间,害的我还要再转成8位的。我要是弄清楚了你那个什么layer数据的格式,我不会用你这个垃圾函数!

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。