目次
- ラズパイ4にリモートデスクトップ接続したい(できない時)
- ラズパイ+USBカメラ を使えるようにしたい
- 画像処理ライブラリ OpenCVをインストール
- バージョンを調べる
- 画像をイメージビューアで表示するコマンド
ラズパイ4にリモートデスクトップ接続したい(できないとき)
ラズパイ4で xrdp 接続できない時は、同じ「pi」ユーザーが2個同時にログインしないようにする。ラズパイに「xrdp」がインストールされている前提です。
1.ユーザー「pi」を2つのグループ「video, render」から削除する
$ sudo gpasswd -d pi video
$ sudo gpasswd -d pi render
2.デスクトップ自動ログインを解除する
$ sudo raspi-config
[1. System Options] → [B5 Boot/Auto Login] → [B3 Desktop]→[Finish]
3.再起動する
これで、Windows PC からラズパイ4にリモートデスクトップ接続できるようになる
ラズパイ+USBカメラ を使えるようにしたい
ラズパイがUSBデバイスを認識しているか確認するコマンド。バス1のデバイス3がUSBカメラ「Full HD 1080P webcam」です。
USBカメラを繋げた時と外した時で比べると認識されていることを判断できます。
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0bda:58b0 Realtek Semiconductor Corp. FULL HD 1080P Webcam
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
USBカメラ画像を表示するアプリ[guvcview]をインストール
$ sudo apt-get install guvcview
デスクトップメニューから[サウンドとビデオ]で[guvcview]を起動できます
[guvcview]がエラーメッセージ「Guvcview error no video device found」と表示してアプリが起動しない。
ラズパイ4のリモートデスクトップ接続(xrdp)するとき、ユーザーグループを「video, render」から外しているからかも。
[guvcview]を起動できる構成:ラズパイ4 + RaspberryPiOS (Legacy) + リモートデスクトップ接続 + USBカメラ
[guvcview]を起動できない構成:ラズパイ4 + RaspberryPiOS (bullseye) + リモートデスクトップ接続 + USBカメラ
USBカメラのデバイスファイル名を確認するコマンド
$ v4l2-ctl --list-devices
FULL HD 1080P Webcam: FULL HD 1 (usb-0000:01:00.0-1.1):
/dev/video0
/dev/video1
/dev/media4
USBカメラは /dev/video0, video1, media4 として認識されている様子
画像処理ライブラリ OpenCVをインストール
まっさらなRaspberryPiOSをインストールしたラズパイ4でOpenCVをインストールしました。2分かからなかったです。
$ sudo pip3 install opencv-python
Collecting opencv-python
Downloading opencv_python-4.8.1.78-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (41.0 MB)
|????????????????????????????????| 41.0 MB 5.2 kB/s
Requirement already satisfied: numpy>=1.19.3 in /usr/lib/python3/dist-packages (from opencv-python) (1.19.5)
Installing collected packages: opencv-python
Successfully installed opencv-python-4.8.1.78
そしてpython コードで動作確認をします。何でもいいので画像ファイル[sample.jpg]等ファイル名を一致させてpythonコードと同じディレクトリに保存してください。
# !/usr/bin/env python
# -- coding: utf-8 --
import cv2
img = cv2.imread("sample.jpg")
cv2.imshow("try", img)
cv2.waitKey()
ラズパイのデスクトップ画面でCV2による画像が表示されました。
バージョンを調べる
ラズパイOSのバージョンを調べるには
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
- Raspbian, Wheezy, Debian 7, 2013年
- Raspbian, Jessie, Debian 8, 2015年
- Raspbian, Stretch, Debian 9, 2017年
- Raspberry Pi ( Legacy ), Buster, Debian 10, 2019年(ラズパイ専用カメラ利用可)
- Raspberry Pi, Bullseye, Debian 11, 2021年(ラズパイ専用カメラ利用できない)
- 予定 Bookworm, 2023年
画像をイメージビューアで表示するコマンド
ラズパイのデスクトップで画像を表示します。
$ gpicview pic.jpg