Figure 1.
Distribution of the components into the Zynq 7020 device.
Figure 1.
Distribution of the components into the Zynq 7020 device.
Figure 2.
Bandwidth demanded by the first stages of the M3-AC system.
Figure 2.
Bandwidth demanded by the first stages of the M3-AC system.
Figure 3.
The microphone array (left and center) consists of 12 digital Micro Electro-Mechanical Systems (MEMS) microphones arranged in two concentric sub-arrays. The low-cost Universal Serial Bus (USB) Red-Green-Blue (RGB) Camera (right) achieves resolutions up to 640 × 480 pixels.
Figure 3.
The microphone array (left and center) consists of 12 digital Micro Electro-Mechanical Systems (MEMS) microphones arranged in two concentric sub-arrays. The low-cost Universal Serial Bus (USB) Red-Green-Blue (RGB) Camera (right) achieves resolutions up to 640 × 480 pixels.
Figure 4.
Overview of the FPGAs components. The PDM input signal is converted to audio in the cascade of filters. The Delay-Decimate-and-Sum beamformer is composed of several memories, associated to each sub-array to disable those memories linked to the deactivated microphones, to properly delay the input signal. The is finally obtained per steering vector.
Figure 4.
Overview of the FPGAs components. The PDM input signal is converted to audio in the cascade of filters. The Delay-Decimate-and-Sum beamformer is composed of several memories, associated to each sub-array to disable those memories linked to the deactivated microphones, to properly delay the input signal. The is finally obtained per steering vector.
Figure 5.
The proposed architecture operates at two different clock rates to achieve real-time acoustic imaging.
Figure 5.
The proposed architecture operates at two different clock rates to achieve real-time acoustic imaging.
Figure 6.
Comparison of the power-efficient architecture [
29] (
top), the presented architecture (
centre) and the high-performance architecture [
25,
28] (
bottom) using the 2D directivity [
1] as metric done in [
2]. The shadowed values represent the confidence interval for the 64 steered orientations.
Figure 6.
Comparison of the power-efficient architecture [
29] (
top), the presented architecture (
centre) and the high-performance architecture [
25,
28] (
bottom) using the 2D directivity [
1] as metric done in [
2]. The shadowed values represent the confidence interval for the 64 steered orientations.
Figure 7.
Acoustic heatmaps generated by an emulator to test the spatial resolution of the microphone array. Two sound sources are placed one meter from the array and moved towards each other to find the minimum distance between required between the sound sources to identify both sound sources. By increasing the frequency of either of the two sound sources, the minimum distance required to distinguish both sound sources from each other is decreases. Acoustic heatmaps: (a,b) two sound sources of 4.5 kHz and 5 kHz placed at (a) and (b) . (c,d) two sound sources of 8 kHz and 7.5 kHz placed at (c) and (d) . (e,f) two sound sources of 8 kHz and 9.5 kHz placed at (e) and (f) . corresponds to the center of the image.
Figure 7.
Acoustic heatmaps generated by an emulator to test the spatial resolution of the microphone array. Two sound sources are placed one meter from the array and moved towards each other to find the minimum distance between required between the sound sources to identify both sound sources. By increasing the frequency of either of the two sound sources, the minimum distance required to distinguish both sound sources from each other is decreases. Acoustic heatmaps: (a,b) two sound sources of 4.5 kHz and 5 kHz placed at (a) and (b) . (c,d) two sound sources of 8 kHz and 7.5 kHz placed at (c) and (d) . (e,f) two sound sources of 8 kHz and 9.5 kHz placed at (e) and (f) . corresponds to the center of the image.
Figure 8.
Overview of the image processing steps executed on the CPU. Multiple modes are supported to satisfy the most constrained Wireless Sensor Networks (WSN) demands.
Figure 8.
Overview of the image processing steps executed on the CPU. Multiple modes are supported to satisfy the most constrained Wireless Sensor Networks (WSN) demands.
Figure 9.
The M3-AC system consisting of the zedboard, microphone array and RGB camera used during the experiments (a). Acoustic hetamap of 320 × 240 with scaling showing two sound sources (b), a single sound source of 4kHz half a meter (c) and one meter (d) away. The acoustic heatmaps can also be combined with unmodified images from the RGB camera (e,f) or after applying edge detection on the RGB frame (g,h).
Figure 9.
The M3-AC system consisting of the zedboard, microphone array and RGB camera used during the experiments (a). Acoustic hetamap of 320 × 240 with scaling showing two sound sources (b), a single sound source of 4kHz half a meter (c) and one meter (d) away. The acoustic heatmaps can also be combined with unmodified images from the RGB camera (e,f) or after applying edge detection on the RGB frame (g,h).
Figure 10.
Nordic USB Dongle used for Bluetooth Low Energy (BLE) communication [
36].
Figure 10.
Nordic USB Dongle used for Bluetooth Low Energy (BLE) communication [
36].
Figure 11.
Data in the buffer for four different situations. (1): no data is read from the buffer and everything remains in the buffer. (2): data is read from the buffer, but at a slower rate than that it is stored. (3): Data is read from the buffer at the same speed it is stored. Every time one frame is ready in the buffer, it is read, resulting in an empty buffer. (4): A request for data is performed at a higher rate than that the data is stored in the buffer.
Figure 11.
Data in the buffer for four different situations. (1): no data is read from the buffer and everything remains in the buffer. (2): data is read from the buffer, but at a slower rate than that it is stored. (3): Data is read from the buffer at the same speed it is stored. Every time one frame is ready in the buffer, it is read, resulting in an empty buffer. (4): A request for data is performed at a higher rate than that the data is stored in the buffer.
Figure 12.
On the left, time to read data from the buffer for different resolutions. The function “usleep” is used to control for different resolutions. The read time for the higher resolutions decreases up to equal to 16 ms. After this, the read time becomes constant. This is due to the buffer containing the same amount of data when the read call starts (the maximum it can contain). On the right, time to read different amounts of bytes from the buffer. is kept constant to 20 ms and 40 ms and the read time is measured. The read times for both the 20 ms and 40 ms are the same for the same amount of bytes. The graphs has a linear trend line of with . One can see that this trend line gives a relationship between the size of the buffer (around 16 kB) and the time to generate one byte by the FPGA (µs).
Figure 12.
On the left, time to read data from the buffer for different resolutions. The function “usleep” is used to control for different resolutions. The read time for the higher resolutions decreases up to equal to 16 ms. After this, the read time becomes constant. This is due to the buffer containing the same amount of data when the read call starts (the maximum it can contain). On the right, time to read different amounts of bytes from the buffer. is kept constant to 20 ms and 40 ms and the read time is measured. The read times for both the 20 ms and 40 ms are the same for the same amount of bytes. The graphs has a linear trend line of with . One can see that this trend line gives a relationship between the size of the buffer (around 16 kB) and the time to generate one byte by the FPGA (µs).
Figure 13.
The proposed architecture operates at three different rates to reduce consumed resources and to optimize the execution time.
Figure 13.
The proposed architecture operates at three different rates to reduce consumed resources and to optimize the execution time.
Figure 14.
Processed frames for different situations, on top is the thread that reads the frames from the FPGA (stays synchronised with the FPGA), under that are three different situations where the frames are processed at the same speed (), faster () or slower () than the speed they are generated by the FPGA.
Figure 14.
Processed frames for different situations, on top is the thread that reads the frames from the FPGA (stays synchronised with the FPGA), under that are three different situations where the frames are processed at the same speed (), faster () or slower () than the speed they are generated by the FPGA.
Figure 15.
Time for rescaling the heatmap for different resolutions by a factor of 2 (left) and by a factor of 4 (right). The gray lines indicate the confidence interval.
Figure 15.
Time for rescaling the heatmap for different resolutions by a factor of 2 (left) and by a factor of 4 (right). The gray lines indicate the confidence interval.
Figure 16.
Operations applied to identify Regions-of-Interest (ROIs).
Figure 16.
Operations applied to identify Regions-of-Interest (ROIs).
Figure 17.
Time for detecting one, two, four or eight ROIs. The gray lines indicate the confidence interval.
Figure 17.
Time for detecting one, two, four or eight ROIs. The gray lines indicate the confidence interval.
Figure 18.
Time for reading a frame from the RGB camera. “usleep” is used for the delay time. The read time (blue line) drops to a minimum when the delay is above 22 ms. The orange line is the average of the read times ( ms) when the delay is more than this 22 ms.
Figure 18.
Time for reading a frame from the RGB camera. “usleep” is used for the delay time. The read time (blue line) drops to a minimum when the delay is above 22 ms. The orange line is the average of the read times ( ms) when the delay is more than this 22 ms.
Figure 19.
Time for downscaling the RGB to different resolutions with different modes. The original resolution of the image is . The gray lines indicate the confidence interval.
Figure 19.
Time for downscaling the RGB to different resolutions with different modes. The original resolution of the image is . The gray lines indicate the confidence interval.
Figure 20.
(a) Time to compress a grayscale acoustic heatmap for different resolutions and (c) the corresponding size of the compressed image (mode 1). (b) Time to compress an RGB image for different resolutions and (d) the size of the compressed image (mode 3, 4 and 5). The gray lines indicate the confidence interval.
Figure 20.
(a) Time to compress a grayscale acoustic heatmap for different resolutions and (c) the corresponding size of the compressed image (mode 1). (b) Time to compress an RGB image for different resolutions and (d) the size of the compressed image (mode 3, 4 and 5). The gray lines indicate the confidence interval.
Figure 21.
Output frame rate of each mode. The orange line represents the real time threshold of 30 Frames Per Second (FPS). The gray lines indicate the confidence interval.
Figure 21.
Output frame rate of each mode. The orange line represents the real time threshold of 30 Frames Per Second (FPS). The gray lines indicate the confidence interval.
Figure 22.
Time for each computational operation in Mode 3 (left), Mode 4 (center) and Mode 5 (right) for different resolutions. The orange line represents the threshold of 33 ms (30 FPS). The gray lines indicate the confidence interval.
Figure 22.
Time for each computational operation in Mode 3 (left), Mode 4 (center) and Mode 5 (right) for different resolutions. The orange line represents the threshold of 33 ms (30 FPS). The gray lines indicate the confidence interval.
Table 1.
Summary of architectures for acoustic imaging. The contributions described in this thesis are marked in bold.
Table 1.
Summary of architectures for acoustic imaging. The contributions described in this thesis are marked in bold.
Reference | Application | Year | Type of MIC | Model of MIC | MICs per Array | Device | Beamforming Algorithm | Resolution | Real-Time |
---|
[3] | Acoustic Imaging | 2010 | Analog ECM | Ekulit EMY-63M/P | 32 | Xilinx Spartan-3E XC3S500E | Time-Domain Delay-and-Sum | 320 × 240 | 10 FPS |
[4] | Robotic Applications | 2012 | Digital MEMS | Not Specified | 44 | Xilinx Spartan-6 LX45 | Frequency-Domain Generalized Inverse | Not Specified | 60 FPS |
[5,6] | Acoustic Imaging | 2014 | Digital MEMS | Not Specified | 32 | Xilinx Spartan-6 XC6SLX16 | Time-Domain Delay-and-Sum | 128 × 96 | Not Specified |
[7] | Detection squeak and rattle sources | 2014 | Digital MEMS | Analog Devices ADMP 441 | 30 or 96 | National Instruments sbRIO or FlexRIO (Xilinx Zynq 7020) | Time-Domain Unspecified Beamforming | Not Specified | 25 FPS |
[8] | Acoustic Imaging | 2015 | Analog MEMS | InvenSense ICS 40720 | 80 | Xilinx Virtex-7 VC707 | Linearly Constrained Minimum Variance | 61 × 61 | 31 FPS |
[10,11,12] | Acoustic Imaging | 2016 | Digital MEMS | ST Microlectronics MP34DT01 | 64 | National Instruments myRIO (Xilinx Zynq 7010) | Frequency-Domain Wideband | 40 × 40 | ms to ms |
[13,14], | Acoustic Imaging | 2017 | Analog MEMS | ST Microlectronics MP33AB01 | 25 | Xilinx Artix-7 XC7A100T | Time-Domain Delay-and-Sum | Not Specified | Not Specified |
[2] | Acoustic Imaging | 2018 | Digital MEMS | Knowles Acoustics SPH0641LU4H | 12 | Xilinx Zynq 7020 | Time-Domain Delay-and-Sum | 160 × 120 up to | 32.5 FPS to 1.8 FPS |
[15] | Screen-based Sports Simulator | 2019 | Analog MEMS | Knowles SPH1642HT5H-1 | 13 up to 49 | Xilinx Artix-7 A200T | Time-Domain Delay-and-Sum | Not Specified | Not Specified |
[16] | Acoustic Imaging | 2020 | Digital MEMS | TDK InvenSense ICS-52000 | 10 | GPU NVIDIA Jetson TX2 | Time-Domain GCC-PHAT | 672 × 376 | 2.8 FPS |
Present Work | Acoustic Imaging | 2020 | Digital MEMS | Knowles Acoustics SPH0641LU4H | 12 | Xilinx Zynq 7020 | Time-Domain Delay-and-Sum | up to
| 61.8 FPS to 3.8 FPS |
Table 2.
Comparison of supported image operations in OpenCV 4.4.0 and xfOpenCV 2019.1 library.
Table 2.
Comparison of supported image operations in OpenCV 4.4.0 and xfOpenCV 2019.1 library.
Image Operations | Functions/Parameters | OpenCV 4.4.0 [21] | xfOpenCV 2019.1 [20] |
---|
Resize | Nearest neighbor | X | X |
Bilinear | X | X |
Bicubic | X | |
Area | X | X |
Lanczos | X | |
Heatmap color | applyColorMap | X | X |
Overlay | addWeighted | X | X |
Edge detection | cvtColor | X | X |
Blur | X | X |
Canny edge | X | X |
ROI | Threshold | X | X |
findCountours | X | |
boundingRect | X | |
Image compression | PNG | X | |
JPG | X | |
Table 3.
Configuration of the reconfigurable architecture under analysis.
Table 3.
Configuration of the reconfigurable architecture under analysis.
Parameter | Definition | Value |
---|
| Sampling Frequency | 3.125 MHz |
| Minimum Frequency | 1 kHz |
| Maximum Frequency | 16.275 kHz |
| Minimum BW to satisfy Nyquist | 32.55 kHz |
| Decimation Factor | 96 |
| CIC Filter Decimation Factor | 24 |
| Order of the CIC Filter | 4 |
| FIR Filter Decimation Factor | 4 |
| Order of the FIR Filter | 24 |
Table 4.
Zynq 7020 resource consumption after placement and routing of the proposed architecture when supporting any resolution between 20 × 15 and 640 × 480.
Table 4.
Zynq 7020 resource consumption after placement and routing of the proposed architecture when supporting any resolution between 20 × 15 and 640 × 480.
Resources | Available | Utilization | Percentage |
---|
Filtering | Beamforming | Delays Generator | Total |
---|
Registers | 106,400 | 10,600 | 1935 | 1578 | 14,331 | 13.35% |
LUTs | 53,200 | 8515 | 707 | 1682 | 10,999 | 20.67% |
LUTs-FFs | 53,200 | 7207 | 671 | 1593 | 9566 | 17.98% |
BRAM18k | 280 | 6 | 6 | 4 | 16 | 5.71% |
DSP48 | 220 | 24 | 4 | 17 | 45 | 20.45% |
Table 5.
Timing (in ms) and Performance (in FPS) of the FPGA part based on the supported resolutions.
Table 5.
Timing (in ms) and Performance (in FPS) of the FPGA part based on the supported resolutions.
Resolution | | [ms] | FPS |
---|
20 × 15 | 300 | 0.255 | 3921.5 |
40 × 30 | 1200 | 1.02 | 980.4 |
80 × 60 | 4800 | 4.08 | 246.1 |
160 × 120 | 19,200 | 16.32 | 61.8 |
240 × 180 | 38,400 | 32.65 | 30.6 |
320 × 240 | 76,800 | 65.28 | 15.3 |
640 × 480 | 307,200 | 261.12 | 3.8 |
Table 6.
Timing (in ms) for different operations on the CPU based on the supported resolutions together with the confidence intervals.
Table 6.
Timing (in ms) for different operations on the CPU based on the supported resolutions together with the confidence intervals.
Resolution | #Pixels | Colormap [ms] | Canny Edge [ms] | Merging [ms] |
---|
80 × 60 | 4800 | 3.775 ± 0.017 | 1.262 ± 0.017 | 0.772 ± 0.003 |
160 × 120 | 19,200 | 4.828 ± 0.027 | 3.463 ± 0.035 | 2.883 ± 0.003 |
320 × 240 | 76,800 | 9.510 ± 0.026 | 11.717 ± 0.076 | 12.422 ± 0.038 |
480 × 360 | 172,800 | 16.569 ± 0.024 | 23.274 ± 0.108 | 25.905 ± 0.067 |
640 × 480 | 307,200 | 17.801 ± 0.114 | 41.942 ± 0.146 | 45.961 ± 0.098 |
Table 7.
Timing and confidence interval for each operation performed in each mode for different resolutions. The resolution after scaling is indicated in bold. All values are in ms.
Table 7.
Timing and confidence interval for each operation performed in each mode for different resolutions. The resolution after scaling is indicated in bold. All values are in ms.
Res FPGA | Res CPU | Scaling | HM Color | RGB Read | RGB Scaling | ROI | Canny | Merging | Display | Total Time |
---|
Compression + Storage |
---|
Compression | Sending |
---|
Mode 1: Raw heatmap |
| | | | | | | | | - | - |
40 ×30 | 40 × 30 | | | | | | | | 0.793 ± 0.201 | 0.793 |
| | | | | | | | | 0.281 ± 0.003 | 66.532 ± 0.382 | 66.813 |
| | | | | | | | | - | - |
80 × 60 | 80 × 60 | | | | | | | | 0.947 ± 0.003 | 0.947 |
| | | | | | | | | 0.569 ± 0.002 | 154.325 ± 1.148 | 154.894 |
| | | | | | | | | - | - |
160 × 120 | 160 × 120 | | | | | | | | 2.378 ± 0.319 | 2.378 |
| | | | | | | | | 1.546 ± 0.004 | 401.286 ± 3.203 | 402.832 |
| | | | | | | | | - | - |
240 × 180 | 240 × 180 | | | | | | | | 3.619 ± 0.052 | 3.619 |
| | | | | | | | | 3.089 ± 0.006 | 697.661 ± 5.487 | 700.750 |
Mode 2: Scaling + HM color + Display |
| | | | | | | | | 1.855 ± 0.202 | 5.853 |
40 × 30 | 80 × 60 | 0.223 ± 0.002 | 3.775 ± 0.017 | | | | | | - | - |
| | | | | | | | | - | - | - |
| | | | | | | | | 2.742 ± 0.019 | 8.274 |
80 × 60 | 160 × 120 | 0.704 ± 0.011 | 4.828 ± 0.027 | | | | | | - | - |
| | | | | | | | | - | - | - |
| | | | | | | | | 7.110 ± 0.041 | 19.073 |
160 × 120 | 320 × 240 | 2.453 ± 0.021 | 9.510 ± 0.026 | | | | | | - | - |
| | | | | | | | | - | - | - |
| | | | | | | | | 14.124 ± 0.056 | 34.400 |
240 × 180 | 480 × 360 | 3.707 ± 0.032 | 16.569 ± 0.024 | | | | | | - | - |
| | | | | | | | | - | - | - |
| | | | | | | | | 23.658 ± 0.060 | 48.039 |
160 × 120 | 640 × 480 | 6.580 ± 0.047 | 17.801 ± 0.114 | | | | | | - | - |
| | | | | | | | | - | - | - |
Mode 3: Scaling + HM color + RGB read + RGB scaling + Output mode |
| | | | | | | | | 1.855 ± 0.202 | 21.196 |
40 × 30 | 80 × 60 | 0.223 ± 0.002 | 3.775 ± 0.017 | 13.218 ± 0.075 | 1.353 ± 0.006 | | | 0.772 ± 0.003 | 2.276 ± 0.553 | 21.617 |
| | | | | | | | | 1.000 ± 0.002 | 283.791 ± 1.955 | 304.132 |
| | | | | | | | | 2.742 ± 0.019 | 27.880 |
80 × 60 | 160 × 120 | 0.704 ± 0.011 | 4.828 ± 0.027 | 13.218 ± 0.075 | 3.505 ± 0.006 | | | 2.883 ± 0.003 | 3.532 ± 0.101 | 28.670 |
| | | | | | | | | 2.952 ± 0.007 | 733.093 ± 5.752 | 761.183 |
| | | | | | | | | 7.110 ± 0.041 | 48.812 |
160 × 120 | 320 × 240 | 2.453 ± 0.021 | 9.510 ± 0.026 | 13.218 ± 0.075 | 4.099 ± 0.016 | | | 12.422 ± 0.038 | 10.536 ± 0.034 | 52.238 |
| | | | | | | | | 9.812 ± 0.017 | 1893.760 ± 15.502 | 1945.274 |
| | | | | | | | | 14.124 ± 0.056 | 89.804 |
240 × 180 | 480 × 360 | 3.707 ± 0.032 | 16.569 ± 0.024 | 13.218 ± 0.075 | 16.281 ± 0.040 | | | 25.905 ± 0.067 | 21.724 ± 0.131 | 97.404 |
| | | | | | | | | 20.654 ± 0.030 | 3276.708 ± 26.344 | 3373.042 |
| | | | | | | | | 23.658 ± 0.060 | 107.218 |
160 × 120 | 640 × 480 | 6.580 ± 0.047 | 17.801 ± 0.114 | 13.218 ± 0.075 | - | | | 45.961 ± 0.098 | 36.368 ± 0.067 | 119.982 |
| | | | | | | | | 35.283 ± 0.050 | 4917.320 ± 39.874 | 5036.136 |
Mode 4: Scaling + HM color + RGB read + RGB scaling + ROI + Merging + Output mode |
| | | | | | | | | 1.855 ± 0.202 | 21.407 |
40 × 30 | 80 × 60 | 0.223 ± 0.002 | 3.775 ± 0.017 | 13.218 ± 0.075 | 1.353 ± 0.006 | 0.211 ± 0.002 | | 0.772 ± 0.003 | 2.276 ± 0.553 | 21.828 |
| | | | | | | | | 1.000 ± 0.002 | 283.791 ± 1.955 | 304.343 |
| | | | | | | | | 2.742 ± 0.019 | 28.506 |
80 × 60 | 160 × 120 | 0.704 ± 0.011 | 4.828 ± 0.027 | 13.218 ± 0.075 | 3.505 ± 0.006 | 0.626 ± 0.003 | | 2.883 ± 0.003 | 3.532 ± 0.101 | 29.296 |
| | | | | | | | | 2.952 ± 0.007 | 733.093 ± 5.752 | 761.809 |
| | | | | | | | | 7.110 ± 0.041 | 51.173 |
160 × 120 | 320 × 240 | 2.453 ± 0.021 | 9.510 ± 0.026 | 13.218 ± 0.075 | 4.099 ± 0.016 | 2.361 ± 0.005 | | 12.422 ± 0.038 | 10.536 ± 0.034 | 54.599 |
| | | | | | | | | 9.812 ± 0.017 | 1893.760 ± 15.502 | 1947.635 |
| | | | | | | | | 14.124 ± 0.056 | 94.058 |
240 × 180 | 480 × 360 | 3.707 ± 0.032 | 16.569 ± 0.024 | 13.218 ± 0.075 | 16.281 ± 0.040 | 4.254 ± 0.029 | | 25.905 ± 0.067 | 21.724 ± 0.131 | 101.658 |
| | | | | | | | | 20.654 ± 0.030 | 3276.708 ± 26.344 | 3377.296 |
| | | | | | | | | 23.658 ± 0.060 | 114.532 |
160 × 120 | 640 × 480 | 6.580 ± 0.047 | 17.801 ± 0.114 | 13.218 ± 0.075 | - | 7.314 ± 0.018 | | 45.961 ± 0.098 | 36.368 ± 0.067 | 127.242 |
| | | | | | | | | 35.283 ± 0.050 | 4917.320 ± 39.874 | 5043.477 |
Mode 5: Scaling + HM color + RGB read + RGB scaling + Canny + Merging + Output mode |
| | | | | | | | | 1.855 ± 0.202 | 22.458 |
40 × 30 | 80 × 60 | 0.223 ± 0.002 | 3.775 ± 0.017 | 13.218 ± 0.075 | 1.353 ± 0.006 | | 1.262 ± 0.017 | 0.772 ± 0.003 | 2.276 ± 0.553 | 22.879 |
| | | | | | | | | 1.000 ± 0.002 | 283.791 ± 1.955 | 305.394 |
| | | | | | | | | 2.742 ± 0.019 | 31.343 |
80 × 60 | 160 × 120 | 0.704 ± 0.011 | 4.828 ± 0.027 | 13.218 ± 0.075 | 3.505 ± 0.006 | | 3.463 ± 0.035 | 2.883 ± 0.003 | 3.532 ± 0.101 | 32.133 |
| | | | | | | | | 2.952 ± 0.007 | 733.093 ± 5.752 | 764.646 |
| | | | | | | | | 7.110 ± 0.041 | 60.529 |
160 × 120 | 320 × 240 | 2.453 ± 0.021 | 9.510 ± 0.026 | 13.218 ± 0.075 | 4.099 ± 0.016 | | 11.717 ± 0.076 | 12.422 ± 0.038 | 10.536 ± 0.034 | 63.955 |
| | | | | | | | | 9.812 ± 0.017 | 1893.760 ± 15.502 | 1956.991 |
| | | | | | | | | 14.124 ± 0.056 | 113.078 |
240 × 180 | 480 × 360 | 3.707 ± 0.032 | 16.569 ± 0.024 | 13.218 ± 0.075 | 16.281 ± 0.040 | | 23.274 ± 0.108 | 25.905 ± 0.067 | 21.724 ± 0.131 | 120.678 |
| | | | | | | | | 20.654 ± 0.030 | 3276.708 ± 26.344 | 3396.316 |
| | | | | | | | | 23.658 ± 0.060 | 149.160 |
160 × 120 | 640 × 480 | 6.580 ± 0.047 | 17.801 ± 0.114 | 13.218 ± 0.075 | - | | 41.942 ± 0.146 | 45.961 ± 0.098 | 36.368 ± 0.067 | 161.870 |
| | | | | | | | | 35.283 ± 0.050 | 4917.320 ± 39.874 | 5078.105 |
Table 8.
Comparison between current timing/throughput and achievable timing/throughput for mode 3. The achievable throughput is based on the maximum throughput of 2 Mbps that is supported by the BLE dongle [
36].
Table 8.
Comparison between current timing/throughput and achievable timing/throughput for mode 3. The achievable throughput is based on the maximum throughput of 2 Mbps that is supported by the BLE dongle [
36].
Resolution | Current Timing [ms] | Theoretical Timing [ms] | Current Throughput [kB/s] | Theoretical Throughput [kB/s] |
---|
80 × 60 | 304,132 | 33,821 | 11,081 | 99,642 |
160 × 120 | 761,183 | 62,710 | 11,370 | 138,016 |
320 × 240 | 1,945,274 | 140,762 | 11,470 | 158,509 |
480 × 360 | 3,373,042 | 250,662 | 11,438 | 153,920 |
640 × 480 | 5,036,163 | 350,379 | 11,494 | 165,204 |