• No results found

The Design of HD Image Rectification Architecture Using Floating Point IP

N/A
N/A
Protected

Academic year: 2021

Share "The Design of HD Image Rectification Architecture Using Floating Point IP"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

IERI Procedia 6 ( 2014 ) 39 – 44

2212-6678 © 2014. The Authors. Published by Elsevier B.V. Open access under CC BY-NC-ND license. Peer review under responsibility of Scientific Committee of of Information Engineering Research Institute doi: 10.1016/j.ieri.2014.03.007

ScienceDirect

2013 International Conference on Future Software Engineering and Multimedia

Engineering

The Design of HD Image Rectification Architecture Using

Floating Point IP

Dongil Han

a,*

, Jeahoon Choi

a

, Seong Joon Yoo

a

, Sung Wook Baik

b

, Ho Chul Shin

c

aDepertment of Computer Engineering, Sejong University, Seoul, Korea bDigital Contents Research Institute, Sejong University, Seoul, Korea

c Robot,Cognitive System Research Department, Electronics and Telecommunications Research Institute (ETRI), Daejeon, Korea

Abstract

This paper proposes a real-time HD stereo images rectification hardware design architecture in order to remove vertical parallax of images caused by distortion within the cameras and alignment between them. After calculating calibration parameters of images using Matlab Toolbox designed by J.Y Bouguet as a prior step for the above purpose, the researcher designed rectification hardware based on the algorithms of Heikkilä and Silven. When stereo cameras are installed, it becomes difficult to find corresponding points owing to geometric errors between the cameras. However, in case corresponding points are located in the same line in two images, corresponding points can be found only in the line and therefore calculation becomes simple and errors are reduced. The line where the corresponding points are situated is called an epipolar line. In order to make the lines become an epipolar line, geometric image transformation technique called rectification should be used. Here, in order to heighten precision of result images, the researcher employed a floating point calculator generated using a core generator of Xilinx. Through this, it was verified that rectification hardware which has higher precision than other rectification hardware designed using a look-up table and which operates on a real-time basis may be designed.

© 2013. Published by Elsevier B.V.

Selection and peer review under responsibility of Information Engineering Research Institute

*Corresponding author. Tel.: +82-2-3408-3751; fax: +82-2-3408-4321.

E-mail address: [email protected].

© 2014. The Authors. Published by Elsevier B.V. Open access under CC BY-NC-ND license.

(2)

Keywords : Rectification, Stereo-matching, FPGA, Real-time implementation, Epipolar geometry;

1. Introduction

The rapid development of broadcasting, computing and communication technologies, consumption of diverse content and services using smart phones, smart TVs, and others is increasing in ordinary life. Existing TV users passively consumed the media by accommodating them, but due to the development of smart TVs, consumers’ watching way is gradually changing to positive watching. Accordingly, demand on interfaces based on gesture recognition aimed at processing TV control and content searching with convenience and readiness is growing. It is necessary to recognize high-resolution 3D distance information. Stereo matching technique which recognizes distance information by finding the same pixels using two cameras like human eyes has been recently presented as a good alternative in performing such functions.

However, in case corresponding points are located in the same line in two images, corresponding points can be found only in the line and therefore calculation becomes simple and errors are reduced. The line where the corresponding points are situated is called an epipolar line. In order to make the lines become an epipolar line, geometric image transformation technique called rectification [1] should be used. Through this rectification, two images are placed on the same epipolar line and matching points between images are located on the same scan line.

A method using hardware rather than software is preferred due to the problem of calculation speed. There are diverse rectification methods developed for stereo matching on hardware and the method of using a look-up table [2,3] is widely utilized. The advantage of the method using a look-look-up table is that embodiment is simple. However, coordinates of integer number values rectified by external calculation and weights in the form of real numbers are stored in the memory and used, and as a result a separate memory is needed. In order to improve such disadvantage, methods to perform the process of rectification in hardware on a real-time basis [4] have been developed. However, calculation is made using fixed-point with low precision due to the limit of hardware embodiment. This paper aims to propose a method to design a rectification hardware structure which has high precision by conducting rectification on a real-time basis using floating point IP created with a core generator by Xilinx [5] and which operates in images with HD level resolution (1280x720).

