AUTOMATIC PROCEDURE FOR THE REGISTRATION OF THERMOGRAPHIC IMAGES WITH POINT CLOUDS

This paper presents a procedure for the automatic registration of thermographies with laser scanning point clouds. Given the heterogeneous nature of the two modalities, we propose a feature-based approach, satisfying the requisite that extracted features have to be invariant not only to rotation, translation and scale but also to changes in illumination and dimensionality. As speed and minimum operator interaction are prerequisites for the viability of the process in the building industry, our automatic registration procedure includes automatic feature extraction with no human intervention. With this aim, a line segment detector is used to extract 2D lines from thermographies, and 3D lines are extracted through segmentation of the point cloud. Feature-matching and the relative pose between thermographies and point cloud are obtained from an iterative procedure applied to detect and reject outliers; this includes rotation matrix and translation vector calculation and the application of the RANSAC algorithm to find a consistent set of matches. An automatically textured thermographic 3D model is the expected result of these procedures once the point cloud is filtered and triangulated.


INTRODUCTION 1.1 Motivations
Combining thermographic and geometrical data is a key issue for energy building inspection.This is because thermographies provide information about the actual condition of the building, whereas geometric data allows quantification for project management, and together they stand as a valuable product for further simulation and energy evaluation.An application example for this data combination is the characterization of the thermal bridges in a building: while thermographies provide information about temperature, geometric data provides information about the surface or the length of the thermal bridges; temperature and length, together with the thermal resistance of the bridge, are the parameters needed for the characterization of a thermal bridge in an energy analysis tool, such as Trnsys©.Furthermore, the registration of thermographies with the geometric data captured, for example by a laser scanner, leads to the spatial localization of thermal defects, making possible the placement of the detected thermal bridges and thermal anomalies in their exact position within the walls of the building.The wide range of possible applications has led to the increasing research in 3D modeling with thermographic images, both by applying photogrammetry techniques to the images alone (Luhmann et al, 2010) and by fusing them with a laser scanning point cloud (Lagüela et al, 2011).In the thermographic image -point cloud fusion approach, the main obstacle to be solved is the large number of thermographic images needed for a complete representation of a building.This is due to the limited field of view of current thermographic cameras, which makes image registration with the corresponding point cloud time consuming and inaccurate if the manual selection of control points is used.This has motivated the need for the automatic registration of thermographic images, as is done with images from a photographic camera (González-Aguilera et al, 2009;Liu & Stamos, 2005).Image registration with a point cloud can be directly performed if the thermographic camera and the laser scanner are connected via a rigid body and their pose remains fixed as data is acquired, as is usually the case in aerial LiDAR.However, this approach introduces many limitations, as the flexibility of the image acquisition is completely lost (Liu & Stamos, 2005) both from the geometric and temporal points of view; consequently it cannot be used in the thermographic case, where images have to be acquired almost perpendicular to the wall for the camera to capture radiation so as to minimize radiation from surrounding objects; on the other hand, the laser scanner only needs to see the 3D point from its position in order to measure its coordinates.Furthermore, image acquisition flexibility is appreciated in the building inspection application, as it is useful for building inspections to have a building model available to which thermographies from different inspections could be registered at different times of the year in order to keep the model updated or to monitor the energy consumption of the building within a year or across the years.Typically, two different approaches can be used to solve the registration of images with a point cloud.Some studies propose the calculation of the orientation parameters by solving a 2D -2D problem, which requires the projection of the point cloud onto a plane (González-Aguilera et al, 2009, Meierhold et al, 2010), and the extraction of features in both the visible image and the intensity or range image produced from the projection; the second possibility is to solve the 2D -3D problem, either by finding point correspondences between the point cloud and the image (Ding et al, 2008), or by extracting linear features (Stamos & Allen, 2001).This paper presents a methodology for the registration of thermographic images with a point cloud using the 2D -3D approach; this choice is supported by the fact that a great deal of valuable information about the shape and the geometric layout of objects is lost when a 2D image is formed from the corresponding 3D world (Koppula et al, 2011).This paper is organized as follows: Section 2 explains the different steps involved in the 2D -3D registration of thermographic images with the point cloud, from data acquisition to thermographic 3D model generation.Section 3 presents the results obtained with the application of the proposed methodologies to the thermographic 3D modelling of a wall in a room, and Section 4 includes conclusions.

