Wie zu trainieren und zu prognostizieren, mit Beutel von Worten?

Habe ich einen Ordner mit Bildern von einem Auto aus jedem Winkel. Ich will das bag of words-Ansatz zum trainieren des Systems zu erkennen, das Auto. Sobald die Ausbildung fertig ist, möchte ich, dass wenn ein Bild von diesem Auto ist gegeben, es sollte in der Lage sein, es zu erkennen.

Habe ich versucht zu lernen, die BOGEN-Funktion in opencv, um diese Arbeit zu machen und haben sich auf einem Niveau, wo ich nicht weiß, was jetzt zu tun und einige Hinweise wären sehr willkommen.

Hier ist mein code, den ich verwendet, um die Tasche der Wörter:

Ptr<FeatureDetector> features = FeatureDetector::create("SIFT");
    Ptr<DescriptorExtractor> descriptors = DescriptorExtractor::create("SIFT");
    Ptr<DescriptorMatcher> matcher = DescriptorMatcher::create("FlannBased");

    //defining terms for bowkmeans trainer
    TermCriteria tc(MAX_ITER + EPS, 10, 0.001);
    int dictionarySize = 1000;
    int retries = 1;
    int flags = KMEANS_PP_CENTERS;
    BOWKMeansTrainer bowTrainer(dictionarySize, tc, retries, flags);

    BOWImgDescriptorExtractor bowDE(descriptors, matcher);

    //training data now
    Mat features;
    Mat img = imread("c:\\1.jpg", 0);
    Mat img2 = imread("c:\\2.jpg", 0);
    vector<KeyPoint> keypoints, keypoints2;
    features->detect(img, keypoints);
    features->detect(img2,keypoints2);
    descriptor->compute(img, keypoints, features);
    Mat features2;
    descripto->compute(img2, keypoints2, features2);
    bowTrainer.add(features);
    bowTrainer.add(features2);

    Mat dictionary = bowTrainer.cluster();
    bowDE.setVocabulary(dictionary);

Diese beruhen alle auf dem BOW-Dokumentation.

Ich denke, in diesem Stadium, dass mein system ausgebildet. und der nächste Schritt ist die Vorhersage.

dies ist, wo ich nicht weiß, was zu tun ist. Wenn ich SVM oder NormalBayesClassifier beide verwenden die Begriffe Zug-und vorherzusagen.

Wie kann ich voraussagen, und trainieren nach diesem? jede Beratung wäre sehr geschätzt werden. Wie schließe ich das training des Klassifikators auf mein `bowDE` - Funktion?

InformationsquelleAutor der Frage ipunished | 2012-12-03

Schreibe einen Kommentar