새로운 PC에서 Deep Learning 을 돌리기 위해 환경을 설치하였다.


오랜만의 설치라 난관이 많았는대.. 다행히 타 블로그 글을 보고 설치하였다.


아래는 설치한 환경이다.



Anaconda 5.0.1


https://www.anaconda.com/download/

CUDA Tool Kit 8.0


https://developer.nvidia.com/cuda-downloads

cuDNN v6.1


https://developer.nvidia.com/rdp/cudnn-download 

회원 가입 필요




위의 툴들을 설치하고 TensorFlow를 설치하자


Anaconda로 접속하여 Python 환경을 구축하자 (conda create)


설정한 환경을 Activate 하자 (Actaviate)


그리고 pip를 이용하여 Tensorflow를 설치한다.


설치가 종료되면 샘플 코드를 실행시키자


import tensorflow as tf

hello = tf.constant('Hello Tensorflow!')

sess = tf.Session()

print(sess.run(hello))

실행결과


Hello Tensorflow!


가 출력되면 성공



이제 이를 Visual Studio 로 옮겨보자


Python Tool 을 설치하고


Anaconda 경로를 찾아 위에서 설정한 환경 디렉토리를 경로로 지정하면


위의 코드가 Visual Studio 에서도 실행된다.





출처


http://simverse.tistory.com/94?category=767674

'프로젝트 > Python' 카테고리의 다른 글

Deep Learning - Install Tensorflow  (0) 2017.12.08
GoPro Hero 5 - Live streaming  (0) 2017.06.13
블로그 이미지

Refrin

일상생활 끄적 IT 프로젝트 끄적

댓글을 달아 주세요

Python 포스팅에서 실행했던 코드를 C++ 로 옮기려고 한다.


지난 포스팅

2017/06/13 - [프로젝트/Python] - GoPro Hero 5 - Live streaming



기본적인 환경은 모두 전과 동일하다.


- 네트워크 환경


GoPro Hero 5 Black - Computer : Wifi



- 사용툴

Visual Studio 2017 (버전 무관), openCV3.0 (이전 버전도 사용 가능)



- 순서


1. UDP 통신과 http 실행을 위해 winsock 이 필요하다. include 하고 ws2_32.lib 를 추가하도록 하자.


2. UDP 접속이 24~25초면 끊긴다. 이 시간을 측정하여 25초마다 패킷을 보낼 것이다. 시간을 측정하는 함수를 위해 ctime 을 include 하자.


3. 밑에서 카메라 관련 명령어들을 찾고 이를 사용하자.


 - https://github.com/KonradIT/goprowifihack/tree/master/HERO5

 - 필자는 ShellExecuteA를 사용하여 http 를 열었다. curl 등을 사용하여도 된다.


4. VLC 나 FFMpeg 등을 이용하여 UDP 에 접속하여도 되나 속도가 모두 똑같다. 필자는 그냥 Videocapture 를 이용해서 접속하였다.


5. UDP 접속 시간을 늘리기 위해 UDP 로 메시지 패킷을 보낼 준비를 하자.


6. 테스트




테스트 완료

'프로젝트 > C, C++' 카테고리의 다른 글

GoPro Hero 5 - Live streaming  (0) 2017.06.13
블로그 이미지

Refrin

일상생활 끄적 IT 프로젝트 끄적

댓글을 달아 주세요

이미지 영상의 데이터베이스 구축을 할 일이 생겨 카메라를 찾아봤다. 인터넷으로 보니 GoPro 시리즈가 괜찮은 것 같아 구매하였다. 카메라 모델은 GoPro Hero 5 Black다. 먼저 카메라의 스펙을 보자.


사진 출처 : 네이버


크기 / 무게 : 약 62 x 45 x 34 (mm) / 약 90g

 -> 매우 작고 가볍다. 손바닥 안에 쏙 들어온다.

최대해상도 : UHD(3840 x 2160, 30프레임)

 -> 화질이 매우 좋다.

배터리 : 1220 mAh, 120분(4K, Wifi off시)

 -> 배터리가 약간 부족한 듯하다.

단자 : 마이크로HDMI, USB-C

 -> 단자도 부족함 없이 있는 듯하다.


구입당시 가격은 50만원대였으며 크기가 매우 작고 해상도가 높았다. 광각의 경우에는 매우 높은 화각을 자랑한다.


