Patent Description:
The invention describes a camera module which can be attached on a pole to a GNSS-antenna or a reflector for the measurement of points without the levelling step.

Moreover, the camera module enables the measurement of points where the GNSS-signal or the line-of-sight between total station and pole is interrupted.

Moreover, from the imaging data acquired with the camera module a point cloud of the environment can be derived.

Moreover, rectified views or orthophotos can be generated, e. of the terrain or a façade.

In traditional surveying with a GNSS-pole the surveyor places the pole tip onto the measuring point, levels the pole and triggers the measurement. The levelling step takes some time and - if not carried out properly - leads to a degraded measurement result.

Surveying with a GNSS-pole is only possible at places, where the signals of a sufficient number of GNSS satellites can be received. When the surveyor moves close to a building, some of the satellite signals may be not receivable anymore. Thus, at such a place a measurement is not possible at all.

A GNSS surveying system can record absolute positions with good accuracy on a global scale, e. <NUM>-<NUM>. However, such a system can record only single points, where the operator must position the GNSS pole vertically on top of point to be measured. The derivation of a point cloud with a GNSS-pole is not state-of-the-art.

<CIT> relates to image-based geo-referencing and discloses a combination of GNSS measurements with image processing to provide new solutions for positioning. Stored geo-referenced images are compared (feature-correlated) with actual images made by a GNSS receiver. This is then used to qualify the accuracy of the GNSS measurement or complement missing parts (e.g. height information). It is also possible the other way round, i.e. the GNSS measurement is used to update the geo-reference of the stored images. This can also be used to determine a local coordinate system.

<CIT> discloses aligning a virtual perspective centre of a camera with the measurement (antenna) centre of a position measurement system. This facilitates computations in a combined image/GNSS system. <CIT> discloses a method and apparatus for image-based positioning, tracking image features from one image to the next in order to determine the position change of a GNSS receiver using SLAM techniques. <CIT> discloses determining orientation of a GNSS receiver from image data. Documents <CIT> and <CIT> presents the determination of the position and pose of a survey pole comprising an antenna and a camera module via a SLAM functionality.

Document "<NPL>), presents details of SLAM functionalities related the incremental sparse bundle adjustment.

A processing of data recorded by a system with cameras requires high computational resources. The state-of-the-art solution is known as processing of data on a powerful laptop, PC or on an external cloud server. The processing time might be quite time consuming and usually is performed in the office. However, for some tasks (e.g. preview of 3D image-based reconstruction) powerful in-field computational capacity is needed. Data transfer via wireless networks is usually also time consuming when the bandwidth is limited and does not allow getting quick results of computations.

The following solution particularly is proposed to have an ability of a fast in-field data processing. One or more external portable computational devices (e.g. smartphone, tablet PC, laptop) are registered as computational devices in the surveying system. The system has a cable or wireless connection with at least one of these computational devices. The data are transferred to these devices and all computations are automatically distributed between all available computational devices. All computational devices could communicate between each other.

Among others, one advantage of such solution is an ability to use all available computational resources for fast in-field data processing or visualization. New devices could be easily added for computation without updating of the surveying device.

According to the invention, a surveying subsystem as set forth in independent claim <NUM> is provided. The invention relates to loop-closing with respect to data gathered by the surveying subsystem. The surveying subsystem comprises a camera module and a control and evaluation unit to be used as part of a surveying system that is adapted to determine positions of a position measuring resource comprising a GNSS-antenna. The camera module comprises at least one camera including at least one panorama camera for capturing images. The control and evaluation unit has stored a program with program code so as to control and execute a spatial representation generation functionality with loop closing, wherein for performing the loop closing GNSS data is used to select two images that have been recorded at roughly the same position but at different times. In the spatial representation functionality - when moving along a path through a surrounding -.

Furthermore, according to this aspect of the invention.

According to an embodiment of above invention, the camera module comprises at least two cameras arranged relative to each other so that panoramic images with a field of view of <NUM>° in azimuthal direction are capturable. In particular, each camera comprises fisheye optics.

By actually identifying and considering reference points which already have been identified in a group of initial or preceding reference points, these initially identified point can be considered with actual pose reconstruction and/or point cloud calculation and an already computed point cloud can be closed in order to represent the whole surrounding by one completed cloud.

The repeatedly later use of earlier defined reference points also provides for a refinement of gathered position and/or orientation data, as accumulated errors (e.g. occurring with determining successive poses) can be compensated by that.

If multiple images of the same region in the surrounding (or of parts of it) are captured, these images and/or respective reference point identified in the images can be matched. This at least will increase the overall accuracy.

In one embodiment, the control and evaluation unit is configured so that the spatial representation generation functionality is controlled and executed in such a way that the reference point field forms a sparse point cloud that serves for determination of the poses of the at least one camera (<NUM>) and thus expressly for localisation purposes, and, based on the determined poses, a point cloud - being a dense point cloud - comprising 3D-positions of points of the surrounding is computed by forward intersection using the images of the first and second series of images.

In one embodiment, the control and evaluation unit is configured so that the spatial representation generation functionality is controlled and executed in such a way that determined positions of the position measuring resource for points that have been adopted on the path are received by the control and evaluation unit from the surveying system, and the dense point cloud is scaled with help of the received determined positions.

In one embodiment, the dense point cloud is geo-referenced with help of the received determined positions.

In one embodiment, the control and evaluation unit is configured so that the spatial representation generation functionality is controlled and executed in such a way that a graphical reproduction is generated for the dense point cloud, the graphical reproduction being displayable by display means of the surveying system.

In one embodiment, orientations of the at least one camera are derived based on one or more of the determined poses and based on data from an inertial measuring unit of the camera module and/or a multitude of determined positions of the position measuring resource, particular a travelling history for the moved path.

In one embodiment, orientations of the at least one camera are derived in three rotational degrees of freedom.

In one embodiment, positions and orientations of the at least one camera are derived in six degrees of freedom.

In one embodiment, the camera module comprises at least four cameras arranged relative to each other so that panoramic images with a field of view of <NUM>° in azimuthal direction are capturable.

In one embodiment, the at least four cameras are fixedly arranged in a common housing of the camera module, wherein also an inertial measuring unit is fixedly integrated into the common housing of the camera module.

In one embodiment, the surveying system further comprises a hand-carried surveying pole, the position measuring resource is mounted on the hand-carried surveying pole, and the camera module is designed to be attached to the hand-carried surveying pole.

In a further example, there is also provided a surveying system comprising the surveying subsystem, a hand-carried surveying pole, and a position measuring resource comprising a GNSS-antenna being mounted on the surveying pole, wherein positions of the position measuring resource are determinable by the surveying system.