Thermographic and geometric data acquisition
The proposed methodology involves the acquisition of data from two heterogeneous sensors, with different concepts of operation: thermographies are acquired with a thermographic camera, which absorbs radiation emitted by all bodies at a temperature over 0K in the infrared range of the spectrum, between 7 and 14 µm.According to the standards for use of thermography in building inspection (ISO 6781, 1983), the indoors thermographic survey should be performed under conditions that maximize indoor-to-outdoor temperature difference, and therefore optimize the detection of defects, such as heat loss and humidity.As a consequence, the perfect times are either at midday, when outdoor temperature reaches its maximum and indoor temperature is usually colder allowing the detection of incoming heat, or at the beginning of the day in winter, with the heaters turned on, allowing the detection of incoming cold air.From a metric point of view, thermographies must be acquired from a position forming an approximate angle of 25º with the normal of the inspected wall in order to avoid angle effects and to minimize reflections due to radiation of nearby objects (Asdrubali et al, 2012).The metric survey is performed with a laser scanner, from which the 3D representation of the scene, rather than images, is obtained.

Registration 2D -3D
This section includes a methodology for image registration with the point cloud solving the 2D -3D problem, similar to the approach followed in (Liu & Stamos, 2005).Registration is based on the extraction of line features both in the thermographic image and the point cloud, and the matching of line correspondences to solve for the rotation matrix and translation vector of the image with respect to the point cloud through the collinearity equations.Detailed workflows are shown in Figures 1 and 2.

Point cloud segmentation
Once all scans are registered in the same coordinate system, the first step consists of segmenting the point cloud.As this step is common to 3D modelling, there are numerous works on this topic, many of them performing curvature analysis for point cloud segmentation (Stamos & Allen, 2001;Belton & Lichti, 2006;Carlberg et al, 2009); for example in the outdoors, curvature analysis has been successfuly used to differentiate between scatter objects such as trees, planar objects such as building facades, and linear objects such as poles or power lines.
In this work, curvature analysis is performed by calculating the normal vector of each point in the point cloud as shown in Figure 1.This is done by Principal Component Analysis (PCA) using the covariance method (Jolliffe I.T., 2002), taking advantage of the fact that the eigenvector associated with the smallest eigenvalue is the normal vector of the point.This is done by analysing each point and its 50 closest neighbouring points (Belton & Lichti, 2006).Then, normal vector smoothing is performed by averaging normal vectors of points in the same neighbourhood, as in (Thürmer, 2001)  In parallel to the above steps, the computed eigenvalues from curvature analysis are also used to detect edges on discontinuities in the point cloud.In indoor scenes, there is usually a great deal of occlusions creating discontinuities in the point cloud which should be detected as lines in order to improve and facilitate image registration with thermographies.
The points belonging to discontinuity edges are classified via PCA analysis, exploiting the fact that their largest eigenvalue is 1.5 or 2 times larger than their second largest eigenvalue.

3D line detection
Once the planes are extracted, the points lying on their intersections form lines. Points following the boundaries of the point cloud and its holes also manifest themselves as lines.

2D line detection in thermographies
Lines in thermographic images are detected using the line segment detector (LSD) presented by (Grompone et al., 2010) as shown in Figure 3(a).This algorithm detects lines as locally straight contours, i.e., as zones in the image where the grey level changes fast enough.Therefore, the gradient orientation is computed for each pixel, and adjacent pixels sharing the same gradient orientation are grouped in regions which are considered to be lines if the gradient orientation of the region is significantly different from the gradient orientation of the surrounding pixels.Thus, lines are detected as rectangular regions as they do not only include pixels that strictly form a line but also the surrounding pixels sharing the same orientation.This is shown in Figure 3

Thermographic image -point cloud registration
Registration is performed through an iterative procedure as in (Liu et al., 1990), using RANSAC (Fischler and Bolles, 1981) to choose the triple of matches that finds the best solution of the collinearity equations (Luhmann et al., 2006).The procedure is shown in Figure 2 and can be described as follows: 1-Choose three lines in the set of 3D lines from the point cloud and in the set of 2D lines detected in the thermographic image.

2-
Solve for the rotation matrix and the translation vector through the collinearity equations, as a typical case of space resection, iterating until residuals reach a minimum value.

3-
Transform the lines in the thermographic image using the computed rotation matrix and translation vector into 3D.

4-
Count the number of common points between transformed 2D lines from thermographies to 3D lines from the point cloud.The entire process is repeated until the set of matches from which the rotation matrix is calculated results in the highest number of coincident points.

3D model
The point cloud is converted into a mesh of triangles, which are then textured with the corresponding thermographic images using the orientation results obtained through the collinearity equations in the iterative algorithm.

