Raspberry Pi・Arduino・電子工作

2024年4月28日 (日)

名古屋 大須へ行ってきました

Img_5075

このブログでは、もう何度目のタイトルですかね、これ。

つい最近も大須には行きましたし、そういえば木曜日には秋葉原にも行ったばかりです。
が、今日はゴールデンウイークということもあり、家族で行ってきました。

にしても、今日はめちゃくちゃ混んでた。。。人が多過ぎです。

Img_5060

大須と言いながら、最初に向かったのはここ。
大須を北に行った矢場町というところには名古屋パルコがあるんですが、そこと道を挟んで向かい側にこんなお店があるのを発見。
ジャンプショップです。ここが今日のお目当て。

Img_5058

・・・なんですが、そのパルコの前あたりには、御覧の通り警察がいて、道を封鎖してまして。
何事かと思ったんですが。

Img_5059

なんてことはない、歩行者天国でした。
こんなのをやってるんですね、そういえば今まで、出くわしたことがないですね。

Img_5062

てことで、道のど真ん中を歩いてやりました。
それにしても、歩道を歩く人がほとんどで、あまり意味のない歩行者天国です。

Img_5065

で、その後は大須に戻るんですが、あまりの人混みに、裏通りを使いまくりました。
一本裏にはいるだけで、この空き具合です。

Img_5067

で、レトロゲーム店に行ったり、

Img_5068

第一アメ横の

Img_5069

例のお店で定点観測写真を撮ったり、

Img_5071

その上に上がり「パウ」に寄ったり、

Img_5073

もちろん、イオシスにも寄りました。
けっこう安いですが、あまりこれと言った品が見つかりませんでしたね。

Img_5076

で、流れ流れて、大須観音に到着。
人は多いんですが、なんか人と出店がいっぱいです。

Img_5080

ああ、そうか、今日は28日なので、骨董市をやってました。
天気も良く、ゴールデンウイークでもあり、人も店もすごいことになってました。
普段は鳩が群がるこの場所ですが、鳩は大須観音の鐘のところに追いやられてました。

Img_5081

にしてもここ、信じられないほど古いものが普通に売られてるんですよね。黒電話よりもさらに前のものっぽい電話機や、明治期の書物っぽいものも売られてました。
随分と久しぶりに目にしましたが、新旧入り混じる大須らしいイベントですね、これ。

ところで、写真には写ってませんが、どういうわけかコスプレな人が多かったです。なんかイベントでもやってたんでしょうか?
この大須観音の近くにある那古野山古墳のてっぺんには、コスプレ集団がよじ登って写真撮ってました。

で、特に今日は戦利品はなく、帰ってきました。
秋葉原と比べたらこじんまりとした街・・・でもないなぁ、あの商店街の規模はきっとアキバも顔負けです。

外国人観光客が多かったですね。特に上の骨董市。
でも、もうちょっと人通りの少ないときに行きたいものです。


GOLWIS レトロ 電話機 オブジェ ヨーロッパ風 ヴィンテージ インテリア雑貨 置物 骨董品 アンティーク 古風 クラシック おしゃれ かわいい 玄関 カフェ プレゼント 贈り物 ギフト レトロ

2024年4月19日 (金)

Raspberry Pi 5用電源購入

実は、大きな勘違いをしておりました。

2月終わりごろに書いた「Raspberry Pi 5に使える電源は?: EeePCの軌跡」という記事で、Raspberry Pi 5用にCIOの45WやUGREENの65W電源が使えたという話を書きました。

Raspberry Pi 5は5V/5Aの25W以上が必要なので、そりゃ当然だよねぇ・・・

という考えが誤りだということに最近、気づきまして。

これを見れば、一目瞭然です。

Img_4983

って、見にくいですね。
これはUGREEN製65WのUSB電源に刻印された仕様ですが、USB-C1/2、C3というのがUSB-Cの供給できる電圧、電流値です。
で、よーくみると、どれも「5V/3A」となってます。
これはこのUGREEN製に限らず、どのUSB電源もこうでした。

つまりですね、最大電力数に関わらず5Vだと3Aしか出せていない、ということです。

45Wだろうが65Wだろうが、5Vでは15Wしか出せてなかったんです。

どおりで電力不足で周辺機器が使えない恐れあり、という感じのメッセージが毎度出ると思った。

でも、同じ5V/3Aの電源でも、とりあえず動いたり雷マークが出たりするのはなぜなのか?その個体差の理由は不明ですが。

Img_4982

てことで、買いました、Raspberry Pi 5用電源。
ちなみに下のやつは、Raspberry Pi 5用M.2 SSDアダプターです。

Img_4987

早速これをつないで使ってみます。

Img_4989

この通り、問題なく起動。

Img_4988

電力不足です的なメッセージは出なくなりました。

Img_4984

ご覧の通り、5.1V/5Aと書かれてます。なお、9V/3Aも出せるため、最大27Wな電源です。

Img_4985

これも連休中にRaspberry Pi 5につないで使おうかなと思って購入しました。

Img_4986

こうやって使うやつ見たいです。起動が爆速になるんでしょうかね、楽しみでなりません。
1TBのSSDが余ってるので、それを使ってもいいですが、256GBや512GBなら安く手に入るので、その辺りを専用で買ってもいいかもしれません。

