Eigene Objekte erkennen durch KI?

2 Antworten

Zuerst musst du aus den Eingangsdaten (dem Bild) Merkmale ermitteln, die du zahlenmäßig erfassen und speichern kannst, z.B. mittlere Farbe, statische Farbbweichung. Kantenerkennung (über Farbgradienten) und Flächenberechnung, Verhältnis der Kantenlänge zur Fläche usw.

Dann programmierst du ein exponentiell verknüpftes neuronales Netz mit variablen Koppelfaktoren (Synapsialkoeffizienten) und eine Datenbank für die Koppelfaktoren und am Ende Trainierst du deine KI mit einigen tausend Bilder von Billardkugeln und Glatzköpfigen Männern.

Wenn du das dann hingekriegt hast, bewirbst du dich bei google oder Facebook und forderst ein siebenstelliges Jahresgehalt, denn du bist der Erste, der das auf einen Arduino zum Laufen gebracht hat und machst damit alle Großrecherfarmen der beiden überflüssig.

Kurz gesagt: vergiss es! Oder merke es dir erst mal und mach zum Anfang mal ein Informatikstudium. Das ist einige Zehnerpotenzen zu hoch

Silvanius 
Fragesteller
 24.07.2022, 14:52

Ich glaub du hast Recht. Aber weißt du vielleicht, wie man es machen könnte, dass man Python Script auf einem arduino laufen lassen kann?

0
Silvanius 
Fragesteller
 24.07.2022, 18:44
@Silvanius

Die Idee von dem "Projekt" ist, dass bei ein Billard Tisch eine Kamera hat, die erkennt, sobald eine Billardkugel eingelocht wird und dem arduino uno das Bild gibt und dann geschaut wird, welche Kugel eingelocht wurde. Diese Daten (welche Billardkugel) sollen dann zu einem Bildschirm gesendet werden. Hast du vielleicht eine andere Lösung dafür?

0
HansWurst45  24.07.2022, 20:21
@Silvanius

Das ist viel einfacher. Da habe ich ad hoc mehrere Lösungsansätze für dich:

  1. Bau in jeder Billardkugel einen RFID-Chip ein und in die einzelnen Pit je ein Lesegerät
  2. treffe folgende Vereinbarung: Der Verlierer zahlt dem Referee, der die Tasten für die Anzeige betätigt ein Bier
  3. Untersuche das Bild auf Farbklekse, denn jede Kugel hat eigene eigene Farbe. Wenn du mit einer zentralen Kamera den ganzen Tisch überwachst, kann das Programm diesen in Quadraten, die dem Kugeldurchmesser entsprechen, nach den Kugeln durchsuchen. Ist eine Quadrat nicht vollständig samtgrün (< (1-Pi/16) [%]) hast du eine oder mehrere Kugeln gefunden (Kugel liegt genua auf der Ecke des Suchquadrates). Anhand der gefundenen Farben machst du eine Vorauswahl (in Feld können maximal vier Kugeln zu sehen sein und prüfst die Nachbarfelder. Nach Vergleich der Farbgewichte weißt du wo die Kugeln liegen. Du musst dabei die in schwarz auf weißem Kreis aufgedruckten Ziffern berücksichtigen, die je nach Lage der Kugel zu 0.100% sichtbar sind. Sprich weiße und schwarze Pixel gehören zu jeder Farbe, vorher es sei denn der %Anteil von weiß und Schwarz am Gesamtanteil der farbigen Pixel ist so groß, dass die weiße resp. die schwarze Kugel im Bild sein muss. Pixel die du schon einer Kugel zugeordnet hast, werden aus der nachfolgenden Bewertung ausgeschlossen! Den Mittelpunkt der Kugel findest du, wenn du die Farbgewichte der fünf Quadrate betrachtest und den Mittelpunkt des mittleren Quadrates um die Werte der einzelnen Farbgewichte verschiebst. Die halbe Kugeln sind ein Problem, da zwei Halbe bestenfalls genau so viel oder schlimmstenfalls doppelt so viel Weiß zeigen wie die Weiße selbst. Du musst also im ersten Durchlauf die vollen Kugeln suchen und sehen, was übrig bleibt. Besonders schwierig wird es, wenn eine Halbe Kugel exakt Quer liegt und nur die Weiße Seite in die Kamera hält. Dann bleibt dir nur das Ausschlussverfahren oder die Auswertung von zwischengespeicherten Bilder aus der Bewegung.

https://pimage.sportime.de/detail-fillscale-webp/sportime-billardkugeln-pool-sport/350-9630

Viel Erfolg

0
covid69  24.07.2022, 21:17

Bullshit. Ganz normales mobilenet backbone benutzen und dann die letzte layer selbt trainieren. Fertig

0
covid69  25.07.2022, 15:18
@Silvanius

Mobilenet ist ein kleines und effizientes Convolutional neural network.

0

Einfach die letzte layer von mobilenet selbst trainieren.