# 30 Machine Learning Projects For Beginners And Final Year Students

Hello Everyone, After a long time, we’re back with 30 interesting machine learning projects with source code. This projects contains demo video, steps and source codes / tutorial for easiness or reference purpose. This curated list is suitable for beginners and intermediate ML Practitioners.

## Best Machine Learning Projects With Source Code (Top Picks)

• ML/AR Cut And Paste
• Rubik Cube Solver
• Sudoku Solver Using ML
• AI That Can Solve 100 x 100 Cube
• Minesweeping Automation Using Machine Learning With Python
• Cartoonify: A Serverless Machine Learning App

## Unique Machine Learning Projects Ideas:

### 1. Rubik Cube Solution using OpenCV

• Step 1. Capture the video of cube
• Step 2. Convert image from BGR to HSV
• Step 3. Separate 6 color images using InRange
• Step 4. Find area using FindContours
• Step 5. Use kociemba module: Kociemba Module

### 2. Sudoku Solver Using Machine Learning

Grids Extraction:

Firstly, the algorithm have to find where the grids are!

The pipeline is:

• Preprocess image to enhance high frequencies
• Find lines thanks to Hough Space
• Analyse lines to know which can correspond to a grid

Digits Identification & Grids Solving:

Once grids are extracted, for each grid you’ve to:

• Detect shape which can be digits
• Use my CNN do identify digits
• Create a numeric grid in a table & solve it

Grids Reconstruction:

• Create a virtual image to fill the initial image
• Add the 2 images together to create the final result

In this curated collection of innovative machine learning projects, this one is considered as one of the best projects for machine learning beginners and final year students

### 3. ML/AR Cut And Paste

Cyril Diagne (the creator of this project) has used BASNet for salient object detection and background removal.

The accuracy and range of this model are stunning and there are many nice use cases so I packaged it as a micro-service / docker image: Basnet.

In this curated list of machine learning projects, this one is considered as one of the best projects for machine learning beginners and final year students.

AR Cut & Paste

• And again, the OpenCV SIFT trick to find where the phone is pointing at the screen.
• The author has combined it in the form of small python library: Screenpoint
• Send a camera image + a screenshot and you get accurate x, y screen coordinates!

### 4. TTNet Pytorch

This project is based on an implementation of the paper “TTNet: Real-time temporal and spatial video analysis of table tennis”

Steps Overview:

• Preparing the dataset
• Model & Input tensors
• Training
• Visualizing training progress
• Evaluation

In this curated collection of best machine learning projects for 2024, this one is considered as one of the advanced and fun projects for machine learning beginners and final year students.

### 5. How This AI Gives Elon Musk An Unimaginable Look

The demo video is made using StyleFlow: Attribute-conditioned Exploration of StyleGAN-generated Images using Conditional Continuous Normalizing Flows (ACM TOG 2021)

Steps Overview:

• Docker Installation
• UI Illustration
• Editing Images Using Pretrained Models
• Training New Model
• And a lot more

### 6. MarI/O – Machine Learning For Video Games

MarI/O is a program made of neural networks and genetic algorithms that kicks butt at Super Mario World.

### 7. Build And Deploy Cartoonify: A Serverless Machine Learning App

Some prerequisites to build and deploy Cartoonify

If you want to run and deploy Cartoonify, here are some prerequisites first:

• An AWS account (don’t worry, deploying this app will cost you almost nothing)
• Docker installed on your machine
• torch and torchvision to test CartoonGAN locally (optional)

All set? you’re now ready to go.

• Test CartoonGAN locally
• Deploy CartoonGAN on a serverless API using AWS Lambda
• Build a React interface
• Deploy the React app on Netlify

Recommended Stories:

### 8. Deep Q-learning For Playing Tetris

If you’re looking for the practical implementation of Reinforcement learning, then this project is for you. It’s a simple RL project and the author has provided Python code for reference. So, check it out and create your own Tetris…

### 9. A Simple But Interesting Chess AI

• Move-generation
• Board evaluation
• Minimax
• Alpha beta pruning.

Steps Overview:

• Move generation and board visualization
• Position evaluation
• Search tree using Minimax
• Alpha-beta pruning
• Improved evaluation function

### 10. How To Build An AI That Can Solve 100 x 100 Cube

