Buffering mechanism for camera-based gesturing
View Patent ↗A method can include buffering video data to a buffer that includes a buffer capacity that corresponds to a video time interval; sampling video data at a sampling rate of at least once per video time interval; processing the sampled video data for gesture evidence; and, responsive to gesture evidence in the sampled video data, processing the buffered video data for additional gesture evidence. Various other apparatuses, systems, methods, etc., are also disclosed.
1. A method comprising:
buffering video data to a buffer that comprises a buffer capacity that corresponds to a video time interval that exceeds a sum of a longest gesture time interval and a recognition time interval for processing sampled video data for gesture evidence;
sampling video data at a sampling rate of at least once per video time interval wherein the sampling rate comprises a frame sampling rate, wherein the buffering comprises buffering video data at a frame buffering rate, and wherein the frame buffering rate exceeds the frame sampling rate;
processing the sampled video data for gesture evidence; and
responsive to recognition of gesture evidence in the sampled video data,
processing the buffered video data for additional gesture evidence.
2. The method of claim 1 wherein the buffering comprises buffering the video data to a circular buffer.
3. The method of claim 1 wherein the buffer capacity comprises a frame capacity based at least in part on a video frame rate.
4. The method of claim 1 wherein the processing the buffered video data for additional gesture evidence comprises processing the buffered video data directionally toward older buffered video data.
5. The method of claim 1 further comprising, responsive to additional gesture evidence in the buffered video data, issuing a command based at least in part on the gesture evidence and the additional gesture evidence.
6. The method of claim 5 wherein the command comprises a navigation command.
7. A system comprising:
circuitry to buffer video data at a frame buffering rate to a buffer that comprises a buffer capacity that corresponds to a video time interval that exceeds a sum of a longest gesture time interval and a recognition time interval for processing sampled video data for gesture evidence;
circuitry to sample video data at a frame sampling rate wherein the frame buffering rate exceeds the frame sampling rate;
circuitry to process sampled video data for gesture evidence;
circuitry to process buffered video data for gesture evidence responsive to recognition of gesture evidence in sampled video data; and
circuitry to assign gesture evidence in sampled video data and gesture evidence in buffered video data to a single gesture.
8. The system of claim 7 wherein the buffer comprises a circular buffer that receives video data from the circuitry to buffer video data.
9. The system of claim 7 further comprising a video camera.
10. The system of claim 7 wherein the circuitry to process buffered video data for gesture evidence comprises circuitry responsive to recognition of gesture evidence in sampled video data.
11. The system of claim 7 wherein the circuitry to sample video data samples video data according to a sampling resolution, wherein the circuitry to buffer video data buffers video data according to a buffering resolution and wherein the buffering resolution exceeds the sampling resolution.
12. The system of claim 7 further comprising output circuitry for output of gesture-based commands.
13. One or more computer-readable non-transitory media comprising processor-executable instructions to instruct a processor to:
buffer video data to a circular buffer at a frame buffering rate wherein the circular buffer comprises a buffer capacity that corresponds to a video time interval that exceeds a sum of a longest gesture time interval and a recognition time interval for processing sampled video data for gesture evidence;
sample video data at a frame sampling rate wherein the frame buffering rate exceeds the frame sampling rate;
process sampled video data for evidence of a gesture;
process buffered video data for additional evidence of a gesture responsive to evidence of a gesture in the sampled video data; and
issue a command based at least in part on evidence of a gesture in the sampled video data and additional evidence of a gesture in the buffered video data.
14. The one or more computer-readable non-transitory media of claim 13 further comprising instructions to instruct a processor to:
define the sampling rate based at least in part on a minimum gesture time.
15. The one or more computer-readable non-transitory media of claim 13 further comprising instructions to instruct a processor to process buffered video data directionally toward older buffered video data.