반응형

※ 윈도우OS 환경에서 파이썬과 주피터랩 개발 환경을 셋팅하고 이를 기록하기 위한 용도임

1. miniconda 설치

- anaconda 또는 minicodna 아무거나 설치해도 무방하나, anaconda는 기본적인 파이썬 패키지를 같이 설치해서 사용할 수 있게 해주고, miniconda는 필수적인 패키지만 설치해서 사용함. conda는 패키지와 파이썬 버전에 맞게 환경 구성을 해주는 점이 좋음

- 여기서는 miniconda를 설치하여 사용하는데, 어차피 용도에 맞게 가상환경(virtual environment)를 만들어서 많이 사용하기 때문에 필수구성만 설치하고 파이썬 프로그램에 맞는 가상환경을 새로 만들어서 파이썬 패키지를 설치해서 사용한다.

- 윈도우 기반 miniconda 설치 웹사이트(아래). 파이썬 버전과 윈도우OS에 맞는 설치파일을 다운로드 받아서 설치한다. 거의 기본 세팅으로 설치하면 되는데 "Advanced Option"에서 모든 체크박스를 체크하고 설치한다. ^^;a

https://docs.conda.io/en/latest/miniconda.html#windows-installers

 

Miniconda — conda documentation

Miniconda is a free minimal installer for conda. It is a small, bootstrap version of Anaconda that includes only conda, Python, the packages they depend on, and a small number of other useful packages, including pip, zlib and a few others. Use the conda in

docs.conda.io

2. 파이썬 가상환경 설정

- miniconda를 설치하면 기본적인 파이썬은 설치되고 사용할 수 있는 환경은 준비된다. 새로 설치된 프로그램 중 "Anaconda Prompt (miniconda3)" 바로가기를 실행한다. 정상적을 실행이 된다면 "(base) c:\miniconda\설치경로\"가 될 것임. "python"을 입력하면 설치된 파이썬 버전이 표시되면서 파이썬 프로그램을 실행할 수 있는 프롬프트가 동작한다.

- ctrl-Z 또는 Anaconda Prompt (miniconda3)를 새로 시작해서 (base) ~~인 프롬프트 상태로 만든다. 이제부터 가상환경 구성을 한다. 아래 명령어들을 순서대로 입력하면서 설치를 진행한다.

[콘다 버전 확인] : 그냥 해봄. 맞게 설치가 되었는지...
conda -–version

[콘다 업데이트] : conda는 (base) 환경에서 동작하는 것으로 이해함. 
conda update conda

[가상환경만들기] : (base)를 그대로 사용해도 되나, 여러 프로그램을 사용하게 되면 패키지별로 호환성이 문제가 될 수 있기 때문에 개발하는 프로그램에 맞는 가상환경을 구성해서 사용한다.
conda create -n <환경명> python=<버전(ex:3.5이나 3.7 등)>                                                                                        conda create -n koreait python=3.8 : koreait라는 가상환경을 새로 만들고 파이썬은 3.8을 사용한다.

[가상환경 목록] : 설치한 가상환경 목록을 보여준다.
conda env list

[가상환경 제거] : 가상환경을 삭제하는 경우
conda remove -n <name> --all                                                                                                                                        conda remove -n koreait --all

[가상환경 활성화] : 설치한 가상환경을 활성화 시켜준다. 활성화된 가상환경은 아래 그림처럼 * 표시가 생기고, (base) → (koreait)로 활성화된 가상환경 이름으로 변경된다. 이제부터는 활성화된 가상환경에서 conda 명령어를 입력한다.
conda activate koreait

[파이썬 패키지] : 개발하는데 필요한 패키지를 설치한다. 다음과 같이 이름만 입력하면 파이썬과 각 패키지에 맞는 버전을 골라서 자동으로 설치가된다. 특정 패키지가 필요하다면 "<패키지명>=<버전>"을 입력해서 따로 설치한다. 한개씩 설치해도 된다.
conda install numpy matplotlib tqdm bokeh scikit-learn scipy ipython cython pandas matplotlib seaborn 

왠만한 패키지는 conda를 통해 설치가 되는데, 몇몇 프로그램은 "pip" 명령어를 이용해서 설치한다. conda로 설치가 되지 않는다면 conda 대신에 pip를 이용해서 설치한다.

3. 주피터랩 설치

[콘다 - 주피터랩 설치] : 주피터랩을 설치한다. (주피터노트북도 동일하게 설치한다.)
conda install -c conda-forge jupyterlab

