Metadata-Version: 2.1
Name: binaexperts
Version: 0.2.0
Summary: A dataset conversion SDK for different Computer Vision formats
Author: Nastaran Dab
Author-email: n.dab@binaexperts.com
License: MIT
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: PyYAML
Requires-Dist: requests


# BinaExperts SDK

This SDK provides tools for converting various dataset formats (COCO, YOLO, etc.) to and from the BinaExperts format. It is designed to be modular and extensible, allowing easy addition of new formats.

## Project Structure

```plaintext
binaexperts_sdk/
â”‚
â”œâ”€â”€ binaexperts/
â”‚   â”œâ”€â”€ __init__.py
â”‚   â”œâ”€â”€ convertors/
â”‚   â”‚   â”œâ”€â”€ __init__.py
â”‚   â”‚   â”œâ”€â”€ base.py        # Abstract base class for converters
â”‚   â”‚   â”œâ”€â”€ const.py        # COCO to/from BinaExperts converter
â”‚   â”‚   â”œâ”€â”€ convertor.py     # Factory class for creating converters
â”‚   â”œâ”€â”€ schema/
â”‚   â”‚   â”œâ”€â”€ __init__.py
â”‚   â”‚   â”œâ”€â”€ coco.py                  # Schema for COCO format
â”‚   â”‚   â”œâ”€â”€ yolo.py                  # Schema for YOLO format
â”‚   â”‚   â”œâ”€â”€ binaexperts.py           # Schema for BinaExperts format
â”‚   â”‚   â”œâ”€â”€ normalizer.py           # Schema for Normalizer format
â”‚   â”œâ”€â”€ utils/
â”‚   â”‚   â”œâ”€â”€ __init__.py
â”‚   â”‚   â”œâ”€â”€ file_utils.py            # Utility functions for file operations
â”‚   â”‚   â”œâ”€â”€ validation_utils.py      # Utility functions for validating data 
â”‚ 
â”‚
â”œâ”€â”€ setup.py                         # Setup script for packaging the SDK
â”œâ”€â”€ README.md                        # Project documentation
â””â”€â”€ requirements.txt                 # Python dependencies

```
## Installation

You can install the BinaExperts SDK directly from PyPI using `pip`:

```bash
pip install binaexperts
```
## Usage

Once you've installed the BinaExperts SDK, you can start converting datasets between different formats. Here's how to use the SDK:

### Basic Example

```python
from binaexperts.convertors.convertor import Convertor
convertor = Convertor()
# Convert COCO format to YOLO format
convertor.convert(
    source_path='path/to/input_coco.json', 
    target_path='path/to/output_yolo.txt',
    source_format='coco',
    target_format='yolo'
)
```
### Supported Formats

The BinaExperts SDK currently supports the following formats:

- COCO
- YOLO
- BinaExperts

## Contributing
Contributions are welcome!
To add support for more formats or improve the SDK, please refer to the Contributing section.
Please see the CONTRIBUTING.md for more details.

## License
This project is licensed under the MIT License - see the LICENSE file for details.
