我已经opencv
在几个月前可以正常工作的Mac上安装了,但现在不再工作了。
我有以下特点。-OpenCV:3.4.3.1-操作系统/平台:macOS 10.14-Python 3.6.5
我试图重新加载python script
使用opencv的位置。但是,我收到以下错误消息:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dlopen(/anaconda3/lib/python3.6/site-packages/cv2.so, 2): Library not loaded: /usr/local/opt/ilmbase/lib/libImath-2_2.12.dylib
Referenced from: /usr/local/Cellar/opencv/3.4.1_4/lib/libopencv_imgcodecs.3.4.dylib
Reason: image not found
然后,我尝试使用此站点的逐步说明重新安装opencv ,这是我首次成功安装opencv的步骤。
写完之后cd /usr/local/Cellar/opencv
,ls
我得到:3.4.1_4 3.4.3 3.4.3_1
。所以我得出结论,我机器上的最新版本3.4.3_1
是/usr/local/Cellar/opencv/3.4.3_1/cv2.cpython-37m-darwin.so
然后,如果我这样做$ cd /usr/local/Cellar/opencv/3.4.3_1
,并$ cd lib
,我得到(其中包括): python3.7
。然后,我做到以下几点:$ cd python3.7
然后$ cd site-packages
和$ pwd
我得到:/usr/local/Cellar/opencv/3.4.3_1/lib/python3.7/site-packages
我输入然后用python$ python3
获取
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 03:03:55)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
问题N°1说版本3.6.5
和opencv似乎有一个lib是不是很奇怪3.7
(不是3.6
)
键入>>> import sys
,然后>>> print(sys.path)
得到以下列表:
['', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload',
'/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages']
然后输入:
$ ln -s /usr/local/Cellar/opencv/3.4.3_1/lib/python3.7/site-packages/cv2.cpython-37m-darwin.so /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cv2.so
然后添加以下命令:
$ mkdir ~/Dev
$ cd ~/Dev
$ virtualenv -p python3 newcvtest
$ cd newcvtest
$ source bin/activate
(newcvtest) $ python --version
Python 3.6.5
$ pip install numpy
$ cd lib/python3.6/site-packages
$ ln -s /usr/local/Cellar/opencv/3.4.3_1/lib/python3.7/site-packages/cv2.cpython-37m-darwin.so
之后,应完成安装。但是我仍然收到相同的错误消息
我该怎么办?
实际opencv
已成功安装。
事实上,我不得不改变Path
中.json
的jupyter内核文件。首先,我检查了jupyter内核列表:
$ jupyter kernelspec list
julia-0.6 /Users/mymac/Library/Jupyter/kernels/julia-0.6
julia-1.0 /Users/mymac/Library/Jupyter/kernels/julia-1.0
python3 /Users/mymac/Library/Jupyter/kernels/python3
然后cd
,我在上面的python路径中找到了文件kernel.json
并打开了它:
{
"argv": [
"/path/to/python",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3",
"language": "python"
}
在该文件中,然后/path/to/python
通过在终端中键入以下命令时得到的python路径更改行:
$ which python
/Users/mymac/anaconda3/bin/python
重新启动Atom
,终于成功了!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句