दिलचस्प पोस्ट
स्ट्रिंग में पायथन वाइल्डकार्ड खोज डी 3 जावास्क्रिप्ट में चर गुंजाइश सी ++ – बार बार आईस्ट्रिन्स्ट्रीम का उपयोग कर माइग्रेशन के माध्यम से कॉलम में एक डिफ़ॉल्ट मान जोड़ें UILabel लाइन रिक्ति सेट करें रेज़र / जावास्क्रिप्ट और अनुगामी सेमीकोलन ऑब्जेक्ट की एक सरणी को सॉर्ट करने के लिए सरल फ़ंक्शन फ़ाइल या विधानसभा को लोड नहीं किया जा सका 'System.Data.SQLite' जावास्क्रिप्ट में प्रथमनाम (वर्णानुक्रमिक रूप से) के अनुसार क्रमबद्ध सरणी दो NSArrays को साथ में एक ओर से छंटनी लूप के लिए स्विफ्ट: सूचक के लिए, तत्व में तत्व? क्या JSON पुस्तकालय आपके लिए अच्छी तरह से काम करता है। NET? सी # में यूनिक्स समय को पार्स करना नई टर्मिनल विंडो में अजगर से टर्मिनल कमांड निष्पादित करें? GetLastWriteTime लौट 12/31/1600 7:00:00 PM

इसी तरह की छवियों को खोजने के लिए एल्गोरिथम

मुझे एक एल्गोरिथम की आवश्यकता है जो यह निर्धारित कर सकें कि क्या दो छवियाँ 'समान' हैं और रंग, चमक, आकृति आदि के इसी प्रकार के पैटर्न को पहचानती हैं। मुझे कुछ बिंदुओं की आवश्यकता हो सकती है कि मानव मस्तिष्क जो पैरामीटर को 'श्रेणीबद्ध' चित्रों के लिए उपयोग करता है ..

मैंने हाउसडॉर्फ आधारित मिलान पर ध्यान दिया है लेकिन यह मुख्य रूप से रूपांतरित वस्तुओं और आकार के पैटर्न को मिलान करने के लिए लगता है।

Solutions Collecting From Web of "इसी तरह की छवियों को खोजने के लिए एल्गोरिथम"

मैंने कुछ इसी तरह किया है, चित्रण को तरंगिका परिणति का उपयोग करते हुए छवियों को कमजोर करके।

मेरा दृष्टिकोण प्रत्येक परिवर्तनित चैनल से सबसे महत्वपूर्ण एन गुणांक लेने और उनके स्थान को रिकॉर्ड करना था। यह (शक्ति, स्थान) की सूची को छांटने के द्वारा किया गया था एप (शक्ति) के अनुसार ट्यूपल्स। इसी तरह की छवियों में समानताएं साझा की जाएंगी ताकि वे एक ही स्थान पर महत्वपूर्ण गुणांक प्राप्त कर सकें।

मैंने पाया कि यह चित्र में YUV प्रारूप में रूपांतरित करने के लिए सबसे अच्छा था, जो प्रभावी रूप से आपको आकृति (वाई चैनल) और रंग (यूवी चैनल) में समानता का भार देता है।

मैक्टोरी में उपर्युक्त मेरे कार्यान्वयन को प्राप्त कर सकते हैं, जो दुर्भाग्यवश मैं जितना मुझे चाहिए उतना काम नहीं कर रहा हूं 🙂

एक और तरीका है, जो मेरे कुछ दोस्तों ने आश्चर्यजनक रूप से अच्छे परिणामों के साथ उपयोग किया है, बस अपनी छवि का आकार बदलने के लिए नीचे कहें, एक 4×4 पिक्सेल और स्टोर जो आपके हस्ताक्षर हैं संबंधित चित्रों का उपयोग करते हुए, 2 छवियों के बीच मैनहट्टन की दूरी की गणना करते हुए, कितने 2 छवियों को रन बना सकते हैं। मेरे पास इसका विवरण नहीं है कि उन्होंने आकार बदलने का प्रदर्शन किया था, इसलिए आपको उस कार्य के लिए उपलब्ध विभिन्न एल्गोरिदम के साथ खेलना पड़ सकता है जो उपयुक्त है।

pHash आपकी रुचि हो सकती है

अवधारणात्मक हैश एन एक ऑडियो, वीडियो या छवि फ़ाइल का फिंगरप्रिंट जो गणितीय रूप से ऑडियो या दृश्य सामग्री पर आधारित होता है। क्रिप्टोग्राफ़िक हैश फ़ंक्शंस के विपरीत जो इनपुट में छोटे बदलावों के हिमस्खलन प्रभाव पर भरोसा करते हैं, जिससे उत्पादन में भारी परिवर्तन हो रहा है, यदि दृश्य नेत्रहीन या ऑडिटरिल समान हैं, तो अवधारणात्मक हैश एक दूसरे के "करीबी" हैं।

