Un robot solucionador de Sudoku
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Herramientas y máquinas necesarias
|
Aplicaciones y servicios en línea
| ||||
| ||||
|
Acerca de este proyecto
¡Un robot que resuelve y llena solo una cuadrícula de Sudoku!
Los sudoku son acertijos digitales que las computadoras pueden resolver automáticamente porque obedecen algunas reglas matemáticas simples.
El objetivo principal de este proyecto fue construir un robot rudimentario y autónomo, como la base de la mesa de trazado en la idea de una impresora 3D, que podrá:
- analizar la cuadrícula del sudoku que se va a llenar
- resolver el problema del Sudoku
- llenar la cuadrícula
Eso significa que el robot debe ser capaz de procesar la cuadrícula a resolver para detectar las casillas ya llenas, sus valores y luego proceder al llenado tal como se muestra a continuación en la cuadrícula llena.
¿Cómo funciona?
El hardware del robot consiste en utilizar una Raspberry Pi 3 con cámara. Se toma una foto de la cuadrícula al comienzo del proceso.
Luego, la cuadrícula se procesa previamente utilizando métodos de procesamiento de imágenes para eliminar los artefactos. Luego se corrige para obtener una imagen enfocada solo en la cuadrícula.
Una vez obtenida la cuadrícula de Sudoku, segmentamos la cuadrícula para extraer cada cuadro y procedemos al reconocimiento de imágenes mediante una red neuronal. Al final de este proceso, tenemos una representación numérica de nuestra cuadrícula que luego se puede resolver.
Una vez resuelto, el raspberry pi se usa nuevamente para controlar los motores del robot con el fin de llenar la cuadrícula.
En resumen,
- 1 - rediseñar la cuadrícula
- 2 - estime los contornos de la cuadrícula
- 3 - realce el contorno (multiplicando 1 por 2)
- 4:segmenta la cuadrícula para extraer cuadros
- 5 - proceda al reconocimiento de imágenes
El resultado
Habilidades requeridas
- visión por computadora
- Procesamiento de imágenes
- Habilidades de programación
- Electrónico
- Mecánico
API y herramientas útiles
- Python
- tensorflow para redes neuronales
- opencv para procesamiento de imágenes
Referencias
- https://en.wikipedia.org/wiki/Sudoku
- https://github.com/Sanahm/TensorFlow-Tutorials
Para obtener más información sobre el proyecto, no dude en ponerse en contacto conmigo en Github.
Código
Github
https://github.com/Sanahm/Sudoku-robothttps://github.com/Sanahm/Sudoku-robotProceso de manufactura
- Mando a distancia universal Raspberry Pi
- Un trozo de Raspberry Pi
- Cycle Chaser
- Detector de ladrones Raspberry Pi
- Sensor de temperatura Raspberry Pi
- RASPBERRY PI HOME AUTOMATION
- Robot que usa Raspberry Pi y Bridge Shield
- Robot evitador de paredes basado en Raspberry Pi - FabLab NerveCentre
- Creación del kit de robot MonkMakes Raspberry Pi
- XMOS startKIT:Creación de un XMOS y un robot Raspberry Pi XMP-1
- Robot de caja de CD Raspberry Pi