🕵🏼♀️ What is The Solve Sudoku Puzzle About?
Sudoku is a logic-based, combinatorial number-placement puzzle. Sudoku is a fan favourite relaxing activity for many. These number puzzles include a 9 x 9 grid containing a 3 x 3 subgrid with numbers from 1 to 9. To know more about the rules of sudoku, click here.
In this puzzle, you’ll be given an image of sudoku, and you have to output the 81 character solution for the sudoku.
💪🏼 What You’ll Learn
In this puzzle, you will learn
- Computer Vision techniques to identify and extract digits from an image.
- Digital Classification
✔ The Task
Learn the fundamentals of computer vision by building a model that solves sudoku from images. Given an input image of a sudoku puzzle, output the correct 81 character string solution for the puzzle. Let’s get started!
👩🏽💻 Explore Dataset
The dataset contains 10001 images.
- Training set: 5000 images
- Test set: 50001 images
Here are some details about the dataset images:
- Each image consists of an unsolved Sudoku puzzle.
- Each puzzle is of a different colour, rotated by an angle with varying line widths, and the digits all look different.
- Each image has dimensions (300, 300), but the puzzle sizes may vary due to the rotation.
The training and test dataset contains the following:
- label: contains field id and field solution
- id: this corresponds to the file's name inside the images directory
- solution: this is a string of 81 characters. It is the complete solution to the sudoku puzzle.
🗂 Dataset Files
- train.tar.gz : (5000 samples) This file contains a folder of data with all the images of the sudoku puzzles and a label.csv with labels, i.e. solutions ( in string format ) for the corresponding puzzle.
- test.tar.gz : (5001 samples) This file contains a folder of data containing all the images of the sudoku puzzle whose solutions need to be found.
- sample_submission.csv: Sample submission format for the challenge.
🔬 Let's Solve This Puzzle
The starter kit breaks down everything from downloading the dataset, loading the libraries, processing the data, creating, training, and testing the model.
Click here to access the basic starter kit. It contains in-depth instructions to:
- Download the necessary files
- Setup the AIcrowd-CLI environment that will help you submit directly via a notebook
- Downloading dataset & importing libraries
- Preprocessing the dataset
- Creating the model
- Setting the model
- Training the model
- Submitting the result
- Uploading the results
Make your first submission using the starter kit. 🚀
🖊 Evaluation Criteria
The Mean Squared Error metric will be used to test the model's efficiency during the evaluation.
🤫 Hint to get started
To solve this puzzle, try to break down the puzzles in simple steps
- Break the image into single blocks
- Identify the block containing numbers
- Identify the numbers
- Use any sudoku solver to solve the puzzle
This notebook takes you through the above approach and, at the same time, makes it easy to follow through!
📚 Resource Circle
- Check out this blog to understand more about the above approach.
- You can also check out this blog to solve the same puzzle using image segmentation.
👯♀️ Get Help From Community
Hop over to the AIcrowd Blitz discord server to see ongoing discussions about this puzzle.
🙋♀️ Subscription Queries
Solve Sudoku is one of the many free Blitz puzzles you can access forever. To access more puzzles from various domains from the Blitz Library and receive a unique new puzzle in your inbox every two weeks, you can subscribe to AIcrowd Blitz here.
[Starter Kit] Solve Sudoku Puzzle