In this project, You’ll learn about how to create an AI System that can solve the 100×100 Rubik Cube. To learn more about this artificial intelligence project, Check out the Demo and Source Code from the below given link.

### 11. Using Deep Q-Network To Learn How To Play Flappy Bird

This project follows the description of the Deep Q Learning algorithm described in Playing Atari with Deep Reinforcement Learning [2] and shows that this learning algorithm can be further generalized to the notorious Flappy Bird.

Installation Dependencies:

• Python 2.7 or 3
• TensorFlow 0.7
• pygame
• OpenCV-Python

### 12. AI Duet – A Piano That Responds To You

This experiment lets you make music through machine learning. A neural network was trained on many MIDI examples and it learned about musical concepts, building a map of notes and timings. You just play a few notes, and see how the neural net responds.

A.I. Duet is composed of two parts, the front end which is in the static folder, and the back end which is in the server folder.

The front-end client creates short MIDI files using the players’ input which is sent to a Flask server. The server takes that MIDI input and “continues” it using Magenta and TensorFlow which is then returned back to the client.

### 13. AI Learns To Play Super Mario

In this project, You will need Python 3.6 or newer. The result of this project was that AI was able to successfully complete all these Super Mario levels (1-1, 2-1, 3-1, 4-1, 5-1, 6-1, and 7-1). It was also able to learn: flagpole glitch with an enemy, wall jump, and a fast acceleration

### 14. The Infinite Drum Machine – Thousands Of Everyday Sounds, Organized Using Machine Learning

Sounds are complex and vary widely. This project uses machine learning to organize thousands of everyday sounds. The computer wasn’t given any descriptions or tags – only the audio.

Using a technique called t-SNE, the computer placed similar sounds closer together. You can use the map to explore neighborhoods of similar sounds and even make beats using the drum sequencer.

### 15. Thing Translator

This experiment lets you take a picture of something to hear how to say it in a different language. It’s just one example of what you can make using Google’s machine learning API’s, without needing to dive into the details of machine learning.

### 16. Fruit Ninja AI

In this project, The AI only loses when a bomb overlaps with a fruit on its whole path, as the AI won’t find a good opportunity to slice it.

The code was tweaked to run on a 3.5GHz I5-7600 (no GPU acceleration) (too much/little computing time between frames might affect the AI’s decisions and timings).

### 17. Minesweeping Automation Using Python And OpenCV

Before you are ready to make a set of minesweeping automation software, you need to prepare the following tools/software/environments

Development environment:

• Python3 environment-3.6 or above recommended [Anaconda3 is more recommended, many of the following dependent libraries do not need to be installed]
• Numpy dependent library [no need to install if there is Anaconda]
• PIL dependency library [no need to install if there is Anaconda]
• opencv-python
• win32gui, win32api dependent libraries
• IDE that supports Python [optional, if you can bear to write programs with a text editor]

Minesweeper software:

Minesweeper Arbiter (MS-Arbiter must be used for minesweeping!)

Steps Overview:

• Form interception
• Thunder block division
• Thunder block recognition
• Implementation of minesweeping algorithm
• Final Step

### 18. Move Mirror: An AI Experiment With Pose Estimation In The Browser Using TensorFlow.js

Move Mirror lets you explore pictures in a fun new way. You turn on your webcam and move around, and the computer pulls up pictures of poses that match yours in realtime.

The image database is made of more than 80,000 pictures that are pulled together – of people dancing, doing karate, cooking, walking, skiing and so on.

### 19. SkyJack – Autonomous Drone Hacking

The maker has created a drone using a Parrot AR.Drone 2, a Raspberry Pi, a USB battery, an Alfa AWUS036H wireless transmitter, aircrack-ng, node-ar-drone, node.js, and SkyJack software.

This drone flies around, locates the wireless signal of any other drone nearby, disrupts the wireless connection of the legitimate owner of the target drone, pretends to be the owner, and then sends commands to the target drone and other compromised drones.

### 20. Analyze Basketball Shots And Shooting Pose With Machine Learning

This is an artificial intelligence application built on the concept of object detection. Analyze basketball shots by digging into the data collected from object detection.

We can get the result by simply uploading files to the web App, or submitting a POST request to the API.

All the data for the shooting pose analysis is calculated by implementing OpenPose. Please note that this is an implementation only for noncommercial research use only. Please read the LICENSE, which is exaclty same as the CMU’s OpenPose License.

