The first coding period is completed and this is the first coding period report blog. Hope you’ll find it detailed enough!
Task 1: Review current whole database implementation including database schema hosted as XML.
Since I’ve worked previously with DB, things seemed pretty clear this time. Among the three DB, my main focus was on understanding:
- Understanding to create a new DB from scratch
- Understanding to write the common code fragments for MySQL/SQLite
- Thorough reading of DB Config file (dbconfig.xml.cmake.in) to understand how database schema is set up.
- Analyzing the implementation of Thumbnails DB, especially, to create a similar one for similarity feature.
Task 2: Isolate tables and schemas relevant of similarity fingerprints.
This task involved isolating existing tables and figuring out the new tables to be created, relevant to the similarity DB.
- ImageHaarMatrix needs to exactly moved to the new database, without any change. I think it’s not required in the core DB. (Haar Algorithm is used to generate image fingerprints in DigiKam).
- A new ImageSimilarity table is required to store the similarity value of pair of images. Schema would be:
imageID1(int) | imageID2(int) | value(double)
No other tables are required currently to be moved from Core DB.
Thank you for reading. I’ll keep you updated with my next tasks in upcoming blogs!