Ein Sudoku-Löser-Roboter
Komponenten und Verbrauchsmaterialien
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Notwendige Werkzeuge und Maschinen
![]() |
|
Apps und Onlinedienste
![]() |
| |||
![]() |
| |||
|
Über dieses Projekt
Ein Roboter, der allein ein Sudoku-Raster löst und füllt!
Sudoku sind digitale Rätsel, die Computer automatisch lösen können, weil sie einigen einfachen mathematischen Regeln folgen.
Das Hauptziel dieses Projekts war es, einen rudimentären und autonomen Roboter zu bauen, der auf der Basis eines 3D-Druckers basiert und in der Lage ist:
- analysiere das zu füllende Sudoku-Raster
- das Sudoku-Problem lösen
- das Raster ausfüllen
Das bedeutet, dass der Roboter in der Lage sein muss, das zu lösende Raster zu verarbeiten, um die bereits ausgefüllten Felder und deren Werte zu erkennen und dann mit dem Befüllen fortzufahren, wie das gefüllte Raster unten zeigt.
Wie es funktioniert?
Die Hardware des Roboters besteht darin, einen Raspberry Pi 3 mit einer Kamera zu verwenden. Zu Beginn des Vorgangs wird ein Foto des Gitters aufgenommen.



Das Raster wird dann mit Bildverarbeitungsverfahren vorverarbeitet, um Artefakte zu unterdrücken. Es ist dann Abhilfe zu schaffen, um ein Bild zu erhalten, das nur auf das Raster fokussiert ist.
Sobald das Sudoku-Raster erhalten wurde, segmentieren wir das Raster, um jede Box zu extrahieren und fahren mit der Bilderkennung mit einem neuronalen Netzwerk fort. Am Ende dieses Prozesses haben wir eine numerische Darstellung unseres Gitters, die dann gelöst werden kann.
Einmal gelöst wird der Himbeer-Pi wieder verwendet, um die Motoren des Roboters zu steuern, um das Gitter zu füllen.
Zusammenfassend:

- 1 - das Raster reparieren
- 2 - Schätzen Sie die Gitterkonturen
- 3 - Verbessern Sie die Kontur (durch Multiplizieren von 1 mit 2)
- 4 - Segmentieren Sie das Raster, um Kästchen zu extrahieren
- 5 - weiter zur Bilderkennung
Das Ergebnis
Erforderliche Fähigkeiten
- Computer Vision
- Bildbearbeitung
- Programmierkenntnisse
- Elektronisch
- Mechanisch
Nützliche Tools und API
- Python
- Tensorflow für neuronale Netze
- opencv für die Bildbearbeitung
Referenzen
- https://de.wikipedia.org/wiki/Sudoku
- https://github.com/Sanahm/TensorFlow-Tutorials
Für weitere Informationen zum Projekt zögern Sie nicht, mich auf Github zu kontaktieren.
Code
Github
https://github.com/Sanahm/Sudoku-Roboterhttps://github.com/Sanahm/Sudoku-RoboterHerstellungsprozess
- Raspberry Pi Universal-Fernbedienung
- Ein Stück Himbeer-Pi
- Cycle Chaser
- Himbeer-Pi-Dieb-Detektor
- Raspberry Pi-Temperatursensor
- RASPBERRY PI HOME AUTOMATION
- Roboter mit Raspberry Pi und Bridge Shield
- Raspberry Pi-basierter wandvermeidender Roboter – FabLab NerveCentre
- Bau des MonkMakes Raspberry Pi Robot Kit
- XMOS startKIT:Aufbau eines XMOS- und Raspberry Pi-Roboters XMP-1