The invention in the following will be described in detail by referring to exemplary embodiments that are accompanied by figures, in which:.

<FIG> shows an exemplary embodiment of a surveying system <NUM> according to the invention. The depicted surveying system <NUM> comprises a surveying pole <NUM> which is operated by a user <NUM>. The pole <NUM> comprises a bottom end <NUM> which is positionable on a measuring point <NUM> on the ground. A GNSS antenna <NUM> is placed on the top end of the pole <NUM> as a position measuring resource of the surveying system <NUM>. Furthermore, the surveying system <NUM> comprises a camera module <NUM> and a control and evaluation unit <NUM>.

<FIG> show camera modules <NUM>,<NUM>' being mounted on a pole <NUM> together with a position measuring resource of the respective surveying system.

Each camera module <NUM>,<NUM>' comprises an optical recording device <NUM> that is sensitive to light coming from all or many spatial directions. It could be based on an imaging sensor and a fish-eye lens, or a combination of a camera and a parabolic mirror, or a minimum of two single cameras arranged on a horizontal ring, or any other optical setup functioning as a wide-angle or panorama camera.

The camera module can be a separate module <NUM> which is mounted on a pole <NUM> together with a GNSS antenna <NUM> (<FIG>) or a reflector <NUM> (<FIG>). Moreover, the module <NUM>' can be integrated into the housing of a GNSS antenna (<FIG>) or reflector.

According to <FIG> the camera module <NUM>' is represented by the position measuring resource which additionally comprises a GNSS antenna and/or a reflector.

The <FIG> show a first embodiment of a camera module <NUM> according to the invention. The camera module <NUM> has a housing <NUM> and mounts for the pole <NUM> and for the position measuring resource <NUM> (GNSS antenna or reflector). It may comprise a set of cameras <NUM>, e. four single cameras <NUM> aligned in angles of <NUM>° to each other with a horizontal field-of-view ><NUM>°. In such an arrangement a horizontal field-of-view of <NUM>° is covered. The vertical field-of-view (FOV) of the camera assembly can be about <NUM>°. The cameras can be aligned horizontally or downward oriented, e. by <NUM>°, as shown in <FIG>. This is advantageous for applications where close objects are of particular interest.

Moreover, a processing unit <NUM> can be part of the camera module <NUM>. The processing unit <NUM> can be a CPU, e. an ARM processor or a combination of a CPU with an FPGA, e. Zync SoC, or a combination of a CPU with a graphical-processing-unit (GPU). In case of a combined processing unit, e. feature tracking, etc. is carried out on the FPGA or the GPU. These are primarily image processing algorithms where a high degree of parallel processing can be achieved on units of that kind.

Also an inertial-measurement-unit (IMU) <NUM> can be part of the camera module. The IMU <NUM> may consist of a <NUM>-axis accelerometer and, particularly, of a <NUM>-axis gyroscope. Additionally, a magnetometer may be included in the IMU.

The <FIG> show a second embodiment of a camera module <NUM> according to the invention: In order to increase the vertical FOV of the camera module <NUM>, four downward-oriented cameras <NUM>' can be combined with four upward oriented cameras <NUM>".

Alternative embodiments are shown in <FIG> shows an arrangement with two fish-eye cameras <NUM> with a horizontal field-of-view of ><NUM>°, and <FIG> shows an arrangement of a single camera <NUM> with a mirror <NUM>, particularly a parabolic mirror, and a glass window <NUM>.

Optionally, the cameras <NUM>,<NUM>',<NUM>",<NUM> of the camera modules <NUM> described above can have different resolutions. For instance, in case the camera module <NUM> comprises eight cameras, four cameras can have low resolution and are read-out in high frame rate (advantageous for feature tracking) and four cameras have high resolution (advantageous for dense matching) and are read-out with a lower frame rate. Alternatively, the high resolution cameras are not running with a specific frame rate but are triggered by the algorithm when a keyframe should be captured, e. in a distance interval of two meters.

Alternatively or additionally, according to one aspect of the invention, one single camera of the camera module is built so that image capturing with at least two different resolutions and/or different frame rates is provided by the camera. Thus, high-resolution images as well as low-resolution images can be provided commonly with view to a measuring process.

Moreover, for reducing reflections from windows, a polarization filter can be mounted in front of the camera lenses (not shown here).

The <FIG> show a two further embodiments of a camera module <NUM> having absorber means <NUM>,<NUM>'. The relative position and orientation of the cameras <NUM> can be determined in a calibration procedure. In order to keep the alignment of the cameras <NUM> stable over time, e. having it resistant against shocks or drops, an absorber <NUM> can be integrated, e. between the housing <NUM> and the mount for the pole <NUM>, as shown in <FIG>. Alternatively, as shown in <FIG>, the cameras <NUM> and the IMU <NUM> can be mounted on a frame <NUM> which is mechanically decoupled from the housing <NUM> by absorbers <NUM>,<NUM>'. The absorbers <NUM> also reduce the maximum accelerations and avoid the accelerometers to saturate.

Such damping element (absorber) could be in form of a gimbal mounting or the like.

During the measurement, image data is recorded with the camera module <NUM>. In case that there is more than one camera <NUM> in the camera module <NUM>, the image data is recorded in parallel, i.e. synchronously. The trigger signal for triggering all the single cameras can be produced by another sensor, e. the GNSS antenna. Alternatively, one camera can trigger all the others.

Image data can be recorded as a video with about <NUM> to <NUM> frames per second (FPS) or as a set of event-based triggered still images, e. an image is recorded when the operator moved two meters since the last image was taken. Alternatively, a new image can be captured, when the image content shows a significant difference to the previous image. Moreover, the recording of an image can be triggered by the operator, when he places the pole on a point and triggers a measurement.

<FIG> show two further embodiments of the camera module <NUM>. Each camera module <NUM> comprises at least two cameras 31a-d and optical triggering means <NUM>,<NUM> for triggering a highly synchronous capturing of images by the cameras 31a-d. This is useful for instance to allow an image stitching of the images captured by the single cameras even if the camera module is in motion.

In <FIG>, a ring of flash lights <NUM> is arranged around the camera module <NUM>, here around the mount for the position measuring resource <NUM>. The cameras 31a,31b are adapted for perceiving a light flash from the flash lights <NUM> in the surrounding. The cameras 31a,31b then can synchronously capture an image. Furthermore, synchronously captured images of the cameras 31a,31b can be identified by the means of the light flash that appears in all images that have been captured during the flash.

