function getNextIteratorRow($image_path) { $imagick = new \Imagick(realpath($image_path)); $imageIterator = $imagick->getPixelIterator(); $count = 0; while (($pixels = $imageIterator->getNextIteratorRow())) { if (($count % 3) == 0) { /* Loop through the pixels in the row (columns) */ foreach ($pixels as $column => $pixel) { /** @var $pixel \ImagickPixel */ if ($column % 2) { /* Paint every second pixel black*/ $pixel->setColor("rgba(0, 0, 0, 0)"); } } /* Sync the iterator, this is important to do on each iteration */ $imageIterator->syncIterator(); } $count += 1; } header("Content-Type: image/jpeg"); echo $imagick; }