This is the repository reference for matching mismatched camera and NN aspect ratios while preserving as much field of view as possible. Use it when you need the full-FOV resize-mode tutorial rather than just a fixed display-mapping example.
- You need to compare crop, stretch, and letterbox strategies.
- You want a runtime-switchable resize-mode demo.
- You need a focused tutorial on image-manip resize behavior before inference.
- You need only one fixed resize mode.
- You need higher-resolution annotation mapping rather than resize-mode switching.
- You need a minimal detector example without resize experimentation.
Category:tutorials/full-fov-nnShape:multi-entrypoint+standalonePrimary task:run YOLOv6 on full-FOV camera frames with different resize strategiesEntrypoints:main.py, cropping.py, letterboxing.py, and stretching.pyStandalone path:oakapp.toml packages main.pyFrontend:noneRuns on:RVC2 peripheral, RVC4 peripheral, and RVC4 standalone packagingRequires:YOLOv6 model assets in depthai_models/Input:liveCAM_AOutput:Visualizer topics such asResized,Visualizations, andResize modeModels:YOLOv6 YAMLs in depthai_models/Visualizer / UI:DepthAI Visualizer viadai.RemoteConnection
- main.py captures a large
3000x2000stream and pushes resize-mode changes intoImageManipat runtime through utils/resize_controller.py. - The fixed-mode scripts use
812x608input and hardcode one resize mode each. - All variants feed the resized branch into YOLOv6 and publish the NN passthrough frame plus detection overlays.
- combine_outputs.py exists as an extra helper/example artifact, but main.py does not use it in the current repo state.
- The runtime keybindings in utils/resize_controller.py are
a -> LETTERBOX,s -> STRETCH, andd -> CENTER_CROP. - oakapp.toml only packages main.py, not the fixed-mode scripts.
- This tutorial is about resize tradeoffs, so some modes intentionally distort or crop the source frame.
- tutorials/display-detections: use this when you need display-mapping strategies instead of resize-mode switching
- neural-networks/generic-example: use this when you need the basic single-model detector scaffold
- tutorials/camera-demo: use this when you need a camera baseline without any NN resize logic
Interactive mode:python3 main.pyFixed crop mode:python3 cropping.pySuccess looks like:the Visualizer shows resize-mode changes affecting the detection view, and the fixed-mode scripts each stay in their declared strategyCommon failure meaning:the README keybinding text was trusted over the current code, or the user expects a generic detector example rather than a resize-technique tutorial