<FIG> show a camera module <NUM> with four cameras 31a-d. The camera module <NUM> comprises optical triggering means designed as groups of light emitting diodes (LED) <NUM>. These are arranged in such a way that each group <NUM> lies in the field-of-view (represented by dashed lines) of two of the cameras 31a-d and is perceivable by these two cameras. The groups of LED <NUM> can be used to trigger a highly synchronous capturing of images by the cameras 31a-d. The groups of LED <NUM> can also be used to add a code to the images, e. in order to allow identification of synchronously captured images.

In the <FIG>, <FIG> and <FIG> various exemplary embodiments of camera modules <NUM> are depicted that comprise a scanning unit <NUM>.

The scanning units <NUM> integrated in the camera module <NUM> are advantageous for the generation of point clouds in real-time, i.e. no expensive dense matching step has to be performed as in the case of point cloud generation with images. Moreover, in contrast to camera based approaches the scanning unit <NUM> does not rely on good textured surfaces for the derivation of point clouds.

The scanning unit <NUM> can consist of a laser emitting and receiving unit <NUM> and a rotation mirror <NUM>. In the arrangement shown in <FIG> the rotating laser beam <NUM> is spanning a more or less horizontal plane, if the pole is aligned more or less vertically.

In <FIG> another setup of the scanning unit <NUM> is shown. Here, the rotation axis of the mirror is tilted by about <NUM>° to <NUM>° from the horizontal plane.

<FIG> shows the camera module <NUM> of <FIG> mounted on a surveying pole <NUM>. The rotating laser <NUM> spans a laser plane which is tilted in such a way that it passes the GNSS antenna <NUM>, and, consequently, the occlusions are small. For such a setup where the camera module <NUM> is mounted close to the GNSS antenna <NUM> on the top of the pole <NUM>, the scanning module has to be somehow exposed. To avoid damages of the scanning unit <NUM> when the pole <NUM> is dropped, preferably a drop protection <NUM> is mounted below the camera module <NUM> on the pole <NUM>.

<FIG> shows a combination of a camera module <NUM> and a separate scanning module <NUM>. Both modules <NUM>,<NUM> can be plugged together. For energy supply and data transfer a connector <NUM> can be integrated into the housing of each module <NUM>,<NUM>. The scanning module <NUM> can be equipped with a separate processing unit <NUM>. Alternatively, the computations of the scanning module <NUM> can be carried out on the processing unit <NUM> of the camera module <NUM>.

<FIG> shows an integrated camera module <NUM> with a scanning unit <NUM>' having a rotating laser emitting and receiving unit <NUM>' instead of a rotating mirror.

<FIG> shows a camera module <NUM> with a scanning unit <NUM>" having a multibeam setup with three laser emitting and receiving units <NUM>' rotating together around one axis. Alternatively, instead of emitting three parallel laser beams <NUM>,<NUM>',<NUM>", the laser emitting and receiving unit can be mounted with an angular offset of <NUM>°, e. like the blades of a wind turbine (not shown here).

<FIG> and <FIG> show an arrangement with two scanning units 50a,50b. The rotating beams 55a,55b of both of them span two tilted laser planes <NUM>,56a (<FIG>).

The tilt angle influences the scanning resolution on the object, i.e. the density of the point cloud. On the one hand, an almost vertical plane scans the nearby ground in a (probably too) high resolution since the lever arm with about <NUM> is quite short. Moreover, quite many rays are "wasted" since they are aimed to the sky. On the other hand, an almost horizontal plane does not cover the sky and the nearby ground at all. A combination of two scanning units where the rotation axis of one mirror is tilted by about <NUM>° to <NUM>° from the horizontal plane and the axis of the second mirror is tilted by about <NUM>° to <NUM>° from the vertical plane could lead to an improved distribution of the scanned points.

Alternatively, the vertical angle of the laser plane can be made adjustable (this is shown in <FIG>). This enables the user to change the tilt angle according to his specific needs. The rotation can be continuous or there can be some predefined angles for high, medium and low. In the latter the scanning module clicks into the predefined positions.

Another problem that might appear in practice is the rotation of an (almost) vertical plane. In case the user walks with a constant velocity of <NUM>/s in the direction of the rotation axis of the mirror and assuming a rotation rate of the mirror of <NUM>, i.e. <NUM> revolutions per second the offset of neighbouring tracks on an object in a distance of <NUM> are <NUM>. However, if the pole is rotated about the vertical axis with a rotation rate of <NUM>°/s the offset between neighbouring tracks is about <NUM>. Consequently, such rotations whether intended or not may lead to an inhomogeneous point distribution.

In order to overcome this problem, as shown in <FIG> and <FIG>, two scanning units 50a,50b which span almost vertical planes can be applied in such a way that there is a small horizontal angular offset of about <NUM> degrees.

An alternative embodiment is depicted in <FIG>-f: The scanning unit <NUM>‴ comprises a plurality of laser emitting and receiving units <NUM>. Thus, instead of one laser plane a fan of either diverging (<FIG>) or parallel (<FIG>) laser planes is generated.

Alternatively, as shown in <FIG>, the scanning unit <NUM>‴ʺ can be integrated into the camera module <NUM> in such a way, that an unintended rotation of the pole can be compensated by a rotation of the scanning unit <NUM>‴ʺ into the opposite direction, in particular actuated by a drive <NUM>. The rotation angle can be derived from measurements with the camera module <NUM>, e. the angular rates from the IMU <NUM>. The aim of the compensation can be that the azimuth of the laser plane is constant independently from the movements of the user.

Alternatively, with such a mechanism the scanning plane can automatically be aligned orthogonally to the walking direction of the user. The direction can for instance be derived from the state vector of the Kalman filter. There is the advantage that in case the user walks around a curve the plane follows this movement automatically.

Alternatively, instead of rotating the whole scanning module, only the ray can be redirected by an additional oscillating mirror <NUM>'. This is shown in <FIG>.

Alternatively, as shown in <FIG>, the stabilization of the laser plane, i.e. to keep the azimuth angle almost constant (smooth quick movements), can be also achieved by implementing the gyro principle. Here, a flying wheel <NUM>" rotates together with the mirror around the axis to be stabilized.

In <FIG>, a rotation of the camera to the left is illustrated with a moving object in the image. During data acquisition also masking of different areas can be applied in order to remove undesired (here: moving) objects. This for instance include static objects relative to the pole like the surveyor itself as well as moving objects like pedestrians, cars and other non-static/relative static objects.

The masking can be done semi-automatically with user interaction or fully automatically. A possible scenario for user interaction guided processing is the exclusion of the surveyor in tracking feature points on the images, where the user, for instance, roughly masks the outline of itself on the image and its silhouette is recognized and subsequently tracked by an appropriate algorithm (e. standard segmentation algorithms, active contours or template matching).

