Imagick конвертирует AdobeRGB в SRGB, не сохраняя цвета

Я должен работать с изображением с PHP GD. Проблема в том, что когда я копирую оригинальную картинку, цвета не совпадают.

Люди говорили мне, чтобы я преобразовал мой jpg в профиль sRGB вместо AdobeRPG.

Итак, я сделал это:

$image = new Imagick($chemin_image);

// Essayer de mettre en SRGB si ce n'est pas le cas
$icc_srgb = file_get_contents('../../admin-cache/outils/sRGB_IEC61966-2-1_black_scaled.icc');

$image->setImageProfile('icc' , $icc_srgb);
$image->setImageColorspace(Imagick::COLORSPACE_SRGB);

$image->writeImage($chemin_image);

Но это ничего не меняет, моя картинка все еще не такая оригинальная:

RGB-изображение

Я зашел в Фейсбук, чтобы посмотреть, как он работает в своей собственной системе загрузки, я попытался с моей фотографией, и есть результат:

facebook-преобразования

Это очень хорошо работает, но я понятия не имею, как они это сделали.

0

Решение

Вы можете проверить данные изображения, используя это в php и IM V6:

system( "identify -verbose bfbf1b7ec569ff2ba4c451d48e9d39d8.jpg" );

Глядя на ваши первые две фотографии, одна была чересстрочной, а другая — нет, а качество было немного другим. Когда вы попадаете в профили, они разные:

Профили:
Profile-8bim: 62 байта
Profile-icc: 3048 байт
Профиль-iptc: 50 байт
Byline [2,80]: DonneMoiFaim
Строка авторского права [2,116]: Copyright2016, DonneMoiFaim

Профили:
Profile-8bim: 116 байт
Profile-icc: 3048 байт
Профиль-iptc: 103 байта
Специальные инструкции [2,40]: FBMD01000a840d0000d95d0000baa200001cad000070bc0000a8ce00000c290100fa3c0100fc4f0100b966010071110200

Но вы не знаете, что делает код Facebook; это может быть добавление некоторой резкости или некоторого другого твика.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]