Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

6.
Charge-coupled device (CCD) <ul><li>Special sensor that captures an image </li></ul><ul><li>Light-sensitive silicon solid-state device composed of many cells </li></ul>When exposed to light, each cell becomes electrically charged. This charge can then be converted to a 8-bit value where 0 represents no exposure while 255 represents very intense exposure of that cell to light. Some of the columns are covered with a black strip of paint. The light-intensity of these pixels is used for zero-bias adjustments of all the cells. The electromechanical shutter is activated to expose the cells to light for a brief moment. The electronic circuitry, when commanded, discharges the cells, activates the electromechanical shutter, and then reads the 8-bit charge value of each cell. These values can be clocked out of the CCD by external logic through a standard parallel bus interface. Lens area Pixel columns Covered columns Electronic circuitry Electro-mechanical shutter Pixel rows

7.
Zero-bias error <ul><li>Manufacturing errors cause cells to measure slightly above or below actual light intensity </li></ul><ul><li>Error typically same across columns, but different across rows </li></ul><ul><li>Some of left most columns blocked by black paint to detect zero-bias error </li></ul><ul><ul><li>Reading of other than 0 in blocked cells is zero-bias error </li></ul></ul><ul><ul><li>Each row is corrected by subtracting the average error found in blocked cells for that row </li></ul></ul>Covered cells Before zero-bias adjustment After zero-bias adjustment Zero-bias adjustment

8.
Compression <ul><li>Store more images </li></ul><ul><li>Transmit image to PC in less time </li></ul><ul><li>JPEG (Joint Photographic Experts Group) </li></ul><ul><ul><li>Popular standard format for representing digital images in a compressed form </li></ul></ul><ul><ul><li>Provides for a number of different modes of operation </li></ul></ul><ul><ul><li>Mode used in this chapter provides high compression ratios using DCT (discrete cosine transform) </li></ul></ul><ul><ul><li>Image data divided into blocks of 8 x 8 pixels </li></ul></ul><ul><ul><li>3 steps performed on each block </li></ul></ul><ul><ul><ul><li>DCT </li></ul></ul></ul><ul><ul><ul><li>Quantization </li></ul></ul></ul><ul><ul><ul><li>Huffman encoding </li></ul></ul></ul>

10.
Quantization step <ul><li>Achieve high compression ratio by reducing image quality </li></ul><ul><ul><li>Reduce bit precision of encoded data </li></ul></ul><ul><ul><ul><li>Fewer bits needed for encoding </li></ul></ul></ul><ul><ul><ul><li>One way is to divide all values by a factor of 2 </li></ul></ul></ul><ul><ul><ul><ul><li>Simple right shifts can do this </li></ul></ul></ul></ul><ul><ul><li>Dequantization would reverse process for decompression </li></ul></ul>After being decoded using DCT After quantization Divide each cell’s value by 8

47.
Summary <ul><li>Digital camera example </li></ul><ul><ul><li>Specifications in English and executable language </li></ul></ul><ul><ul><li>Design metrics: performance, power and area </li></ul></ul><ul><li>Several implementations </li></ul><ul><ul><li>Microcontroller: too slow </li></ul></ul><ul><ul><li>Microcontroller and coprocessor: better, but still too slow </li></ul></ul><ul><ul><li>Fixed-point arithmetic: almost fast enough </li></ul></ul><ul><ul><li>Additional coprocessor for compression: fast enough, but expensive and hard to design </li></ul></ul><ul><ul><li>Tradeoffs between hw/sw – the main lesson of this book! </li></ul></ul>