2. Installing the Library - GachonCapstoneDesign/DoorWatcher GitHub Wiki
We needs to install some pre-installed package for utilizing the service.
- Flask framework
- opencv , opencv2
- Raspberry pi Camera settings
The installation is simple.
$ pip install Flask
The installation starts on typing the command written above. You can refer to some procedure mentioned below, if you face install-error.
First, a install-error from diversity of OS can occurs. So you need to install 'virtualenv', which can build system-independent python development environment for solving the error. You can check the version of 'virtualenv' and ensure whether 'virtualenv' was installed or not after installation. choose one of the line below to install 'virtualenv'.
$ sudo pip install virtualenv
$ sudo easy_install virtualenv
$ sudo apt-get install python-virtualenv
Then, you need to execute the command below that make a directory 'folderName/' and install a new python internally and 'pip'.
$ virtualenv folderName
You can refer to a command below for executing.
$ cd folderName
$ . bin/activate
You need to install 'opencv' for image processing.
There is a way to install 'opencv' on building it, but DoorWatcher utilizes only several modules in 'opencv' and people who aren't major in computer science can set the system up easily. So We recommend second way to install 'opencv' using 'apt-get'.
$ sudo apt-get install libopencv-dev
$ sudo apt-get install python-opencv
After basic step of 'opencv' installation, you need to install 'python-numpy' library. If you already installed it, you can pass the step.
$ sudo apt-get install python-numpy
*- If you only want to use DoorWatcher, you can pass the procedure below.
<python์ ํตํด opencv์ ์ ์์ค์น ํ์ธ> < 'opencv' install-check through python > execute a python script written below with making a new .py file.
import cv2
import numpy as np
img = cv2.imread('sample.jpg')
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow('Image View',gray_img)
cv2.waitKey(0)
If 'sample.jpg' that I picked is loaded with gray-scale color image, You did successive installation.
Click Menu -> Preferences -> Raspberry Pi Configuration
next, Ensure the camera software is enabled
์ด ์๋น์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์ ๋ค์๊ณผ ๊ฐ์ ์ฌ์ ์ค์น๊ฐ ํ์ํฉ๋๋ค.
- Flask framework
- opencv , opencv2
- Raspberry pi Camera settings
์ค์น๋ ๊ฐ๋จํฉ๋๋ค.
$ pip install Flask
์ ๋ช
๋ น์ด๋ฅผ ์น๋ฉด ์ค์น๊ฐ ์งํ๋ฉ๋๋ค.
๋ง์ฝ ์ค์น์ค ์ค๋ฅ๊ฐ๋๋ฉด ์๋์ ๊ณผ์ ์ ์ฐธ๊ณ ํฉ๋๋ค.
๋จผ์ ์ค์น๊ณผ์ ์์ ์ด์์ฒด์ ์ ๋ค์์ฑ ๋๋ฌธ์ ์ค์น๊ณผ์ ์ ๋ฌธ์ ๊ฐ ๋ ์ ์์ต๋๋ค.
์ด๋ฅผ ์ํด์ ์์คํ
๋
๋ฆฝ์ ์ธ ํ์ด์ฌ ๊ฐ๋ฐํ๊ฒฝ์ ๊ตฌ์ถํ ์ ์๋ virtualenv๋ฅผ ์ค์นํฉ๋๋ค.
์ด๋ฏธ ์ค์น๋์ด ์๋์ง๋ $ virtualenv --version ๋ฅผ ์ด์ฉํด์ ํ์ธํฉ๋๋ค.
์ด์ค์์ ํ๋์ ๋ช
๋ น์ด๋ก ์ค์น๋ฅผ ์งํํฉ๋๋ค.
$ sudo pip install virtualenv
$ sudo easy_install virtualenv
$ sudo apt-get install python-virtualenv
๊ทธ๋ฆฌ๊ณ ๋์ ์๋์ ๊ฐ์ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด folderName/ ํด๋๋ฅผ ์์ฑํ๊ณ ๋ด๋ถ์ ์ผ๋ก ์๋ก์ด ํ์ด์ฌ์ ์ค์นํฉ๋๋ค. ๋ํ pip๋ ์ค์น๋ฉ๋๋ค.
$ virtualenv folderName
๋ง์ง๋ง์ผ๋ก ์คํ์ ์๋์ ์ฝ๋๋ฅผ ์ฐธ์กฐํฉ๋๋ค.
$ cd folderName
$ . bin/activate
์ด๋ฏธ์ง ํ๋ก์ธ์ฑ์ ์ํด์ opencv๋ฅผ ์ค์นํด์ฃผ์ด์ผํฉ๋๋ค.
opencv๋ฅผ ์ง์ ๋น๋ํ์ฌ ์ค์นํ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง DoorWatcher์์๋ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ๋ง ์ฌ์ฉํ๋ฉฐ, ๋น์ ๊ณต์๋ ์ฝ๊ฒ ์ค์นํ ์ ์์ด์ผํ๋ฏ๋ก apt-get์ ์ด์ฉํ์ฌ ๊ฐ๋จ ์ค์น๋ฅผ ์งํํฉ๋๋ค.
$ sudo apt-get install libopencv-dev
$ sudo apt-get install python-opencv
๊ธฐ๋ณธ์ ์ธ opencv ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํ ์ค์น๊ฐ ๋๋ฌ๋ค๋ฉด, ํจ๊ป ์ฌ์ฉ๋๋ python-numpy ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด ์ฃผ์ด์ผ ํ๋ค. ์ด๋ฏธ ์ค์น๋์๋ค๋ฉด ๊ฑด๋๋ฐ์ด๋ ์ข์ต๋๋ค. ์ค์น๋ ๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น์ด๋ก ์งํํ๋ฉด ๋๋ค.
$ sudo apt-get install python-numpy
*- DoorWatcher ์ฌ์ฉ๋ง์ ์ํ์๋ ๋ถ๋ค์ ์ดํ์ ๋ด์ฉ์ ๊ฑด๋ ๋ฐ์ ๋ ๋ฉ๋๋ค.
<python์ ํตํด opencv์ ์ ์์ค์น ํ์ธ> ์๋ก์ด .py ํ์ผ์ ๋ง๋ค๊ณ ์๋์ ๊ฐ์ ์คํฌ๋ฆฝํธ๋ฅผ ์คํ์์ผ๋ณด์
import cv2
import numpy as np
img = cv2.imread('sample.jpg')
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow('Image View',gray_img)
cv2.waitKey(0)
๋ด๊ฐ ์ง์ ํ 'sample.jpg'์ ์ด๋ฏธ์ง๊ฐ ํ๋ฐฑ์ผ๋ก ์ ํ๋์ด ๋์์ง๋ค๋ฉด ์ ์์ค์น๊ฐ ๋ ๊ฒ ์ ๋๋ค.
Click Menu -> Preferences -> Raspberry Pi Configuration
next, Ensure the camera software is enabled