2. Matlab Toolbox by California Institute of Technology (Caltech)

At present, the most widely used rectification standard software is the calibration, rectification program [6] developed by Caltech and provided as Matlab Toolbox. It provides the best performance among released software.

2.1. Calibration

The calibration process is realized offline. Intrinsic parameters generated in the process of calibration are shown in Table 1 and they are generated independently from the left camera and the right camera. Each calibration parameter Fc, Cc, Alpha_c, and Kc means a camera’s internal elements like focal length, principal point, and asymmetric coefficient and radial distortion and tangential distortion. Extrinsic parameters are and explain transformation relationship between the camera coordinate system and the world coordinate system. Each calibration parameter of Om and T is calculated using variables obtained from each of the left and right cameras and expresses the two coordinate systems’ rotation and translation transformation, respectively.

(3)

Fig. 1. Off-line stereo calibration step Table 1. Calibration parameter[7]

parameter Description

Fc 2×1 matrix, Focal length

Cc 2×1 matrix, Principal point Alpah_c Scalar, Skew coefficient

Kc 5×1 matrix, Distortion

Om 3×1 matrix, Rotation Parameter

T 3×1 matrix, Translation Parameter

A transformation matrix (KK)[7] may be made by mixing intrinsic parameters in Table 1. Pose matrix reflecting both intrinsic and extrinsic parameters is generated and used for hardware calculation.

