Group

Software Development / Feed

This group is for anyone interested in applying software to conservation and wildlife research. Whether you're a developer eager to contribute to conservation or a newbie with valuable data and ideas but limited software experience, this group connects people with diverse expertise. It provides a space for asking questions, sharing resources, and staying informed about new technologies and best practices.

discussion

Looking for bird and bat audio datasets and related research for biodiversity AI project

Hi everyone,I'm working on a project funded by the PNRR and selected by NBFC, focused on tracking biodiversity in Italy, with potential expansion to other countries. The goal is...

10 0
See full post
discussion

Video evidence for the evaluation of behavioral state predictions

Hi all, glad to share two of our contributions to the current e-obs newsletter in the context of the evaluation of behavioral state predictions and the mapping of...

6 0

Currently, the main focus is visual footage as we don't render audio data in the same way as we do for acceleration (also: the highly different frequencies can be hard to show sensibly side by side).


But In this sense, yes, the new module features 'quick adjust knobs' for time shifts: you can roll-over a timestamp and use a combination of shift/control and mouse-wheel to adjust the offset of the video by 1/10/60 seconds or simply enter the target timestamp manually down to the millisecond level. This work can then and also be saved in a custom mapping file to continue synchronisation work later on.

 

No, not yet. The player we attached does support slower/faster replay up to a certain precision, but I'm not sure that this will be sufficiently precise for the kind of offsets we are talking about. Adding an option on the frontend to adjust this is quite easy, but understanding the impact of this on internal timestamp handling will add a level of complexity that we need to experiment with first. 

As you said, for a reliable estimate on this kind of drift we need at least 2 distinct synchronized markers with sufficient distance to each other, e.g. a precise start timestamp and some recognizable point event later on.

I perfectly agree that providing an easy-to-use solution does make perfect sense. We'll definitely see into this.

See full post
discussion

Firetail 13 - now available

Thanks to our wonderful user community and a lot of feedback, shared sample data and fruitful discussions I am glad to announce that Firetail 13 is now available, featuring a...

10 2
See full post
Link

Open Sustainable Technology directory

May be of interest to WILDLABS in terms of open source solutions, conservation tech, and learning about similar efforts. The founder of Open Sustainable Technology wrote this post about their work: https://opensource.net/closing-the-gap-accelerating-environmental-open-...

0
discussion

MegaDetector V6 and Pytorch-Wildlife V1.1.0 !

Pytorch-Wildlife V1.1.0Hello everyone, we are happy to announce our release of Pytorch-Wildlife V1.1.0. In this release we have many new features including MegaDetectorV6, HerdNet...

5 4

Hello Patrick, thanks for asking! We are currently working on a bioacoustics module and will be releasing some time early next year. Maybe we can have some of your models in our initial bioacoustics model zoo, or if you don't have a model yet but have annotated datasets, we can probably train some models together? Let me know what you think! 

Thank you so much! We are also working on a bounding box based aerial animal detection model. Hopefully will release sometime early next year as well. It would be great to see how the model runs on your aerial datasets! We will keep you posted! 

Hi Zhongqi! We are finalizing our modelling work over the next couple of weeks and can make our work availabile for your team. Our objective is to create small (<500k parameters) quantized models that can run on low-power ARM processors. We have custom hardware that we built around them and will be deploying back in Patagonia in March 2025. Would be happy to chat further if interested!

We have an active submission to Nature Scientific Data with the annotated dataset. Once that gets approved (should be sometime soon), I can send you the figshare link to the repo. 

See full post
discussion

Need advice on data for an app that recommends plants.

This is going to show how little I know, but I'm doing my best! Basically I could use help understanding what I should do from a data standpoint in order to enable a...

1 2

It's a really good question, Colleen!

Ideally, I would work with two developers, or at least one developer and one other party who knows what developing an app like this would mean. This will lower the risk that the developer answers your question too much in their advantage. So this is one reason why it is a good question, and maybe this is why you ask it. However, if you really trust your developer not to take advantage, then go with just her/him/they.

It's also a good question because there is no easiest way to go about this if you're on a budget. You mention that you do not have a tech background, so here comes some explaining. If I misunderstood, then please skip and continue at "Back to 'the easiest way to go about this'"

There are at least two things you should be really aware of when it comes to software development.

The first is that once the basic data structure is defined and the software built around it, it is extremely costly to change the data structure. It's like deciding after the car has been built, that the engine should go to the back of the car instead of the front.

