img_pipeline Eval#3

by Aman

eval
gsoc
gsoc2020
img_pipeline
eval#3

Summary

This week went by making an archival algorithm, this algorithm stitches all the six sides of the artifacts. This is achieved by three main steps :

Cropping :

This part includes using the image which was processed by our earlier algorithm, a box is created around the artifact with min area.

Padding :

This part includes adding some black color space around the crop so that there is some separation between the images.

Stiching :

This part was probably the most challenging and analytical apart from the other two steps. This step makes sure that all the images we process get converted into a single image.

Objectives and Deliverables

The archival algorithm would let the users to generate archival from a single object instance in python, on the algorithm layer it’s divided into two parts. First, the image is processed and then the archival algorithm deals with cutting the image and tiling them in place.

Not just that this also allows user to overwrite a single image directly which would let it easier for the editors to work on.

Learning and Success

This algorithm made me understand the complex mathematics behind images, interpreting them with opencv and even designing a solution which uses these api’s and get desirable results

Difficulties

Maths really became intense with this project, there was a lot of trigonometry and graph methods involved which had strange effects that were only visible through analysis.

One such thing was rotation, so when the image is rotated via openCV it uses three types of interpolation which decides the quality of the image. Each of these interpolation would produce same result but with less quality hence was a tricky thing to observe

Plan update

Even this month the algorithm had positive results, some initial work was implemented on the framework but it doesn’t even come close to the power and accessibility the algorithm possess. So on the code layer the project have gained significant weight and agility but the work is lacking on the framework which would cap the real algorithm. I would continue to adding these updates to the framework, and for me the project is halfway complete.

Some Screenshots Depicting Difficult Segments of Algorithm :

Rotation Image Loss Rotation Image Loss

Final Images for Archival from Algorithm :

Final Arhival Final Arhival