Pooling is the process of reducing the complexity of the input image (its size and variation of pixel values). Its underlying concepts, and an analysis of its usefulness, is fully described in Pooling operators. The following functions are available pooling in Gnuastro. Just note that unlike the Arithmetic operators, the output of these functions should contain a correct WCS in their output.

- Function:

`gal_data_t *`

**gal_pool_max**`(gal_data_t`

¶`*input`

, size_t`psize`

, size_t`numthreads`

) Return the max-pool of

`input`

, assuming a pool size of`psize`

pixels. The number of threads to use can be set with`numthreads`

.

- Function:

`gal_data_t *`

**gal_pool_min**`(gal_data_t`

¶`*input`

, size_t`psize`

, size_t`numthreads`

) Return the min-pool of

`input`

, assuming a pool size of`psize`

pixels. The number of threads to use can be set with`numthreads`

.

- Function:

`gal_data_t *`

**gal_pool_sum**`(gal_data_t`

¶`*input`

, size_t`psize`

, size_t`numthreads`

) Return the sum-pool of

`input`

, assuming a pool size of`psize`

pixels. The number of threads to use can be set with`numthreads`

.

- Function:

`gal_data_t *`

**gal_pool_mean**`(gal_data_t`

¶`*input`

, size_t`psize`

, size_t`numthreads`

) Return the mean-pool of

`input`

, assuming a pool size of`psize`

pixels. The number of threads to use can be set with`numthreads`

.

- Function:

`gal_data_t *`

**gal_pool_median**`(gal_data_t`

¶`*input`

, size_t`psize`

, size_t`numthreads`

) Return the median-pool of

`input`

, assuming a pool size of`psize`

pixels. The number of threads to use can be set with`numthreads`

.

GNU Astronomy Utilities 0.22 manual, February 2024.