#### 从wiki上看到了Laser Speckle pattern，感觉很有意思啊，用这个做三维测量在某些情况下效果应该比普通的条状结构光好，而且貌似微软的Kinect也用了这一技术。

A **speckle pattern** is a random intensity pattern produced by the mutual interference of a set of wavefronts.^{[1]} This phenomenon has been investigated by scientists since the time of Newton, but speckles have come into prominence since the invention of the laser and have now found a variety of applications.

## Occurrence

A familiar example is the random pattern created when a laser beam is scattered off a rough surface - see picture. A less familiar example of speckle is the highly magnified image of a star through imperfect optics or through the atmosphere (see speckle imaging). A speckle pattern can also be seen when sunlight is scattered by a fingernail.^{[2]}

The speckle effect is observed when radio waves are scattered from rough surfaces such as ground or sea, and can also be found in ultrasonic imaging. In the output of a multi-mode optical fiber, a speckle pattern results from a superposition of mode field patterns. If the relative modal group velocities change with time, the speckle pattern will also change with time. If differential mode attenuation occurs, modal noise results.^{[3]}

## Explanation

The speckle effect is a result of the interference of many waves of the same frequency, having different phases and amplitudes, which add together to give a resultant wave whose amplitude, and therefore intensity, varies randomly. If each wave is modelled by a vector, then it can be seen that if a number of vectors with random angles are added together, the length of the resulting vector can be anything from zero to the sum of the individual vector lengths—a 2-dimensional random walk, sometimes known as a drunkard's walk.

When a surface is illuminated by a light wave, according to diffraction theory, each point on an illuminated surface acts as a source of secondary spherical waves. The light at any point in the scattered light field is made up of waves which have been scattered from each point on the illuminated surface. If the surface is rough enough to create path-length differences exceeding one wavelength, giving rise to phase changes greater than 2π, the amplitude, and hence the intensity, of the resultant light varies randomly.

An analogy with water waves may help to understand the speckle phenomenon. Imagine a very large, totally still rectangular pool of water. First consider what happens when someone vibrates a stick at one end of the pool at a constant frequency and amplitude; a circular wavefront is propagated along the surface of the pool. Assume that the pool is large enough that we don't need to consider reflections from the sides or the ends. Now consider what happens if a large number of people, all located at random positions at the end of the pool, vibrate sticks at the same frequency, but varying amplitudes and phases. Each vibrator produces a circular wavefront. At any point along the pool, the movement of the surface is the sum of the individual waves, and is a vibration at the same frequency as the source vibrators. The amplitude and phase of the surface wave at any given point are fixed, but both vary randomly across the surface. At first sight, it will appear that the disturbance in the pool is totally random, but on a closer look, it will be seen that a repeating pattern occurs over one cycle of the vibrating frequency. The average energy of the vibration (which is proportional to the square of the maximum amplitude) at any point, is constant over time, but varies randomly across the surface of the pool. When we observe an illuminated surface, we detect the average energy of the light at the surface; thus the brightness of a given point on a surface which has been illuminated by a set of random scatterers with a single frequency, is constant over time, but varies randomly from point to point, i.e. it is a speckle pattern.

If light of low coherence (i.e. made up of many wavelengths) is used, a speckle pattern will not normally be observed, because the speckle patterns produced by individual wavelengths have different dimensions and will normally average one another out. However, speckle patterns can be observed in polychromatic light in some conditions.^{[2]}