Ich benutze DIGIT, um zu klassifizieren (Ich teste GoogLeNet mit Adaptive Gradient, Stochastic Gradientenabstieg und Nesterovs beschleunigter Gradient). Die Bilder sind Farbe und 256 * 256. Nach dem Training verwende ich die Option "Test ein einzelnes Bild" und teste ein Bild. Das Ergebnis ist show prefect match und klassifizieren Bild korrekt. Dann verwende ich das heruntergeladene Modell für die Anwendung in OpenCV 3.1 (Windows 64bit, Visual Studio 2013, Nvidia GPU) basierend auf "http://docs.opencv.org/trunk/d5/de7/tutorial_dnn_googlenet.html". Allerdings habe ich immer unterschiedliche Klassen und falsche Antworten bekommen.
Edit:
Ich versuche cvtColor(img, img, COLOR_BGR2RGB)
und das Problem nicht zu lösen. Trotzdem habe ich ein falsches Ergebnis bekommen. Ich versuche verschiedene data transformations
wie none
, image
und pixel
. Auch anders solver type
.Warum ist das Ergebnis von DIGITS und OpenCV 3.1 anders?
Antwort
OpenCV verwendet standardmäßig die jetzt sehr seltene BGR (blau, grün, rot) Reihenfolge der Farbkanäle. Normal ist RGB.
Why OpenCV Using BGR Colour Space Instead of RGB
Dies könnte die schlechte Leistung des Modells erklären.
Vielen Dank, aber ich versuche cvtColor (img, img, COLOR_BGR2RGB); und das Problem nicht lösen. Trotzdem habe ich ein falsches Ergebnis bekommen. –
Ich wäre überrascht, wenn OpenCV 3 vs 2 dieses Problem verursacht. Ich erwarte stattdessen, dass die Diskrepanz auf einen Unterschied bei der Datenvorverarbeitung zurückzuführen ist.
Hier ist ein Beispiel dafür, wie Datenvorverarbeitung für ein Caffe-Modell zu tun, die in DIGITS ausgebildet wurden: https://github.com/NVIDIA/DIGITS/blob/v4.0.0/examples/classification/example.py#L40-L85
Auch stellen Sie sicher, dass diese „Fallstricke“ lesen: https://github.com/NVIDIA/DIGITS/blob/v4.0.0/examples/classification/README.md#limitations
- 1. Warum ist das numerische Ergebnis anders (RK45)?
- 2. Quadratisches Board in Java - warum ist das Ergebnis anders?
- 3. Warum ist das Ergebnis für dieses Problem anders?
- 4. GridAdaptedFeatureDetector ist von OpenCV 3.1 verschwunden?
- 5. Warum Spider's Ergebnis ist in cmd.exe und in Datei anders?
- 6. OpenCV thresholding anders als erwartet
- 7. Imgproc.copyMakeBorder in OpenCV 3.1?
- 8. OpenCV 3.1 Optimierung
- 9. Das Ergebnis der Funktion "cvtColor" von OpenCV
- 10. ed25519.Öffentliches Ergebnis ist anders
- 11. OpenCV 3.1 Warnung und Absturz bei der Verwendung von UMat
- 12. Warum Int16Array zu ArrayBuffer zurück konvertieren Int16Array, Ergebnis ist anders?
- 13. OpenCV 3.1 - Bibliothek von opencv_contrib nicht gefunden
- 14. Warum ist das File.ReadAllBytes-Ergebnis anders als bei der Verwendung von File.ReadAllText?
- 15. Das erwartete Ergebnis ist das gleiche wie das tatsächliche Ergebnis, warum zeigt es mir, dass sie anders sind?
- 16. mongo count() und aggregieren nach $ Gruppe Ergebnis ist anders
- 17. Boolean Nicht in OpenCV 3.1
- 18. Warum ist das Ergebnis dieser Controlleraktion null?
- 19. Standardhöhe von div ist anders als berechnet Ergebnis
- 20. Warum ist das Ergebnis der Doppelarithmetik falsch?
- 21. das Ergebnis der EZB-Verschlüsselung ist vielleicht anders. es ist das gleiche wie das Ergebnis der CBC
- 22. DFT-Ergebnis in Swift ist anders als die von MATLAB
- 23. Warum ist das Ergebnis NULL? (PHP)
- 24. Wo ist Cuda-Klasse in Java opencv 3.1?
- 25. sklearn standardscaler Ergebnis anders als manuelles Ergebnis
- 26. Warum ist die Abfrage anders?
- 27. Warum wird mein Bild in Opencv-Python anders geplottet?
- 28. opencv 3.1 wxwidgets cv :: imwrite Fehler
- 29. Warum ist das Ergebnis von -8% -5 gleich -3
- 30. Warum ist das Ergebnis von 1/3 == 0?
Können Sie die Zahlen reproduzieren mit dem 'Buran' Bild und dem erwähnten Modell aus dem Tutorial? – Framester
Beste Klasse: "Google", Wahrscheinlichkeit: 66,8766% –