[콘다 패키지 업데이트] : 주피터랩을 실행하기 전에 만든 가상환경의 패키지를 업데이트해서 호환성 문제를 확인한다.
conda update --all

[주피터랩 실행] : miniconda가 설치된 폴더를 기본으로 보여주는 주피터랩이 실행이 된다.
jupyter lab

[주피터랩 시작 폴더 변경] : 주피터랩을 내가 원하는 폴더를 기본으로 해서 동작하고 싶은 경우가 있는 경우. Anaconda Prompt (miniconda3)를 새로 시작해서 (base) ~~인 프롬프트 상태에서 다음 명령어를 수행한다.
jupyter lab --generate-config

C:\Users\<PC명>\.jupyter 폴더 내에 "jupyter_lab_config.py" 파일이 생성된다. 파일에서 "c.ServerApp.notebook_dir"를 찾고 원하는 경로를 입력하고 저장한 후에 주피터랩을 다시 실행하면 입력한 경로가 기본으로 보여진다. # 표시는 삭제한다.
※ 입력한 경로로 시작하지 않는다면 '\\' 를 폴더 구분자로 사용한다.

# c.ServerApp.notebook_dir = '' → c.ServerApp.notebook_dir = 'D:\\02_my_code\\02_JupyterLabProject'

[콘다 가상환경 바로실행하기] : 매번 가상환경 실행과 주피터랩 실행하기가 번거로운 경우에 배치파일(.bat) 파일을 만들어서 명령어를 자동실행하게 할 수 있다. ".bat" 파일을 만들고 아래와 같이 입력한 후 저장하고 배치파일을 더블클릭하면 주피터랩까지 바로 실행이 된다. 


@echo off

cd "D:\02_my_code\02_JupyterLabProject\koreait" : 프로그램 경로 이동
call activate koreait : 가상환경 실행
call jupyter lab : 주피터랩 실행


 

반응형

라즈베리파이 3 B+를 이용해서 기본 라즈비안OS를 설치하고 동영상 플레이어로 사용하고 있는데, Netflix를 봐야되서 Netflix 머신으로 만들어 봅니다.

결론은 라즈베리파이로는 Netflix 머신으로 사용하는데 성능 제약이 많다는 것 입니다. 라즈베리파이4 4GB 버전으로 만들어도 봤는데 조금 나아질뿐 영상을 로딩하는 딜레이는 계속 발생했습니다. 

1. 동영상 플레이어

OSMC로 라즈베리파이를 동영상 전용 플레이어로 만들어도 되고, 아니면 인터넷도 하면서 사용하려면 kodi라는 프로그램(?)을 설치해서 사용해도 될 것 같습니다. (둘 다 설치해본 경험에 비춰보면...ㅡㅡ;a)

기본 설정이 끝난 라즈비안OS를 기반으로 진행합니다. 사이트는 아래 두 사이트를 참고 했습니다.

감사합니다. Thanks a lot!~

https://geeksvoyage.com/raspberry%20pi/kodi-for-pi/

 

라즈베리파이3 B+ 설치가이드(10) kodi 설치/설정하기

라즈베리파이로 미디어 센터로 사용해보자. 초소형 HTPC 설정 방법입니다. Kodi 설치부터 설정 방법까지 살펴봅니다.

geeksvoyage.com

https://pimylifeup.com/raspberry-pi-netflix/

 

How to Run Netflix on the Raspberry Pi

Get the popular streaming service working.

pimylifeup.com

라즈베리파이의 업데이트가 완료되었으면 kodi를 설치합니다. 

저는 Netflix도 같이 하려고 생각했기 때문에 kodi 설치를 아래와 같이 영문 사이트의 명령어를 참조했습니다.

sudo apt install kodi kodi-peripheral-joystick kodi-pvr-iptvsimple kodi-inputstream-adaptive kodi-inputstream-rtmp

시간이 꽤 걸립니다. 설치가 완료되면 GPU 메모리를 늘려줍니다. 영문사이트에서는 별 말이 없었는데 한글 사이트를 보고 256으로 설정했습니다. 

위치는 "산딸기버튼 > 설정 > 라즈베리파이설정 > 성능 > GPU Memory"의 값을 256으로 변경해 줍니다.

한글 사이트에서는 부팅 시에 kodi가 자동 실행되도록 했는데, kodi에서 라즈비안OS로 돌아 오지를 못해서 저는 그냥 수동으로 실행하도록 합니다.

