camtrap-dp icon indicating copy to clipboard operation
camtrap-dp copied to clipboard

Add further camera settings to deployment

Open niconoe opened this issue 4 years ago • 5 comments

In GitLab by @peterdesmet on Sep 8, 2020, 18:51

Note: this was suggested in the 2020-09-08 EUROMAMMAL technical call

Cameras can have additional settings that are not captured in the current deployment terms, such as:

  • detection_zone: Detection focus of camera trap (centered or full) full; centered
  • ir_mode: IR mode of camera trap far; near

This needs further community feedback before we can decide if and how this should be part of the standard.

niconoe avatar Mar 11 '21 13:03 niconoe

Similar to #44. To my knowledge, there is no firmware standard for storing camera trap settings available; different manufacturers use different fields, etc. Thus, we have two options:

  1. Add a new field cameraSettings to the deployment schema. This field would be a JSON object that could store any camera settings (see this PR #389).

  2. Try to standardize a finite set of critical camera trap settings and add them as new fields to the deployment schema.

We need a broader discussion here. @jimcasaer @Tim-Hofmeester @ddachs @PatrickAJansen @peterdesmet

kbubnicki avatar Dec 11 '24 12:12 kbubnicki

I think the big problem with this is that many of these fields are model specific and many cameras might not have these options. So I think option 1 that @kbubnicki mentions above is the best option.

Tim-Hofmeester avatar Dec 11 '24 14:12 Tim-Hofmeester

I agree with @Tim-Hofmeester on this. Settings are very manufacturer specific. To be honest, I feel like we could put the attributes of interest into the observationTags column?

Just to give you an idea, this is and example of metadata I get from ICUServer for every image (some of these are deployment related rather than image related):

-  SizeInByte
-  ImageFormat
- ImageNight
- DateTimeLastSettings
- BatteryStatus
- FirmwareVersion
- SignalStrength
- Temperature
- CoordinateSwitch
- Latitude
- Longitude
- WorkPeriod
- WorkStart
- WorkEnd
- ThumbnailSize
- PIRInterval
- TimeScan
- imei
- iccid
- INITKey
- CameraName
- CameraModel
- CameraLanguage
- CameraNetwork
- MobileNetworkCode
- MobileCountryCode
- LocationAreaCode
- CustomerTimezone
- CustomerLanguage
- servertime

As you can see, that is a lot to choose from, and I am not sure, if digging into this pays of. However, with @kbubnicki idea to store the metadata in a json field, we would have the opportunity to store the raw metadata with relative ease, while maining maximum flexibility. Since I retrieve metadata per image and not per deployment from my GSM cameras, I would prefer to have the json column in the media.csv. What do you think?

ddachs avatar Dec 11 '24 19:12 ddachs

@ddachs great! We already have the json field exifData in the media.csv. Can the camera settings be added there (e.g. by extending the json)?

peterdesmet avatar Dec 11 '24 21:12 peterdesmet

I don't think this is ideal for deployment related data. The plan with GSM cameras midterm is, to retrieve camera status data every time the camera contacts the server (in our case once every 24 hours). This data is independent of the images. For every deployment I will (hopefully) have a bunch of json files. The question is: How should we deal with those best? Storing the raw data in json format? Preprocessing the data and store a summary? Camera settings should ideally be the same during a deployment. But there are exceptions, e.g. changing settings remotely. But there are dynamic values in the status informations, such as battery status. I am in favour of storing status informations in raw json format in a dedicated column in the deployment table. As said, camera status informations include more than camera settings. I will post you an example of status informations soon, to give you an idea. I expect them to be a subset of the metadata we get for every image

ddachs avatar Dec 12 '24 08:12 ddachs