Bagaimana cara menginstal OpenCV 3.1 untuk Python 3.5 Di Ubuntu 16.04 LTS?

22

Bagaimana cara menginstal OpenCV versi 3.1 di Ubuntu 16.04 LTS untuk bekerja dengan Python 3.5.1?

Saya mencoba ini pada VM tetapi jelas itu berguna untuk dilakukan jika Anda ingin bekerja dengan Python 2.

Billal Begueradj
sumber
4
apakah ini [windows] yang ditandai karena Anda menggunakan WSL? Tolong beri tahu kami tentang versi / lingkungan Ubuntu Anda, jika tidak sulit untuk mendiagnosis masalah dengan akurat
Zanna
Terbaik yang pernah saya lihat sejauh ini yang bekerja untuk saya: milq.github.io/install-opencv-ubuntu-debian
Oluwayetty
Ini sempurna: begueradj.com/...
Billal Begueradj

Jawaban:

10

Saya memiliki OpenCV versi 3.1 di Ubuntu 16.04 LTS untuk bekerja dengan Python 3.5.1. Pada versi terbaru itu diperbaiki, coba:

http://cyaninfinite.com/tutorials/installing-opencv-in-ubuntu-for-python-3/

Tapi saya tidak mengunduh dev python dan OpenCV, saya mengambil langsung dari github:

1

EDIT:

Berikut adalah instruksi yang saya uji dengan sukses dan disebutkan dalam tautan di atas:

  1. Perbarui repositori: sudo apt-get update
  2. Unduh paket yang diperlukan untuk mengkompilasi OpenCV:

    sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
  3. Instal paket pengembang untuk Python3.5: sudo apt-get install python3.5-dev
  4. Salin file dev: python3.5-config --includesOutput harus sama dengan: -I/usr/include/python3.5m -I/usr/include/x86_64-linux-gnu/python3.5m. Bagian pertama dari output adalah lokasi yang diharapkan & bagian kedua menunjukkan lokasi file konfigurasi saat ini. Untuk mengatasi masalah ini, kami akan menyalin file dari lokasi saat ini ke lokasi yang diharapkan:sudo cp /usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h /usr/include/python3.5m/
  5. Membuat direktori sementara, bergerak ke dalamnya dan menjalankan: git clone https://github.com/Itseez/opencv.git. Ini akan mengunduh OpenCV 3. Kemudian ganti nama folder opencvmenjadiopencv-3
  6. Buat builddirektori, pindah ke sana dan jalankan:

    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ../opencv-3
  7. Setelah proses selesai, jalankan makedan kemudian sudo make install.
  8. Nikmati.
Dmitrii Magas
sumber
1
Sayangnya banyak dari ini masih gagal untuk saya. Saya mendapatkan kesalahan dengan cara tentang apt_pkg dan tidak dapat mengimpor multiarray
CashCow
1
Secara khusus ia terus menemukan python3.4 daripada python3.5 dan saya tidak tahu bagaimana mengarahkannya untuk menggunakan python3.5. Ketika saya mencoba mengimpor OpenCV di python3.4 saya memang mendapatkan kesalahan yang berbeda tentang beberapa dependensi yang hilang
CashCow
Bit terakhir dari perintah terakhir seharusnya adalah ../../opencv-3 Saya pikir ... Anda adalah dua dirs dari menetapkan direktori
opencv
Anda juga ingin menggunakan semua prosesor saat melakukan make, jadi jika Anda memiliki 8 core lakukanmake -j8
kata
Jalankan cmake dari direktori paralel lain jika tidak, Anda akan mendapatkan masalah ini stackoverflow.com/questions/45518317/…
100rabh
40

Saya menemukan ini .

OpenCV di atas roda.

Paket OpenCV tidak resmi untuk Python.

Instalasi tidak menimbulkan rasa sakit untuk Ubuntu 16.04:

pip3 install opencv-python

Periksa instalasi:

python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.2.0'
Trevor
sumber
1
Saya suka solusi ini tetapi mendapat pesan kesalahan ini:Could not find any downloads that satisfy the requirement opencv-python
Jeff Tian
Ini mungkin solusi yang paling sederhana dan berfungsi, kecuali jika Anda mencari versi
opencv yang
1
pastikan untuk menggunakan pip3 dan BUKAN pip!
givonz
Juga tidak ada yang berikut dalam wadah lxc saya: apt-get install -y libsm6 libxext6 libxrender-dev
DanJ
mudah tetapi paket ini tidak memiliki fungsi video
Beyhan Gül
8

python3-opencv dapat diinstal dari repositori Universe di Ubuntu 17.10 dan yang lebih baru. Buka terminal dan ketik:

sudo apt install python3-opencv  

Tingkatkan OS Anda menjadi 18,04 jika Anda menggunakan Ubuntu 14.04 atau Ubuntu 16.04. Jika Ubuntu 16,04 diinstal di WSL sudo do-release-upgrade -dakan meningkatkannya menjadi 18,04.

karel
sumber
2

Cara paling sederhana dan elegan yang saya temukan online adalah menginstal perpustakaan dengan menjalankan skrip instalasi. Unduh skrip instalasiinstall-opencv.sh , buka terminal Anda dan jalankan:

bash install-opencv.sh

Ketikkan kata sandi sudo Anda dan Anda akan menginstal OpenCV. Operasi ini mungkin memakan waktu lama karena paket-paket yang akan diinstal dan proses kompilasi.

Referensi: https://milq.github.io/install-opencv-ubuntu-debian/

Oluwayetty
sumber
1

Saat ini saya bekerja dengan Google VM (ubuntu 14.04). Instalasi opencv pada versi python3.4 sudah cukup tugas. Saya ingin opencv diinstal untuk python 3.4 tetapi setiap kali diinstal pada versi 2.7.