수동 실행은 터미널 창에서 kodi를 입력하거나 "산딸기버튼 > 사운드 & 비디오 > kodi"를 선택해도 됩니다.

이제 외장 메모리를 연결하면 자동으로 폴더가 잡히면서 저장된 동영상을 찾아서 플레이를 하면 됩니다.

한글이름은 깨져서 나오는데, 환경설정을 한글로 해주면 됩니다.

그전에 라즈베리파이에 한글사용관련 설정이 되어 있어야 됩니다. 아래 사이트의 마지막 부분 참조합니다.

https://angel-breath.tistory.com/13

 

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

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

angel-breath.tistory.com

kodi 환경 한글 설정은 아래 참조합니다.

  • Kodi > 톱니바퀴설정 > Interface > Skin > Fonts : Arial based 변경
  • Kodi > 톱니바퀴설정 > Interface > Regional > Language : Korean 변경

 

 

2. Netflix 플레이어

이 부분은 플레이어로 사용하기가 부족해서 작성을 않하려고 합니다.

대신 아래 사이트가 정리가 잘 되어 있어서 따라하시면 넷플릭스를 사용 하실 수는 있습니다. 화질을 낮추면 볼 수는 있다고 하나 저는 잘 안되더군요. 

https://pimylifeup.com/raspberry-pi-netflix/

 

How to Run Netflix on the Raspberry Pi

Get the popular streaming service working.

pimylifeup.com

막상 해보니, 그냥 스마트TV를 사용하거나 윈도우 미니 PC를 사용해서 따로 설정없이 보는게 좋겠네요.  

반응형

※ 참조: 점프 투 파이썬 "https://wikidocs.net/14", 인터넷 검색 자료 기반 작성 자료.

자주 보기 위한 개인적인 참고용으로 만든 자료이며 자세하거나 다양한 쓰임은 링크 사이트를 참조 바랍니다.


1. 리스트 생성방법

아래와 같이 다양한 방법으로 리스트를 만들어서 사용할 수 있다.

a = []
a = list()
a = [1, 2, 3]
a = ['list', 'is', 'too', 'hard']
a = [1, 2, 'list', 'is'] 

초기값이 고정되어 있거나, 긴 배열 형태의 리스트를 만들고 싶은 경우

※ 참조: https://dojang.io/mod/page/view.php?id=2200

 

파이썬 코딩 도장: 10.1 리스트 만들기

Unit 10. 리스트와 튜플 사용하기 지금까지 변수에는 값을 한 개씩만 저장했습니다. 그럼 값을 30개 저장하려면 어떻게 해야 할까요? 다음과 같이 변수 30개에 값 30개를 저장하면 됩니다. a1 = 10 a2 = 20 # ... (생략) a29 = 60 a30 = 40 변수 30개를 일일이 타이핑하기는 쉽지 않습니다. 만약 저장할 값이 3,000개라면 정말 끔찍하죠? 이때는 리스트를 사용하면 편리합니다. 리스트는 말 그대로 목록이라는 뜻이며 값을 일

dojang.io

a = list(range(10))
a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

b = list(range(5, 12))
b
[5, 6, 7, 8, 9, 10, 11]

c = list(range(-4, 10, 2))
c
[-4, -2, 0, 2, 4, 6, 8]

d = list(range(10, 0, -1))
d
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

e = [x for x in range(0, 3)]
e
[0, 1, 2]

2. 이차원 리스트 생성방법

※ 참조: https://dojang.io/mod/page/view.php?id=2291

 

파이썬 코딩 도장: 23.1 2차원 리스트를 만들고 요소에 접근하기

Unit 23. 2차원 리스트 사용하기 리스트를 사용할 때 한 줄로 늘어선 1차원 리스트를 사용했는데 이번에는 평면 구조의 2차원 리스트를 사용해보겠습니다. 2차원 리스트는 다음과 같이 가로×세로 형태로 이루어져 있으며 행(row)과 열(column) 모두 0부터 시작합니다. ▼ 그림 23-1 2차원 리스트 23.1 2차원 리스트를 만들고 요소에 접근하기 2차원 리스트는 리스트 안에 리스트를 넣어서 만들 수 있으며 안쪽의 각 리스트는 ,(콤마)로 구분합니

dojang.io

