PHP が画像のカラー値を取得する 2 つの方法
例 2、PHP は画像のメイン RGB カラー値を取得します。 ユーザーがアップロードした画像に基づいて画像のメインカラー値を取得し、色別に関連画像を検索します。 オンラインの方法に従って画像を拡大縮小 (またはモザイク) し、各ピクセルを走査し、RGB 回数が最も多い値をカウントします。この方法は非効率的であり、得られる RGB 値は正確ではありません。十分。 その後、Imagick の quantizeImage メソッドを使用すると、画像内の平均 RGB 値を簡単に取得できることがわかりました。 (bbs.it-home.org Scripting School) コード: ?php $average = new Imagick("xiaocai.jpg"); $average->quantizeImage( 10, Imagick::COLORSPACE_RGB, 0, false, false ); $average->uniqueImageColors(); function GetImagesColor( Imagick $im ){ $colorarr = array(); $it = $im->getPixelIterator(); $it->resetIterator(); while( $row = $it->getNextIteratorRow() ){ foreach ( $row as $pixel ){ $colorarr[] = $pixel->getColor(); } } // bbs.it-home.org return $colorarr; } $colorarr = GetImagesColor($average); foreach($colorarr as $val){ echo " "; } ログイン後にコピー 出力結果: |