Slashdot Mirror


Programmer Creates Bee Counter Using a Raspberry Pi

Programmer Mat Kelsey created a bee counter to see exactly how many bees are hanging out in his hives. "His system, which uses a Raspberry Pi and a machine learning algorithm that recognizes the number of individual bees entering a hive, is used to see bee trends over time and see just how the bees are faring," reports TechCrunch. From the report: The system looks at sets of pictures of the hive door taken every 10 seconds. It then extrapolates out the background, assesses the objects that have moved in the frame, and then counts the things that are likely to be bees. It's a fascinating problem to solve since the bees are constantly moving and because it can also ignore bees that are coming out of the hive. You can download the source on Github and check out his detailed blog post here. Given the need for bee protection as we enter an era of colony collapses, tools like this one are wildly important. Plus it's cool to see a Raspberry Pi do something so complex.

5 of 60 comments (clear)

  1. Use weight by war4peace · · Score: 2

    Weigh the hive during the night when all bees are in, weigh it during the day when working bees are out, extrapolate based on weight of a bee and how many bees (as a percentage) are gatherers, which is a known quantity for a hive, on average.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    1. Re:Use weight by OolimPhon · · Score: 3, Informative

      Um, no. You're forgetting all the pollen and nectar the bees are bringing back.

      The hive will weigh more each night than the night before. You also have to allow for the bees that are being eaten or otherwise die away from the hive during the day.

    2. Re:Use weight by war4peace · · Score: 2

      Clearly I know nothing about bees :)
      Thank you, I seem to have overlooked a lot of factors.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
  2. Better by hcs_$reboot · · Score: 2

    Connect a tube to the entrance and count what happens within the tube - way more accurate imo

    --
    Slashdot, fix the reply notifications... You won't get away with it...
    1. Re:Better by swillden · · Score: 2

      a simple video decoder that can recognise blobs moving to the left or to the right.

      Sure. But ML would be the easiest way (in terms of developer time) to construct that video decoder. Which is exactly what this guy did. He could probably have increased accuracy by adding a clear tube and pointing the camera at the tube (I think that's what hcs_$reboot was suggesting), but on the other hand what he's really interested in are trends, not absolute numbers, so it's likely that his solution is good enough. And he avoided having to modify the hive in a way that might disturb the bees.

      This is typical of many uses of ML these days, where it's used to do something that could be done with simpler tools but with more human brainpower and/or effort. But why bother? If the general-purpose tool does the job adequately and with less effort, use it.

      To use a construction analogy, sure there's no reason to screw drywall, nails are perfectly effective at holding it and hammers and nails are much simpler mechanically and cheaper than a battery-powered driver and screws. But it's faster and easier to drive screws than pound nails. For non-experts, at least; really experienced drywallers are crazy fast at driving nails -- tap, boom, next. I guess that part of the analogy holds up as well... if you are an engineer with a great deal of experience at writing custom video decoders you can probably write one faster than you can train a neural network to do the same job.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.