sakshamarora's Blog

Image Processing Operations Continued - Weekly Check-in 5

sakshamarora
Published: 06/29/2020

End of Week 4  - 29/06/2020


What did you do this week?

I worked on adding the ability to use default parameters in operations to deal with optional parameters in OpenCV functions and wrote new image processing operations for performing various tasks such as extracting features like shape, color, texture, etc. With the directory source added last week, DFFML can now perform image classification on image datasets present in a directory format using the image processing operations to extract feature vectors to train and test on!

What is coming up next?

I'll continue to add operations and work on documenting how image classification can be done in DFFML using different image processing operations and their combinations to extract suitable feature vectors. For now, the next step is to add local feature extraction techniques such as ORB, KAZE, HOG, and more!

Did you get stuck anywhere?

Just some minor errors here and there. Nothing in particular. :)


Thank you for reading!

View Blog Post

Image Processing Operations - Weekly Check-in 4

sakshamarora
Published: 06/22/2020

End of Week 3  - 22/06/2020


What did you do this week?

I worked on finishing up the directory source for reading images and its test cases. The directory source will be able to read images for performing unsupervised classification too! Next, I have started writing new image processing operations for performing various tasks such as extracting features like shape, color, edges and more! 

What is coming up next?

I'll continue to add image operations and start working on documenting how image classification will be performed using these operations in DFFML in the coming weeks!

Did you get stuck anywhere?

Got stuck at how the image operations may deal with default and optional parameters, but after discussions with my mentor things got clear.


Thank you for reading!

View Blog Post

Images Images Images - Weekly Check-in 3

sakshamarora
Published: 06/15/2020

End of Week 2  - 15/06/2020


What did you do this week?

I worked on getting the images stored in a directory to enter the network. For training data, the directory source reads the images and labels them with the same name as the sub-folder they are present in inside the train folder. The directory structure looks like this for training (supervised classification) :-

| -- dataset
| -- | -- train
| -- | -- | -- label_1
| -- | -- | -- | -- image_1.png
| -- | -- | -- | -- image_2.png
| -- | -- | -- | -- .....
| -- | -- | -- label_2
| -- | -- | -- | -- image_1.png
| -- | -- | -- | -- image_2.png
| -- | -- | -- | -- .....
 

I recently added a resize operation which would resize every image to be resized to the given provided new dimensions using the OpenCV resize function which will be reviewed by my mentor soon. I added a new flag to the CLI commands to display record data in a tabular format instead of JSON dumping them so as to make it easy to with long image arrays in a better way! 

What is coming up next?

I will be working on finalising the directory source to accommodate for unsupervised classification too and on adding more functions from the OpenCV library to manipulate the image arrays and extract their features.

Did you get stuck anywhere?

Found out that the existing scikit models in DFFML are not able to train on features that are not single valued. So, I am trying to find a way to fix this bug for now.


Thank you for reading!

View Blog Post

Brainstorming ideas - Weekly Check-in 2

sakshamarora
Published: 06/08/2020

End of Week 1  - 08/06/2020


What did you do this week?

I had a lot of brainstorming sessions to decide on a well thought out layout for the project. Read lots of research papers, stack overflow answers, documentations and articles on image classification, pre-processing and feature extraction techniques. Tried out various image processing algorithms and feature extraction techniques and compiled a list of techniques and datasets I will be dealing with in the project. I had an individual meeting with the mentor where we discussed and decided upon the various ways we can go about the project. Also discussed the ways datasets would be handled by DFFML and what other possibilities there might be.

What is coming up next?

I will be starting on implementing ways to get the images from a dataset into the network and start wrapping various functions from the OpenCV library.

Did you get stuck anywhere?

Got stuck at lots of places like how will the image datasets get into the network and how will they be manipulated before finally extracting their features and feeding into a classification model, but got a clearer view on how things may work out after having discussions with my mentor.


Thank you for reading!

View Blog Post

Beginning of Coding Period - Weekly Check-in 1

sakshamarora
Published: 06/01/2020

>>> import Introduction
>>> Introduction.display()
Hello World! My name is Saksham Arora. I'm a 2nd year undergraduate student from India pursuing B. Tech in Information Technology. This is my blog for GSoC 2020 @ PSF!

Over the summer, I'll be working with DFFML under the umbrella of Python Software Foundation. My project for the summer is to Integrate Image Processing into DFFML!
 
 
GSoC 2020 Weekly Check-in 1 (End of Community Bonding Period - 01/06/2020)

What did you do this week?

Since it was the last week of Community Bonding period, I worked on finishing a few pending issues assigned to me, researched and brushed up on important topics related to my GSoC project. In the community bonding period, we had virtual meetings (also called Weekly Syncs) twice a week where I interacted with the mentors to discuss about new features and enhancements for the project. Also, I went through a few videos and documentation on asynchronous functions in python which was recommended by one of the mentors as a part of understanding the codebase better!

What is coming up next?

I will be adding the capability to normalize the MNIST dataset and pre-process any image provided for prediction on the dataset using the CLI before feeding it to a machine learning model. I will be discussing with the mentors on the best approach to get started on my project and start working on wrapping the OpenCV library with DFFML this week!

Did you get stuck anywhere?

I briefly got stuck at a unittesting error where it was trying to create a test class out of a decorator function which it shouldn't be doing, I was eventually able to figure it out after thoroughly going through the importing section in the Python documentation.

 

I'm very excited to get started on this journey. I hope everyone does great this summer!
Thank you for reading!

View Blog Post