Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
RaspBerry
/
Dev
/
Traitement
:
compare.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /*$image1 = 'one.png'; $image2 = 'two.png'; $i1 = imagecreatefrompng($image1); $i2 = imagecreatefrompng($image2);*/ $i1 = imagecreatefromjpeg('insert.jpg'); $i2 = imagecreatefromjpeg('bof.jpg'); // dimensions de la premiere image $sx1 = imagesx($i1); $sy1 = imagesy($i1); // compare les dimensions if ($sx1 !== imagesx($i2) || $sy1 !== imagesy($i2)) { echo "Les images non pas une taille identique"; exit(1); } // difference entre les images $diffi = imagecreatetruecolor($sx1, $sy1); $green = imagecolorallocate($diffi, 0, 255, 0); /* R V B on choisit le vert */ imagefill($diffi, 0, 0, imagecolorallocate($diffi, 0, 0, 0)); $different_pixels = 0; // comparaison de pixel par pixel ! boucle x et y for ($x = 0; $x < $sx1; $x++) { for ($y = 0; $y < $sy1; $y++) { $rgb1 = imagecolorat($i1, $x, $y); $pix1 = imagecolorsforindex($i1, $rgb1); $rgb2 = imagecolorat($i2, $x, $y); $pix2 = imagecolorsforindex($i2, $rgb2); if ($pix1 !== $pix2) { // different pixel // incremente et dessine le pixel different dans la vue diff image $different_pixels++; imagesetpixel($diffi, $x, $y, $green); } } } if (!$different_pixels) { echo "Image identique"; exit(0); } else { imagepng($diffi, 'diffy.png'); $total = $sx1 * $sy1; echo "$different_pixels pixel differents sur un total de $total , soit ", number_format(100 * $different_pixels / $total, 2), '%'; exit(1); } ?>