当前 Anaconda 安装
Python3 上的 OpenCV3
问题是我想在 julia 中将 openCV 作为 python 包导入,但它只能与 python 2.7 一起运行。
您是否尝试使用 Anaconda Python 3.x 版安装 OpenCV3?
添加另一个 Python 2.7 环境
您还可以使用当前安装的 Anaconda 和 conda create 来创建安装了 Python 2.7 的新 Anaconda Python 环境:
conda create -n py27 python=2.7 anaconda
假设您使用的是完整的 Anaconda 发行版,我知道这将安装 完整 Anaconda Python 2.7 环境(请参阅下面的 miniconda),但它不会弄乱您以前的 Anaconda Python 3环境。
Conda.jl Julia 包
您可以使用Conda.jl 来管理 Julia 二进制依赖项:
此软件包允许使用conda 作为 Julia 的二进制提供程序。虽然Hombrew.jl、AptGet.jl 或WinRPM.jl 等其他二进制提供程序是特定于平台的,但Conda.jl 是跨平台的替代方案。与当前基于 Linux 的提供程序不同,它也可以在没有管理员权限的情况下使用。
conda 是一个包管理器,最初是作为 Anaconda Python 发行版的二进制包管理器,但它也提供任意包。 Conda.jl 没有使用完整的 Anaconda 发行版,而是使用 miniconda Python 环境,该环境仅包含 conda 及其依赖项。
您可以通过在 Julia 提示符下运行 Pkg.add("Conda") 来安装它。
安装并加载Conda.jl:
julia> # Pkg.add("Conda")
julia> using Conda
搜索包:
julia> Conda.search("opencv")
1-element Array{AbstractString,1}:
"opencv"
安装包:
julia> Conda.add("opencv")
Fetching package metadata: ....
Solving package specifications: ....................
Package plan for installation in environment /home/ismaelvc/.julia/v0.4/Conda/deps/usr:
The following packages will be downloaded:
package | build
---------------------------|-----------------
jpeg-8d | 0 699 KB
wheel-0.29.0 | py27_0 81 KB
opencv-2.4.10 | np110py27_1 9.2 MB
------------------------------------------------------------
Total: 10.0 MB
The following NEW packages will be INSTALLED:
jpeg: 8d-0
opencv: 2.4.10-np110py27_1
The following packages will be UPDATED:
wheel: 0.26.0-py27_1 --> 0.29.0-py27_0
Fetching packages ...
jpeg-8d-0.tar. 100% |##########| Time: 0:00:01 652.02 kB/s
wheel-0.29.0-p 100% |##########| Time: 0:00:00 336.94 kB/s
opencv-2.4.10- 100% |##########| Time: 0:00:10 962.48 kB/s
Extracting packages ...
[ COMPLETE ]|##########| 100%
Unlinking packages ...
[ COMPLETE ]|##########| 100%
Linking packages ...
[ COMPLETE ]|##########| 100%
总计:10.0 MB
检查它是否有效:
shell> .julia/v0.4/Conda/deps/usr/bin/python
Python 2.7.11 |Continuum Analytics, Inc.| (default, Dec 6 2015, 18:08:32)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import cv2
>>> cv2.__version__
'2.4.10'
>>>
在 Julia 内通过PyCall:
julia> using PyCall # Pkg.add("PyCall")
julia> @pyimport cv2
julia> @pyimport sys
julia> sys.version |> println
2.7.11 |Continuum Analytics, Inc.| (default, Dec 6 2015, 18:08:32)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]
julia> import Conda
julia> Conda.PYTHONDIR
"/home/ismaelvc/.julia/v0.4/Conda/deps/usr/bin"
为 PyCall 指定 python 版本
迷你康达
或者对于 Python 2.7 直接使用miniconda:
Conda.jl 默认安装 Python 版本 2.7.x miniconda(安装 ~/.julia/v0.x/Conda 中的所有内容)。
在 Linux 中:
通常很容易只安装你想要的东西,而不必使用 Anaconda(我假设你使用 Mac 或 PC,但对其他人仍然有用),示例使用 ArchLinux 包manager pacman,它与其他 Linux 发行版包管理器类似:yum、zipper、apt-get 等:
shell> sudo pacman -S opencv
warning: opencv-2.4.12.2-2 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Package (1) Old Version New Version Net Change Download Size
extra/opencv 2.4.12.2-2 2.4.12.2-2 0.00 MiB 7.10 MiB
Total Download Size: 7.10 MiB
Total Installed Size: 38.86 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] n
shell> python2
Python 2.7.11 (default, Dec 6 2015, 15:43:46)
[GCC 5.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'2.4.12.2'
>>>