diff options
-rw-r--r-- | pkgs/development/python-modules/grad-cam/default.nix | 65 | ||||
-rw-r--r-- | pkgs/top-level/python-packages.nix | 2 |
2 files changed, 67 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/grad-cam/default.nix b/pkgs/development/python-modules/grad-cam/default.nix new file mode 100644 index 00000000000..4e43915c86d --- /dev/null +++ b/pkgs/development/python-modules/grad-cam/default.nix @@ -0,0 +1,65 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, matplotlib +, numpy +, opencv4 +, pillow +, scikitlearn +, torch +, torchvision +, ttach +, tqdm +}: + +buildPythonPackage rec { + pname = "grad-cam"; + version = "1.4.6"; + disabled = pythonOlder "3.6"; + format = "pyproject"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-sL4+UUfC60JWAgJPvXeVGUHAskuoceVYwYDrYlibUOE="; + }; + + postPatch = '' + substituteInPlace requirements.txt --replace "opencv-python" "opencv" + ''; + + propagatedBuildInputs = [ + matplotlib + numpy + opencv4 + pillow + scikitlearn + torchvision + ttach + tqdm + ]; + + # Let the user bring their own instance (as with torchmetrics) + buildInputs = [ + torch + ]; + + doCheck = false; # every nontrivial test tries to download a pretrained model + + pythonImportsCheck = [ + "pytorch_grad_cam" + "pytorch_grad_cam.metrics" + "pytorch_grad_cam.metrics.cam_mult_image" + "pytorch_grad_cam.metrics.road" + "pytorch_grad_cam.utils" + "pytorch_grad_cam.utils.image" + "pytorch_grad_cam.utils.model_targets" + ]; + + meta = with lib; { + description = "Advanced AI explainability for computer vision."; + homepage = "https://jacobgil.github.io/pytorch-gradcam-book"; + license = licenses.mit; + maintainers = with maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 267ceb9b858..22f1620332f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4065,6 +4065,8 @@ self: super: with self; { gql = callPackage ../development/python-modules/gql { }; + grad-cam = callPackage ../development/python-modules/grad-cam { }; + gradient = callPackage ../development/python-modules/gradient { }; gradient-utils = callPackage ../development/python-modules/gradient-utils { }; |