a = [[0 for j in range(2)] for i in range(3)]
a
[[0, 0], [0, 0], [0, 0]]

3. 리스트와 튜플

리스트와 튜플은 동일한 형태를 갖고 있다. 표현식은 []와 ()로 다르다. 

# 리스트 to 튜플
a = list()
b = tuple(a)

# 튜플 to 리스트
a = tuple()
b = list(a)

 

4. 리스트 덧셈

- 연달아서 더하기

a = [1, 2, 3] 
b = ['a', 'b', 'c'] 
c = a + b
c
[1, 2, 3, 'a', 'b', 'c']

 

 

 

반응형
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년). 이유를 잘 모르겠으나, 시간이 날 때 다시 반복해보거나 아니면 다른 방법을 수행하고 다시 후기를 작성하려고 한다. 

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

 

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

 

 

 

 

 

 

반응형

원래 하던 사물인식을 마무리하고 시도하려고 했는데... 아이들 때문에 갑자기 시작을 했습니다...

한두 시간이면 될 것 같아서 작업을 시작했는데 느낌은 30분 검색에 2시간 정도 걸린듯...ㅡㅡ;a...

1. 라즈베리파이 준비

늘 그렇듯이 라즈베리파이 3B+를 준비합니다. 그리고 모니터... 지난번에 너무 힘들게 작업을 해서 편하게 작업하려고 하나 장만 했습니다...ㅜㅜ

 

2. 레트로파이 OS 준비

우선 아래 사이트에서 OS를 다운로드 받습니다. 

 https://retropie.org.uk/

 

RetroPie

Retro-gaming on the Raspberry Pi

retropie.org.uk

위에서 Get RetroPie를 클릭해서 다운로드 받아요...

 

3. 레트로파이OS 굽기

마이크로SD 카드에 다운로드 받은 파일을 구울 겁니다. 

retropie-4.5.1-rpi2_rpi3.img.gz : 2019-08-11 기준

굽기는 아래 두가지를 사용하는데 방법은 크게 다른 것이 없으니 제가 사용한 프로그램을 기준으로 설명을 드리겠습니다. 

3-1. rufus-3.5p.exe

전 예전에 받아 놓은 위 프로그램을 사용했고요. 

2가지만 하고 시작을 하면 되는데 마이크로SD카드가 있는 위치를 장치에서 선택을 하고, 다음엔 선택 버튼을 눌러서 다운로드받은 레트로파이OS 파일을 선택을 합니다. 그리고 시작만 하면 마이크로SD 카드에 굽기가 됩니다. 라즈비안 OS 설치 때 굽기가 잘못 되면 OS 동작이 안되거나 이상하게 동작하는데 다시 굽기를 하니 정상적으로 동작이 되었던 적이 있습니다. 

3-2. Win32 Disk Imager 또는 balenaEtcher를 레트로파이OS를 마이크로SD 카드를 굽는데 사용해도 됩니다. 

혹시나, 굽기가 이상할 경우에는 포맷을 하고 하면 좋을 것 같아요. 많은 분들이 포맷을 먼저 하는 거로 하시던데 저는 귀찮아서 그냥 했습니다. 

포맷은 "SD Card Formatter"  프로그램을 사용해서 포맷을 했었습니다. 포맷한 후에 위 과정을 진행하면 됩니다.

 

4. 레트로파이OS 실행 및 설정

레트로파이OS를 구운 뒤에 라즈베리파이에 넣고 전원을 넣으면 자동으로 설치가 되는 것을 볼 수 있습니다. 그리고 게임 패드를 연결하거나 키보드, 마우스가 연결이 되어 있으면 아래 화면에 표시가 됩니다. 처음에는 설정이 필요해서 저는 키보드와 마우스를 연결해서 사용했습니다. 

 

F4를 누르면 설정없이 바로 OS 구동이 되면서 OS 화면이 나옵니다.

OS 내에서 설정은 어려운 부분은 없으니 필요한 것만 검색해서 수정하시면 될 것 같습니다. 저는 출력 화면만 선택 정도만 설정하였습니다. HDMI로요. 그리고 오디오가 나오지 않을 경우에도 위 그림의 레트로파이 메뉴에 들어가서 오디오 설정을 사용자에 맞는 설정으로 변경하면 됩니다.

