Image Recognition and Processing API API Reference
Image Recognition and Processing APIs let you use Machine Learning to recognize and process images, and also perform useful image modification operations.
Swagger OpenAPI Specification | .NET Framework Client | .NET Core Client | Java Client | Node.JS Client | Python Client | Drupal Client
API Endpoint
https://api.cloudmersive.com
Schemes: https
Version: v1
Authentication
Apikey
API Key Authentication
Artistic
Transform an image into an artistic painting automatically
Uses machine learning to automatically transform an image into an artistic painting. Due to depth of AI processing, depending on image size this operation can take up to 20 seconds.
The style of the painting to apply. To start, try "udnie" a painting style. Possible values are: "udnie", "wave", "la_muse", "rain_princess".
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert
Convert input image to PNG format
Converts the input image into PNG format. Transparency is preserved when present. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to JPG, JPEG format
Converts the input image into JPEG/JPG format. Customize encoding parameters. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Set the JPEG quality level; lowest quality is 1 (highest compression), highest quality (lowest compression) is 100; recommended value is 75
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to GIF format
Converts the input image into GIF format. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to Photoshop PSD format
Converts the input image into PSD format. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to Bitmap BMP format
Converts the input image into PSD format. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to WebP format
Converts the input image into WebP format. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert input image to TIFF format
Converts the input image into TIFF format. Supported input file formats include AAI, ART, ARW, AVS, BPG, BMP, BMP2, BMP3, BRF, CALS, CGM, CIN, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DIB, DJVU, DNG, DOT, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EXR, FAX, FIG, FITS, FPX, GIF, GPLT, GRAY, HDR, HEIC, HPGL, HRZ, ICO, ISOBRL, ISBRL6, JBIG, JNG, JP2, JPT, J2C, J2K, JPEG/JPG, JXR, MAT, MONO, MNG, M2V, MRW, MTV, NEF, ORF, OTB, P7, PALM, PAM, PBM, PCD, PCDS, PCL, PCX, PDF, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PNG, PNG8, PNG00, PNG24, PNG32, PNG48, PNG64, PNM, PPM, PSB, PSD, PTIF, PWB, RAD, RAF, RGB, RGBA, RGF, RLA, RLE, SCT, SFW, SGI, SID, SUN, SVG, TGA, TIFF, TIM, UIL, VIFF, VICAR, VBMP, WDP, WEBP, WPG, X, XBM, XCF, XPM, XWD, X3F, YCbCr, YCbCrA, YUV.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Edit
Adaptively adjust the contrast of the image to be more appealing and easy to see
Uses Gamma to adjust the contrast adaptively the way the human eye sees the world. Results significantly improve the viewability and visual appeal of the image.
Gamma value to adjust the contrast in the image. Recommended value is 2.0. Values between 0.0 and 1.0 will reduce contrast, while values above 1.0 will increase contrast.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Rotate an image any number of degrees
Rotates an image by an arbitrary number of degrees
Degrees to rotate the image; values range from 0.0 to 360.0.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Crop an image to a rectangular area
Crop an image to a target rectangular area
The left edge of the rectangular crop area in pixels (X).
The top edge of the rectangular crop area in pixels (Y).
The width of the rectangular crop area in pixels.
The height of the rectangular crop area in pixels.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Crop an image to an circular area
Crop an image to a target circular area
The left edge of the circular crop area in pixels (X).
The top edge of the circular crop area in pixels (Y).
The radius of the circular crop area in pixels.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Invert, negate the colors in the image
Inverts (negates) all of the colors in the image. If the image contains transparency, the transparency will first be removed prior to inverting the image.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Remove transparency from the image
Removes any active transparency in the image. Effectively renders the image at the same resolution, in the same file format, over a white background, thus removing transparency.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Remove EXIF data from the image
Removes any EXIF data and profiles .
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Normalizes image rotation and removes EXIF rotation data
Automatically orients the input image based on EXIF information and then removes the EXIF information. EXIF is an additional set of information stored in some images taken with cell phone cameras based on the orientation of the camera. By normalizing rotation and removing EXIF data these images become much easier to process.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Add a customizeable drop shadow to an image
Add a customizeable drop shadow to the image
Horizontal (X) offset of the drop shadow
Vertical (Y) offset of the drop shadow
Sigma (blur distance) of the drop shadow
Opacity of the drop shadow; 0 is 0% and 100 is 100%
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Composite two images together
Composites two input images together; a layered image onto a base image. The first image you input is the base image. The second image (the layered image) will be composited on top of this base image. Supports PNG transparency. To control padding you can include transparent pixels at the border(s) of your layered images as appropriate.
Location to composite the layered images; possible values are: "center", "top-left", "top-center", "top-right", "center-left", "center-right", "bottom-left", "bottom-center", "bottom-right"
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Image to layer on top of the base image.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Composite two images together precisely
Composites two input images together; a layered image onto a base image. Position is based on distance in pixels from each side. The first image you input is the base image. The second image (the layered image) will be composited on top of this base image. Supports PNG transparency. To control padding you can include transparent pixels at the border(s) of your layered images as appropriate. Providing multiple parameters in a single axis (for example top and bottom) is not recommended, since only one of the parameters will be used per axis.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Image to layer on top of the base image.
Optional; Desired distance in pixels from the top of the base image to the top of the layered image.
Optional; Desired distance in pixels from the bottom of the base image to the bottom of the layered image.
Optional; Desired distance in pixels from the left side of the base image to the left side of the layered image.
Optional; Desired distance in pixels from the right side of the base image to the right side of the layered image.
Optional; Desired width of the layered image in pixels. Leave height empty or 0 to automatically scale the image proportionally.
Optional; Desired height of the layered image in pixels. Leave width empty or 0 to automatically scale the image proportionally.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Draw text onto an image
Draw one or more pieces of text, with customized visuals, onto an image
Draw text parameters
Code Example:
Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"TextToDraw": [
{
"Text": "string",
"FontFamilyName": "string",
"FontSize": "number (double)",
"Color": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
]
}
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Draw a polygon onto an image
Draw one or more polygons, with customized visuals, onto an image
Polygon drawing request parameters
Code Example:
Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"PolygonsToDraw": [
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"Points": [
{
"X": "number (double)",
"Y": "number (double)"
}
]
}
]
}
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Draw a rectangle onto an image
Draw one or more rectangles, with customized visuals, onto an image
Draw rectangle parameters
Code Example:
Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"RectanglesToDraw": [
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
]
}
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Face
Detect and find faces in an image
Locate the positions of all faces in an image
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
Detect and find faces and landmarks eyes and nose and mouth in image
Locate the positions of all faces in an image, along with the eyes, eye brows, nose and mouth components of each
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"LeftEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LeftEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"BottomAndSidesOfFace": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBridge": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBottom": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsInnerOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsOuterOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
]
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
Compare and match faces
Find the faces in an input image, and compare against a reference image to determine if there is a match against the face in the reference image. The reference image (second parameter) should contain exactly one face.
Image file to perform the operation on; this image can contain one or more faces which will be matched against face provided in the second image. Common file formats such as PNG, JPEG are supported.
Image of a single face to compare and match against.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"HighConfidenceMatch": "boolean",
"MatchScore": "number (double)"
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
Crop image to face with square crop
Crop an image to the face (rectangular crop). If there is more than one face present, choose the first one.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Crop image to face with round crop
Crop an image to the face (circular/round crop). If there is more than one face present, choose the first one.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Detect the age of people in an image
Identify the age, position, and size of human faces in an image, along with a recognition confidence level. People in the image do NOT need to be facing the camera; they can be facing away, edge-on, etc.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"PeopleWithAge": [
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"AgeClassificationConfidence": "number (double)",
"AgeClass": "string",
"Age": "number (double)"
}
],
"PeopleIdentified": "integer (int32)"
}
Detect the gender of people in an image
Identify the gender, position, and size of human faces in an image, along with a recognition confidence level. People in the image should be facing the camera.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"PersonWithGender": [
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"GenderClassificationConfidence": "number (double)",
"GenderClass": "string"
}
],
"PeopleIdentified": "integer (int32)"
}
Filter
Perform a guassian blur on the input image
Perform a gaussian blur on the input image
Radius in pixels of the blur operation; a larger radius will produce a greater blur effect
Sigma, or variance, of the gaussian blur operation
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Perform a motion blur on the input image
Perform a motion blur on the input image at a specific angle
Radius in pixels of the blur operation; a larger radius will produce a greater blur effect
Sigma, or variance, of the motion blur operation
Angle of the motion blur in degrees
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Detect and highlight edges in an image
Perform an edge detection operation on the input image
Radius in pixels of the edge detection operation; a larger radius will produce a greater effect
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Emboss an image
Perform an emboss operation on the input image
Radius in pixels of the emboss operation; a larger radius will produce a greater effect
Sigma, or variance, of the emboss operation
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Convert image to black-and-white grayscale
Remove color from the image by converting to a grayscale, black-and-white image
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Despeckle to remove point noise from the image
Remove point noise / despeckle the input image
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Swirl distort the image
Swirl distort the image by the specified number of degrees
Degrees of swirl
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Posterize the image by reducing distinct colors
Reduce the unique number of colors in the image to the specified level
Number of unique colors to retain in the output image
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Info
Returns the image metadata including EXIF and resolution
Returns the metadata information on the image, including file type, EXIF (if available), and resolution.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"IsValidImage": "boolean",
"FileFormat": "string",
"Width": "integer (int32)",
"Height": "integer (int32)",
"BitDepth": "integer (int32)",
"HasTransparency": "boolean",
"ColorSpace": "string",
"ExifProfileName": "string",
"ExifValues": [
{
"Tag": "string",
"DataType": "string",
"DataValue": "string"
}
]
}
Returns the dominant colors of the image
Uses advanced image processing to extract the top 5 dominant colors in the image, returned in the order of dominance with the most-dominant color first. These are the primary perceptual colors used in the image as perceived by a viewer.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"DominantColors": [
{
"R": "integer (int32)",
"G": "integer (int32)",
"B": "integer (int32)"
}
]
}
Nsfw
Not safe for work NSFW racy content classification
Classify an image into Not Safe For Work (NSFW)/Porn/Racy content and Safe Content.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Score": "number (double)",
"ClassificationOutcome": "string"
}
Recognize
Describe an image in natural language
Generate an English language text description of the image as a sentence.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Highconfidence": "boolean",
"BestOutcome": {
"ConfidenceScore": "number (double)",
"Description": "string"
},
"RunnerUpOutcome": {
"ConfidenceScore": "number (double)",
"Description": "string"
}
}
Find the location of a symbol in an image
Determine if an image contains a symbol, and if so, the location of that symbol in the image.
Image file to search through for the target image.
Image to find in the input image.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"MatchScore": "number (double)",
"XLeft": "integer (int32)",
"YTop": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)"
}
Detect objects including types and locations in an image
Identify the position, size and description of objects in an image, along with a recognition confidence level. Detects both human people and objects in an image.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Objects": [
{
"ObjectClassName": "string",
"Height": "integer (int32)",
"Width": "integer (int32)",
"Score": "number (double)",
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"ObjectCount": "integer (int32)"
}
Detect people including locations in an image
Identify the position, and size of human people in an image, along with a recognition confidence level. People in the image do NOT need to be facing the camera; they can be facing away, edge-on, etc.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"Objects": [
{
"ObjectClassName": "string",
"Height": "integer (int32)",
"Width": "integer (int32)",
"Score": "number (double)",
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"ObjectCount": "integer (int32)"
}
Detect vehicle license plates in an image
Identify the position, and size, and content of vehicle license plates in an image. License plates should be within 15-20 degrees on-axis to the camera. Supported image formats are JPG, PNG and BMP.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"DetectedLicensePlates": [
{
"LicensePlateText_BestMatch": "string",
"LicensePlateText_RunnerUp": "string",
"LocationX": "integer (int32)",
"LocationY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"LicensePlateRecognitionConfidenceLevel": "number (double)"
}
],
"DetectedLicensePlateCount": "integer (int32)"
}
Detect and unskew a photo of a document
Detect and unskew a photo of a document (e.g. taken on a cell phone) into a perfectly square image. Great for document scanning applications; once unskewed, this image is perfect for converting to PDF using the Convert API or optical character recognition using the OCR API.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Optional, post-processing effects to apply to the email, default is None. Possible values are None and BlackAndWhite (force the image into a black and white view to aid in OCR operations).
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
"string (byte)"
Detect large text in a photo
Identify the position, and size of large text within a photograph. Identify the location of large text in a photo - such as signs, titles, etc. and other forms of large, low-density text. Not suitable for high-density text (e.g. scans of documents, receipts, etc.) for OCR purposes - for OCR, please see our Deep Learning OCR APIs.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"TextItems": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)"
}
],
"TextItemsCount": "integer (int32)"
}
Detect fine text in a photo of a document
Identify the position, and size of small/fine text within a photograph of a document. Identify the location of small text in a photo - such as words and other forms of high density text. Can be used on a scan of a document or a photograph (e.g. smartphone camera) of a document, page or receipt. For OCR purposes - please see our Deep Learning OCR APIs.
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
"Successful": "boolean",
"TextItems": [
{
"TopLeftX": "integer (int32)",
"TopLeftY": "integer (int32)",
"TopRightX": "integer (int32)",
"TopRightY": "integer (int32)",
"BottomLeftX": "integer (int32)",
"BottomLeftY": "integer (int32)",
"BottomRightX": "integer (int32)",
"BottomRightY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"Angle": "number (double)"
}
],
"TextItemsCount": "integer (int32)"
}
Resize
Resize an image
Resize an image to a specific width and specific height. Resize is EXIF-aware.
Width of the output image - final image will be exactly this width
Height of the output image - final image will be exactly this height
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
Resize an image while preserving aspect ratio
Resize an image to a maximum width and maximum height, while preserving the image's original aspect ratio. Resize is EXIF-aware.
Maximum width of the output image - final image will be as large as possible while less than or equial to this width
Maximum height of the output image - final image will be as large as possible while less than or equial to this height
Image file to perform the operation on. Common file formats such as PNG, JPEG are supported.
Code Example:
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"string (byte)"
TextGeneration
Create an image of handwriting in PNG format
Uses Deep Learning to generate realistic handwriting and returns the result as a PNG image
Draw text parameters
Code Example:
Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
"TextInput": "string",
"TargetWidth": "integer (int32)",
"StrokeWidth": "integer (int32)",
"Color": "string"
}
OK
Response Content-Types: application/octet-stream
Response Example (200 OK)
"object"
Schema Definitions
DrawTextRequest: object
Request to draw one or more pieces of text onto an image
- BaseImageBytes: string (byte)
-
Image to draw text on, in bytes. You can also use the BaseImageUrl instead to supply image input as a URL
- BaseImageUrl: string
-
Image to draw text on, as an HTTP or HTTPS fully-qualified URL
- TextToDraw: DrawTextInstance
-
One or more pieces of text to draw onto the image
-
DrawTextInstance
Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"TextToDraw": [
{
"Text": "string",
"FontFamilyName": "string",
"FontSize": "number (double)",
"Color": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
]
}
DrawTextInstance: object
Text instance to draw on an image
- Text: string
-
Text string to draw
- FontFamilyName: string
-
Font Family to use. Leave blank to default to "Arial". Supported fonts including Arial, Calibri, Cambria, Candara, Consolas, Constantia, Corbel, Courier New, Courier Regular, Georgia, Impact Regular, Lucida, Modern Regular, Tahoma, Times New Roman, Verdana
- FontSize: number (double)
-
Font size to use.
- Color: string
-
Color to use - can be a hex value (with #) or HTML common color name
- X: number (double)
-
Pixel location of the left edge of the text location
- Y: number (double)
-
Pixel location of the top edge of the text location
- Width: number (double)
-
Width in pixels of the text box to draw the text in; text will wrap inside this box
- Height: number (double)
-
Height in pixels of the text box to draw the text in; text will wrap inside this box
Example
{
"Text": "string",
"FontFamilyName": "string",
"FontSize": "number (double)",
"Color": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
DrawPolygonRequest: object
Request to draw one or more polygons on a base image
- BaseImageBytes: string (byte)
-
Image to draw polygons on, in bytes. You can also use the BaseImageUrl instead to supply image input as a URL
- BaseImageUrl: string
-
Image to draw polygons on, as an HTTP or HTTPS fully-qualified URL
- PolygonsToDraw: DrawPolygonInstance
-
Polygons to draw on the image. Polygons are drawn in index order.
-
DrawPolygonInstance
Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"PolygonsToDraw": [
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"Points": [
{
"X": "number (double)",
"Y": "number (double)"
}
]
}
]
}
DrawPolygonInstance: object
Polygon instance to draw on an image
- BorderColor: string
-
Border Color to use - can be a hex value (with #) or HTML common color name. Transparent colors are supported.
- BorderWidth: number (double)
-
Width in pixels of the border. Pass in 0 to draw a polygon with no border
- FillColor: string
-
Fill Color to use - can be a hex value (with #) or HTML common color name. Transparent colors are supported. Leave blank to not fill the polygon.
- Points: PolygonPoint
-
Points (vertices) which comprise the polygon; valid polygons must have at least 3 points
-
PolygonPoint
Example
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"Points": [
{
"X": "number (double)",
"Y": "number (double)"
}
]
}
PolygonPoint: object
One point in a polygon
- X: number (double)
-
X location in pixels of this point in the polygon
- Y: number (double)
-
Y location in pixels of this point in the polygon
Example
{
"X": "number (double)",
"Y": "number (double)"
}
DrawRectangleRequest: object
Request to draw one or more rectangles on a base image
- BaseImageBytes: string (byte)
-
Image to draw rectangles on, in bytes. You can also use the BaseImageUrl instead to supply image input as a URL
- BaseImageUrl: string
-
Image to draw rectangles on, as an HTTP or HTTPS fully-qualified URL
- RectanglesToDraw: DrawRectangleInstance
-
Rectangles to draw on the image. Rectangles are drawn in index order.
-
DrawRectangleInstance
Example
{
"BaseImageBytes": "string (byte)",
"BaseImageUrl": "string",
"RectanglesToDraw": [
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
]
}
DrawRectangleInstance: object
Rectangle instance to draw on an image
- BorderColor: string
-
Border Color to use - can be a hex value (with #) or HTML common color name. Transparent colors are supported.
- BorderWidth: number (double)
-
Width in pixels of the border. Pass in 0 to draw a rectangle with no border
- FillColor: string
-
Fill Color to use - can be a hex value (with #) or HTML common color name. Transparent colors are supported. Leave blank to not fill the rectangle.
- X: number (double)
-
Pixel location of the left edge of the rectangle location
- Y: number (double)
-
Pixel location of the top edge of the rectangle location
- Width: number (double)
-
Width in pixels of the rectangle
- Height: number (double)
-
Height in pixels of the rectangle
Example
{
"BorderColor": "string",
"BorderWidth": "number (double)",
"FillColor": "string",
"X": "number (double)",
"Y": "number (double)",
"Width": "number (double)",
"Height": "number (double)"
}
FaceLocateResponse: object
Results of locating faces in an image
Example
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
Face: object
Location of one face in an image
- LeftX: integer (int32)
-
X coordinate of the left side of the face
- TopY: integer (int32)
-
Y coordinate of the top side of the face
- RightX: integer (int32)
-
X coordinate of the right side of the face
- BottomY: integer (int32)
-
Y coordinate of the bottom side of the face
Example
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
}
FaceLocateWithLandmarksResponse: object
Results of locating faces in an image
- Successful: boolean
-
True if the operation was successful, false otherwise
- Faces: FaceWithLandmarks
-
Array of faces found in the image
-
FaceWithLandmarks - FaceCount: integer (int32)
-
Number of faces found in the image
- ErrorDetails: string
-
Details of any errors that occurred
Example
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"LeftEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LeftEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"BottomAndSidesOfFace": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBridge": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBottom": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsInnerOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsOuterOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
]
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
FaceWithLandmarks: object
Location of one face in an image
- LeftX: integer (int32)
-
X coordinate of the left side of the face
- TopY: integer (int32)
-
Y coordinate of the top side of the face
- RightX: integer (int32)
-
X coordinate of the right side of the face
- BottomY: integer (int32)
-
Y coordinate of the bottom side of the face
- LeftEyebrow: FacePoint
-
Point locations of the left eyebrow (the eyebrow cloesest to the left side of the picture)
-
FacePoint - RightEyebrow: FacePoint
-
Point locations of the right eyebrow (the eyebrow cloesest to the right side of the picture)
-
FacePoint - LeftEye: FacePoint
-
Point locations of the left eye (the eye closest to the left side of the picture)
-
FacePoint - RightEye: FacePoint
-
Point locations of the right eye (the eye closest to the right side of the picture)
-
FacePoint - BottomAndSidesOfFace: FacePoint
-
Point locations of the bottom and sides of the face (cheeks and chin)
-
FacePoint - NoseBridge: FacePoint
-
Point locations of the nose bridge (the vertical portion of the nose)
-
FacePoint - NoseBottom: FacePoint
-
Point locations of the bottom (nostrils) of the nose
-
FacePoint - LipsInnerOutline: FacePoint
-
Point locations of the inner outline of the lips
-
FacePoint - LipsOuterOutline: FacePoint
-
Point locations of the outer outline of the lips
-
FacePoint
Example
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"LeftEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEyebrow": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LeftEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"RightEye": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"BottomAndSidesOfFace": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBridge": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"NoseBottom": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsInnerOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"LipsOuterOutline": [
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
]
}
FacePoint: object
Point location within a face
- X: integer (int32)
-
X location, where 0 is the left-most pixel
- Y: integer (int32)
-
Y location, where 0 is the top-most pixel
Example
{
"X": "integer (int32)",
"Y": "integer (int32)"
}
FaceCompareResponse: object
Results of comparing/matching faces in an image
Example
{
"Successful": "boolean",
"Faces": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"HighConfidenceMatch": "boolean",
"MatchScore": "number (double)"
}
],
"FaceCount": "integer (int32)",
"ErrorDetails": "string"
}
FaceMatch: object
Location of one face in an image, along with match results
- LeftX: integer (int32)
-
X coordinate of the left side of the face
- TopY: integer (int32)
-
Y coordinate of the top side of the face
- RightX: integer (int32)
-
X coordinate of the right side of the face
- BottomY: integer (int32)
-
Y coordinate of the bottom side of the face
- HighConfidenceMatch: boolean
-
True if there is a high confidence match, false otherwise
- MatchScore: number (double)
-
Match score from 0.0 to 1.0 with higher scores indicating a greater match; scores above 0.7 indicate a match
Example
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)",
"HighConfidenceMatch": "boolean",
"MatchScore": "number (double)"
}
AgeDetectionResult: object
Result from classifying the Age of people in an image
- Successful: boolean
-
True if the operation was successful, false otherwise
- PeopleWithAge: PersonWithAge
-
People in the image annotated with age information
-
PersonWithAge - PeopleIdentified: integer (int32)
-
Number of people identified in the image with an age
Example
{
"Successful": "boolean",
"PeopleWithAge": [
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"AgeClassificationConfidence": "number (double)",
"AgeClass": "string",
"Age": "number (double)"
}
],
"PeopleIdentified": "integer (int32)"
}
PersonWithAge: object
A person identified in an image age classification operation
- FaceLocation: Face
-
Location and other information about the person's face corresponding to this age classification
- AgeClassificationConfidence: number (double)
-
Confidence level of age classification; possible values are between 0.0 and 1.0; higher is better, with values > 0.50 being high confidence results
- AgeClass: string
-
The person's age range classification result in years; possible values are "0-2", "4-6", "8-13", "15-20", "25-32", "38-43", "48-53", "60+"
- Age: number (double)
Example
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"AgeClassificationConfidence": "number (double)",
"AgeClass": "string",
"Age": "number (double)"
}
GenderDetectionResult: object
Result from classifying the Gender of people in an image
- Successful: boolean
-
True if the operation was successful, false otherwise
- PersonWithGender: PersonWithGender
-
People in the image annotated with gender information
-
PersonWithGender - PeopleIdentified: integer (int32)
-
Number of people identified in the image with a gender
Example
{
"Successful": "boolean",
"PersonWithGender": [
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"GenderClassificationConfidence": "number (double)",
"GenderClass": "string"
}
],
"PeopleIdentified": "integer (int32)"
}
PersonWithGender: object
A person identified in an image gender classification operation
- FaceLocation: Face
-
Location and other information about the person's face corresponding to this age classification
- GenderClassificationConfidence: number (double)
-
Confidence level of gender classification; possible values are between 0.0 and 1.0; higher is better, with values > 0.50 being high confidence results
- GenderClass: string
-
The person's identified gender; possible values are "Male", "Female" and "Unknown"
Example
{
"FaceLocation": {
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"RightX": "integer (int32)",
"BottomY": "integer (int32)"
},
"GenderClassificationConfidence": "number (double)",
"GenderClass": "string"
}
ImageMetadata: object
Metadata from an image
- Successful: boolean
-
True if the operation was successful, false otherwise
- IsValidImage: boolean
-
True if the input image is a valid image file, false otherwise
- FileFormat: string
-
File format of the image
- Width: integer (int32)
-
Width of the image in pixels
- Height: integer (int32)
-
Height of the image in pixels
- BitDepth: integer (int32)
-
Bits per pixel
- HasTransparency: boolean
-
True if the image has transaprency in the form of an alpha channel, false otherwise
- ColorSpace: string
-
Color space of the image
- ExifProfileName: string
-
Name of the EXIF profile used
- ExifValues: ImageMetadataExifValue
-
EXIF tags and values embedded in the image
-
ImageMetadataExifValue
Example
{
"Successful": "boolean",
"IsValidImage": "boolean",
"FileFormat": "string",
"Width": "integer (int32)",
"Height": "integer (int32)",
"BitDepth": "integer (int32)",
"HasTransparency": "boolean",
"ColorSpace": "string",
"ExifProfileName": "string",
"ExifValues": [
{
"Tag": "string",
"DataType": "string",
"DataValue": "string"
}
]
}
ImageMetadataExifValue: object
EXIF tag and value
- Tag: string
-
Tag name for the EXIF value
- DataType: string
-
Date type of the EXIF value
- DataValue: string
-
Value, formatted as a string of the EXIF value
Example
{
"Tag": "string",
"DataType": "string",
"DataValue": "string"
}
DominantColorResult: object
Result of performing a get dominant color operation
- Successful: boolean
-
True if the operation was successful, false otherwise
- DominantColors: ColorResult
-
Dominant colors in the image, in order where most dominant color is in the first index position (0), the second most-dominant color is in index position 1 and so on
-
ColorResult
Example
{
"Successful": "boolean",
"DominantColors": [
{
"R": "integer (int32)",
"G": "integer (int32)",
"B": "integer (int32)"
}
]
}
ColorResult: object
Individual color
- R: integer (int32)
-
Red (R) channel pixel value of this color
- G: integer (int32)
-
Green (G) channel pixel value of this color
- B: integer (int32)
-
Blue (B) channel pixel value of this color
Example
{
"R": "integer (int32)",
"G": "integer (int32)",
"B": "integer (int32)"
}
NsfwResult: object
Result of an NSFW classification
- Successful: boolean
-
True if the classification was successfully run, false otherwise
- Score: number (double)
-
Score between 0.0 and 1.0. Scores of 0.0-0.2 represent high probability safe content, while scores 0.8-1.0 represent high probability unsafe content. Content between 0.2 and 0.8 is of increasing raciness.
- ClassificationOutcome: string
-
Classification result into four categories: SafeContent_HighProbability, UnsafeContent_HighProbability, RacyContent, SafeContent_ModerateProbability
Example
{
"Successful": "boolean",
"Score": "number (double)",
"ClassificationOutcome": "string"
}
ImageDescriptionResponse: object
Result of recognizing an image
- Successful: boolean
-
Was the image processed successfully?
- Highconfidence: boolean
-
Is the resulting best outcome recognition a high confidence outcome?
- BestOutcome: RecognitionOutcome
-
The best Machine Learning outcome
- RunnerUpOutcome: RecognitionOutcome
-
Best backup ("runner up") Machine Learning outcome
Example
{
"Successful": "boolean",
"Highconfidence": "boolean",
"BestOutcome": {
"ConfidenceScore": "number (double)",
"Description": "string"
},
"RunnerUpOutcome": {
"ConfidenceScore": "number (double)",
"Description": "string"
}
}
RecognitionOutcome: object
Specific recognition outcome
- ConfidenceScore: number (double)
-
Scores closer to 1 are better than scores closer to 0
- Description: string
-
English language description of the image
Example
{
"ConfidenceScore": "number (double)",
"Description": "string"
}
FindSymbolResult: object
Result of a find symbol operation on an input image
- Successful: boolean
-
True if successful, false otherwise
- MatchScore: number (double)
-
Score between 0.0 and 1.0 that measures how closely the symbol matched; scores above 0.2 are good
- XLeft: integer (int32)
-
X location of the left edge of the found location in pixels
- YTop: integer (int32)
-
Y location of the top edge of the found location in pixels
- Width: integer (int32)
-
Width of the found location in pixels
- Height: integer (int32)
-
Height of the found location in pixels
Example
{
"Successful": "boolean",
"MatchScore": "number (double)",
"XLeft": "integer (int32)",
"YTop": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)"
}
ObjectDetectionResult: object
Result of detecting objects in an image
- Successful: boolean
-
Was the image processed successfully?
- Objects: DetectedObject
-
Array of objects detected in the scene
-
DetectedObject - ObjectCount: integer (int32)
-
Number of objects detected in the scene
Example
{
"Successful": "boolean",
"Objects": [
{
"ObjectClassName": "string",
"Height": "integer (int32)",
"Width": "integer (int32)",
"Score": "number (double)",
"X": "integer (int32)",
"Y": "integer (int32)"
}
],
"ObjectCount": "integer (int32)"
}
DetectedObject: object
Single object instance, and associated details, detected in an image
- ObjectClassName: string
-
Class of the object. Example values are "person", "car", "dining table", etc.
- Height: integer (int32)
-
Height, in pixels, of the object
- Width: integer (int32)
-
Width, in pixels, of the object
- Score: number (double)
-
Confidence score of detected object; possible values are between 0.0 and 1.0; values closer to 1.0 are higher confidence
- X: integer (int32)
-
X location, in pixels, of the left side location of the object, with the right side being X + Width
- Y: integer (int32)
-
Y location, in pixels, of the top side location of the object, with the bottom side being Y + Height
Example
{
"ObjectClassName": "string",
"Height": "integer (int32)",
"Width": "integer (int32)",
"Score": "number (double)",
"X": "integer (int32)",
"Y": "integer (int32)"
}
VehicleLicensePlateDetectionResult: object
Result of detecting vehicle license plates in an image
- Successful: boolean
-
Was the image processed successfully?
- DetectedLicensePlates: DetectedLicensePlate
-
License plates found in the image
-
DetectedLicensePlate - DetectedLicensePlateCount: integer (int32)
-
The number of license plates detected in the image
Example
{
"Successful": "boolean",
"DetectedLicensePlates": [
{
"LicensePlateText_BestMatch": "string",
"LicensePlateText_RunnerUp": "string",
"LocationX": "integer (int32)",
"LocationY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"LicensePlateRecognitionConfidenceLevel": "number (double)"
}
],
"DetectedLicensePlateCount": "integer (int32)"
}
DetectedLicensePlate: object
License plate found in the image
- LicensePlateText_BestMatch: string
-
Text from the license plate, highest-confidence result
- LicensePlateText_RunnerUp: string
-
Alternate text from the license plate, based on second-highest-confidence result
- LocationX: integer (int32)
-
X location of the left edge of the license plate, starting from the left edge of the photo (X = 0)
- LocationY: integer (int32)
-
Y location of the top edge of the license plate, starting from the top edge of the photo (Y = 0)
- Width: integer (int32)
-
Width of the license plate's location in pixels
- Height: integer (int32)
-
Height of the license plate's location in pixels
- LicensePlateRecognitionConfidenceLevel: number (double)
-
Confidence score on a range of 0.0 - 1.0 of the accuracy of the detected license plate, with higher scores being better; values about 0.75 are high confidence
Example
{
"LicensePlateText_BestMatch": "string",
"LicensePlateText_RunnerUp": "string",
"LocationX": "integer (int32)",
"LocationY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"LicensePlateRecognitionConfidenceLevel": "number (double)"
}
TextDetectionResult: object
Result of an operation to detect text in a photo
Example
{
"Successful": "boolean",
"TextItems": [
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)"
}
],
"TextItemsCount": "integer (int32)"
}
TextItem: object
Individual instance of text occuring in an image; one piece of text
- LeftX: integer (int32)
-
Left X coordinate of the text location; 0 represents the left edge of the input image
- TopY: integer (int32)
-
Top Y coordinate of the text location; 0 represents the top edge of the input image
- Width: integer (int32)
-
Width in pixels of the text item
- Height: integer (int32)
-
Height in pixels of the text item
Example
{
"LeftX": "integer (int32)",
"TopY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)"
}
FineTextDetectionResult: object
Result of an operation to detect text in a photo
- Successful: boolean
-
True if the operation was successful, false otherwise
- TextItems: FineTextItem
-
Text items found in the input image
-
FineTextItem - TextItemsCount: integer (int32)
-
Count of text items found in the input image
Example
{
"Successful": "boolean",
"TextItems": [
{
"TopLeftX": "integer (int32)",
"TopLeftY": "integer (int32)",
"TopRightX": "integer (int32)",
"TopRightY": "integer (int32)",
"BottomLeftX": "integer (int32)",
"BottomLeftY": "integer (int32)",
"BottomRightX": "integer (int32)",
"BottomRightY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"Angle": "number (double)"
}
],
"TextItemsCount": "integer (int32)"
}
FineTextItem: object
Individual instance of text occuring in an image; one piece of text
- TopLeftX: integer (int32)
-
X coordinate of the top/left text location; 0 represents the left edge of the input image
- TopLeftY: integer (int32)
-
Y coordinate of the top/left text location; 0 represents the top edge of the input image
- TopRightX: integer (int32)
-
X coordinate of the top/right text location; 0 represents the left edge of the input image
- TopRightY: integer (int32)
-
Y coordinate of the top/right text location; 0 represents the top edge of the input image
- BottomLeftX: integer (int32)
-
X coordinate of the bottom/left text location; 0 represents the left edge of the input image
- BottomLeftY: integer (int32)
-
Y coordinate of the bottom/left text location; 0 represents the top edge of the input image
- BottomRightX: integer (int32)
-
X coordinate of the bottom/right text location; 0 represents the left edge of the input image
- BottomRightY: integer (int32)
-
Y coordinate of the bottom/right text location; 0 represents the top edge of the input image
- Width: integer (int32)
-
Width in pixels of the text
- Height: integer (int32)
-
Height in pixels of the text
- Angle: number (double)
-
Rotation Angle in radians of the text
Example
{
"TopLeftX": "integer (int32)",
"TopLeftY": "integer (int32)",
"TopRightX": "integer (int32)",
"TopRightY": "integer (int32)",
"BottomLeftX": "integer (int32)",
"BottomLeftY": "integer (int32)",
"BottomRightX": "integer (int32)",
"BottomRightY": "integer (int32)",
"Width": "integer (int32)",
"Height": "integer (int32)",
"Angle": "number (double)"
}
CreateHandwritingRequest: object
Request to create a PNG of handwriting
- TextInput: string
-
Text to convert to handwriting
- TargetWidth: integer (int32)
-
Desired width in pixels of the resulting image
- StrokeWidth: integer (int32)
-
Optinoal; Width of the text stroke in pixels; default is 2
- Color: string
-
HTML hexadecimal color, or HTML common color name (e.g. 'black', 'red'), for the handwriting
Example
{
"TextInput": "string",
"TargetWidth": "integer (int32)",
"StrokeWidth": "integer (int32)",
"Color": "string"
}