ICP6 - GeoSnipes/Big-Data GitHub Wiki

Sub-Team Members

5-2 15 Naga Venkata Satya Pranoop Mutha

5-2 23 Geovanni West


ICP 6

Objective:

Use the video key frames from previous assignment for Image Classification/Object Detection Problem. Handle fuzzy classification/object detection task using at least two classification algorithms (e.g., Decision Tree, Random Forest, Naïve Bayes). Report the accuracy and confusion matrix obtained.


Features:

  • Random Forest
  • This method is one of the most successful machine learning models for classification and regression. In order to reduce the overfitting limitation, it combines many decision trees. It also handles categorical fashion in a similar way the decision trees handle. It also supports multi class classification. It doesn't require feature scaling. It can also capture both linear and non-linear feature interactions.


  • Decision Tree
  • Decision trees are widely used since they are easy to interpret, handle categorical features, extend to the multiclass classification setting, do not require feature scaling, and are able to capture non-linearities and feature interactions. Tree ensemble algorithms such as random forests and boosting are among the top performers for classification and regression tasks.


  • Fuzzy classification
  • Fuzzy classification is the process of grouping elements into a fuzzy set whose membership function is defined by the truth value of a fuzzy propositional function. The membership function is computed the percentage (confidence rate) of matched features of images compared with features of each category. The confidence rate tells if a image belongs to a particular category.


  • Confusion Matrix
  • A confusion matrix is a table that is often used to describe the performance of a classification model (or "classifier") on a set of test data for which the true values are known. The confusion matrix itself is relatively simple to understand, but the related terminology can be confusing.


    Input Data: Here, we will first start off with the feature extraction. First, we have taken a "sample.mkv" video file which consists of different kinds of foods. What we do over here is, we create key frames and we can see that it identifies the key frames with the pink spots which pops up in a box. Here, we are categorizing the images into 3 categories namely "Pizza", "Fries" and "HamBurger".

    Feature Extraction:

    So, from the video, we extracted 3 food categories given in separate text files. The o/p looks like this.

    Hamburger:

    Pizza:

    Fries:



    Bounding Box outputs:
    Fries:


    Pizza:


    Hamburger:

    Image Classification:

    Coming to the image classification, the first thing we need to have is the training data and the test data. For this, the "features.txt" will be the training data and the "hamburger.txt" , "pizza.txt", and "fries.txt" together will be the test data.

    In this assignment, we are using Random Forest and the Decision Tree as the 2 classification methods.

    Decision Tree:

    Summary:

    For both the random forest and the decision tree, we get 33.3 % accuracy which says that this model is not at all a good model for the classification of this data or data is too low.

    Click here for Source Code

⚠️ **GitHub.com Fallback** ⚠️