Perspective Correction Implementation for Embedded (Marker-Based) Augmented Reality
|
|
- Chastity Sarah Curtis
- 6 years ago
- Views:
Transcription
1 Perspective Correction Implementation for Embedded (Marker-Based) Augmented Reality Bernardo F. Reis, João Marcelo X. N. Teixeira, Veronica Teichrieb, Judith Kelner Universidade Federal de Pernambuco, Centro de Informática, Grupo de Pesquisa em Realidade Virtual e Multimídia {bfrs, jmxnt, vt, jk}@cin.ufpe.br Abstract Most of augmented reality applications need mobility and processing power to efficiently provide immersion to the end user. These requirements can be achieved using embedded devices such as FPGAs to execute the application. In order to work properly, idmarker-based applications require removing the perspective distortion of the input images, so that it s possible to have the correct reading of the id. Several approaches can be taken to fix the perspective distortion in an image, as 4 points mapping and the use of parallel and perpendicular lines. This work presents an FPGA implementation of a module that uses 4 points mapping to calculate the corresponding homography between images, in order to solve the problem of perspective distortion correction in an embedded AR system. 1. Introduction Augmented reality (AR) applications play their most significant role as systems that can be easily taken and used anywhere. However, just as any other graphic application, they require some processing power so that a realistic experience can be provided to the user. An embedded architecture developed on an FPGA (Field Programmable Gate Array) would supply both mobility and processing power to the AR solution, as it is a tiny chip and has the efficiency of hardware level execution. Embedding the whole AR pipeline would spread the use of this technology, since it would enable AR applications to run on compact devices. Marker-based AR systems use markers to keep track of the position in which the digital objects will be rendered. Fiducial marker systems consist in patterns that should be uniquely identified in the environment by some detection algorithm. One of these systems is the BCH marker system, based on the Bose- Chaudhuri-Hocquenghem code [1], which allows up to 4096 markers and is used in the ARToolkit Plus library. This type of marker consists of a black square border and an interior region filled with a 6x6 grid of black and white cells. These cells represent a 36-bit code. Such id-based marker systems are widely used in AR applications, where the reference of each marker is important. The detection algorithm of an id-based system such as the one described above basically identifies the markers on the image frame and reads the code drawn upon it. However, if the marker s plane is not aligned to the screen s plane, it s needed to find a mapping between the two planes, known as homography. The homography is used to make possible the correct reading of the id drawn on the marker, which is then checked using a specific matching algorithm. In order to do so, there are some algorithms already developed to extract such perspective distortion. One of these approaches uses parallel and perpendicular lines, which is described in [2]. It identifies a pair of parallel lines that intersect each other in the perspective image, uses the line that passes through the intersection points to remove the projective component of the distortion, finds a pair of perpendicular lines and uses it to remove the affine component. The approach chosen to be used for the perspective distortion correction module presented in this paper requires 4 non-collinear points to create the mapping between the two planes. These points generate a set of 8 equations. To solve these equations an LU decomposition algorithm may be applied, due to its simplicity, as described in [3]. This algorithm writes the corresponding matrix of the set of equations as a product of a lower and upper triangular matrix. The equations are then solved using forward and backward substitution. This work focuses on the development and validation of an embedded perspective correction module, based on the LU decomposition algorithm, thus enabling the identification of id-based markers.
2 This module is part of ARCam, a framework for the development of embedded AR solutions. ARCam aims on facilitating the creation of new applications using the available hardware infrastructure. With this framework, it will be possible to create different types of solutions, for example, smart cameras programmed to perform equipment inspection [4][5][6]. This work also presents an optimized module, which doesn t require to perform the LU decomposition itself. In sequence, section 2 presents related work on embedded AR systems, section 3 explains id-based marker detection and section 4 describes perspective distortion modeling, as well as how to correct it. After that, section 5 explains the LU decomposition algorithm used and section 6 presents the FPGA implementation of perspective distortion correction using LU decomposition. Section 7 introduces the optimizations done to the previous developed module and section 8 presents its implementation. Finally, some conclusions are discussed in section Related work Most of the AR applications developed so far has been done targeting PCs or workstations. However, there are some AR applications already developed targeting embedded platforms, such as [7] and [8]. Piekarski et al. [7] propose a low powered AR application using FPGAs, applying colored balls as markers. Since the system scans the image for a spot of a specific color, it s very hard to distinguish a marker from a random object of the same color, producing high false positive rates. Also, there is no way to differentiate two markers on the scene. Real world image is acquired and processed using an FPGA. The coordinates of the markers are calculated and sent to a computer that renders the virtual image. The virtual image and the real world image are put together by a video combiner and then the output is displayed using a HMD (Head Mounted Display). Toledo et al. [8] implement an AR application for visually impaired people on an FPGA. No markers are used as the system only needs to superimpose contour information of the real world image. A Cellular Neural Network is used to extract the contour information. There are some other Computer Vision applications implemented on FPGAs, including [9], that proposes an FPGA architecture for static background subtraction in real time, which is very similar to any AR architecture. As for AR and Computer Vision applications, its hardware implementation is clearly feasible. Solving linear systems using embedded devices is also possible, as shown in [10], where sparse matrices are factorized in parallel. In order to do so, Wang et al. [10] implemented a highly parallel Block-Diagonal- Bordered algorithm for LU decomposition. To simplify the design and reduce the implementation time, there were used six Altera Nios configurable Intellectual Property processors for computation and control. They also compare their parallel solution with a sequential one, based on Nios and a hardware floating-point unit (FPU), achieving significant speedup. 3. Basic concepts Before explaining the implementation of the perspective distortion correction module, some necessary background is provided. First, the AR pipeline and the perspective distortion are explained. Then the LU decomposition algorithm and the optimizations applied are presented Marker detection In order to compose an AR scene, it's necessary to take several steps since the input image from the camera. These steps, detailed in Figure 1, compose the AR pipeline. Apart from the step shown with dashed contour, every other step in the pipeline has already been developed in ARCam, what leads to an almost complete AR embedded framework. The step of marker detection is one of the procedures required to develop AR applications. Markers create a link between physical and digital worlds. Once a marker is found in a frame, it is possible to extract its position and other properties to render some digital object upon it. Marker s characteristics depend on the marker system it belongs to. There are several marker systems already developed. The application requirements for pose estimation and tracking, like accuracy of the position detection, how quick is the detection and diversity of markers are some of the characteristics of marker systems that should be taken into account during an AR project. Newer marker systems even enable detection over marker partial occlusion and are robust to lightning conditions, which normally affect the detection rate. Figure 2 shows some examples of markers.
3 Figure 1. AR pipeline 3.2. Perspective distortion As shown in [2], perspective distortion can be modeled by the following projective transformation, as written in equation (1), where p and p are 3-vectors representing a point and H is a homogeneous nonsingular 3x3 matrix. (1) Figure 2. Examples of marker systems The procedure that detects a planar, square shaped and id-based marker, as the one chosen in this work, consists in scanning the image looking for square shapes, correcting the perspective distortion of the image, reading and identifying the id drawn on the marker. This work tackles the perspective distortion correction issue in an embedded solution. The square shape of the markers has an important role in its detection, as its corners provide the 4 points that will be used on the mapping between reference s and marker s plane. To get the coordinates of the corners, a specific algorithm to detect rectangles is applied to the input image. This algorithm scans the image for contours based on the contrast of the marker s black border. Then it checks if each contour is a rectangle, analyzing the angle between the edges and the number of edges. If the contour is finally accepted as a rectangle, the coordinates of the vertices are used to correct the perspective distortion of the marker. With 4 point correspondences, it is possible to extract 8 equations to generate matrix H, as written in equation (2). (2) Assuming that 1 and since we only have 8 equations, it is possible to mount the following matrix presented in equation (3) using the previous 8 equations: (3) It is enough to solve H up to an insignificant multiplicative factor, as only the ratio of the elements matters. In order to eliminate this multiplicative factor, it is imposed that the norm of the matrix be 1. To solve this set of linear equations, it is possible to apply several algorithms. This work proposes using LU decomposition along with forward and backward
4 substitution. As H is found, it is possible to estimate image s marker from the reference marker and then to read its code LU decomposition The LU decomposition algorithm is used to factorize a matrix into a lower and an upper triangular matrix, as shown in equation (4). Once these triangular matrices are found, it becomes extremely easy to perform some tasks as to solve a set of linear equations, find the inverse matrix and calculate the determinant Optimizations Although the LU decomposition algorithm runs fast enough for being used in AR systems, there were some optimizations that could be done to improve its performance even more. Observing that the reference points are always the same, as the marker plane is always mapped to the screen plane, a lot of operations could be removed from the solution. Placing the reference marker s vertices as shown in Figure 3 enables a significant simplification in matrix H calculation. (4),,,,, ,,,,,,,,, ,,,,,,,,, , 0,,,.,,, There is more than one way to perform the LU decomposition algorithm. This work implements LU decomposition based on Crout s method, following the description in [3]. Crout s method splits the matrix into a lower and an unit upper triangular matrix. It requires pivoting in order to ensure stability, so implicit pivoting was implemented. The implicit pivoting basically interchanges the rows in order to have, for each column, the row with the highest pivot. The procedure of decomposing the matrix using Crout s method can be formulated as the following assignments (equations 5 and 6), for each 1, and 1, :,,,,, (5) 1,,, (6), Once the matrix is finally decomposed into the two triangular matrices, it s ready to be used for solving the linear system. In order to solve a set of linear equations such as (7), it is needed to solve first (8) for y using forward substitution and then (9) for x by back substitution. (7) (8) (9) Figure 3. Reference marker coordinates after optimizations. After applying the simplifications to the matrix, it is no longer necessary to execute the LU decomposition algorithm, since the linear system has become simple enough to be solved with only a few operations. In the end, two different modules were implemented. The first one, explained in section 4, solved the linear system using LU decomposition, while the second one the enhanced version, presented in section 4.1 simply do some mathematics operations to find matrix H. 4. Implementation The FPGA implementation of the module that performs the perspective distortion correction based on the LU decomposition algorithm was done targeting a Stratix II EP2S60F1020C4 DSP development board from Altera, running at 25MHz. It was performed using the programming language for hardware design VHDL (Very-High-Speed Integrated Circuits Hardware Description Language). The entire process was implemented in two components, which are executed in sequence. The first one creates and splits the matrix H of the linear system into two triangular matrices and the second solves the linear system forward and backwards as explained in
5 section 3.3. The first component presents a heavy overhead caused by control flow operations, as it has to iterate over the whole matrix twice. The components share two M4K memory blocks that store the matrix. The board features a 100MHz oscillator, but, due to design constraints, the clock frequency is limited to 25MHz. In order to speed up execution, fixed-point arithmetic was adopted. 16 bits were used to represent the integer part and other 16 bits to represent the fractional part. Precision loss is not critical, but coordinates values needed to be shifted right by 5 bits due to overflow problems. The first component used four 32-bit multipliers and one 32-bit divider. The second component used one 32-bit multiplier, one 32-bit divider and one 48-bit square root calculator. The multipliers and dividers were supplied as Altera s MegaCore functions, while the square root calculator was implemented by the authors. The multipliers use one 36x36 digital signal processor (DSP) each and the divider is pipelined with a latency of 10 clock cycles. Both components contain a finite state machine (FSM) that controls the data flow and models the implementation. First component s FSM has 158 states while second component s FSM has 47 states. When it isn t possible to split the matrix into two triangular matrices, i.e. the case of the matrix being singular, an error flag is set, warning other modules about the problem, and the procedure stops. Running at 25MHz, the total execution time is 63us, allowing almost LU decompositions per second. This way, it is possible to execute it more than 500 times per frame at 30 fps Enhanced version This optimized version of the perspective correction module was implemented targeting the same FPGA development board as the one used for the first implementation. Several simplifications were done to the whole system, including the reduction of operations executed and the removal of the memory block that allocated the matrix. However, the clock frequency remained the same due to a bottleneck in the division module. The solution of the linear system became so simple that only 23 additions/subtractions, 9 multiplications and 2 divisions were done to solve it. There was still need for applying the constraint which determines that the norm of the matrix has to be 1. Therefore, another 8 additions, 9 multiplications, 1 division and 1 squareroot operation were applied. As fewer operations were required, more bits could be used to perform them, achieving more precise results. 48-bit multipliers and divider were used, instead of the 32-bit versions utilized for the module that performed the LU decomposition. They were also supplied as Altera s MegaCore functions. Despite the enhanced version is the result of many optimizations, some improvements were also implemented to increment its functions capabilities, which increased the size of the module. Therefore, the amount of logic elements demanded for synthesizing it also increased. Table 1 presents the board occupation of the two implementations. Table 1. Logic elements consumption. ALUT ALM DSP blocks Memory bits LU Enhanced The main optimization is pertinent to the execution time. The reason is that, since the decomposition of the matrix is no longer needed, all the iterating over the matrix and the overhead due to its control flow were removed. The operations required to calculate the transformation matrix on the optimized perspective correction module are significantly simpler than performing the LU decomposition. Great speedup was achieved, as shown in Table 2. The maximum frequency indicated in Table 2 was provided by the Altera s synthesis tool Quartus II 5.1 and the clock cycles and execution times were acquired using Altera s logic analyzer Signal Tap II via JTAG (Joint Test Action Group) interface. Table 2. Execution time. Maximum frequency Clock cycles Execution time (25MHz) LU 34,66 MHz ,08 us Enhanced 25,42 MHz 114 4,54 us 5. Conclusion This work presents an FPGA implementation of a perspective distortion correction module for embedded marker-based AR systems. It solves a system of linear equations to calculate the homography between two images, as it is needed to detect markers. Besides the use within AR systems, part of the module implemented in this work can also be integrated into any other project that needs to solve a system of linear equations or find the inverse of a matrix. Minor changes may be necessary, because
6 some adaptations have been done to the input and output ports. Due to algorithm complexity, there was some instability in execution, which demanded a lot of time to be fixed. This instability also motivated the implementation of the enhanced module, which was created based on some optimizations that could be done to the linear system. The comparison between both modules showed that the obtained speedup was significant. The conclusion of the perspective distortion correction module takes ARCam one step closer to its first release. Having every step in the AR pipeline implemented, in a near future it will be possible to use the provided modules fully integrated for developing embedded AR applications. 6. Acknowledgements The authors want to thank MCT and CNPq, for financially supporting this research (process /2004-7). 7. References [1] R.C. Bose, and D.K. Ray-Chaudhuri, On a Class of Error Correcting Binary Group Codes, Information and Control, Elsevier, March 1960, pp [2] R. Hartley, and A. Zisserman, Multiple View Geometry in Computer Vision, Cambridge University Press, Cambridge, UK, [3] W.H. Press, B.P. Flannery, S.A. Teukolsky, W.T. Vetterling, Numerical Recipes in C: The Art of Scientific Computing, Cambridge University Press, Cambridge, UK, [4] G. Guimarães, J.P. Lima, J.M. Teixeira, G. Silva, V. Teichrieb, J. Kelner. FPGA infrastructure for the development of augmented reality applications, in Proceedings of Symposium on Integrated Circuits and Systems Design, Rio de Janeiro, 2007, pp [5] J.P. Lima, G. Guimarães, G. Dias, J.M. Teixeira, E. Xavier, V. Teichrieb, J. Kelner. ARCam: an FPGA-based augmented reality framework, in Proceedings of Symposium on Virtual and Augmented Reality, Petrópolis. Porto Alegre, 2007, pp [6] V. Teichrieb, J.M. Teixeira, J.P. Lima, J. Kelner. Markerless augmented reality based cameras using systemon-chip technology, in Proceedings of Interservice/Industry Training, Simulation & Education Conference, Orlando, EUA, 2007, pp [7] W. Piekarski, R. Smith, G. Wigley, B. Thomas, D. Kearney, Mobile Hand Tracking Using FPGAs for Low Powered Augmented Reality, in Proceedings of International Symposium on Wearable Computers, Washington, DC, USA, 2004, pp [8] E.J. Toledo, J.J. Martinez, E.J. Garrigos, J.M. Ferrandez, FPGA Implementation of an Augmented Reality Application for Visually Impaired People, in Proceedings of International Conference on Field Programmable Logic and Applications, Tampere, Finland, August 2005, pp [9] J. Oliveira, A. Printes, R.C.S. Freire, E. Melcher, I.S.S. Silva, FPGA Architecture for Static Background Subtraction in Real Time, in Proceedings of Symposium on Integrated Circuits and Systems Design, Ouro Preto, MG, Brazil, 2006, pp [10] X. Wang, S.G. Ziavras, Parallel Direct Solution of Linear Equations on FPGA-Based Machines, in Proceedings of International Symposium on Parallel and Distributed Processing, Nice, France, 2003, pp. 113.
Outline. Introduction System Overview Camera Calibration Marker Tracking Pose Estimation of Markers Conclusion. Media IC & System Lab Po-Chen Wu 2
Outline Introduction System Overview Camera Calibration Marker Tracking Pose Estimation of Markers Conclusion Media IC & System Lab Po-Chen Wu 2 Outline Introduction System Overview Camera Calibration
More informationAugmented reality with the ARToolKit FMA175 version 1.3 Supervisor Petter Strandmark By Olle Landin
Augmented reality with the ARToolKit FMA75 version.3 Supervisor Petter Strandmark By Olle Landin Ic7ol3@student.lth.se Introduction Agumented Reality (AR) is the overlay of virtual computer graphics images
More informationcalibrated coordinates Linear transformation pixel coordinates
1 calibrated coordinates Linear transformation pixel coordinates 2 Calibration with a rig Uncalibrated epipolar geometry Ambiguities in image formation Stratified reconstruction Autocalibration with partial
More informationPipelined Fast 2-D DCT Architecture for JPEG Image Compression
Pipelined Fast 2-D DCT Architecture for JPEG Image Compression Luciano Volcan Agostini agostini@inf.ufrgs.br Ivan Saraiva Silva* ivan@dimap.ufrn.br *Federal University of Rio Grande do Norte DIMAp - Natal
More informationCorrecting Radial Distortion of Cameras With Wide Angle Lens Using Point Correspondences
Correcting Radial istortion of Cameras With Wide Angle Lens Using Point Correspondences Leonardo Romero and Cuauhtemoc Gomez Universidad Michoacana de San Nicolas de Hidalgo Morelia, Mich., 58000, Mexico
More information2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into
2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel
More informationProject report Augmented reality with ARToolKit
Project report Augmented reality with ARToolKit FMA175 Image Analysis, Project Mathematical Sciences, Lund Institute of Technology Supervisor: Petter Strandmark Fredrik Larsson (dt07fl2@student.lth.se)
More informationOverview. Augmented reality and applications Marker-based augmented reality. Camera model. Binary markers Textured planar markers
Augmented reality Overview Augmented reality and applications Marker-based augmented reality Binary markers Textured planar markers Camera model Homography Direct Linear Transformation What is augmented
More informationParallel Implementations of Gaussian Elimination
s of Western Michigan University vasilije.perovic@wmich.edu January 27, 2012 CS 6260: in Parallel Linear systems of equations General form of a linear system of equations is given by a 11 x 1 + + a 1n
More informationGeometric camera models and calibration
Geometric camera models and calibration http://graphics.cs.cmu.edu/courses/15-463 15-463, 15-663, 15-862 Computational Photography Fall 2018, Lecture 13 Course announcements Homework 3 is out. - Due October
More informationA Scanning Method for Industrial Data Matrix Codes marked on Spherical Surfaces
A Scanning Method for Industrial Data Matrix Codes marked on Spherical Surfaces ION-COSMIN DITA, MARIUS OTESTEANU Politehnica University of Timisoara Faculty of Electronics and Telecommunications Bd. Vasile
More informationPlanar homographies. Can we reconstruct another view from one image? vgg/projects/singleview/
Planar homographies Goal: Introducing 2D Homographies Motivation: What is the relation between a plane in the world and a perspective image of it? Can we reconstruct another view from one image? Readings:
More informationOcclusion Detection of Real Objects using Contour Based Stereo Matching
Occlusion Detection of Real Objects using Contour Based Stereo Matching Kenichi Hayashi, Hirokazu Kato, Shogo Nishida Graduate School of Engineering Science, Osaka University,1-3 Machikaneyama-cho, Toyonaka,
More informationStereo Vision. MAN-522 Computer Vision
Stereo Vision MAN-522 Computer Vision What is the goal of stereo vision? The recovery of the 3D structure of a scene using two or more images of the 3D scene, each acquired from a different viewpoint in
More informationStereo Image Rectification for Simple Panoramic Image Generation
Stereo Image Rectification for Simple Panoramic Image Generation Yun-Suk Kang and Yo-Sung Ho Gwangju Institute of Science and Technology (GIST) 261 Cheomdan-gwagiro, Buk-gu, Gwangju 500-712 Korea Email:{yunsuk,
More informationCreating a distortion characterisation dataset for visual band cameras using fiducial markers.
Creating a distortion characterisation dataset for visual band cameras using fiducial markers. Robert Jermy Council for Scientific and Industrial Research Email: rjermy@csir.co.za Jason de Villiers Council
More informationFast Natural Feature Tracking for Mobile Augmented Reality Applications
Fast Natural Feature Tracking for Mobile Augmented Reality Applications Jong-Seung Park 1, Byeong-Jo Bae 2, and Ramesh Jain 3 1 Dept. of Computer Science & Eng., University of Incheon, Korea 2 Hyundai
More informationWATERMARKING FOR LIGHT FIELD RENDERING 1
ATERMARKING FOR LIGHT FIELD RENDERING 1 Alper Koz, Cevahir Çığla and A. Aydın Alatan Department of Electrical and Electronics Engineering, METU Balgat, 06531, Ankara, TURKEY. e-mail: koz@metu.edu.tr, cevahir@eee.metu.edu.tr,
More informationStructure from motion
Structure from motion Structure from motion Given a set of corresponding points in two or more images, compute the camera parameters and the 3D point coordinates?? R 1,t 1 R 2,t 2 R 3,t 3 Camera 1 Camera
More informationFault Tolerant Parallel Filters Based On Bch Codes
RESEARCH ARTICLE OPEN ACCESS Fault Tolerant Parallel Filters Based On Bch Codes K.Mohana Krishna 1, Mrs.A.Maria Jossy 2 1 Student, M-TECH(VLSI Design) SRM UniversityChennai, India 2 Assistant Professor
More informationDeep-Pipelined FPGA Implementation of Ellipse Estimation for Eye Tracking
Deep-Pipelined FPGA Implementation of Ellipse Estimation for Eye Tracking Keisuke Dohi, Yuma Hatanaka, Kazuhiro Negi, Yuichiro Shibata, Kiyoshi Oguri Graduate school of engineering, Nagasaki University,
More informationCOSC579: Scene Geometry. Jeremy Bolton, PhD Assistant Teaching Professor
COSC579: Scene Geometry Jeremy Bolton, PhD Assistant Teaching Professor Overview Linear Algebra Review Homogeneous vs non-homogeneous representations Projections and Transformations Scene Geometry The
More informationReal time game field limits recognition for robot self-localization using collinearity in Middle-Size RoboCup Soccer
Real time game field limits recognition for robot self-localization using collinearity in Middle-Size RoboCup Soccer Fernando Ribeiro (1) Gil Lopes (2) (1) Department of Industrial Electronics, Guimarães,
More informationHigh Speed Cryptoprocessor for η T Pairing on 128-bit Secure Supersingular Elliptic Curves over Characteristic Two Fields
High Speed Cryptoprocessor for η T Pairing on 128-bit Secure Supersingular Elliptic Curves over Characteristic Two Fields Santosh Ghosh, Dipanwita Roy Chowdhury, and Abhijit Das Computer Science and Engineering
More informationStructure from motion
Structure from motion Structure from motion Given a set of corresponding points in two or more images, compute the camera parameters and the 3D point coordinates?? R 1,t 1 R 2,t R 2 3,t 3 Camera 1 Camera
More informationImplementation Of Quadratic Rotation Decomposition Based Recursive Least Squares Algorithm
157 Implementation Of Quadratic Rotation Decomposition Based Recursive Least Squares Algorithm Manpreet Singh 1, Sandeep Singh Gill 2 1 University College of Engineering, Punjabi University, Patiala-India
More informationNumerical Linear Algebra
Numerical Linear Algebra Probably the simplest kind of problem. Occurs in many contexts, often as part of larger problem. Symbolic manipulation packages can do linear algebra "analytically" (e.g. Mathematica,
More informationPhysical Synthesis and Electrical Characterization of the IP-Core of an IEEE-754 Compliant Single Precision Floating Point Unit
Physical Synthesis and Electrical Characterization of the IP-Core of an IEEE-754 Compliant Single Precision Floating Point Unit Alian Engroff, Leonardo Tomazine Neto, Edson Schlosser and Alessandro Girardi
More informationUnit 1, Lesson 1: Moving in the Plane
Unit 1, Lesson 1: Moving in the Plane Let s describe ways figures can move in the plane. 1.1: Which One Doesn t Belong: Diagrams Which one doesn t belong? 1.2: Triangle Square Dance m.openup.org/1/8-1-1-2
More informationCS231A Course Notes 4: Stereo Systems and Structure from Motion
CS231A Course Notes 4: Stereo Systems and Structure from Motion Kenji Hata and Silvio Savarese 1 Introduction In the previous notes, we covered how adding additional viewpoints of a scene can greatly enhance
More informationCSE528 Computer Graphics: Theory, Algorithms, and Applications
CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin Stony Brook University (SUNY at Stony Brook) Stony Brook, New York 11794-2424 Tel: (631)632-845; Fax: (631)632-8334 qin@cs.stonybrook.edu
More informationarxiv: v1 [cs.cv] 28 Sep 2018
Camera Pose Estimation from Sequence of Calibrated Images arxiv:1809.11066v1 [cs.cv] 28 Sep 2018 Jacek Komorowski 1 and Przemyslaw Rokita 2 1 Maria Curie-Sklodowska University, Institute of Computer Science,
More informationFlexible Calibration of a Portable Structured Light System through Surface Plane
Vol. 34, No. 11 ACTA AUTOMATICA SINICA November, 2008 Flexible Calibration of a Portable Structured Light System through Surface Plane GAO Wei 1 WANG Liang 1 HU Zhan-Yi 1 Abstract For a portable structured
More informationFPGA IMPLEMENTATION FOR REAL TIME SOBEL EDGE DETECTOR BLOCK USING 3-LINE BUFFERS
FPGA IMPLEMENTATION FOR REAL TIME SOBEL EDGE DETECTOR BLOCK USING 3-LINE BUFFERS 1 RONNIE O. SERFA JUAN, 2 CHAN SU PARK, 3 HI SEOK KIM, 4 HYEONG WOO CHA 1,2,3,4 CheongJu University E-maul: 1 engr_serfs@yahoo.com,
More informationReal-Time Graphics Architecture
Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Geometry Outline Vertex and primitive operations System examples emphasis on clipping Primitive
More informationA SIMULINK-TO-FPGA MULTI-RATE HIERARCHICAL FIR FILTER DESIGN
A SIMULINK-TO-FPGA MULTI-RATE HIERARCHICAL FIR FILTER DESIGN Xiaoying Li 1 Fuming Sun 2 Enhua Wu 1, 3 1 University of Macau, Macao, China 2 University of Science and Technology Beijing, Beijing, China
More informationInterlude: Solving systems of Equations
Interlude: Solving systems of Equations Solving Ax = b What happens to x under Ax? The singular value decomposition Rotation matrices Singular matrices Condition number Null space Solving Ax = 0 under
More informationA Summary of Projective Geometry
A Summary of Projective Geometry Copyright 22 Acuity Technologies Inc. In the last years a unified approach to creating D models from multiple images has been developed by Beardsley[],Hartley[4,5,9],Torr[,6]
More informationLaboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication
Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.
More informationGEOMETRIC TOOLS FOR COMPUTER GRAPHICS
GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W
More informationMultiple View Geometry in Computer Vision
Multiple View Geometry in Computer Vision Prasanna Sahoo Department of Mathematics University of Louisville 1 Structure Computation Lecture 18 March 22, 2005 2 3D Reconstruction The goal of 3D reconstruction
More informationHigh-Performance Linear Algebra Processor using FPGA
High-Performance Linear Algebra Processor using FPGA J. R. Johnson P. Nagvajara C. Nwankpa 1 Extended Abstract With recent advances in FPGA (Field Programmable Gate Array) technology it is now feasible
More informationDesign and Implementation of Effective Architecture for DCT with Reduced Multipliers
Design and Implementation of Effective Architecture for DCT with Reduced Multipliers Susmitha. Remmanapudi & Panguluri Sindhura Dept. of Electronics and Communications Engineering, SVECW Bhimavaram, Andhra
More informationComputer Science 426 Midterm 3/11/04, 1:30PM-2:50PM
NAME: Login name: Computer Science 46 Midterm 3//4, :3PM-:5PM This test is 5 questions, of equal weight. Do all of your work on these pages (use the back for scratch space), giving the answer in the space
More informationCOMP 558 lecture 19 Nov. 17, 2010
COMP 558 lecture 9 Nov. 7, 2 Camera calibration To estimate the geometry of 3D scenes, it helps to know the camera parameters, both external and internal. The problem of finding all these parameters is
More informationDesign Optimization Techniques Evaluation for High Performance Parallel FIR Filters in FPGA
Design Optimization Techniques Evaluation for High Performance Parallel FIR Filters in FPGA Vagner S. Rosa Inst. Informatics - Univ. Fed. Rio Grande do Sul Porto Alegre, RS Brazil vsrosa@inf.ufrgs.br Eduardo
More informationCamera Calibration. Schedule. Jesus J Caban. Note: You have until next Monday to let me know. ! Today:! Camera calibration
Camera Calibration Jesus J Caban Schedule! Today:! Camera calibration! Wednesday:! Lecture: Motion & Optical Flow! Monday:! Lecture: Medical Imaging! Final presentations:! Nov 29 th : W. Griffin! Dec 1
More informationComputer Graphics Hands-on
Computer Graphics Hands-on Two-Dimensional Transformations Objectives Visualize the fundamental 2D geometric operations translation, rotation about the origin, and scale about the origin Learn how to compose
More informationQuixilica Floating Point FPGA Cores
Data sheet Quixilica Floating Point FPGA Cores Floating Point Adder - 169 MFLOPS* on VirtexE-8 Floating Point Multiplier - 152 MFLOPS* on VirtexE-8 Floating Point Divider - 189 MFLOPS* on VirtexE-8 Floating
More informationMETR Robotics Tutorial 2 Week 2: Homogeneous Coordinates
METR4202 -- Robotics Tutorial 2 Week 2: Homogeneous Coordinates The objective of this tutorial is to explore homogenous transformations. The MATLAB robotics toolbox developed by Peter Corke might be a
More informationCV: 3D sensing and calibration
CV: 3D sensing and calibration Coordinate system changes; perspective transformation; Stereo and structured light MSU CSE 803 1 roadmap using multiple cameras using structured light projector 3D transformations
More informationPERFORMANCE ANALYSIS OF LOAD FLOW COMPUTATION USING FPGA 1
PERFORMANCE ANALYSIS OF LOAD FLOW COMPUTATION USING FPGA 1 J. Johnson, P. Vachranukunkiet, S. Tiwari, P. Nagvajara, C. Nwankpa Drexel University Philadelphia, PA Abstract Full-AC load flow constitutes
More informationCSE 527: Introduction to Computer Vision
CSE 527: Introduction to Computer Vision Week 5 - Class 1: Matching, Stitching, Registration September 26th, 2017 ??? Recap Today Feature Matching Image Alignment Panoramas HW2! Feature Matches Feature
More informationPartial Calibration and Mirror Shape Recovery for Non-Central Catadioptric Systems
Partial Calibration and Mirror Shape Recovery for Non-Central Catadioptric Systems Abstract In this paper we present a method for mirror shape recovery and partial calibration for non-central catadioptric
More informationCSE328 Fundamentals of Computer Graphics
CSE328 Fundamentals of Computer Graphics Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 794--44 Tel: (63)632-845; Fax: (63)632-8334 qin@cs.sunysb.edu
More informationTwo-view geometry Computer Vision Spring 2018, Lecture 10
Two-view geometry http://www.cs.cmu.edu/~16385/ 16-385 Computer Vision Spring 2018, Lecture 10 Course announcements Homework 2 is due on February 23 rd. - Any questions about the homework? - How many of
More informationCAMI KEYS. TOPIC 1.1 Whole numbers to to to to to
TOPIC 1.1 Whole numbers GRADE 9_CAPS Curriculum 1. Numbers, operations and relationships CONTENT Properties of numbers Describing the real number system by recognizing, defining and distinguishing properties
More informationVendor Agnostic, High Performance, Double Precision Floating Point Division for FPGAs
Vendor Agnostic, High Performance, Double Precision Floating Point Division for FPGAs Xin Fang and Miriam Leeser Dept of Electrical and Computer Eng Northeastern University Boston, Massachusetts 02115
More informationWhite Paper Taking Advantage of Advances in FPGA Floating-Point IP Cores
White Paper Recently available FPGA design tools and IP provide a substantial reduction in computational resources, as well as greatly easing the implementation effort in a floating-point datapath. Moreover,
More informationA Factorization Method for Structure from Planar Motion
A Factorization Method for Structure from Planar Motion Jian Li and Rama Chellappa Center for Automation Research (CfAR) and Department of Electrical and Computer Engineering University of Maryland, College
More informationCHAPTER 1 INTRODUCTION
1 CHAPTER 1 INTRODUCTION 1.1 Advance Encryption Standard (AES) Rijndael algorithm is symmetric block cipher that can process data blocks of 128 bits, using cipher keys with lengths of 128, 192, and 256
More information3D Corner Detection from Room Environment Using the Handy Video Camera
3D Corner Detection from Room Environment Using the Handy Video Camera Ryo HIROSE, Hideo SAITO and Masaaki MOCHIMARU : Graduated School of Science and Technology, Keio University, Japan {ryo, saito}@ozawa.ics.keio.ac.jp
More informationRectification and Distortion Correction
Rectification and Distortion Correction Hagen Spies March 12, 2003 Computer Vision Laboratory Department of Electrical Engineering Linköping University, Sweden Contents Distortion Correction Rectification
More informationTextureless Layers CMU-RI-TR Qifa Ke, Simon Baker, and Takeo Kanade
Textureless Layers CMU-RI-TR-04-17 Qifa Ke, Simon Baker, and Takeo Kanade The Robotics Institute Carnegie Mellon University 5000 Forbes Avenue Pittsburgh, PA 15213 Abstract Layers are one of the most well
More informationComputer Graphics. - Rasterization - Philipp Slusallek
Computer Graphics - Rasterization - Philipp Slusallek Rasterization Definition Given some geometry (point, 2D line, circle, triangle, polygon, ), specify which pixels of a raster display each primitive
More informationImage processing and features
Image processing and features Gabriele Bleser gabriele.bleser@dfki.de Thanks to Harald Wuest, Folker Wientapper and Marc Pollefeys Introduction Previous lectures: geometry Pose estimation Epipolar geometry
More informationOutline. ETN-FPI Training School on Plenoptic Sensing
Outline Introduction Part I: Basics of Mathematical Optimization Linear Least Squares Nonlinear Optimization Part II: Basics of Computer Vision Camera Model Multi-Camera Model Multi-Camera Calibration
More informationMERGING POINT CLOUDS FROM MULTIPLE KINECTS. Nishant Rai 13th July, 2016 CARIS Lab University of British Columbia
MERGING POINT CLOUDS FROM MULTIPLE KINECTS Nishant Rai 13th July, 2016 CARIS Lab University of British Columbia Introduction What do we want to do? : Use information (point clouds) from multiple (2+) Kinects
More informationUnit 3 Multiple View Geometry
Unit 3 Multiple View Geometry Relations between images of a scene Recovering the cameras Recovering the scene structure http://www.robots.ox.ac.uk/~vgg/hzbook/hzbook1.html 3D structure from images Recover
More informationDense Matrix Algorithms
Dense Matrix Algorithms Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar To accompany the text Introduction to Parallel Computing, Addison Wesley, 2003. Topic Overview Matrix-Vector Multiplication
More informationLecture 1.3 Basic projective geometry. Thomas Opsahl
Lecture 1.3 Basic projective geometr Thomas Opsahl Motivation For the pinhole camera, the correspondence between observed 3D points in the world and D points in the captured image is given b straight lines
More informationAugmented Reality of Robust Tracking with Realistic Illumination 1
International Journal of Fuzzy Logic and Intelligent Systems, vol. 10, no. 3, June 2010, pp. 178-183 DOI : 10.5391/IJFIS.2010.10.3.178 Augmented Reality of Robust Tracking with Realistic Illumination 1
More informationIdentifying Car Model from Photographs
Identifying Car Model from Photographs Fine grained Classification using 3D Reconstruction and 3D Shape Registration Xinheng Li davidxli@stanford.edu Abstract Fine grained classification from photographs
More informationAbstract. Introduction. Kevin Todisco
- Kevin Todisco Figure 1: A large scale example of the simulation. The leftmost image shows the beginning of the test case, and shows how the fluid refracts the environment around it. The middle image
More informationAutomatic Feature Extraction of Pose-measuring System Based on Geometric Invariants
Automatic Feature Extraction of Pose-measuring System Based on Geometric Invariants Yan Lin 1,2 Bin Kong 2 Fei Zheng 2 1 Center for Biomimetic Sensing and Control Research, Institute of Intelligent Machines,
More informationStructure from Motion CSC 767
Structure from Motion CSC 767 Structure from motion Given a set of corresponding points in two or more images, compute the camera parameters and the 3D point coordinates?? R,t R 2,t 2 R 3,t 3 Camera??
More informationPin Hole Cameras & Warp Functions
Pin Hole Cameras & Warp Functions Instructor - Simon Lucey 16-423 - Designing Computer Vision Apps Today Pinhole Camera. Homogenous Coordinates. Planar Warp Functions. Example of SLAM for AR Taken from:
More informationANNUAL NATIONAL ASSESSMENT 2014 ASSESSMENT GUIDELINES MATHEMATICS GRADE 8
ANNUAL NATIONAL ASSESSMENT 2014 ASSESSMENT GUIDELINES MATHEMATICS GRADE 8 INTRODUCTION The 2014 cycle of Annual National Assessment (ANA 2014) will be administered in all public and designated 1 independent
More informationComputational Methods CMSC/AMSC/MAPL 460. Vectors, Matrices, Linear Systems, LU Decomposition, Ramani Duraiswami, Dept. of Computer Science
Computational Methods CMSC/AMSC/MAPL 460 Vectors, Matrices, Linear Systems, LU Decomposition, Ramani Duraiswami, Dept. of Computer Science Zero elements of first column below 1 st row multiplying 1 st
More informationA NON-TRIGONOMETRIC, PSEUDO AREA PRESERVING, POLYLINE SMOOTHING ALGORITHM
A NON-TRIGONOMETRIC, PSEUDO AREA PRESERVING, POLYLINE SMOOTHING ALGORITHM Wayne Brown and Leemon Baird Department of Computer Science The United States Air Force Academy 2354 Fairchild Dr., Suite 6G- USAF
More informationAUGMENTED REALITY. Antonino Furnari
IPLab - Image Processing Laboratory Dipartimento di Matematica e Informatica Università degli Studi di Catania http://iplab.dmi.unict.it AUGMENTED REALITY Antonino Furnari furnari@dmi.unict.it http://dmi.unict.it/~furnari
More informationDense 3D Reconstruction. Christiano Gava
Dense 3D Reconstruction Christiano Gava christiano.gava@dfki.de Outline Previous lecture: structure and motion II Structure and motion loop Triangulation Wide baseline matching (SIFT) Today: dense 3D reconstruction
More informationDetecting and recognizing centerlines as parabolic sections of the steerable filter response
Detecting and recognizing centerlines as parabolic sections of the steerable filter response Petar Palašek, Petra Bosilj, Siniša Šegvić Faculty of Electrical Engineering and Computing Unska 3, 10000 Zagreb
More informationAn Overview of Matchmoving using Structure from Motion Methods
An Overview of Matchmoving using Structure from Motion Methods Kamyar Haji Allahverdi Pour Department of Computer Engineering Sharif University of Technology Tehran, Iran Email: allahverdi@ce.sharif.edu
More informationCOMPARATIVE STUDY OF DIFFERENT APPROACHES FOR EFFICIENT RECTIFICATION UNDER GENERAL MOTION
COMPARATIVE STUDY OF DIFFERENT APPROACHES FOR EFFICIENT RECTIFICATION UNDER GENERAL MOTION Mr.V.SRINIVASA RAO 1 Prof.A.SATYA KALYAN 2 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING PRASAD V POTLURI SIDDHARTHA
More informationOn Massively Parallel Algorithms to Track One Path of a Polynomial Homotopy
On Massively Parallel Algorithms to Track One Path of a Polynomial Homotopy Jan Verschelde joint with Genady Yoffe and Xiangcheng Yu University of Illinois at Chicago Department of Mathematics, Statistics,
More informationAdvanced Surface Based MoM Techniques for Packaging and Interconnect Analysis
Electrical Interconnect and Packaging Advanced Surface Based MoM Techniques for Packaging and Interconnect Analysis Jason Morsey Barry Rubin, Lijun Jiang, Lon Eisenberg, Alina Deutsch Introduction Fast
More informationComputational Methods CMSC/AMSC/MAPL 460. Vectors, Matrices, Linear Systems, LU Decomposition, Ramani Duraiswami, Dept. of Computer Science
Computational Methods CMSC/AMSC/MAPL 460 Vectors, Matrices, Linear Systems, LU Decomposition, Ramani Duraiswami, Dept. of Computer Science Some special matrices Matlab code How many operations and memory
More informationCSE 252B: Computer Vision II
CSE 252B: Computer Vision II Lecturer: Serge Belongie Scribe: Jayson Smith LECTURE 4 Planar Scenes and Homography 4.1. Points on Planes This lecture examines the special case of planar scenes. When talking
More informationCamera model and multiple view geometry
Chapter Camera model and multiple view geometry Before discussing how D information can be obtained from images it is important to know how images are formed First the camera model is introduced and then
More informationPerspective Correction Methods for Camera-Based Document Analysis
Perspective Correction Methods for Camera-Based Document Analysis L. Jagannathan and C. V. Jawahar Center for Visual Information Technology International Institute of Information Technology Gachibowli,
More informationSystem Verification of Hardware Optimization Based on Edge Detection
Circuits and Systems, 2013, 4, 293-298 http://dx.doi.org/10.4236/cs.2013.43040 Published Online July 2013 (http://www.scirp.org/journal/cs) System Verification of Hardware Optimization Based on Edge Detection
More informationHomogeneous Coordinates. Lecture18: Camera Models. Representation of Line and Point in 2D. Cross Product. Overall scaling is NOT important.
Homogeneous Coordinates Overall scaling is NOT important. CSED44:Introduction to Computer Vision (207F) Lecture8: Camera Models Bohyung Han CSE, POSTECH bhhan@postech.ac.kr (",, ) ()", ), )) ) 0 It is
More informationA General Expression of the Fundamental Matrix for Both Perspective and Affine Cameras
A General Expression of the Fundamental Matrix for Both Perspective and Affine Cameras Zhengyou Zhang* ATR Human Information Processing Res. Lab. 2-2 Hikari-dai, Seika-cho, Soraku-gun Kyoto 619-02 Japan
More informationAugmented Reality II - Camera Calibration - Gudrun Klinker May 11, 2004
Augmented Reality II - Camera Calibration - Gudrun Klinker May, 24 Literature Richard Hartley and Andrew Zisserman, Multiple View Geometry in Computer Vision, Cambridge University Press, 2. (Section 5,
More informationMonocular Vision-based Displacement Measurement System Robust to Angle and Distance Using Homography
6 th International Conference on Advances in Experimental Structural Engineering 11 th International Workshop on Advanced Smart Materials and Smart Structures Technology August 1-2, 2015, University of
More informationLecture 3 Sections 2.2, 4.4. Mon, Aug 31, 2009
Model s Lecture 3 Sections 2.2, 4.4 World s Eye s Clip s s s Window s Hampden-Sydney College Mon, Aug 31, 2009 Outline Model s World s Eye s Clip s s s Window s 1 2 3 Model s World s Eye s Clip s s s Window
More informationVHDL Implementation of Multiplierless, High Performance DWT Filter Bank
VHDL Implementation of Multiplierless, High Performance DWT Filter Bank Mr. M.M. Aswale 1, Prof. Ms. R.B Patil 2,Member ISTE Abstract The JPEG 2000 image coding standard employs the biorthogonal 9/7 wavelet
More informationMobile Robot Path Planning Software and Hardware Implementations
Mobile Robot Path Planning Software and Hardware Implementations Lucia Vacariu, Flaviu Roman, Mihai Timar, Tudor Stanciu, Radu Banabic, Octavian Cret Computer Science Department, Technical University of
More informationHigh Level Abstractions for Implementation of Software Radios
High Level Abstractions for Implementation of Software Radios J. B. Evans, Ed Komp, S. G. Mathen, and G. Minden Information and Telecommunication Technology Center University of Kansas, Lawrence, KS 66044-7541
More information