This document discusses lessons learned from using OpenCV for embedded vision applications. It notes that while OpenCV works well out of the box for desktop applications, embedded platforms present additional challenges like different processors, interfaces, and unpredictable performance. It recommends prototyping on desktop for faster development, then optimizing algorithms and porting to embedded hardware. Specific optimizations discussed include using ARMv8 processors, vendor-optimized OpenCV packages, and custom NEON-accelerated functions. An example product from Itseez that runs computer vision algorithms in real-time on ARM using these techniques is also presented.