Ubuntu 18.04:OpenCVのインストール方法-PyImageSearch

Ubuntu 18.04:OpenCVのインストール方法-PyImageSearch


このブログ投稿では、Ubuntu18.04にOpenCVをインストールする方法を学びます。

過去に、Ubuntuのインストールガイドをいくつか作成しました。

Ubuntu 16.04:Python2.7およびPython3.5 +でOpenCVをインストールする方法UbuntuにOpenCV3.0およびPython2.7 +をインストールするUbuntuにOpenCV3.0およびPython3.4 +をインストールする-(…macOSおよびRaspberry Piインストールガイド)

Canonicalの人々は一生懸命働いています。

2018年4月26日、彼らはコミュニティ向けに新しいロングタームサポート(LTS)バージョンのUbuntuをリリースしました:Ubuntu 18.04 LTS(Bionic Beaver)。

Ubuntu 16.04 LTSのサポートは2021年4月まで続くので、安心してください。画像処理プロジェクトで作業を続けるために16.04OSをアップグレードする必要はありません。

そうは言っても、Ubuntu 18.04にアップグレードして最新かつ最高のものを使用したいのであれば、Ubuntu18.04の新しい変更に非常に満足すると思います。 ビジネスに取り掛かりましょう。Python3バインディングを使用してOpenCVをインストールします。

OpenCVでUbuntu18.04システムを立ち上げる方法については、読み続けてください。

注:私のブログ(LTS以外)にはUbuntu 17.10固有のガイドは表示されませんが、これらの手順は17.10で機能する可能性があります(自己責任で続行する必要があります)。

Ubuntu 18.04:OpenCVをインストールする方法

Ubuntu 18.04での大きな変更の1つは、Python2.7を完全に削除したことです。

必要に応じてPython2.7をインストールすることもできますが、OSのデフォルトはPython3です。

そのため、このガイドはPython 3をサポートしています。Python2.7のサポートが必要な場合は、最初にこのガイド全体を読んでから、このブログ投稿の下部にある「インストールのトラブルシューティング(FAQ)」セクションの最初の質問でPython2.7ポインターを確認してください。

ステップ0:快適に-Python3.6を使用します

Ubuntu18.04のPython3に慣れましょう。

Ubuntu18でPython3を実行します。04、python3を明示的に呼び出す必要があります。

システムにインストールされているバージョンを見てみましょう。

それでは、水域をテストするためだけにPython3シェルを起動してみましょう。

それはとても簡単なので、Ubuntu18.04にOpenCVをインストールしてみましょう。

ステップ1:Ubuntu18.04にOpenCVの依存関係をインストールする

今日のすべてのステップは、ターミナル/コマンドラインで実行されます。 始める前に、ターミナルを開くか、SSH経由で接続します。

そこから、apt-getパッケージマネージャーを使用して、プレインストールされたパッケージ/ライブラリを更新/アップグレードする必要があります。

その後、開発者ツールをインストールします。

ほとんどの場合、すでにpkg-configがUbuntu 18.04にインストールされていますが、sanityのインストールコマンドに必ず含めてください。

次に、OpenCV固有の前提条件をいくつかインストールする必要があります。 OpenCVは画像処理/コンピュータービジョンライブラリであるため、JPEG、PNG、TIFFなどの標準的な画像ファイル形式をロードできる必要があります。次のイメージI / Oパッケージを使用すると、OpenCVでイメージファイルを操作できます。

それでは、libjasper-devをインストールしてみましょう。

libjasper-devが見つからないというエラーが表示された場合は、次の手順に従ってください。

それ以外の場合(またはlibjasper-devがインストールされたら)、続行します。

次に、PyImageSearchブログでビデオを扱うことが多いので、ビデオI / Oパッケージを含めましょう。 カメラストリームを操作してビデオファイルを処理するには、次のパッケージが必要です。