패드를 연결하고 다시 전원을 off -> on하면 게임 패드 설정화면이 나옵니다. 해당하는 버튼을 눌러서 설정을 하고 해당 없는 버튼은 아무 버튼이나 길게 누르면 다음 버튼 설정으로 넘어가는 식으로 설정을 생략합니다. 패드가 2개 연결되어 있어도 1번만 설정하면 됩니다. 

패드 설정이 끝나면 패드만으로 웬만한 설정을 변경 가능해 보입니다. 키보드나 마우스는 빼고 하시면 될 것 같네요.

 

5. 게임 롬 추가

※ 참조 사이트: https://rottk.tistory.com/105

 

RetroPie 설치 @ Raspberry Pi

개요 또 다른 라즈베리파이의 활용방법은 에뮬레이터를 설치하여 고전게임을 즐길 수 있는 콘솔로 만드는 것입니다. 고전게임 콘솔을 만들기 위한 프로젝트로 RetroPie, Recalbox, Lakka 등이 있으며, 모두 최소한..

rottk.tistory.com

위 사이트의 "롬(ROM) 추가하기"를 참조하시면 좋구요. 

간단히 말하면 구글링으로 검색해서 구한 롬파일을 레트로파이OS의 roms 폴더 내에 알맞은 게임기의 이름 폴더 안에 복사하면 됩니다. 잘못 복사하면 게임 실행이 잘 되지 않을 테니 다시 복사해서 넣어 주시면 되고요. 잘 실행이 않되면 "아케이드(ARCADE) 폴더"가 있습니다. 여기에 넣고 실행을 하면 종종 되는 롬이 있습니다. 그래도 실행이 않되면 롬 실행할 때 까만 화면에 에뮬레이터 설정하는 팝업이 잠깐 나오는데 이때 "A" 버튼을 누르면 에뮬레이터를 선택할 수가 있습니다. 알맞은 에뮬레이터가 선택이 되면 실행이 되는 롬도 있더군요.

외국 파일은 조심하시구요. 알약 알림이 너무 많이 뜨더라구요...

보통 zip으로 된 파일은 그냥 넣으면 알아서 실행이 되더라구요. 

파일 복사는 카드에 직접 복사를 해도 되는데 빼기가 귀찮다면 집에 있는 공유기와 같이 랜을 연결하면 "\\retropie" 주소에 자동으로 연결을 할 수 있습니다. 그러면 위의 roms 폴더가 보이고 하위 폴더에 게임기 이름의 폴더가 보입니다. 그러면 위와 마찬가지로 복사해서 넣으면 됩니다.

 

6. 한글화

제 경우는 처음 실행 시, 롬 파일들이 한글로 되어 있는 것은 한글 인식이 제대로 되지 않았습니다. 

네이버 카페에 한방에 설정하는 스크립트를 만들어 놓은 능력자분들이 있더라구요.

https://cafe.naver.com/raspigamer/1843

 

레트로파이(RetroPie) 기본세팅...

대한민국 모임의 시작, 네이버 카페

cafe.naver.com

물론 회원가입을 해야 합니다. 라즈베리파이를 인터넷에 연결하고 순서대로 따라하면 잘 되니 여유를 갖고 따라해 보세요.

 

즐겜하세요~ ^^v

반응형

사용할 때마다 헷갈리는 부분이 있어서 매번 찾아 보다가 정리를 했습니다.

 

1. for 변수 in 리스트:

변수를 사용하게 되면 for 반복문이 동작하면서 변수를 사용하는데 이 변수에 리스트의 인자가 들어 가게 되고, 이 변수를 for 반복문 안에서 사용하게 된다. 변수가 숫자리스트라면 숫자가 변수에 들어가서 사용이 된다. 문자나 문자열이라면 변수에 이 문자나 문자열이 들어가서 사용한다. 리스트의 인자가 2개라면...

   리스트 = [(1,2), (3,4), ...]

   for (1st 인자, 2nd 인자) in 리스트:

리스트는 숫자도 되고, 문자도 되고. 리스트를 특정 숫자의 배열로 만들면 특정 숫자를 이용한 반복문을 만들수 있다. 

 

2. for 변수 in range(stop) = for 변수 in range(0, stop): 

주어진 stop 미만까지만 반복하면서 값을 변수에 할당한다.

 

3. for 변수 in range([start,] stop [, step]):

*[]는 생략 가능한 인자라는 의미임

start부터 stop미만까지만 반복하면서 값을 변수에 할당하는데 step만큼 이동하면서 값을 할당한다.

   예) for i in range(2, 10, 2):

   2, 4, 6, 8

