My partner and I have a shared guilty pleasure: we love watching wildlife on webcams. We often have a live cam from Explore streaming on our screens or Chromecast to the TV. One of our favorite cams is Brooks Falls Live Cam from Katmai National Park, Alaska. In spring and summer, Brooks Falls sees one of the highest concentrations of brown bears in the world. During the heart of the season, you can sit and watch dozens of bears fishing at the falls:

Brooks Falls

If passively watching is not enough, you can join the discussion on the Explore page and join in the various ranger talks. You will quickly learn that each of the bears have been assigned a number by the rangers, and some of them have nicknames. Pretty soon you will start to recognize some of the individual bears, especially the fan favorites, like 480 Otis:

480 Otis

But I don’t know all the bears and I certainly can’t tell them all apart. It would be cool if I can find out which bears I’m watching on the cam, or who I just captured in a snapshot. The Explore community is very helpful. Often someone in the community has identified which bears are on camera and posted in the comments. But even the experts have difficulty telling the bears apart. Could machine learning do any better?

Hang on a minute. I know that CNNs can distinguish, for example, between a brown bear and a polar bear. That’s already part of the ImageNet data set. But can we train a machine to tell, say, 480 Otis from 435 Holly?

We found our project. We would attempt to develop an application which could identify the individual bears we see on the Brooks Falls live cam. To begin, we had to start answering the following questions:

  • Who are the bears of Brooks Falls?
  • How do we tell one bear from another?
  • Has this already been done?
  • What tools already exist that we can make use of?

We will begin to explore these and other questions in the coming blogs.