Img_4981

そういえば先日、名古屋に出張があり、その途中でイオシス大須店の前を通ったので、ちょっと撮影してみました。
個人的に気になったのは、Google Pixel 4a(1.5万円)でした。
が、6aがあるので、要らないかなぁと思いスルーしてしまいました。
なお、7aが4.3万円ほどで売られてました。それも気になりましたが、敢えて買う理由がなかったのでパス。
とはいえ、もしもAndroid端末がなかったら、手を出してしまいそうな機種がゴロゴロしてましたね。イオシス、侮れません。

Geekworm USB-C 電源アダプター PD 27W Type C、Raspberry Pi 5に適用

2024年3月26日 (火)

Interface 2024年5月号はRaspberry Pi 5特集

Interface 5月号を買ってきました。

Img_4925

別冊がついてましたが、サクッと抜き取りました。ボードLinux?の特集だった模様。
が、今回買ったお目当ては、表にもデカデカと書かれてある通り「ラズベリー・パイ5」です。

中身はぜひお買い上げの上ご覧ください、なのですが、ちらりと紹介。

Img_4926

昔の怪獣大辞典みたく、Raspberry Pi 5の図解が載ってます。「ラズパイ心臓(じゅうまんねんはうごくぞ!)」的な・・・いや、うそです。

Raspberry Piの特集にしては珍しく、ローカルで動くLLM(大規模言語モデル)が載ってます。しかも、2つ。
一つはLlama2ですが、もう一つがこちら。

Img_4927

このブログでも以前記事で紹介(Raspberry Pi 5に日本語LLM(ELYZA-Japanese-Llama-2-7b-fast-Instruct)を入れてみた: EeePCの軌跡)したELYZA 7bモデルの動かし方が載せられてました。

他にも、

Img_4928

OpenCV標準のカスケード分類器を使った顔認識なんてのも載ってます。
Raspberry Pi 4との速度比較が出てます。概ね、2倍以上ですね。

Img_4929

さらにこんなものまで。もはやRaspberry Pi 5である必然性はあるのか?とも思ったのですが、でもまあきっと、処理速度が必要なんでしょうね。

そういえば、先月号のInterfaceを買いそびってしまったんですよね。
数学特集だったみたいですが、なんか使えそうな感じの内容だっただけに、ちょっと惜しまれます。

マメにチェックしなきゃダメですね。


Interface(インターフェース) 2024年 05 月号 [雑誌]

2024年3月12日 (火)

Raspberry Pi 5とPCがつながらなかった理由は「プライバシーセパレーター機能」のせいでした

先日の記事でちらっと書きましたが、Raspberry Pi 5とメインPCとがSSHなどで接続できなくなってました。その理由が、ようやく判明。
解決策と共に、記載します。

結論から言うと、「プライバシーセパレーター」「AP分離機能」などと呼ばれている機能が、新しい無線LANルーターで有効になってました。

ブリッジモード初期値一覧|Aterm®WX3000HP2 ユーザーズマニュアル

上のサイトに、この間買った「Aterm PA-WX3000HP2」(と思われるもの)のオンライン上のマニュアルに書かれてました。
ちょっとわかりにくいですが、この一覧の中にある「リモートワークWi-Fi(ネットワーク分離機能)」という項目がそれにあたります。

で、さらにややこしいんですが、正確に言うと、

「プライマリ側の2.4GHz、5GHzはリモートワークWi-Fiがオフ、セカンダリ側の2.4GHz、5GHzはリモートワークWi-Fiはオン」

となってました。

これは一体、どういうことか?

今回購入したPA-WX3000HP2には、アンテナが2本×モード2つ(2.4GHz+5GHz)があり、それぞれSSIDが分かれてます。

Img_4840

モザイクだらけで申し訳ありませんが、シールには書くSSIDと接続用の暗号化キーが記入されてます。

このとき、プライマリSSIDの方(の5GHz、または2.4GHz)につなげばプライマリ側に、セカンダリSSIDにつなげばセカンダリ側、ということになります。

で、実は我が家のWi-Fi機器をつなぐ際に、

「自分用のPC、スマホ等はセカンダリ側、家族のはプライマリ側」

にしてたんです。

深い意味はなく、単に「家族と分けた方が混みあわず速度を維持できるのかなぁ」なんて程度で分けたんですが。

これが、致命傷でした。

プライマリ側同士の機器間は、先のプライバシーセパレーター機能がオフになっており、互いに通信士あうことができます。
ところがセカンダリ側同士の機器間は、プライバシーセパレーター機能がオンにされていて、つながらないわけです。
ゆえに、セカンダリ側につないでいたメインPCとRaspberry Pi 5は、互いに通信を確立することができず、接続不能だったわけです。

なぜ、こんなややこしい機能があるのか?と思ったのですが、公衆Wi-Fiでは接続している機器同士がつながってしまったら大変なことになるので、そんな需要から作られたのがこのプライバシーセパレーター機能というもののようです。

家庭用でも、例えば来客者にWi-Fiを割り振る必要が出た場合はこのプライバシーセパレーター機能が働く側のネットワークにつないでしまえば、例えば自宅にあるNASなどに接続されることがなくなり、セキュリティ対策となります。

が、それならそうと、簡易マニュアルにも書いておけよ、とは思いました。

ということで、解決策としては単純に「両方ともプライマリ側につないだ」だけです。

20240311-095359

VNCを設定してデスクトップを表示できるようにしたんですが、御覧の通り快適にPC⇔Raspberry Pi間で接続できます。

言われてみれば、Quest3のVirtual Desktopもつながらなくなってました。そちらもついでに修正。

むしろ家族のスマホはローカル接続することがないので、あちらをセカンダリ側にしておけばよかった、というわけです。

こんな落とし穴があったんですね。

「Wi-Fiルーターを買い換えたらRaspberry Piに接続できなくなったぞ!」

という方々にはぜひ、そのルーターのプライバシーセパレーター機能がオンになっていないかをチェックすることをお勧めいたします。

なお、この「プライバシーセパレーター機能」にもいろんな名前があって、統一されてないみたいなので、ググる時にはちょっと苦労します。なんとなくですが、プライバシーセパレーター機能と呼んでいるところが多い模様。ご参考まで。


NEC Aterm 無線LAN WiFi ルーター Wi-Fi6(11ax)対応 2ストリーム PA-WX3000HP

2024年3月10日 (日)

Raspberry Pi 5に日本語LLM(ELYZA-Japanese-Llama-2-7b-fast-Instruct)を入れてみた

最近はやりの「生成AI」をRaspberry Pi 5で動かしたくなり、入れてみました。
(今回は画像生成AIではなく、いわゆるChatGPTのような会話型のやつです)

しかも「日本語じゃなきゃヤダ」ということで、以下のサイトを参考に入れてみました。

Raspberry Pi 5の基本セットアップとLLM動かしてみた - hacomono TECH BLOG

が、ここを見ただけでは分かりづらかったので、手順を書きます。

最初に、venvってやつで大規模言語モデル用の環境を作っておきます。
どうやらpython 3.11からは、venvで作った環境下でないとpipが使えなくなってます。
前回の記事(Raspberry Pi 5 8GBが来たので画像生成AI「Stable Diffusion」と物体検出「YOLOX」を動かしてみた: EeePCの軌跡)では無理やりインストールしましたが、これが一番楽です。

python -m venv llm

続いて、以下のコマンドを実行。

/home/(ラズパイ上のユーザー名)/llm/pip install llama-cpp-python

これで、必要な環境がインストールできちゃいます。

pipのところを絶対パスで入力してるのは、venvで作った環境をsourceコマンドを使って切り替えるのが面倒なので、直接呼び出してるためです。

続いて、以下のサイトへ行き、モデルをダウンロードします。

mmnga/ELYZA-japanese-Llama-2-7b-fast-instruct-gguf · Hugging Face 

このサイトの「Files and versions」タブをクリック。

Raspi5llm01

こんな一覧が出てきます。
これの一番最初の方にある「Upload ELYZA-Japanese-Llama-2-7b-instruct-q2_K.gguf」てやつの行にある赤丸のところをクリックします。
(PCでも可能ですが、Raspberry Pi 5上でやると直接拾えます)
これは以前(ChatGPT 3.5並みの日本語能力を持つとされるLLM「ELYZA-japanese-Llama-2-13b-instruct」を使ってみた: EeePCの軌跡)でも使ったELYZA Japanese Llama2の70億パラメータ版の量子化モデルで、メモリー使用量が少なく、Raspberry Pi 5でも辛うじて動かせます。

つづいて、「elyza.py」というコードを作成します。

私の場合はvi使いなので、

vi elyza.py

ですが、viをnanoに変えてもらってもいいです。
コードの中身は以下。

import sys
from llama_cpp import Llama
llm = Llama(model_path="ELYZA-japanese-Llama-2-7b-fast-instruct-q2_K.gguf", verbose=False)
output = llm("<user>\n" + sys.argv[1] + "\n<assistant>\n", max_tokens=128)
print(output['choices'][0]["text"] + "...")

これを、先のダウンロードしたモデル(ELYZA-japanese-Llama-2-7b-fast-instruct-q2_K.gguf)と同じフォルダに置きます。

この状態で、

/home/(ラズパイ上のユーザー名)/llm/python elyza.py "名古屋の名物は何ですか?"

と実行します。
(なお” ”内は適当な質問を日本語で入れます)

ところで、Raspberry Piでの日本語入力設定は、以下が参考になります。

Raspberry Piに日本語で入力できる設定方法(fcitx-mozc) | ラズパイダ

で、待つこと30〜40秒ほど、

Img_4832

上のような答えが返ってきました。

うん、まあまあの答え……でもないな。名古屋めしに味噌汁?とんかつ?ひよこっこ?最後のはなんじゃ?

でも、文章はかなり自然です。さすがはElyzaの日本語LLM。

ということで、Raspberry Pi 5 8GB上で日本語LLMが動いてくれたのですが。

使い道がないですよね。遅いのはともかく、いちいちコマンドで打つのは面倒。

チャット風インターフェースにする方法もリンク先にありましたが、あれはうちではうまく動きませんでした。

まあ、Raspberry Piと会話したいという人以外は、あまりやるメリットなさそうです。

ところで、最近無線LANルーターを変えた影響か、Raspberry PiにSSHで接続できなくなりました。原因は不明ですが、無線LANルーター変える前はつながってたので、おそらくはそれが影響している可能性大です。

