8

ओपनसीवी 2.4.9.0 में ज्ञात ये सुविधा-डिटेक्टर हैं: SIFT, SURF, BRISK, FREAK, STAR, FAST, ORBक्या कोई डिटेक्टर है जो जीपीयू पर लागू होता है और स्केल/रोटेट-इनवेरिएंट होता है?

इन सभी के CPU पर कार्यान्वयन है, लेकिन केवल GPU पर FAST और ORBhttp://docs.opencv.org/genindex.html

और जाना जाता है के रूप में, कुछ कर रहे हैं पैमाने/बारी बारी-अपरिवर्तनीय है, लेकिन कुछ नहीं कर रहे हैं: Are there any fast alternatives to SURF and SIFT for scale-invariant feature extraction?

ये हैं स्केल-अपरिवर्तनीय और बारी बारी से-अपरिवर्तनीय:

  • झारना
  • सर्फ
  • तेज
  • सनकी
  • स्टार

लेकिन इन बड़े पैमाने-अपरिवर्तनीय नहीं कर रहे हैं और नहीं बारी बारी-अपरिवर्तनीय:

  • फास्ट
  • ओर्ब

हैं वहाँ किसी भी डिटेक्टरों जो GPU पर लागू किया और बड़े पैमाने/बारी बारी-अपरिवर्तनीय हैं ?

या जीपीयू या ओपनसीएल पर ओपनसीवी 3.0 में जोड़ा जाएगा?

+1

आप इसे (यह पहले से ही ओसीएल संस्करण है) को देखा है? http://docs.opencv.org/modules/nonfree/doc/feature_detection.html#gpu-surf-gpu – Kornel

+0

@ कॉर्नेल धन्यवाद यू! मैंने इसे नहीं देखा है, याद किया। यह दयालु है कि कोई फ्लेकी/ब्रिस्क नहीं है। – Alex

+1

हो सकता है कि आप AKAZE को भी आजमा सकते हैं। 3.0 में भी, आपको सर्फ के ओसीएल संस्करण का उपयोग करने की आवश्यकता नहीं है। यह मेरे डिफ़ॉल्ट में है - यह लिंक https://github.com/Itseez/opencv_contrib/blob/master/modules/xfeatures2d/src/surf.cpp#L895 देखें। यद्यपि 'UMat' का प्रयोग करें। – Kiran

उत्तर

8

असल में, एसयूआरएफ ओपनसीवी में जीपीयू समर्थन के साथ एकमात्र स्केल/घुमाव-परिवर्तनीय फीचर डिटेक्टर है।

OpenCV 3.0 FAST और ORB में ओसीएल समर्थन मिल गया है और इसके अलावा, इन दोनों (FAST और ORB) पहले से ही CUDA समर्थन मिला है।

SURF की ओसीएल/CUDA समर्थन पहले से ही अपने प्रश्न की टिप्पणियों में उल्लेख किया गया है, लेकिन यह केवल OpenCV के लिए एक योगदान है और इस OpenCV के डेवलपर्स के बारे में opencv_contrib कैसे:

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

मेरे पिछले अनुभवों के आधार पर ओपनसीवी के एसयूआरएफ सुविधाओं के कार्यान्वयन OpenSURF से बहुत कमजोर थे। इसे आजमा देना उचित होगा, या कुछ अन्य खुले स्रोत कार्यान्वयन को ढूंढना उचित होगा।

पीएस .: मेरे ज्ञान के लिए अभी भी KAZE/AKAZE का कोई GPU त्वरित संस्करण नहीं है।

3

मैंने हाल ही में कुछ सहयोगियों के साथ सीयूडीए का उपयोग करके AKAZE लागू किया है, यदि आप मूल पुस्तकालय से परिचित हैं तो आपको इसका उपयोग करने में कोई समस्या नहीं होनी चाहिए क्योंकि हम एपीआई का सम्मान करते हैं। आप वर्तमान संस्करण यहाँ पा सकते हैं:

https://github.com/nbergst/akaze

संबंधित मुद्दे