我有一些存储在mysql中的哈希值,我将通过汉明距离进行比较.
存储的哈希值如下:
qw 1 ffe71b001820a1fd
qw 2 ffffb81c1c3838a0
qw 3 fff8381c1c3e3828
qw 4 fffa181c3c2e3920
qw 5 fffa981c1c3e2820
qw 6 ff5f1c38387c1c04
qw 7 fff1e0c1c38387ef
qw 8 fffa181c1c3e3820
qw 9 fffa381c1c3e3828
Run Code Online (Sandbox Code Playgroud)
我通常会像:
SELECT product_id, HAMMING_DISTANCE(phash, 'phashfromuserinput') ;
Run Code Online (Sandbox Code Playgroud)
但是在mysql汉明距离是按位运算符,如果字符串只是数字,我可以这样做:
SELECT pagedata,BIT_COUNT(pagecontent^'$encrypted')searchengine WHERE pagecontent > 2 ; ")
Run Code Online (Sandbox Code Playgroud)
它仅适用于整数(数字),但我的要求是使用数字和字母,例如:
74898fababfbef46 and 95efabfeba752545
Run Code Online (Sandbox Code Playgroud)
从我的小研究中我知道,首先我必须将字段转换为binary然后使用或bitcount使用:CASTCONVERT
SELECT BIT_COUNT( CONV( hash, 2, 10 ) ^
0b0000000101100111111100011110000011100000111100011011111110011011 )
Run Code Online (Sandbox Code Playgroud)
要么
SELECT BIT_COUNT(CAST(hash AS BINARY)) FROM data;
Run Code Online (Sandbox Code Playgroud)
这可以将数据转换为binary和使用bitcount.现在问题出现了该varbinary存储在字符/哈希值mysql …
我有100张图片,视觉上相似,我需要搜索重复的图片.我有一个算法可以匹配相同的颜色/模式/编辑等,但它不支持裁剪.意思是如果两个相似的图像,其中一个被裁剪,结果将是不同的.
我需要算法,它可以匹配两个相似的图像,尽管裁剪,不知何故像tineye作品.我得到了一些参考但没有任何效果.
这是一篇供参考的示例文章.
在简单的搜索表单中,如果我们搜索1232,我们得到的单词存储在给定的表中我们从db使用简单的查询同样select 'word' from 'dawat' where counting ='%$term%'2454为狗获取cat ,依此类推.表格代码:
<form action="upload.php" method="get" >
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="submit" name="submit">
</form>
Run Code Online (Sandbox Code Playgroud)
和db中的表:
counting word
1232 cat
2454 dog
4844 fish
7785 goat
Run Code Online (Sandbox Code Playgroud)
现在,它工作正常,问题是如果多个查询具有相同的值我们如何存储在mysql.Suppose中,所有不同的no.有相同的价值,即猫,所以我们可以正常存储像:
counting word
1232 cat
2454 cat
4844 cat
7785 cat
Run Code Online (Sandbox Code Playgroud)
这就是我们如何为单个制作不同的颜色.现在,主要的问题是如何将所有不同的指定用于存储在单个coloumn中的获取cat,如:
counting word
1232,2454,4844,7785 cat
5785,4577,9644,6549 dog
Run Code Online (Sandbox Code Playgroud) 在简单的分页中,点击不同的时候没有.1,2,3,4,表中的记录没有按预期变化.
我5在每个页面上显示记录,就像点击1它显示从表1到的记录5,依此类推.但是,它没有改变.帮助我.
<?php
mysql_connect("localhost","root","");
mysql_select_db("bluewater");
$page = $_GET["page"];
if($page=="" || $page=="1")
{
$page1=0;
}
else
{
$page1=($page*5)-5;
}
$sql=mysql_query("select * from countries limit 1,5");
while($ser = mysql_fetch_array($sql)) {
echo $ser["ccode"];
echo $ser["country"];
echo "<br>";
}
$sql=mysql_query("select * from countries");
$cou=mysql_num_rows($sql);
$a=$cou/5;
$a= ceil ($a);
echo "<br>"; echo "<br>";
for ($b=1;$b<=$a;$b++)
{
?><a href="index.php?page=<?php echo $b; ?>" style="text-decoration:none"><?php echo $b." ";?></a> <?php
}
?>
Run Code Online (Sandbox Code Playgroud)