おかげで、Raspberry Pi↔︎PCのファイルのやり取りがしづらいので、ちょっと不便です。そのうち、直し方を探さないと。


面倒なことはChatGPTにやらせよう (KS情報科学専門書)

2024年2月24日 (土)

Raspberry Pi 5に使える電源は?

本当はRaspberry Pi 5用純正電源が一番いいんでしょうけど、品薄で手に入らないようなので、自宅にあるUSB-C電源を使っております。
気にせず使ってましたが、そういえばどの電源でもOKなのか?

と疑問に思ったので、うちにあるいろいろな電源で試してみました。

結論から言います。

Img_4818

使えたのは、この二つのみ。UGREEN製65Wと、CIO製45Wの2口電源です。
ケーブルに至っては、我が家最強のUSB-Cケーブル(現状最強規格のUSB-Cケーブルを買ってみた: EeePCの軌跡)のみ利用可能、という結果でした。

Img_4819

ちなみに、Anker製のこの窒化ガリウムではない白の65W電源はダメでした。

なお、30W以上の電源ならば起動はしてくれます。起動はできるんですが、

Img_4816

ダメな奴だと、負荷をかけた時にこういう警告がでるんですよね。Bluetooth切ったりしましたが、ダメです、変わりません。

Img_4814

このCIO製のバッテリーは公称30Wですが、こいつに至っては全力負荷時に雷マークを出した直後にすぐ落ちました。
他の電源は、辛うじて動くものの、この雷マークが出ている時は少しパフォーマンスを落としているようです。

Img_4815

高負荷をかけるために使ったのは、先日の記事(Raspberry Pi 5 8GBが来たので画像生成AI「Stable Diffusion」と物体検出「YOLOX」を動かしてみた: EeePCの軌跡)でも使ったStable Diffusion 1.4です。
こいつを512×512の解像度、50ステップを流せるかというのをやりました。
1ステップあたり、大体80~90秒かかるので、1時間10分ほどかかります。

ところが、Anker製65Wの場合は、雷マークを出しながらこの1ステップにかかる時間が110秒程度になってたんですよね。だから、パフォーマンスを落としてるんじゃないかと思った次第です。

また、Anker製65W対応のUSB-Cケーブルでは、どの電源を使っても雷マークが出現します。

このケーブルと、UGREENの65W、CIOの45Wのみの組み合わせで、Raspberry Pi 5は運用可能です。

なんか、ことごとくAnker製がダメでしたね。ケーブル、電源共にアウトです。相性が悪いんでしょうか?
もしかすると、窒化ガリウム製でないとダメとか、そういうのもあるかもしれません。

ちょっと残念なのは、バッテリー駆動ができないということでしょうか。
車載用に使えないかと期待してたんですが、そういう用途で使うには、より強力なバッテリーが必要みたいです。

というわけでUSB-C電源をいろいろと試しましたが、確実なのはやっぱり、それ用の電源を買うのが一番よさそうです。

さて、以下余談ですが、せっかくRaspberry Pi 5が1時間以上もかけて画像を作ってくれたので、それも載せておきます。

Image1

Image2

2枚目がちょっとヤバい感じですが、まあまあの良い出来ではないかと。
Stable Diffusion 1.4ですし、これくらいは、ね。
もっとも、「エベレスト山頂を目指すハイエース」というプロンプト通りとはいかない結果ばかりなのは残念でしたが。


Geekworm USB-C 電源アダプター PD 27W Type C、Raspberry Pi 5に適用

2024年2月16日 (金)

Raspberry Pi 5 8GBが来たので画像生成AI「Stable Diffusion」と物体検出「YOLOX」を動かしてみた

ついに、Raspberry Pi 5が発売になりました。

Raspberry Pi Shop by KSY

で、2月13日の夜にKSYのサイトにつないだら、なんということでしょう

まだ在庫があるではありませんか。
ポチッてしまったのは、言うまでもありません。

で、15日に届きました。

Pxl_20240215_054109856

8GBのモデルで、KSYでは1.4万円ほど。
ついでに、Amazonでファン付きヒートシンクも頼んでおきました。
4ですらヒートシンクなしで動作不可能なのに、5が大丈夫なわけがない。

Pxl_20240215_054205142

中身を開封し、

Pxl_20240215_054349441

ヒートシンクを取り付けて、このピンみたいなやつを押し込みます。

Pxl_20240215_054354398mp

少し悩んだのは、このファンのコネクターってどこにあるの?
USB端子の根元辺りにありました。

Pxl_20240215_054432659

あとは、以下のサイトからインストーラーを入手し、手ごろなSDカードにOSをインストールします。

Raspberry Pi OS – Raspberry Pi

なお、今回は256GBのSDカードを使ったのですが、ちゃんと入りました。

Pxl_20240215_055409686

このRaspberry Pi 5ですが、USB-Cの電源は5V/5A以上、つまり25W以上が必要とのこと。
専用電源の仕様がそれなんですが、我が家のは65Wあるので大丈夫でした。

Pxl_20240215_065553601

さて、あっさりと起動しました。
まあ、ここまでは順調。
ですが、ここからが大変でした。

