Просмотр полной версии : Задачка с 2-мя картинками
есть 2 картинки в формате Jpg, я их переделаю в формат Bmp, обе одинакового размера. надо сравнить их по пикселам по цвету, вывести кол-во одинаковых и разных пикселов. интересует сабж - чем это можно сделать.
halkfild
25.11.2007, 15:29
ну можно на пхп, можно на с.. инструментарий без разницы..
открываешь файл.. делаешь смещение на служебную инфу.. типа: размер битность и тд.. а потом побайтно читаешь и сравниваешь
*Добавлено все намного проще если юзать графику пхп
<?php
function get_colors($location) {
$image = imagecreatefromjpeg($location);
$size = getimagesize($location);
for ($w = 1; $w < $size[0]; $w++) {
for ($h = 1; $h < $size[1]; $h++) {
$colors[$w."x".$h] = imagecolorat($image, $w, $h);
}
}
imagedestroy($image);
return $colors;
}
function check_images($colors1, $colors2) {
$ok = 0;
$pixels1 = sizeof($colors1);
$pixels2 = sizeof($colors2);
if ($pixels1 != $pixels2) {
return false;
}
foreach ($colors1 as $key => $value) {
if (isset($colors2[$key]) && $colors2[$key] == $value) {
$ok++;
}
}
$new_percent = ($ok / $pixels1) * 100;
return round($new_percent, 2);
}
$image1 = get_colors("image1.jpg");
$image2 = get_colors("image2.jpg");
$result = check_images($image1, $image2);
if ($result) {
echo ($result > 70) ? "Картинки одинаковые" : "Картинки разные";
echo "<br />\n";
echo "Процент совпадения: ".$result."%";
}
?>
соурс видел где-то в нете на слаеде вродь
с меня кодер как с ... думаю ты понял:) иначе бы не просил.
мне админ с одного развлекательно-убойного-угарного сайта обещал за поиск расзличий в картинках:
***** (13:55:41 25/11/2007)
Получишь оранжевую мясорубку! Паша никогда не обманывает!
demonoid
25.11.2007, 16:04
есть 2 картинки в формате Jpg, я их переделаю в формат Bmp, обе одинакового размера. надо сравнить их по пикселам по цвету, вывести кол-во одинаковых и разных пикселов. интересует сабж - чем это можно сделать.
Это можно сделать : Perl + GD( Library )
halkfild
25.11.2007, 16:07
выше описана реализация на пхп с отображением процентного соотношения схожести
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot