AI Material Recognition and Bidding System
A computer-vision system developed for a team raft-building challenge that identified available materials and supported automated bidding decisions.
Tech Stack
Overview
This project was an AI-powered object-recognition and bidding system created for a school raft-building challenge.
During the final challenge, teams had to purchase materials through a bidding process and use the items they acquired to construct a raft. Our system was designed to recognize the available object from an image and place a bid based on the identified material.
The model could classify seven objects:
- Bamboo
- Barrel
- Jute rope
- Ladder
- Oars
- String rope
- Tyre tube
The Challenge
The project combined computer vision with a practical team competition.
Recognizing an item correctly was important because each material had a different purpose and value when constructing the raft. An incorrect classification could lead the system to place an unsuitable bid or cause the team to miss an important building material.
The project therefore required more than simply training an image classifier. We also had to collect and manage a dataset, connect predictions to bidding decisions, and prepare the system for use during the final challenge.
Dataset Creation
Our team collected and managed the image dataset ourselves rather than receiving a prepared dataset.
Most of the process was completed manually, including:
- Collecting pictures of each object
- Organizing images into their correct categories
- Reviewing the dataset for incorrect or unsuitable images
- Preparing separate training and testing folders
I also created a script that automatically renamed the images within each folder. This made the dataset more consistent and reduced some of the repetitive work involved in organizing it.
Model Development
The model was developed in Python using TensorFlow and Keras inside Google Colab.
The training pipeline included image normalization and data augmentation. Small transformations were applied to the training images to help the model recognize objects under different conditions.
The augmentation process included:
- Small image rotations
- Horizontal and vertical position changes
- Zoom variation
- Horizontal flipping
The system then learned to classify an image into one of the seven supported material categories.
Results
The final model achieved:
- 72.1% training accuracy
- 68.8% validation accuracy
The difference between the two results indicated some overfitting, but the model still demonstrated that it could learn meaningful visual differences between the seven object classes.
The results also showed how dataset quality, image variety, lighting, camera angle, and visual similarities between objects can affect a computer-vision model.
My Role
This was a group project, and I led the technical work as the team’s CIO.
My responsibilities included helping guide the technical direction of the project, organizing development, supporting the dataset workflow, and ensuring that the AI system could be used as part of the larger raft-building challenge.
I also developed the image-renaming script used to organize the collected dataset.
Technical Challenges
One of the largest challenges was creating our own dataset manually.
Unlike working with a prepared public dataset, we had to consider:
- Whether each image represented the correct category
- Whether the dataset contained enough visual variety
- Whether certain classes had significantly more images than others
- How differences in lighting and camera angles affected predictions
- How visually similar materials could confuse the model
These issues directly influenced the model’s accuracy and taught us that the quality of an AI system depends heavily on the quality of its training data.
What I Learned
This project gave me practical experience with the complete machine-learning workflow rather than only model training.
I learned about:
- Collecting and organizing image data
- Automating repetitive dataset tasks
- Preparing images for training
- Applying data augmentation
- Training and evaluating a classification model
- Recognizing signs of overfitting
- Connecting AI predictions to a real-world decision
- Leading the technical side of a group project
Most importantly, the project showed me how artificial intelligence can be integrated into a larger physical challenge instead of existing only as an isolated software demonstration.