반응형
pip3 install tensorflow

이 가이드는 아래 웹 사이트를 참조하여 따라해보고 작성해 본 것입니다. 

https://github.com/EdjeElectronics/TensorFlow-Object-Detection-on-the-Raspberry-Pi

 

EdjeElectronics/TensorFlow-Object-Detection-on-the-Raspberry-Pi

A tutorial showing how to set up TensorFlow's Object Detection API on the Raspberry Pi - EdjeElectronics/TensorFlow-Object-Detection-on-the-Raspberry-Pi

github.com

Thanks a lot~!

설정은 아래 순서대로 진행합니다.

1. 라즈베리파이 설치

2. 라즈베리파이 업데이트

3. 텐서플로우 설치

4. OpenCV 설치

5. Tensorflow 설치

6. 사물인식

7. 기타


1. 라즈베리파이 설치

라즈베리파이용 OS는 아래 포스트 또는 구글링을 통해서 보기 쉬운 포스트를 참조하면 된다.

https://angel-breath.tistory.com/13?category=804034

 

라즈베리파이 라즈비안OS 설치

어느 날, raspberry pi 3 b+가 하나 생긴다면... 무엇을 해볼까 고민하다가 tensorflow가 동작된다는 것을 알았고, 웹캠을 연결하면 사물인식을 할 수 있다는 것을 알았다... 거기다가 Movidius까지 사용이 가능하..

angel-breath.tistory.com

2. 라즈베리파이 업데이트

라즈베리파이 업데이트는 아래 두 명령어를 사용한다. 시간이 꽤 걸립니다.

sudo apt-get update
sudo apt-get dist-upgrade

3. 텐서플로우 설치

아래 libatlas 설치 명령어가 실행이 되지 않는다면 "sudo apt-get update"을 한번 하고 다시 진행합니다.

pip3 install tensorflow
sudo apt-get install libatlas-base-dev

tensorflow가 설치되고 나서는 관련 라이브러리를 설치해 줍니다.

sudo pip3 install pillow lxml jupyter matplotlib cython
sudo apt-get install python-tk

4. OpenCV 설치

sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install qt4-dev-tools libatlas-base-dev
sudo pip3 install opencv-python

5. Protobuf 설치 및 컴파일

sudo apt-get install protobuf-compiler

Protobuf 검증

protoc --version
then 
libprotoc 3.6.1 or similar

5. Tensorflow 설치

tensorflow를 다운로드 할 폴더를 만들고 만든 폴더로 경로를 설정한다.

mkdir tensorflow1
cd tensorflow1

tensorflow 저장소에서 모델을 다운로드 받는다.

git clone --depth 1 https://github.com/tensorflow/models.git

터미널을 이용해서 PYTHONPATH 를 변경한다.

sudo nano ~/.bashrc

파일의 끝으로 커서를 이동한다음 다운로드 받은 tensorflow 경로를 추가한다.

export PYTHONPATH=$PYTHONPATH:/home/pi/tensorflow1/models/research:/home/pi/tensorflow1/models/research/slim

캡쳐한 그림이 없어서 참고 사이트의 그림을 가져왔다. (Thanks and Sorry!~)

protoc을 사용하는데 정확한 용도는 잘 모르겠으나 우선 따라해 본다. 그리고 경로를 변경한다.

cd /home/pi/tensorflow1/models/research
protoc object_detection/protos/*.proto --python_out=.
cd /home/pi/tensorflow1/models/research/object_detection

사용할 모델을 다운로드하고 컴파일한다.

wget http://download.tensorflow.org/models/object_detection/ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz

6. 사물인식

이제 라즈베리파이에서 터미널이면 raspi-config 메뉴 또는 desktop 버전이면 설정 메뉴에서 카메라를 활성화 시켜준다.

다시 원저작자의 그림을 참조...thanks again!~

실행에 사용할 파이썬 파일을 다운로드한다. 터미널에서 수행하고 경로를 잘 설정하면서 명령어를 사용한다.

wget https://raw.githubusercontent.com/EdjeElectronics/TensorFlow-Object-Detection-on-the-Raspberry-Pi/master/Object_detection_picamera.py

사물인식을 하는 파이썬 파일을 실행해 본다. 파이카메라를 사용하고 있으면 아래 명령어를 사용한다.

python3 Object_detection_picamera.py

다른 웹카메라를 사용하면 아래 명령어를 사용한다. 저는 일반 웹카메라를 사용했음.

python3 Object_detection_picamera.py --usbcam

 

7. 기타

이 과정을 총 5번 수행했는데, 맨 처음만 성공하고 이후 4번은 동작에 실패했다(2019년). 이유를 잘 모르겠으나, 시간이 날 때 다시 반복해보거나 아니면 다른 방법을 수행하고 다시 후기를 작성하려고 한다. 

부디 성공하시기를 빕니다. ㅜㅜ

 

* 참고 사이트에서는 애완동물 인식하는 방법도 있습니다.

 

 

 

 

 

 

+ Recent posts