Wikipedia article on TinEye कहता है कि Perceptual Hashing टिनई के समान परिणाम देगा। वे this detailed description of the algorithm संदर्भित करते हैं। लेकिन TinEye refuses to comment.
अवधारणात्मक हैशिंग दृष्टिकोण के साथ सबसे बड़ी समस्या यह है कि जब यह एक ही छवि की पहचान करने के लिए सक्षम है (skews के अधीन है, परिवर्तन, आदि विपरीत) है, इसके बारे में एक पूरी तरह से अलग छवि की पहचान करने में महान नहीं है एक ही वस्तु (उदाहरण के लिए एक कार के सामने एक कार के सामने)।
टेंसरफ्लो को गहरे तंत्रिका जाल के लिए बहुत अच्छा समर्थन है जो आपको बेहतर परिणाम दे सकता है। इस समस्या को हल करने के लिए आप टेंसरफ्लो में गहरे तंत्रिका नेट का उपयोग कैसे कर सकते हैं:
प्री-प्रशिक्षित एनएन (जैसे गूगलेनेट) से शुरू करें या ImageNet जैसे डेटासेट पर स्वयं को प्रशिक्षित करें। अब हमें एक नई तस्वीर दी गई है जिसे हम पहचानने की कोशिश कर रहे हैं। एनएन में फ़ीड करें। एनएन में काफी गहरी परत की सक्रियताओं को देखें। सक्रियण का यह वेक्टर छवि के लिए 'फिंगरप्रिंट' जैसा है। निकटतम फिंगरप्रिंट के साथ अपने डेटाबेस में तस्वीर पाएं। यदि यह पर्याप्त रूप से करीब है, तो शायद यह वही वस्तु है।
इस दृष्टिकोण के पीछे अंतर्ज्ञान यह है कि पर्सेप्टुअल हैशिंग के विपरीत, एनएन छवि के उच्च स्तरीय प्रतिनिधित्व का निर्माण कर रहा है जिसमें किनारों, आकारों और महत्वपूर्ण रंगों की पहचान शामिल है। उदाहरण के लिए, एक सेब के फिंगरप्रिंट में इसके गोलाकार आकार, लाल रंग और यहां तक कि इसके छोटे स्टेम के बारे में जानकारी शामिल हो सकती है।
तुम भी this 2012 paper on image retrieval जो वस्तु समोच्च टुकड़े ऐसे झारना के रूप में विशेष रूप से चुनी सुविधाओं, क्षेत्रीय रंग क्षणों और के एक धसान का उपयोग करता है की तरह कुछ की कोशिश कर सकते। यह शायद बहुत अधिक काम है और यह नहीं है कि टेंसरफ्लो सबसे अच्छा क्या है।
यहाँ इसी तरह की छवियों के उस जोड़ी पर the demo on the pHash.org website का उपयोग करने का परिणाम हैं:
अद्यतन
ओपी अपने आवेदन से छवियों का एक उदाहरण जोड़ी प्रदान की गई है साथ ही पूरी तरह से असमान छवियों की एक जोड़ी पर।
मूली (रेडियल हैश): pHash determined your images are not similar with PCC = 0.518013
डीसीटी हैश: pHash determined your images are not similar with hamming distance = 32.000000.
मार/मैक्सिकन टोपी तरंगिका: pHash determined your images are not similar with normalized hamming distance = 0.480903.
ओपी द्वारा प्रदान की दो छवियों की तुलना करना मेरी मशीन से एक यादृच्छिक छवि के साथ अपनी छवियों की तुलना करना:
मूली (रेडियल हैश): pHash determined your images are not similar with PCC = 0.690619.
डीसीटी हैश: pHash determined your images are not similar with hamming distance = 27.000000.
मार/मैक्सिकन टोपी तरंगिका: pHash determined your images are not similar with normalized hamming distance = 0.519097.
निष्कर्ष
हम करने के लिए और अधिक छवियों का परीक्षण करना होगा असल में जानना। लेकिन अब तक पीएचएएस बहुत अच्छा प्रदर्शन नहीं कर रहा है। डिफ़ॉल्ट थ्रेसहोल्ड के साथ यह समान छवियों को समान नहीं मानता है। और एक एल्गोरिदम के लिए, यह वास्तव में एक समान यादृच्छिक छवि को और अधिक समान मानता है।
TensorFlow का उपयोग क्यों करें? जबकि कई कंप्यूटर दृष्टि समस्याओं के लिए गहरी शिक्षा एक महान उपकरण है, यह शायद छवि खोज के लिए सही समाधान नहीं है। –
मैं सुझावों के लिए खुला हूं :) – reflog
मानक दृष्टिकोण है: स्थानीय सुविधाओं (एसआईएफटी या एसआईएफटी जैसे) निकालें -> दृश्य शब्द गणना करें -> समान दृश्य शब्दों (दस्तावेज़ खोज के समान) वाली छवियां खोजें। वैकल्पिक रूप से होमोग्राफी (या अन्य ज्यामितीय मॉडल) का उपयोग करके मिलान सत्यापित करें। आप बैग-ऑफ-शब्द छवि खोज –