2016-08-04 113 views
2

我想在运行apache的Amazon EC2 Micro实例上创建的python web应用程序上使用OpenCV。在Amazon Linux(apache)上安装OpenCV/python?

我已经配置好了所有配置和工作,除了OpenCV没有安装。这是我从Apache错误日志中获得的输出。

[Thu Aug 04 18:31:54 2016] [error] [client 72.219.147.5]  import cv2 
[Thu Aug 04 18:31:54 2016] [error] [client 72.219.147.5] ImportError: No module named cv2 

这里是我试过:

我已经安装了点子和尝试运行pip install pyopencv

这并不工作,给我的错误。 How to install OpenCV on Amazon Linux?

这:http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_setup/py_setup_in_fedora/py_setup_in_fedora.html?highlight=download#installing-opencv-python-from-pre-built-binaries

这:http://techieroop.com/install-opencv-in-centos/

即使安装后,cv2.so文件无处可

我也试过手动按照此安装它被发现。我试图用sudo find/-name "cv2.so"搜索它,但没有出现。

我这样做,不过,已经安装了以下.so文件:

/usr/local/lib/libopencv_photo.so 
/usr/local/lib/libopencv_stitching.so 
/usr/local/lib/libopencv_flann.so 
/usr/local/lib/libopencv_imgcodecs.so 
/usr/local/lib/libopencv_videostab.so 
/usr/local/lib/libopencv_ml.so 
/usr/local/lib/libopencv_objdetect.so 
/usr/local/lib/libopencv_imgproc.so 
/usr/local/lib/libopencv_superres.so 
/usr/local/lib/libopencv_core.so 
/usr/local/lib/libopencv_video.so 
/usr/local/lib/libopencv_highgui.so 
/usr/local/lib/libopencv_features2d.so 
/usr/local/lib/libopencv_shape.so 
/usr/local/lib/libopencv_videoio.so 
/usr/local/lib/libopencv_calib3d.so 

而且,在运行cmake的命令时,这是我得到的输出:

-- Python 2: 
--  Interpreter:     /usr/bin/python2.7 (ver 2.7.10) 
--  Libraries:     NO 
--  numpy:      NO (Python wrappers can not be generated) 
--  packages path:    lib/python2.7/dist-packages 

任何帮助赞赏。

+0

你复制cv2.so到站点包你的Python分布下(如/usr/local/lib/python2.7/site-packages) ? – bblincoe

+0

@bblincoe其中是cv2.so文件?在我的/usr/local/lib/python2.6/中,我没有任何cv2.so文件,但是我有用于点的文件。在我的/usr/local/lib/python2.7/我只有一个自述文件 –

+0

看看这个线程:http://stackoverflow.com/questions/15790501/why-cv2-so-missing-after-opencv-安装 – bblincoe

回答

12

测试和cmake的步骤之后,在amzn-ami-hvm-2016.03.1.x86_64-gp2

sudo yum install git cmake gcc-c++ numpy python-devel 
sudo pip install --upgrade pip 
sudo ln -rs /usr/local/bin/pip /usr/bin/ 
wget https://pypi.python.org/packages/18/eb/707897ab7c8ad15d0f3c53e971ed8dfb64897ece8d19c64c388f44895572/numpy-1.11.1-cp27-cp27mu-manylinux1_x86_64.whl 
sudo pip install numpy-1.11.1-cp27-cp27mu-manylinux1_x86_64.whl 
git clone https://github.com/Itseez/opencv.git 
cd opencv 
git checkout 3.1.0 
mkdir build 
cd build 
cmake .. -DBUILD_opencv_python2=ON 
make -j4 
sudo make install 
echo 'export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages/:/usr/local/lib/python2.7/dist-packages/'>>~/.bashrc;. ~/.bashrc 
python -c 'import cv2; print "cv2 imported"' 

工作最重要的。你应该在输出中看到这个。

-- Python 2: 
--  Interpreter:     /usr/bin/python2.7 (ver 2.7.10) 
--  Libraries:     /usr/lib64/libpython2.7.so (ver 2.7.10) 
--  numpy:      /usr/local/lib64/python2.7/site-packages/numpy/core/include (ver 1.11.1) 
--  packages path:    lib/python2.7/dist-packages 

现在如果它没有显示出来,你需要完全正确后安装numpy的,只是重新运行您现有的build文件夹不会在里面工作的cmake再次删除build文件夹,然后重新运行cmake的。

+0

进行搜索。我运行了'cmake'命令,并意识到'numpy'没有正确安装。所以我做了'sudo yum卸载numpy'。然后我试着安装'numpy-1.11.1-cp27-cp27mu-manylinux1_x86_64.whl',但是我得到了'numpy-1.11.1-cp27-cp27mu-manylinux1_x86_64.whl不是这个平台上支持的轮子' –

+0

我已经也更新了我的问题与运行'cmake' –

+0

hmm ..时得到的输出结果。这里列出的whl https://pypi.python.org/pypi/numpy。有4个用于Linux。 –

1

我想下面的命令和它的工作:

cmake -D PYTHON2_LIBRARIES=/home/ubuntu/anaconda2/lib/libpython2.7.so.1.0 \ 
-D PYTHON2_INCLUDE_DIR=/home/ubuntu/anaconda2/include/python2.7/ \ 
-D PYTHON2_EXECUTABLE=/home/ubuntu/anaconda2/bin/python \ 
-D HAVE_opencv_python2=ON .. 
相关问题