Export Image Transformations

Hello Roboflow,

I have generated a dataset version and I would like to see which transformations have been applied by Roboflow to which images in the downloaded zip file.

I’ve tried to view the Image Transformations on both Ubuntu and Windows through metadata and exif. Exif is empty.

For example, under my TC3 dataset, version 2023-03-18 8:26pm, file IMG_6094_MOV-15_jpg, I would like to obtain the following data programmatically:

image

Thanks

Hi, Any update, please? Thanks, Rusty

Hi @rburch,

As far as I know, there isn’t a way to obtain the specific transformations applied to a singular specific image. I think that Roboflow strips metadata and EXIF because they take up a lot of storage space, especially on large datasets. They clearly have the data for it so perhaps they might be able to share that through the API or something in the future.

You can get the general augmentations set for a generated dataset version using the Roboflow API.

Okay, thank you, stellasphere.

1 Like

@leo @rburch actually, you can view the metadata for each image like so:

  1. Select View All Images on the generated version, or click a specific image

  2. Select Raw Data on the left side of the labeling UI

  • Accessing Raw Data from my own project, projects access with app.roboflow.com link:

  1. The image transformations are available under preprocessing, preprocessingParsed, and transforms

Accessing Raw Data for any public dataset on Roboflow Universe, datasets with a universe.roboflow.com link:

