Club-RamYoogesh

From jderobot
Jump to: navigation, search

Progress Card [edit]

Author: Ram Yoogesh [yoogie.ram@gmail.com]

Academic Year 2017-Present

Github Repository [1]

Tags: Deep Learning

Progress[edit]

Week 7 : Creating Teleoperator[edit]

After taking few months of break, i was assigned the following tasks

1) Make the europilot run and create an teleoperator

2)

   a) Make the images appear in the GUI 
   b) Use the buttons from the GUI to control the game such as applying speed  and brakes

3) Collect supervised data

4) Train an network

5) Make it drive

My progress so far,


1) Done (Europilot is working fine and i have created an basic teleoperator and the below image depicts it)



2) Still working on it for dynamic loading of image in the operator

3) Done with it

4) working on it




Week 6 : Learning Europilot[edit]

This week , the main task was to learn the Europilot fully and specifically the commands that we will be using to automate self driving cars . Some of the commands Include Steering commands , Pedal commands and passing values from the code to the game. I am done with that task .

Again out of my own Interest I implemented the Model from the research paper as mentioned earlier https://arxiv.org/pdf/1604.07316v1.pdf

I downloaded the data from the Udacity self driving car simulator and you can find the code for In my repository https://github.com/yoogesh/end_to_end


You can find the below Image which shows the convolutional model which I have Implemented from the paper



In the same manner, rather than Implementing the digit classifier which I did last week, Now I had an glimpse of the code which helped me to understand In a much better way how the digit classifier works.

Week 5 : Learning in detail[edit]

Finally I rectified the error that I found when I executed digit classifier in week 2. Now I ran the digit classifier from https://github.com/JdeRobot/dl-digitclassifier

using this command In terminal 1

cameraserver cameraserver.cfg

and this command in terminal 2

python digitclassifier.py digitclassifier.yml



In addition to that I also had an glimpse of the keras and the tensorflow code inside the dl-digitclassifier repository.

The main work of this week is to have an further understanding of the europilot code and its Implementation, Such as giving commands to the virtual joystick inside the game and reading the sensor data etc. However my knowledge on this has further increased when compared to the previous week.

Furthermore I have been asked to study the darknet yolo code, which am doing it now.


Week 4 : Executing the algorithms[edit]

The first task of this week is to Train an network (either to detect or to classify the images used). So I used Keras framework and created my own 3 Layer CNN to train an cats vs dogs dataset from kaggle https://www.kaggle.com/c/dogs-vs-cats/data . The corresponding output Image(Epoch data including the accuracy and error).




Full working code for the above dataset Is available In https://github.com/TheRoboticsClub/2017-colab-ram_yoogesh/blob/master/cats-vs-dogs-redux.ipynb .


Out of my own Interest I referred to an paper from Nvidia https://arxiv.org/pdf/1604.07316v1.pdf (Which taught me the concept of end to end deeplearning for self driving cars). After getting an Insight on yolo algorithms I wanted to Implement It.


But before executing yolo algorithm, I was again asked to choose an dataset (Imagenet or COCO Dataset). I was familiar with Imagenet, so I decided to move on with Imagenet dataset heron.


Now to run an yolo algorithm I followed steps from the website https://pjreddie.com/darknet/yolo/ . The corresponding output Image for the yolo algorithm is available In ( http://github.com/TheRoboticsClun/2017-colab-ram_yoogesh/tree/docs/ ). I also executed the same algorithm for different Images using their pre trained weights. So I had an better understanding of its working mechanism.



Coming to the final part of this week, Important exercise Is to understand how Europilot works, by flipping throughly the code In Its repository. Such as getting the sensor data, ordering commands and so on. I have explored the repository and have an slight Insight on how It works. Continuous Exploration will make me stronger In understanding the software. I hope I'll get It done IN another couple of days.


Week 3 : Exploring about Softwares and Wiki page[edit]

In this week I got access to my wiki page ( http://jderobot.org/Club-RamYoogesh ) and my github repository ( https://github.com/TheRoboticsClub/2017-colab-ram_yoogesh ).


I have been Instructed to update my wiki page as well as my github repository as I progress with my works .


During this week, I took an glimpse of Imagenet Dataset ( http://image-net.org/index ), how they are been arranged and what type of data do they have (Hiaearchies of an object eg: Fish, Car and so on).


After Exploring the dataset, I was asked to pick an software (Europilot or Carla) Inorder to work with that In the near future. I chose Europilot to work with.


But I was having error while executing the digit classifier from the previous week exercise . I tried all means to solve that, but I got an error regarding various python versions In my desktop. So I reinstalled ubuntu in my desktop and installed all necessary softwares to set up my developing environment. But still I coudnt execute that.


Week 2 : Exploring further more[edit]

In this week , I learned about softwares such as Europilot ( https://github.com/marsauto/europilot )


and Carla ( https://github.com/carla-simulator/carla ).



I acquired different angle of understanding about autonomous car driving by giving glance of all the code examples from Europilot and the carla packages.

Followed by this , I revised Convolutional neural networks (How does filter size matter , how the filter size affects the output and basic functioning of convolutional neural networks ).


After knowing more about CNN, I started learning more about datasets namely COCO Dataset from http://cocodataset.org/#home .



Finally I Implemented digit classifier from the github repo https://github.com/JdeRobot/dl-digitclassifier .





Week 1 : Starting with the basics[edit]

In the first week , I Installed Ubuntu Operating system on my desktop for setting up the environment to work with Deep learning algorithms, followed by that I Installed Jderobot Packages as described in http://jderobot.org/Installation from Debian packages . Running my first example ,

cameraserver cameraserver.cfg
cameraview cameraview.yml

Which opened an Camera view in my desktop and the below Image is the actual output from the webcamera

Running my Second example,

cameraserver_py cameraserver_py.cfg
cameraview cameraview.yml

Which opened the same camera view using the web camera

Running my Third example,

cameraserver cameraserver.cfg
opencvdemo opencvdemo.cfg

Which opened the same camera view with an control panel along with it simultaneously loading the web camera

Followed by this I executed all the examples from the page http://jderobot.org/index.php/Examples (Examples which work using the web camera )