表題にもある通り、何を思ったのか画像生成AI「Stable Diffusion」を使ってみたんですが、思わぬトラップに引っかかっておりました。
参考にしたのは、以下のサイト。

raspberry pi 4でStable Diffusionを動かしてみる(画像自動生成&更新フォトフレームの作成)その1 #Python - Qiita

以前、Raspberry Pi 4で同じことを遣ろうとしたんですが、4GBモデルではメモリーが足らず不可能でした。
で、せっかく8GBのモデルなので、そのリベンジを遣ろうと思った次第です。
で、ここにある通り動かせば、行けるはず・・・と思いきや、

pipコマンドが効かない!!

というトラップに引っかかりました。
えっ、なんで?と思ったんですが、「PEP668」とかいうやつのおかげで、pipコマンドが通らないことが判明。

Pythonでpipが使えないなんて、どうやってライブラリを入れりゃあいいんだ!

Raspberry Pi OSでもbookwormでpipインストールエラー「externally-managed-environment」 | ラズパイダ

上のサイトを見て試行錯誤しましたが、結局、対処法は以下の2つでした。

(1) sudo apt install python3-(ライブラリ名) 

なんか、pip使わずにaptを使えってことみたいです。
が、これでインストールできないライブラリの場合は、

(2) sudo -H pip install --break-system-packages (ライブラリ名)

とすればインストールできました。
つまり、(1)、(2)の順に試せってことです。

なお「.pip」というディレクトリを作って、その中にpip.confを作り・・・という対処法は、なぜか上手くいきませんでした。

てことで、今回のインストール手順を書いておきます。

【環境設定】

etcにあるdphys-swapfileを編集します。

sudo vi /etc/dphys-swapfile

(viのところはnanoでも可)

中ほどに「CONF_SWAPSIZE=100」というのがあるので、この100を4096に変えて保存します。

【ライブラリ・インストール】

以下の順番に実行。

sudo apt-get update

sudo -H pip install --break-system-packages setuptool==58.3.0

sudo apt install python3-Cython

sudo apt install python3-torch

sudo -H pip install --break-system-packages transformers

sudo -H pip install --break-system-packages diffusers

sudo -H pip install --break-system-packages accelerate

sudo -H pip install --break-system-packages scipy

sudo -H pip install --break-system-packages safetensors

とりあえず、これで動くようになりました。
基本的には、上の(1)、(2)の順に試してます。

【プログラム実行】

さて、これでやっと実行環境が整ったので、早速動かしてみます。
以下のようなコード「stabledf.py」を準備します。


from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler

model_id = "CompVis/stable-diffusion-v1-4"
scheduler = EulerDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")

pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, low_cpu_mem_usage=True)
pipe = pipe.to("cpu")

prompt = "Hiace aiming for the summit of Mount Everest, realistic photo"
steps = 50

image = pipe(prompt=prompt, num_inference_steps=steps, height=256, width=256).images[0]
image.save("image.png")

これを実行。

python stabledf.py

Pxl_20240215_114714518

最初だけ、ダウンロードに時間がかかります。
画像サイズやステップ数によりけりですが、256×256の画像で50ステップならば、12分程度で完了しました。

が、ここで一つ問題が。
なぜか、上のコマンドライン上で実行すると、真っ黒な画面しか出力されません。

Pxl_20240215_221511971
で、上のようにファイルマネージャーからコードをダブルクリックして出てくる「Geany」という実行環境上から実行すると、画像が出力されました。
理由はよく分かっておりません。

Pxl_20240215_114329720

なお、実行中のCPU使用率は98%、

Pxl_20240215_114339716

CPU温度は65度まで上昇。取り付けたファンが、大活躍です。
ヒートシンクがなければ、即死でしたね。

Image

で、生成された画像がこちら。
「エベレスト山頂を目指すハイエース」と書いたつもりですが、ハイエースっぽい車の姿がないですね。
まあ、なかなか一発では上手くいかないものです。

と、頑張って動かしてはみたんですが。

残念なことに、Raspberry Pi 5としての性能向上を実感できるものではなかったですね。メモリーが8GBになったメリットしか感じてません。
生成AIが動かせるということ自体が素晴らしいことですし、おそらくはRaspberry Pi 4と比べたら速いんでしょうが、元々、我が家のRaspberry Pi 4では動かなかったものを動かしたため、比較ができません。

てことで、比較できるものを動かしてみました。

PINTO_model_zoo/426_YOLOX-Body-Head-Hand at main · PINTO0309/PINTO_model_zoo · GitHub 

こちらのPINTO様のYOLOXによる身体、頭、手を検出するやつを動かしてみました。

Pxl_20240215_220608771

先のライブラリに加えて、OpenCVとonnxruntimeが必要です。まずは、いかを実行。

sudo apt install python3-opencv

sudo -H pip install --break-system-packages onnxruntime

その後、上のGithubから「demo_yolox_onnx.py」を入手し、かつdownload_n.shでモデルを入手しておき、

python demo_yolox_onnx.py -m yolox_n_body_head_hand_post_0461_0.4428_1x3x256x320.onnx

のようにモデルを指定して実行します。
(使用するモデルは、予めdemo_yolox_onnx.pyと同じ階層に置きます)

