Commit aeb20da3 authored by Zohreh MOSTAANI's avatar Zohreh MOSTAANI

[general][doc] complete info in the json declaration of database

parent 7362631a
Pipeline #25377 passed with stages
in 11 minutes and 23 seconds
......@@ -138,18 +138,18 @@ The JSON_ file for a database has three main field.
* **protocols:** a list of protocols defined for the database.
* **root_folder:** path to the directory where the data is stored.
The "protocols" field is where the datasets for each protocol is defined. In the example above only one protocol is defined. Implementing a new protocol means adding a new entry to the list of protocols. Each protocol has three main component as well.
The "protocols" field is where the datasets for each protocol is defined. In the example above only one protocol is defined. Implementing a new protocol means adding a new entry to the list of protocols. Each protocol has three main component:
* **name:** The name of the protocol which is "idiap" in this case.
* **sets:** The datasets which are included in this protocol. In this case the "idiap" protocol consists of three datasets; "train", "templates", and "probes".
* **template:** A short description for the protocol.
* **template:** A template describes the number of sets and the template used for each set. Different protocols can use the same template which means they look the same, however each set may use different ``database view`` that makes the protocols different.
Each set in the list of "sets" in the above example is a dataset that is used for a particular purpose. For example in case of simple face recognition, dataset "train" is used for training a model, "templates" is used for making templates for each identity and "probes" is used to measure the performance of the system. Each set has the following components:
* **name:** The name of the set.
* **outputs:** The outputs provided by the set. Each output has a name and a specific data format which should be taken into consideration when using the data.
* **parameters:** Extra parameters which might be used for specific databases.
* **template:**
* **parameters:** Extra parameters which can be given to the ``index()`` method of a ``database view`` and can be used to further specify the data fed to the system. For example two datasets can use the same ``database view``, but a parameter (e.g. "group": "train") can be given to the system and therefor only the data that are in that group will be available in the output of the database.
* **template:** Template defines the number of output and the data types of each output.
* **view:** The ``database view`` that is used to provide this data samples to the system. More information about the implementation of ``database view`` is given in :ref:`beat-system-databases-protocols-view`.
.. _beat-system-databases-protocols-view:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment