// it's for Latex

pages

[Tensorflow Image Recognition in ROS] #04. Retrain

이제 드디어 Setting 이 끝났다.
이제 Retrain을 진행하겠다.
Retrain 을 진행하기 위해 #3에서 설치를 시도했던 tfClassifier 를 이용하겠다.


작업환경 (Labtop)
OS : Linux_Ubuntu_16.04
ROS : Kinetic



먼저 시작하기 전에 해당 내용은 다음 링크를 참조하였다.

https://github.com/kungfrank/ros_inception_v3

1. Download Retrain Code

해당 과정은 #02에서 진행한 분들은 패스하시면 된다.

먼저 training을 할 수 있는 code를 다운받는다.
명령어는 다음과 같다.

$ git clone https://github.com/akshaypai/tfClassifier
$ cd tfClassifier/image_classification




2.  Download Dataset

데이터셋을 다운받는다. 여기서는 flower dataset을 다운받는다.

cd ~
curl -O http://download.tensorflow.org/example_images/flower_photos.tgz
tar xzf flower_photos.tgz




3. Retrain 

Retrain을 진행한다.
과정은 다음과 같다.

python retrain.py --model_dir ./inception --image_dir ~/flower_photos ./output --how_many_training_steps 1000




# Error

학습 도중 아래 함수와 관련된 error가 등장했다.

tf.train.SummaryWriter

아래 링크를 참조하여 해결하였다.


retrain.py 파일에서

tf.train.SummaryWriter

부분을

tf.summary.FileWriter

로 수정한다.

4. Move Files

Retrain이 완료되면 Ubuntu의 /tmp 폴더에 다음과 같은 파일이 생성된다.

 ./output_graph.pb          ./labels.txt

위 두 파일을 ros_inception_v3 폴더로 이동시켜 원래 존재하던 output_graph.pb, labels.txt 파일과 바꾼다.



5. Start Test

기존의 방법으로 ros_inception_v3를 작동시킨다.
명령어는 다음과 같다.

$ roscore
$ rosrun cv_camera cv_camera_node
$ python image_recognition.py image:=/cv_camera/image_raw
$ rostopic echo /result

아래와 같이 꽃에 대해 인식을 성공함을 알 수 있다.









댓글 없음:

댓글 쓰기