Week 2

nitruspeed
Published: 07/09/2022

Week 2

Hello, I am Suhaas Neel. I am currently pursuing Electronics and Communications Engineering at Jawaharlal Nehru University, New Delhi. The project I am a part of aims to automate the time-Intensive process of manually searching for augmentation strategies. There has been research in automating which has even led to improvements in the results of various benchmark datasets. Thus this summer I will be focused on building infrastructure to implement these algorithms natively with Hub.

What did I do this week?

I started off by implementing some more transformations, I started off with implementing shear and translate transformations because that were the only geometrical transformation that were left. Apart from this I started implementing non-geometrical transformations. These included histogram equalization, posterizing, solarizing, inverting the image, adjusting saturation, brightness and contrast etc. These transformations are all based on open-CV and NumPy.

Apart from this I also started implementing the more robust API that was discussed with my mentor the prior week. The idea was to get more functionality and a cleaner API. This time rather than use an array of hub compute functions. I gave the user the option to use augmenter.add_steps() which would take in an augmentation pipeline and one/multiple tensors to which this augmentation pipeline is to be applied upon. This makes the API seem less clunky than asking the user to directly enter a dictionary of tensors as keys and an array of arrays as multiple augmentation pipelines.

What I plan to do next week

At this point we have all the necessary things to add this feature to hub. The only missing piece is adding support for multiprocessing.

Where I got stuck

Initially, I implemented the augmentation pipeline dictionary rather than using add_step which was suggested by my mentor. This was one thing I could have avoided had my sense of the API been more apt about what the user wants. I did not have to face many bugs this week since it was more like restructuring the previous work for multiple augmentation pipelines.

DJDT

Versions

Time

Settings from gsoc.settings

Headers

Request

SQL queries from 1 connection

Static files (2312 found, 3 used)

Templates (11 rendered)

Cache calls from 1 backend

Signals

Log messages