Full Custom Tasks Support #125
11 errors, 24 skipped, 34 pass in 1m 41s
Annotations
Check failure on line 0 in tests.integration.test_multi_input
github-actions / Test Results
All 4 runs with error: test_sanity[example_multi_input.yaml] (tests.integration.test_multi_input)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 10s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 12s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 22s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 16s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[resnet_multitask_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[coco_multitask_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[segmentation_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[classification_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[coco_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[resnet_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[keypoint_bbox_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[detection_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_sanity[efficient_coco_model.yaml] (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError
Check failure on line 0 in tests.integration.test_sanity
github-actions / Test Results
All 4 runs with error: test_tuner (tests.integration.test_sanity)
artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
def create_coco_multitask_dataset():
url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
output_folder = "../data/"
output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
if not os.path.exists(output_folder):
os.makedirs(output_folder)
if not os.path.exists(output_zip) and not os.path.exists(
os.path.join(output_folder, "COCO_people_subset")
):
gdown.download(url, output_zip, quiet=False)
> parser = LuxonisParser(
output_zip,
dataset_name="coco_test_multitask",
delete_existing=True,
task_mapping={
LabelType.KEYPOINTS: "keypoints-task",
LabelType.SEGMENTATION: "segmentation-task",
LabelType.CLASSIFICATION: "classification-task",
LabelType.BOUNDINGBOX: "boundingbox-task",
},
)
tests/integration/conftest.py:54:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>
def __init__(
self,
dataset_dir: str,
*,
dataset_name: Optional[str] = None,
save_dir: Optional[Union[Path, str]] = None,
dataset_plugin: Optional[str] = None,
dataset_type: Optional[DatasetType] = None,
**kwargs,
):
"""High-level abstraction over various parsers.
Automatically recognizes the dataset format and uses the appropriate parser.
@type dataset_dir: str
@param dataset_dir: Path to the dataset directory or zip file. Can also be a
remote URL supported by L{LuxonisFileSystem}.
@type dataset_name: Optional[str]
@param dataset_name: Name of the dataset. If C{None}, the name is derived from
the name of the dataset directory.
@type save_dir: Optional[Union[Path, str]]
@param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
be downloaded to this directory. If C{None}, the dataset will be downloaded
to the current working directory.
@type dataset_plugin: Optional[str]
@param dataset_plugin: Name of the dataset plugin to use. If C{None},
C{LuxonisDataset} is used.
@type dataset_type: Optional[DatasetType]
@param dataset_type: If provided, the parser will use this dataset type instead
of trying to recognize it automatically.
@type kwargs: Dict[str, Any]
@param kwargs: Additional C{kwargs} to be passed to the constructor of specific
L{BaseDataset} implementation.
"""
save_dir = Path(save_dir) if save_dir else None
name = Path(dataset_dir).name
local_path = (save_dir or Path.cwd()) / name
self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
if self.dataset_dir.suffix == ".zip":
with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
zip_ref.extractall(unzip_dir)
self.dataset_dir = unzip_dir
if dataset_type:
self.dataset_type = dataset_type
self.parser_type = (
ParserType.DIR
if Path(self.dataset_dir / "train").exists()
else ParserType.SPLIT
)
else:
self.dataset_type, self.parser_type = self._recognize_dataset()
if dataset_plugin:
self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
dataset_plugin
)
else:
self.dataset_constructor = LuxonisDataset
dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
> self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError