GSoC Week 2

By the end of last week, I was able to meet my mentor, which helped me gain direction for the project. We discussed details and challenges regarding the implementation of the AI model selection based on image modality. Although Java is a new language to me, I wanted to learn and work my way through it for the project.

This week, my task was to understand parts of the LibreHealth toolkit code and prepare a list of tasks at an atomic level. After that, I will need to update them to the GitLab issues list.

Coming up with the task list

To come up with the task list, during the meeting with my mentor, I received some guidance on where to start with code exploration and understanding. Initially, it was challenging for me to understand the code, so I started looking at Java tutorials on YouTube. I gained some understanding of how Java works. However, I knew this was not enough for me to completely understand the application, and it would take time, so I also started looking for patterns in the code.

Changes to LibreHealth Toolkit,

To implement the AI model selection based on imaging modality, I was able to trace the code that led me to two .java files and the config.xml file where I will need to create code that adds parameters to the administrative settings view. The parameters would mainly include the model's modality, task, and API. Next, I will need to modify the Model task list to a dropdown. The dropdown will have values filled by making a call and fetching information from the '/models' API from the AI model service. I traced back to figure out the implementation of the API and landed on this page. After that, I will need to understand how to call the function once the administration page is opened.

Once these steps are done, I will need to modify the existing calls to the AI model service to use the newly implemented parameters. I was able to identify the code that needs modification.

Changes to AI Model Service,

Regarding the changes to the AI Model Service, based on the changes that will be performed on the LibreHealth Toolkit, the AI model service bounding-box API method needs to be changed to accept dynamic inputs. Based on the input modality, model, and task, we will need to route to the appropriate model. One way to achieve this would be to build a function that takes in the inputs and uses a dictionary to map the parameters to the AI model to be called.


Coding it

After figuring out the requirements for the tasks discussed above, I started coding for the administrative view changes. I installed the necessary requirements but faced some issues. I ended up rebuilding the Docker images and was able to see the desired changes in the administrative view. However, I still need to make changes to the layout and also get feedback from my mentor this week. After that, I will code for the other tasks.



Travel Partial Blocker for GSoC Week 3 

During GSoC Week 3, I will be traveling to Slovenia for a conference (AIME 2023) where I will be presenting a demo paper. I am excited about it. However, this doesn't mean that it will completely block me from working on GSoC. It just means that I may have less time available to contribute to the project.

Comments

Popular posts from this blog

Google Summer of Code 2023: AI Model Service Auto Selection by Modality - Final Report

GSoC Week 1

My First GSoC - LibreHealth Community Bonding Period