Stereo matching is a heavily investigated topic in computer vision because of its wide range of applicability and its high computational complexity. In this paper we explore an energy-efficient technique that is suitable for parallel (GPGPU) stereo matching of remotely-sensed radar images. A major issue with images captured by remote sensing, e.g., by airborne radars, is that they are likely to have speckle noise, which is undesired information that contaminates and distorts the image. Although there are filters that alleviate the effects of speckle noise, they introduce a certain amount of image distortion. It has been demonstrated that cost functions based on Normalized Cross Correlation (NCC) can be used for accurate stereo matching in the presence of speckle noise, thus, we explored such a function for passive stereo matching. Accordingly, this paper presents a new NCC-based cost function that minimizes the number of floating-point operations utilized for stereo matching and compares its performance to that of the original NCC cost function. This evaluation is achieved via experiments in which these cost functions are employed by GPGPU stereo matching codes that use the simulated annealing algorithm. Performance comparison is conducted in terms of power and energy consumption and execution time. The dataset consisted of image pairs with two sizes. The smaller images were approximately one megapixel each and the larger image pair was over 42 megapixels each. For the smaller image pairs there was a negligible difference between the floating-point and the integer versions of the code in terms of both the execution time and power consumption. However, for the larger image pair with over 42 megapixels, there was a substantial (nearly 70%) improvement in terms of execution time and energy consumption. In addition, we also investigated the influence of the compute capability of the GPGPU on the results above. Two NVIDIA GPGPUs: a Fermi-based GPGPU with compute capability 2.0 and a more power efficient Kepler-based GPGPU, with compute capability 3.0, were used for this purpose. For the approximately one-megapixel image pairs, the Fermi-based Tesla C2075, had a larger execution time (20%), power consumption (22%), and energy consumption (40%) compared to the newer Kepler-based, GeForce GTX 670.
|