Geo tagged photo in image widget

Hope you all are Good!

1. What is the general goal of the feature?
As in modern days, mobile phone cameras can do many things like capture images, can be used as a video camera also as an android phone setting is getting update each year they are providing more support in the android phone.
There is one more feature that is providing by an android phone in camera and that is able to get a geotagged photo. Infield during data collection, a geotagged photo can be helpful to analyze photos with a timeline as well as when geopoint is unable to get location due to bad weather.

2. What are some example use cases for this feature?
In fieldwork, there might be few surveys where the survey has been started to collect data for mapping and listing of forest/trees/house in these cases we also asked to take a photo of places so if we have geotagged photo than we can use QGIS software to see a timeline of geotagged photo with the location. Here, In the QGIS map, we will have photos and we can visualize photos with geolocation as well.

3. What can you contribute to making this feature a reality?
I can test forms and give input, happy to test geotagged photos on QGIS as well.

Stay home, stay safe.


As far as I understand it if you're using the Image widget then when you hit "Take Picture" you'll be taken to whatever the default camera app on your phone is. As long as that app supports photo geotagging (the stock Android camera app and Google Camera certainly do) then the images should have geotags included. Have you tried this and it isn't working?

when geopoint is unable to get location due to bad weather

The next version of Collect (1.28) will use a more comprehensive location lookup so it's unlikely that the camera would be able to access a location if the geo point widget wasn't able to.

I just tested this with Collect v1.28.0 Beta 1, Pixel 3a running Android 10, and ODK Central v1.0

If I take a picture inside the survey. And then I look at the image I don't see location data (neither looking on the Android, nor after submitting and downloading the image from Central.

However, if I open my camera app and take a picture and then look at that file on Android, I do see location data. But, if I select that image inside a survey (instead of capturing a new one), and submit it, the image downloaded from Central does not appear to have location exif data.

1 Like

If I take a picture inside the survey. And then I look at the image I don't see location data

A Collect expert (@ln? @Grzesiek2010?) can probably confirm, but I dont see that CameraUtils.savePhoto() persists any of this EXIF data, so it is probably getting dropped from the saved imaged file that gets uploaded.


That method is used only in case of selfie widgets (new-front appearance). Then we don't use any external camera app and in this case it's true we capture just an image.

I have just tried a simple image widget from the AllWidgets form and it keeps location data.

@danbjoseph what widget did you use? Normal image widget? With some extra appearances or maybe max-pixels?

1 Like

Thanks for the clarification. So it is an issue that selfie vs regular image widget behave differently wrt capturing location (and timestamp?) EXIF data?

I assume scaling either image - as a consequence of max-pixels - may also drop this data?

Yes as I said we capture selfie images on our own so it's as simple as possible.

Yeah that's why I asked about it.