OKI AI エッジコンピューター「AE2100」でOpenVINOのサンプルプログラムを動かしてみよう Ubuntuコンテナ版 (1)

<font size=4 color="Red">
**※この記事はAE2100のUbuntuコンテナ(ubuntu_openvino_2020R3.tar)を対象としています。**
</font>

# 要約
- この記事では、OKI  AI エッジコンピューター「AE2100」の設定方法について説明します。
- AE2100(Ubuntuコンテナ)上でGUIアプリケーションを動作させるために必要なVcXsrv(X-Windowクライアント)の導入方法について解説します。

# はじめに
AE2100は2020年9月にファームウェアがバージョンアップされており、あわせて、OpenVINO2020.3LTSを搭載したUbuntuコンテナがリリースされています。

これまで投稿してきた「OKI AIエッジコンピューター「AE2100」でOpenVINOのサンプルを動かしてみよう(1))～(3)」は、OpenVINO 2019R3.1が搭載されたCentOSコンテナを対象としていましたので、これをUbuntuコンテナ向けに修正した記事を順次投稿していきます。

Ubuntu版での初回となるこの記事では、AE2100を接続したウインドウズPCにVcxSrvを導入し、GUIアプリケーションの動作を確認します。
なお「OKI AIエッジコンピューター「AE2100」でOpenVINOのサンプルを動かしてみよう(1))」からの主な変更箇所は、電卓アプリのインストールにあたりapt-getコマンドを使用してXアプリケーションをインストールしている点です。

# 環境
実行環境は、次の図のような構成を前提とします。
ウインドウズPCからAE2100へTeraTermによって接続、AE2100からインターネットへ接続が可能なことを確認してください。
なおAE2100のコンテナバージョンは「ubuntu_openvino_2020R3.tar」とします。
![network-ae2100-internet.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/ec021512-683a-00b4-695a-d0f9fd983215.png)

# VcXsrv のインストール
VcXsrv はフリーの X Server クライアントであり、GUIアプリケーションの画面表示に用いられます。
ここではVcXsrvをウインドウズPCへインストールします。
WebブラウザよりSourceForge.netにアクセスし “VcXsrv” のインストーラーをダウンロードします。
https://sourceforge.net/projects/vcxsrv/
![vcxsrv-download.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/882b331b-3431-39db-7784-7888d907d297.png)

ダウンロードしたインストーラを実行すると次のような画面が出ます。
設定はそのままにし[Next]を押します。
![vcxsrv-installation-options.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/3e6186db-0db6-bfa3-8d9a-58acf2bed49c.png)

インストール先のフォルダを確認・選択して「Install」をクリックします。
![vcxsrv-installation-folder.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/707fdb4e-1b3f-c27c-51f2-013304d4d770.png)

インストールが完了したら「Close」をクリックします。
![vcxsrv-complete.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/2ad44b0a-59cf-648c-e9ee-1d30d16e6026.png)

# VcXsrvの起動
ウインドウズPCのスタートメニューからVcXsrv→Xlaunchを起動します。
![start-menu-xlaunch.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/aaaa0d48-f40b-92e5-b5bc-6065b1e33415.png)

設定はそのままにし「次へ」をクリックします。（”Multiple Window”を選択）
![display-settings.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/0796db99-1a8b-89bd-8699-9c932513f8dc.png)

設定はそのままにし「次へ」をクリックします。(Start no clientを選択)
![client-startup.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/2da24327-3ad0-9e54-bdc6-045680205226.png)

「Disable access control」のチェックを入れて「次へ」をクリックします。
![extra-settings.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/277dbbbe-b872-809b-b560-6c42859df5f6.png)

Save configrationで設定を保存し、[完了]を押します。
![complete.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/be415943-2bb9-c8c1-b2bb-c22e540c947a.png)

以下の画像のような画面が出る場合、[アクセスを許可する]を押します。
![firewall-pub.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/b35207ab-7a81-6a12-eac2-698f88ce6546.png)

そして、タスクバー右下にXlaunchのアイコンが表示されれば成功です。
![xlaunch-taskbar.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/3e9c8adb-c2cf-fc43-467f-4ed380c68df2.png)

# AE2100のコンテナ設定
TeraTramでAE2100のホストOSにログインして、以下のコマンドでコンテナに入ります。
（コンテナが起動していない場合、「AE2100 シリーズ SDK 取扱説明書 ―DeepLearning 編―」(版数: 1.2) P.20を参考に起動させてください。）

``` 
root@ae2100:~# docker exec -it ubuntu-openvino /bin/bash
```

今回はXアプリケーションの電卓を動かします。
以下のコマンドでXアプリケーションをインストールします。

```
# apt-get install x11-apps
```

ウインドウ表示先であるウインドウズPCのIPアドレスを指定します。

``` 
# export DISPLAY=192.168.100.101:0.0
``` 

# GUIアプリケーションの実行

AE2100のコンテナ内で以下のコマンドを入力します。

``` 
# xcalc &
``` 
　
ウインドウズPCのデスクトップに電卓アプリが表示されます。
![calc-0.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/bfa97cb0-a9e2-f7e0-6f35-be528ff17699.png)

試しにボタンを押して計算をさせてみましょう。
例えば「8」「*」「8」と入力すると「64」と表示されます。
アプリケーションウインドウはPC上に表示されていますが、計算自体はAE2100でおこなわれています。
![calc-64.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/37781f10-8b3e-34fc-0c4d-bd4bd630bf1d.png)

もし電卓が表示されない場合は、ウインドウズの「ファイアウォールとネットワーク保護」
を確認してください。
ウインドウズの「ファイアウォールとネットワーク保護」画面を開き、
「ファイアウォールによるアプリケーションの許可」を選択します。
![firewall.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/f11a90b6-bd90-ac8d-512d-0f1173948e45.png)

設定変更ボタンを押し、下画面のようにVcXsrv windows xserverにチェックを入れOKボタンを押します。
![app-permission.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669998/55931c34-15a8-e853-3035-071b10d14730.png)

# まとめ
今回はAE2100に接続したPCのウインドウ表示設定をおこないました。
次回からはOpenVINOのサンプルプログラムを動かしていきます。

- [OKI AI エッジコンピューター「AE2100」でOpenVINOのサンプルプログラムを動かしてみよう Ubuntuコンテナ版 (2)](https://qiita.com/TWAT/items/e7cd34f8c97f895c39b2)
- [OKI AI エッジコンピューター「AE2100」でOpenVINOのサンプルプログラムを動かしてみよう Ubuntuコンテナ版 (3)](https://qiita.com/TWAT/items/9c607be6af887ec3a044)