ai-in-data-science-data-challenge

Solution to the Data Challenge task. Authors are Izabell Járó, Kristóf Benedek, and Marcell Emmer.

https://github.com/emmermarcell/ai-in-data-science-data-challenge

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.9%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Solution to the Data Challenge task. Authors are Izabell Járó, Kristóf Benedek, and Marcell Emmer.

Basic Info
  • Host: GitHub
  • Owner: emmermarcell
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 72.8 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

README.md

AI-in-Data-Science-Data-Challenge

Solution to the Data Challenge task. Authors are Izabell Járó, Kristóf Benedek, and Marcell Emmer.

Computer vision is one of the most promising fields of data science since it has a wide range of applications including self-driving cars, medical image analysis, and facial recognition. The Data Challenge aims to provide hands-on experience in digital image processing.

Our task is to build an algorithm for prohibitory traffic sign recognition. Some of the possible ways of getting images:

  • It is possible to simply take screenshots of the desired images (e.g. Google Street View or other online sources).
  • You can use the google-streetview Python module for downloading Google Street View images with a Python script. Details about the usage of Google Street View API can be found in the official documentation.
  • Use some already existing datasets, augment it, label it, etc

There are 6 traffic sign categories your model should be able to recognize:

There are multiple possibilities to tackle this problem. Just to name a few: pattern recognition with image segmentation, CNN, using pre-trained models, etc.

Our group chose to use a pre-trained ANN model. We worked in python mainly using keras, numpy, cv2 and some tensorflow.

You can reach the database for the simple categorizer here. The YOLOv8 dataset was trained with that data available here (be aware this file is quite large, ~16 Gb!). The data for the "simple" categorizer contains 6 different classes of prohibitory traffic signs. It was compiled from the GTSRB and TSRD databases. It is already split into a training and testing dataset. Preprocessing and data augmentation are needed, these are just the raw source files. The data for the YOLOv8 ANN was created from the open access data from Mapillary. It has at the core over 40 000 images for training and validation and over 10 000 for testing with over 400 categories. The original images were compressed and converted to lossy .jpg format from lossless .png, to obtain a smaller-sized dataset, but the resolution was kept.

The resulting categorizer's CNN can be found here. The GUI for the classification was inspired by this blog post

Results

We documented the results and our code in this file

TODO - [x] categorize the dataset for YOLO and pick only the objects needed for our task (i.e. mostly the prohibitory ones) - [x] re-split/augment the data for YOLO - [x] augment the data for the simple categorizer - [x] create the categorizer - [x] Write a GUI for the categorizer - [x] train the YOLOv8

Owner

  • Name: Marcell Emmer
  • Login: emmermarcell
  • Kind: user
  • Location: Budapest, Hungary

I am a physicist interested in group theory, particle physics, QFT, machine learning, and more. Currently studying at the Budapest University of Technology

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Emmer"
  given-names: "Marcell"
- family-names: "Járó"
  given-names: "Izabell"
- family-names: "Benedek"
  given-names: "Kristóf"
title: "Traffic sign categorizers: classifying traffic signs with simple CNN and pre-trained network"
version: 2.0.4
date-released: 2023-12-30
url: "https://github.com/emmermarcell/AI-in-Data-Science-Data-Challenge"

GitHub Events

Total
Last Year