pytorch3d perception skill environment & flake update
This commit is contained in:
parent
f6e24cc5f7
commit
ea1921fd50
3 changed files with 133 additions and 31 deletions
54
flake.lock
generated
54
flake.lock
generated
|
@ -4,6 +4,24 @@
|
|||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1689068808,
|
||||
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
||||
|
@ -18,31 +36,13 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1685518550,
|
||||
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1690924695,
|
||||
"narHash": "sha256-1yshNzds/qJztMoJk0Sa2xhKwSLaOAuepR6ABWbrgRU=",
|
||||
"lastModified": 1695298503,
|
||||
"narHash": "sha256-eDuN/+479v5gfVqwmJRYVX/Skh+TYSifAXdJ9xMqiP4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7282565b1ca9ba7b293b899411e70167f4a7c1ff",
|
||||
"rev": "b1370f72c01cee73c8648baf158453d60f3127e2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -54,11 +54,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1687112859,
|
||||
"narHash": "sha256-oJhMiKnJeb47gTxyyIgAJf+aWC4IbVmG3wgL3ZVJ0Eg=",
|
||||
"lastModified": 1691006197,
|
||||
"narHash": "sha256-DbtxVWPt+ZP5W0Usg7jAyTomIM//c3Jtfa59Ht7AV8s=",
|
||||
"owner": "lopsided98",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f68a0d0fd7539d93c7454989f71fd1c824f3b46f",
|
||||
"rev": "66aedfd010204949cb225cf749be08cb13ce1813",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -81,11 +81,11 @@
|
|||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1690347395,
|
||||
"narHash": "sha256-FUAvjcpVyDMZ2zCqUrpGlLtRZlF3PqW2alpyi82bMa8=",
|
||||
"lastModified": 1691109346,
|
||||
"narHash": "sha256-TtmW6aWNITZDpmwTZhTka7DnT1b6FdgY0sgcT8s6tRg=",
|
||||
"owner": "lopsided98",
|
||||
"repo": "nix-ros-overlay",
|
||||
"rev": "3205dadcff4e1fbc779ce3962bafcf3e9f3e931b",
|
||||
"rev": "c89eed8b34d2947c851df29c09c1cb444282b63e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
38
flake.nix
38
flake.nix
|
@ -18,6 +18,21 @@
|
|||
# freecad = prev.freecad.overrideAttrs
|
||||
# (old: { cmakeFlags = old.cmakeFlags ++ [ "-DBUILD_GUI=OFF" ]; });
|
||||
# cmakeFlag -BUILD_GUI=OFF for build without gui
|
||||
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [
|
||||
(
|
||||
python-final: python-prev: {
|
||||
iopath = python-prev.iopath.overridePythonAttrs (oldAttrs: {
|
||||
version = "unstable";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "facebookresearch";
|
||||
repo = "iopath";
|
||||
rev = "9dcb63a46447556460fdb65c21aa6d094a7a788c";
|
||||
hash = "sha256-X1LTOfbIAMy6gToNYS0JpeJpHi0jHPsEjrnCq2c9U0E=";
|
||||
};
|
||||
});
|
||||
}
|
||||
)
|
||||
];
|
||||
};
|
||||
|
||||
# overrided packages and attributes for nix-ros-overlay
|
||||
|
@ -38,17 +53,18 @@
|
|||
blender = pkgs.callPackage ./pkgs/misc/blender { };
|
||||
bpy = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/bpy { };
|
||||
pysdf = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/pysdf { };
|
||||
pytorch3d = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/pytorch3d { };
|
||||
mayo = pkgs.libsForQt5.callPackage ./pkgs/misc/mayo { };
|
||||
darknet = pkgs.callPackage ./pkgs/misc/darknet { };
|
||||
fstl = pkgs.libsForQt5.callPackage ./pkgs/misc/fstl { };
|
||||
open3d = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/open3d { };
|
||||
open3d = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/open3d { };
|
||||
unified-planning = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/unified-planning { };
|
||||
blenderproc = pkgs.python3Packages.callPackage ./blenderproc.nix { };
|
||||
test-script = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/test-script { };
|
||||
webdataset = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/webdataset { };
|
||||
ansitable = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/ansitable { };
|
||||
megapose6d = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/megapose6d { webdataset = webdataset; };
|
||||
spatialmath = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/spatialmath { ansitable = ansitable; };
|
||||
megapose6d = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/megapose6d { inherit webdataset; };
|
||||
spatialmath = pkgs.python3Packages.callPackage ./pkgs/development/python-modules/spatialmath { inherit ansitable; };
|
||||
slic3r = pkgs.callPackage ./pkgs/misc/slic3r { };
|
||||
in
|
||||
{
|
||||
|
@ -62,7 +78,7 @@
|
|||
};
|
||||
|
||||
packages = {
|
||||
inherit mayo blender bpy pysdf fstl darknet unified-planning slic3r megapose6d test-script;
|
||||
inherit mayo blender bpy pysdf fstl unified-planning slic3r megapose6d test-script pytorch3d;
|
||||
gazebo = ros.humble.gazebo;
|
||||
};
|
||||
|
||||
|
@ -108,6 +124,20 @@
|
|||
packages = [ mayo blender bpy pysdf fstl darknet slic3r ];
|
||||
};
|
||||
|
||||
devShells.perception =
|
||||
let
|
||||
rbs-packages = p: with p; [
|
||||
pytorch3d
|
||||
torch
|
||||
torchvision
|
||||
torchaudio
|
||||
detectron2
|
||||
];
|
||||
in
|
||||
pkgs.mkShell {
|
||||
packages = [ (pkgs.python3.withPackages rbs-packages) ];
|
||||
};
|
||||
|
||||
devShells.default =
|
||||
let
|
||||
my-python-packages = p: with p; [
|
||||
|
|
72
pkgs/development/python-modules/pytorch3d/default.nix
Normal file
72
pkgs/development/python-modules/pytorch3d/default.nix
Normal file
|
@ -0,0 +1,72 @@
|
|||
{ lib
|
||||
, pkgs
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, torch
|
||||
, fvcore
|
||||
, pyopengl
|
||||
, pyopengl-accelerate
|
||||
, pybind11
|
||||
, python3
|
||||
, scikit-image
|
||||
, black
|
||||
, usort
|
||||
, flake8
|
||||
, matplotlib
|
||||
, tqdm
|
||||
, jupyter
|
||||
, imageio
|
||||
, plotly
|
||||
, opencv
|
||||
, iopath
|
||||
, ninja
|
||||
}:
|
||||
buildPythonPackage rec {
|
||||
pname = "pytorch3d";
|
||||
version = "0.7.3";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facebookresearch";
|
||||
repo = "pytorch3d";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-lI3z4Z7j4zJNSXsqueBQqBe8gslmLJRjW4DM8CQ9A0A=";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
export MAX_JOBS=$NIX_BUILD_CORES;
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with pkgs; [ which pybind11 ninja ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
torch
|
||||
fvcore
|
||||
iopath
|
||||
pyopengl
|
||||
pyopengl-accelerate
|
||||
pybind11
|
||||
scikit-image
|
||||
black
|
||||
usort
|
||||
flake8
|
||||
matplotlib
|
||||
tqdm
|
||||
jupyter
|
||||
imageio
|
||||
plotly
|
||||
opencv
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "pytorch3d" ];
|
||||
doCheck = false;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "PyTorch3D is FAIR's library of reusable components for deep learning with 3D data";
|
||||
homepage = "https://github.com/facebookresearch/pytorch3d";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue