« 激安PCでWord、Excel、Zoom辺りを使ってみた | トップページ | 12,800円のGIGAスクール構想PC「mouse E10」をWindows 11にアップグレードするにはマカフィーのアンインストールが必要っぽいです »

2022年7月 7日 (木)

1.3万円PCのmouse E10で「AI」を走らせてみた

私にとっては、EeePC以来のいじりがいのある楽しいPCかもしれません。

とまあ、ついついいじりたくなる激安PC「mouse E10」ですが、ちょっと無茶(?)させてみました。

Img_1956

そういえば、前回記事(激安PCでWord、Excel、Zoom辺りを使ってみた: EeePCの軌跡)の続きから。

Windows 11へのアップデートを強行しましたが、かなり時間が経って、こういう画面になりました。

つまり、インストールそのものは成功したようです。

Img_1957

順調に進行しましたね。ただし、時間が半端じゃないほどかかりましたが。

Img_1958

で、御覧の通り、Windows 11になりました。

が、見た目と操作性は変わったものの、性能的にはさほど変わらず。

ただ、スタートメニューからOneNoteが見えなくなり、「すべてのアプリ」から選ばないと呼び出せません。

タスクバーにピン留めすればいいんでしょうが、そこまで使うつもりもないので、そのままにしておきます。

さて、これだけでは何も面白くないので、表題にある通りのことをやってみます。

「AI」などとたいそうなタイトルですが、要するに画像認識をやらせてみたらどうなるか?というのを検証しました。

仮にも「GIGAスクール構想」などと謳う学校向けPCですから、プログラミング程度は実行できないと困ります。

具体的には、「カメラに映った物体を認識させる」というもの。

手近なコードからさくっと作ったプログラムなので、いわゆる学習済みモデル(ImageNet Large Scale Visual Recognition Challenge 2012の120万枚、1000カテゴリのデータセットを用いたモデル)を使います。なお、ネットワークはVGG16です。

まず事前準備ですが、mouse E10に「Python for Windows」をインストールします。

非公式Pythonダウンロードリンク - Python downloads

バージョンですが、最新だと不具合が多いので、3.9をダウンロードしました。

で、Python 3.9をインストール後、Windows PowerShellを開いて

> pip install opencv-python, numpy, tensorflow

を実行します。ほんとに最低限のライブラリのみ入れました。

が、このままでは動かないので、さらに

サポートされている最新の Visual C++ 再頒布可能パッケージのダウンロード | Microsoft Docs

から「Visual C++ 再配布可能パッケージ」のx64版をダウンロードしインストールしておきます。

これらの準備が終わったら、以下のコード

realtime_detect.py

import cv2
import tensorflow as tf
from tensorflow.keras.applications.vgg16 import VGG16, preprocess_input, decode_predictions
from tensorflow.keras.preprocessing import image
import numpy as np
import os

"""
Imagenetで学習済みのVGG16を使って画像認識
"""

model = VGG16(weights='imagenet')

camera = cv2.VideoCapture(0)                # カメラCh.(ここでは0)を指定

# 撮影=ループ中にフレームを1枚ずつ取得(qキーで撮影終了)
while True:
    ret, frame = camera.read()              # フレームを取得
    dst = cv2.resize(frame, dsize=(224, 224))

    x = image.img_to_array(dst)
    x = np.expand_dims(x, axis=0)
    preds = model.predict(preprocess_input(x))
    result = decode_predictions(preds, top=1)[0]
    #print(result[0][1])
    cv2.putText(frame,
            text=result[0][1],
            org=(50, 50),
            fontFace=cv2.FONT_HERSHEY_SIMPLEX,
            fontScale=1.0,
            color=(0, 255, 0),
            thickness=2,
            lineType=cv2.LINE_4)

    cv2.imshow('camera', frame)             # フレームを画面に表示
 
    # キー操作があればwhileループを抜ける
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# 撮影用オブジェクトとウィンドウの解放
camera.release()
cv2.destroyAllWindows()

を適当なフォルダに入れます。

そしてWindows PowerShell上から

> python realtime_detect.py

を実行。

Img_1959

最初はプレ学習モデルをダウンロードするため、ちょっと時間がかかります。

Img_1960

が、しばらくすると、画像と共に認識ラベルを表示します。

窓が映ってますが、「window_shade」と出てます。あながち、間違いではない。

Img_1961

見難いですが、iPhoneは「iPod」と認識されますね。

「q」のキーを押すと、終了します。

さて、このままでは前面カメラの物体認識ですが、これを背面カメラに変えます。

上のコードの14行目を

camera = cv2.VideoCapture(1)

のように、カッコ内を「1」に変えると、背面カメラに切り替わります。

再度実行して、キャプチャー開始。

Detect

ちょっとわかりにくいですが、メインPCを移してみました。

御覧の通り、「laptop」と表示されます。

なお、認識速度はかなり遅く、2秒おきです。このため、かなりカクカクとした動き。

これがメインPCだとかなり滑らかに動くため、やはりパワー不足を感じます。

が、VGG16でこれくらいの動きならば、デモンストレーションとしてはまあまあ使えるんじゃないかな……(汗)

さらに転移学習して、独自データを使った学習モデルならば、使い道が増える……かも。

VGG16のファインチューニングコード: EeePCの軌跡

にしてもTensorFlow、kerasは、やはりちょっと無茶でしたね。本来なら、こんな安いPCでやるもんじゃありません。

が、例えば生徒にこのPCを持たせて何かの題材を集めさせて(校内の野草の写真、等)、それを分類して学習(このPCとは別ので)した後、そのモデルで実際に校内を歩いて、その題材の種類を調べる、なんて教育的な使い方ができるかと。私が学校の先生だったら、それくらいの使い道を考えますかね。

ところでこのPC、楽天市場にmouseコンピューターの公式サイトがあって、そこでも売られてます。

そっちの方のお値段はちょうど13,000円(ペン無しモデル)ですが、ペン付きのものも売られているみたいです。ご参考まで。


mouse E10-VL 着脱式キーボード 10.1型 タブレットPC Windows 10 Pro Celeron N4000 4GB メモリ 64GB ストレージ 10点マルチタッチ対応 WPS Office付き 新品 マウスコンピューター ※6/28よりスタイラスペンは付属しません ※Windows 11へ無償アップグレード対象

 

« 激安PCでWord、Excel、Zoom辺りを使ってみた | トップページ | 12,800円のGIGAスクール構想PC「mouse E10」をWindows 11にアップグレードするにはマカフィーのアンインストールが必要っぽいです »

Eee PC・ネットブック」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« 激安PCでWord、Excel、Zoom辺りを使ってみた | トップページ | 12,800円のGIGAスクール構想PC「mouse E10」をWindows 11にアップグレードするにはマカフィーのアンインストールが必要っぽいです »