
hashsearch - การค้นหาภาพย้อนกลับโดยใช้การรับรู้แฮช -HashSearch เป็นเครื่องมือค้นหาภาพย้อนกลับแบบย้อนกลับที่ใช้งานง่ายและใช้งานง่ายซึ่งใช้ประโยชน์จากการรับรู้แฮช
วิธีที่ง่ายที่สุดคือดาวน์โหลดจากรุ่น
คุณสามารถสร้าง hashsearch จากซอร์สโค้ด:
git clone https://github.com/burntcarrot/hashsearch
cd hashsearch
go build -o ./bin/hashsearch api/v1/main.go hashsearch -config <CONFIG_FILE_PATH>
หากไม่มีการจัดเตรียม -config ค่าเริ่มต้น hashsearch เป็น <HOME_DIR>/.hashsearch/config.yml config.yml
hashsearch เรียกใช้เซิร์ฟเวอร์บนที่อยู่ที่กำหนดค่าและเปิดเผย API เพื่อโต้ตอบกับ
API นั้นง่ายมาก สองเส้นทางหนึ่งเส้นทางสำหรับการค้นหาและอีกเส้นทางหนึ่งสำหรับการรับรายการรูปภาพ
/v1/searchโพสต์ภาพโดยใช้ข้อมูลแบบฟอร์มรับรายการรูปภาพ (เรียงตามระยะทางน้อยที่สุด):
curl --location --request POST ' localhost:8081/v1/search '
--form ' file=@"star.png" 'การตอบสนอง:
[
{
"path" : " files/star.png " ,
"distance" : 0 ,
"hash" : " 0000000000010000111100001111110011111100111100000001000000000000 "
},
{
"path" : " files/star-new.png " ,
"distance" : 4 ,
"hash" : " 0001000000110000111100001111110011111100111100000011000000010000 "
},
{
"path" : " files/random.png " ,
"distance" : 28 ,
"hash" : " 0000000110000000110000100010001111110010010001100000011110000110 "
}
]/v1/listรับรายการรูปภาพทั้งหมด:
curl --silent 'localhost:8081/v1/list'
การตอบสนอง:
[
{
"path" : " files/random.png " ,
"distance" : 0 ,
"hash" : " 0000000110000000110000100010001111110010010001100000011110000110 "
},
{
"path" : " files/star-new.png " ,
"distance" : 0 ,
"hash" : " 0001000000110000111100001111110011111100111100000011000000010000 "
},
{
"path" : " files/star.png " ,
"distance" : 0 ,
"hash" : " 0000000000010000111100001111110011111100111100000001000000000000 "
}
] ไฟล์การกำหนดค่าเป็นไฟล์ .yaml ง่าย ๆ :
db :
url : " data.db " # Database URL.
server :
addr : " localhost:8081 " # Server address.
files :
dir : " /files " # Directory where the images would be saved.
cors :
allow_origin : " * " # CORS Allow-Origin value.
logging :
file : " /hashsearch.log " # Log file path. คุณอัปโหลดรูปภาพโดยใช้ /v1/search :
hashsearch สร้างสำเนารูปภาพของคุณhashsearch เก็บภาพที่คัดลอกไว้ใน FILES_DIR ซึ่งสามารถกำหนดค่าได้hashsearch สร้างแฮชเมื่อคุณโพสต์ภาพและบันทึกลงในฐานข้อมูลhashsearch คำนวณระยะทางระหว่างภาพที่โพสต์และรูปภาพอื่น ๆ และส่งคืนผลลัพธ์เป็นการตอบกลับ JSONหากคุณมีแอปพลิเคชันขนาดเล็กและคุณไม่ต้องการใช้ประโยชน์จากการพึ่งพา/ระบบขนาดใหญ่สิ่งนี้ควรทำงานได้ดี
เป็นทางออกที่ดีที่สุดหรือไม่? ไม่จริง แต่ถ้าคุณต้องการวิธีแก้ปัญหาที่ง่ายและรวดเร็วสิ่งนี้น่าจะดีพอ
มันฉายเร็วหรือไม่? อีกครั้งไม่แน่ใจเกี่ยวกับเรื่องนี้ ฉันไม่ได้ทดสอบมันในชุดภาพขนาดใหญ่
hashsearch ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT
ดูเหมือนว่ามันเป็นหนึ่งในแรงบันดาลใจที่อยู่เบื้องหลังโครงการนี้
นี่ไม่ใช่วิธีการค้นหาภาพย้อนกลับในพื้นที่ส่วนใหญ่ ฉันแค่อยากจะสนุกกับการรับรู้แฮช
แฮชเฉลี่ยไม่เป็นไรสำหรับกรณีส่วนใหญ่ แต่มันต้องดิ้นรนในบางพื้นที่ดังนั้นตัวเลือกที่ดีกว่าคือการใช้ dhash/phash
ฉันกำลังทำงานอย่างแข็งขันใน การค้นหาวิดีโอย้อนกลับ คาดว่ามันจะเป็นส่วนหนึ่งของการเผยแพร่ในอนาคต
จะมีการเพิ่มเว็บ UI ที่ดีและดีในไม่ช้า