CVKit Dense Optical Flow (f8.cvkit.denseoptflow)¶
No description.
- Service class:
f8.cvkit.denseoptflow - Version:
0.0.1 - Source directory:
f8/cvkit/dense_optflow - Tags:
cv,optical_flow,flow_field
When to Use¶
- Use
f8.cvkit.denseoptflowwhen you care about motion across the whole frame rather than just one tracked object. - It is useful for global movement analysis, camera motion estimation, and motion-driven control signals.
- Reach for it when you need "where the frame is moving" rather than "where one target is".
Common Wiring Patterns¶
- Feed it from
f8.implayerorf8.screencap. - Keep a video preview branch nearby during setup so you can compare motion output with the original image.
- If you only need compact motion summaries, hand the result off to
f8.cvkit.flowmetricorf8.pyengine.
Pitfalls / Gotchas¶
- High resolution and high frame rate can make dense flow expensive quickly; verify you really need full-quality input.
- Compression artifacts, flicker, and capture jitter can distort the result.
- If downstream logic is too sensitive, add smoothing or thresholding before using the flow values as control signals.
Service Reference¶
How to Run¶
../win/f8cvkit_dense_optflow_service.exe
- Workdir:
./ - Environment overrides: none
Typical Inputs / Outputs¶
- Data inputs: none
- Data outputs:
monitor - Commands: none
Service State Fields¶
| Name | Access | Required | On Node | Schema | Description |
|---|---|---|---|---|---|
inputShmName |
rw |
true |
true |
string |
Input SHM name (e.g. shm.xxx.video). |
computeEveryNFrames |
rw |
true |
false |
integer / default=2 |
Compute flow once per N new frames. |
flowShmName |
ro |
true |
true |
string |
Output SHM name for UV flow field. |
flowShmFormat |
ro |
true |
false |
string |
Flow payload format. Fixed to flow2_f16. |
computeScale |
rw |
true |
false |
number / default=0.5 |
Farneback compute scale, flow is upscaled back to full size. |
lastError |
ro |
true |
false |
string |
Last error message. |
active |
rw |
true |
false |
boolean / default=True |
Service lifecycle state (activate/deactivate). |
svcId |
ro |
true |
false |
string |
Readonly: current service instance id (svcId). |
Key Fields That Matter¶
inputShmName(Input Video SHM,rw): Input SHM name (e.g. shm.xxx.video). Schema:string.computeEveryNFrames(Compute Every N Frames,rw): Compute flow once per N new frames. Schema:integer / default=2.flowShmName(Flow SHM Name,ro): Output SHM name for UV flow field. Schema:string.flowShmFormat(Flow SHM Format,ro): Flow payload format. Fixed to flow2_f16. Schema:string.computeScale(Compute Scale,rw): Farneback compute scale, flow is upscaled back to full size. Schema:number / default=0.5.lastError(Last Error,ro): Last error message. Schema:string.active(Active,rw): Service lifecycle state (activate/deactivate). Schema:boolean / default=True.svcId(Service Id,ro): Readonly: current service instance id (svcId). Schema:string.
Service Commands¶
None
Service Data Input Ports¶
None
Service Data Output Ports¶
| Name | Required | On Node | Schema | Description |
|---|---|---|---|---|
monitor |
true |
false |
object{active, alive, cpu, error, ...} |
Unified runtime monitor snapshots (health/resource/perf/error). |
Operators¶
None
Related Scenarios¶
- No bundled scenario references this node yet.