如何在python3中安装COCO PythonAPI

时间:2018-03-15 23:59:58

标签: python mscoco

COCO PythonAPI似乎只支持python2。但人们确实在python3环境中使用它。

我尝试了可能的方法来安装它,比如

python3 setup.py build_ext --inplace
python3 setup.py install

但由于python3 setup.py installcoco.py包含python2打印功能,cocoeval.py将失败。

更新:通过更新COCO PythonAPI项目解决。将问题留给面临同样问题的人。

5 个答案:

答案 0 :(得分:3)

请尝试以下步骤:

  1. 使用git clone将文件夹克隆到驱动器中。在这种情况下,它应该是git clone https://github.com/cocodataset/cocoapi.git
  2. 使用终端输入目录,或在目录中打开终端。
  3. 输入2to3 . -w。请注意,您可能必须安装包才能获得2to3。它是将代码从Python2转换为Python3的优雅工具。此代码将所有.py文件从Python2兼容转换为Python3兼容。
  4. 在终端中输入要设置的文件夹,或在安装目录中打开一个终端。
  5. 输入python3 setup.py install
  6. 这应该可以帮助您安装COCO或任何用于Python2的软件包,并使用Python3运行该软件包。干杯!

答案 1 :(得分:1)

安装

  1. 使用alternative one代替正式版本(Python 3出现问题)。将其安装在本地全局上(即,在任何虚拟环境之外)。您可以通过以下方式做到这一点:

    pip install git+https://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI

  2. 检查是否已全局安装:

    pip freeze | grep "pycocotools"

您应该在输出中看到类似pycocotools==2.0.0的内容。

  1. 现在,在您的虚拟环境中(conda或其他),首先使用 pip安装numpycython(如果尚未安装,则可能安装setuptools,然后:

    pip install pycocotools

验证

在您的项目中,导入(例如)from pycocotools import mask as mask,然后导入print(mask.__author__)。这应该打印出作者的名字,即 tsungyi

它在哪里?

已安装的软件包,与使用 pip 在虚拟环境中本地安装的任何其他软件包一样,将进入项目的外部库中的网站包装。这意味着它现在是您的虚拟环境的一部分,而不是您的项目的一部分。因此,其他可能希望使用您的代码的用户也必须在其virtual-env上重复此安装。


故障排除:

造成混乱的主要原因是,您没有在安装cocoapi之前安装所需的软件包,或者您已安装了所需的软件包,但安装了其他python版本。而且,当您要检查是否安装了某些软件时,可以使用python 3.6 进行检查,并查看它是否存在,但是实际上您正在使用python 3.7 运行所有命令。强>。因此,假设您正在使用 python3.7 。您需要确保:

  1. python -V为您提供了 python3.7 而不是其他版本,而pip -V为您提供了pip 19.2.3 from /home/<USER>/.local/lib/python3.7/site-packages/pip (python3.7),该版本实际上与您的默认python版本匹配。如果不是这种情况,则可以使用sudo update-alternatives --config python并按照一步一步的说明来更改默认python。

  2. 使用正确的 python pip 版本安装所有必需的软件包。您可以使用pippip3进行检查,以停止可能导致问题的任何差异: pip freeze | grep "<SUBSTRING-NAME-OF-PACKAGE>"pip show <PACKAGE-NAME>,以获取 pip 的最新版本。

  3. 要安装必需的软件包,请在确定(1)之后,运行: sudo apt install python-setuptools python3.7-dev python3-wheel build-essentialpip install numpy cython matplotlib


环境: 以上步骤已在 Ubuntu 18.4 python 3.6.8 pip 19.0.3

上进行了测试。

答案 2 :(得分:1)

如果您正在努力在 Ubuntu 20.04 和 python3.7 上构建 pycocotools 试试这个:

sudo apt-get install -y python3.7-dev
python3.7 -m pip install pycocotools>=2.0.1

答案 3 :(得分:0)

也可以下载和使用cocoapi的其他版本(我正在使用python 3.5)。您可以尝试以下解决方案:
How to download and use object detection datasets (e.g. coco or pascal)

答案 4 :(得分:0)

我已经完成了一个简单的步骤

pip install "git+https://github.com/philferriere/cocoapi.git#egg=pycocotools&subdirectory=PythonAPI"

**,然后您需要在路径上安装Visual C ++ 2015构建工具

enter image description here