Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python无法导入opencv,因为它可以';找不到libjpeg.8.dylib_Python_Macos_Opencv_Jpeg - Fatal编程技术网

python无法导入opencv,因为它可以';找不到libjpeg.8.dylib

python无法导入opencv,因为它可以';找不到libjpeg.8.dylib,python,macos,opencv,jpeg,Python,Macos,Opencv,Jpeg,试图让opencv for python在Mac OSX-Mavericks上运行,但在从python导入cv时,却一直无法获得libjpeg.8.dylib的图像 (最近更新自《山狮》) 这就是我所做的: 1.brew点击自制/科学 2.brew安装opencv 3.python 4.导入简历 -获取了以下错误: 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/usr/local/ceral/opencv/2.4.9/lib/python2.7/site packages/cv.

试图让opencv for python在Mac OSX-Mavericks上运行,但在从python导入cv时,却一直无法获得libjpeg.8.dylib的图像

(最近更新自《山狮》)

这就是我所做的:

1.
brew点击自制/科学

2.
brew安装opencv

3.
python

4.
导入简历

-获取了以下错误:
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/ceral/opencv/2.4.9/lib/python2.7/site packages/cv.py”,第1行,在
从cv2.cv导入*
导入错误:dlopen(/usr/local/ceral/opencv/2.4.9/lib/python2.7/site-packages/cv2.so,2):未加载库:/usr/local/lib/libjpeg.8.dylib
引用自:/usr/local/ceral/opencv/2.4.9/lib/libopencv_highgui.2.4.dylib
原因:找不到图像

  • 我查找了libjpeg.8.dylib,并在
    /usr/local/cillar/jpeg/8d/lib/
    中找到了它,显然,libopencv_highgui.2.4.dylib找的不是它
  • 我对Mac OS和自制有点陌生。有人能解释一下如何解决这个错误并让opencv运行吗?我预装了Mac附带的python,它们是用自制的python安装的


    谢谢。

    解决这个问题的快捷方法是在/usr/local/lib文件夹中创建一个符号链接,指向libjpeg.8.dylib的实际位置,如下所示:

    
    $ sudo ln -s /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib
    

    问题是OpenCV和Python期望LIJPEG.8DyLIB在/Ur/Posi/LIB中,但是HOBREBW安装在/Ur/Prase/Ciar中,因此恼人的错误。

    < P>我在BMac上使用BREW A安装OpenCV,遇到了同样的问题,但是它是用XCODE C++控制台应用程序。 但是,解决此问题的另一种方法是将
    cp
    文件复制到库位置

    cp /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib
    
    或者是后者,我不建议这样做,只是说明另一种方法是使用move
    mv
    将整个文件位置移动到/usr/local/lib/目录中

    mv /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/
    

    只是有一个类似的问题(在python中,
    import opencv
    一天对我有效,然后第二天它抛出了与您报告的相同的错误),这个解决方案对我有效:

    升级您的自制opencv,例如:

    brew升级opencv
    (或者在我的情况下
    brew升级opencv3


    希望这有帮助

    我在macOS上的枕头库也遇到了类似的问题。从源代码安装它对我来说很有用。我必须将它安装到
    /usr/local/
    ,枕头才能找到它。您需要命令行工具,这是第一行的目的:

    xcode-select --install
    curl -O -J -L http://www.ijg.org/files/jpegsrc.v8.tar.gz
    tar xvfz jpeg*tar.gz                 # Unzip and untar what you downloaded
    cd jpeg-8                            # Change directory to wherever it unpacked to
    ./configure --prefix="/usr/local"    # Configure with the necessary prefix
    make
    sudo make install
    

    这是有效的。有没有“更好”的解决方案?“更好”是指不脏的东西。您可以尝试修改python的搜索路径并执行
    import sys
    sys.path.append('/usr/local/cillar/')
    谢谢!谷歌一直让我失望,直到我看到了这个答案。为什么开源软件总是这样。总是,没有一次事情按预期进行。
    xcode-select --install
    curl -O -J -L http://www.ijg.org/files/jpegsrc.v8.tar.gz
    tar xvfz jpeg*tar.gz                 # Unzip and untar what you downloaded
    cd jpeg-8                            # Change directory to wherever it unpacked to
    ./configure --prefix="/usr/local"    # Configure with the necessary prefix
    make
    sudo make install