OpenCVのhighguiモジュールは、GUI操作をGTKライブラリに依存しています。 highguiモジュールを使用すると、画像を表示し、キープレス/マウスクリックを処理し、スライダーとトラックバーを作成する基本的なGUIを作成できます。 高度なGUIは、TK、Wx、またはQTを使用して構築する必要があります。 TKを使用してOpenCVGUIを作成する方法については、このブログ投稿を参照してください。

GTKをインストールしましょう:

さまざまなOpenCV機能を最適化する次の2つのライブラリを常にお勧めします。

そして最後に、最後の要件はPython 3ヘッダーとライブラリをインストールすることです:

ステップ#2:Office OpenCVソース

をダウンロードする

Update 2018-12-20:これらの指示はOpenCV 3.4.4で動作するように更新されました。これらの手順は、将来のOpenCV 3.xバージョンでも動作し続けるべきです。

私たちはターミナルで働き続けているので、wget:

を使って公式OpenCVリリースをダウンロードしましょう。

の後にOpenCV_CONTRIBモジュール:

注:ブラウザが完全なコマンドを遮断している場合は、上記のツールバーの「<>」ボタンを使用してコードブロックを展開するか、次のURLを展開して貼り付けます.https://github.com/opencv_contrib / archive / 3.4.4.zip

だから、Repo?

ContribreSリポジトリには、SIFT、SURFなどのアルゴリズムが含まれています。過去には、これらの実装はOpenCV 2.4のデフォルトのインストールに含まれていました。しかし、それらはOpenCV 3 +から始めて動いた。

積極的に開発されているモジュールおよび/または特許を取られている(商用/産業用途のために無料ではない)。シフトとサーフィンはこのカテゴリーに落ちます。次のブログの投稿でこの動きの背後にある思考プロセスについてもっと学ぶことができます。

重要:OpenCVとOpenCV_Contribの両方のバージョンは同じでなければなりません。両方のURLが3.4.4を指すことに注意してください。このガイドを使用している間、別のバージョンをインストールしてください - 必ず両方のURLを更新してください。

今、アーカイブを解凍しましょう:

今すぐ先行してディレクトリの名前を変更しましょう。

ステップ#3:Python 3環境を設定します。

私たちがPython 3開発環境を構成するために取っている最初のステップは、Pip、Pythonパッケージマネージャをインストールすることです。

PIPをインストールするには、端末に次のように入力します。

Python開発のための仮想環境の利用

あなたが私のブログとそこにあるインストールガイドに精通しているなら、次のステートメントは私を壊れたレコードのように聞こえるかもしれませんが、とにかくそれを繰り返します:

私はvirtualenvとvirtualenvwrapperの両方を毎日使用していますが、特別な理由がない限り、使用する必要があります。 これらの2つのPythonパッケージは、プロジェクト用の独立したPython環境の作成を容易にします。

仮想環境を使用することをお勧めします。

どうして?

仮想環境を使用すると、VMやDockerイメージなどのリソースを大量に消費することなくプロジェクトを分離して作業できます(私は間違いなくVirtualBoxとDockerの両方を使用しています-それらには場所があります)。

たとえば、古いバージョンのscikit-learn(v0.14)を必要とするPython + OpenCVプロジェクトがあり、新しいプロジェクトすべてに最新バージョンのscikit-learn(0.19)を引き続き使用したい場合があります。

仮想環境を使用すると、これら2つのソフトウェアバージョンの依存関係を別々に処理できます。これは、Pythonのシステムインストールだけでは不可能です。

Python仮想環境の詳細については、RealPythonに関するこの記事を参照するか、PyImageSearchに関するこのブログ投稿の前半をお読みください。

先に進んで、virtualenvとvirtualenvwrapperを今すぐインストールしましょう:

インストールを完了するには、〜/.bashrcファイルを更新する必要があります。

vi / vimやnanoなどのターミナルテキストエディタを使用して、〜/.bashrcに次の行を追加します。

