# parquet

Python API: `luxonis_ml.ldf.parquet`

Parquet row schema of the Luxonis Data Format.

Annotations are flattened into one
[ParquetRecord](https://docs.luxonis.com/software-v3/ai-inference/model-source/training/luxonis-ml/luxonis-ml-api-reference/ldf/parquet.md)
per label before they are written.
[luxonis_ml.data.utils.parquet.ParquetFileManager](https://docs.luxonis.com/software-v3/ai-inference/model-source/training/luxonis-ml/luxonis-ml-api-reference/data/utils/parquet.md)
does the writing.

## Classes

### ParquetRecord

Single annotation row written to parquet.

> **Example**
> ```python
{
    "file": "/data/images/frame_001.jpg",
    "source_name": "image",
    "task_name": "detection",
    "class_name": "person",
    "instance_id": 0,
    "task_type": "boundingbox",
    "annotation": '{"x":0.1,"y":0.2,"w":0.3,"h":0.4}',
    "sample_metadata": '{"record_id":123,"camera":"left"}',
}
```

#### Attributes

##### annotation

Optional serialized annotation JSON.

##### class_name

Optional class name.

##### file

Image or source file path.

##### instance_id

Optional instance identifier.

##### sample_metadata

Serialized JSON object for record-level metadata. Empty metadata is stored as `"{}"`.

##### source_name

Source component name.

##### task_name

Task name.

##### task_type

Optional task type.