but.... 개발에 사용하다 보니 너무 많은 불편함이 있었다.


1. USB-C의 용도는 only 충전용이다.

 -> 구매 전 usb가 데이터 통신용이 아니라는 것은 알고 있었지만 usb를 연결했을 때 충전을 하며 개발을 진행할 수 있을 줄 알았다.. 그치만 just 충전용이였다.... 첫 좌절...


2. BLE의 용도는 only waking the camera up 이다.

 -> 여러대의 카메라를 동시에 연결하려 했고.. 그 방법으론 BLE 를 사용하려 했다. 그런데.. BLE는 단지 카메라의 파워 온만 가능하다...... 두번째 좌절..


3. Wifi Direct

 -> GoPro가 Wifi 에 접속하는 것이 아니다.... 우리가 GoPro에 접속하는 것이다...


4. Live Streaming

 -> UDP 프로토콜을 사용하여 스트리밍을 하고 이를 Wifi 를 이용해 접속하여 영상을 받아온다. 하지만.... 너무 끊긴다. 카메라의 화질과 차이가 너무 난다...


5. UDP 지연시간

 -> 접속 후 24 ~ 25초 동안 아무것도 하지않으면 종료된다. 따라서 UDP로 서버에 메시지를 보내야 한다......


결론

꼭 필요한 경우가 아니면 GoPro 시리즈는 비추천한다. (물 속 촬영 등 제외)



- 네트워크 환경


GoPro Hero 5 Black - Computer : Wifi



- 사용툴

Visual Studio 2017 (버전 무관), Python 3.6.0 (버전 무관), urllib, opencv-python 3.2.0 (자신에게 맞는 파이썬 버전에 깔아야한다)


 - VS와 Python 버전은 무관하지만 opencv-python 의 경우에는 버전을 잘 보고 설치하자. python 버전이 틀리면 작동하지 않는다. 기존 openCV를 설치한 분들은(openCV3.X 이상) python 2.7이 지원되므로 python 2.7을 설치하자. 하지만 그 이상의 python이 필요한 경우에는 맞는 버전을 찾아서 따로 설치해야 한다. 자세한 것은 인터넷 검색!



- 순서


1. 각종 툴을 살치한다. (설치 과정 생략)


 - 아래의 라이브러리들이 오류 없이 import 된다면 성공

 - import cv2

 - import socket

 - import time

 - import sys

 - import urllib.request

 - import numpy as np (여기서는 사용하지 않지만 나중에 필요하므로 설치)


2. GoPro Hero 5 는 설명도 빈약하다. Hero 5 관련 명령어를 찾으면 Hero 4로 넘어가곤 하는데 옵션이 다른 경우가 상당하다. (인터넷에는 Hero 5 관련 내용이 많이 나오지도 않는다....)


 - https://github.com/KonradIT/goprowifihack/tree/master/HERO5

 - 위의 사이트에서 필요한 명령어를 찾도록 하자. 꼭 필요한 명령어는 UDP Streaming 재실행이다. 해당 명령어는 다음과 같다.

 - http://10.5.5.9/gp/gpControl/execute?p1=gpStream&a1=proto_v2&c1=restart


3. 여기서 찾은 명령어들은 urllib 를 통해 Request 하고 urlopen 하면 된다. 원하는 설정들을 찾아서 입력하자 (입력 후에 확인이 필요하다. 해당 명령어들이 Hero 4 에 해당하는 것이 많다.)


4. VLC 나 FFMpeg 등을 이용하여 UDP 에 접속하여도 되나 속도가 모두 똑같다. 필자는 그냥 Videocapture 를 이용해서 접속하였다.


5. UDP 접속 시간을 늘리기 위해 UDP 로 메시지 패킷을 보낼 준비를 하자.


6. 테스트




조금 느리긴 하지만 실행이 잘 되는 것을 확인 할 수 있다.


다음번에는 이 코드를 C++ 로 옮기도록 하겠다.


오늘의 교훈

사전조사를 철저히!

'프로젝트 > Python' 카테고리의 다른 글

Deep Learning - Install Tensorflow  (0) 2017.12.08
GoPro Hero 5 - Live streaming  (0) 2017.06.13
블로그 이미지

Refrin

일상생활 끄적 IT 프로젝트 끄적

댓글을 달아 주세요