"preprocessing": [
        "auto-orient",
        "crop:[87,0.486829,0.503107]",
        "resize:[\"Stretch to\",640,640]",
        "remap:[\"1d9eaaaa56769d02cda2b29dc8665ba5\"]",
        "rotate:[5]",
        "shear:[1,-2]",
        "hue:[12]",
        "saturation:[-17]",
        "brightness:[5]",
        "exposure:[7]",
        "blur:[0.25]",
        "mosaic:[29,56,[[0.291741,0.141465],[0.533258,0.742112],[0.065442,0.526781],[0.970705,0.074268]]]",
        "cutout:[{\"masks\":[[2,0.43250102048297934,0.8456750688005907],[2,0.49829587775139217,0.44272134765927684],[2,0.31078580081852003,0.15764499758907724],[2,0.13440206914103037,0.1760674897259944],[2,0.9279662235455297,0.2670987271649703],[2,0.5777328113880293,0.8224566190284506]]}]"
    ]
  • Metadata for preprocessingParsed for the image linked above:
    "preprocessingParsed": [
        {
            "name": "Auto-Orient",
            "value": "Applied"
        },
        {
            "name": "Crop",
            "value": "Keep 87%<br />Centered on 49%, 50%"
        },
        {
            "name": "Resize",
            "value": "Stretch to 640x640"
        },
        {
            "name": "Modify Classes",
            "value": "Applied"
        },
        {
            "name": "Rotation",
            "value": "5°"
        },
        {
            "name": "Shear",
            "value": "X: 1°<br/>Y: -2°"
        },
        {
            "name": "Hue",
            "value": "12°"
        },
        {
            "name": "Saturation",
            "value": "-17%"
        },
        {
            "name": "Brightness",
            "value": "5%"
        },
        {
            "name": "Exposure",
            "value": "7%"
        },
        {
            "name": "Blur",
            "value": "0.25px"
        },
        {
            "name": "Mosaic",
            "value": "Applied"
        },
        {
            "name": "Cutout",
            "value": "Applied"
        }
    ]
  • Metadata for transforms for the image linked above:
    "transforms": "[\n    \"auto-orient\",\n    \"crop:[87,0.486829,0.503107]\",\n    \"resize:[\\\"Stretch to\\\",640,640]\",\n    \"remap:[\\\"1d9eaaaa56769d02cda2b29dc8665ba5\\\"]\",\n    \"rotate:[5]\",\n    \"shear:[1,-2]\",\n    \"hue:[12]\",\n    \"saturation:[-17]\",\n    \"brightness:[5]\",\n    \"exposure:[7]\",\n    \"blur:[0.25]\",\n    \"mosaic:[29,56,[[0.291741,0.141465],[0.533258,0.742112],[0.065442,0.526781],[0.970705,0.074268]]]\",\n    \"cutout:[{\\\"masks\\\":[[2,0.43250102048297934,0.8456750688005907],[2,0.49829587775139217,0.44272134765927684],[2,0.31078580081852003,0.15764499758907724],[2,0.13440206914103037,0.1760674897259944],[2,0.9279662235455297,0.2670987271649703],[2,0.5777328113880293,0.8224566190284506]]}]\"\n]"
  • All Raw Data for the image linked above:
{
    "camera": "Generated by Roboflow",
    "classes": {
        "Excavator": 166,
        "bus": 1,
        "truck and trailer": 7,
        "truck": 35,
        "NO-Mask": 552,
        "Hardhat": 899,
        "mini-van": 7,
        "vehicle": 122,
        "trailer": 15,
        "Safety Vest": 453,
        "Gloves": 306,
        "helmet": 3,
        "NO-Safety Vest": 629,
        "fire hydrant": 6,
        "semi": 7,
        "van": 28,
        "Mask": 207,
        "wheel loader": 127,
        "NO-Hardhat": 479,
        "Ladder": 58,
        "Safety Cone": 600,
        "SUV": 16,
        "dump truck": 157,
        "sedan": 54,
        "Person": 1230,
        "machinery": 45
    },
    "datasets": [
        "QNc4TlDewJIZpOmF5E0g"
    ],
    "destination": "0055c568e64f5ad19017f5ccee20f1fe",
    "height": 640,
    "id": "X10Ikzjl5AKc8Kv2awhA",
    "label": [],
    "labels": [],
    "name": "image_23.jpg",
    "numSteps": 13,
    "owner": "zD7y6XOoQnh7WC160Ae7",
    "preprocessing": [
        "auto-orient",
        "crop:[87,0.486829,0.503107]",
        "resize:[\"Stretch to\",640,640]",
        "remap:[\"1d9eaaaa56769d02cda2b29dc8665ba5\"]",
        "rotate:[5]",
        "shear:[1,-2]",
        "hue:[12]",
        "saturation:[-17]",
        "brightness:[5]",
        "exposure:[7]",
        "blur:[0.25]",
        "mosaic:[29,56,[[0.291741,0.141465],[0.533258,0.742112],[0.065442,0.526781],[0.970705,0.074268]]]",
        "cutout:[{\"masks\":[[2,0.43250102048297934,0.8456750688005907],[2,0.49829587775139217,0.44272134765927684],[2,0.31078580081852003,0.15764499758907724],[2,0.13440206914103037,0.1760674897259944],[2,0.9279662235455297,0.2670987271649703],[2,0.5777328113880293,0.8224566190284506]]}]"
    ],
    "preprocessingParsed": [
        {
            "name": "Auto-Orient",
            "value": "Applied"
        },
        {
            "name": "Crop",
            "value": "Keep 87%&lt;br />Centered on 49%, 50%"
        },
        {
            "name": "Resize",
            "value": "Stretch to 640x640"
        },
        {
            "name": "Modify Classes",
            "value": "Applied"
        },
        {
            "name": "Rotation",
            "value": "5°"
        },
        {
            "name": "Shear",
            "value": "X: 1°&lt;br/>Y: -2°"
        },
        {
            "name": "Hue",
            "value": "12°"
        },
        {
            "name": "Saturation",
            "value": "-17%"
        },
        {
            "name": "Brightness",
            "value": "5%"
        },
        {
            "name": "Exposure",
            "value": "7%"
        },
        {
            "name": "Blur",
            "value": "0.25px"
        },
        {
            "name": "Mosaic",
            "value": "Applied"
        },
        {
            "name": "Cutout",
            "value": "Applied"
        }
    ],
    "source": "X10Ikzjl5AKc8Kv2awhA",
    "split": "train",
    "split.QNc4TlDewJIZpOmF5E0g.29": "train",
    "status": "generated",
    "transforms": "[\n    \"auto-orient\",\n    \"crop:[87,0.486829,0.503107]\",\n    \"resize:[\\\"Stretch to\\\",640,640]\",\n    \"remap:[\\\"1d9eaaaa56769d02cda2b29dc8665ba5\\\"]\",\n    \"rotate:[5]\",\n    \"shear:[1,-2]\",\n    \"hue:[12]\",\n    \"saturation:[-17]\",\n    \"brightness:[5]\",\n    \"exposure:[7]\",\n    \"blur:[0.25]\",\n    \"mosaic:[29,56,[[0.291741,0.141465],[0.533258,0.742112],[0.065442,0.526781],[0.970705,0.074268]]]\",\n    \"cutout:[{\\\"masks\\\":[[2,0.43250102048297934,0.8456750688005907],[2,0.49829587775139217,0.44272134765927684],[2,0.31078580081852003,0.15764499758907724],[2,0.13440206914103037,0.1760674897259944],[2,0.9279662235455297,0.2670987271649703],[2,0.5777328113880293,0.8224566190284506]]}]\"\n]",
    "updated": {
        "_seconds": 1681877368,
        "_nanoseconds": 298000000
    },
    "updatedDate": "Apr 18, 2023",
    "updatedTime": "11:09PM",
    "updatedTimezone": "-05:00",
    "versions": [
        "QNc4TlDewJIZpOmF5E0g/29"
    ],
    "width": 640
}

Thank you, @Mohamed, for the reply. Is there a way to export the raw data inside the dataset zip file or to retrieve the raw data for an image through the roboflow python api?

@rburch Generate a version with no preprocessing or augmentation settings other than Auto-Orient (to remove EXIF data), and the raw images will be generated and available to export in your selected annotation format.

Export in COCO JSON format so you only have a few label files and the rest of the output is images.

You can also do this via API or the Python Package:

Roboflow Python Package: Create Versions and Train Models - Roboflow]

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.