{"slug":"medien-halowerk-com-v1-oss-opencv-external-contour-metrics-563c88","title":"Finds the external contours in a caller-supplied binary mask and reports, for ea","host":"medien.halowerk.com","method":"POST","resource":"https://medien.halowerk.com/v1/oss-opencv-external-contour-metrics","category":"other","description":"Finds the external contours in a caller-supplied binary mask and reports, for each, its area, perimeter, centroid and bounding rectangle, plus the total foreground pixel count. The division of labour is deliberate: segmentation is a domain decision, so the mask comes from you and the measurement com","price_listed":0.002,"price_asked":0.002,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":1220,"reported_calls_30d":0,"reported_payers_30d":0,"networks":["eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"bodyType":"json","exampleUrl":"https://medien.halowerk.com/v1/oss-opencv-external-contour-metrics/schema#/requestExample","method":"POST","schemaUrl":"https://medien.halowerk.com/v1/oss-opencv-external-contour-metrics/schema#/inputSchema","type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":true,"properties":{"input":{"additionalProperties":true,"properties":{"bodyType":{"const":"json"},"exampleUrl":{"format":"uri","type":"string"},"method":{"const":"POST"},"schemaUrl":{"format":"uri","type":"string"},"type":{"const":"http"}},"required":["type","method","bodyType"],"type":"object"},"output":{"properties":{"example":{"additionalProperties":false,"properties":{"operation":{"const":"external-contour-metrics"},"result":{"additionalProperties":false,"properties":{"contours":{"items":{"additionalProperties":false,"properties":{"area":{"minimum":0,"type":"number"},"bounding_box":{"items":{"minimum":0,"type":"integer"},"maxItems":4,"minItems":4,"type":"array"},"centroid":{"anyOf":[{"items":{"type":"number"},"maxItems":2,"minItems":2,"type":"array"},{"type":"null"}]},"perimeter":{"minimum":0,"type":"number"},"vertex_count":{"minimum":1,"type":"integer"}},"required":["area","perimeter","centroid","bounding_box","vertex_count"],"type":"object"},"maxItems":128,"minItems":0,"type":"array"},"foreground_pixels":{"minimum":0,"type":"integer"},"warnings":{"items":{"maxLength":1024,"type":"string"},"maxItems":8,"minItems":1,"type":"array"}},"required":["contours","foreground_pixels","warnings"],"type":"object"},"runtime_ms":{"minimum":0,"type":"number"},"upstream":{"additionalProperties":false,"properties":{"binary_sha256":{"const":"1fd4eb220f9986baa0ea0492cbcbedf85b868e792cbcac5f69e10d067a2f956c"},"components":{"const":["findContours","moments","contourArea","arcLength","boundingRect"]},"numpy_version":{"const":"2.5.0"},"package_version":{"const":"4.13.0.92"},"project":{"const":"OpenCV"},"version":{"const":"4.13.0"}},"required":["project","version","package_version","binary_sha256","numpy_version","components"],"type":"object"}},"required":["operation","result","upstream","runtime_ms"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-10-25","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.002,"price_match":true,"latency_ms":1220,"error":null}],"description_full":"Finds the external contours in a caller-supplied binary mask and reports, for each, its area, perimeter, centroid and bounding rectangle, plus the total foreground pixel count. The division of labour is deliberate: segmentation is a domain decision, so the mask comes from you and the measurement comes from here, which keeps the numbers reproducible and independent of any threshold this service might have chosen.","last_updated":"2026-10-25T16:42:46.422Z","schemes":["exact"]}