만일 step이 음수라면? 숫자가 감소하는 for 반복문을 만들 수 있습니다. 물론 start와 stop을 큰 수에서 작은 수로 변경해야 겠죠.

 

반응형

※ 경험한 내용을 기록하는 블로그입니다. 다양한 환경이나 방법이 있다면 댓글 남겨주세요.

라즈비안OS가 동작하는 라즈베리파이가 완성이 되었다면 이제 본격적으로 사물인식을 위한 프로그램을 설치해 보자~

여기서부터는 사람들마다 방식이 다 제각각이다. 그래서 뭐를 먼저 따라해야 할지 막막했다. 몇일을 리뷰를 했지만 텐서플로를 많이 사용해도 방식이 다 조금씩 달라서 이사람 저사람 것을 마구 따라할 수도 없었다. 

* 우선 업데이트와 업그레이드를 먼저 한다.(이전에 하지 않았을 경우)

1. sudo apt-get update : 업데이트 패키지 목록을 최신으로 갱신

 

2. sudo apt-get upgrade : 업데이트 할 패키지의 업그레이드를 실행

 

3. sudo rpi-update : 라즈베리파이의 펌웨어를 업데이트

 

→ tensorflow 설치 방법

제일 정리가 깔끔하게 되어 있어서 참조를 했습니다.

※ 참조: https://m.blog.naver.com/PostView.nhn?blogId=chandong83&logNo=221334936927&proxyReferer=https%3A%2F%2Fwww.google.com%2F

 

라즈베리 파이(Raspberry Pi) 텐서플로우(Tensorflow) 설치하기(쉽게)

이전에 라즈베리 파이에 텐서플로를 설치하는 방법을 다룬 적이 있다. 이때만 해도 텐서플로에서 공식 지원...

blog.naver.com

[Rasberry pi 기반]

1. pip 설치: python3.x 기준으로 설명합니다.

   sudo apt-get install python3-pip

 

2. Atlas 패키지 설치

   sudo apt install libatlas-base-dev

 

3. Tensorflow 설치

   pip install tensorflow: 최신 버전의 텐서플로우가 설치가 된다. 

   pip install tensorflow==1.13.1: 해당하는 버전의 텐서플로우가 설치가 된다.

※ 다른 패키지 설치도 마찬가지 방식으로 버전을 설정해서 설치 가능하다. 버전별로 매칭이 있을 수 있으니 조사 후 해당 버전을 설치한다.

 

4. Tensorflow 테스트

   import tensorflow as tf

   a = tf.constant("Hello!")

   sess = tf.Session()

   print(sess.run(a)): Hello가 정상적으로 출력이 되는지 확인한다.

 

[Window 기반]

윈도우 환경에서 텐서플로우를 사용해보고자 한다면 라즈베이파이와 비슷하게 설치할 수도 있고,

파이참이라는 좋은 프로그램 개발 툴을 이용하는 방법도 있다. 

라즈베리파이와 비슷하게 설치한다고 한다면, 아나콘다나 미니콘다를 추천한다.

아나콘다는 파이썬과 관련 패키지를 모두 설치하게 해주고, 미니콘다는 최소한의 파이썬과 패키지만을 

설치하고 사용 시에 필요한 패키지를 설치한다. 

 

1. 미니 콘다를 설치한다. 설치 프로그램은 최신 버전을 설치하고 해당 OS에 맞는 버전을 골라서 설치한다.

설치 중에 나오는 옵션을 잘 읽고 환경변수 설정이나 파일 링크 옵션은 체크 해주고 설치를 한다.

 

2. 설치 후에 아나콘다 프롬프트(Anaconda Prompt)를 실행하고 업데이트나 설치가 필요한 패키지를 설치한다.

 

2-1. conda 업데이트

   예) conda update conda

 

2-2. 만일 numpy,  pandas, matplotlib, jupyterlab 등 설치한다면 이름만 바꿔서 ('[]'는 제외) 하나씩 입력을 하면 된다.

   예) pip install [numpy][pandas][matplotlib][jupyterlab]

파이썬을 하나의 환경만 사용할거면 pip만 사용하면 될 것 같은데, 사용하다 보면 다양한 파이썬 환경이 필요해 진다.

따라서 여러 프로젝트를 할 경우에는 다양한 가상환경을 만들어서 사용하는 것이 좋다.

 

