Ich habe eine 2D-Matrix 50x50 bestehend aus einem Loch von '1' (eine Scheibe) und die restlichen Werte sind Null. (Die Matrix ist binär). Ich möchte nur die Positionen in der Matrix der Kontur des Objekts, wie in der folgenden Abbildung gezeigt, zurückgeben. Ich habe den Befehl "imcontour" versucht (da mein Fall auch ein Binärbild ist). Es ist gut, aber einige der gegebenen Positionen der Kontur liegen über der Größe der Matrix, was bedeutet, dass sie möglicherweise die Position in Pixeln nicht als Index der Matrix angibt. Ich habe auch "Kontur" und "Grenze" versucht, aber vergebens. Irgendwelche Ideen?
Zurückgeben der Positionen einer Kontur in einer 2D-Matrix in Matlab?
Antwort
Wenn ich bekam Recht es, versuchen [x, y] = find (M) Positionen zu extrahieren und versuchen, ind = find (M) Indexzahlen von Nicht-Nullen-Werte in Ihrer Matrix zu extrahieren.
Innerhalb des Kreises gibt es '1' und außerhalb '0'. Die Figur ist nur die Kontur. –
Dann suchen Sie nach der Grenze. Verwenden Sie einfach die bwperim-Funktion. [x, y] = finden (bwperim (M)) – Ozcan
Vielen Dank! das ist wonach ich gesucht habe. Ich fand eine andere Lösung, die "Kante" ist, aber "bwperim" ist besser. –
- 1. MATLAB: Gibt der Befehl "Kontur" die Stromlinien in einer Strömungssimulation?
- 2. mehrere Matlab Kontur Plots mit einer Ebene
- 3. MATLAB variable Kontur LevelStep
- 4. Convert Kontur gestrichelte Linie in Bild Matlab
- 5. Eingabe einer Gruppe von Zahlen sequentiell in bestimmten Positionen in einer Matrix mit Matlab
- 6. Finden der Länge der Kontur in opencv
- 7. Matlab Kontur Plot spezischen Wert
- 8. Suchen, ob eine Kontur innerhalb einer anderen Kontur existiert
- 9. Finden Sie Kontur von 2D-Objekt in Bild in Matlab
- 10. Drehen einer 3D-Matrix in MATLAB
- 11. Name einer Variablen in der Legende, Matlab
- 12. Wie aktualisiere ich die Positionen der Elemente in einer googlemap?
- 13. Positionen der Ansicht in einer benutzerdefinierten ListView wiederholt sich
- 14. Zurückgeben einer Bereichstabelle in abap
- 15. Zurückgeben einer Struktur in Golang
- 16. Zurückgeben einer Zeichenfolge in tkinter
- 17. Zurückgeben einer Referenz in C++
- 18. OpenCV, Python: Pixel innerhalb einer Kontur finden
- 19. Wie bekomme ich die Koordinaten einer Kontur?
- 20. Konvertieren einer Matlab-Matrix in einen Vektor
- 21. Berechnen einer Spirale in MATLAB
- 22. Löschen einer Matrixspalte in Matlab
- 23. Wie zeichnet man eine Linie vom Schwerpunkt einer Kontur zum Umfang der Kontur?
- 24. Verschieben einer Zeichenfolge in Matlab
- 25. Argumente einer Funktion in Matlab
- 26. openCV erkennt Formen in der Kontur
- 27. Stop pyplot.contour vom Zeichnen einer Kontur entlang einer Diskontinuität
- 28. Finden Sie eine Linie senkrecht zu einer Kontur
- 29. Lösen einer Matrix in MATLAB?
- 30. Erstellen und Zurückgeben einer Liste in einer Methode in Scheme
'imcontour' sollte funktionieren, Sie haben sicherlich einen Fehler in Ihrem Code. Bitte geben Sie ein minimales Code-Beispiel an. – Ratbert