A fully automated algorithm might detect interfering objects based on some motion estimation algorithms, e. optical flow, and reject the corresponding tracked features. For instance, as is shown in <FIG>, a rotation of the camera to the left would result in an optical flow indicated by the displayed arrows <NUM>. Although becoming more complex by more advanced movements of the camera, this vector field (optical flow) can be used to determine moving objects - indicated by the displayed arrows <NUM> - within the image (e. by analyzing discontinuities or anomalies like inconsistent local changes) or even support segmentation or other image processing related algorithms.

Possible variants of different procedures might include interfering object detection independently on each image, initial detection and tracking, as well as global motion elimination. Additionally, in order to become more robust, the final algorithm for removing moving objects (or corresponding inconsistent feature points) might consist of a multi-step procedure, e. local and global motion estimation. Since global motion in this context refers to camera movement, there might also be some additional sensor information (e. GNSS or IMU data) used, to predict global movement and, subsequently, to stabilize the detection of moving objects.

The detection of corresponding (interfering) features can be carried out on the processing unit in the camera module. Particularly, if an FPGA is included in the processing unit parts of the feature detection can be computed very efficiently on the FPGA.

After the identification of corresponding features the poses of the images, i.e. position and orientation, are computed. This can be done for every image with a sufficiently large number of detected point features. However, particularly if the image data is recorded with high frame rate processing power can be saved by selecting a subset of images and determine the pose only for those selected images.

A criterion for the image selection can be the baseline, i.e. the distance between the current image and the previous one, e. a distance of one meter. Small baselines result in a bad accuracy of 3D points determined by forward intersection. Another criterion can be the image quality, i.e. only image with good quality (high sharpness, no under- or over-exposure, etc.) are selected.

Alternatively, the image selection can be based on a combination of image data, IMU data and GNSS data or any subset of these data sources. For example, the IMU could be used to select images that don't suffer from motion blur by considering the movement and especially the rotation during exposure. This has the advantage that blur-free images are selected even when the image content changes significantly. Different filters (e. baseline and motion blur) can be combined to achieve an optimal image selection leading to an optimal reconstruction of the scene using limited computational resources.

In case there is a combination of low resolution and high resolution cameras the low resolution cameras are mainly used for feature tracking in a high frame rate. The high resolution cameras need not to capture images in a defined frame rate, but can be triggered at specific times, e. low movement, e. sensed with IMU, or distance between current and last image (= baseline) of for instance two meters.

Moreover, images can be taken with varying exposure times, e. the images are taken with exposure times of <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> and so on. This is illustrated in <FIG>. In a defined window around the optimal time for capturing a key frame the frame with good exposure is selected. In this case, as shown in <FIG>, the image acquisition interval can be regular, i.e. an image in an interval of <NUM>. Alternatively, as shown in <FIG>, the image capture interval can be irregular.

Moreover, a HDR (high dynamic range) image can be generated based on a set of images captured with different exposure times. This can be done when the camera is held sufficiently still, which can be sensed with the IMU or GNSS or camera data or a combination of all. Alternatively, the camera can be moved and the offset determined with the structure-from-motion algorithm is considered in the generation of the HDR image.

In order to ensure data sets that can be processed, there may be some direct user feedback during data acquisition. This feedback may include light indication (e. status LEDs), audio signals or force feedback (vibrating pole, smartwatches, vibration wristlet, smartphone, tablet, etc.). There might also be the option to directly visualize the current state of data recording, e.g. on a mobile phone, tablet or special glasses (interactive glasses).

For the derivation of a pole's six degrees of freedom, i.e. the position of the module and the orientation angles (roll, pitch, yaw) with respect to an outer/external (e.g. global) coordinate system a SLAM (simultaneous localization and mapping) algorithm can be applied.

The determination of the <NUM>-DoF is based on measurements from the camera and optionally additionally position measurements from the GNSS system (and/or total station with retro-reflector). Moreover, accelerations and angular rates measured with the IMU can also be included into the determination of the poses (i.e. position and orientation with <NUM> degree of freedom; i.e. <NUM>-dof).

The image data is analyzed for corresponding features (or corresponding/homologue image points), i.e. the position of the corresponding images of one identical object point <NUM> in several images. This is done using feature detection and matching algorithms such as SIFT, SURF, BRISK, BRIEF, etc. By identifying several corresponding features (or corresponding image points, also called homologue image points), several object points <NUM> are determined. These object points build up a reference point field, which can be used for each additionally gathered camera image as a reference, so that in each newly added image existing points of the reference point filed can be used to reference the image with respect to all previous images.

Hence, in each newly added image, again corresponding image points (in the added image and already previously existing images) are found/identified for object points of the already existing reference point field. And these found/identified image points in the newly added image are used (together with the previously determined coordinates of the according object points being represented by the found/identified image points) to determine the pose of this newly added image, by means of resection.

Furthermore, also in each newly added image again corresponding image points (in this added image and already previously existing images) are found/identified for new object points of the surrounding. And these found/identified corresponding image points in the newly added image and at least one "old" image (i.e. the positions of the corresponding image points in the newly added image and the old image) are used to determine coordinates of further object points by forward intersection, so that the reference point field is expanded therewith by the further object points. Hence, on one hand, for each newly added image the pose can be determined (based on resection using existing feature/image point schemes of existing object points of the already existing reference point field) and, on the other hand (logically simultaneously), with each newly added image the reference point field is also growing (based on forward intersection using newly identified corresponding features/image points of previously unknown object points of the surrounding).

Alternatively, in case of a video input, the correspondences (i.e. the corresponding or homologue image points or features) can be found using a tracking algorithm on each video frame, e.g. by applying the Kanade-Lucas-Tomasi (KLT) feature tracker. In the sense of this application, the term of "capturing a series of images with one or more cameras" includes generating image data by consecutively (e.g. following a defined timing, like one image per second, or following a defined spacing, like one image every half meter of movement) capturing/taking single images or by capturing a video frame.

Hence, in the SLAM-evaluation based on the corresponding features, simultaneously the poses of the images are derived and a point cloud (herein called "reference point field", which is a point cloud with comparatively low density (therefore also often called "sparse point cloud")) is built up and computed. This reference point field is at first instance only computed so as to determine the poses of the images (i.e. so as to determine and reference the positions and orientations of the image-pickups relative to each other), i.e. at least initially only for localisation purposes. The reference point field, thus, is a consecutively growing common reference frame for determining the poses. The reference point field usually does not comprise pre-known points of the surrounding.

