Bug when there are several individuals in an image or series of images


We are currently working on short-finned pilot whales/Globicephala macrorhynchus on flukebook but we are encountering a problem when several individuals are present in one photo or in a series of photos.
Post detection, we try to annotate all the fins that failed to be detected with manual annotations. During this process, when creating annotation for “secondary fins” (when the main, in green, already exists), the picture is duplicated and the new annotation is considered as principal (green) rather than secondary as it should be (yellow box). This results in different individuals being associated when they shouldn’t which is a problem. The problem also seems to be present with the pygmy killer whale/Feresa attenuata (we have tried to restart our bulk imports in the meantime). Is there a solution to this?

One of the bulk imports (for example) concerned is: Import Task 5c71631a-9678-4504-934a-6fed1b97fd7b.
More specifically, here is an encounter as an example: c4cf9243-7a95-460e-aa60-29c4d4181c95 or 518b8323-07f0-4a4c-8ccc-7c44206c7989 for example

Best regards,

On closer inspection we noticed that in the 4th section of the manual annotation the image is not cloned (“This will clone encounter … and attahc the new annotation to the clone”) but attached directly to the encounter (“This will attach to encounter…”). The problem seems to come from here.

Hi @rebeca

Just to clarify, it sounds like there are two issues here:

  1. Creating a manual annotation isn’t creating a cloned Encounter for the new annotation
  2. As a result, this is preventing you from correctly identifying the whales in the photo because assigning an ID to one assigns that same ID to all other whales in that photo.

Is that correct?

Yes this is it!
For those bulk imports, creating a manual annotation isn’t creating a cloned Encounter for the new annotation.
The result indeed is that the annotated picture is duplicated in the same encounter and two different individuals are therefore considered as the same ID.
But this issue only seems to appear for Pilot whale or pygmy killer whale; for the Fraser’s dolphins or the pseudorca, the encounters were correctly cloned.

Interesting. I feel like I may have seen this recently in Internet of turtles, too. I need more time to research this and I’ll likely follow up here soon with a ticket.

Ok, thanks, hope it won’t be too complicated to sort out.
Good luck and thanks a lot.

We verified this is a bug. What’s happening in Wildbook is that it assumes 1 body annotation and 1 body part annotation pair is equal to 1 animal. Any time a body annotation is created, it creates a cloned encounter. This is why your Frasier’s dolphins annotation are cloned correctly, because the only IA Class we have for it is the body annotation and it recognizes each body must have its own encounter.

With the pilot whales and pygmy killer whales, the only IA Class available was the fin, so it wasn’t creating the cloned encounter because if there was no separate body annotation (which doesn’t exist for these species) then multiple body parts were being treated as part of the same animal.

We fixed this so that now if a second body part annotation is added, it will clone the encounter. I tested this with your first link and verified it’s working correctly now. Thank you so much for letting us know about this bug.

Great, thank you very much for the explanation and for rectifying the problem. We think there is the same problem with Risso’s dolphin/Grampus griseus and Melon-headed dolphin/Peponocephala electra.

The code update was applied to Flukebook itself, so any newly-created manual annotations should be behaving correctly, regardless of the species.

Are you saying that when you make new manual annotations for Risso’s dolphin and Melon-headed dolphin, that those annotations aren’t cloning the encounters? Any body part manual annotations that were made prior to the bug fix would have been affected and would need to be deleted and redrawn, but let me know if you’re still seeing this with new annotations.

We will check these two species and get back to you as soon as possible. When we resumed our analyses of short-finned pilot whales/Globicephala macrorhynchus and the pygmy killer whale/Feresa attenuata we noticed that the problem had been solved, but we also noticed that an image can only be cloned once. It happens that we have more than two individuals in the same image and in this case we return to the basic problem where the third individual that we frame will be attached to the first …

If you see an example of this again, can you link me to the Encounter so I can use it for testing? To my knowledge, there isn’t a limit to how many times an Encounter can be cloned.

Yes of course, you can see this for example in the bulk: Gm.Expe2023.7.1 for the encounter: 719e4505-84d6-4df4-abef-70d05007b5a7

in fact it works for Risso’s dolphin and Melon-headed dolphin, thank you.

1 Like

Another example without any annotation if you want to test :
Bulk : Gm.Expe2023.7.1
Encounter : 0c296305-fcd3-4965-9166-a8daba5b9bd9

Thank you for the examples! I’ll need more time to work on the issue with encounters not cloning after the 2nd annotation.

That’s very kind of you, thank you very much. As we continued our analysis of the pygmy killer whale, we noticed that one of the two algorithms (“feresa-attenuata”) allowed you to clone an encounter as often as you like. However, the second (“feresa_attenuata+fin_dorsal”) presents the same problem, where you can only clone an image once. We are able to perform the detection correctly thanks to this second algorithm, however we were wondering if the identification will propose match between fins detected from different algorithms or not ? Could this be an issue ?

That makes sense. The body-only annotation class (feresa_attenuata) is still creating cloned Encounters correctly, but something’s still wrong with the body+part annotation (feresa_attenuata+fin_dorsal). The logic for the code looks correct, but we’re still exploring what other factors are contributing the limit on body+part clones.

Good question. Each algorithm looks at different characteristics to determine a match from all of the images in the catalog of the same species, selected location, and viewpoint (lefts only compared to other lefts, etc.). We have more details on how each algorithm works in our help docs.

Often, correct matches will appear across different algorithms, through their position in the match rank may vary. Some researchers have mentioned that sometimes one algorithm can detect a match that the other doesn’t.

Thank you very much, we now have a better understanding of the case of the pygmy killer whale. We’re going to continue our analyses and test whether the algorithms allow us to identify all our individuals. Keep us informed about the other species and thanks again for your help.


After testing (on Feresa attenuata) we found that the identification system did not match the fins detected by the different algorithms. As a result, we encountered the problem of image cloning, as with other species. Thank you very much for your help.

Thanks for the update! We’re still working on resolving the cloning issue. I hope to have an update on that this week.