محرك بحث الصور من جانب المستخدم بالكامل.
تصف الورقة CLEAR بالتفصيل.
أرخايف: https://arxiv.org/abs/2206.08521
https://clear.joisino.net/
واجهة واضحة. قم بتحميل صورة، ثم يقوم CLEAR باسترداد الصور المشابهة من Flickr. وظيفة CLEAR بسيطة. يكمن تسليط الضوء بدلاً من ذلك في كيفية تحقيقه ومدى سهولة النشر.
$ git clone [email protected]:joisino/clear.git
$ cd clear
$ echo 'REACT_APP_FLICKR_KEY="0123456789abcdef"' > .env.local
$ npm install
$ npm start
أو يمكنك تجربتها مع Docker.
$ git clone [email protected]:joisino/clear.git
$ cd clear
$ echo 'REACT_APP_FLICKR_KEY="0123456789abcdef"' > .env.local
$ docker run -it --rm -v $PWD:/app -p 13000:3000 -w /app -u node node /bin/bash -c "npm install && npm start"
استبدل 0123456789abcdef
بمفتاح Flickr API. يمكنك الحصول على المفتاح على https://www.flickr.com/services/api/misc.api_keys.html. يستغرق الأمر بضع دقائق للحصول على المفتاح.
يتم تعريف مستخرج الميزات ووظيفة النتيجة في src/score.js
.
getFeature
بحساب متجهات الميزات لكل من الصورة المصدر والصور المستردة. يتم تعريف طبقة التضمين في embeddingName
. يمكنك تجربة طبقات أخرى، على سبيل المثال، 'module_apply_default/MobilenetV2/Logits/AvgPool'
.embs2score
يحسب النتائج. كلما كان ذلك أفضل. يمكنك تجربة وظائف أخرى، على سبيل المثال، Math.exp(- emb1.squaredDifference(emb2).sum().dataSync()[0] / 1000)
kernel Gaussian.نظرًا لأن CLEAR لا يعتمد على أي خوادم خلفية أو مؤشرات بحث، فيمكنك استخدام النظام بسلاسة بعد تغيير وظيفة النتيجة.
يمكنك أيضًا تغيير هدف البحث من Flickr إلى خدمات أخرى عن طريق كتابة غلاف في src/flickr.js
.
@inproceedings{sato2022clear,
author = {Ryoma Sato},
title = {CLEAR: A Fully User-side Image Search System},
booktitle = {The 31st {ACM} International Conference on Information
and Knowledge Management, {CIKM}},
year = {2022},
}