网友回复
<?php
echo "图1<img width=\"100\" src='/asset/testimg1.png' /></br>";
echo "图2<img width=\"100\" src='/asset/testimg2.png' /></br>";
echo "图3<img width=\"100\" src='/asset/testimg3.png' /></br>";
echo "图1与图2是否相似";
$aHash = ImageHash::hashImageFile('/data/wwwroot/default/asset/testimg1.png');
$bHash = ImageHash::hashImageFile('/data/wwwroot/default/asset/testimg2.png');
var_dump(ImageHash::isHashSimilar($aHash, $bHash));
echo "</br>";
echo "图1与图2是否相似";
$aHash = ImageHash::hashImageFile('/data/wwwroot/default/asset/testimg1.png');
$bHash = ImageHash::hashImageFile('/data/wwwroot/default/asset/testimg3.png');
var_dump(ImageHash::isHashSimilar($aHash, $bHash));
/**
* 图片相似度比较
* //Sample_1
* $aHash = ImageHash::hashImageFile('wsz.11.jpg');
* $bHash = ImageHash::hashImageFile('wsz.12.jpg');
* var_dump(ImageHash::isHashSimilar($aHash, $bHash));
* //Sample_2
* var_dump(ImageHash::isImageFileSimilar('wsz.11.jpg', 'wsz.12.jpg'));
*/
class ImageHash {
/**取样倍率 1~10 数值越高匹配越准确
* @access public
* @staticvar int
* */
public static $rate = 2;
/**相似度允许值 0~64 数值越高 匹配精度越准确
* @access public
* @staticvar int
* */
public static $similarity = 60;
/**图片类型对应的开启函数
* @access private
* @staticvar string
* */
private static $_createFunc = array(
IMAGETYPE_GIF => 'imageCreateFromGIF',
IMAGETYPE_JPEG => 'imageCreateFromJPEG',
IMAGETYPE_PNG => 'imageCreateFromPNG',
IMAGETYPE_BMP => 'imageCreateFromBMP',
IMAGETYPE_WBMP => 'imageCreateFromWBMP',
IMAGETYPE_XBM => 'imageCreateFromXBM',
);
/**比较两个图片文件,是不是相似
* @param string $aHash A图片的路径
* @param string $bHash B图片的路径
* @return bool 当图片相似则传递 true,否则是 false
* */
p...点击查看剩余70%
python能写一个检测nginx rewrite高危漏洞的工具代码?
css如何给video视频进行mask遮罩?
windows如何同时允许两个用户远程桌面连接同一个电脑?
nginx升级到1.30.1导致无法启动 [emerg] SSL_CTX_new() failed怎么办?
什么是ASLR(地址随机化)?
有没有不依赖embedding向量的RAG技术?
有没有支持实时打断语音通话并后台帮你执行任何的ai模型?
开源ai大模型文件格式GGUF、MLX、Safetensors、 ONNX 有什么区别?
出海挣钱支付收款PayPal、Wise 、PingPong、Stripe如何选择?
如何实现类似google的图片隐形水印添加和识别技术?


