【ラズパイ】OpenCVがインストールできない【Python】

目次

概要

以前のブログで、「moduleNotFoundError:No module named ‘cv2’」と出て、

インストールすれば解決すると言いましたが、そのインストールがうまくいきませんでした。

結論を言うと、まだ、解決してませんが、

私が試したことを紹介します。

\, -, |, / の繰り返し。

pip install opencv-python

とターミナルに打って、待っていたのですが、ずっと「\,-,/,|」がくるくる回っていて、一向にインストールが進みませんでした。

大きなファイルをダウンロードする際や、長時間かかるビルドプロセスを実行するときに、Linaxではこういう記号が使われるそうですが、あまりにも長すぎて、毎回バッテリーがなくってしまってうまくいきませんでした。

「\, -, |, /」はスピナーまたはプログレスインジケータとして機能していて、以下の各記号がプロセスの異なる段階を示しています。参考までに。

  • /:プロセスが一定のポイントに達したことを示します(例えば、全体の25%が完了)。
  • -:プロセスがさらに進行したことを示します(例えば、50%が完了)。
  • \:プロセスがさらに進行し、異なる段階に達したことを示します(例えば、75%が完了)。
  • |:プロセスが完了したか、または次のサイクルに移行する準備ができていることを示します。

システムのリソースを確認する

次にやったのが「システムのリソースを確認」です。

Linuxシステムでコマンドラインツールを使用します。ここでは、top と htop を使用する基本的な方法を説明します。これらのツールは、CPU使用率、メモリ使用量、プロセス情報など、システムのリアルタイムのパフォーマンスデータを提供しています。

topコマンド

top コマンドは、Linuxシステムで最も一般的に使用されるパフォーマンスモニタリングツールの一つです。システム上で実行中のプロセスと、CPUやメモリなどのリソース使用状況をリアルタイムで表示します。

手順は、

まず、ターミナルを開いて、

top

と入力します。すると、画面にシステムの概要、各プロセスのリソース使用状況がリストされます。CPU使用率やメモリ使用量を含むシステムの状態を確認できます。

主な項目は、

  • %CPU:CPU使用率。
  • %MEM:物理メモリ使用率。
  • COMMAND:プロセス名。
  • PID:プロセスID。

となっています。

htopコマンド

htop は top コマンドに似ていますが、より使いやすいインターフェースと、プロセスの表示や管理に関する追加機能を提供します。htop はデフォルトでインストールされていないことが多いので、インストールが必要な場合は次のコマンドを使用します:

sudo apt-get install htop

htopをインストールした後、

まず、ターミナルを開きます。

htop

と入力すると、プロセスのリスト、CPU、メモリ、スワップの使用状況がグラフィカルに表示されます。プロセスを選択し、F9キーを押すことで、そのプロセスを終了させることができます。

と、

こういう感じで、システムリソースを確認しましたが、何もわかりませんでした。

唯一わかったのは、Uptimeが2時間30分かかっても終わらないということだけでした。

Building wheel for opencv-python(pyproject.toml)…/

もう一度、インストール画面をよく見て、

「Building wheel for opencv-python(pyproject.toml)…/」の意味を調べました。

意味は、

opencv-python パッケージのビルドプロセスが進行中であることを示しています。ここでの「ビルド」とは、ソースコードから実行可能なフォーム(この場合はPythonのwheel形式のパッケージ)を生成するプロセスのことです。pyproject.toml は、ビルドシステムの設定が記述されたファイルで、Pythonプロジェクトで使用されます。

このメッセージの後ろにある / – は、ビルドプロセスが進行中であることを視覚的に示すインジケータです。通常、このインジケータはプロセスが進むにつれて異なる記号(/, -, \, |)に変化し、一種の「進行バー」として機能します。これは、ビルドプロセスがハングアップしていないこと、つまり進行中であることをユーザーに知らせるためのものです。

とあります。

インストールの途中でラズパイのバッテリーが落ちた。

インストール中にバッテリーがなくなり、途中でインストールが中断されました。再度、ラズパイを立ち上げて、

pip install opencv-python

とすると、途中から始まるみたいです。

pipは以前にダウンロードしたパッケージをキャッシュに保存するため、再インストールは比較的早く完了する可能性があるみたいですが、私の場合は全然うまくできませんでした。

