Решил проблему с качеством загружаемых картинок. При загрузке картинок получался размытый фон и на каталожной съемке (с белым фоном) фон плыл серыми полосами. На форуме предлагалось несколько решений, таких как увеличить качество сжатия до 100 и т.д. На мой взгляд проблема в компиляторе изображений в самом php. Проблема оказалась не нова в сообществе интернет-магазинов. Необходимо в файле system/library/image.php после строк
imagecopyresampled($this->image, $image_old, $xpos, $ypos, 0, 0, $new_width, $new_height, $this->info['width'], $this->info['height']);
imagedestroy($image_old);
вставить :
// Это - цвет на который будем заменять (белый)
$colorWhite = imagecolorallocate($this->image, 255, 255, 255);
// Пробегаем все пиксели на изображении по вертикали и горизонтали
for($y=0; $y<($height); ++$y)
{
for($x=0; $x<($width); ++$x)
{
$colorat=imagecolorat($this->image, $x, $y);
$r = ($colorat >> 16) & 0xFF;
$g = ($colorat >> 8) & 0xFF;
$b = $colorat & 0xFF;
// Если цвет пикселя нас не устраивает, заменяем его на белый
if((($r == 253)||($r == 254))&&(($g == 253)||($g == 254))&&(($b == 253)||($b == 254))) {
imagesetpixel($this->image, $x, $y, $colorWhite);
}
}
}
Как видно из кода - чистим скомпилированную картинку в пределах 253,253,253 по RGB, избавляемся от шумов. Сохраняем. Вауля - проблемы нет.