2021-2022 Computer Vision Architecture

Update Sept. 1 2021: IMU + Frame merging will be its own module and FramePreProc will only consist of the frame filter from IMU data.

Update Oct. 28 2021: TargetMapping will not be implemented for this iteration unless time permits, target tracking will take its place.

QR System:

Architectural Principles and Abstractions

  • Modules encapsulate functionality and state. Functionality involves a set of operations that can be independent or dependent on input data.

  • Modules communicate using pipelines which are implemented as queues. Pipelines behave as the interface between different modules and carry data between them.

  • Modules run in their own thread, the thread runs a worker function which manages input and output pipelines, module state, and applies the functionality inside the module to generate output data.

  • Interfaces are entities external to any module. Interfaces can be a library, file locations, or an API.

Flowchart (Flight System)

Â