私はいくつかの画像処理を行っていましたが、PHPのGDとImagickは画像のサイズをピクセルの同じレベルに変更しないことが判明しました。 今の場合、256から256までの縮尺の画像が必要です* 256PHPで画像リサイズ
TESTの結果が一致することを確認するために、私は256 * 256の画像を使用し、それ自身のサイズにリサイズします。私が試みられてきたもの
:
:imagecopyresized($new, $img, 0, 0, $x, 0, $width, $height, $w, $h); //256 , 256
およびそれらの
$compression_type = imagick::COMPRESSION_NO;
$images_ima = new Imagick($image_path); //$image_path = path to image...
$images_ima->setImageCompression($compression_type);
$images_ima->setImageCompressionQuality(100);
$images_ima->sampleImage($X_SIZE,$Y_SIZE); // 256 ,256
$images_ima->writeImages($dest_path, true); //destination path
なしには、私は元の画像との出力を比較する場合、それは次のようになりますが、働いていました
両方の画像間のRGB値の変化が小さいので、私が使用した関数は画像を再サンプリングしているようです。
私は、Photoshop、OSXプレビュー、およびPixelformerでさえ、256×256から256×256までピクセルの同じサイズ変更を実現できます。 私はそれが私のPHPを行うことができますか?
ピクセルの寸法が同じであることを検出した場合、なぜimagecopyを使用しないのですか? –
私はあなたの質問を完全に理解していませんが、各画像処理ライブラリは通常、同じ正確なアルゴリズムを使用しません。あなたのテストが何であれ、彼らはそのような前提に頼ることはできません。 –