In a first step of the reference-point-field- and poses-determination, a relative pose algorithm is used to calculate the relative pose between two selected initial frames/images and an initial point cloud (i.e. a first part of the reference point field). Therein, IMU and/or GNSS data can be used additionally to determine the relative pose of the selected initial frames (so as to make the step of determining the poses more stable and/or more efficient). On the basis of the resulting point cloud (this first/already existing part of the reference point field) and the corresponding features detected in a third image the pose of the third image can be computed by resection. Then again, forward intersection is applied to refine the 3D coordinates of the features detected in all three images and to determine new 3D points which are detected in one of the first images and the third one.

Consequently, with added image new 3D points might be reconstructed and the number of points in the point cloud (reference point field) is growing (<FIG>).

Summary for the basic part of the algorithm:
Simultaneously.

by applying defined algorithm to the series of images (<NUM>), wherein.

Even further summed-up (with slightly other words):
A SLAM-evaluation with a defined algorithm using the series of images is performed, wherein a plurality of respectively corresponding image points are identified in each of several sub-groups of images of the series of images and, based on resection and forward intersection using the plurality of respectively corresponding image points,.

As a final or intermediate step (i.e. after the basic algorithm has been carried out or in addition thereto), the overall solution (i.e. the built up reference point field (i.e. the derived coordinates of the reference points) and the determined poses, and optionally also the determined image-positions of the corresponding image points in the images), can be refined using bundle-adjustment. This algorithm is a non-linear least squares minimization of the re-projection error and optionally also the GNSS measurements. It will optimize the location and orientation of all camera poses and all 3D points of the reference point field in one step.

Bundle-adjustment can be triggered by the user when he is using the pole to measure individual points, i.e. in traditional GNSS pole mode. Bundle-adjustment is then used to refine the location and orientation of the pole during the measurement to provide the user with an optimal estimate for the position of the tip during the measurement.

Alternatively, image data, IMU data and/or GNSS data can be used to detect if the pole is held steady in one position. Bundle-adjustment is then triggered automatically. When an optimal - bundle-adjusted - result is available this is indicated to the user through e.g. a green light. The user can then immediately read out an optimal estimate for the position of the tip upon triggering a measurement.

If GNSS data is available - which might not always be the case - the position can be used in the resection of a new camera pose or in the computation of the relative pose the initial image pair. For the computation of a new image pose the detected feature positions in the image and the GNSS position are combined in the resection algorithm. Particularly, the accuracies of the measurements, e.g. <NUM> px for the feature measurements and <NUM> for GNSS positions, are considered and the measurements are weighted accordingly.

The combination with GNSS data leads to the generation of a geo-referenced and scaled point cloud by the SLAM algorithm. Moreover, since GNSS delivers positions with good accuracy on a global scale, the positions counteract the error accumulation and the resulting drift which might appear in SLAM based on image measurements only.

However, if a basic point cloud is already generated, the resection also works if no GNSS signal is available by image data only. This might be the case when the operator stands very close to a façade and most GNSS satellites are covered by the building. The <NUM>-DoF are then derived by resection of the camera pose based on the existing point cloud.

Alternatively, other SLAM or Structure from Motion algorithms can be used for the <NUM>-DoF determination of the pole.

Moreover, if no GNSS position is available and the position is derived from image data, particularly in combination with IMU data, the derived position can be feed back to the GNSS module for a fast reacquisition of the fix for the GNSS position.

Alternatively, when applying the camera module <NUM> shown in <FIG> to a reflector <NUM>, instead of GNSS data also positions measured with a total station can be used. Here again, if a basic point cloud is already generated, the pose of the module can be determined also when the line-of-sight between total station and reflector is interrupted.

In the combination of GNSS data with image measurements the offset between the antenna centre and the camera module has to be considered. This offset might be known from the mechanical design or derived by calibration. When multiple cameras are used, their relative poses have to be calibrated or derived from the design as well. Calibration can be done by the manufacturer or by the user in a specially designed procedure using e.g. a well textured area (reference pattern) being capturable be the camera to be calibrated. A defined relative spatial relationship between the pattern and the camera is pre-known. The calibration can also be fine-tuned in the bundle adjustment (self-calibration).

Furthermore, the data from the inertial measurement unit (IMU), i.e. accelerations and angular rates, can be included in the determination of the six degrees of freedom. Since the accelerometer senses the gravity vector, the tilt of the camera module, i.e. the roll and pitch angle, can be directly determined from the IMU data. The horizontal orientation of the pole, i.e. the yaw angle, can be derived from a comparison of the position offset based on the double integration of accelerations with the position offset derived from the GNSS positions.

Alternatively or additionally, a magnetometer could be used to determine the yaw angle.

The combination of the sensor data can be carried out by a sensor fusion algorithm, e. a Kalman filter, a particle filter etc..

For the sensor fusion it is important that all the measurement data refer to a common time basis. This can be achieved by a synchronized data acquisition, i.e. one sensor triggers all the others, or by assigning a time stamp to each measurement.

Knowing the length of the GNSS pole and its pose with respect to a superior, either local or global coordinate system, e.g. WGS84, the coordinates of the tip point can be derived. In practical surveying this has the advantage that the operator does not have to level the pole anymore after he places the tip point onto the measuring point. Because of the reduced time needed for measuring a single point, this has a positive impact on the productivity of the operator performing the measurement job.

Dense matching has the goal to determine a dense point cloud, i.e. a 3D-coordinate for each pixel or a subset, e.g. on a regular <NUM>×<NUM> grid, i.e. for every 3rd pixel in row and column direction, in the original images. The algorithm consists of two major steps.

First, for all overlapping cameras a disparity map is computed. This map contains the offset of a pixel in two images, i.e. the shift to be applied to a pixel in the first image to end up at the position of the corresponding point in the second image. There are multiple ways to compute these maps, correlation techniques, e. Semi-Global-Matching, etc..

For each pixel in the disparity map a confidence value can be obtained and used in the further processing, e. for adaptive weighting of the measurements.

Second, using this set of disparity maps 3D points are computed by forward intersection. Knowing the pose of the image rays <NUM> from the projection centers through the corresponding pixels are set up. The 3D coordinates of the object point results from the intersection of these rays. In principle a minimum of two rays is needed for the intersection of a 3D point. However, in practice as many rays as available are used in the forward intersection.

Identifying the image points (reference points) and determining poses for images based on the identified image points (particularly computing a point cloud based thereon) is a be understood as a form or at least part of a dense matching process.

