目次
- ラズパイ4にリモートデスクトップ接続したい(できない時)
- ラズパイ+USBカメラ を使えるようにしたい
- 画像処理ライブラリ OpenCVをインストール
- バージョンを調べる
- 画像をイメージビューアで表示するコマンド
- sftpコマンドの使い方(Raspberry Pi ⇄ PC のファイル転送)
- screenコマンドの使い方(Raspberry Pi でプログラムを動かし続ける)

ラズパイ4にリモートデスクトップ接続したい(できないとき)
ラズパイ4で xrdp 接続できない時は、同じ「pi」ユーザーが2個同時にログインしないようにする。ラズパイに「xrdp」がインストールされている前提です。
1.ユーザー「pi」を2つのグループ「video, render」から削除する
$ sudo gpasswd -d pi video
$ sudo gpasswd -d pi render2.デスクトップ自動ログインを解除する
$ 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.jpgsftp コマンドの使い方(Raspberry Pi ⇄ PC のファイル転送)
sftp は SSH を使った安全なファイル転送コマンド。
使い方は FTP とほぼ同じだけど、安全性が高い。
🔹 1. Raspberry Pi に接続する
PC(Mac / Linux / Windows PowerShell)から:
sftp pi@192.168.1.10※ IP アドレスはあなたの Raspberry Pi のものに置き換える
※ 初回はパスワードを聞かれる
🔹 2. よく使う sftp コマンド一覧
| コマンド | 機能 |
|---|---|
ls | Pi 側のファイル一覧 |
pwd | Pi 側の現在のフォルダ |
lpwd | PC側の現在のフォルダ |
cd フォルダ名 | Pi 側のフォルダ移動 |
lcd フォルダ名 | PC 側のフォルダ移動 |
get ファイル名 | Pi → PC にダウンロード |
put ファイル名 | PC → Pi にアップロード |
bye | 終了 |
🔹 3. 例:Pi の画像を PC にコピーする
cd /home/pi/python/timelapse_pics/ get pic_20260209_120051.jpgPC のカレントフォルダに保存される。
🔹 4. 例:PC のファイルを Pi に送る
lcd ~/Desktop put test.txtscreen コマンドの使い方(Raspberry Pi でプログラムを動かし続ける)
screen は SSH を切ってもプログラムを動かし続けられる便利ツール。
タイムラプス撮影のような長時間処理に最適。
🔹 1. 新しい screen セッションを作る
screen -S timelapsetimelapse はセッション名(好きな名前でOK)
🔹 2. その中で Python を実行
python3 timelapse.pySSH を切っても撮影は続く。
🔹 3. screen から抜ける(プログラムは動いたまま)
Ctrl + A → D
これで「デタッチ(切り離し)」される。
🔹 4. 動いている screen に戻る
screen -r timelapse🔹 5. 動いているセッション一覧を見る
screen -ls🔹 6. セッションを終了する
screen に戻ってから:
exitまたはプログラムを終了させれば screen も閉じる。
🌟 まとめ
sftp
- Pi と PC の間でファイルを送受信するコマンド
get(ダウンロード)とput(アップロード)が基本
screen
- SSH を切ってもプログラムを動かし続けられる
- タイムラプス撮影に最適
screen -S 名前→Ctrl+A D→screen -r 名前