または、bashコマンドを使用して行を直接追加することもできます。

次に、〜/.bashrcファイルを入手します。

OpenCVと追加パッケージを保持するための仮想環境の作成

わかりました。これは大変な作業のように思われるかもしれませんが、OpenCV用のPython3仮想環境を作成できるようになりました。

この行は、cvという名前のPython3仮想環境を作成するだけです。 環境には好きな名前を付けることができます-私はそれらを短くしたいと思います。 十分な情報を提供しながらも甘いので、それらが何のためにあるのかを思い出します。 システムには、必要な数の仮想環境を設定できます。

workonコマンドを使用して、cv環境にいることを確認しましょう。

図2は、端末がどのように表示されるかを示しています(bashプロンプトの設定を変更していないと仮定)。

ご使用の環境にNumPyをインストールします

最初のパッケージであるNumPyを環境にインストールしましょう。 NumPyは、PythonおよびOpenCVを操作するための要件です。 単純にpipを使用します(cv Python仮想環境がアクティブな間):

ステップ4:Ubuntu18.04用にOpenCVを構成およびコンパイルする

今、私たちは動いています。 OpenCVをコンパイルしてインストールする準備ができました。

ただし、始める前に、cv仮想環境にいることを確認しましょう。

仮想環境がアクティブである(仮想環境の「内部」にいる)ことが非常に重要であるため、繰り返します。 次のステップに進む前にcvPython仮想環境にいない場合、ビルドファイルは正しく生成されません。

CMakeでOpenCVを構成する

cmakeを使用してOpenCVビルドを設定しましょう:

更新2018-12-20:OPENCV_ENABLE_NONFREE = ONフラグを設定して、このブログで時々レビューする特許取得済みのアルゴリズムにアクセスできるようにしてください(PyImageSearch Gurusで詳しく説明します)。 同様に、正しいPYTHON_EXECUTABLEが使用されるように、必ず仮想環境へのパスを更新してください(仮想環境名はcvであるため、パスのcvに注意してください)。 CMakeの出力をスクロールすることを常にお勧めします。 何かが異常に見えるかどうかを確認してください。 すべての設定の横に「はい」のマークが付いているわけではありません。これは正常な動作です。エラーが表示されないことを確認してください。そうしないと、コンパイルが失敗する可能性があります(警告は問題ありません)。

図3のUbuntu18.04のCMake出力には「Python3」セクションのみが表示されていることに注意してください。これは、Python3をサポートするOpenCVのみをコンパイルしているための仕様です。

更新2018-12-20:さらに、約20行上にスクロールし、「非フリーアルゴリズム」が「はい」に設定されていることを確認します。

注:stdlib.hに関連する問題が発生した場合:このチュートリアルのcmakeまたはmakeフェーズでそのようなファイルまたはディレクトリがない場合は、CMakeに次のオプションも含める必要があります:-D ENABLE_PRECOMPILED_HEADERS = OFF。 この場合、ビルドディレクトリを削除して再作成し、上記のオプションを含めてcmakeを再実行することをお勧めします。 これにより、stdlib.hエラーが解決されます。

Ubuntu18.04でOpenCVをコンパイルする

makeを使用してOpenCVをコンパイルしてみましょう。

プロセッサ/コアの数によっては、コマンドのフラグを変更することでコンパイル時間を短縮できる場合があります。 私のコンピューターには4つのコアがあるので、-j4フラグを使用しています。 数字を更新するか、フラグを完全にオフのままにすることができます。

このプロセスには30分以上かかる場合がありますので、できれば散歩に出かけましょう。

コンパイルがチョークしてハングする場合は、スレッドの競合状態が原因である可能性があります。 この問題が発生した場合は、ビルドディレクトリを削除して再作成し、cmakeとmakeを再実行してください。 今回は、makeの横にフラグを含めません。

OpenCVのインストールと検証

コンパイルが100%完了すると、OpenCVをインストールできるようになります。

