Now there's a free, though less scientific, alternative through an app called Fetch! The program was created by Microsoft Garage, a project lab that lets Microsoft employees work on projects not related to their regular job (it's been compared to Google's famous "20% time" initiative).
Using machine learning technology, Fetch! uses a photo database to classify the makeup of a dog. When you take a picture of your pup, it'll tell you the closest percentage of your dog's breed. If your dog is a mix, you can tap the percentage of see the top five potential breeds. My rescue dog, Scuttle, came up as 99% Border Collie, which I think is accurate, but I tried the app with my friends' pups and they came up mostly Basenji and Chihuahua, which I was doubtful about. However, I can see that the accuracy can very depending on the quality of the photo you use.
If you take a non-dog photo, it will say "No dogs found" and offer a guess as to what it is. I tried a photo of my cat and it successfully identified her as a cat. If you use a photo of a person, it will go into Fetch! Fun mode and put cartoon ears on your head and playfully suggest a breed.
Fetch! uses a technology called deep neural networks to identify subtle of differences in images. According to Mitch Goldberg, a development director at Microsoft Research, this is what makes the app successful. You don't train the algorithm on a particular dog breed. In the training process, you give it a number of images and the computer determines what's unique in each of the photos.
Whether it's accurate or not, it's certainly a fun program to try with your pups!