One of the strengths of OpenGL is that it provides tools for both image processing and 3D rendering. OpenGL is designed with the understanding that many image processing tools are useful for 3D graphics and vice versa. For example, convolution may be used to implement depth-of-field effects. Conversely, many operations typically thought of as image processing operations may be cast as geometric rendering and texture mapping operations. Electronic light tables (ELTs), used in defense imaging, require image transformations which can be implemented using OpenGL's textured drawing capabilities. This section demonstrates how to apply the pixel transfer pipeline, texturing, and fragment operations to the image processing problems of color manipulation, convolution, and image warping.