Build log
Teaching a robot to see cats, dogs and tulle.
A flying robot at home needs to notice a few things before anything else: people, so it keeps its distance; curtains and tulle, which its propellers would pull in; and the cat and the dog. We trained a small camera model to spot them. The version that saw people best is the one we did not use.
Only photos we may use
Many ready-made vision models start from weights learned on large photo collections whose terms limit commercial use. We wanted to know the licence of every picture our model learned from, so we started from zero. The training photos come from Open Images, Google’s public collection, and we kept only those published under a Creative Commons Attribution licence, with the author and source of each one on file. The first version learned from tens of thousands of them, overnight, on one desktop graphics card.
Version 1: good with pets, careful about people
We scored the model on photos where the person, curtain or animal is close enough to matter to a robot. Version 1 found cats and dogs in nearly every one of them, and curtains in most. People were harder, and got harder with distance: close by it found most of them, across a room far fewer. That settled one thing early: the camera can make the robot more careful, but it cannot be its only way of noticing a person.
Version 2: more people, less tulle
For version 2 we added many more photos with people, household scenes first. In our home photos it found nearby people more often. It also got clearly worse at curtains, and a little worse at cats and dogs. Nothing else had changed. With so many more people in the set, the model saw curtains far less often while it learned, and forgot some of them.
We did not use it. Seeing people slightly better does not pay for missing tulle, because keeping clear of fabric is a rule the robot relies on.
Version 3: the same photos, shown evenly
Version 3 learned from the same photos as version 2, but drew the rarer ones, with curtains, cats and dogs, more often. People came back to version 1’s level with slightly fewer false alarms, curtains rose a little above it, and cats and dogs stayed where they were.
Between versions 1 and 3 the differences come down to a few photos each, so the claim we make is “not worse than version 1”, not “better”. One more thing changed on the way: we rewrote a slow part of the training to handle a whole batch of photos at once, checked that it gives the same results as the original, and a training run went from most of a day to a few hours.
What these results are not
- Not the robot’s camera. These are photographs people took, not frames from a camera on a flying robot, moving, in dim light, with its own propeller guards in view.
- Small home sets. Only a modest number of home photos per class, and just a handful with a cat.
- Tulle inside curtains. The model has one class for both, so tulle on its own is not measured.
- Not in the product. Our simulation still uses an assumed fabric detector until this one is tested through the robot’s own camera.
What the camera does not decide
The camera only adds caution. A person nearby makes Alkyon slow down and widen its margins; the distance sensors and the fixed rules, such as keeping 1 m from people, work without it. It does not recognise who anyone is. Next, it learns from home scenes rendered in our own simulation, with tulle, glass, mirrors and thin cables, and gets a test set from a camera at the robot’s height. More on how object detection works and a camera in your home.
These are our own tests on photographs; Alkyon is a concept that flies only in simulation. Source, read 4 November 2026: Kuznetsova and colleagues, the Open Images dataset V4, International Journal of Computer Vision, 2020.