インストールを確認するために、ターミナルで次のコマンドを入力したい場合があります。

ステップ5:Python + OpenCV + Ubuntu18.04のインストールを完了する

レースの最終ラップに到達したので、それを続けてください。

更新2018-12-20:次のパスが更新されました。以前のバージョンのOpenCVは、バインディングを別の場所(/usr/local/lib/python3.6/site-packages)にインストールしたため、以下のパスを注意深く確認してください。

この時点で、OpenCV用のPython3バインディングは次のフォルダーにあるはずです。

それらの名前を単にcv2.soに変更しましょう:

ヒント:OpenCV3とOpenCV4を並べてインストールする場合は、ファイルの名前をcv2.soに変更する代わりに、cv2.opencv3.4.4.soという名前を付けてから、次のサブステップのシンボリックリンクで名前を付けることを検討してください。そのファイルからcv2.soにも適切に。

最後のサブステップは、OpenCVcv2.soバインディングをcv仮想環境にシンボリックリンクすることです。

ステップ6:Ubuntu18.04でのOpenCV3インストールのテスト

レースは終了しましたが、すべてのシリンダーで発砲していることを確認しましょう。

OpenCV + Ubuntuのインストールが完了したことを確認するために、Pythonを起動し、OpenCVをインポートして、バージョンを照会します(これは、OpenCVの複数のバージョンもインストールされている場合の健全性に役立ちます)。

これが私のシステムでどのように見えるかです:

アップデート2018-12-20:今日、アップデート中にスクリーンショットをアップデートしませんでした。 バージョンは、インストールしたOpenCVのバージョンを反映している必要があります。

オプションで、この時点で、ホームフォルダ内のzipとディレクトリを安全に削除できます。

インストールのトラブルシューティング(FAQ)

このセクションでは、Ubuntu 18.04LTSにPython3を使用してOpenCV3をインストールするときに発生する一般的な質問、問題、および問題のいくつかについて説明します。

Q. Ubuntu18.04のPython2.7はどこにありますか? A. Python3がデフォルトです。 Ubuntu18.04に付属しているもの。 Python3がデフォルトです。 Ubuntu18.04.04に付属しているもの。 Python 2.7ユーザーは、ステップ1の最後にPython2.7を手動でインストールできます。

そこから、ステップ3で仮想環境を作成するときは、最初にPython2.7用のpipをインストールします。 etechjp.com

そして(これもステップ3で)仮想環境を作成するときに、関連するPythonバージョンフラグを使用するだけです。

そこからすべてが同じになるはずです。

Q. OpenCVをインストールするために単にpipできないのはなぜですか?

A.オペレーティングシステムとアーキテクチャに応じて、Pipでインストール可能なOpenCVのバージョンがいくつかあります。 遭遇する可能性のある問題は、さまざまな最適化、イメージI / Oサポート、ビデオI / Oサポート、およびopencv_contribサポートなしでコンパイルされる可能性があることです。 それらを使用してください-しかし、あなた自身の責任でそれらを使用してください。 このチュートリアルは、コンパイルを完全に制御しながら、Ubuntu18.04にOpenCVを完全にインストールすることを目的としています。

Q. mkvirtualenvまたはworkonを実行すると、「コマンドが見つかりませんエラー」が発生します。

A.このエラーメッセージが表示される理由はいくつかありますが、すべてステップ3から来ています。

1.1。まず、pipパッケージマネージャーを使用してvirtualenvとvirtualenvwrapperが正しくインストールされていることを確認します。 pipfreezeを実行して確認し、インストールされているパッケージのリストにvirtualenvとvirtualenvwrapperの両方が表示されていることを確認します。 2.〜 /.bashrcファイルに誤りがある可能性があります。 〜/.bashrcファイルの内容を表示して、適切なエクスポートコマンドとソースコマンドが存在することを確認します(〜/.bashrcに追加する必要のあるコマンドについては、手順3を確認してください)。 3.〜 /.bashrcのソースを忘れている可能性があります。 mkvirtualenvおよびworkonコマンドにアクセスできるように、編集後にsource〜 /.bashrcを実行してください。

