Inception-v3を使って分類する
Inceptionの説明は割愛します
下記のサイトを参考にしてください
TensorFlow : Tutorials : 画像認識
TensorFlowチュートリアル - 画像認識(翻訳)
環境準備
前回構築した環境に"classify_image"を使えるようにします
$ git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow/models/image/imagenet
ひとまず動かしてみる
引数を指定しない場合はパンダの画像の分類結果を表示してくれます。
python classify_image.py
giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca (score = 0.88493)
indri, indris, Indri indri, Indri brevicaudatus (score = 0.00878)
lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens (score = 0.00317)
custard apple (score = 0.00149)
earthstar (score = 0.00127)
分類したいファイルパスを書いた一覧を作ります。
こんな感じですね
/home/vagrant/my_tensorflow/images/image01.jpg
/home/vagrant/my_tensorflow/images/image02.jpg
/home/vagrant/my_tensorflow/images/image03.jpg
/home/vagrant/my_tensorflow/images/image04.jpg
/home/vagrant/my_tensorflow/images/image05.jpg
実際に分類してフォルダ分けする
分類したimageファイルをディレクトリに移動させます。
# !/bin/bash -x
FILES=`cat /home/vagrant/my_tensorflow/train.csv | tr -d ' '`
for FILE in $FILES
do
DIR="/tmp/image/"`python /home/vagrant/tensorflow/tensorflow/models/image/imagenet/classify_image.py --image_file ${FILE} | awk 'NR==1{print $1}' | tr -d "," | tr -d ' ' `"/"
echo "-------------------"
echo "FILE:$FILE"
echo "DIR:$DIR"
mkdir $DIR
mv $FILE $DIR
done
フォルダ分け出来た
ls /tmp/image/comic/
image02.jpg
image04.jpg