コンテンツにスキップ

Pants で OpenCV を使う

Pants で OpenCV(cv2) を使う備忘録

cv2 が競合してマッピングされない

Pants はデフォルトでpythonのパッケージ名を紐付けてくれ、cv2もマッピングしてくれる。しかし、opencv-pythonopencv-python-headlessを使うと、cv2が競合してしまい、cv2が依存関係に追加されない。

解決方法

依存(lockfile)にopencv-pythonopencv-python-headlessがあるとcv2が競合してしまうので、片方を消す。片方を消すと、cv2が依存関係に自動で追加される。消した側のパッケージに依存している場合は、dependenciesに残した方のパッケージを追加する。

1
2
3
4
5
python_sources(
  dependencies=[
    "req#opencv-python-headless", # opencv-pythonが必要な場合は残したheadlessを使う
  ],
)

関連リンク