How to zoom an image using a zero-order hold

Zooming is one of the important concepts of image processing. It means to enlarge an image to make the details of that image clearer and more visible.

The three most common zooming methods in image processing are the following:

  • Pixel replication or nearest neighbor interpolation

  • Zero-order hold method

  • Zooming K times

The common zooming methods

Each of the methods has its pros and cons. In this answer, we'll learn about zooming an image using a zero-order hold method.

Zero-order hold method

The zero-order hold is also known as zoom twice because we can only zoom twice by this method. Let's see how this method works.

Methodology

We pick two adjacent elements from a row in the zero-order hold method. We then add these elements. After the addition, we divide the result by two. Then the resulting number is placed between the adjacent elements we picked earlier.

Note: We apply this method row-wise first and then column-wise.

Example

We'll try to understand this method using a 2 * 2 matrix (or an image whose dimensions are two rows and two columns). Suppose we have the following matrix. Let's zoom it twice using the zero-order hold method:

1

2

3

4

To apply the zero-order hold, we follow these two steps:

  1. Row-wise zooming

  2. Column-wise zooming

Row-wise zooming

We'll take the two numbers in the first row, add them, and divide them by 22: (2+1)/2=3/2=1.5(2 + 1)/2 = 3/2 = 1.5. This is almost equal to 1, which we place in a new column between the two numbers. We apply the same method to the second row and place the resulting number between the two original numbers. The matrix of the new image would be as follows:

1

1

2

3

3

4

Note: If you get any value in decimals, use the flooring value.

Column-wise zooming

We take the first two adjacent column pixel values in the table above. We add these and divide the result by 2, giving us (1+3)/2=4/2=2(1+3)/2 = 4/2 = 2. We place this value in a new row between the original values of the first column. We then apply the same method to all the columns. The new image would look as follows:

1

1

2

2

2

3

3

3

4

Result

The dimensions produced by the zero-hold method are 3*3, while the input image had dimensions of 2*2. The formula for producing the new image would be:

Advantages

The advantages of the zero-order hold method are the following:

  • This method does not produce a blurry image, unlike the other methods.

  • We can always double the image resolution without any special effort.

  • It is easy to implement with zero computation overhead.

Disadvantages

The disadvantages of the zero-order hold method are the following:

  • This method can only run on the power of two.

  • Because of the power two, it doesn't allow us to zoom images by custom resolution.

Free Resources

Copyright ©2025 Educative, Inc. All rights reserved