Q.新しいターミナルを開いたり、ログアウトしたり、Ubuntuシステムを再起動したりすると、mkvirtualenvまたはworkonコマンドを実行できません。

A.前の質問の#2を参照してください。

Q. OpenCVをインポートしようとすると、次のメッセージが表示されます。インポートエラー:cv2という名前のモジュールがありません。

A。これが発生する可能性がある理由は複数ありますが、残念ながら診断は困難です。 エラーの診断と解決に役立つ次の提案をお勧めします。

1. workon cvコマンドを使用して、cv仮想環境がアクティブであることを確認します。 このコマンドでエラーが発生した場合は、このFAQの最初の質問を参照してください。 2.cv仮想環境のsite-packagesディレクトリの内容を調べてみてください。 site-packagesディレクトリは、Pythonのバージョンに応じて〜/.virtualenvs / cv / lib / python3.6 / site-packages /にあります。 (1)site-packagesディレクトリにcv2.soファイルがあり、(2)有効なファイルに適切にシンボリックリンクされていることを確認してください。 3. /usr/local/lib/python3.6/site-packages/にあるPythonのシステムインストールのsite-packages(およびdist-packages)ディレクトリを必ず確認してください。 さらに、/ usr / local / python / cv2を確認してください。 理想的には、これらの場所の1つにcv2.soファイルがあるはずです。 4.4。最後の手段として、OpenCVビルドのbuild / libディレクトリをチェックインします。 そこにcv2.soファイルがあるはずです(両方のcmake。Makeがエラーなしで実行された場合)。soファイルがそこにあります(cmakeとmakeの両方がエラーなしで実行された場合)。 cv2.soファイルが存在する場合は、システムのsite-packagesディレクトリとcv仮想環境のsite-packagesディレクトリの両方に手動でコピーします。

次は何ですか? PyImageSearch大学をお勧めします。

適切な教師がいれば、コンピュータビジョンとディープラーニングを習得できると強く信じています。

コンピュータービジョンとディープラーニングの学習は、時間がかかり、圧倒的で、複雑でなければならないと思いますか? または、複雑な数学や方程式を使用する必要がありますか? または、コンピュータサイエンスの学位が必要ですか?

そうではありません。

コンピュータビジョンとディープラーニングを習得するために必要なのは、誰かが簡単で直感的な言葉で物事を説明することだけです。 そしてそれはまさに私がしていることです。私の使命は教育を変えることです。 複雑な人工知能のトピックがどのように教えられているか。

コンピュータービジョンの学習に真剣に取り組んでいる場合、次の目的地はPyImageSearch大学です。これは、今日オンラインで最も包括的なコンピュータービジョン、ディープラーニング、およびOpenCVコースです。 ここでは、コンピュータビジョンを仕事、研究、プロジェクトにうまく、自信を持って適用する方法を学びます。 コンピュータービジョンの習得に参加してください。

PyImageSearch大学の中には、次のものがあります。

-✓重要なコンピュータービジョン、ディープラーニング、OpenCVトピックに関する30以上のコース-✓30以上の修了証明書-✓39時間44分オンデマンドビデオ-✓毎月リリースされる新しいコース。最新のテクニック-✓GoogleColabで事前構成されたJupyterNotebook-✓すべてのコード例をWebブラウザーで実行します-Windows、macOS、およびLinuxで動作します(開発環境の構成は必要ありません!)-✓PyImageSearchの500以上のチュートリアルすべての集中コードリポジトリへのアクセス-✓コード、データセット、事前トレーニング済みモデルなどの簡単なワンクリックダウンロード-✓モバイル、ラップトップ、デスクトップなどへのアクセス

Report Page