DoctorateOpen Access

Real time orthorectification of images by general purpose computation on graphical processing units method

Is this your thesis?

This record came from a bulk archive import. If it’s yours, link it to your profile.

2016
0 views
0 downloads

Abstract (EN)

The graphic processing units (GPU) on the graphic cards integral parts of computers are really developed today according to the last ten years. The development was the increase of the GPUs performance and capabilities. The modern GPUs are not only became powerful graphic engines and also they are high level parallel programmable processors with very fast computing capabilities and high memory bandwidth speed comparing to central processing units (CPU). The rapid development of GPUs programmability and capabilities attracted the researchers dealing with complex problems who need highly level calculation. This interest has revealed the concepts of "General Purpose Computation on Graphics Processing Units (GPGPU)" and "stream processing". The graphic processors are powerful hardware which is really cheap and affordable. So the graphic processors became an alternative to computer processors. The graphic chips which were standard application hardware have been transformed into modern, powerful and programmable processors to meet the overall needs. Especially in recent years, the phenomenon of the usage of graphics processing units in general purpose computation has led the researchers and developers to this point. The biggest problem is that the graphics processing units use different programming models unlike current programming methods. Therefore, an efficient GPU programming requires re-coding of the current program algorithm by considering the limitations and the structure of the graphics hardware. Currently, multi-core processors can not be programmed by using traditional programming methods. Event procedure programming method can not be used for programming the multi-core processors. GPUs are especially effective in finding solution for repetition of the computing steps for many data elements when high accuracy is needed. Thus, it provides the computing process more quickly and accurately. Compared to the GPUs, CPUs which perform just one computing in a time according to the flow control are slower in performance. This structure can be evaluated for various applications of computer technology. General purpose parallel programming can use GPUs not only for graphics but also for removing the burden of the non-graphic computational workload which is traditionally handled by a CPU. Significant computational speedups have been achieved by various researchers from different disciplines using general purpose parallel programming. Although GPU-based non-graphics computation is well suited to data-parallel tasks such as image processing kernels and matrix operations, it is also possible to accelerate many other applications by adapting existing algorithms to the general purpose parallel programming. Therefore it seems reasonable to exploit tremendous computing power of GPUs for orthorectification, since computational power is an important concern. Real time processing of imagery data which is coming from several sensors and platforms like airborne and unmanned air vehicles is really important today. For rapid evaluating data coming from unmanned air vehicles (UAV) in military applications, for supporting rescue and security forces, and also for obtaining surveys in disaster scenarios or mass events an airborne real time image processing system is required. So the need is speed for processing orthorectification the imagery data to find the target and get true coordinates of targets from this quick orthorectified imagery. The imagery data which is coming from several sensors and platforms size is really huge. Naturally, very powerful computers are needed to orthorectify of these images. When the various studies are analyzed, it can be seen that numerous powerful computers are used to orthorectify these imagery in real time. Such systems can be created for normal aircraft platforms mey be possible if considering the cost. However, in unmanned air vehicles, which are much smaller than regular aircrafts, it is not possible to establish that kind of multiple computer systems. At the same time it is important that the payloads on the platform as camera, navigation system etc. must be light hardware. Existing digital aerial cameras and unmanned air vehicles imaging systems have GPS-IMU (Global Positioning System-Inertial Measurement Unit) systems. So it is possible to orthorectify images with camera calibration parameters in real time. With this direct orthorectification oppurtunity we encounter GPGPU method and it can be possible that orthorectification procedure can be done by GPGPU and CUDA (Compute Unified Device Architecture) programming language. So we can orthorectify images with cheaper hardware in a short time. For this purpose in this thesis firstly a literatur search has been done. After that, mathematical models of the methods have demonstrated. Next it is described methods to be used. After this step the method has been implemented and taken the application results. It can be seen from the studies in this thesis, the effective GPU programming requires the re-writing existing program algorithm using graphical terms again considering to hardware structure and limitations. Today, the multicore processors can not be programming using traditional programming methods. So the usage of typical event programming procedure can not be possible for programming the multicore processors. Programming model changed to stream computing and processing. In this new model for identifying the kernel functions, that apply intensive calculation each element in the flow, all the input and output data qualified as stream. There are lots of processors on the GPU that process these streams. For example Nvidia GTX580 series card has 512 unit stream processors (CUDA processors). So we can consider such as 512 computers stay side by side. The graphic cards can do multiple intensive processes with these stream processors at the same time. Data-parallel processing maps data elements to parallel processing threads. Many applications that process large data sets can use a data-parallel programming model to speed up the computations. In 3D rendering, large sets of pixels and vertices are mapped to parallel threads. Similarly, image and media processing applications such as post-processing of rendered images, video encoding and decoding, image scaling, stereo vision, and pattern recognition can map image blocks and pixels to parallel processing threads. In fact, many algorithms outside the field of image rendering and processing are accelerated by data-parallel processing, from general signal processing or physics simulation to computational finance or computational biology. In this study covers how general purpose parallel programming and computational power of the GPUs and GPGPU method can be used in photogrammetric orthorectification applications especially direct georeferencing and projective rectification. These two methods coded with CUDA programming language. The results obtained are evaluated; the method is really suitable for image processing and photogrammetry especially if we do the same calculations to per image pixels. Also it is suitable for intensive calculation procedures. GPGPU and CUDA programming method make the calculation really fast. We can increase the number of applications which can be adapted to photogrammetry and image processing that require intensive computation and speed. Especially with orthorectification procedure with GPU is 7 times faster than CPU implementation and speedup is 7 times. The results are analyzed in detail when the image size is slightly bigger, GPGPU method and GPU performance is increase and CPU performance is decrease. In this study, a method which has not used before for orthorectification of images obtained from various platforms was implemented using programming algorithm and hardware infrastructure. By using this GPGPU method it can be possible to orthorectify images very fast and with economical hardwares. So this study is a start point for improve this method and increase the time factor for making instant decisions from images.

Author

Hakan Şahin

How to Cite

Hakan Şahin (Doctorate thesis). Real time orthorectification of images by general purpose computation on graphical processing units method, 2016, İstanbul Technical University.

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from İstanbul Technical University