For the forward intersection least squares adjustment can be applied. Here, the 3D coordinates of the points are determined by minimizing the deviations - actually the squared deviations - between the point and all the rays. Based on the geometry and the resulting deviations, i.e. the remaining residuals, the quality of the intersection can be derived by computing the variance-covariance matrix and, furthermore, an estimate for the standard deviation of all three coordinates of the 3D point.

This is shown in <FIG>, where a "good" intersection <NUM> of six rays leads to a small uncertainty and a "bad" intersection <NUM> of three rays leads to a large uncertainty, particularly for a single point or a respective region of points.

A quality indicative output concerning the quality of at least one of the computed points of the point cloud as described above may be based on such computation.

The final point cloud can be filtered using several criteria on the measurement quality. This includes the number of images where the point is observed, i.e. the number of rays used for the intersection, the baseline between the cameras which defines the geometry of the intersection, a measure for the consistency of all the measurements, etc..

Alternatively, a quality indicator can also be computed for an actually travelled path and actually acquired series of imaged (and also for a planned path with a planned capturing of images) solely base on pre-known circumstances like intrinsic factors (camera resolution, etc.) and general extrinsic factors (distance to camera, etc). In this case, a computation for the position of at least one point (and a consideration of a degree of intersection of the rays within the forward intersection) would not be necessary to for this estimated quality indicator. <FIG> shows a visualisation of accuracy bounds (i.e. an accuracy map) based on an estimated reachable quality for the determination of 3d-positions in these regions. Points lying close to the planned or travelled trajectory have a higher estimated accuracy/quality and points of the surrounding lying farther from the planned or travelled trajectory have a lower estimated accuracy/quality.

Alternatively, other algorithms, e.g. plane sweeping, can be used to determine the dense point cloud.

For the measurement of a single point the operator places the tip point of the pole on the measuring point. Contrary to this, the measurement of a dense point cloud is dynamic, i.e. the operator just walks around collecting data, i.e. image data, position data from GNSS or a total station, IMU data, etc..

The user simply walks through the area to be mapped. During the movement the system records the image data, e.g. <NUM> frames per second, the GNSS positions and the IMU data. The sensors are either synchronized, e.g. triggered by a master sensor, or a time stamp is assigned to each measurement.

A further inventive aspect is to de-blur images of the acquired series of images after computing "SLAM" (or as also called "Structure from Motion SfM").

It is known that - in images taken with a camera being in motion - a motion blur may appear in the images. Therein, in general, objects of the imaged scene/surrounding being farther from the camera have a lower relative motion with respect to the camera (i.e. the relative motion being effective for the image-pick-up) and objects of the imaged scene/surrounding being closer to the camera have a higher relative motion.

From the SLAM algorithm (particularly additionally with the aid of IMU data and/or GNSS/TPS position measurement data), a 3d-trajectory for the camera can be derived for the path travelled during acquisition of the series of images.

Based on this sparse point cloud (i.e. more generally spoken: depth information or a depth map for the scene/surrounding basing on the determined sparse point cloud) and based on the motion of the camera during acquisition of each of the images, a motion de-blurring can be performed in the images by image processing.

Therein, imaged objects having been closer to the camera during acquisition of the image are applied with a comparatively higher degree/stage of motion de-blurring and imaged objects having been farther from the camera during acquisition of the image are applied with a comparatively lower degree/stage of motion de-blurring.

After de-blurring of images of the acquired series of images, the newly generated imaged by de-blurring, which can be referred to as de-blurred images, can then substitute/replace the corresponding un-de-blurred images of the series of images.

In case all images of the series of images are de-blurred, these de-blurred images can then constitute the series of images (i.e. then comprising only de-blurred images).

In case only a portion of the images of the series of images is de-blurred (substituting - in the series - the corresponding/counterpart un-de-blurred images belonging to the series before de-blurring), the series of images can then consist of de-blurred images and un-de-blurred images.

In the following, these newly or refreshed series of images then containing at least also some de-blurred images (or only de-blurred images) can be used for several purposes:.

Therein, due to the fact the features to be identified in the images, which represent the reference points, can be located in the images with higher accuracy/higher robustness and less measurement uncertainty (due to lower degree of blur in the images after de-blurring), both the positions of the reference points and the poses for the images can be determined more accurate and with less measurement uncertainty.

b) calculating a dense point cloud for the surrounding (i.e. performing the dense reconstruction or meshing) with higher accuracy and less measurement uncertainty.

Therein, either the refreshed/de-blurred series of images (comprising de-blurred images) can directly be used for the dense reconstruction. Or the step described under point a) above (i.e. re-performing the SLAM-evaluation with the refreshed series) can be prefixed and then - basing on the already re-calculated poses by performing step a) above - the dense reconstruction can be performed using the de-blurred series and the already more accurately determined poses.

This results in a higher accuracy for the determination of the dense point cloud due to the fact that in de-blurred images the identification and localisation of corresponding image points in the images (belonging to identical scene points) can be performed with higher robustness and higher precision. Hence, also the forward intersection using the identified and localized image points reveals the position of the scene point with higher accuracy/less measurement uncertainty.

Also, a higher density for the determination of the dense point cloud is achievable due to the fact that in de-blurred images more corresponding image points in the images (belonging to identical scene points) are identifiable.

c) calculating a position of single points of the surrounding (hereinbefore and - after also called "remote point measurement") with higher accuracy and less measurement uncertainty.

Analogue to the calculation of a plurality of points (i.e. a dense point cloud for the surrounding), also positions for single points can be determined with higher accuracy and less measurement uncertainty by using the refreshed/de-blurred series of images (and optionally also the already re-calculated poses).

Summed up, using de-blurred images, SfM-/SLAM-evaluation on de-blurred images can provide for better results regarding the determination of the poses and the sparse point cloud, as features will be located with higher precision (and more features may be located) due to the higher contrast in the images. If the SfM is more precise, then further steps will provide better quality (dense reconstruction, meshing). But also without a refreshed SfM-/SLAM-evaluation in prefix, the dense reconstruction can be performed with at least somewhat higher quality by using the de-blurred images compared to the scenario of using un-de-blurred images.

In the <FIG> a matching of two orthophotos is illustrated, wherein one orthophoto <NUM> is generated by the surveying system and one is a reference orthophoto <NUM>, for instance an aerial image. The term orthophoto here is understood as meaning a "true" orthophoto having an orthographic view, i.e. relief and tilt have been adjusted in order to orthorectify the image.

