Computes dense Farneback optical flow between two consecutive grayscale frames a
Computes dense Farneback optical flow between two consecutive grayscale frames and returns the horizontal and vertical displacement of every pixel. Unlike sparse tracking this covers the whole image, which is what you want for measuring motion in regions with no distinct features to track — smoke, water, crowds, a panning background. Both frames must be the same size and should come from the same camera at a short interval.
Answeringour last check, 2026-10-25
1 of 1checks answered this week
1219 msmedian answer time
$0.004listed price per call
$0.004price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://medien.halowerk.com/v1/oss-opencv-dense-frame-optical-flow
| Category | Image and media |
|---|---|
| Provider host | medien.halowerk.com |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 0 from 0 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-25 | valid payment request | 402 | $0.004 | 1219 ms |
Example input (from the provider)
{
"body": {
"first_frame": [
[
196,
238,
156,
55,
103,
60,
158,
129,
206,
218,
14,
34,
211,
255,
31,
32
],
[
62,
22,
220,
201,
133,
162,
51,
212,
223,
178,
216,
220,
13,
35,
203,
10
],
[
118,
77,
146,
195,
188,
236,
193,
113,
86,
52,
215,
95,
42,
13,
69,
123
],
[
160,
224,
195,
173,
75,
117,
11,
112,
254,
170,
122,
112,
48,
75,
35,
246
],
[
59,
13,
32,
59,
192,
161,
61,
78,
177,
141,
56,
192,
104,
116,
135,
15
],
[
112,
136,
52,
184,
31,
85,
96,
158,
34,
112,
45,
230,
19,
141,
108,
12
],
[
82,
193,
118,
134,
69,
88,
160,
51,
49,
205,
99,
145,
17,
215,
79,
198
],
[
149,
178,
8,
8,
76,
33,
71,
12,
149,
241,
107,
147,
93,
68,
181,
112
],
[
123,
230,
171,
205,
239,
203,
178,
208,
56,
221,
144,
26,
25,
143,
124,
49
],
[
104,
224,
162,
158,
152,
157,
46,
106,
122,
126,
164,
158,
191,
30,
140,
184
],
[
193,
205,
186,
199,
238,
93,
105,
65,
201,
197,
63,
129,
67,
15,
12,
4
],
[
66,
16,
134,
3,
216,
26,
235,
167,
1,
237,
29,
123,
226,
182,
252,
249
],
[
91,
161,
192,
178,
247,
39,
153,
154,
134,
184,
177,
40,
39,
255,
31,
73
],
[
134,
89,
61,
218,
10,
44,
225,
253,
75,
217,
163,
111,
117,
100,
19,
227
],
[
204,
133,
0,
148,
102,
132,
244,
9,
12,
71,
211,
208,
14,
63,
232,
128
],
[
149,
159,
83,
136,
160,
70,
237,
197,
16,
193,
64,
148,
30,
231,
183,
206
]
],
"second_frame": [
[
172,
54,
122,
255,
150,
193,
180,
115,
178,
176,
194,
158,
111,
182,
177,
105
],
[
66,
182,
196,
238,
156,
55,
103,
60,
158,
129,
206,
218,
14,
34,
211,
255
],
[
9,
154,
62,
22,
220,
201,
133,
162,
51,
212,
223,
178,
216,
220,
13,
35
],
[
197,
233,
118,
77,
146,
195,
188,
236,
193,
113,
86,
52,
215,
95,
42,
13
],
[
97,
8,
160,
224,
195,
173,
75,
117,
11,
112,
254,
170,
122,
112,
48,
75
],
[
160,
178,
59,
13,
32,
59,
192,
161,
61,
78,
177,
141,
56,
192,
104,
116
],
[
0,
161,
112,
136,
52,
184,
31,
85,
96,
158,
34,
112,
45,
230,
19,
141
],
[
16,
184,
82,
193,
118,
134,
69,
88,
160,
51,
49,
205,
99,
145,
17,
215
],
[
145,
52,
149,
178,
8,
8,
76,
33,
71,
12,
149,
241,
107,
147,
93,
68
],
[
131,
59,
123,
230,
171,
205,
239,
203,
178,
208,
56,
221,
144,
26,
25,
143
],
[
7,
82,
104,
224,
162,
158,
152,
157,
46,
106,
122,
126,
164,
158,
191,
30
],
[
39,
139,
193,
205,
186,
199,
238,
93,
105,
65,
201,
197,
63,
129,
67,
15
],
[
12,
53,
66,
16,
134,
3,
216,
26,
235,
167,
1,
237,
29,
123,
226,
182
],
[
52,
27,
91,
161,
192,
178,
247,
39,
153,
154,
134,
184,
177,
40,
39,
255
],
[
34,
240,
134,
89,
61,
218,
10,
44,
225,
253,
75,
217,
163,
111,
117,
100
],
[
140,
164,
204,
133,
0,
148,
102,
132,
244,
9,
12,
71,
211,
208,
14,
63
]
]
},
"bodyType": "json",
"exampleUrl": "https://medien.halowerk.com/v1/oss-opencv-dense-frame-optical-flow/schema#/requestExample",
"method": "POST",
"schemaUrl": "https://medien.halowerk.com/v1/oss-opencv-dense-frame-optical-flow/schema#/inputSchema",
"type": "http"
}
Promised output schema (from the provider)
{
"$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": "dense-frame-optical-flow"
},
"result": {
"additionalProperties": false,
"properties": {
"flow_xy": {
"items": {
"items": {
"items": {
"type": "number"
},
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"maxItems": 256,
"minItems": 16,
"type": "array"
},
"maxItems": 256,
"minItems": 16,
"type": "array"
},
"height": {
"minimum": 0,
"type": "integer"
},
"warnings": {
"items": {
"maxLength": 1024,
"type": "string"
},
"maxItems": 8,
"minItems": 1,
"type": "array"
},
"width": {
"minimum": 0,
"type": "integer"
}
},
"required": [
"flow_xy",
"width",
"height",
"warnings"
],
"type": "object"
},
"runtime_ms": {
"minimum": 0,
"type": "number"
},
"upstream": {
"additionalProperties": false,
"properties": {
"binary_sha256": {
"const": "1fd4eb220f9986baa0ea0492cbcbedf85b868e792cbcac5f69e10d067a2f956c"
},
"components": {
"const": [
"calcOpticalFlowFarneback"
]
},
"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"
}