Navigation device with consistent output and 2-stage moving average filter thereof
11328499 · 2022-05-10
Assignee
Inventors
Cpc classification
G06F3/0354
PHYSICS
G06F3/0317
PHYSICS
G06F1/04
PHYSICS
International classification
G06V10/22
PHYSICS
G06F3/038
PHYSICS
Abstract
There is provided a 2-stage moving average filter for a navigation device including a delta regulator and an N-taps average circuit. The delta regulator is used as a first stage to receive motion delta at a varied frequency, and combine or split the received motion delta to output a regulated motion delta at a fixed frequency. The N-taps average circuit receives and averages N regulated motion delta and outputs the averaged motion delta at a fixed frequency.
Claims
1. A navigation device, comprising: an image sensor configured to output image frames based on a dynamic frame period; a delta calculator configured to generate a motion delta at the dynamic frame period; a delta regulator configured to combine the calculated motion delta generated at the dynamic frame period when the dynamic frame period is smaller than a fixed period, and output the combined motion delta at the fixed period; an N-taps average circuit configured to receive the combined motion delta every fixed period for N times and average the N combined motion delta; an accumulator connected downstream of the N-taps average circuit, and configured to receive and accumulate the averaged motion delta before the accumulated motion delta is polled at a polling period that is an integer times of the fixed period, wherein the polling period is larger than the fixed period; and a bypass path, configured to bypass the delta regulator and directly connect the delta calculator to the N-taps average circuit when the dynamic frame period is equal to the fixed period.
2. The navigation device as claimed in claim 1, wherein a number of the calculated motion delta being combined has a predetermined relationship with the dynamic frame period.
3. The navigation device as claimed in claim 1, wherein a number of the calculated motion delta being combined is increased when a difference between the dynamic frame period and the fixed period becomes larger.
4. The navigation device as claimed in claim 1, wherein the accumulated motion delta is configured to control a cursor shown on a display at a constant speed when the motion delta has a constant value.
5. The navigation device as claimed in claim 1, wherein the bypass path is implemented by a multiplexer or a switch device.
6. A navigation device, comprising: an image sensor configured to output image frames based on a dynamic frame period; a delta calculator configured to generate a motion delta at the dynamic frame period; a delta regulator configured to split the calculated motion delta generated at the dynamic frame period when the dynamic frame period is larger than a fixed period, and output the split motion delta at the fixed period; an N-taps average circuit configured to receive the split motion delta every fixed period for N times and average the N split motion delta; an accumulator connected downstream of the N-taps average circuit, and configured to receive and accumulate the averaged motion delta before the accumulated motion delta is polled at a polling period that is an integer times of the fixed period, wherein the polling period is larger than the fixed period; and a bypass path, configured to bypass the delta regulator and directly connect the delta calculator to the N-taps average circuit when the dynamic frame period is equal to the fixed period.
7. The navigation device as claimed in claim 6, wherein a number of the calculated motion delta being split has a predetermined relationship with the dynamic frame period.
8. The navigation device as claimed in claim 6, wherein a number of the calculated motion delta being split is decreased when a difference between the dynamic frame period and the fixed period becomes smaller.
9. The navigation device as claimed in claim 6, wherein the accumulated motion delta is configured to control a cursor shown on a display at a constant speed when the motion delta has a constant value.
10. The navigation device as claimed in claim 6, wherein the bypass path is implemented by a multiplexer or a switch device.
11. A 2-stage moving average filter for a navigation device, the 2-stage moving average filter being configured to receive motion delta, and comprising: a delta regulator configured to receive the motion delta at a dynamic frame period and output a regulated motion delta at a fixed period; and an N-taps average circuit connected downstream of the delta regulator, and configured to receive the regulated motion delta every fixed period for N times and average the N regulated motion delta, wherein the averaged motion delta is configured to be accumulated by an accumulator of the navigation device before the accumulated motion delta is polled at a polling period that is an integer times of the fixed period, wherein the polling period is larger than the fixed period, and the motion delta is directly received by the N-taps average circuit to be averaged by bypassing the delta regulator with a bypass path when the dynamic frame period is equal to the fixed period.
12. The 2-stage moving average filter as claimed in claim 11, wherein the delta regulator is configured to combine the motion delta as the regulated motion delta when the dynamic frame period is smaller than the fixed period.
13. The 2-stage moving average filter as claimed in claim 11, wherein the delta regulator is configured to split the motion delta as the regulated motion delta when the dynamic frame period is larger than the fixed period.
14. The 2-stage moving average filter as claimed in claim 11, wherein a number of the calculated motion delta being regulated is determined according to a difference between the fixed period and the dynamic frame period.
15. The 2-stage moving average filter as claimed in claim 11, wherein the bypass path is implemented by a multiplexer or a switch device.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Other objects, advantages, and novel features of the present disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION OF THE EMBODIMENT
(7) It should be noted that, wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
(8) The present disclosure provides a navigation device that adopts a 2-stage moving average filter for eliminating inconsistent output motion delta caused by a dynamic frame rate sensor.
(9) Referring to
(10) The navigation device 100 includes a light source 11, an image sensor 13 and a processor 15. The processor 15 is electrically connected to the light source 11 to control the lighting thereof. The processor 15 is electrically connected to the image sensor 13 to control the image capturing thereof. In one aspect, the light source 11, the image sensor 13 and the processor 15 is integrated in one encapsulation to form a sensor chip. In another aspect, the processor 15 is integrated in the image sensor 13, e.g., in a base layer forming pixel circuits.
(11) The processor 15 outputs a motion delta (e.g., referred to accumulated motion delta below) to a microcontroller unit (MCU) 8 or a central processing unit (CPU) of an external computer system. Said computer system includes or is connected to a display 9. The light source 11 is a light emitting diode or a laser diode, and used to emit an identifiable spectrum, e.g., infrared light, to illuminate the working surface S. The emission light is reflected by the working surface S to propagate to the image sensor 13. The light source 11 and the image sensor 13 are configured to have a bright field arrangement or a dark field arrangement without particular limitations.
(12) The image sensor 13 is a CCD image sensor, a CMOS image sensor or the like. The image sensor 13 captures and outputs image frames at a dynamic frame rate. For example, the frame rate is changed corresponding to a moving speed and/or acceleration of the navigation device 100 with respect to the working surface S. Therefore, corresponding to different moving speeds and/or accelerations, the image sensor 13 outputs a different number of image frames within a predetermined time interval, referred to the dynamic frame rate herein.
(13) The processor 15 is an application specific integrated circuit (ASIC) or a digital signal processor (DSP). For illustration purposes, the processor 15 is shown to include multiple functional blocks such as a delta calculator 151, a delta regulator 152, an N-taps average circuit 153 and a motion accumulator (sometimes referred to accumulator as a brief) 154. It is appreciated that functions executed by the delta calculator 151, the delta regulator 152, the N-taps average circuit 153 and the motion accumulator 154 are all considered executed by the processor 15. The processor 15 is embedded with software and/or hardware codes to perform the functions thereof. It is appreciated that the navigation device 100 further includes a clock generator to provide a clock signal for the operation of the processor 15.
(14) In the present disclosure, the term “delta” is referred to a motion, displacement or movement between the navigation device 100 and the working surface S. Said delta is calculated by two image frames, e.g., using correlation between successive image frames. In the present disclosure, the motion delta is presented by pixel distance as shown in
(15) In the present disclosure, the delta regulator 152 and the N-taps average circuit 153 is cascaded to each other to form a 2-stage moving average filter to smoothen the motion delta calculated by the delta calculator 151, wherein the delta regulator 152 is a first stage and the N-taps average circuit 153 is a second stage connected downstream of the delta regulator 152.
(16) Referring to
(17) The delta calculator 151 receives image frames at a dynamic frame period ΔFp, e.g., 4 ms, 2 ms and 1 ms as shown in the second column of
(18) The 2-stage moving average filter of the present disclosure receives the motion delta at the dynamic frame rate and outputs an averaged motion delta every a fixed period Δt2 to be accumulated in the motion accumulator 154.
(19) More specifically, the delta regulator 152 receives and then combines the motion delta generated at the dynamic frame period ΔFp to generate a combined motion delta when the dynamic frame period ΔFp is smaller than a fixed period Δt1, and outputs the combined motion delta at the fixed period Δt1 to the N-taps average circuit 153.
(20) For example, when a current frame period is equal to 2 ms, the delta calculator 151 outputs a motion delta every 2 ms, and the delta regulator 152 combines two motion delta, e.g., two 8-pixels distance herein, to generate a combined motion delta 16-pixels distance every 4 ms. For example, when a current frame period is equal to 1 ms, the delta calculator 151 outputs a motion delta every 1 ms, and the delta regulator 152 combines four motion delta, e.g., four 4-pixels distance herein, to generate a combined motion delta 16-pixels distance every 4 ms.
(21) In the present disclosure, a number of the motion delta outputted from the delta calculator 151 being combined is determined according to the fixed period Δt1 and a current frame period. And when a difference between the current frame period and the fixed period becomes larger, the number of the motion delta being combined is increased. For example in
(22) Further referring to
(23) The N-taps average circuit 153 (taking N=2 as an example) receives the combined motion delta every the fixed period Δt1 for 2 times and average the two combined motion delta. Every time the N-taps average circuit 153 obtains an averaged motion delta, e.g., by averaging two combined motion delta herein, the averaged motion delta, e.g., 16-pixels distance, is sent to the motion accumulator 154 based on Δt2. As shown in
(24) The accumulator 154 receives and accumulates the averaged motion delta before the accumulated motion delta is polled or read. In the present disclosure, the accumulated motion delta is polled at a polling period larger than the fixed period Δt1. For example in
(25) In the present disclosure, as the N-taps average circuit 153 does not output more averaged motion delta (e.g., more than 2 herein) to the motion accumulator 154 when a current frame rate is increased, the polled and outputted motion delta can be in consistent with the motion delta obtained by the delta calculator 151. Accordingly, the accumulated motion delta may control a cursor shown on the display 9 at a constant speed when the motion delta has a constant value.
(26) Referring to
(27) The delta calculator 151 also receives image frames at a dynamic frame period ΔFp, e.g., 4 ms, 2 ms and 1 ms as shown in the second column of
(28) The delta regulator 152 receives and then splits the motion delta generated at the dynamic frame period ΔFp to generate a split motion delta when the dynamic frame period ΔFp is larger than a fixed period Δt1, and outputs the split motion delta at the fixed period Δt1 to the N-taps average circuit 153.
(29) For example, when a current frame period is equal to 4 ms, the delta calculator 151 outputs a motion delta every 4 ms, and the delta regulator 152 splits the motion delta to generate four motion delta, e.g., four 4-pixels distance herein, to output a split motion delta 4-pixels distance every 1 ms. For example, when a current frame period is equal to 2 ms, the delta calculator 151 outputs a motion delta every 2 ms, and the delta regulator 152 splits the motion delta to generate two motion delta, e.g., two 4-pixels distance herein, to output a split motion delta 4-pixels distance every 1 ms. The multiple split motion delta is stored in, for example, a line buffer temporarily before being outputted to the N-taps average circuit 153.
(30) In the present disclosure, a number of the motion delta outputted from the delta calculator 151 being split is determined according to the fixed period Δt1 and a current frame period. And when a difference between the current frame period and the fixed period becomes smaller, the number of the motion delta being split is decreased. For example in
(31) Further referring to
(32) The N-taps average circuit 153 (taking N=8 as an example) receives the split motion delta every the fixed period Δt1 for 8 times and average the eight split motion delta. Every time the N-taps average circuit 153 obtains an averaged motion delta, e.g., by averaging eight split motion delta herein, the averaged motion delta, e.g., 4-pixels distance, is sent to the motion accumulator 154 based on Δt2. As shown in
(33) The accumulator 154 receives and accumulates the averaged motion delta before the accumulated motion delta is polled or read. In the present disclosure, the accumulated motion delta is polled at a polling period larger than the fixed period Δt1. For example in
(34) Referring to
(35) As mentioned above, the 2-stage moving average filter of the present disclosure includes the delta regulator 152 and the N-taps average circuit 153. The delta regulator 152 receives the motion delta, which is calculated by the delta calculator 151, at a dynamic frequency, e.g., 250 Hz, 500 Hz and 1000 Hz, and outputs a regulated motion delta at a fixed period Δt1, e.g., 2 ms in
(36) In
(37) In
(38) In the present disclosure, a number of the motion delta being regulated (i.e. combined or split) is determined according to a difference between the fixed period Δt1 and the selected dynamic frame period ΔFp.
(39) In
(40) In the present disclosure, a predetermined relationship between a number of motion delta being regulated and dynamic frame periods is previously determined and recorded in the navigation device 100 before shipment, e.g., referring to
(41) In one non-limiting embodiment, a bypass path is connected between the delta calculator 151 and the N-taps average circuit 153 to bypass the delta regulator 152. For example, if the motion delta obtained by the delta calculator 151 is not regulated, e.g., ΔFp=4 ms in
(42) It should be mentioned that the values such as the frame periods, motion delta, fixed period, polling period and N mentioned above are only intended to illustrate but not to limit the present disclosure.
(43) As mentioned above, when a conventional navigation device adopts a dynamic frame rate sensor, output motion delta can be inconsistent even though the navigation device moves in a steady movement. Accordingly, the present disclosure further provides a navigation device (e.g.,
(44) Although the disclosure has been explained in relation to its preferred embodiment, it is not used to limit the disclosure. It is to be understood that many other possible modifications and variations can be made by those skilled in the art without departing from the spirit and scope of the disclosure as hereinafter claimed.