Since the cameras may be looking downwards, or have a sufficient field of view, the ground plane will be visible. Together with a known distance to the ground, camera locations and orientations, the images can be projected to the ground plane. By using many images from different directions, one large composite image of the ground plane can be computed. Due to the texture foreshortening (perspective effect, when cameras are looking at a certain angle to the ground), the method described in the paper "<NPL>) can be used to obtain a high quality texture for the ground plane. The generated orthophoto can be registered to a georeferenced aerial image in order to localize the measurements in the geographic coordinate system. In the following paragraphs, the workflow is described in detail.

The processing of the camera poses and the dense matching, i.e. the generation of the dense point cloud can be carried out on the processing unit as part of the camera module. Alternatively, the processing can be carried out on a controller (data logger) or the processing unit of the GNSS antenna which are connected to the camera module, either by a cable or via radio, Bluetooth, WiFi, etc..

Moreover, the data can be transmitted to a dedicated cloud server which is connected to the internet. The data can be transmitted directly from the camera module or via the controller or via the GNSS antenna.

Alternatively, the server can be installed in a vehicle, e. a car which is located close to the surveying area and communicate with the pole through a local telecommunications protocol such as Bluetooth or WiFi.

Alternatively, the server can be temporarily or permanently installed on site e. in a construction shed and communicate with the pole through a local telecommunications protocol.

Preferably, the transmission of the data and the processing on the cloud server starts immediately after the recording is started. In this case the processing is carried out in parallel to the data acquisition in the background which helps to keep the latency of the result short.

Alternatively, the system can include a second processing unit which is together with a power supply, e. batteries, carried by the operator in a backpack. The second processing unit may be equipped with a graphical processing unit (GPU) which enables massive parallel processing of the image data. Particularly, the second processing unit can be a standard portable device such as a powerful laptop, tablet computer or smartphone. The second processing unit may communicate with the pole through cable or a local telecommunications protocol.

Moreover, a combination of processing on the processing unit of the camera module, the processing unit of the controller or the GNSS antenna and external processing units such as a cloud server. For instance, the synchronized recording of the data can be carried out on the processing unit included in the camera module. Also, a pre-processing of the image data, e. the feature extraction or some basic image processing algorithms, can be carried out on this processing unit. The SLAM algorithm which results in the poses of the images and the coordinates of a sparse point cloud can be performed on the processing unit of the controller. The resulting camera poses and the images can then be transmitted to a cloud server where the dense matching is performed.

For a completeness check the operator should receive already in the field a preview model shortly, e. a few minutes, after the data acquisition is finished. Based on this preview model the operator can decide whether he captured the measuring areas completely or whether some parts are uncovered. In the latter case the operator can take some additional measurements in the uncovered area to increase the level of completeness.

The completeness check can be augmented with contrast analysis of the images in order to detect areas that are missing and for which it is unlikely that they will be reconstructed (uniform surfaces). This would save time of the user trying to reconstruct this kind of areas.

The decision can be done by the operator on the basis of a visualization of the preview model, e. a 3D visualization. Alternatively, the visualization can be 2D as a map view, to present the user with a quicker and easier-to-understand view of the model compared with 3D models which are difficult to interpret and navigate for inexperienced users. Particularly, the missing parts are high-lighted. Moreover, the system can guide the operator to the area of missing measurements.

The preview model should be available shortly after the data acquisition is finished. In order to save time, e. for data transmission and processing, the preview model may have lower resolution than the final model, e. a point resolution on the object of <NUM>. This can be achieved by performing particularly the dense matching on images with lower resolution, e. after a reduction the image resolution from <NUM>×<NUM> pixels to <NUM>×<NUM> pixels.

In case of limited bandwidth, if the processing is carried out on a cloud server the reduction of the image resolution is carried out before the data is transmitted.

Moreover, the image data can be compressed before they are sent to the processing server. Therein, the compression of image data can be carried out in a lossless way (i.e. a lossless data compression can be applied, without reducing the quality/resolution of the images) or in a lossy way (i.e., depending on the needs and circumstances of a particular situation, also a lossy data compression can be applied, including a reduction of the quality/resolution of the images).

Moreover, the data can be reduced (areas of very low contrast do not need to be transmitted) using sparse image representations.

By matching the computed orthophoto to the reference aerial image, additional location information can be derived. This can be used as the only source of geo-location or can be coupled with GNSS or prism-based terrestrial measurements in order to improve geo-location accuracy.

After the whole scene is captured, the SLAM algorithm is executed on the dataset. The structure from motion can use partial GNSS data, however this is not required. After computing the external camera parameters, the orthophoto generation algorithm is executed. This algorithm works as follows:.

In some applications interactive geolocation without GNSS signal may be required. The following method then can be used:.

This approach can be used for an interactive visualization of the camera position on the map on the local device's screen. The local SLAM computations may be joined and optimized for a good fitting together in order to find relations between different sub-reconstructions with SLAM.

In the case of the GNSS available, the method can be used to create a geo-referenced orthomap for use in other applications without the need of renting a plane or a UAV.

<FIG> shows an example orthophoto <NUM> generated from the images acquired at the ground level. As it can be seen, those areas <NUM> not captured from the ground level, such as building roofs or tree tops, are not present. <FIG> presents an example reference orthophoto <NUM> from a georeferenced aerial image. Those two images have a different scale and orientation. By using matching of scale and rotation of invariant features the generated image can be transformed to match the scale and rotation of the reference aerial image (the borders of the orthophoto <NUM> from <FIG> are represented by the outline <NUM>). This transformation is then used to bring the point cloud and positions of the measurement instrument to the coordinate system of the reference image <NUM>.

The camera module can also be used without being combined with a GNSS system or a total station, in particular in applications where no absolute geo-referencing is needed. This is illustrated in <FIG>.

Disadvantageously, a 3D reconstruction without GNSS or total station might have an arbitrary scale. A state-of-the-art solution of this task is to use reference points with known 3D coordinates. These points are measured manually or automatically on the images. Their 3D coordinates are determined using additional measurement unit (e. with a total station). Alternatively, a scale bar could be used which is automatically identified in the image data.

Alternatively, a method with the following steps could be used to determine the scale:.

To improve an accuracy of scale computation, a user <NUM> could put the pole <NUM> onto the ground more than one time during the survey. The user could press a button on the pole to indicate the moment when the pole <NUM> is standing on the ground. Alternatively, this moment might be determined automatically based on comparison of sequentially recorded images or IMU information.

The whole reconstruction is done in an arbitrary oriented coordinate system. However, the user is able to define a local coordinate system by the following procedure:.

The user could place the pole <NUM> on significant and marked points to be able to set the same coordinate system XYZ in the future (e. later in another survey).

