A three-dimensional optical inspection system reconstructs a three-dimensional
image of the shape of the surface of an at least partially specular object resident
on a printed circuit board by capturing two or more two-dimensional images of the
object under different illumination configurations. The diffuse reflection, as
well as the specular reflection can be used to reconstruct the three-dimensional
image using any reconstruction method, such as photometric stereo. The different
illumination configurations can be achieved using an illumination source including
light-emitting elements arranged in concentric circular arrays, in which each of
the circular arrays is divided into sections. Each section is independently controlled
to selectively activate the sections to illuminate the object in a pre-established
illumination pattern.