bash (Matplotlib) + eog > 실시간 이미지 표시 처리
GeForce GTX 1070 (8GB)
ASRock Z170M Pro4S [Intel Z170chipset]
Ubuntu 16.04 LTS desktop amd64
TensorFlow v1.2.1
cuDNN v5.1 for Linux
CUDA v8.0
Python 3.5.2
IPython 6.0.0 -- An enhanced Interactive Python.
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
scipy v0.19.1
geopandas v0.3.0
MATLAB R2017b (Home Edition)
ADDA v.1.3b6
전치
학습 비용이 적고, 자신의 희망 기능을 구현하는 방법은 없는가.
다음을 생각해 냈다.
사용 기능
화상 생성부
Quaternion (또는 3 차원 가속도 (ax, ay, az))을 UDP로 수신하여 그래프 이미지로 출력합니다.
ppm 형식 출력은 간단. 다른 형식도 파이썬 라이브러리를 사용하여 적절하게 구현한다.
화상 표시부
Ubuntu (또는 CentOS)에서는 eog라는 이미지 표시 프로그램을 사용할 수 있습니다.
code
화상 생성부
우선 ImageMagick을 사용한 임시 코드는 다음과 같습니다.
참고 : ImageMagick > 이미지 이동(+ 이미지 크기 확대) > convert green.png -page +0+20 -background none -extent 40x40 -flatten green_shift.png
image.png라는 파일로 red, green, blue의 색이 5초 간격으로 전환된다는 것만의 구현.
change_image_180214_exec
#!/usr/bin/env bash
for idx in $(seq 1 100)
do
for color in red green blue
do
echo $color
convert -size 100x100 xc:$color image.png
sleep 5
done
done
이미지 표시
다음을 수행한다.
$eog image.png
결과
사용할 수 있을 것 같다.
100msec 정도의 화상 변경도 문제 없을 것 같다.
MemoryEnhancer용의 입력 UI인 ESP8266+MPU-9250 의 조정용의 소프트는 이것으로 할 수 있을까.
이것은 「UI와 로직의 분리」의 1례일까.
이미지 생성 > Matplotlib
bash 대신 Matplotlib을 사용해보십시오.
참고 : Jupyter / matplotlib > 2D 이미지 파일 저장 > plt.savefig("foo.png") / 그러나 plt.show()가 있으면 저장에 실패하는 모양
saveToFile_180215.ipynb
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import time
for loop in range(100):
data_1d = np.random.rand(22500)
print(data_1d)
data_2d = np.reshape(data_1d, (150,150))
plt.imshow(data_2d, extent=(0,150,0,150),cmap=cm.gist_rainbow)
#plt.show()
plt.savefig("foo.png")
time.sleep(1)
다음과 같은 이미지가 1 초마다 업데이트됩니다.
Matplotlib의 plt.show()를 반복적으로 실행하면 이미지의 실시간 디스플레이가 아닌 이미지가 아래로 확장되어 추가됩니다 (아래 그림).
matplotlib로 실시간 그리기 에 기재된
plt.pause(.01)
를 사용해도 아래에 연장되어 추가된다.이 근처 도 시도했지만 결과는 같습니다.
이 문제도 있어, Matplotlib를 사용한 리얼타임 묘화 갱신은 포기하고 있었지만, 상기의 방법으로 리얼타임의 갱신을 할 수 있는 것을 알았다.
링크
Jupyter notebook에 Matplotlib로 실시간으로 차트 작성
이 방법은 Ubuntu 16.04 LTS 환경에서 작동 확인되었습니다
Reference
이 문제에 관하여(bash (Matplotlib) + eog > 실시간 이미지 표시 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7of9/items/42a0c5e352bd69146177텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)