The height computation of the camera module <NUM> above the ground could be done manually or automatically in the reconstructed point cloud. In the first case, a user selects points which belong to the ground. In the second case a height is extracted based on assumption that the pole <NUM> is oriented vertically.

Alternatively, the height computation could also be performed in the meshed surface model.

Optionally, the GNSS data in combination with a panorama camera can be used to extend the standard SLAM approach in a new way. GNSS data can be used to select two frames recorded at roughly the same position but at different times. This happens when the user crosses his own path or takes the same path multiple times. Because a GNSS pole is held vertically under normal recording conditions, the main difference between the two frames is likely a horizontal rotation, i.e. a change in azimuth angle. Such a single rotation can be determined and compensated for efficiently using the raw images or detected feature points. After or during compensation of the azimuth change, optionally a compensation of the small change in the other two orientation angles can be performed in a similar way. Once the two frames are roughly aligned, a multitude of additional matches between the images can be found between the two frames by using a tracking algorithm such as KLT. The additional matches improve the connection between the two frames that are distant and time but not in position, i.e. loop closing. This stabilizes the algorithm and enhances the accuracy by further reducing drifts (also in rotation) for large datasets.

Loop-closing - according to the invention - is based on capturing a first series of images of the surrounding with the at least one camera, the first series comprising an amount of images captured with different poses of the cameras, the poses representing respective positions and orientations of the cameras. Furthermore, an initial set of image points is identified based on the first series of images, the initial image points representing reference points <NUM> of an initial reference point field <NUM> (<FIG>), wherein each reference point appears in at least two images of the series of images, and the poses for the images are determined based on resection using the initial image points.

According to the invention, a second series of images of the surrounding is captured with the at least one camera, reference points of the reference point field <NUM> appearing in at least one of the images of the second series of images are identified, a further set of image points is identified in the images of the second series of images corresponding to the identified reference points <NUM> of the second series of images, and the poses for the images of the second series of images are determined based on resection using the initial set and the further set of image points.

The <FIG> and <FIG> show two wheeled surveying systems that facilitate the surveying process for the user.

The wheeled surveying system <NUM> depicted in <FIG> comprises a pole <NUM> comprising the features of the pole of <FIG>. Additionally, the pole <NUM> comprises wheels <NUM> that allow the user <NUM> to move the pole <NUM> along a path through the surrounding without having to carry the pole <NUM>. To facilitate the pushing (or pulling) of the pole <NUM>, it is equipped with a handle <NUM> (or two handles).

Preferably, two wheels <NUM> are attached to the pole <NUM> in such a way that the bottom end of the pole touches the ground if the pole is vertical (i.e. in a <NUM>° angle relative to the ground). Even more preferably, the pole <NUM> keeps this upright position autonomously. For moving the pole <NUM> it needs to be tilted (as shown in <FIG>).

Alternatively, the bottom end of the pole <NUM> can be extendable in order to touch the ground.

Optionally, the wheels <NUM> can be actuated by a motor, particularly an electric motor. This motor e. can either be controlled by the user <NUM> by a control unit on the handle <NUM> or can act as a support drive for the pushing (or pulling) movements of the user <NUM>.

The wheeled surveying system <NUM> depicted in <FIG> comprises a two-wheeled, self-balancing motorized vehicle <NUM>. This kind of vehicle is also widely known as "Segway personal transporter". The surveying system <NUM> comprises a pole <NUM> which is mounted on the vehicle <NUM>. On the pole <NUM>, as already described with respect to <FIG>, a GNSS antenna <NUM> and a camera module <NUM> are provided. The surveying system <NUM> also comprises a control and evaluation unit <NUM>.

As known from similar vehicles, a motion of the vehicle <NUM> can be controlled by the user <NUM> as illustrated in <FIG>: The depicted vehicle <NUM> is designed in such a way that the user <NUM> controls a forward and backward movement of the vehicle <NUM> by leaning the vehicle relative to a combined centre of gravity of user <NUM> and vehicle <NUM>.

Optionally, the vehicle <NUM> can comprise measuring point marking means <NUM> that mark a spot on the ground as a present measuring point <NUM>. Particularly, this spot can be an imaginary extension of the pole <NUM>. The marking can be a laser spot or pattern which lasts only for the stay at the respective position and is intended as information for the user <NUM> of the surveying system <NUM> driving the vehicle <NUM>. In particular, this enables the user <NUM> to measure exactly at predefined marked positions. Alternatively, the marking can be more durable, for instance a sprayed paint marking or a dropped flag. This allows repeating the measurements at a later point of time at the same positions.

Optionally, an IMU of the vehicle <NUM> can be used for determining orientations of the cameras of the camera module <NUM> - either alternatively or additionally to an IMU of the camera module <NUM>.

As shown in <FIG>, the pole <NUM> can be equipped with a rain and/or sun protection, e. an umbrella being mounted below or around the GNSS antenna <NUM>. This does not only facilitate the working conditions for the user <NUM> but also protects the camera module <NUM> and other features of the respective surveying system <NUM>,<NUM>,<NUM> and improves the image quality in case of precipitation.

Claim 1:
Surveying subsystem comprising a camera module (<NUM>) and a control and evaluation unit (<NUM>), wherein the surveying subsystem is adapted to be used as part of a surveying system (<NUM>) that is adapted to determine positions of a position measuring resource comprising a GNSS antenna (<NUM>), wherein
• the camera module (<NUM>) comprises at least one camera (<NUM>), including at least one panorama camera, for capturing images,
• the control and evaluation unit (<NUM>) has stored a program with program code so as to control and execute a spatial representation generation functionality with loop closing, wherein for performing the loop closing GNSS data is used to select two images that have been recorded at roughly the same position but at different times, and
• in the spatial representation generation functionality - when moving along a path through a surrounding -
□ a first series of images of the surrounding is captured with the at least one camera (<NUM>) at a first time, the first series comprising an amount of images captured with different poses of the at least one camera, the poses representing respective positions and orientations of the at least one camera, and
□ an initial set of image points is identified based on the first series of images, the initial image points representing reference points (<NUM>) of a reference point field (<NUM>), wherein each reference point (<NUM>) appears in at least two images of the series of images,
characterised in that
in the spatial representation generation functionality
• the poses for the images are determined based on resection using the initial image points,
• a second series of images of the surrounding is captured with the at least one camera (<NUM>) at a second time,
• reference points (<NUM>) of a reference point field (<NUM>) appearing in at least one of the images of the second series of images are identified,
• a further set of image points is identified in the images of the second series of images corresponding to the identified reference points (<NUM>) of the second series of images, and
• the poses for the images of the second series of images are determined based on resection using the initial set and the further set of image points.