The second thing is that the basic data structure is dependent on ( among other things, but I'd say these are the two most important factors ) the complexity of what needs to be achieved and the speed at which it needs to be done.

The difficulty is that the required complexity and the speed may change over time, which brings one back to the car and engine situation. Changes in complexity and speed requirements may be the result of many things, one of which is success. You get far more clients than anticipated, so the system needs to be scaled up. In addition, with more users come more feature requests ( this can work both ways: new features result in more users, and more users may result in more feature requests ).

There is no real solution to this problem ( well, except not growing beyond the point that the first design can handle ). When it comes to scaling up, one vendor may claim that their database back bone easily scales up. Maybe so - but it may come at a price and they may also underestimate your and their own future needs. When it comes to changes in complexity, additional features can in the beginning probably be added on without changing the basic data structure. Maybe an additional row of seats at the back of the car, a trailer hook, bigger lamps, a roof-rack, a trailer, suitcases on the rack. At some point the car will need a new and bigger engine to carry all those add ons and keep at the same speed.

Here is a prediction : the more you stress cheap and efficient at the beginning, the bigger these problems will be later on. But when the business is successful, there will be more money to invest in scaling up and redesigning. Obviously yes, but in terms of the car metaphor, you may find that you want the car to be kept running with all its added on features, while the engine is replaced and moved to the back. It may be possible, but perhaps out of reach of patience and the increased income.

 

Back to 'the easiest way to go about this':

Invest a little effort to find out not only what are the minimum requirements for the MVP, but also what else you or your clients may want in the future. The developer should then have these future requirements in mind (and future upscaling) when they start developing for the minimum ones. This means, develop a somewhat more generic data structure than what is necessary for the MVP. This will cost some more at the beginning but should save a lot later on. I'm writing 'should' not 'will' on purpose. It's a balancing act because taking too much into account has the risk of over-engineering for a future that may not happen, or develop differently than expected. Like I said, there is no easiest way out.

 

A few more detailed comments

If there is no API for a source, try to go around it if possible at the beginning. API's are made with some long term stability in mind. Websites and web pages not necessarily so or less so. They will require more monitoring and maintenance on the web scraping routines.

Perhaps the developer may not be aware of the necessary pre-work that needs to be done if the pre-work depends on biological knowledge needed to transform the data from your data sources into data that allows easy ( and fast ) calculation of results to the users. 
 

See full post
discussion

Help us test PAMGuard for macOS

Hi WILDLABSWe have been working on a macOS version of PAMGuard and it would be great if some folk here in the community would like to give it a spin before it's released. ...

2
See full post
discussion

Share your thoughts for the Software Development group!

Hello all! @mattmorrissette  and I are the new group curators for the Software Development group here at WildLabs (which we renamed from 'Software and Mobile Apps' to '...

6 5

Hi Margaux, thanks for starting this group - it certainly is an essential one for conservation tech enthusiasts! 

I think this should be a high priority for one of our initial discussions and I also believe we should revisit on some cadence as well. It is so open ended and I think it is worthwhile for not only those of us who have been in the space for awhile but newcomers as well.

See full post
discussion

Automatic extraction of temperature/moon phase from camera trap video

Hey everyone, I'm currently trying to automate the annotation process for some camera trap videos by extracting metadata from the files (mp4 format). I've been tasked to try...

10 1

I just noticed that TrapTagger has integrated AI reading of timestamps for videos. I haven't had a chance to try it out yet, but it sounds promising. 

Small update. I uploaded >1000 videos from a spypoint flex camera and TrapTagger worked really well. Another program that I'm currently interested in is Timelapse which uses the file creation date/time. I haven't yet tried it, but it looks promising as well. 

Hi Lucy,



I now realised it is an old thread and you most likely have already found a solution long ago but this might be of interest to others.

As mentioned previously, it is definitely much better to take moon phase from the date and location. While moon phase in general is not a good proxy for illumination, that moon phase symbol on the video is even worse as it generalises the moon cycle into a few discreet categories. For calculating moon phase you can use suncalc package in R but if you want a deeper look and more detailed proxy for moonlight intensity, I wrote a paper on it 

 with accompanying R package called moonlit 

When it comes to temperature I also agree that what is recorded in the camera is often very inconsistent so unless you have multiple cameras to average your measurements you are probably better off using something like NCEP/NCAR Reanalysis (again, there is an R package for that) but if you insist on extracting temperature from the picture, I tried it using tesseract and wrote a description here: 

 

Good luck!

See full post
discussion

Building a biodiversity startup focused on getting landowners to use native plants

I'm fresh off my MEM/MBA degrees building a startup called EarthScape that is focused on assisting landowners in the switch from turf grass lawns (the largest USA irrigated...

8 2
See full post
event

Design-led innovation for nature

How can space-enabled data and services be translated into information that is trusted and actionable, fuelling responsible behaviours towards nature? A new programme where SMEs will be paired with design consultancies...

0
See full post