※ pip는 파이썬2, pip3는 파이썬3으로 알고 있다. 정확히는 pip는 아나콘다에서 관리하는 전역 pip에 설치되고

pip2는 로컬내에 파이썬2로 pip3는 로컬내에 파이썬3로 설치가 된다. 

 

3. 특정 환경을 만들어서 사용하고 싶으면 추가 가상환경을 만들어서 사용한다. default 파이썬과 독립된 환경으로 

환경 충돌없이 사용한다. 가상환경 내에서는 pip만 사용하면 가상환경 내에만 설치가 된다.

 

※ 참조: https://dailyheumsi.tistory.com/33

 

pip3? pip? 및 conda 내 pip 정리

pip 로 뭐 설치할 때마다 헷갈리던거 이번 글에서 한 번에 정리해보려고 한다. 먼저, 내 컴퓨터에는 anaconda와, python2, 3 모두 깔려있는 상태다. 1. pip vs pip3 이 링크 pip or pip3 to install packages for..

dailyheumsi.tistory.com

 

[수정] 아나콘다나 미니콘다를 사용해도 어차피 가상환경을 새로 만들고 필요한 패키지를 새로 설치해야 한다면 좀 더 가벼운 기본 파이썬을 설치하고 가상환경의 목적에 맞는 패키지를 설치하는 방식을 사용합니다.

윈도우 기준, 다음 경로에서 목적에 맞는 버전을 파이썬을 설치합니다. 대부분 아직은 3.6.x 버전을 주로 사용하는 것 같습니다.

https://www.python.org/downloads/

 

Download Python

The official home of the Python Programming Language

www.python.org

Customize installation을 선택합니다.

Next를 선택합니다.

Install for all users를 선택하면 설치 경로가 기본 폴더로 변경이 되고 Install 버튼을 누르면 설치가 진행이 됩니다.

이 후 윈도우의 cmd창을 통해서 pip 명령어를 이용해서 업데이트, 업그레이드를 진행합니다.

python -m pip install --upgrade pip
반응형

HDMI로 모니터를 연결하고, 키보드와 마우스를 연결하고, 정상적으로 라즈비안OS를 설치했다면 화면이 나오고 키보드와 마우스가 정상적으로 동작하면서 인터넷이나 기본 프로그램이 정상적으로 동작할 것이다...

하지만.......

나는 이게 다 없다...ㅜㅜ...

그래서 여러 사이트와 블로그를 전전하면서 통신에 성공한 결과를 작성한다...

도움을 받은 블로그와 사이트는 아래 작성했다... 이 자리를 빌어서 다시 한번 감사드립니다...

"https://blog.xcoda.net/93"

"http://makeshare.org/bbs/board.php?bo_table=raspberrypi&wr_id=75"

먼저 생각보다 다양한 방법이 있어서 놀랐습니다... 더불어 삽질의 시작도 같이 시작이 되었구요...

제가 실력이 부족해서 그렇겠지만 설정문제인지 않되는 방법이 있었습니다...

대체적으로 UART, LAN등를 이용해서 라즈베리파이에 접속하는데, 물리적인 연결을 하고 통신관련된 설정을 해줘야 PC에서 통신프로그램(PuTTY등)을 이용해서 라즈베리파이로 접속이 가능했습니다... 

지금부터 순서대로 작성해 보겠습니다. 

 

1. 라즈비안OS를 설치하면 모든 설정이 disable 상태로 되어 있었습니다. 그런데 랜선으로 통신을 하려면 ssh가 enable이 되어야 합니다. 모니터가 있다면 화면을 보면서 설정화면에서 바로 ssh를 enable로 활성화 해주면 되지만 난 화면이 없으니...강제로 이 ssh를 활성화 해준다. 

- 라즈비안OS가 설치된 SD카드를 PC에서 읽는다.

- SD카드의 최상위 경로에 text 파일을 만드는데 이름은 ssh로 하고 확장자는 없이 만든다.

- 이렇게 만든 ssh 파일은 라즈비안OS가 부팅이 되면서 ssh를 enable하고 자동으로 삭제가 된다고 한다.

- SD카드를 라즈베리파이에 삽입한다.

 

2. PC와 라즈베리파이를 랜선으로 연결합니다. 랜선은 두 선끝의 색깔이 같은 것으로 사용했습니다. 

 

3. 전원은 자기 PC와 연결해서 전력을 받아옵니다. 핸드폰 충전기를 사용해도 되고요.

 

