5Computational Techniques

A field‐programmable gate array (FPGA) implementation is amenable to a wider range of computational techniques than a software implementation because it can be used to build the specific computational architecture required. Some of the computational considerations and techniques are reviewed in this section. Several of these form the basis for the calculations used within many of the image processing operations described in Chapters 14.

5.1 Number Systems

In any image processing computation, the numerical values of the pixels, coordinates, features, and other data must be represented and manipulated. There are many different number systems that can be used. A full discussion of number systems and associated logic circuits for performing basic arithmetic operations is beyond the scope of this book. The interested reader should refer to one of the many good books available on computer arithmetic (for example (Parhami, 2000)).

5.1.1 Binary Integers

Arguably, the most common representation is based on binary, or base‐two numbers. As illustrated in Figure 5.1, a positive binary integer, upper X, is represented by a set of upper B binary digits, b Subscript i, where each digit weights ...

Get Design for Embedded Image Processing on FPGAs, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.