Image Processing Toolbox    

Overlap

When you call blkproc to define distinct blocks, you can specify that the blocks overlap each other, that is, you can specify extra rows and columns of pixels outside the block whose values are taken into account when processing the block. When there is an overlap, blkproc passes the expanded block (including the overlap) to the specified function.

Figure 6-4 shows the overlap areas for some of the blocks in a 15-by-30 matrix with 1-by-2 overlaps. Each 4-by-8 block has a one-row overlap above and below, and a two-column overlap on each side. In the figure, shading indicates the overlap. The 4-by-8 blocks overlay the image matrix starting in the upper-left corner.

Figure 6-4: An Image Divided into Distinct Blocks With Specified Overlaps

To specify the overlap, you provide an additional input argument to blkproc. To process the blocks in the figure above with the function myfun, the call is

Overlap often increases the amount of zero padding needed. For example, in Figure 6-3, the original 15-by-30 matrix became a 16-by-32 matrix with zero padding. When the 15-by-30 matrix includes a 1-by-2 overlap, the padded matrix becomes an 18-by-36 matrix. The outermost rectangle in the figure delineates the new boundaries of the image after padding has been added to accommodate the overlap plus block processing. Notice that in the figure above, padding has been added to the left and top of the original image, not just to the right and bottom.


  Distinct Block Operations Column Processing