解像度が256×320のnanoモデルを動かしました。推論速度は30~40ms程度と、結構な速度です。
Raspberry Pi 4では70msほどでしたので、確かに倍は速くなってる。
が、描画速度が遅いのか、推論時間のわりにカクカクしてます。そこは要調査。

ということで、買って早々にRaspberry Pi 5で遊んでみました。
M.2 SSDが使えるなどのメリットをまだ活かせていないので、こちらもいずれ。


Raspberry Pi 5 8gb 技適マーク付き ラズベリーパイ5 8gb Development Board BCM2712 Arm Cortex-A76 64-bit quad-core 2.4GHz RTC WiFi/Bluetooth 5.0 SDR104対応 ラズベリーパイ5 (8GB RAM)コンピューター 技適対応品 (raspberry Pi 5 8GB)

2023年12月 8日 (金)

日経Linux最後の号を購入

今月は、よく読んでいた雑誌が3誌、休刊を迎えます。

Img_4353_20231208171501

で、今週はこの2誌が最終号を出してました。
日経Linuxと、まんがタウンです。

どちらも20年以上、紙雑誌として売られ続けた雑誌ですが、ついに最後の時を迎えてしまいました。

Img_4354_20231208171701

ちなみに、日経Linuxの方は別冊として、創刊からの全254冊の目次を掲載してました。

Img_4355_20231208171801

まあなんとなくぱらぱらとみていたんですが、そういえば日経Linuxが出ていた25年の間に、個人的にはLinuxにとっての大事件が大きく二つ、ありましたね。

Img_4357_20231208171801

一つは、このブログの表題にもなっている「EeePC」。
2008年3月号では、当時話題だったEeePC 4G-Xの国内発売のニュースが取り上げられてました。
日本ではWindows版しか発売されなかったEeePCですが、実は元々はLinuxを搭載し、安価に作られたPCだったんですよね。
それに危機感を感じたMicrosoftが、当時としては激重なOSだったVistaへ移行しつつある当時の状況にあって、この安価なPC向けにWindows XPを復活させたんですよね。

後にこのタイプのPCを「ネットブック」と呼ぶようになります。

このネットブック自体は、今はもう残っておりませんけど、その後のタブレット登場や、そしてスマホの台頭につながる一つの歴史的な流れを生んだような気がしておりますね。お気軽に手元でネットを楽しむ環境の提供、そういう意味ではネットブックもスマホも同じです。
で、このあたりから日本メーカーの没落が始まりました。

Img_4356

さて、もう一つの事件は、第3次AIブームです。ここ日本では、2016年暮れごろから始まったように思います。
日経Linuxを見ると、2017年のこの号から「人工知能」というキーワードが登場していたようです。

他にもラズパイが登場し、一世を風靡しましたね。今もラズパイ自体は活用が続いてます。でもまあ、あれはネットブックと根っこが同じで、いわゆる「100ドルPC」構想から派生した安価なコンピューターとして出てきましたよね。

そんななか、Linux単体での訴求点がなくなってきたというのか、日経ソフトウェアに統合する形で本誌は消えてしまうときを迎えてしまいました。

ちょくちょく購入しておりましたが、残念ですね。

以前は最新版のUbuntuが出るたびに、CD-ROMを持っておくために買ってました。でも最近は円盤付きがほとんどなくなりました。そもそも読み込む光学ドライブを持ってる人が減りましたし、ネットで手に入れた方が早いですし。

ということでこの日経Linuxの最終号は、永久保存版ですかねぇ。

Img_4347

ちなみにもう一つのまんがタウンも、23年間続いての消滅です。
「新婚のいろはさん」を読むために買ったのが始まりですが、気づいたらいくつかの連載を読んでました。
この休刊に合わせて、いくつかの連載が止まってしまいました。残りもWebアクションなどに移行してます。

紙出版誌にとっては、衰退の時代ですね。言われてみれば紙の雑誌を買う量が減りました。それでも毎月、なんだかんだと2、3冊は買ってますけどね。

なお、今月終わりには「DOS/V PowerReport」誌が休刊です。買わなきゃ。

日経Linux(リナックス) 2024年1月号 [雑誌]

2023年11月30日 (木)

例の人検出器をRaspberry Pi 4で動かしてみた

前回の記事(人の検出に特化したPINTOさんの物体検出がなかなかすごいので動かしてみた: EeePCの軌跡)で紹介した検出器がCPUでも軽々と動くので、もしかしたらRaspberry Pi 4でもわりかし快適に動いてくれるんじゃないか?と思ったので、早速試してみました。

まずはRaspberry Pi 4ですが、既存のものを使います。
ですが、入っていたPythonが3.7と古かったので、これを以下の記事を参考に、3.10に上げておきました。

RaspberryPi4BにPython3.10をインストールした #Python3 - Qiita

続いて、

pip3 install numpy opencv-python opencv-contrib-python onnxruntime

とコマンドを打ち込んで、必要なライブラリを一気に入れます。

その状態で、前回記事のコード(demo_goldyolo_onnx.py)やモデル(gold_yolo_n_body_head_hand_post_0461_0.4428_1x3x480x640.onnx)などはそのままRaspberry Piに持ってきました。

で、以下のコマンド、

python demo_goldyolo_onnx.py

を入れて実行。

Img_4336_20231130210701

