Skip to content

Commit 08aa82a

Browse files
authored
Merge pull request #394 from tdwg/faq
A new FAQ page added with some initial list of topics covered.
2 parents 5b457b9 + 7279e7d commit 08aa82a

File tree

2 files changed

+125
-0
lines changed

2 files changed

+125
-0
lines changed

_data/navigation.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,7 @@
1919
href: /example/577b543a/
2020
- text: Deployment 4
2121
href: /example/62c200a9/
22+
- text: FAQ
23+
href: /faq/
2224
- text: GitHub
2325
href: https://github.com/tdwg/camtrap-dp

pages/faq.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
---
2+
title: FAQ
3+
description: Frequently Asked Questions
4+
permalink: /faq/
5+
toc: true
6+
---
7+
8+
{:id="bboxes"}
9+
## How to describe bounding boxes of detected objects?
10+
11+
In Camtrap DP, in the [observations](/data/#observations) table there are four terms used to describe bounding boxes: [`bboxX`](/data/#observations.bboxX), [`bboxY`](/data/#observations.bboxY), [`bboxWidth`](/data/#observations.bboxWidth), and [`bboxHeight`](/data/#observations.bboxHeight). The values for all these fields are numbers between 0 and 1, relative to the image size.
12+
13+
The `bboxX` and `bboxY` fields represent the coordinates of the top-left corner of the bounding box. `bboxX` is measured from the left edge of the image, while `bboxY` is measured from the top edge. `bboxWidth` represents the width of the bounding box, measured from its left edge to its right edge. Similarly, `bboxHeight` represents the height of the bounding box, measured from its top edge to its bottom edge.
14+
15+
{:id="multiple-events"}
16+
## How to describe multiple events related to a single resource?
17+
18+
Multiple records in the observations table can reference the same media. See the [github issue](https://github.com/tdwg/camtrap-dp/issues/39).
19+
20+
{:id="multi-camera"}
21+
## How to handle multi-camera deployments?
22+
23+
See the [github issue](https://github.com/tdwg/camtrap-dp/issues/328).
24+
25+
{:id="non-animal"}
26+
## Can I describe plant or fungus observations using camtrap-dp?
27+
28+
Currently, possible values for the [`observationType`](/data/#observations.observationType) field in the observations table are: `animal`, `human`, `vehicle`, `blank`, `unknown` and `unclassified`. This definition does not allow for observations of plants or fungi.
29+
30+
If you have a use case for describing non-animal observations using camtrap-dp, please let us know in [this github issue](https://github.com/tdwg/camtrap-dp/issues/346).
31+
32+
{:id="measurements"}
33+
## How to include measurements in a data package?
34+
35+
There are two ways to include additional information (values not covered by the standard fields) in a camtrap-dp data package:
36+
37+
### Using tags
38+
39+
Deployment and observation tables include [`deploymentTags`](/data/#deployments.deploymentTags) and [`observationTags`](/data/#observations.observationTags) fields. These fields can be used to store additional information as pipe-delimited key:value pairs. For example, this is how temperature and snow cover information could be represented in the deployment table:
40+
41+
deploymentID | deploymentTags
42+
--- | ---
43+
dep1 | temperature:20 | snow_cover:false
44+
dep2 | temperature:-5 | snow_cover:true
45+
46+
There are some drawbacks to using this method. Storing additional information in the media table is not possible, since it does not contain a tags field. Additionally, data represented this way is difficult to parse.
47+
48+
### Using a custom table
49+
50+
A custom table can be added to the data package to store additional information. This requires providing a schema for the additional table. The schema must include a foreign key to the referenced table ([`deploymentID`](/data/#deployments.deploymentID), [`observationID`](/data/#observations.observationID), or [`mediaID`](/data/#media.mediaID)) and the additional fields. Here is an example schema for the deployment measurement table:
51+
52+
```json
53+
{
54+
"name": "deployment-measurements",
55+
"title": "Deployment measurements",
56+
"description": "Table with weather measurements for deployments. Associated with deployments (`deploymentID`).",
57+
"fields": [
58+
{
59+
"name": "deploymentID",
60+
"description": "Identifier of the deployment. Foreign key to `deployments.deploymentID`.",
61+
"skos:broadMatch": "http://rs.tdwg.org/dwc/terms/parentEventID",
62+
"type": "string",
63+
"constraints": {
64+
"required": true
65+
},
66+
"example": "dep1"
67+
},
68+
{
69+
"name": "temperature",
70+
"description": "Temperature (in Celsius) at the time of the observation.)",
71+
"type": "number",
72+
"constraints": {
73+
"required": false,
74+
"minimum": -50,
75+
"maximum": 100
76+
},
77+
"example": 19.5
78+
},
79+
{
80+
"name": "snowCover",
81+
"description": "Snow cover present at the time of the observation.",
82+
"type": "boolean",
83+
"constraints": {
84+
"required": false
85+
},
86+
"example": true
87+
}
88+
],
89+
"foreignKeys": [
90+
{
91+
"fields": "deploymentID",
92+
"reference": {
93+
"resource": "deployments",
94+
"fields": "deploymentID"
95+
}
96+
}
97+
]
98+
}
99+
```
100+
101+
The schema has to be added to the `datapackage.json` file in the [`resources`](/metadata/#resources) field.
102+
103+
This is an example table following the schema above:
104+
105+
deploymentID | temperature | snowCover
106+
--- | --- | ---
107+
dep1 | 20 | false
108+
dep2 | -5 | true
109+
110+
We recommend this approach for storing additional information. It allows for easier parsing and merging of tables and is more flexible than using tags.
111+
112+
For more details, see [this github issue](https://github.com/tdwg/camtrap-dp/issues/358).
113+
114+
115+
{:id="merge"}
116+
## How to merge data packages describing different projects?
117+
118+
By design, a single camtrap-dp data package describes a single project. However, there are some use cases (for example, a meta-analysis) where merging multiple data packages could be beneficial.
119+
120+
We provide an [R package](https://inbo.github.io/camtrapdp/) to read and manipulate camtrap-dp data packages. The R package includes the [merge function](https://inbo.github.io/camtrapdp/reference/merge_camtrapdp.html), which can be used to merge two data packages into one. The resulting data package will be in a valid camtrap-dp format and can be published.
121+
122+
Refer to the merge function documentation to understand how specific fields are merged to avoid information loss. Please note that when merging data packages x and y, the [`project$samplingDesign`](/metadata/#project.samplingDesign) field in the resulting package will be set to the value of `project$samplingDesign` from data package x. Therefore, we recommend merging data packages only for projects that use the same sampling design.
123+

0 commit comments

Comments
 (0)