1. A dynamically reconfigurable heterogeneous systolic array configured to process a first image frame, and to generate a plurality of image processing primatives from said image frame, and to store said primatives and the corresponding image frame in a memory store, wherein based on a determined characteristic of said image frame, the dynamically reconfigurable heterogeneous systolic array is reconfigurable to process a following image frame.