The following function applies a callback to each image in an Imagick object.
<?php
function imagickMap($callback, $im)
{
    $im->setFirstIterator();
    do
    {
        $callback($im);
    }
    while ( $im->nextImage() );
}
?>
E.g. to convert a series of images to grayscale:
<?php
imagickMap(
    function($im)
    {
        $im->setImageType(Imagick::IMGTYPE_GRAYSCALEMATTE);
    },
    $im
);
?>