4. 라즈베리파이가 부팅이 되면 ssh가 enable되어 있을 것이므로 PuTTY를 이용해서 라즈베리파이에 접속을 해본다. 

- 우선 인터넷을 해야 하므로 (※ 와이파이로 인터넷이 되야 함. 현재 피씨는 라즈베리파이와 연결이 되어 있어서 유선으로 인터넷이 안되요.) 네트워크 설정을 해준다.

- 제어판\모든 제어판 항목\네트워크 및 공유 센터로 간다. >> 어댑터 설정 변경 클릭

-  Wi-Fi 실행 및 사용 >> 마우스 우클릭 >> 속성 선택 >> 공유탭 >> 다른 네트워크 사용자가 이 컴퓨터의 인터넷 연결을 통해 연결할 수 있도록 허용 체크 >> 확인

- 이더넷은 라즈베리파이와 연결을 해야 하므로 다음과 같이 설정한다. >> 이더넷 선택 >> 속성 >> 인터넷 프로토콜 버전 4(TCP/IPv4) 클릭 및 속성 선택 >> 다음의 IP 주소 사용 선택 >> IP주소: 192.168.137.1 / 서브넷 마스크: 255.255.255.0 확인 >> PuTTY 실행

- 원래는 보통 IP주소를 PuTTY에 적어서 라즈베리파이와 접속을 하는데, 이 능력자분은 도메인주소(?)로 접속을 합니다. 세션을 클릭하고 호스트 네임에 "raspberrypi.mshome.net"라고 입력을 하고 open을 하면 Putty를 통해 ssh로 로그인을 하게 됩니다. 기본적으로 라즈베리파이는 접속 ID와 Password가 지정이 되어 있습니다.(pi, raspberry...였던가요...)

- 접속 완료!!! 

※ PuTTY 다운로드 사이트: https://www.putty.org/

 

5. 접속까지는 여러 능력자 분들이 많아서 실수하더라도 여러 사이트가 있어서 몇번 따라하다보면 성공을 하실 수 있을 겁니다. 저도 그랬으니까요... 그래도 화면을 보면서 라즈베리파이를 제어하고 싶었습니다. ^^; 그래서 VNC viewer라는 것을 사용해서 제 랩탑에서 라즈베리파이 화면을 보면서 사용을 해봤습니다. 

- PuTTY와 연결된 콘솔 화면을 이용해서 "ifconfig eht0" 입력합니다. 결과 화면에서 IP주소를 확인합니다.

- 앞으로 이 주소를 사용해서 접속을 하게 됩니다. 아마 랩탑과 비슷한 대역의 주소를 사용할 겁니다. 주소를 따로 적어 놓습니다.

- VNC를 사용하기 위해서는 해당 기능을 enable 해줘야 합니다. "sudo raspi-config"를 하면 설정 화면이 나옵니다. >> 인터페이스 옵션(버전별로 이름이 상이함) >> VNC 선택 >> enable YES를 선택

- 랩탑에도 VNC뷰어를 설치 해줍니다. 다운로드는 아래 사이트에서 받습니다. 

   ※ https://www.realvnc.com/en/connect/download/viewer/

 

Download VNC Viewer | VNC® Connect

 

www.realvnc.com

- 설치를 마치면 뉴 커넥션합니다.

- 아까 적어놓은 라즈베리파이의 IP주소를 입력합니다. 그리고 IP와 패스워드도 같이 적어 줍니다.

- 아니면 접속할 때 물어보니 그때 작성하고 기억을 하도록 체크해도 됩니다. 그리고 확인하면 아이콘이 하나 만들어 지고 이 아이콘을 더블클릭하면 연결된 라즈베리파이에 접속이 되면서 라즈베리파이 화면이 보이게 됩니다. 해상도 설정 때문에 화면이 이상한데, 설정 메뉴에서 해상도를 맞추게 되면 적정한 화면을 볼 수 있습니다. 저는 귀찮아서 최대 해상도로 설정하고 사용했네요...

 

6. 화면이 잘 보이면 명령어 창을 실행해서 각종 업데이트를 하시면 됩니다. 업데이트가 끝나면 나머지 설치를 진행하도록 하겠습니다. 

- 다음의 명령을 실행하여 시스템의 패키지 목록을 갱신합니다.

sudo apt-get update

- 설치된 패키지를 모두 최신 버전으로 업그레이드합니다.

sudo apt-get dist-upgrade

 

 

+ Recent posts