そうそう、Raspberry Pi 4は例のモバイルモニターにつなぎました。
で、実行するとこれがめちゃくちゃ遅い。推論速度は表示上、1枚当たりだいたい13000ms、つまり13秒です。

見事なくらいカクカクで、確かに10秒以上遅れて表示されます。
いくらRaspberry Piだからといって、ちょっと遅すぎじゃね?
と思ったので、コードを少し見直しました。

まず、303~309行目、

          cv2.rectangle(
                debug_image,
                (box[0], box[1]),
                (box[2], box[3]),
                (255,255,255),
                2,
            )

この部分を、すべてコメントアウトします。

さらに、349行目、

        video_writer.write(debug_image)

もコメントアウト。

これで”output.mp4”が出力されなくなりますが、どのみち遅すぎてどうしようもない動画しか出てこないため、切った方がマシです。

(12/3 追記)

もう一か所、変えてました。235行目で、モデルを低解像度のものに変えてます。

        default='gold_yolo_n_body_head_hand_post_0461_0.4428_1x3x192x320.onnx',
        #default='gold_yolo_n_body_head_hand_post_0461_0.4428_1x3x480x640.onnx',

もちろん、同じフォルダに「gold_yolo_n_body_head_hand_post_0461_0.4428_1x3x192x320.onnx」を入れるのを忘れないよう。

たったこれだけの工夫で、13000 → 260msと大幅に速くなりました。えっ、こんなに変わるものなの?

Img_4340

ご覧の通り、Raspberry Pi 4でもまあまあの速度で推論されます。これなら、人が立ち入ったかどうか程度の用途ならば使えそうです。
欲を言えば、倍速くなったと言われるRaspberry Pi 5で試してみたいですよね。出たら、すぐに買います。

てことで、Raspberry Pi 4でも用途を限れば使えそうな感じです。

(追記 12/3)

会社のRaspberry Pi 3B+でも試してみました。ほとんど推論速度は変わりませんでした。ということは、CPU以外のところで律速されてる?可能性ありです。


ラズベリーパイ 4 コンピューターモデルB 8GB Raspberry Pi 4 ラズパイ 4 TELEC認定取得済み (Raspberry Pi 4 8GB)

2023年10月28日 (土)

人生初、幕張メッセに行ってきた

ビッグサイトは何度かありますが、幕張メッセは初めてです。

20231026_213322129_ios

もちろん、お供にはこのSurface Go 3 LTEモデルも連れて行きました。これは新幹線の待ち合わせ室で使ってるところ。問題なくLTEも動作してくれました。
が、残念なことに、こいつの出番はここだけ。今回の出張先では全然使いどころがありませんでしたね。

20231026_215417093_ios

朝の名古屋駅。まさに天気晴朗、前回の6月の東京出張時と比べると、全然晴れてます。

20231026_225124311_ios

おがけで富士山もこの通り、きれいに見えました。写真だと、雄大さが伝わりませんね。

20231027_003755393_ios

てことで、ずずっと端折っていきなり幕張メッセ前です。
東京駅から京葉線に乗り換え、海浜幕張駅までやってきました。
ここからどうやって幕張メッセへ向かうのか?と考えるまでもなく、人の道ができてました。

20231027_003900582_ios

で、幕張メッセに到着。なんていうか、雰囲気的にはインテックス大阪っぽいですね。

20231027_004305212_ios

今回のお目当ては、これ。Japan IT Week 秋とNexTech Week 2023。
この中の、AI関連の情報収集が中心です。

20231027_010102532_ios

会場内は基本、撮影禁止なので、全景だけ。
こんな感じの会場ですが、これがあと5つある感じです。

今回、特に多かったのは生成AI系のサービス。ChatGPTが盛り上がっている昨今の情勢を受けて、それを使ったサービスがいろいろとありました。
さすがにChatGPTをそのまま使うというところは少なく、会社のマニュアルを食わせて賢いチャットボットとして使う等、そういう感じのところが多かったです。もちろん、その食わせたデータを抜かれちゃまずいので、MS Azureのデータ2次利用禁止を謳うサービスをバックに使うところがほとんど。
中には、ChatGPTの使い方そのものの研修だったり、活用提案をしてくれるところも。

他には「量子コンピューティング」ですかね。アニーリング式だと思いますが、量子コンピューターのサービスを稼働しつつあるところとか、GPUやベクトルプロセッサを使った疑似量子コンピューティングで組み合わせ最適問題を高速に解くサービスなどもありました。

そうそう、AMDのブースも見つけたので思わず立ち寄ったのですが、そこにEPYCのサンプルが置いてありましたね。コア数はなんと128コア。もちろんHPCサーバーようですが、化け物です。1CPUで128コアとか・・・

他にもKEYENCEのブースがあり、てっきりエッジ機器でもあるのかと思いきや、なんとRPAを売り込んでました。それも、かなり直感的に操作できるRPAで、これはちょっと驚きでしたね。

20231027_023201309_ios

そんな煌びやかな展示会の中で、個人的に一番惹かれたのはこれ。KSYのブースにあった、Raspberry Pi 5の実機です。
許可をもらって、撮影させてもらいました。いやあ、話が弾む弾む。
3DCGの描画を4と並べてデモさせてましたけど、やっぱり5は速い。
速いだけでなく、ラズパイ 5からはM.2 SSDを取り付け可能となるんですよね。産業用途として使う上でネックだったストレージの問題を解消しているようです。

