Skip to content

resnet-50

Image ClassificationMicrosoft
@cf/microsoft/resnet-50

50 layers deep image classification CNN trained on more than 1M images from ImageNet

    Usage

    Workers - TypeScript

    export interface Env {
    AI: Ai;
    }
    export default {
    async fetch(request, env): Promise<Response> {
    const res = await fetch("https://cataas.com/cat");
    const blob = await res.arrayBuffer();
    const inputs = {
    image: [...new Uint8Array(blob)],
    };
    const response = await env.AI.run(
    "@cf/microsoft/resnet-50",
    inputs
    );
    return new Response(JSON.stringify(response));
    },
    } satisfies ExportedHandler<Env>;

    curl

    Terminal window
    curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/microsoft/resnet-50 \
    -X POST \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    --data-binary "@orange-llama.png"

    Parameters

    Input

    • 0 string

      The image to classify

    • 1 object

      • image array

        An array of integers that represent the image data constrained to 8-bit unsigned integer values

        • items number

          A value between 0 and 255 (unsigned 8bit)

    Output

    • items object

      • score number

        A confidence value, between 0 and 1, indicating how certain the model is about the predicted label

      • label string

        The predicted category or class for the input image based on analysis

    API Schemas

    The following schemas are based on JSON Schema

    {
    "oneOf": [
    {
    "type": "string",
    "format": "binary",
    "description": "The image to classify"
    },
    {
    "type": "object",
    "properties": {
    "image": {
    "type": "array",
    "description": "An array of integers that represent the image data constrained to 8-bit unsigned integer values",
    "items": {
    "type": "number",
    "description": "A value between 0 and 255 (unsigned 8bit)"
    }
    }
    },
    "required": [
    "image"
    ]
    }
    ]
    }