RESULTS
The proposed methodology has been applied to the study of the interior of a room, with a regular cubic shape.Thermographies are acquired with a thermographic camera NEC TH9260, whose sensor matrix is an Uncooled Focal Plane Array size 640x480 pixels.Its thermal resolution is 0.06ºC at 30ºC, and its field of vision is of 21.7º in the horizontal plane and 16.4º in the vertical plane.Therefore, for example, in order to cover one wall, 10 thermographies are required, with an overlap of 30%; an example of 3 consecutive images is shown in Figure 4.The thermographic survey was performed at midday on a sunny day in order to maximize indoor-to-outdoor temperature difference and therefore optimize the detection of defects such as heat loss and humidity.Indoor temperature was 27ºC, while outdoor temperature was several degrees below, at 19ºC.The blue rectangles show the overlapping areas between consecutive images, vertically and horizontally.
The metric survey was performed with a 3D long-range terrestrial laser scanning Riegl LMS-Z390i, type time-of-flight, which measures distances in a range of 1.5 to 400m, with a nominal precision of 4mm at 50m distance in normal illumination and reflectivity conditions.Fields of view in the vertical and horizontal planes are 80º and 360º respectively, with a maximum resolution of 0.002º.
In this case study, due to the limitation in the vertical field of view, it was necessary to tilt the laser in order to acquire the data missing at 40º and -80 º with respect to the vertical axis.
The room was scanned with a resolution of 0.02º, acquiring a point cloud of the complete room with 1,998,000 points.However, given that the main objective of this work is the validation of the methodology proposed, only the wall with windows and furniture is used, removing from the acquired point cloud the 3D points on the side walls, the ceiling, and the floor in order to simplify the computation.As a result, the point cloud used for this work consists of 11,988 points, representing one wall with occlusions due to the presence of four wardrobes and a chest of drawers, and windows.A view of the used point cloud for the wall under study is shown in Figure 5. Principal Component Analysis is performed for the calculation of the normal vector of each point in the point cloud.As shown in Figure 6, points are then classified into different planes based on the direction of their normal vector, so that points with a normal vector pointing towards the same direction, with a threshold of 45º, are put together in the same group.As shown in Figure 7, for each direction points are then classified with a distance criterion: points in the "main wall" group are classified according to their x value, points in the "side wall" group are classified depending on their y value, and points in the "horizontal" group are separated based on their z value.The next step consists of detecting the cluster of points belonging to intersection lines of the different planes: "main wall" and "side wall" planes are intersected in vertical lines, while their intersections with "horizontal" planes produce horizontal lines, as shown in Figure 8.
The results of the PCA can also be used to detect edge discontinuity points as those with the largest eigenvalue 1.5 times larger than the second largest eigenvalue; these points usually belong to the edges of the point cloud, therefore they form the boundary lines, as shown in Figure 9.  Simultaneous to 3D lines extraction, 2D lines are detected in the thermographic images using the line segment detector presented by (Grompone et al., 2010).Prior to line detection, images are subjected to a Gaussian filtering operation in order to reduce noise.Gaussian filter is performed with a scale of 80% and a sigma value of 0.6 (Haddad & Akansu, 1991).
In thermographies, the line segment detector not only identifies actual lines corresponding to intersection lines between planes, but also non-physical lines, produced by changes in radiometry resulting from changes in temperature.An example of this is highlighted with white arrows in Figure 10, at the region over the windows, where lines are detected in temperature-changing zones caused by insulation flaws in the joints between the panels of the wall.Once extracted, 3D lines from the point cloud and 2D lines from images are used to calculate the orientation of each image with respect to the point cloud, through two iterative processes, one inside the other as explained in Figure 11: the main process is performed with the RANSAC iterative method, using a minimum of three lines for the resolution of the collinearity equations and the subsequent rotation matrix and translation vector.These equations are solved iteratively until the residuals of the image orientation parameters are below 0.001.Then, the orientation result is applied to the image so that the fitting error is computed and stored together with the result.Then, following with the RANSAC method, a new set of line correspondences is chosen and the whole process is repeated until the fitting error reaches a minimum; this last result is considered as the best.However, the second and third best results are also kept in memory as backup, since the result with the highest number of coincident points is not always the optimal.This last decision is made through the visualization of the textured mesh.The mesh is generated independent of the registration process via triangulating the point cloud.The 3D model resulting from the proposed methodology is shown in Figure 12.The registered thermographies are applied to their corresponding rectangles, whereas for those rectangles with more than one corresponding image, i.e. overlapping regions, the image applied is the one acquired from the most orthogonal position with respect to the triangle.This leads to some irregularities in the colour of the problematic areas, as highlighted with a white arrow in Figure 12, in the wardrobe, where light red triangles appear among dark red areas.In addition, a registration error can been detected in the right part of the window, highlighted with a blue arrow in Figure 12, since the thermographic image shows the window slightly turned downwards.However, these artefacts in registration do not decrease the usefulness of the thermographic 3D model for thermographic inspection and energy analysis, since: (a) the entire wall can be thermographically visualized at the same time, allowing for an overall impression and the visual detection of defects that might have gone unnoticed had they appeared divided in different thermographies; (b) defects can be spatially located, as for example heat loss can be detected in the left portion of the room, where the curtain appears at a higher temperature than in the rest of the room, implying that the joint between the wall and the window is not hermetic in that area; (c) regarding energy consumption, the non-insulated joints between panels are detected over the window, and both temperature and length can be measured for each of them as the model contains temperature information from thermographies and geometric information from the point cloud; as a consequence, these thermal bridges are characterized for use in energy simulation software, and identified for repair in energy building rehabilitation.
Figure 12.Textured 3D model obtained after the calculation of the rotation matrix and the translation vector for the 10 thermographic images needed to cover the wall.Temperatures rise from 24.5ºC (dark red) to 31.5ºC (white).

