elucideye / acf

Aggregated Channel Feature object detection in C++ and OpenGL ES 2.0 based on https://github.com/pdollar/toolbox
BSD 3-Clause "New" or "Revised" License
49 stars 20 forks source link

promote GPUDetectionPipeline to public API #95

Open headupinclouds opened 6 years ago

headupinclouds commented 6 years ago

Hiding/scheduling GPU->CPU transfers costs (>= 1 frame latency) is important to see actual throughput gains when using the GPGPU ACF pyramid acceleration. Simply using the GPGPU acceleration sequentially for each frame may actually slow down the frame rate due to transfer overhead (glFlush(), etc).. Since one of the main advantages of this module is speed, it makes sense to add this functionality to the API. Currently src/app/pipeline/GPUDetectionPipeline.{h, cpp} provides some sample code for this. After a review/cleanup this can be added to src/lib/acf/acf/GPUDetectionPipeline.{h, cpp}.