GSoc/2023/StatusReports/QuocHungTran: Difference between revisions

From KDE Community Wiki
Line 45: Line 45:


'''DONE'''
'''DONE'''
* Constructing data sets (training dataset, validation dataset and testing dataset).
* Constructing data sets (training dataset, validation dataset and testing dataset) firsly in some common kind of objects as person, bicycle, car.  
* Preprocessing data, studying about construct of COCO dataset which is used for training dataset and validation dataset.
* Preprocessing data, studying about construct of COCO dataset which is used for training dataset and validation dataset.
* Research and create model pipeline for all YOLO version in python.
* Research and create model pipeline for all YOLO version in python.
* Evaluate performance of YOLO methode by considering some evaluated metrics.
* Evaluate performance of YOLO methode by considering some evaluated metrics.
'''TODO'''
'''TODO'''
=== Construct of COCO dataset format ===
The Common Object in Context (COCO) is one of the most popular large-scale labeled image datasets available for public use. It represents a handful of objects we encounter on a daily basis and contains image annotations in 80 categories, with over 1.5 million object instances. You can explore COCO dataset by visiting SuperAnnotate’s respective dataset section.
=== COCO Dataset Formats ===
COCO stores data in a JSON file formatted by info, licenses, categories, images, and annotations. For downloading COCO dataset reason, I used the '''instances_train2017.json''' and '''instances_val2017.json''' files.
'''
    "info": {
        "year": "2021",
        "version": "1.0",
        "description": "Exported from FiftyOne",
        "contributor": "Voxel51",
        "url": "https://fiftyone.ai",
        "date_created": "2021-01-19T09:48:27"
    },
    "licenses": [
        {
          "url": "http://creativecommons.org/licenses/by-nc-sa/2.0/",
          "id": 1,
          "name": "Attribution-NonCommercial-ShareAlike License"
        },
        ... 
    ],
    "categories": [
        ...
        {
            "id": 2,
            "name": "cat",
            "supercategory": "animal"
        },
        ...
    ],
    "images": [
        {
            "id": 0,
            "license": 1,
            "file_name": "<filename0>.<ext>",
            "height": 480,
            "width": 640,
            "date_captured": null
        },
        ...
    ],
    "annotations": [
        {
            "id": 0,
            "image_id": 0,
            "category_id": 2,
            "bbox": [260, 177, 231, 199],
            "segmentation": [...],
            "area": 45969,
            "iscrowd": 0
        },
        ...
    ]
'''
So to extract necessary information, we have used the COCO API who assists in loading, parsing, and visualizing annotations in COCO. The API supports multiple annotation formats
{| class="wikitable"
|+ Caption text
|-
! APIs !! Description
|-
| Example || Example
|-
| Example || Example
|-
| Example || Example
|}


===== (Week 3 - 4)  =====
===== (Week 3 - 4)  =====

Revision as of 20:26, 9 June 2023

Add Automatic Tags Assignment Tools and Improve Face Recognition Engine for digiKam

digiKam is an advanced open-source digital photo management application that runs on Linux, Windows, and macOS. The application provides a comprehensive set of tools for importing, managing, editing, and sharing photos and raw files.

The goal of this project is to develop a deep learning model that can recognize various categories of objects, scenes, and events in digital photos, and generate corresponding keywords that can be stored in Digikam's database and assigned to each photo automatically. The model should be able to recognize objects such as animals, plants, and vehicles, scenes such as beaches, mountains, and cities,... The model should also be able to handle photos taken in various lighting conditions and from different angles.

Mentors : Gilles Caulier, Maik Qualmann, Thanh Trung Dinh

Project Proposal

Automatic Tags Assignment Tools and Improve Face Recognition Engine for digiKam Proposal

GitLab development branch

gsoc23-autotags-assignment

Contacts

Email: [email protected]

Github: quochungtran

Invent KDE: quochungtran

LinkedIn: https://www.linkedin.com/in/tran-quoc-hung-6362821b3/

Project goals

Links to Blogs and other writing

Main merge request

KDE repository for object detection and face recognition researching

Issue tracker

My blog for GSoC

My entire blog :

(Week 1 - 2)

In this phase, I focus mainly about offline analysis, this analysis aims to create a Deep learning pipeline for object detection model

May 29 to June 11 (Week 1 - 2) - Experimentation on COCO dataset

DONE

  • Constructing data sets (training dataset, validation dataset and testing dataset) firsly in some common kind of objects as person, bicycle, car.
  • Preprocessing data, studying about construct of COCO dataset which is used for training dataset and validation dataset.
  • Research and create model pipeline for all YOLO version in python.
  • Evaluate performance of YOLO methode by considering some evaluated metrics.

TODO

Construct of COCO dataset format

The Common Object in Context (COCO) is one of the most popular large-scale labeled image datasets available for public use. It represents a handful of objects we encounter on a daily basis and contains image annotations in 80 categories, with over 1.5 million object instances. You can explore COCO dataset by visiting SuperAnnotate’s respective dataset section.

COCO Dataset Formats

COCO stores data in a JSON file formatted by info, licenses, categories, images, and annotations. For downloading COCO dataset reason, I used the instances_train2017.json and instances_val2017.json files.

   "info": {
       "year": "2021",
       "version": "1.0",
       "description": "Exported from FiftyOne",
       "contributor": "Voxel51",
       "url": "https://fiftyone.ai",
       "date_created": "2021-01-19T09:48:27"
   },
   "licenses": [
       {
         "url": "http://creativecommons.org/licenses/by-nc-sa/2.0/",
         "id": 1,
         "name": "Attribution-NonCommercial-ShareAlike License"
       },
       ...   
   ],
   "categories": [
       ...
       {
           "id": 2,
           "name": "cat",
           "supercategory": "animal"
       },
       ...
   ],
   "images": [
       {
           "id": 0,
           "license": 1,
           "file_name": "<filename0>.<ext>",
           "height": 480,
           "width": 640,
           "date_captured": null
       },
       ...
   ],
   "annotations": [
       {
           "id": 0,
           "image_id": 0,
           "category_id": 2,
           "bbox": [260, 177, 231, 199],
           "segmentation": [...],
           "area": 45969,
           "iscrowd": 0
       },
       ...
   ]

So to extract necessary information, we have used the COCO API who assists in loading, parsing, and visualizing annotations in COCO. The API supports multiple annotation formats

Caption text
APIs Description
Example Example
Example Example
Example Example
(Week 3 - 4)
(Week 5 - 6)
(Week 7 - 8)
(Week 9 - 10)
(Week 11 - 12)