株式会社インデペンデンスシステムズ横浜

システム開発エンジニアの西田五郎が運営しております。Raspberry Pi や Arduino その他新規開発案件のご依頼をお待ちしております。

OpenCV Raspberry Pi

Raspberry Pi 4にOpenCVをインストールしてPythonで動作確認

投稿日:

Raspberry Pi 4にOpenCVをインストールして動作確認をしました。Pythonでのプログラミングを想定して動作確認はPythonで行いました。

インストール方法
ここでは以下の手順でインストールしました。インストール作業はGUIを使わないのでTeraTermでの作業です。

一応パッケージを最新にします。
$ sudo apt-get update
$ sudo apt-get upgrade

以下でOpenCVをインストールします。
$ pip3 install opencv-python

実行時に必要となるであろうライブラリ関連をインストールします。
$ sudo apt-get install libatlas-base-dev
$ sudo apt-get install libjasper-dev

インストールの確認
以下のようにpython3の配下でimport出来るか確認してimport出来たらバージョンを確認しました。Pythonのバージョンが3.7.3でopencvのバージョンが4.5.1と確認出来ました。

Pythonプログラムでの動作確認その1
ここからはGUI(デスクトップ)での作業です。

画像ファイルの表示を確認しました。適当な画像ファイル(これは3年ぐらい前に撮って保存してあった銀座の街です。)を用意してGUIで表示します。以下Pythonプログラムです。

import cv2

img = cv2.imread('./ginza20210607.jpg')
cv2.imshow('ginza',img)
cv2.waitKey(0)                       

以下のように表示出来ました。(リモートデスクトップです。)

Pythonプログラムでの動作確認その2
USBカメラを接続してその映像を表示してみます。
以下のOpenCV-Pythonチュートリアルページの例を参考にしました。
カメラから動画を撮影する

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    # Display the resulting frame
    cv2.imshow('frame',frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

以下のように表示出来ました。リモートデスクトップですと少し反応が遅く感じました。

実際にはここからが本番のプログラミングということになりますが、今回はインストールからの動作確認までということでここまでとします。

AdSense

AdSense

-OpenCV, Raspberry Pi

執筆者:

関連記事

OpenCVをWin32ベースで利用する(その3)カメラ入力からの画像処理

OpenCVをWin32ベースで利用するの3回目です。前回は画像ファイルを入力にしてその画像に対してOpenCVで画像処理を行うというプログラムでした。今回は大きくは変わらないですが、カメラからの画像 …

Raspberry PiでIoT(MQTTで遠隔操作編 その1)MQTTでの通信

Raspberry PiでIoTのMQTTで遠隔操作編のシリーズを始めます。実際に動作させてみるということを重点として進めます。ここでの遠隔操作は2台のRaspberry Pi間でインターネット経由の …

NuGetでOpenCVを導入する

Visual Studio Express 2013 for Windows Desktopの開発環境でNuGetを使ってOpenCVを導入してみました。その方法についてです。 まずは、OpenCV( …

Raspberry PiでIoT(MQTTで遠隔操作編 その3)Raspberry PiのGPIOとHeroku連動Sub編

Raspberry PiでIoT MQTTで遠隔操作編の3回目です。2台のRaspberry Piでインターネット経由でGPIOを操作するというテーマで書いています。前回はHerokuでMQTT Br …

OpenCVで輪郭抽出から隣接領域の切り出し(その1)輪郭抽出まで

OpenCVで画像内の輪郭抽出からその輪郭の隣接領域(四角形)を求めてその領域を切り出すという処理を作ってみました。以下の画像がその結果の例です。(※実画像サイズは大きめです。) ここでの処理結果画像 …