Saya akan membagikan langkah-langkah yang saya ikuti untuk membantu orang lain.

Langkah 1 Ikuti semua langkah yang disebutkan pada bagian instalasi openCv hingga cmake. Tautan diberikan di bawah ini:

https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html

Catatan: Instal semua 3 paket yang disebutkan di awal. Yang opsional juga .. !! Dan jangan lupa untuk mengubah versi python yang Anda pasang.

aku melakukannya

sudo apt-get install python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

Ikuti langkah 2 untuk cmake.

Langkah 2 Untuk menginstal opencv dalam versi python (ubuntu) tertentu, Anda harus mengatur default (PYTHON_DEFAULT_EXECUTABLE) dengan jalur ke tempat python Anda dipasang. Anda dapat mengetahuinya dengan menggunakan perintah whereis python3.4 (atau, versi Anda). Milik saya ada di/usr/bin/python3.4

Alih-alih cmake yang disebutkan di halaman, gunakan ini,

cmake -D CMAKE_BUILD_TYPE=Release -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_opencv_python3=ON -D HAVE_opencv_python3=ON -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python3.4 ..

Catatan: Jangan lupa untuk mengubah versi dan jalur python Anda di PYTHON_DEFAULT_EXECUTABLE.

Langkah 3 Ikuti langkah-langkah yang tersisa seperti yang disebutkan dalam tautan sampai sudo melakukan instalasi

Semoga ini bisa membantu.

Vaibhav
sumber
0

Panduan dasar: https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html

Berikut ini, yang diuji pada Ubuntu 18.04 , menginstal OpenCV 4.1.0-dev dan tidak menggunakan lingkungan virtual python. Saya belum menemukan cara kerjanya. Saya meletakkan jawabannya di sini sehingga memiliki visibilitas yang lebih luas.

Persyaratan

[compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

Cara menginstal jasper: https://github.com/opencv/opencv/issues/8622#issuecomment-353761271

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

1. Klon repo

Instalasi akan menyertakan modul contrib.

cd ~/<my_working_directory>
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

(Git branch to 3.4 untuk menginstal versi itu.)

1.1 Buat folder bangun

Jika Anda berantakan, hapus saja folder bangun dan mulai lagi dari sini .

mkdir build
cd build

2. Mengkonfigurasi

Saya menggunakan flag cmake berikut:

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ..

Bendera opsional: (ada banyak bendera , lihat posting blog ini untuk beberapa yang bermanfaat)

-DINSTALL_C_EXAMPLES=ON 
-DINSTALL_PYTHON_EXAMPLES=ON 
-DWITH_TBB=ON 
-DWITH_V4L=ON 
-DWITH_QT=ON 
-DWITH_OPENGL=ON
-DWITH_NVCUVID=ON 
-DWITH_CUDA=ON
-DWITH_OPENMP=ON 
-DWITH_IPP=ON
-DWITH_OPENCL=ON

Pastikan cmake menemukan versi python Anda dengan memeriksa hasilnya sebagai berikut:

--   Python 2:
--     Interpreter:                 /usr/bin/python2.7 (ver 2.7.15)
--     Libraries:                   /usr/lib/x86_64-linux-gnu/libpython2.7.so (ver 2.7.15+)
--     numpy:                       /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.13.3)
--     install path:                lib/python2.7/dist-packages/cv2/python-2.7
-- 
--   Python 3:
--     Interpreter:                 /usr/bin/python3 (ver 3.6.8)
--     Libraries:                   /usr/lib/x86_64-linux-gnu/libpython3.6m.so (ver 3.6.8)
--     numpy:                       /home/jx/.local/lib/python3.6/site-packages/numpy/core/include (ver 1.15.4)
--     install path:                lib/python3.6/dist-packages/cv2/python-3.6

Cara menentukan versi python yang digunakan

3. Buat dan instal

Gunakan make dengan jumlah utas yang diinginkan (mis. Jumlah prosesor) lalu pasang.

make -j8
sudo make install

Hal-hal sekarang harus diinstal ke /usr/local

4. Tes

Jika semuanya berjalan dengan baik maka Anda harus dapat mengimpor cv2 dengan python.

import cv2
cv2.__version__
qwr
sumber
-1

OpenCV dapat diinstal menggunakan pip / pip3 dan homebrew. Saya sudah mencoba menginstalnya sebelum menggunakan pip3 (Python 3.6.0), tetapi saya punya masalah dengan VideoCapture, yang membutuhkan paket ffmpeg. cv2.VideoCapture ('videofilename'). Inilah sebabnya saya menggunakan homebrew untuk menginstal OpenCV. Buka Terminal dengan Ctrl+ Alt+ Tdan ketik perintah berikut:

brew install ffmpeg
brew install opencv3 --with-ffmpeg -v (Python 2.7)
brew install opencv3 --with-python3 --with-ffmpeg -v (Python 3.6)
Biranchi
sumber
3
Mengapa Anda menyarankan menggunakan homebrew?
guntbert
1
OpenCV dapat diinstal menggunakan pip / pip3 dan homebrew. Saya telah menginstal menggunakan pip3 (Python 3.6.0), tetapi saya punya masalah dengan VideoCapture, yang membutuhkan paket ffmpeg. cv2.VideoCapture ('videofilename') Jadi saya menggunakan homebrew untuk menginstal dan bekerja dengan baik.
Biranchi
2
@Biranchi silakan perbarui jawaban Anda dengan informasi dari komentar Anda (dan mungkin tambahkan beberapa informasi lebih lanjut).
Simon Sudler