途中からの回復における注意点としては、

ファイルシステムの損傷:

予期せずシステムがシャットダウンすると、ファイルシステムに損傷が生じる可能性があります。起動時にファイルシステムのチェックが行われることが多いですが、問題が発生した場合は、適切な修復コマンド(fsck など)を実行する必要があるかもしれません。

データの損失:

作業中のデータや設定が失われる可能性があるため、重要なデータは定期的にバックアップすることが重要です。

とあるので、私はアンインストールしました。以下がコードです。

pip uninstall opencv-python

ERROR: Failed building wheel for opencv-python
failed to build opencv-python
ERROR: Could not build wheels for opencv-python, which is required to install pyproject.toml-based projects

pipで再度インストールしていたら、今度は

「ERROR: Failed building wheel for opencv-python failed to build opencv-python ,

 ERROR: Could not build wheels for opencv-python, which is required to install pyproject.toml-based projects」

とエラーが出ました。これは、

opencv-python のビルド中に問題が発生し、その結果としてwheelファイルのビルドに失敗したことを示しています。これはpyproject.tomlを使用しているプロジェクトのインストールに必要なwheelが構築できなかったため、インストールが完了できない状態です。こうした状況は、依存するシステムライブラリが不足している、またはビルド環境が適切に設定されていない場合に発生することがみたいです。

なので、私は、以下の手順で再インストールを進めました。

1. 必要な開発ツールとライブラリのインストール

opencv-python のビルドには、コンパイラ(gccやg++など)やPython開発ヘッダー、およびOpenCVの依存ライブラリが必要です。これらが不足している場合は、ビルドに失敗します。Raspberry Pi(Raspbian/Ubuntuベースのシステム)の場合、以下のコマンドで必要なパッケージをインストールしました。

sudo apt-get update
sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libjpeg-dev libtiff-dev libjasper-dev libpng-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk-3-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt-get install python3-dev

2. pip、setuptools、wheelのアップデート

古いバージョンのpip、setuptools、またはwheelが原因でビルドに失敗することがあるので、最新版にアップデートしました。

pip install --upgrade pip setuptools wheel

3. opencv-pythonのインストールの再試行

もう一度、

pip install opencv-python

と打って、試したのですが、ダメでした。

まとめ

という感じで色々やってみましたが、うまくいきませんでした。

今後はラズパイを初期化するとかしか浮かびませんが、

また、色々やってみます。

何かの参考になれば幸いです。

スクールの紹介

ここまで読んでいただき、ありがとうございました。

最後に宣伝をさせてください。

夢見るAIエンジニアへ、今こそ一歩を踏み出せ!

最近、AI技術やデータサイエンスに興味を持ち始めたあなた。将来、AIエンジニアやデータサイエンティストとして活躍したいと考えているかもしれません。また、AIを使って業務課題や研究課題を解決したい、あるいは教養としてAIの知識を深めたいと思っている方もいるでしょう。

しかし、学び始めるとなると「どこから手をつけて良いのか分からない」「専門的すぎて理解できない」といった悩みが生じることも。そんなあなたのために、この3ヶ月間集中してAIプログラミングを習得するオンラインコーチングサービスがオススメです!

なぜこのサービスが選ばれるのか?その理由はこちら

  1. 初心者から上級者まで
    完全なプログラミング初心者から研究者まで、幅広い方々に優良なコンテンツが提供されます。
  2. 徹底的な進捗管理
    受講者の進捗をしっかりとチェックし、つまずきやすいポイントでのフォローが万全です。
  3. 専属メンターによる徹底サポート
    AIの学び方から、実際の適用まで、専属のメンターが手厚くサポートします。
  4. 場所を選ばず学べるオンライン完結
    東京以外の地域からも、気軽に学び始めることができます。

信頼の実績多数!
・日本最大級のプログラミングスクール実績
・受講者総数700名以上
・SaaS型学習サービス会員65,000名以上
・企業導入実績120社以上
・グッドデザイン賞受賞
・著名な賞受賞歴や経団連加盟も実現

夢を叶えるための第一歩を、一緒に踏み出しませんか?今なら、あなたもその一員として学び始めることができます!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次