Ravi Mallikarjun, Otto-von Guericke University, Magdeburg,
ravi.chennaboina@st.ovgu.de
PRIMARY
Niha Mohanty, Otto-von Guericke University, Magdeburg,
niha.mohanty@ovgu.de
Student Team:
YES
Python
R Programming
Plotly
Bokeh library for interactive Visualisation and Networkx for Edge, Node graphs.
We also created an application for drawing the bounding box and giving the corresponding label to it. The basic structure was taken from a online source. We modified the application with more advanced features and we also tried integrated it with the python code which calculates the correct classification and incorrect classifications.
Referce to the source code of basic structure:
https://github.com/tzutalin/labelImg
Referce to our source code ,you can find it in BBoxLabeling folder:
https://github.com/ravi419/VAST-Mini-Challenge2
Approximately how many hours were spent working on this submission in total? 80 hrs
May we post your submission in the Visual Analytics Benchmark Repository after VAST Challenge 2020 is complete? YES
Video
https://youtu.be/jUbEe1US5cw
https://github.com/ravi419/VAST-Mini-Challenge2/tree/master/ScreenCast
Given the images and text files as well as machine learning outputs, use visual analytics to answer the questions below to improve and understand machine learning outputs and track provenance, uncertainty, and confidence in machine learning results. Ultimately, you must link multiple data types to identify the group CGCS is seeking.
Approach: To examine any outcome, there should exist a Ground Truth. In order to generate the ground truth, we created a bounding box Labeling application through which we have labeled all the 40 person's images manually ,the application outputs a csv file containing the BoundingBox mesurements i.e x, y points and width, height of the box along with the corresponding label and filename.
Firstly, we compare the distribution of the labels accross the YOLO algorithm and the manually labeled files.
Secondly, we check the number of times an object label is misclassified by the YOLO algorithm. Here, we use the confusion matrix to show the misclassification of an object.
Further, we tried to visualise the objects that are correctly and incorrectly classified in the images by the YOLO algorithm.
Process:
Below image shows the count of person's per group who have object in common:
We see it is more likely that the 'noisemaker' is the totem. Interestingly, among the 11 persons with high probability, the persons 1, 2, 11, 12, 15, 20, 36 all have the 'noisemaker' object. Further strengthening the idea that the 'noisemaker' is the totem and the group of 8 persons 1, 2, 11, 12, 15, 20, 36, 37 are the secret group.
The biggest challenge that we faced was to perform the vizulization task. We developed an application which is used to re-classify and compare the classification results of the YOLO algorithm. The images that are classified by the YOLO algorithm had sufficient details for us to evalute its performance. With help of our application which is based on python, when an image is opened, there is a provision for drawing bounding boxes and labeling them with the available Label names within the training data. In this application when an image is opened, its corresponding bounding boxes (which are provided by the YOLO algorithm) are projected on them. Thus, this made it easier for us to know whether the image classification was accurate. If the classification is incorrect then we can delete or resize or re-label all the present bounding boxes. With the help of this application we are also able to draw a new bounding box on the image if required. After saving the changes we can immediately know the overall classification and mis-classication rate through our application.
The three images to justify our approach are: