码迷,mamicode.com
首页 > 其他好文 > 详细

数字图像处理(1)-图片信息获取和RGB-HSI

时间:2015-01-12 11:36:25      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:图像处理


数字图像处理 信息获取

struct Rgb

{
    unsigned char    b;
    unsigned char    g;
    unsigned char    r;
};
lpSrc=(unsigned char*)pDoc->m_pDib->m_lpImage +
          lLineBytes*(lHeight - 1 -point.y) + point.x*3;
Rgb rgb;

rgb.b=*lpSrc;

rgb.g=*(lpSrc+1);

rgb.r=*(lpSrc+2);


亮度

int gray=(int)(0.114*rgb.r+0.587*rgb.g+0.299*rgb.b)



RGB到HSI图片信息采集


技术分享


编码如下

R = ((double) pRgb->r) / 255.0;
G = ((double) pRgb->g) / 255.0;
B = ((double) pRgb->b) / 255.0;

Sum = R + G + B;
pHsi->Intensity = Sum / 3.0;

MinValue = (R < G) ? R : G;
MinValue = (B < MinValue) ? B : MinValue;
MaxValue = (R > G) ? R : G;
MaxValue = (B > MaxValue) ? B : MaxValue;
if(pHsi->Intensity < 0.00001)
    pHsi->Saturation = ZERO_SATURATION;
else
    pHsi->Saturation = 1.0 - (3.0 * MinValue) / Sum;

if(MinValue == MaxValue){
    pHsi->Hue = UNDEFINED_HUE;
    pHsi->Saturation = ZERO_SATURATION;
    return;
    }

TempDouble1 = (((R - G) + (R - B)) / 2.0);
    TempDouble2 = (R - G) * (R - G) + (R - B) * (G - B);
    Quotient = (TempDouble1 / sqrt(TempDouble2));
    Radians = acos(Quotient);
    Angle = Radians * DEGREES_PER_RADIAN;
    pHsi->Hue =(B>G)? 360.0 – Angle : Angle;






    







数字图像处理(1)-图片信息获取和RGB-HSI

标签:图像处理

原文地址:http://blog.csdn.net/wuheshi/article/details/42639799

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!