CONCLUSIONS
This paper presents a method to automatically register thermographic images with a point cloud for an indoor environment.There are two main challenges in solving this problem: first, the limited field of view of thermographic cameras requires a large number of thermographies to be collected to represent a single wall; second, the repetitiveness of indoor scenes hinders the detection of corresponding features and the calculation of the image pose with respect to the point cloud.Another fact that must be taken into account is the presence of occlusions in the point cloud mainly due to the furniture in the room, which impedes the measurement of wall points and provokes the detection of points belonging to discontinuity edges and consequently forming boundary lines, in non-physical boundary locations.However, boundary lines are not discarded from the process because these lines are also detected in some thermographic images, so they can be used in the calculation of the orientation parameters of each image.
The complete methodology applied to the registration of thermographic images with the point cloud involves (i) curvature computation of the point cloud for the point clustering in planes with different orientations, (ii) the intersection of the detected planes to identify points belonging to intersection lines, and (iii) the identification of boundary points belonging to discontinuity edges and their clustering in boundary lines.Thermographic images are subjected to a line segment detector algorithm that extracts lines by studying the changes in the grey level.Three-dimensional and twodimensional lines are then used for the calculation of the orientation parameters of each image with respect to the point cloud.This process improves the manual registration process by not requiring a dedicated human operator.The iterative method applied to the calculation of the orientation parameters provides an optimal final result.Furthermore, from the thermographic point of view, this registration does not affect the temperature-colour relation; therefore thermal inspection can be performed as is done in the images directly, although some attention must be paid to the presence of holes in the object not due to the presence of low temperatures but due to the lack of triangles to texture.

Figure 2 .
Figure 2. Workflow Part 2: calculation of the orientation parameters of a thermographic image with respect to a point cloud from extracted 3D and 2D lines.
, but using a 50 closest points neighbourhood.Once the smoothed normal vectors of all points are calculated, points are classified based on the direction of their normal vectors, into three main classes: (a) parallel to the main wall, commonly the longest, or the windowed one; (b) perpendicular to the main wall, consequently, parallel to the side walls; (c) horizontal, comprising of floors, ceilings, and other horizontal surfaces in the room such as tables.Once points belonging to parallel planes are separated, planes with the same orientation are detected by examining distances between points.

Figure 1 .
Figure 1.Workflow Part 1: extraction of 2D lines from thermographic images and 3D lines from the point cloud.
(b) where the pixels of a line with width 2 are highlighted in black.To summarize, the outputs of the algorithm are the beginning and end point of each line, and the width of the line-rectangle.(a) (b) Figure 3. (a) Thermography in which lines have been detected with the LSD by (Grompone et al., 2010); (b) detail of a linerectangle of width 2 formed by a group of pixels.

Figure 4 .
Figure 4. Example of 3 thermographies needed to cover an area.The blue rectangles show the overlapping areas between consecutive images, vertically and horizontally.

Figure 5 .
Figure 5.View of the acquired point cloud.Detail of the wall used for this study.

Figure 6 .Figure 7 .
Figure 6.Point cloud with points classified according to the direction of their normal vector: parallel to the main wall in grey, perpendicular to the main wall in magenta and horizontal surfaces in cyan.

Figure 8 .
Figure 8. Intersection lines resulting from plane intersection.

Figure 9 .
Figure 9. Boundary lines formed by the association of boundary points after the curvature estimation.

Figure 10 .
Figure 10.Result of the line segment detector algorithm applied to one of the thermographies.Detected lines are shown in blue; the white arrows mark the lines detected due to changes in radiometry caused by changes in temperature.

Figure 11 .
Figure 11.Iterative processes used for the resolution of the collinearity equations and the image registration with the point cloud.