ただ、KSYの担当の方の話だと、今年中の発売は無理な模様。早くても来年初頭、へたをすると年度が開けて以降になりそうとのこと。本体の認証以外にも課題があるみたいです。うーん、残念。

20231027_043011991_ios

で、広い会場で必要と思われるところから情報を引っ張り出した後は、秋葉原へ向かうことに。
これは途中の舞浜駅の辺りの写真。ディズニーランドとオフィシャルホテルが見えますが、ここはスルー。

20231027_051024809_ios

ユーはなにしにアキバへ?
はい、実は組み込み系コンピューターとモーターを調べてきてほしいという社内の人の声にこたえてやってきました。
確かに、そういうのはアキバに多い。

20231027_051447627_ios

まあ、そういうわけで、いつものように千石電商さんと、

20231027_051600196_ios

秋月電子通商さんに立ち寄りました。
が、ラズパイ系は、5はもちろんありませんけど、4も3も、Zeroすらもなくほぼ売り切れ。唯一、Raspberry Pi 400(キーボード一体型のやつ)だけが在庫でありました。なお、秋月電子の2階にはモーター類が売られていたので、そちらの情報のみを持ち帰りです。

20231027_053155396_ios

もちろん、それだけで帰るはずもはなく、いつもの巡回コースも忘れずに立ち寄ります。
はい、こちらはBEEPですね。当然、買い物もしてきました。

20231027_055046339_ios

そういえばいつもは立ち寄らないあきばお~にも寄ってきました。
SDカードを見ようかと思ったんですが・・・ちょっとここでは妙なものを買ってきました。それはまた後ほど。

他にも、まんだらけやドスパラ、PCコンフルなど大須でもおなじみのお店に寄ってきました。

20231027_060112640_ios
が、その中で駿河屋本店の1階にジャンクが売られているところで、なぜか「そろばん」がたくさん売られていたのは謎。

20231027_082454801_ios

さて、そんなこんなで東京駅に戻り、夕食をどうしようかとうろうろしたんですが、散々探し回った挙句、結局前回と同じこのハンバーガー屋にしました。
他は微妙なんですよねぇ。高いというか、なんというか。
この3rd Buegerはマックあたりと比べるとちょっと高めですが、気軽に食べられて美味しいです。店内もすいてるし。

20231027_082939108_ios

ところで、朝は2分、帰りの新幹線は5分遅れが生じてました。前回、大阪に行った時もそうですが、車両点検での遅れが多いみたいです。
(帰りの遅れの原因は強風のために速度を落としていた区間があったからだそうですが)
まあ、2分5分で目くじらを立てるほどのことはありませんが、これくらいの遅れでもいちいち案内するところが日本らしいところです。

20231027_090442155_ios

そういえばですが、のぞみの車内販売が10月いっぱいでなくなるんですよね。新幹線積み込み前の車内販売用ワゴンを目撃することができました。この独特のワゴンも、これで見納めです。

20231027_084656191_ios

ところで、iPhone 12が残り29%になりました。てことで、例のバッテリーで充電。20分弱充電したところで、iPhone自体は60%に。

20231027_090721372_ios

その時のバッテリーの残量がこちら。見にくいですが、89%です。つまりiPhone 30%分が、こいつの11%分ということに。

とまあ、そんなこともしつつそこから2時間ほどかけて自宅に帰っていきました。

20231027_120808876_ios

戦利品(?)の一覧です。
右上のパンフレット以外ですが、まず左上のはBEEPで買った「ハドソン伝説」という本。
その隣の「萌え萌え」の文字が見えるものは、会社用のお土産。その隣の「あきばな~な」と下の黄色い箱は家用のお土産。この黄色の箱を挟んで左右にあるのが子供用のお土産で、特に右側のはあきばお~で買った「論破くん」という、ひろゆきの声で「それってあなたの感想ですよね」などとしゃべる機械です。次男が大喜びでしたが、これちゃんと本人の許可、取ってるのかな?

20231027_121200194_ios

そんな怪しげな品は置いておき、まともな?パンフレット系は御覧の通り。ChatGPT関連、エッジ端末、データ分析系がほとんどです。
ちなみに左下の濃い赤色のはKSYのRaspberry Pi 5のパンフ類、その上がAMDのカタログ。表に映っているのは、藤井聡太棋士。あの方、AMDのかんばんとなりつつありますよね。

20231027_123754085_ios

ところで、BEEPで買ってきたハドソン伝説ですが、当時のハドソン社員(社長もいる)からのファミコン時代のハドソンソフトの作成秘話を集めたもので、かなりマニアックな同人誌です。
例えば、ブラウン管の特性を使って縦方向の解像度を見かけ上げてみせるテクニック?などが書かれておりました。うーん、マニアック過ぎる。

Img_4252

AMDからもらったノベルティで、こいつだけは役立ちそうな予感。
これ、下がキーボードのブラシ、上がディスプレイ用のクリーナーになっています。結構汚れやすいので、重宝しそうです。

ちなみに、この日歩いた歩数は2万1千歩超。いや、疲れました。


海洋堂 千葉フィギュアみやげ 幕張メッセ 【単品】

より以前の記事一覧