Phong reflection model: Difference between revisions

Content deleted Content added
OAbot (talk | contribs)
m Open access bot: hdl added to citation with #oabot.
Citation bot (talk | contribs)
Alter: pages. Removed parameters. Formatted dashes. | You can use this bot yourself. Report bugs here. | Activated by Neko-chan | Category:Computer_graphics_algorithms | via #UCB_Category
Line 48:
When implementing the Phong reflection model, there are a number of methods for approximating the model, rather than implementing the exact formulas, which can speed up the calculation; for example, the [[Blinn–Phong reflection model]] is a modification of the Phong reflection model, which is more efficient if the viewer and the light source are treated to be at infinity.
 
Another approximation<ref>{{cite web |url=http://dicklyon.com/tech/Graphics/Phong_TR-Lyon.pdf |title=Phong Shading Reformulation for Hardware Renderer Simplification |last1=Lyon |first1=Richard F. |date= August 2, 1993 |work= |publisher= |accessdate=7 March 2011}}</ref> that addresses the calculation of the exponentiation in the specular term is the following: Considering that the specular term should be taken into account only if its dot product is positive, it can be approximated as
 
:<math>\max(0, \hat{R}_m \cdot \hat{V})^\alpha = \max(0, 1-\lambda)^{\beta \gamma} = \left(\max(0,1-\lambda)^\beta\right)^\gamma \approx \max(0, 1 - \beta \lambda)^\gamma </math>
Line 86:
Because of the powers of two in the equation there are two possible solutions for the normal direction. Thus some prior information of the geometry is needed to define the correct normal direction. The normals are directly related to angles of inclination of the line on the object surface. Thus the normals allow the calculation of the relative surface heights of the line on the object using a line integral, if we assume a continuous surface.
 
If the object is not cylindrical, we have three unknown normal values <math>N=[N_x, N_y, N_z]</math>. Then the two equations still allow the normal to rotate around the view vector, thus additional constraints are needed from prior geometric information. For instance in [[facial recognition system|face recognition]] those geometric constraints can be obtained using [[principal component analysis]] (PCA) on a database of depth-maps of faces, allowing only surface normals solutions which are found in a normal population.<ref>{{cite journal| title=Model-Based Illumination Correction for Face Images in Uncontrolled Scenarios|date=September 2009| author=Boom, B.J. and Spreeuwers, L.J. and Veldhuis, R.N.J.| journal= Lecture Notes in Computer Science| volume=5702| pages=33–40| doi=10.1007/978-3-642-03767-2 | issue=2009| series=Lecture Notes in Computer Science| editor1-last=Jiang| editor1-first=Xiaoyi| editor2-last=Petkov| editor-link2= Nicolai Petkov| editor2-first=Nicolai| isbn=978-3-642-03766-5| url=https://halshs.archives-ouvertes.fr/halshs-00420059/document| bibcode=2009LNCS.5702.....J| hdl=11693/26732| hdl-access=free}}</ref>
 
== Applications ==
The Phong reflection model is often used together with [[Phong shading]] to shade surfaces in [[3D computer graphics]] software. Apart from this, it may also be used for other purposes. For example, it has been used to model the reflection of [[thermal radiation]] from the [[Pioneer program|Pioneer probes]] in an attempt to explain the [[Pioneer anomaly]].<ref>{{cite journal|title=Modelling the reflective thermal contribution to the acceleration of the Pioneer spacecraft|author1=F. Francisco |author2=O. Bertolami |author3=P. J. S. Gil |author4=J. Páramos |doi=10.1016/j.asr.2011.10.016|year=2012|journal=Advances in Space Research|volume=49|issue=3|pages=579337–346|arxiv=1103.5222|bibcode=2012AdSpR..49..579S}}</ref>
 
== See also ==