» » » ¼ º « « « ¬ ª u X W W jŠ mŠ W jŠ mŠ h“—ˆ†Š mŠ rrd Y Y X X X (1) X {

rr

Gy

w–šŒG

x  (2)

As mentioned before, calibration parameters calculated using the above calibration parameters of early period and the formulas (1) and (2) are calculated under the offline condition through the correction pattern as in Figure 1 and are directly used for real-time processing in the rectification stage.

2.2. Rectification

The process of rectification is to remove distortion from images input by the cameras and to unify the epipolar line. To this end, objects in the cameras’ coordinate systems are transformed into those in the world coordinate system using intrinsic and extrinsic parameters and then distortion is got rid of and the epipolar line is unified.

Thereafter, when the world coordinate is reverse-transformed into the camera coordinate systems and projected into a two-dimensional image coordinate system, coordinates with real number form result. Therefore the final value may be obtained by applying bilinear interpolation using the four pixel values

(4)

adjoining the relevant coordinates. Details on the rectification process will be explained in the third section below together with hardware design.

3. Proposed hardware architecture

Fig. 2. A block diagram of Rectifier 3.1. Rectification Calculator

Rectification calculator calculates the parameters which are input, and then calculates by each pixel clock from which part of the input images each pixel of resulting images is brought.

x In Destination address generator block, Destination coordinates of images are sequentially output in line with read sync signals.

x In Pose calculator block, post matrix of the formula (2) is received as a variable and rotation and translation transformation are performed.

x In Distortion calculator block, distortion within the camera is revised using Kc matrix variable in Table 1 in the world coordinate system calculated by applying rotation and translation transformation in the pose calculation part.

x In Source address generator block, inner product of coordinates, whose distortion has been revised in the world coordinate, is performed with KK matrix made using Fc, Cc, and Alpah_c matrixes and then mapped into the camera’s coordinates.

3.2. Memory Interface

(5)

Memory interface stores input images in memory in line with write sync signal, and reads 4 pixels around the integer number part coordinate received from rectification calculator according to read sync signals and delivers them to bilinear interpolator.

3.3. Bilinear Interpolator

In this block, bilinear interpolation is embodied using four pixels around the integer part coordinate derived through rectification calculator and fraction part coordinate calculated. Here is the final output value of the hardware embodied in this paper.

4. Experimental Results

The image used in this experiment is a 1280x720 gray scale image. The result which is output when performing the function of rectification through Matlab Toolbox and the result which is output from the VHDL simulation were compared

The design and experiment were conducted with two precision levels as follows. x Use of floating point calculation with single precision

x Use of floating point calculation with double precision

x Use of floating point calculation with double precision, Bilinear Interpolator with single precision

(a) (b) Fig. 4. (a) Un-rectified Image, (b) Rectified Image

The result of calculating difference between the two images using PSNR and SSIM is shown in Table 2. Floating point calculation with single precision consumes much less hardware resources but triggers slight errors.

Table 2. Result comparison between Matlab and VHDL

Compared algorithm single precisionfloating point double precisionfloating point (Bilinear Interpolator : single precision)double precision floating point

Pixel differences (>0) 129 0 2

Pixel differences (>1) 0 0 0

PSNR 86.704 dB ∞ 103.03 dB

(6)

Table 3. Result comparison between Matlab and VHDL Logic Utilization Available single precision floating point double precision floating point

double precision floating point (Bilinear Interpolator : single precision) Slice LUTs 1221600 38110 (3.11%) 87613 (7.17%) 74254 (6.09%) LUT as Logic 1221600 35430 (2.90%) 84028 (6.87%) 70987 (5.81%) LUT as Memory 344800 2680 (0.77%) 3585 (1.03%) 3267 (0.95%) Slice Registers 2443200 48316 (1.97%) 122541 (5.01%) 106873 (4.47%) RAMB36/FIFO36 1292 72 (5.57%) 74 (5.72%) 74 (5.72%) RAMB18/FIFO18 2584 2 (0.07%) 0 (0%) 0 (0%)

Device mapping of developed VHDL code onto a model Vertex-7 v2000tflg 1925-1 was attempted and it was verified that real-time operation was possible.

5. Conclusion

Through this study, rectification function for stereo matching was successfully embodied with hardware and as the experiment result shows, real-time operation with very high precision in FPGA was verified. Through this, it was verified that extracting precise distance information was made possible by performing precise rectification. And also, developed rectification system can be used for a stereo matching device for recognition of smart TV gestures.

Acknowledgements

This work was supported by the ETRI R&D Program of MSIP(Ministry of Science, ICT & Future Planning), Korea [11921-03001, "Development of Beyond Smart TV Technology"], also supported by a National Research Foundation of Korea Grant funded by the Korean Government (No. 2012-007498), and also supported by the Technology Innovation Program(Development of SR Image Scaler for 4K UHD) under Grant K10041900.

References

[1] Papadimitriou DV, Dennis TJ. Epipolar line estimation and rectification for stereo image pairs. Image Processing, IEEE Transactions on 1996;5.4: 672-676.

[2] Vancea C, Nedevschi S. LUT-based image rectification module implemented in FPGA. In: Intelligent Computer Communication and Processing, 2007 IEEE International Conference on. 2007;147-154. [3] Jia Y, et al. A miniature stereo vision machine (MSVM-III) for dense disparity mapping. In: Pattern Recognition, ICPR 2004. Proceedings of the 17th International Conference on. 2004;728-731.

[4] Matthias P, et al. An efficient and scalable architecture for real-time distortion removal and rectification of live camera images. In: Reconfigurable Computing and FPGAs (ReConFig), 2012 International Conference on 2012;1-7.

[5] online : http://www.xilinx.com/tools/ coregen.htm

[6] online : http://www.vision.caltech.edu/ bouguetj/calib_doc

References

Related documents

The Cdc68 N-terminal domain is altered by tempera- ture-sensitive point mutations: In cdc68-1 and cdc68-197 cells certain noncomplementing plasmids harboring only fragments of the

The position of “a patriot of Russia who is proud of the historical past of the joint life of our peoples” was marked by the respon- dents in the age group “from 50 to 60 years”

The aim of this study was threefold: (i) to analyze samples of oral fluid and self-reported data from questionnaires to investigate the prevalence of alcohol and drugs among a sample

Instead of centering White practitioners and their motivations for practicing TEAM, thinking about TEAM and QEAY in existing public health research is a much richer topic that

Combined with the actual situation of SW holding group, proposed to increase the EVA evaluation system, introduced the Balanced Scorecard performance evaluation to improve

Two areas were investigated outside the limits of the ancient Agora. Since it is located only about 75 meters from the southeast corner of the Agora and the church lot

with commentary.. the letters of the word AE[X4o]t' were also lost. There is no evidence otherwise that the stone was broken at the right. I assume, therefore, that the only

hydroquinone, together with four known sesquiterpene hydroquinones and one hydrocarbon have extract of the marine brown alga Dictyopteris undulata ). The