Lambertian 反射(也叫理想散射)

(总结整合几篇blog和一些国外图书的内容)

常见的反射类型分为:Lambertian反射、理想镜面反射、Lambertian反射与镜面反射相结合

1.Lambertian反射(也叫理想散射)

Lambertian表面是指在一个固定的照明分布下从所有的视场方向上观测都具有相同亮度的表面,Lambertian表面不吸收任何入射光.Lambertian反射也叫散光反射,不管照明分布如何,Lambertian表面在所有的表面方向上接收并发散所有的入射照明,结果是每一个方向上都能看到相同数量的能量.




维基百科的解释:http://en.wikipedia.org/wiki/Lambertian

在计算机图像学中,Phong光照模型:http://www.cnblogs.com/dosomething/archive/2011/10/20/2218369.html

Lambertian 反射(也叫理想散射)_第1张图片

SurfaceColor = Emissive + Ambient + Diffuse + Specular 

最终表面   = 放射光  + 环境光  +  漫反射 + 镜面反射

放射光:

Lambertian 反射(也叫理想散射)_第2张图片

  Emissive = Ke               

  Ke为材质放射的颜色

环境光:

Lambertian 反射(也叫理想散射)_第3张图片

  Ambient = Ka * GlobalAmbient        

  Ka为材质环境光反射系数;GlobalAmbient为全局环境光的颜色

 

漫反射:

Lambertian 反射(也叫理想散射)_第4张图片

Lambertian 反射(也叫理想散射)_第5张图片

  Diffuse   = Kd * LightColor * max( dot(N, L), 0)

  Kd为材质漫反射颜色;LightColor为漫反射光的颜色;N是规范化后的表面法向量;L是规范化后指向光源的向量;

  max(x, y)函数返回x和y的最大值;dot(x, y)函数返回x向量和y向量的内积

 

镜面反射:

Lambertian 反射(也叫理想散射)_第6张图片

Lambertian 反射(也叫理想散射)_第7张图片

  Specular = Ks * LightColor * pow( max(dot(N, H), 0), fShinines )

  Ks是材质镜面反射的颜色;LightColor是镜面反射光的颜色;N是规范化后的表面法向量;H是规范化后的L和V的中间向量(即规范化后的L+V),其中V是规范化后指向视点的向量

  pow(x, y)函数返回x的y次方;

 

  这里dot(N, L)如果小于等于0,即Diffuse为0,则Specular为0。确保了镜面反射的高光不会出现在背向灯光的地方

  



你可能感兴趣的:(计算机视觉,计算机视觉,图像处理)