如何使用phasher检测数据库中的类似图像?

时间:2013-10-09 16:24:55

标签: php image

我正在构建搜索图像引擎,所以我需要检测数据库中的类似/重复图像,我发现phasher

这个类帮助我为每个图像创建哈希字符串。我可以轻松地比较两个图像,但现在我想搜索一个大型数据库,以查找特定图像是否有任何克隆或类似图像?

如何使用图像哈希字符串进行搜索?

1 个答案:

答案 0 :(得分:0)

我认为我正在构建一个看起来像你的工具但搜索引擎的Facebook个人资料图片我称之为FBpp =“Facebook Profile Picture”;

我没有完成它,但我的目标是提高我的编程技能。

我认为这就是你要找的东西。

<?php

//Require config.php file to connect with mysql server and the db.
require_once('config.php');

//Calling PHasher class file.
include_once('phasher/phasher.class.php');
$I = PHasher::Instance();

$testImage = "./avatar/4.jpg";

$hash = $I->FastHashImage($testImage);
$hex = $I->HashAsString($hash);

$result = mysql_query("SELECT `fid`,`hash` FROM `images`");

while($row  = mysql_fetch_array($result)){
    if($row['hash'] == $hex){
        //echo $row['hash'];
        $fid = $row['fid'];
        echo "<a href='https://www.facebook.com/$fid/'><img src='https://graph.facebook.com/$fid/picture?type=large'></a>";
    }
}