2012-08-06 8 views
5

मैं सोच रहा था कि क्या किसी ने लेटेंट एसवीएम डिटेक्टर (http://docs.opencv.org/modules/objdetect/doc/latent_svm.html) के ओपनसीवी कार्यान्वयन का सफलतापूर्वक उपयोग करने में कामयाब रहा है। एक नमूना कोड है जो दिखाता है कि लाइब्रेरी का उपयोग कैसे करें लेकिन समस्या यह है कि नमूना कोड एक तैयार किए गए डिटेक्टर मॉडल का उपयोग करता है जो MatLab का उपयोग करके जेनरेट किया गया था। क्या कोई मुझे अपने स्वयं के डिटेक्टर मॉडल को उत्पन्न करने के तरीकों के माध्यम से मार्गदर्शन कर सकता है?ओपनसीवी और लेटेंट एसवीएम डिटेक्टर

उत्तर

5

पेपर के लेखकों द्वारा LatSVM के MATLAB कार्यान्वयन में pascal नामक एक ट्रेन स्क्रिप्ट है।

 
Using the learning code 
======================= 

1. Download and install the 2006-2011 PASCAL VOC devkit and dataset. 
    (you should set VOCopts.testset='test' in VOCinit.m) 
2. Modify 'voc_config.m' according to your configuration. 
3. Start matlab. 
4. Run the 'compile' function to compile the helper functions. 
    (you may need to edit compile.m to use a different convolution 
    routine depending on your system) 
5. Use the 'pascal' script to train and evaluate a model. 

example: 
>> pascal('bicycle', 3); % train and evaluate a 6 component bicycle model 

The learning code saves a number of intermediate models in a model cache 
directory defined in 'voc_config.m'. 

अधिक जानकारी के लिए देखें authors website: वहाँ टारबॉल इसके उपयोग समझा साथ एक README है। पृष्ठ में इस विधि का पेपर भी शामिल है।

+1

आप जो करने की योजना बना रहे हैं उसके आधार पर, आप पाएंगे कि ओपनसीवी (मशीन लर्निंग लाइब्रेरी) में अधिक सामान्य एसवीएम कार्यान्वयन बेहतर काम करता है। उदाहरण के लिए सरल होग के लिए, बस एक एसवीएम ऑब्जेक्ट बनाएं, होग की गणना करें और इसे 'SVM :: train_auto() ' – Bee

+1

@Yamaneko का उपयोग करके अपने एसवीएम में फ़ीड करें। मैंने आपके द्वारा उल्लेख किए गए MATLAB कोड की मदद से कई मॉडल प्रशिक्षित किए हैं लेकिन कर सकते हैं इन मॉडलों को .xml प्रारूप में बदलने का कोई तरीका नहीं है ताकि मैं उन्हें ओपनसीवी कोड के साथ भी उपयोग कर सकूं। – 3yanlis1bos