### 21. Tic Tac Toe Using ArKit

In this experiment, the author has taken the simple scenekit tic-tac-toe (one of his repositories), and tried to put it in ARKit:). The game also includes a decent AI opponent.

### 22. AlphaZero Gomoku

This is an implementation of the AlphaZero algorithm for playing the simple board game Gomoku (also called Gobang or Five in a Row) from pure self-play training.

The game Gomoku is much simpler than Go or chess, so that we can focus on the training scheme of AlphaZero and obtain a pretty good AI model on a single PC in a few hours.

### 23. AI Learns To Play Pool

The author has created an AI to play pool, and he has used processing to make this and you will need processing to run this https://processing.org/

### 24. Candy Crush Bot

A python bot that plays Candy Crush. Due to lack of time when the author coded this he was like 75% in Dead Mood, so the project is full of hardcoded stuff:)

### 25. NSynth: Sound Maker – Make Unusual New Sounds With Machine Learning

Open NSynth Super is an experimental physical interface for NSynth, a machine learning algorithm developed by Google Brain’s Magenta team to generate new, unique sounds that exist between different sounds.

Open NSynth Super allows you to create and explore new sounds that it generates through a simple to use hardware interface that integrates easily into any musician’s production rig. To find out more, visit the NSynth Super website.

### 26. 2048 Game Using AI

The implemented algorithm chooses which move to play like this: For each possible move, play it and then continue to play random moves until the game is finished.

This is done many times and the move that returns the highest average score is chosen. Using only 100 runs per move the AI reaches the desired 2048 tile 80% of the runs and the 4096 tile 50%!

### 27. AI Pacman

In this project, the author has used processing to write this code and if you wanna run it then you will need processing https://processing.org/

### 28. Pokemon Go Bot

PokemonGo-Bot is a project created by the PokemonGoF team. Since no public API available for now, a patch to use HASH-Server was applied.

The project is currently setup in two main branches:

Dev also known as beta – This is where the latest features are, but you may also experience some issues with stability/crashes.

Master also known as stable – The bot ‘should’ be stable on this branch, and is generally well tested.

### 29. Hill Climb Racing AI

Watch the step by step tutorial video and create your own hilly climb racing AI.

### 30. Snake AI

In this project, the author has built a neural network and trained it to play Snake using a genetic algorithm.

Each snake contains a neural network. The neural network has an input layer of 24 neurons, 2 hidden layers of 16 neurons, and one output layer of 4 neurons.

Note: The network can now be customized with the number of hidden layers as well as the number of neurons in the hidden layers.

We hope this project collection will be helpful for you. If you think these machine learning projects and artificial intelligence projects with source code can help others in any way, then share it with them and also with your friends.

If you have more projects like the above-mentioned, then please share them with us on any of our social media accounts (@TheInsaneApp), we will check them, verify them, and try to add to this post.

### What Are Good Machine Learning Projects?

Some of the unique, interesting and good machine learning projects and artificial intelligence projects are ML/AR Cut And Paste, Rubik Cube Solver, Sudoku Solver Using ML, AI That Can Solve 100 x 100 Cube, Minesweeping Automation Using Machine Learning With Python, and Cartoonify: A Serverless Machine Learning App.

### What Are Some Cool AI Projects?

Some Cool Artificial Intelligence (AI) Projects are AI that Gives Elon Musk An Unimaginable Look, AI Chess, AI That Can Solve 100 x 100 Cube, AI Duet – A Piano That Responds To You, and Move Mirror: An AI Experiment With Pose Estimation In The Browser Using TensorFlow.js

### What Are The Best Machine Learning Projects For Final Year?

Some Of The Best Machine Learning Projects For Final Year Students Are Recommender System Projects, Sales Forecasting Projects, Stock Price Prediction Projects, Build a Sorting, Categorizing, and Tagging System, Patient Sickness Prediction System, and an AI-driven Sentiment Analyzer.

### How Do I Start My First Machine Learning Project?

A Framework for those who wants to build their first machine learning project. Steps to build your first machine learning project are

1. Problem Definition and Data Collection
2. Data Preparation
3. Model Training
4. Analysis (Accuracy, Precision and other measures)
5. Model Deployment
6. Retrain the Model