मैंने विभिन्न छवियों में उसी वही वस्तु को फिर से पहचानने के लिए एसआईएफटी का इस्तेमाल किया है। यह वास्तव में शक्तिशाली है, लेकिन जटिल नहीं है, और यह ओवरकिल हो सकता है। यदि छवियों को बहुत ही समान माना जाता है तो दो छवियों के बीच के अंतर के आधार पर कुछ सरल मापदंड आपको काफी कुछ बता सकता है। कुछ संकेत:

  • छवियों को सामान्य बनाएं अर्थात् दोनों छवियों की औसत चमक दोनों की औसत चमक की गणना करके और राशन (उच्चतम स्तर पर कतरन से बचने के लिए) के अनुसार प्रतिभाशाली नीचे स्केलिंग करके समान रूप से बनायें) विशेष रूप से अगर आप की तुलना में आकार में और अधिक रुचि रखते हैं रंग।
  • प्रति चैनल सामान्यीकृत छवि पर रंग अंतर का योग।
  • छवियों में किनारों को ढूंढें और दोनों चित्रों में दूरी betwee किनारे पिक्सल को मापें (आकार के लिए)
  • असतत क्षेत्रों के एक सेट में छवियों को विभाजित करें और प्रत्येक क्षेत्र के औसत रंग की तुलना करें।
  • एक (या का एक सेट) स्तर पर छवियों को थ्रेसहोल्ड करें और पिक्सल की संख्या की गणना करें जहां परिणामस्वरूप काले / सफेद चित्र भिन्न होते हैं।

यह एक मुश्किल समस्या है! यह इस बात पर निर्भर करता है कि आपको कितना सही होना चाहिए, और यह इस बात पर निर्भर करता है कि आप किस प्रकार की छवियों के साथ काम कर रहे हैं आप रंगों की तुलना करने के लिए हिस्टोग्राम का उपयोग कर सकते हैं, लेकिन यह स्पष्ट रूप से छवियों (यानी आकार) के भीतर उन रंगों के स्थानिक वितरण को ध्यान में नहीं रखता है। कुछ प्रकार के विभाजन के बाद किनारे का पता लगाने (आकृतियों को चुनना) एक और छवि के विरुद्ध मिलान करने के लिए एक पैटर्न प्रदान कर सकता है आप पिक्सेल मूल्यों के मैट्रिक्स के रूप में छवियों पर विचार करके, और उन मैट्रिक्स की तुलना करके, टेक्स्टर्स की तुलना करने के लिए कोकार्येंस मैट्रिक्स का उपयोग कर सकते हैं। वहाँ छवि मिलान और मशीन दृष्टि पर कुछ अच्छी किताबें हैं – अमेज़ॅन पर एक खोज कुछ मिल जाएगा

उम्मीद है की यह मदद करेगा!

आप पर्सैप्टिकल इमेज डिफ का इस्तेमाल कर सकते हैं

यह एक कमांड लाइन उपयोगिता है जो एक अवधारणात्मक मीट्रिक का प्रयोग करके दो छवियों की तुलना करती है। यही है, यह मानव दृश्य प्रणाली के एक कम्प्यूटेशनल मॉडल का उपयोग करता है, यह निर्धारित करने के लिए कि दो छवियों नेत्रहीन रूप से अलग है, इसलिए पिक्सल में मामूली बदलावों को नजरअंदाज किया जाता है। इसके अलावा, यह यादृच्छिक संख्या पीढ़ी, ओएस या मशीन आर्किटेक्चर मतभेदों में अंतर के कारण झूठी सकारात्मक संख्या की संख्या को काफी कम कर देता है।

कुछ छवि मान्यता सॉफ़्टवेयर समाधान वास्तव में पूरी तरह से एल्गोरिथम आधारित नहीं होते हैं, लेकिन इसके बजाय तंत्रिका नेटवर्क अवधारणा का उपयोग करें। http://en.wikipedia.org/wiki/Artificial_neural_network देखें और अर्थात् न्यूरॉन डॉटनेट जो भी दिलचस्प नमूनों को शामिल करता है: http://neurondotnet.freehostia.com/index.html

Kohonen तंत्रिका नेटवर्क / स्व आयोजन नक्शे का उपयोग कर संबंधित अनुसंधान है

