Supplementary Materials for Through Fog High Resolution Imaging Using Millimeter Wave Radar

This supplementary material presents additional qualitative results from HawkEye. It also provides more detailed descriptions of HawkEye’s GAN architecture, data collection hardware platform, and how the quantitative metrics are extracted. Appendix A: Additional Qualitative Results We present additional qualitative results from HawkEye in three categories. First, we show an example of HawkEye’s performance on the synthesized test dataset along with the original 3D CAD model we use in our data synthesizer (section 5) in Fig. 1. We only show one example of HawkEye’s output on the synthesized test dataset, because HawkEye can accurately recreate all detailed features as in the synthesized ground-truth most of the time. Hence, we focus on results from the real test dataset. Second, we show HawkEye’s performance with rain in the scene in Fig. 2, which is also part of our controlled experiments (section 6). We use a water hose to emulate rain around the object of interest (the car), and use HawkEye to image through the emulated rain. We observe that despite not being trained with such examples, HawkEye still generalizes well with rain in the scene and captures the location, orientation, size, and shape of the car. As we have discussed in section 6.2, due to FCC regulations, we are constrained to build our experimental setup at the 60 GHz unlicensed spectrum, which suffers from higher attenuation from water particles. We believe HawkEye’s performance would further improve in inclement weather conditions by implementing HawkEye’s mmWave radars at the 77 GHz frequency band, which is allocated specifically for automotive radar applications. Finally, we also show additional randomly sampled qualitative results from HawkEye on the real test dataset in Fig. 6 and Fig. 7. We can see that, in most cases, HawkEye accurately depicts the location, orientation, size, and shape of different car models in various background environments and viewpoints. Appendix B: Network Architecture and Implementation Details HawkEye’s generator network (section 4) follows standard encoder-decoder architecture. The encoder starts with one channel of 3D input (φ, θ, ρ) of size 1× 64× 32× 96. There are 6 3D convolution layers with kernel sizes=6 and strides=2 on all three dimensions. With every convolution layer, the number of channels increases, while the 3D feature map size decreases by half in every dimension. We use a BatchNorm layer followed by a Leaky-ReLU layer after every 3D convolution layer. The encoder outputs a 2048 × 1 × 1 × 1 dimensional z-vector, which is then squeezed to 2048×1×1. At each layer we appropriately zero-pad the features in order to get the desired input and output sizes. The decoder begins with the 2048 × 1 × 1 dimensional z-vector, and it contains 8 2D deconvolution layers. The first deconvolution layer has a kernel size=(4, 3), and stride=(2, 1) in order to get an output of size (2, 1). The subsequent deconvolution layers have kernel sizes=4 and strides=2 on both dimensions. Hence, each layer doubles the feature map sizes and we also decrease the number of channels. We use a BatchNorm layer followed by a ReLU layer after every deconvolution layer. Again, at each layer we appropriately zero-pad the features in order to get the desired input and output sizes. This results in a output feature map of size 1×256×128. We also use skip connections between the encoder and the decoder. Using the 3D heatmap to 2D depth-map mapping defined in section 4, we obtain 8 channels of 2D feature maps of size 64 × 32. We concatenate them with the feature maps at the 6 deconvolution layer along the channel axis. The concatenated feature map then goes through the last deconvolution layer and a fully connected layer. Finally, we apply the hyperbolic tangent function alongside a linear transformation that maps the final output between 0 and 1. This leads to the 256 × 128 generator output G(x). The discriminator network (section 4) adopts a twostream architecture that uses two separate encoders to map 3D radar heatmaps and 2D depth-maps to 1D feature vec-