Graduation project
At first, we were tried to make it with raspberry pi.
But we couldn't do it for some reason.
The python program will replace the raspberry pi to show flow of our project.
We hope that you will take that into consideration.
Thanks
You have to download python code at here
save them at the same directory of this repository
You have to change your flow.py 's IP address code to your current pc's IP address
flow.py Line 12, HOST ="your PC ip address"
Also, you have to change your com.powl.graduation.ui.gallery.java and com.powl.graduation.enroll.java's IP address code to your current pc's IP address
com.powl.graduation.ui.gallery.java Line 64, String ip ="your PC ip address";
com.powl.graduation.enroll.java Line 22, String ip="your PC ip address";
tensorflow = 1.13.1
opencv-python = 4.1.2
PIL = 7.1.2
keras = 2.2.4
tqdm = 4.46.1
beautifulsoup4 = 4.9.1
selenium = 3.141.0
tensorboard
Basic datasets are from here
And Added some crawled data
There are 16 kinds of species
And 6160 pictures in total
Clone the git repository.
We will call the cloned repository/python/Tensorflow-Dog-Breed-Classifier/ as $home
git clone https://github.com/seokhyeonSong/PowL-Pets_own_bowL.git
cd PowL-Pets_own_bowL.git
This can be skipped
To make dataset more rich, you can crawl some data from google by this code
Crawled data will be at /dog_images/each_folder
You have to distinguish some garbage images from dataset
num_images are used to set the number of crawling image
default is 50
python crawling.py [--num_images number_of_images]
This can be skipped
To retrain the features of dogs, you can use this code
python retraining.py --image_dir /dog_images
This code is came from here
You have to download our application to register
Or you can just enter your dog's breed as insert value with args
Dog's breed | insert value | Dog's breed | insert value |
---|---|---|---|
Beagle | beagle | Border Collie | border collie |
Chihuahua | chihuahua | Cocker Spaniel | cocker spaniel |
Doberman | doberman | French Bulldog | french bulldog |
Golden Retriever | golden retriever | Labrador Retriever | labrador retriever |
Maltese | maltese dog | Papillon | papillon |
Pekinese | pekinese | Pomeranian | pomeranian |
Schnauzer | schnauzer | Shih Tzu | shih tzu |
Poddles | standard poodle | Yorkshire Terrier | yourkshire terrier |
python flow.py [--breed breed_insert_value]
You can register your dog with application
Your phone and notebook should be in same Wi-Fi
To register your dog
- run flow.py and select server on mode
- send your dog's picture by album or take a picutre
- You will receive your dog's breed prediction from server you can choose your dog's breed
- Then your registered dog will be added to breed.txt
To run PowL
- Set your labtop front of dog's bowl Before you run PowL mode, the camera's scene should be static
- Run PowL
- Then program will run, and check whether you've selected breed it or not
This codes are from here
You can see the training and validation result with tensorboard
- Enter here
- Run this code
for train result :
tensorboard --log_dir=$home/../tmp/retrain_logs/train
for validation result :tensorboard --log_dir=$home/../tmp/retrain_logs/validation
- You can see the result at here
author : @AthulDilip, @sabeersulaiman
title : Tensorflow Dog Breed Classifier
publisher : {GitHub}
journal : {GitHub repository}
howpublished : https://github.com/AthulDilip/Tensorflow-Dog-Breed-Classifier#tensorflow-dog-breed-classifier