दोनों अधिक अकादमिक सिस्टम (Google for PicSOM) या कम शैक्षणिक
( http://www.generation5.org/content/2004/aiSomPic.asp , (संभावित रूप से सभी कार्य परिवेशों के लिए उपयुक्त नहीं हैं)) प्रस्तुतियों मौजूद हैं।

यह एक दृष्टि समस्या की तरह लग रहा है आप अनुकूली बूस्टिंग के साथ-साथ बर्न्स लाइन निष्कर्षण एल्गोरिथम को भी देखना चाहेंगे। इन दोनों की अवधारणाओं को इस समस्या का सामना करने में सहायता करनी चाहिए। यदि आप दृष्टि एल्गोरिदम के लिए नए हैं, तो एज डिटेक्शन शुरू करने के लिए एक सरल स्थान है, क्योंकि यह मूल बातें बताता है।

जहां तक ​​वर्गीकरण के लिए पैरामीटर हैं:

  • रंग पैलेट और स्थान (ग्रेडियंट गणना, रंगों का हिस्टोग्राम)
  • आकृतियों का पता लगाने के लिए आकार (एडीए। बूस्टिंग / प्रशिक्षण)

आपको कितना सही परिणाम की जरूरत के आधार पर, आप बस nxn पिक्सल ब्लॉक में छवियों को तोड़ सकते हैं और उनका विश्लेषण कर सकते हैं। यदि आपको पहले ब्लॉक में अलग-अलग परिणाम मिलते हैं तो आप प्रोसेसिंग रोक नहीं सकते, जिसके परिणामस्वरूप कुछ प्रदर्शन सुधार हो सकते हैं।

उन वर्गों का विश्लेषण करने के लिए, जिन्हें आप उदाहरण के लिए रंग मानों का योग प्राप्त कर सकते हैं।

एक बड़े पैमाने पर स्केल-डाउन संस्करण के पिक्सेल रंग मूल्यों के अंतर के वर्गों की गणना की जा रही है (उदाहरण: 6×6 पिक्सेल) अच्छी तरह से काम करता है समान छवियां 0 उत्पन्न होती हैं, इसी तरह की छवियां छोटे संख्या में उत्पन्न होती हैं, अलग-अलग छवियां बड़े लोगों को देते हैं।

YUV में तोड़ने के अन्य विचारों को पहले चहचहाना लगता है – जब मेरा विचार महान काम करता है, तो मैं चाहता हूं कि मेरी छवियों को "अलग" के रूप में गणना किया जाए ताकि इससे सही परिणाम निकल जाए – यहां तक ​​कि एक रंगीन पर्यवेक्षक के परिप्रेक्ष्य से भी।

आप दो छवियों के बीच ब्लॉक-मिलान गति आकलन के कुछ प्रकार का प्रदर्शन कर सकते हैं और शेष अवशेषों और गति वेक्टर लागतों की कुल राशि (एक वीडियो एन्कोडर में ऐसा करते हैं) की गणना करते हैं। यह गति के लिए क्षतिपूर्ति करेगा; बोनस अंक के लिए, एफ़िन-रूपांतरण गति आकलन करें (ज़ूम और खींचने और समान के लिए मुआवजा) आप ओवरलैप्ड ब्लॉकों या ऑप्टिकल प्रवाह भी कर सकते हैं।

पहले पास के रूप में, आप रंग हिस्टोग्राम का उपयोग करने की कोशिश कर सकते हैं। हालांकि, आपको वास्तव में आपकी समस्या डोमेन को कम करने की आवश्यकता है सामान्य छवि मिलान एक बहुत ही कठिन समस्या है।

मैंने यह आलेख समझा है कि यह कैसे काम करता है:

http://www.hackerfactor.com/blog/index.php?/archives/432-Looks-Like-It.html

इस पर अन्य धागे में कुछ अच्छे उत्तर दिए गए हैं, लेकिन मुझे आश्चर्य है कि क्या कोई वर्णक्रमीय विश्लेषण शामिल होगा? यानी, छवि को उसके चरण और आयाम की जानकारी से नीचे तोड़ो और उन की तुलना करें यह फसल, परिवर्तन और तीव्रता के अंतर के साथ कुछ मुद्दों से बच सकता है। वैसे भी, यह सिर्फ मुझे लगा है क्योंकि यह एक दिलचस्प समस्या की तरह लगता है। यदि आप http://scholar.google.com पर खोज कर रहे हैं तो मुझे यकीन है कि आप इस पर कई कागजात के साथ आ सकते हैं।

देर से चर्चा में शामिल होने के लिए माफी

हम दो छवियों के बीच समान गुणों के अंक का पता लगाने के लिए ORB पद्धति का उपयोग भी कर सकते हैं। निम्नलिखित लिंक अजगर में ORB के प्रत्यक्ष कार्यान्वयन प्रदान करता है

http://scikit-image.org/docs/dev/auto_examples/plot_orb.html

यहां तक ​​कि ओपनसीवी को ओआरबी का सीधा कार्यान्वयन भी मिला है। यदि आप अधिक जानकारी नीचे दिए गए शोध लेख का पालन करें

https://www.researchgate.net/publication/292157133_Image_Matching_Using_SIFT_SURF_BRIEF_and_ORB_Performance_Comparison_for_Distorted_Images