Trefferbild-Analyse/-Auswertung

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • mattik schrieb:

    beage schrieb:

    nussratte schrieb:

    was letztendlich ja aber beage Probleme sind, die Frage war ja eigentlich wie man generell die Löcher erkennt
    genau ;)
    Für sowas muss man üblicherweise etwas experimentieren, mein erster Ansatz wäre dieser:
    Ich schaue mir erstmal nur den schwarzen Bereich der Scheibe an. Ich würde das Bild auf schwarzweiss thresholden, dann zu kleine Störungen rausfiltern und das ganze etwas glätten (müsstee man etwas probieren, wahrscheinlich würde ich dafür Erode- und Median-Filter probieren).

    Dann segmentieren, also die einzelnen weißen Flächen erkennen (ein trivialer Weg ist es, den ersten weißen Pixel zu suchen und dann per Flood Fill schwarz (oder jeweils mit einer eigenen Farbe) zu füllen, dabei die Pixel merken - das ganze für jedes Segment wiederholen, bis kein weißer Pixel mehr da ist ist). Danach hast du die Einzelsegmente, für die man z.B. Mittelpunkt, Center of Gravity, Größe, Dichte, Bounding Box usw. berechnen kann. Segmente, die zu klein für ein Loch sind, raus.

    Einzellöcher kann man dann wahrscheinlich recht gut an den Werten (Größe der Bounding Box, Abstand Mittelpunkt zu Center of Gravity u.ä.) erkennen.

    Die größeren Flächen sind ein schwierigeres Problem. Da könnte man heuristisch versuchen, schwarze Kreise zu verteilen und zu sehen, wie viele man bei geschickter Platzierung braucht, um die ganze Fläche abzudecken (z.B. das Segment skeletieren und immer wieder an den Endpunkten versuchen). Wird aber wahrscheinlich bei großen Flächen nicht zuverlässig gehen (damit haben ja schon Menschen Probleme). Vielleicht kann man das besser semiautomatisch zusammen mit em Benutzer machen.

    Die ganzen Algorithmen sind nicht sonderlich kompliziert, das kann man alles von Hand z.B. auf NSBitmapImageReps machen, reine Fleißarbeit. Gibt's aber schon alles fertig in OpenCV (wenn die Lizenz passt). Das größte Problem ist es, für die ganzen entstehenden Parameter robust funktionierende Werte zu finden.
    Puhhh, das hört sich ja alles hoch wissenschaftlich an :( Ich hab noch nie was mit Images in einer App gemacht, außer sie angezeigt ;)
    Kann ich das mit den Standard-Bibliotheken machen oder brauche ich was externes?

    nussratte schrieb:

    kann man da nicht eventuell noch zusätzlich einen kleinen workaround ranbasteln, zB die Scheibe muss auf einem Lila hintergrund gescannt/fotografiert werden, dann kann man das Bild nach 3 Farben untersuchen, wenn das Bild dann genau zentriert ist, kann man ja die distanz von Lila zur Mitte berechnen?
    Lila wäre u.U. ein Problem. Aber weiss ginge. Die Scheiben sind immer gelblich.
    Ich bin gegen Signaturen!!!
  • beage schrieb:

    Thallius schrieb:

    beage schrieb:

    Thallius schrieb:

    beage schrieb:

    nussratte schrieb:

    ich hab vor 15 Jahre Luftgewehr wettkämpfe gemacht, da war es so wie Claus geschrieben hat, bei mir war es auf Wettkämpfen aber so wie ich schon geschrieben hatte, das wir auf streifen geschossen haben (also pappen mit 10 Zielen), wie das bei anderen Kalibern bzw anderen Wettkämpfen ist, weiß ich nicht (bzw. ob es mitlerweile einfach geändert wurde)
    Ja, solche Disziplinen gibt es auch. Ich schieße aber z.B. Dienstpistole, Sportpistole und GK-Gewehr. Da gibt es Disziplinen mit 5 Schuss und auch 10 Schuss pro Scheibe.
    und wie wird das dann ausgewertet ? Da kann dann ja nur der beste Schuss zählen oder was?
    Tja, keine Ahnung. Für Meisterschaften ab Landesebene gibt es solche Aiuswertungsmaschinen: schiesssport-baur.de/Scheibena…G-RM-III---Universal.htmlWenn wir nur für uns auf Vereinsebene schießen, wird das von Hand gemacht.
    Das war nicht meine Frage. Frage war: Must du jetzt den besten SChuss oder alle Schüsse auswerten ?
    Alle Claus. Es werden z.B. 5 Schuss abgegeben. 10 - 9 - 9 - 8 - 0 (0 außerhalb des 1. Ringes oder gar nicht auf der Scheibe, weil verrissen). Die Treffer werden addiert. Wären in diesem Beispiel also 36 von 50 möglichen.
    Wenn jemand soooo gut schießt, dass er 2 Schuss exakt gleich trifft, tja, keine Ahnung. Pech gehabt, würde ich sagen. Wird dann wohl als 0 gewertet. Wie will er das sonst beweisen?
    Naja bei deinem ersten Beispiel ist es nicht so schwer durch das große weiße Loch zu schiessen.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • beage schrieb:

    Puhhh, das hört sich ja alles hoch wissenschaftlich an Ich hab noch nie was mit Images in einer App gemacht, außer sie angezeigt
    Kann ich das mit den Standard-Bibliotheken machen oder brauche ich was externes?
    Ja, ist etwas wissenschaftlich. Und am Anfang recht viel, ist aber nicht so schlimm wie es aussieht.

    Wie gesagt: Geht beides. Wenn du das mit OSX-Hausmitteln machen willst ist das eine Menge Handarbeit (Core Image hat ein paar grundlegende Filter, ist aber nur ein kleiner Teil). OpenCV ist extern, bietet aber einen riesigen Baukasten mit allem, was man dafür gebrauchen kann.
    Multigrad - 360°-Produktfotografie für den Mac