Methods and arrangements for determining information about the location of intensity peaks in the spatial-temporal volume of an image frame

By employing local execution spatial-temporal analysis and iterative methods, and utilizing assumed intensity peak locations and spatial-temporal analysis locations, the problems of artifacts and computational storage burden in optical triangulation are solved, achieving efficient and accurate intensity peak identification.

CN116263503BActive Publication Date: 2025-12-02SICK IVP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211343933.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-12-15
Filing Date
2022-10-31
Publication Date
2025-12-02
Estimated Expiration
2042-10-31

AI Technical Summary

Technical Problem

Existing technologies suffer from artifact problems in optical triangulation. Conventional peak-finding algorithms are affected by the laser line width covering multiple pixels, and spatial-temporal analysis methods require access to complete image data, resulting in excessive computational and storage burdens and making them difficult to apply in real time.

Method used

By performing localized spatial-temporal analysis, and utilizing an iterative method of Hypothetical Intensity Peak Position (HIPP) and Spatial-Temporal Analysis Position (STAP), operations are performed only on a portion of the spatial-temporal volume. Combined with reliability assessments of conventional peak-finding algorithms, peak positions are identified and improved.

Benefits of technology

It enables efficient identification of intensity peak positions under real-time or near-real-time conditions, reduces computation and storage requirements, improves the accuracy and reliability of peak positions, and reduces the impact of artifacts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116263503B_ABST
    Figure CN116263503B_ABST
Patent Text Reader

Abstract

One aspect of this disclosure relates to a method and arrangement for determining information about the location of an intensity peak in a spatial-temporal volume of an image frame. The method discloses the determination of information about the location of an intensity peak in a spatial-temporal volume formed by an image frame generated by an image sensor by sensing light reflected from a measured object as part of optical triangulation. The spatial-temporal volume is also associated with a spatial-temporal trajectory relating to how feature points of the measured object are mapped to locations within the spatial-temporal volume. A first hypothetical intensity peak location HIPP1 is obtained within the spatial-temporal volume. A first spatial-temporal analysis location STAP1 is calculated based on a spatial-temporal analysis performed locally around HIPP1 and along the first spatial-temporal trajectory associated with HIPP1. The information about the intensity peak location is determined based on HIPP1 and STAP1.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments described herein relate to methods and arrangements for determining information about the location of intensity peaks in a spatial-temporal volume formed from image frames generated from optical triangulation performed from an imaging system. More specifically, the embodiments described herein are based on spatial-temporal analysis within the spatial-temporal volume. Background Technology

[0002] Industrial vision cameras and systems used for factory and logistics automation can be based on three-dimensional (3D) machine vision, where 3D images of scenes and / or objects are captured. A 3D image is an image that also contains "height" or "depth" information rather than, or at least not only, information about pixels that are only two-dimensional (2D) as in a conventional image (e.g., intensity and / or color). That is, each pixel of the image can include this information associated with the pixel's position in the image, and that position maps to the position of the thing (e.g., the object) that has been imaged. Processing can then be applied to extract information about the object's characteristics (i.e., the object's 3D properties) from the 3D image, and, for example, convert it into various 3D image formats. This information about height can be referred to as range data, where range data can therefore correspond to data from height measurements of the imaged object, or in other words, data from range or distance measurements of the object. Alternatively or additionally, pixels can include information about, for example, material properties, such as information related to the scattering of light in the imaging area or the reflection of light of a specific wavelength.

[0003] Therefore, pixel values ​​can be related to, for example, pixel intensity and / or range data and / or material properties.

[0004] Line scan image data is generated when image data is scanned or provided line by line by a camera, for example, by a sensor configured to sense and provide image data pixel by pixel. A special case of line scan images is image data provided by a so-called "sheet of light" (e.g., laser line, 3D triangulation). Lasers are usually preferred, but other light sources capable of providing a "sheet of light" can also be used, such as light sources that can provide light that remains focused and does not scatter too much light (or in other words, "structured" light, such as light provided by a laser or light-emitting diode (LED)).

[0005] 3D machine vision systems are typically based on optical triangulation sheets. In such systems, a light source illuminates an object with a specific light pattern, such as a light strip that creates a light or laser line on the object, and along this line, the 3D characteristics of the object corresponding to its contours can be captured. By using such line scanning of the object—that is, performing line scanning involving the movement of lines and / or the object—the 3D characteristics of the entire object corresponding to multiple contours can be captured.

[0006] A 3D machine vision system or device that uses light sheets for triangulation can be called a system or device for 3D imaging based on light or light sheets (or simply laser triangulation when using lasers).

[0007] Typically, to generate a 3D image based on optical triangulation, reflected light from the object to be imaged is captured by the camera's image sensor, and an intensity peak is detected in the image data. The peak appears at the location corresponding to the position where the incident light (e.g., a laser line) is reflected from the object. The position of the detected peak in the image is mapped to the position of the light reflected from the object that produced the peak.

[0008] A laser triangulation camera system, also known as an imaging system based on optical triangulation, projects a laser line onto an object to generate a height curve from the object's surface. By moving the object relative to the camera and light source involved, information about the height curves from different parts of the target object can be captured through images, which are then combined to generate a three-dimensional representation of the target object.

[0009] This technique can be described as capturing an image of a light source (typically a laser line) as it is projected onto and reflected from an object, then extracting the location of the reflected laser line within that image. This is typically done by identifying intensity peaks in an image frame using any conventional peak-finding algorithm, usually performed in each column of the sensor. However, conventional methods are susceptible to artifacts caused by the laser line's width covering multiple pixels in the image when discontinuities are present, whether in geometry (such as at the edges of a box) or intensity (such as a checkerboard pattern with a transition from dark to light).

[0010] One solution to reduce such artifacts, and an alternative to using conventional peak-finding algorithms, is a technique called spacetime triangulation or spacetime analysis, as seen, for example, Curles B et al., “Better optical triangulation through spacetime analysis,” COMPUTER VISION, 1995, 5th International Conference, Cambridge, MA, USA, June 20-23, 1995, LOS ALAMITOS, California, USA, IEEE COMPUT.SOC, US, June 20, 1995 (1995-06-20), pp. 987-994, XP010147003 ISBN: 978-0-8186-7042-8. The idea is to analyze the temporal evolution of structured (e.g., laser) light reflection, following the points through which the laser line passes. The width or profile of the laser is imaged on the sensor over time, corresponding to a Gaussian envelope. Therefore, the coordinates of the intensity peak can, in principle, be found by searching for the mean of a Gaussian in the sensor image, following the trajectory corresponding to how the feature points of the object are imaged in sensor coordinates over time (i.e., mapped to sensor coordinates) (in other words, in the space-time volume). The sensor position of the peak indicates depth, and time indicates the lateral position of the laser's center. This paper illustrates this principle well and also provides an explanation of the artifacts associated with conventional peak-finding algorithms. The technique presented in this paper can be described relatively simply as an algorithm in which:

[0011] 1) Image frames are captured, and these images form the spatial-temporal volume of the spatial-temporal image (each image can be captured similarly to that in the case of conventional optical triangulation).

[0012] 2) The spacetime image is skewed at a predetermined spacetime angle.

[0013] 3) Analyze the statistical data of the Gaussian light intensity distribution in a skewed coordinate system and identify the average or central location representing the peak position, and

[0014] 4) Perform a skew back to the original coordinates, that is, the position of the peak is skewed back to the original coordinates in both the row and time dimensions.

[0015] These locations can then be used to generate 3D images or models of the imaged object in a manner similar to that used in conventional peak location identification.

[0016] Finding the peak location within the spatial-temporal volume can also be described as analyzing the light intensity distribution along a trajectory within the spatial-temporal volume, where it is assumed that the trajectory in the paper is a straight line tilted at a spatial-temporal angle. More generally, the spatial-temporal analysis method can be described as observing the light intensity distribution along such a trajectory within the spatial-temporal volume and finding its center location, rather than simply looking at the intensity in each image frame and finding the peak in each frame. It can be recognized that such a trajectory can be considered to correspond to how the feature points of the imaged object will move within the spatial-temporal volume, as visible in the image when they move past the luminescent body (i.e., light, such as a laser line). The goal is to find the location of the feature point at the center of the laser line within the spatial-temporal volume.

[0017] The paper teaches how to analytically calculate the space-time angle and trajectory based on formulas relating the geometric and optical relationships between the sensor and the object, as well as the motion of the object as input. However, in deriving the aforementioned formula for the space-time angle, the paper makes several assumptions, such as that the sensors are orthogonal and that the object moves at a constant velocity relative to the measurement system during optical triangulation. The resulting space-time angle and the consequent trajectory do not account for secondary effects, such as projections via standard imaging lenses, secondary reflections, and / or defects in the optics connected to the sensor, and are not applicable to cases where the velocity of the object relative to the measurement system varies (i.e., is not constant).

[0018] EP 2 063 220 B1 discloses solutions to some problems of the original spatial-temporal analysis technique and shows how to establish a trajectory in the spatial-temporal volume of a measurement image using a method for determining a reference object (for the calibration phase), with system settings identical to those used for the measurement object. Therefore, the solution does not derive new formulas for analyzing and determining spatial-temporal angles or trajectories, but rather is an extension based on trajectories determined from recorded measurement data of the reference object. This method allows for greater flexibility and can also handle the aforementioned secondary effects. Different trajectories can be determined for different regions and spatial-temporal volumes of the measurement image. Furthermore, this method can be used to determine nonlinear trajectories. The embodiment presented in EP 2063 220 B1 is based on the assumption of trajectory extension, determining the amount of artifacts while using this assumption and repeating with a new assumption until the amount is below a predetermined threshold or has reached a minimum. Once the trajectory or corresponding spatial-temporal angle has been determined, it can be followed to find the light intensity distribution and identify its center position in the spatial-temporal volume of the measurement image of the measurement object. The main principle is the same as the original method disclosed in the paper, but the result is an improvement in the practical applicability of the space-time analysis method in intensity peak detection because more practically useful trajectories can be determined.

[0019] However, the space-time analysis-based solutions described in the aforementioned papers and EP 2 063 220 B1 are associated with several drawbacks and practical problems. For example, they are based on access to the complete space-time volume, and therefore access to the complete set of measurement images that form it. Consequently, these solutions are difficult to implement near or integrate with sensors. They also require processing considerably large amounts of data compared to conventional peak-finding algorithms, and involve significant storage and computational costs. When speed is critical, existing methods may not be suitable. Summary of the Invention

[0020] In summary, the aim is to provide one or more improvements or alternatives to the prior art, such as providing a method based on optical triangulation and spatial-temporal analysis that is more suitable for practical implementation.

[0021] According to a first aspect of the embodiments herein, this objective is achieved by a method for determining information regarding the location of an intensity peak in a spatial-temporal volume formed by image frames generated by an image sensor as part of optical triangulation by sensing light reflected from a measured object. The optical triangulation is based on the movement of at least one light source and / or the measured object relative to each other, such that at different consecutive moments, different consecutive portions of the measured object are illuminated by the light source and reflected light from the measured object is sensed by the image sensor. Each image frame of the spatial-temporal volume is thus associated with a corresponding moment and with a corresponding portion of the measured object from which the image sensor senses light at that moment. The spatial-temporal volume is also associated with a spatial-temporal trajectory relating how feature points of the measured object are mapped to locations within the spatial-temporal volume. A first hypothetical intensity peak location (HIPP1) in the spatial-temporal volume is obtained. A first spatial-temporal analysis location (STAP1) is then calculated based on a spatial-temporal analysis performed locally around and along the first spatial-temporal trajectory. The first spatial-temporal trajectory is the spatial-temporal trajectory associated with (i.e., passing through) the first hypothetical intensity peak location. The information regarding the location of the intensity peak is determined based on HIPP1 and the calculated STAP1.

[0022] According to a second aspect of the embodiments herein, this objective is achieved by a computer program comprising instructions, when executed by one or more processors, to cause one or more devices to execute the method according to the first aspect.

[0023] According to a third aspect of the embodiments herein, this objective is achieved by a carrier including a computer program according to the second aspect.

[0024] According to a fourth aspect of the embodiments herein, this objective is achieved by one or more devices for determining information regarding the location of an intensity peak in a spatial-temporal volume formed by image frames generated by an image sensor as part of optical triangulation by sensing light reflected from a measured object. The optical triangulation is based on the movement of at least one light source and / or the measured object relative to each other, such that at different consecutive moments, different consecutive portions of the measured object are illuminated by the light source and reflected light from the measured object is sensed by the image sensor. Each image frame of the spatial-temporal volume is thus associated with a corresponding moment and with a corresponding portion of the measured object from which the image sensor senses light at the corresponding moment. The spatial-temporal volume is also associated with a spatial-temporal trajectory relating how feature points of the measured object are mapped to locations within the spatial-temporal volume. The one or more devices are configured to obtain a first hypothetical intensity peak location (HIPP1) in the spatial-temporal volume. The one or more devices are also configured to calculate a first spatial-temporal analysis location (STAP1) based on a spatial-temporal analysis performed locally around HIPP1 and along a first spatial-temporal trajectory. The first spatial-temporal trajectory is the spatial-temporal trajectory associated with HIPP1 within the spatial-temporal trajectory. Furthermore, the one or more devices are configured to determine the information regarding the location of the intensity peak based on HIPP1 and the calculated STAP1.

[0025] In some embodiments, determining information about the intensity peak location includes calculating a first positional difference PD1 in the spatial-temporal volume between HIPP1 and the calculated STAP1. If the calculated PD1 is less than or equal to a predetermined specific threshold, then HIPP1 is provided as the determined intensity peak location. Conversely, if PD1 is higher than the threshold, then a new HIPP2 closer to STAP1 can be obtained (e.g., selected). According to some embodiments, further STAPs and PDs (e.g., STAP2 and PD2) based on local spatial-temporal analysis around HIPP2 can be provided through one or more iterations, comparing PD2 with a threshold, and so on. Improved HIPPs can be achieved in this way, and the results can be as good as or even better than conventional spatial-temporal analysis. Meanwhile, the embodiments described herein can be implemented more efficiently and with fewer resources than conventional spatial-temporal analysis, and are more suitable for real-time or near-real-time execution. It is not necessary to access the full spatial-temporal volume of the image data for operation; local image data around each HIPP is sufficient. This facilitates implementations closely related to image sensors, operating on a subset of image frames provided by the image sensor and image data of a partial spatial-temporal volume formed by these image frames.

[0026] In some embodiments, determining information about the location of an intensity peak includes providing a comparison between HIPP1 and the calculated STAP1 as a reliability indicator of how reliable HIPP1 is as an intensity peak location. These embodiments can be particularly advantageous when HIPP1 has already been determined by conventional peak-finding algorithms because they provide valuable information about how well the algorithm is at finding reliable peaks and / or can be used to identify unreliable peak locations, which, for example, can be excluded from use, or corrected and / or replaced.

[0027] Therefore, since these embodiments are based on space-time analysis, the embodiments described herein not only achieve improvements and more accurate peak positions than possible through conventional peak-finding algorithms, but they also facilitate practical implementations and can be additionally or alternatively used to determine the reliability or quality of peak positions determined by conventional peak-finding algorithms or by iteration based on the embodiments described herein. Attached Figure Description

[0028] This document describes examples of embodiments in more detail with reference to the accompanying schematic diagrams, which are briefly described below.

[0029] Figure 1 An example of a prior art imaging system is illustrated schematically, which can also be used to provide images relevant to the embodiments herein.

[0030] Figure 2 An example of a prior art technique is illustrated, which consists of image frames and has a spatial-temporal volume of spatial-temporal trajectory for spatial-temporal analysis.

[0031] Figures 3A-3B A simplified example of an imaging system that can be configured to perform the embodiments of this article is illustrated schematically.

[0032] Figure 4 This is a schematic diagram to enhance understanding of the principles behind space-time analysis and the embodiments described herein.

[0033] Figures 5A-5B This is the first example, which schematically illustrates and is used to explain how hypothetical intensity peak location (HIPP) and spatial-temporal analysis location (STAP) can be provided and used in an iterative manner according to some embodiments of this paper.

[0034] Figures 6A-6B This is the second example, which shows the relationship with... Figures 5A-5B A view similar to the first example, but used to illustrate what it might look like when the first HIPP used is a bad starting point.

[0035] Figures 7A-7CThis is a flowchart schematically illustrating an embodiment of the method based on the foregoing and the embodiments described herein.

[0036] Figures 8A-8B The results from optical triangulation are shown when a conventional peak-finding algorithm has been used to make a qualitative comparison with the results obtained when the embodiments described herein have been applied.

[0037] Figure 9 This is used to illustrate how one or more devices can be configured to perform actions related to... Figure 8A -B is a schematic block diagram of an embodiment of the methods and actions discussed.

[0038] Figure 10 These are schematic diagrams illustrating some embodiments related to computer programs and their carriers, enabling one or more devices to perform actions related to... Figure 8A -B discusses the methods and actions. Detailed Implementation

[0039] The embodiments described herein are exemplary embodiments. It should be noted that these embodiments are not necessarily mutually exclusive. It may be assumed by default that components from one embodiment exist in another embodiment, and how those components can be used in other exemplary embodiments will be apparent to those skilled in the art.

[0040] Figure 1 An example of this type of imaging system mentioned in the background art is schematically illustrated, namely, an imaging system 100 for 3D machine vision based on optical triangulation for capturing information about the 3D characteristics of a target object. This system can be used to provide images that can be operated on in the embodiments described further below. The system 100 shown in the figure is in normal operating condition, i.e., typically after calibration has been performed and thus the system is calibrated. The system 100 is configured to perform optical triangulation, here in the form of an optical triangulation sheet mentioned in the background art. The system 100 also includes a light source 110, such as a laser, for illuminating the object to be imaged with a specific light pattern 111 (illustrated and illustrated as a light sheet in this figure). This light can, but does not have to, be a laser. In the example shown, the target objects are illustrated as a first measurement object 120 in the form of a car and a second measurement object 121 in the form of a gear construction. When the specific light pattern 111 is incident on the object, this corresponds to the projection of the specific light pattern 111 onto the object, which can be observed when the specific light pattern 111 intersects with the object. For example, in the example shown, a specific light pattern 111, exemplified as a light sheet, generates light rays 112 on the first measuring object 120. The specific light pattern 111 is reflected by the object, more specifically, by a portion of the object at the intersection (i.e., at light ray 112 in the example shown). The measuring system 100 also includes a camera 130, which includes an image sensor ( Figure 1(Not shown in the image). The camera and image sensor are arranged relative to the light source 110 and the object to be imaged, such that a specific light pattern becomes incident light on the image sensor when reflected by the object. The image sensor is a device typically implemented as a chip for converting incident light into image data. The portion of the object that causes the incident light to be reflected onto the image sensor can thus be captured by the camera 130 and the image sensor, and corresponding image data can be generated and provided for further use. For example, in the example shown, a specific light pattern 111 will be reflected at light 112 on a portion of the roof of the first measured object 120 towards the camera 130 and the image sensor, thereby generating and providing image data containing information about said portion of the roof. With the aid of knowledge of the operating conditions and geometry of the measurement system 100, such as how the image sensor coordinates relate to world coordinates (e.g., coordinates of a coordinate system 123 associated with the object to be imaged and its context, e.g., Cartesian coordinates), the image data can be converted into information about the 3D characteristics (e.g., 3D shape or contour) of the object being imaged in an appropriate format. Information regarding the 3D characteristics, such as the 3D shape(s) or contour(s), may include data describing the 3D characteristics in any suitable format.

[0041] By moving, for example, light source 110 and / or the object to be imaged, such as first measuring object 120 or second object 121, so that multiple parts of the object are illuminated and reflected light is applied to an image sensor, typically achieved in practice by scanning the object, image data describing a more complete 3D shape of the object can be generated, for example, corresponding to multiple successive contours of the object, such as contour images 140-1—140-N of the first measuring object 120, where each contour image shows the shape of the first object 120 at the location of the reflected light pattern 111 when the image sensor of camera unit 130 senses the light that produces the contour image. As shown, a conveyor belt 122 or the like can be used to move the object through the light pattern 112, where light source 110 and camera unit 130 are typically fixed, or the light pattern 111 and / or camera 130 can be moved above the object so that all parts of the object, or at least all parts facing light source 110, are illuminated, and the camera receives light reflected from all parts of the object to be imaged.

[0042] As can be seen from the above, the image frames provided by the camera 130 and its image sensor of the first measuring object 120 can correspond to any of the contour images 140-1–140-N. As mentioned in the background art, each position of the contour of the first object shown in any of the contour images 140-1–140-N is typically determined based on identifying intensity peaks in the image data captured by the image sensor and finding the positions of these intensity peaks. System 100 and conventional peak-finding algorithms are typically configured to search for intensity peaks in each pixel column in each image frame. If the sensor coordinates are u, v, and, for example, as indicated in the figure, u corresponds to pixel positions along rows in the image sensor and v corresponds to pixel positions along columns, then for each position u in the image frame, peak positions along v are searched, and the peaks identified in the image frame can result in a clean contour image as shown in the figure, and the sum of the image frames and the contour images can be used to create a 3D image of the first object 120.

[0043] Figure 2 A set of image frames or measurement images, generated, for example, by imaging system 100, is schematically illustrated. Four images or image frames IM1-IM4 at four times (e.g., t1-t4) are shown here as an example. Each image frame can be generated by the image sensor of camera 130. The image frames can image a measurement object (e.g., measurement object 120), and each image frame can therefore contain information in the form of sensed light, which can be used to create one of contour images 140. Images IM1-IM4 are stacked to form a spatial-temporal volume (STV) 360 of the image frames. Each image frame IM has a horizontal dimension u and a vertical dimension v, thus the spatial-temporal volume 360 ​​has three dimensions, with the temporal dimension t being the third dimension. Because the measured object (e.g., the first measured object 120) moves relative to the camera 130 and the light source 110 during the generation of measurement images IM1-IM34, the example feature points 240 of the imaged measured object are mapped to example spatial-temporal trajectories 262 with (u, v, t) coordinates in the spatial-temporal volume 360. At some locations in the STV 360, reflections from the example feature points result in higher intensities and form intensity peaks. Note that... Figure 2This is only used to illustrate and visualize some relationships used in space-time analysis. In practice, a space-time volume with images of the complete measured object can include hundreds of image frames, and at least many more than four. Moreover, in the example, the trajectories can be parallel and straight, and u remains unchanged, so each trajectory can be described by angles, like trajectory 262 shown in the example figure, which is the case in the original space-time analysis paper mentioned in the background art. However, as indicated above, in practice, the trajectory can also change the position of u and does not necessarily have to traverse the space-time volume in a straight line. Such trajectories can be determined, for example, using a reference object during the calibration phase, also as discussed in the background art.

[0044] Figure 3A An exemplary imaging system 300 is schematically illustrated, which is based on optical triangulation for capturing information about the 3D characteristics of one or more measurement objects. Imaging system 300 can be used to implement the embodiments described herein. The illustrated system corresponds to a basic configuration having a light source 310 and a camera 330 respectively arranged in specific locations, adapted and / or configured for optical triangulation, such as laser triangulation. System 300 can therefore be used with… Figure 1 The system 100 described herein corresponds to this system, but is configured to perform according to the embodiments herein. A measurement object 320 is shown, which may correspond to the first measurement object 120, and is shown as being at least partially within the field of view of the camera 320. A light source 210 illuminates the measurement object with light 311 in the form of a specific light pattern (e.g., a light sheet and / or a laser line), the light is reflected by the measurement object, and the reflected light is captured by the camera 330. The measurement object 320 is illuminated and an image can be captured, as in conventional optical triangulation. For example, the system may be configured to move the measurement object 320, such as by means of a conveyor belt, so that it becomes fully illuminated by light from the light source 310, and / or the system may be configured to move the light source and / or the camera with sensors to accomplish the same thing. The light source 310 and the camera 330 are typically arranged in fixed positions relative to each other.

[0045] Camera 330 can be a camera of existing technology, for example, with Figure 1 The system 100 corresponds to the camera 130 and may include an image sensor 331, which may be as described above. Figure 1The same or similar image sensors are discussed. Image frames provided by camera 330 and image sensor 331 and / or information obtained from image frames may be expected to be transmitted, for example, transferred, for further processing outside camera 330, such as to computing device 301 (such as a computer or similar device). Such further processing may be additionally or alternatively performed by a separate (i.e., separate from image processor 131) computing unit or device (not shown), but still included in or integrated with, for example, camera 330 or a unit including camera 330.

[0046] Before describing the embodiments in detail, the prior art and problems pointed out in the background art will be explained in detail, and some principles on which the embodiments in this article are based will be introduced and explained.

[0047] Figure 3B A set of image frames is schematically illustrated. For example, it is generated by imaging system 300 when imaging a measurement object 320. The illustrated image frames form a spatial-temporal volume STV 360, which may include image frames from a complete scan of the measurement object 320. An example of a partial spatial-temporal volume (pSTV) 361, which is a subset of the total or complete STV 360, is also shown in the figure. The pSTV can be formed, for example, by a predetermined number of consecutive image frames of the total spatial-temporal volume, for example, a subsequence of the total sequence of image frames forming the STV 360, for example, image frames IM surrounding (e.g., around, centered on) image frame IMi in the total image frame. i-K …IM i+L As shown in the figure for the case of L=K. For example, if we assume that the total spatial-temporal volume (e.g., STV 360) of the measured object used for imaging is formed by 500 image frames IM1-IM500, then the first pSTV can be formed by a subsequence of image frames IM1-IM15, the second STV by a subsequence of image frames IM2-IM16, the third STV by IM3-IM17, and so on.

[0048] In pSTV 361, for example, it is shown that it is located in IM. i Example location 340 in the image, and a partial spatial-temporal trajectory 362 of the trajectory of example feature point 340, which is therefore mapped to a location in pSTV 361 and shown in the figure as a location mapped to IMi. It is named a partial trajectory because it only involves image data of a portion of STV 362, but can be based on and be a part of the spatial-temporal trajectory of STV 360 (i.e., the entire STV), and for example, is a part of or based on the trajectory of STV 360 passing through pSTV 361.

[0049] In the prior art teachings mentioned in the background section, a complete stack of image frames from a sensor is used, such as the complete STV 360, while the embodiments herein apply to a portion of the stack, such as pSTV 361. The embodiments herein can advantageously be pipelined to cover a complete stack of image frames for the entire measured object.

[0050] Even though the embodiments described herein are based on the spatial-temporal analysis principles of the prior art, the location of the intensity peak in the pSTV can still be determined based on the embodiments described herein. Simultaneously, while determining the intensity peak location and / or information about the intensity peak location for the first pSTV according to the embodiments described herein, the image sensor can sense and provide a second subset(s) of image frames(s). Therefore, less data needs to be stored and provided simultaneously, and the location can be identified before all image frames and the full spatial-temporal volume are available.

[0051] Figure 4 This is a schematic diagram used to enhance understanding of the principles and relationships behind the spatial-temporal analysis and embodiments described herein. The diagram can be considered as representing a subset or subsequence of the spatial-temporal volume of an image frame sequence from laser triangulation, such as that generated by the operation of imaging system 300 and imaging of the measured object 320. The subsequence could, for example, be part of STV 360 and involves three image frames IM here. i-1 ...IM i+1 Assuming the measured object moves past laser line 431 or the laser sheet, this subsequence has captured feature point 440 of the measured object. Feature point 440 will follow a trajectory in the spatial-temporal volume and be visible where it is illuminated. However, because laser line 431, as shown in the figure, has width, it will not illuminate feature point 440 only in a single instance or at a single point in time. As illustrated by the bell-shaped diagram of laser line 431 in the figure, the intensity will also vary with the width. The light distribution is also affected when light is reflected back from the measured object.

[0052] Feature point 440 can therefore be considered as sampling the laser line 431 across its width, resulting in feature point 440 in image IM1-3 being sampled at three different light intensities depending on the light illuminating feature point 440. The intensity sample is at time t. i-1 ..t i+1 (That is, when an image frame is captured) as schematically shown in the figure. Therefore, the same feature point 440 can produce 3 intensity values ​​at different locations in three different consecutive image frames.

[0053] Note that "upward" in the figure refers to the intensity level, not the position in the image frame or sensor plane. However, these positions generally change as the imaging feature point 440 follows a trajectory in the spatial-temporal volume through the image frames. The three image frames shown are merely to indicate that the feature point 440 sample belongs to these frames. Regarding the spatial-temporal trajectory of the feature point along its movement, the imaging system can be arranged such that the feature point moves in the real world, for example, only or substantially only in the y-direction, e.g., as... Figure 1 As indicated in the diagram, it also moves over time. In general, this causes the feature point and spatial-temporal volume in the sensor coordinates to move in u and v, except in time t; that is, its spatial-temporal trajectory can change at all coordinates (u, v, t).

[0054] from Figure 4 It was further recognized that the actual time position when feature point 440 passes through the center of the laser line corresponds to the image frame IM. i and IM i+1 Related time t i and t i+1 Therefore, the center of the laser line is not directly sampled, but it can still be identified in the spatial-temporal volume. Reconstructing the true center by examining the time and place of occurrence, even between frames, can be done by looking at multiple frames. While not limited to looking symmetrically around the center point, this can be meaningful for detection accuracy. Understandably, actual samples from at least three image frames are typically required to reconstruct the signal, i.e., the light distribution in the spatial-temporal volume. In practice, a minimum of five or seven image frames can be used, but more image frames, such as 9, 11, 15, or 31 image frames with image data, can be expected to form each pSTV.

[0055] By understanding the spatial-temporal trajectory within the spatial-temporal volume, it becomes possible to better understand the light distribution and the direction in which the light distribution can be used to identify the center location by following or tracing the feature points sampled from the light source. This has been used in prior art spatial-temporal analysis to find the center location of the light distribution, even if the actual center is not directly sampled in any image frame. In the embodiments described herein, obtaining information about the trajectory of the hypothetical intensity peak location provides information about which samples to use to reconstruct the light distribution and, for example, to find its center location.

[0056] As already mentioned, conventional spacetime analysis is performed over the entire spacetime volume, and it can be assumed that the light distribution center found along the spacetime trajectory represents the actual peak location.

[0057] However, in the embodiments described herein, the starting point is the first hypothetical intensity peak position (HIPP), i.e., the first HIPP or HIPP1, and the spatial-temporal analysis is performed only locally and uses a portion of the full spatial-temporal volume. The center position identified by the spatial-temporal analysis (i.e., the spatial-temporal analysis position (STAP)) is not assumed to be the correct peak position of the feature point. Instead, the STAP is used to compare and evaluate the HIPP. The positional difference between them can be considered as a quality measure of the HIPP. If the measurement (e.g., the difference) indicates that the HIPP is too far away, it can be canceled and / or new, refined HIPPs can be provided based on earlier HIPPs and their STAPs (i.e., the positions determined by the spatial-temporal analysis). This can be repeated or iterated to obtain increasingly better hypothetical peak positions. For example, some STAPs will correspond to artifacts due to the poor quality of the first hypothetical intensity peak position. However, the embodiments described herein make it possible to identify such “undesirable” or erroneous peak positions, so that they can be avoided or at least have a smaller impact when peak positions are used to form a 3D image of the measured object. However, the actual peak position can be identified through the iterative and refined hypothetical peak position (the improved hypothesis), with results similar to conventional spatial-temporal analysis, i.e., finding a better peak position than might be possible using only conventional peak detection algorithms. However, compared to existing techniques, the embodiments described herein also have the advantage that the complete spatial-temporal volume is not required before spatial-temporal analysis can be performed and used. It is sufficient to use and manipulate local data from subsequences of image frames that form a partial spatial-temporal volume, as described above.

[0058] Therefore, the embodiments described herein can be considered based on the use of hypothetical intensity peak positions (HIPPs), for example, starting with a first HIPP (HIPP1), which is preferably a peak position identified by a conventional intensity peak finding algorithm, such as an algorithm for finding peak positions in a series of image frames. HIPP1 is then evaluated based on the results from spatial-temporal analysis, which, as mentioned above, can be performed locally around HIPP1, thus requiring only data from said subset of the image frames and therefore only local data from around HIPP1. The spatial-temporal trajectory used for spatial-temporal analysis can be determined as in the prior art, and can use a fully or partially predetermined spatial-temporal trajectory, for example, determined or predetermined during a calibration phase prior to the application of the embodiments described herein using a reference object.

[0059] If the spatial-temporal analysis indicates that the HIPP is not reliable enough, for example, inaccurate or of poor quality, this can be identified, for instance, by an excessively large spatial-temporal position difference (PD) between the assumed intensity location and the spatial-temporal analysis location (STAP). The STAP is typically the center location of the light distribution along the trajectory through the HIPP, discovered in the spatial-temporal analysis. New and better hypothetical points can then be selected based on the results, new spatial-temporal analyses can be performed, and so on. That is, by iterative refinement, using spatial-temporal analysis performed only locally, for example, using image data from a window around the HIPP, improved peak locations can be determined compared to conventional peak-finding algorithms, with benefits similar to those of applying spatial-temporal analysis in the prior art. These benefits include the advantage of using sampling points in both time and space, so that the intensity sampling of the laser line becomes more consistent and does not suffer from or reduces artifacts caused by intensity variations and / or surface discontinuities in the measured object.

[0060] Furthermore, the embodiments described herein can be used to provide a measurement of the reliability and / or accuracy of an indication of a hypothetical peak position (e.g., HIPP1), based on a conventional peak-finding algorithm or a refined hypothetical peak position according to some embodiments of this document. This measurement can be considered a quality measure, for example, used to discard data that results in a hypothetical peak position indication that is unreliable, incorrect, and / or undesirable, indicating that it may be caused by noise, reflection, or other phenomena known to cause artifacts in optical triangulation images. Even after multiple iterations as applied in some embodiments of this document, undesirable peak positions (e.g., artifacts due to secondary effects such as reflection, noise, etc.) may never reach a stable state.

[0061] For example, the embodiments described herein can be used to provide such mass measurements for each location of an object in the full spatial-temporal volume, and these measurements can be used to remove locations with spatial-temporal inconsistencies, thereby achieving better and more accurate 3D images of the object.

[0062] As mentioned above, the results of the embodiments described herein are similar to those in conventional space-time analysis. Somewhat surprisingly, it has been found that the methods according to the embodiments can even achieve higher accuracy than conventional space-time analysis. This improvement is attributed to the fact that the embodiments described herein do not require skewing the space-time volume before reverting as is done in conventional space-time analysis.

[0063] Figures 5A-5B This is the first example, which schematically illustrates and is used to explain how hypothetical intensity peak position (HIPP) and spatial-temporal analysis position (STAP) can be provided and used in an iterative manner according to some embodiments of this article, for example, until the HIPP becomes good enough to be used as a determined intensity peak position.

[0064] Figure 5A This is a bitmap image showing a portion of an image frame, such as the i-th image frame IMi, which has been captured from a measurement object such as measurement object 320 or 120, representing a portion of the reflected laser line. Image frame IMi is part of a spatial-temporal volume (STV), more specifically, part of a sequence of image frames forming a partial STV (pSTV), which is part of a complete or full STV as described above. Image frame IMi can here be part of a subsequence comprising, for example, 7 image frames preceding IMi and 7 image frames following IMi. In other words, the image data used can be from image frame IMi. i-7 To IM i+7 .

[0065] The captured laser beam Figure 5A The width is visible and exhibits varying intensity. In the IMi column, for example, the first HIPP1 551a was obtained using a conventional peak-finding algorithm. Figure 5A It is shown as a circle and also in Figure 5B It is shown in the middle (in the "Start" diagram). Figure 5A The sample points, marked with a thin cross, are also schematically shown; these points represent sample locations along the spatial-temporal trajectory of HIPP1 traversing IMi. Note that... Figure 5A The thin crosshairs in the diagram represent the trajectory shown as a projection of the moment in IMi and associated with this image frame, but this trajectory is actually the trajectory in pSTV and also changes position over time. The trajectory shown is only for visualizing the trajectory principle. It should also be noted that when moving along the trajectory, and for example when it passes the next image frame IMi+1, the content shown in the diagram above should be replaced with image data from IMi+1 and visualized, i.e., as... Figure 5A The content shown refers only to a specific moment in the space-time volume.

[0066] exist Figure 5A The diagram also shows a star shape corresponding to a position along the indicated trajectory, where, according to some embodiments herein and as described below, a sufficiently good HIPP, here HIPP3551c, has been selected after two iterations.

[0067] Note that since the spatial-temporal volume considered here is partial, the trajectory obtained for HIPP1 is also a partial trajectory, for example, corresponding to the partial spatial-temporal trajectory 362. As mentioned above, information about such trajectories can be obtained as in the prior art, and therefore this information can be obtained before applying the embodiments herein. The trajectories associated with the embodiments herein can therefore be considered predetermined when applying the embodiments herein and partial when applied to a partial spatial-temporal volume.

[0068] It is worth noting that sampling in the spatial-temporal volume is typically performed via interpolation. That is, raw data (i.e., image data of image frames provided by the image sensor) has samples at “integer” (u, v, t) locations and is resampled to obtain sub-pixel locations (u, v, t) that can be used in the processing described below and are relevant to the embodiments herein. In other words, the locations and coordinates in the spatial-temporal volume used in the processing do not need to be at the exact sensor pixel location and the time point and location of the captured image frame associated with it, but can be positioned between these. This is similar to spatial-temporal analysis in the prior art.

[0069] In all cases, the spatial-temporal trajectory associated with HIPP1 551a passes through HIPP1 551a in IMi and also through image frame IM. i-7 To IM i+7 If we plot the sampling intensity along the trajectory, then the result is... Figure 5B The “starting” diagram thus shows the light distribution, or more precisely, the intensity distribution, along the trajectory passing through HIPP1 551a. For example, if the trajectory through HIPP1 corresponds to a partial spatial-temporal trajectory 362, then HIPP1 551a can be considered, for example, as... Figure 3B The points corresponding to example feature point 340 are drawn in the middle. Figure 5B The center position of the light distribution shown in the initial diagram is marked with a cross in this diagram and corresponds to the first position according to the spatial-temporal analysis (i.e., the first spatial-temporal analysis position STAP1, 552a). This position is located temporally between IMi and IMi+1 in this example. It can also be seen from the diagram that there is a position difference (PD), namely, the first position difference PD1, 553a between HIPP1 and STAP1. The difference lies in... Figure 5AIn the bottommost figure, the difference is represented by the time difference along the horizontal axis. The difference here is so large that HIPP1 cannot be considered a reliable or accurate peak position because, according to spatial-temporal analysis, if HIPP1 were the actual (i.e., correct) peak position, then STAP1 should be located at HIPP1. Differences considered too large for a particular system and setup can be identified through testing and routine experiments. When using time differences and thresholds, the threshold can be a small fraction of the time between two consecutive image frames. A threshold corresponding to the maximum permissible difference can be obtained before applying the embodiments described herein. For the working principle of the embodiments described herein, specific thresholds can therefore be assumed and, in practice, predetermined, for example, when applying the embodiments described herein.

[0070] Note that since the complete spatial-temporal volume is not analyzed, or even if the complete spatial-temporal volume may not be available, it cannot be assumed that the center of the light distribution found in this way (i.e., STAP) is the actual peak location. Instead, if HIPP1 is deemed insufficient, a new HIPP is obtained. It has been found that it is generally more efficient to select the next HIPP (HIPP2 551b in the illustrated example) as a location along the trajectory through HIPP1 and closer to the center of the identified light distribution (i.e., STAP1 in this case), rather than directly at or being at that center location. For example, preferably, as shown, HIPP2 551b is selected as a location between HIPP1 and STAP1. Figure 5B When HIPP2 is selected as the position between HIPP1 and STAP1 in the "Start" diagram.

[0071] In the first iteration 1, HIPP2 is then used instead of HIPP1, and... Figure 5B The center of the “Iteration 1” plot is shown. This is because, in this example, the image data is resampled around HIPP2 and along the trajectory through HIPP2, and the corresponding process described above can then be largely repeated, but for HIPP2 instead of HIPP1. Therefore, in the example shown, the image data in the “Iteration 1” plot uses resampled values ​​compared to the “Start” plot, which explains why the intensity values ​​shown at HIPP1 are not exactly the same in the two plots. The resampled trajectory of HIPP2 corresponds to the second part of the trajectory, where samples from the image data centered on HIPP2 result in… Figure 5B The "Iteration 1 Diagram" shown.

[0072] Therefore, the result is a new second light distribution along the trajectory passing through HIPP2 and with HIPP2 551b at its center, as... Figure 5B The figure is shown as “Iteration 1”.

[0073] In the second iteration, the center of the light distribution around HIPP2 is identified, i.e., STAP2 552b is found, and the position difference PD2 553b is obtained and compared with a threshold, i.e., in a similar manner to that described above for HIPP1. It can be seen that the difference is now smaller, but still identifiable in the figure. PD2 is also too large according to the threshold, so another similar iteration, iteration 2, is performed, resulting in HIPP3 551c and a third light distribution, as shown in the “Iteration 2” figure. This time it can be seen that there is almost no difference between the position of HIPP3 and STAP3 552c (e.g., the center of the third light distribution). This difference (i.e., PD3 553c) is small enough in the example and below the threshold. Therefore, HIPP3 is considered a reliable intensity peak position or a high-quality peak position, i.e., for further use and should correspond to the actual imaging feature point of the measured object located at accurate spatial and temporal coordinates. Based on the peak position of HIPP3 (i.e., the star shape in the upper figure of Figure 5), it therefore has a much higher quality than the initial first HIPP1 (i.e., the circle).

[0074] It is also noteworthy that the light distribution shown has a Gaussian-like shape, as expected when applying space-time analysis along the trajectory.

[0075] As mentioned above, interpolation is used in the spatial-temporal volume, so the location used is not necessarily a location within a specific image frame that forms the spatial-temporal volume. Therefore, Figure 5B The markers on the horizontal axis of the graph are not necessarily markers indicating positions within image frames, but the distances between the markers correspond to the time intervals between image frames. If HIPP1 is a position within an image frame, and because it is located... Figure 5B If the center position of the "Start" graph is specified (e.g., position 0), then the markers in the "Start" graph correspond temporally to the spatial-temporal volume position of the image frame. However, in the "Iteration 1" and "Iteration 2" graphs centered at HIPP2 and HIPP3, the markers typically do not indicate the position of the image frame.

[0076] As mentioned above, Figure 5B The light distribution in the image is shown as centered on the corresponding HIPP in time. This can be viewed as each HIPP being temporally centered within a portion of the spatial-temporal volume. Another way to view this is to consider applying a time window around the HIPP, i.e., with the HIPP positioned at the center. A time window can be used to determine the pSTV and image data to be used with the HIPP. The spatial-temporal volume is then sampled within this window or along the trajectory through the HIPP within the determined pSTV.

[0077] Figures 6A-6B It is shown that... Figures 5A-5BA second example of a view similar to the first example, but used to illustrate what it might look like when the first HIPP (here, HIPP1 651a) is a bad starting point and, for example, far from any substantial intensity peak location. The main principles explained above regarding Figure 6 are the same. The first HIPP1 is also represented here by a circle in the upper part of the image, which can correspond to image frame IMi. The last HIPP (here, HIPP3 651c, which will be explained further below) is shown as a star in the upper part of the image.

[0078] Similar to the first example, image data from a sequence of image frames surrounding HIPP1 is used to form the pSTV of the complete STV, wherein HIPP1 is preferably located in the middle of the image frames forming the pSTV. For example, if we assume IMi is the image frame shown in the upper part view and HIPP1 is located in this image frame, then the pSTV can be formed by image frame IM. i-7 To IM i+7 Formation. The iterative principle for reaching HIPP3 in the above diagram is... Figures 5A-5B The first example is the same. Therefore, there is PD1 653a between HIPP1 651a and STAP1 652a, PD2 653b between HIPP2 651b and STAP2 652b, and PD3 653a between HIPP3 651c and STAP3 652c.

[0079] exist Figures 6A-6B As can be seen, although the initial position difference PD1653a in the "Start" plot is greater than the later position difference PD3653c in the "Iteration 2" plot, PD3 still corresponds to a significant difference from HIPP3. Further iterations could further reduce the difference, but it is uncertain whether sufficient improvement can be achieved; that is, if further HIPPs are selected in the manner described above, the difference may never reach or fall below the threshold. Rather than spending time "chasing" the peak position through multiple iterations, which may not even find and / or never be considered a reliable peak position, it is generally better to stop after several iterations, even if it only reaches a difference above the threshold. This number can therefore be the maximum number of iterations and can be predetermined. Thus, if the maximum number of iterations in the second example is 2, then no more iterations will be performed after HIPP3, so that HIPP3 becomes the HIPP provided by the last iteration when it starts from the initial HIPP (HIPP1 in Figure 6).

[0080] If the last HIPP (e.g., HIPP3) is associated with its difference, then that difference can be used as a quality measure or an indicator of reliability and / or unreliability of the last HIPP.

[0081] It is understood that the differences in HIPP1 can already be used as such a reliability indicator or quality measure, which can then be applied to peak positions found according to conventional peak-finding algorithms. Therefore, the embodiments described herein can not only be used to achieve improved and more accurate peak positions than could be achieved using conventional peak-finding algorithms, but can also be additionally or alternatively used to determine the reliability or quality of peak positions determined according to conventional peak-finding algorithms or iteratively based on the embodiments described herein. Such quality measures can be used to evaluate whether, or to what extent, the determined peak positions should be used to provide a 3D image or model of the object being measured.

[0082] When multiple defined peak locations exist, measurements (such as the differences mentioned above) can be provided and associated with each defined location, for example, for a complete measured object and a complete spatial-temporal volume determined by conventional peak-finding algorithms and / or by the iterations described above. Thus, for each defined peak location, a quality measurement or reliability indicator will exist. These measurements or indicators can then be used to determine which defined peak locations to use, or to what extent they will be used (e.g., by weighting) when the determined locations are to be used to provide a 3D image or model of the measured object.

[0083] Figure 7A-C is a flowchart schematically illustrating an embodiment of the method based on the above and embodiments according to this document. The following actions of the method can be formed to determine information regarding the location of intensity peaks in a spatial-temporal volume (STV) formed by image frames. As part of optical triangulation, image frames are generated by an image sensor (e.g., image sensor 331) by sensing light reflected from a measured object (e.g., measured object 320). The spatial-temporal volume and image frames can correspond, for example, to STV 360 or pSTV 361, as in the example above. In practice, and as mentioned above, the spatial-temporal volume and image frames here are typically a portion and part of a larger spatial-temporal volume, for example, a pSTV 361 portion of an STV 360 formed by a large number of image frames imaged of the complete measured object. For example, part of a larger sequence of image frames IM1..IMi (where i = 1..M, and M is an integer on the order of hundreds or more). As with prior art and conventional optical triangulation, optical triangulation should be performed under known operating conditions. The optical triangulation itself can be prior art and therefore involves at least the movement of a light source (e.g., light source 310) and / or the measured object 320 relative to each other, so that different consecutive portions of the measured object are illuminated by the light source at different consecutive moments. Reflected light from the measured object is sensed by an image sensor. The light from the light source can be as in conventional optical triangulation (e.g., structured light, such as ray light and / or laser light). In optical triangulation, typically, but not necessarily, the camera 330 and the light source 310 are fixed relative to each other and the measured object moves relative to them. For example, it is also possible to move, for example, the light source, with or without a camera. Through the sensing by the image sensor 331, the corresponding image frame IMi of the STV is associated with the corresponding moment (e.g., ti) and with the corresponding portion of light sensed by the image sensor 331 of the measured object 320 at the corresponding moment ti. The STV is also associated with a spatial-temporal trajectory, for example, corresponding to 262 and 362, which relates to how feature points of the measured object are mapped to positions in a spatial-temporal volume. Therefore, the spacetime trajectories are of the same type as those defined and used in prior art spacetime analysis, and information about, for example, identifying them can be obtained in the same or similar manner as in the prior art. This includes obtaining them geometrically based on the measurement system 300, as in the original spacetime analysis paper mentioned in the background art, including information given by the known operating conditions, or obtaining them by calibration and using a reference object, as described in EP 2 063 220 B1, also mentioned in the background art.

[0084] Below and Figures 7A-7CThe methods and / or actions indicated herein may be performed by one or more devices (i.e., one or more devices, such as camera 330 and / or computing device 301) or by imaging system 300 and / or other suitable devices connected to it. The devices (one or more) used to perform the methods and actions are further described below.

[0085] Note that the following actions may be performed in any suitable order and / or, where possible and appropriate, may be performed in a fully or partially overlapping manner in time.

[0086] Action 701

[0087] The first hypothetical intensity peak position (HIPP1) in the STV is obtained. HIPP1 may be exemplified herein and hereinafter by HIPP1 551a or HIPP1 651a. In some embodiments, HIPP1 is located in a row of pixels within an image frame portion of the STV. That is, HIPP1 corresponds to a point in three dimensions (such as in (u, v, t) coordinates) that belongs to a position within a particular image frame and to a time associated with the time when image data at that position was captured, corresponding to the time when the light causing the image data was sensed by the image sensor. Typically, there exists a common time associated with all position portions of the same image frame. For example, as described above, image frame IMi is associated with time ti, and so on. HIPP1 is advantageously selected in the pixel row as a position with a high probability of being or close to the actual (i.e., true) intensity peak position, or at least a higher probability than other positions in that row. Preferably, it is selected by means of and / or based on conventional peak-finding algorithms.

[0088] Action 702

[0089] The first spatial-temporal analysis position (STAP1) is calculated based on a spatial-temporal analysis performed locally around HIPP1 and along the first spatial-temporal trajectory associated with HIPP1 as part of the spatial-temporal trajectory. STAP1 can be exemplified here and below by STAP1 552a or STAP1 652a.

[0090] As used herein, local execution near the assumed intensity peak location refers to performing a spatial-temporal analysis within a partial spatial-temporal volume (i.e., pSTV) along a partial spatial-temporal trajectory therein. The pSTV can be exemplified herein and hereinafter by pSTV 361, and the partial spatial-temporal trajectory by partial spatial-temporal trajectory 362. Thus, the pSTV is included within a larger spatial-temporal volume (e.g., STV 360) for imaging the complete measurement object (e.g., measurement object 320). Therefore, spatial-temporal analysis can be understood as being performed within the pSTV and using image data from image frames that form the pSTV, which are only a portion or subsequence of image frames forming the larger STV. Typically, this means that spatial-temporal analysis uses image data from subsequences of image frames associated with time intervals within the larger spatial-temporal volume, covering some image frames before and after HIPP, e.g., but not necessarily, image frames symmetrically surrounding the assumed peak location.

[0091] As used herein, and as should be recognized from the description and examples herein, a spatial-temporal analysis position (STAP) refers to the central location of a light distribution (e.g., intensity distribution) along a spatial-temporal trajectory within a spatial-temporal volume. Therefore, a STAP can be determined (e.g., found or identified) by calculations based on spatial-temporal analysis (i.e., analysis in space-time) along a spatial-temporal trajectory within a spatial-temporal volume, as in the prior art mentioned in the background section. Given a spatial-temporal volume and a spatial-temporal trajectory within that volume, any STAP along a spatial-temporal trajectory within a spatial-temporal volume can be calculated (i.e., determined by calculation) based on the same principles and / or methods as in the prior art (e.g., mentioned in the background section) regarding similar spatial-temporal analysis. Therefore, a STAP can be calculated, for example, based on finding (e.g., identifying) the central location of a light distribution (e.g., intensity distribution) along a given spatial-temporal trajectory within a given spatial-temporal volume. As should be recognized, the light distribution in the spatial-temporal volume can be obtained from image data and interpolation of the image frames that form the spatial-temporal volume, and can also be based on knowledge of the expected or known type of light distribution (e.g., Gaussian distribution), and / or the expected or known shape of the light distribution.

[0092] Action 703

[0093] The information regarding the location of the intensity peak is determined based on HIPP1 and the calculated STAP1.

[0094] Action 704

[0095] In some embodiments, action 703 (i.e., determining information about the location of the intensity peak) includes providing a comparison between HIPP1 and the calculated STAP1 as a reliability indicator of how reliably HIPP1 is positioned as the intensity peak. The comparison can be the location difference PD mentioned elsewhere herein, but it should be appreciated that other comparisons can also be used or provided, such as simply the set of coordinates of HIPP1 and STAP1 in the STV, all or some different coordinates, the difference between each of one or more coordinates, one or more ratios between the coordinates of HIPP1 and STAP1, etc.

[0096] These embodiments can be particularly advantageous when HIPP1 has already been determined by a conventional peak-finding algorithm as explained above, because they provide valuable information about the algorithm's effectiveness in finding reliable peak locations and / or identifying problematic peak locations so that, for example, they can be excluded and not used, or corrected and / or replaced. The greater the difference indicated by the comparison, the less reliable the peak location; conversely, the smaller the difference indicated or the absence of a substantial difference, the more reliable the peak location.

[0097] Action 705

[0098] In some embodiments, action 703 (i.e., determining information about the location of the intensity peak) includes calculating a first position difference (PD1) between HIPP1 and the calculated STAP1 in the spatial-temporal volume, such as PD1 553a or PD1 653a.

[0099] Action 706

[0100] In some embodiments, the calculated PD1 is checked to see if it is higher or lower than a certain threshold.

[0101] If the calculated PD1 equals the threshold, then it's a matter of definition and implementation. The action to be taken should be the same as if the calculated PD1 were below or above the threshold.

[0102] Action 707

[0103] In some embodiments, if the calculated PD1 is not higher than a threshold and is, for example, lower than a threshold, then HIPP1 is provided as the determined intensity peak position.

[0104] In other words, actions 706-707 can be summarized as follows: if the calculated PD1 is below a certain threshold, then HIPP1 can be provided as the location of a defined intensity peak.

[0105] Additionally, in some embodiments, if the calculated PD1 is higher than the specific threshold, then some or all of actions 708-714 can be performed at least once starting from n=2:

[0106] Action 708

[0107] In some embodiments, another new nth HIPP is obtained along the (n-1)th spatial-temporal trajectory, and the nth HIPP is closer to the calculated (n-1)th STAP than the (n-1)th HIPP.

[0108] Therefore, for example:

[0109] In the first iteration with n=2, HIPP2 is obtained along the first spatial-temporal trajectory (i.e., the trajectory used in action 702), such as HIPP2 551b or HIPP2 651b, and HIPP2 is closer to the calculated STAP1 (e.g., STAP1 552a or STAP1 652a) than HIPP1 (e.g., HIPP1 551a or HIPP1 651a).

[0110] In the second iteration when n=3, HIPP3, such as HIPP3 551c or HIPP3 651c, is obtained along the second spatial-temporal trajectory (i.e., the spatial-temporal trajectory associated with HIPP2 and used to calculate STAP2 in action 809 during the first iteration) after first performing actions 708-711 for n=2. The obtained (e.g., selected) HIPP3 is closer to the calculated STAP2 than HIPP2 (e.g., HIPP2 551b or HIPP2 651b).

[0111] etc.

[0112] Action 709

[0113] In some embodiments, the nth STAP is calculated based on a spatial-temporal analysis performed locally around the nth HIPP and along the nth spatial-temporal trajectory. The nth spatial-temporal trajectory is the spatial-temporal trajectory associated with the location of the nth hypothetical intensity peak.

[0114] Therefore, for example:

[0115] In the first iteration with n=2, STAP2 (e.g., STAP2 552b or STAP2 652b) is based on a spatial-temporal analysis performed locally around HIPP2 (e.g., HIPP2 551b or HIPP2 651b) and along a second spatial-temporal trajectory. The second spatial-temporal trajectory is the spatial-temporal trajectory associated with HIPP2.

[0116] In the second iteration with n=3, therefore, after the first execution of actions 708-711 for n=2, STAP3 (e.g., STAP3 552c or STAP3 652c) is calculated based on the spatial-temporal analysis performed locally around HIPP3 (e.g., HIPP3 551c or HIPP3 651c) and along the third spatial-temporal trajectory. The third spatial-temporal trajectory is the spatial-temporal trajectory associated with HIPP3.

[0117] etc.

[0118] Action 710

[0119] In some embodiments, the nth PD is calculated. The nth PD is the difference between the nth hypothetical intensity peak position and the calculated nth spatial-temporal peak position.

[0120] Therefore, for example:

[0121] In the first iteration with n=2, PD2 is calculated (e.g., PD2 553b or PD2 653b). PD2 is the difference between HIPP2 (e.g., HIPP2 551b or HIPP2 651b) and the calculated STAP2 (e.g., 552b or 652b).

[0122] In the second iteration when n=3 (and therefore after performing actions 708-711 first when n=2), PD3 is calculated (e.g., PD3 553c or PD3 653b). PD3 is the difference between HIPP3 (e.g., HIPP3 551c or HIPP3 651c) and the calculated STAP3 (e.g., 552c or 652c).

[0123] etc.

[0124] Action 711

[0125] In some embodiments, it is checked whether the calculated nth PD is higher or lower than the specific threshold (i.e., the same threshold used in action 706).

[0126] If the calculated nth PD equals the threshold, then this is a matter of definition and implementation. If action is to be taken, it should be the same as if the calculated PD1 is below or above the threshold.

[0127] In some embodiments, if the calculated nth PD is higher than or equal to the specific threshold in some of these embodiments, then another iteration can occur starting from action 708, now n = n + 1, or action 712 can be executed first.

[0128] In some embodiments, conversely, if the calculated nth PD is lower than or equal to the specific threshold in some of these embodiments and / or in some of these embodiments, then action 713 and / or action 714 are performed.

[0129] Action 712

[0130] In some embodiments, it is checked whether n is less than a predefined or predetermined integer N, or whether n is less than or equal to N. Note that if n is equal to N, then this is a matter of definition and implementation, and if action is to be taken, it should be the same as when n is less than or greater than N.

[0131] For example, say N=3, we check if n is less than N and if it is the first iteration, i.e., iteration 1, where n=2. Therefore, this will result in n being less than N, but for iteration 2 with n=3, this will no longer be the case.

[0132] In some embodiments, if n is less than or equal to N in some of these embodiments, then another iteration can occur starting from action 708, now n = n + 1.

[0133] In some embodiments, instead, if n is greater than or equal to N in some of these embodiments, then action 713 and / or action 714 are performed.

[0134] Note that in some embodiments not shown in the figures, the order of actions 712 and 711 is reversed, for example, their positions are interchanged. However, as shown in the figures, it may be beneficial to check the threshold first.

[0135] Action 713

[0136] The nth HIPP obtained at the end is provided as the determined intensity peak position, that is, similar to action 707 but now used for another HIPP after one or more improved iterations.

[0137] For example:

[0138] If this occurs in the first iteration when n=2, then HIPP2 is provided as the determined intensity peak position.

[0139] If this occurs instead in the second iteration when n=3, then HIPP3 is provided as the location of the intensity peak.

[0140] In some embodiments, if n is equal to or greater than a predefined integer N, as checked in action 712, then the last HIPP (i.e., the nth HIPP) is associated with unreliability. That is, even if the nth PD is above the threshold, the nth HIPP may be provided as a definite intensity peak position after one or more iterations, but is therefore associated with unreliability, i.e., the nth HIPP is unreliable, for example, the nth HIPP is not or may not be the actual or accurate peak position because the nth PD is below the threshold even after one or more iterations.

[0141] Action 714

[0142] In some embodiments, the last calculated PD, i.e., the first or nth PD when the iteration has stopped, is provided as a reliability indicator of the determined intensity peak position, i.e., a reliability indicator of the HIPP provided as the determined intensity peak position in action 707 or action 713.

[0143] The content related to Actions 711-714 that has been disclosed above can be summarized as follows:

[0144] If the calculated nth PD is lower than and / or equal to the specific threshold, then the nth HIPP can be provided as the determined intensity peak position. In this case, no further iterations are performed.

[0145] Conversely, if the calculated nth PD is higher than the specific threshold, then another iteration can be performed with n = n + 1. That is, some or all of actions 708-712 can be performed again, but now n = n + 1. Thus, after the first iteration 1 with n = 2, the second iteration 2 can be performed with n = 3. In some embodiments, for this to occur, i.e., to perform another iteration, it is also required that n is less than, or less than or equal to, a predefined integer N > 2, i.e., as checked in action 712.

[0146] Note that, for efficiency and to simplify implementation, the position difference (i.e., PD) in the above example can be calculated only for the time coordinate; that is, it is only the position difference between positions in the spatial-temporal volume over time, i.e., the time difference. In other embodiments, the difference is calculated and used in relation to all coordinates or (one or more) other coordinates rather than time.

[0147] Figure 8A -B shows the results from optical triangulation when a conventional peak-finding algorithm has been used for a qualitative comparison with the results obtained when the embodiments described herein have been applied. The same image sequence, corresponding to the output of the optical triangulation imaging system described above, was used in both cases.

[0148] Figure 8AThis is the result when the peak positions found using a conventional peak-finding algorithm have been used to form the image shown. The intensity in the image shown is proportional to the height or depth. Because conventional peak-finding algorithms have problems handling checkerboard patterns on these sloping surfaces, some variation can be seen in the imaged pyramid on some sloping surfaces.

[0149] Figure 8B (The above figure) is the result of determining the peak position through iterative and local application of spatial-temporal analysis according to the embodiments described in this paper, and subsequently generating the figure shown based on the determined position. Figure 8A As shown, there are no identifiable and unwanted changes on the inclined surface, and at least to a lesser extent than... Figure 8A Much lower. Therefore, the embodiments described in this paper can provide better results and 3D images than conventional algorithms.

[0150] Figure 8B The lower half of the diagram illustrates the time position difference (PD) of the last HIPP, i.e., used to determine... Figure 8A The above figure is based on the position difference (PD) of the peak positions. This is an example corresponding to action 714. The intensity in the image shown is proportional to the magnitude of the difference. Some regions of low intensity variation can be identified, thus corresponding to the peak positions determined according to the embodiments herein, with some but relatively small position differences between HIPP and STAP. Variations and differences are particularly present on the surface where conventional peak-finding algorithms have even greater problems, which is to be expected.

[0151] Please note that its results come from Figure 8A Searching for regular peaks in Figure 8A The results are based on the embodiments described herein. Figure 8B In the image above, there are errors on the right side of the pyramid. This could be due to unwanted reflections in the image used for capture. This also leads to... Figure 8B The problem is clearly indicated in the lower positional difference image. Therefore, if the resulting positional difference is used as an indicator of the reliability of the determined peak position, then it is possible to... Figure 8B The location with this error can be easily identified in the upper 3D image, and the data is excluded from the 3D image, or marked, or replaced with a value interpolated from the surrounding location, depending on what is expected and appropriate based on the 3D image to be used.

[0152] Figure 9 This is used to illustrate that it can be used in conjunction with the embodiments mentioned above for performing the embodiments described herein (such as for performing the above regarding...). Figure 7A-C is a schematic block diagram of an embodiment of one or more devices 900 (i.e., one or more devices 900) corresponding to the method and / or action described in -C. The one or more devices may correspond, for example, to computing device 301 and / or camera 330, or devices forming imaging system 300.

[0153] The schematic block diagram is used to illustrate how device (one or more) 900 can be configured to perform the above-mentioned actions. Figure 7A -C represents an embodiment of the method and action discussed. Therefore, device 900 (one or more) is used to determine information regarding the location of the intensity peak in the spatial-temporal volume formed by the image frame. The image frame is generated by the image sensor 331 as part of optical triangulation by sensing light reflected from the object being measured. That is, as described above for... Figures 7A-7C The optical triangulation involves the movement of at least the light source 310 and / or the measurement object 320 relative to each other, such that at different consecutive moments, different consecutive portions of the measurement object 320 are illuminated by the light source 310 and the reflected light from the measurement object 320 is sensed by the image sensor. Through this sensing by the image sensor 331, each image frame of the spatial-temporal volume is associated with a corresponding moment (e.g., t). i This is associated with and related to the corresponding portion of the measured object 320 from which the image sensor 331 senses light at a given moment. The spatial-temporal volume is also associated with the spatial-temporal trajectory, which relates to how feature points of the measured object are mapped to positions within the spatial-temporal volume.

[0154] One or more devices 900 may include a processing module 901, such as a processing component, one or more hardware modules, including, for example, one or more processing circuits, circuit systems (such as processors), and / or one or more software modules for performing the methods and / or actions.

[0155] One or more devices 900 may further include a memory 902, which may include, for example, containing or storing a computer program 903. The computer program 903 includes “instructions” or “code” that are executed directly or indirectly by one or more devices 900 to perform the methods and / or actions. The memory 902 may include one or more memory cells and may also be arranged to store data (such as configurations, data, and / or values) relating to or used to perform the functions and actions of the embodiments herein.

[0156] Furthermore, device(s) 900 may include a processing circuitry system 904 involved in processing and, for example, encoding data, as one or more exemplary hardware modules, and may include or correspond to one or more processors or processing circuits. Processing module(s) 901 may include, for example, "implemented in the form of processing circuitry system 904" or "implemented by processing circuitry system 904". In these embodiments, memory 902 may include a computer program 903 executable by processing circuitry system 904, thereby enabling device(s) 900 to operate or be configured to perform the methods and / or their actions.

[0157] Typically, one or more devices 900 (e.g., one or more processing modules 901) include one or more input / output (I / O) modules 905 configured to participate in (e.g., by performing) communication with other units and / or devices (such as sending and / or receiving information from other devices). One or more I / O modules 905 can be exemplified by acquiring (e.g., receiving) one or more modules and / or providing (e.g., sending) one or more modules where applicable.

[0158] Additionally, in some embodiments, device 900 (e.g., processing module 901) includes one or more of the following: obtaining module, calculating module, determining module, executing module, associating module, and providing module, as exemplary hardware and / or software modules for performing the actions of the embodiments herein. These modules may be implemented wholly or partially by processing circuitry system 904.

[0159] therefore:

[0160] One or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more I / O modules 905 and / or one or more acquisition modules may be operable or configured to obtain the first hypothetical intensity peak position HIPP1 in the spatial-temporal volume (STV).

[0161] One or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more computing modules may be operable or configured to calculate the first spatial-temporal analysis position, STAP1, based on a spatial-temporal analysis performed locally around the first assumed intensity peak position HIPP1 and along the first spatial-temporal trajectory.

[0162] One or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more determining modules may be operable or configured to determine the information about the intensity peak position based on a first assumed intensity peak position HIPP1 and a calculated first spatial-temporal analysis position STAP1.

[0163] In some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more calculation modules are operable or configured to calculate the first position difference, PD1.

[0164] In some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more I / O modules 905 and / or one or more providing modules are operable or configured to provide HIPP1 as the determined intensity peak position if the calculated PD1 is lower than the specific threshold.

[0165] In some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more I / O modules 905 and / or one or more acquisition modules and / or one or more calculation modules and / or one or more provisioning modules are operable or configured to, if the calculated PD1 is higher than the specific threshold and at least, and / or starts with n=2, then

[0166] Obtain the other, new, nth HIPP.

[0167] Calculate the nth spatial-temporal analysis position STAP.

[0168] Calculate the nth position difference PD, and

[0169] If the calculated nth PD is lower than the specific threshold, then the nth HIPP is provided as the determined intensity peak position.

[0170] In some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904 and / or one or more providing modules and / or one or more associated modules are operable or configured to provide the nth HIPP as a determined intensity peak position and associate the determined intensity peak position with the unreliability if n is greater than or equal to a predefined integer N.

[0171] In some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904, one or more providing modules and / or one or more I / O modules 905 are operable or configured to provide the last calculated PD as a reliability indicator of the determined intensity peak location.

[0172] Furthermore, in some embodiments, one or more devices 900 and / or one or more processing modules 901 and / or processing circuitry 904, one or more provisioning modules and / or one or more I / O modules 905 are operable or configured to provide the comparison between HIPP1 and the calculated STAP1 as the reliability indicator.

[0173] Figure 10 The diagram illustrates some embodiments related to a computer program and its carrier, enabling one or more of the described devices 900 to perform the methods and actions.

[0174] The computer program can be computer program 903 and includes instructions that, when executed by processing circuitry system 904 and / or one or more processing modules 901, cause device (one or more) 900 to execute as described above. In some embodiments, a carrier, or more specifically, a data carrier, such as a computer program product including the computer program, is provided. The carrier can be one of electronic signals, optical signals, radio signals, and computer-readable storage media, such as computer-readable storage media 1001 schematically shown in the figures. Computer program 903 can therefore be stored on computer-readable storage media 1001. The carrier may not include transient, propagating signals, and the data carrier may be correspondingly named a non-transient data carrier. Non-limiting examples of data carriers as computer-readable storage media are memory cards or memory sticks, disk storage media such as CDs or DVDs, or mass storage devices typically based on hard disk drives (one or more) or solid-state drives (SSDs). Computer-readable storage media 1001 can be used to store data accessible via computer network 1002 (e.g., the Internet or a local area network (LAN)). Computer program 903 may also be provided as one or more pure computer programs or included in one or more files. One or more files may be stored on computer-readable storage medium 1001 and may be obtained, for example, by downloading (e.g., via computer network 1002 as shown), such as via a server. The server may be, for example, a web or file transfer protocol (FTP) server. For example, one or more files may be executable files for direct or indirect download to and execution on the device(s) to perform as described above, such as via the processed circuit system 904. One or more files may also be used, or alternatively, for intermediate download and compilation involving the same or another(s) processor(s) to make them executable prior to further download and execution, thereby enabling the device(s) 900 to perform as described above.

[0175] It should be noted that any of the aforementioned processing modules(s) and circuits(s) can be implemented as software and / or hardware modules, for example, in existing hardware and / or as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), etc. It should also be noted that any of the aforementioned hardware modules(s) and / or circuits(s) can be included, for example, in a single ASIC or FPGA, or distributed across several separate hardware components, whether individually packaged or assembled into a system-on-a-chip (SoC).

[0176] Those skilled in the art will also recognize that the modules and circuit systems discussed herein can refer to combinations of the following: hardware modules, software modules, analog and digital circuits, and / or one or more processors configured with software and / or firmware, for example, stored in memory, which, when executed by one or more processors, can configure (one or more) devices, (one or more) sensors, etc., to and / or perform the methods and actions described above.

[0177] The identification used in this document through any identifier can be implicit or explicit. Identifiers can be unique in a particular context, such as for a particular computer program or program provider.

[0178] As used herein, the term "memory" can refer to data storage devices used to store digital information, typically hard disks, magnetic storage devices, media, portable computer floppy disks or hard drives, flash memory, random access memory (RAM), etc. Additionally, memory can refer to the processor's internal register memory.

[0179] It should also be noted that any enumerated terms (such as first device, second device, first surface, second surface, etc.) should be considered non-restrictive, and such terms do not imply any hierarchical relationship. Rather, in the absence of any explicit information, enumerated naming should be considered merely a way of completing different names.

[0180] As used herein, the expression “configured to” can mean that the processing circuitry is configured or adapted to perform one or more of the actions described herein by means of software or hardware configuration.

[0181] As used herein, the term "numerical value" or "value" can refer to any kind of number, such as binary, real, imaginary, or rational numbers. Furthermore, a "numerical value" or "value" can be one or more characters, such as letters or a string of letters. Additionally, a "numerical value" or "value" can be represented by a bit string.

[0182] As used herein, the expressions “may” and “in some embodiments” are generally used to indicate that the described features can be combined with any other embodiments disclosed herein.

[0183] In the accompanying drawings, features that may only exist in some embodiments are typically drawn using dotted or dashed lines.

[0184] When using the words “comprise” or “comprising”, they should be interpreted as non-restrictive, meaning “consisting of at least…”.

[0185] The embodiments described herein are not limited to those described above. Various alternatives, modifications, and equivalents may be used. Therefore, the above embodiments should not be considered as limiting the scope of this disclosure as defined by the appended claims.

Claims

1. A method for determining information about the location of an intensity peak in a spatial-temporal volume, the spatial-temporal volume being formed by image frames generated by an image sensor by sensing light reflected from a measured object as part of an optical triangulation, wherein the optical triangulation is based on the movement of at least one light source and / or the measured object relative to each other, such that at different consecutive moments, different consecutive portions of the measured object are illuminated by the light source and reflected light from the measured object is sensed by the image sensor, thereby each image frame of the spatial-temporal volume is associated with a corresponding such moment and with a corresponding portion of the measured object from which the image sensor senses light at the corresponding moment, wherein the spatial-temporal volume is also associated with a spatial-temporal trajectory relating how feature points of the measured object are mapped to positions in the spatial-temporal volume, wherein the method comprises: - Obtain the location of the first hypothetical intensity peak in the space-time volume. - The first spatial-temporal analysis position is calculated based on a spatial-temporal analysis performed locally around the first hypothetical intensity peak position and along the first spatial-temporal trajectory, which is the spatial-temporal trajectory associated with the first hypothetical intensity peak position in the said spatial-temporal trajectory. - The information regarding the location of the intensity peak is determined based on the first assumed intensity peak location and the calculated first spatial-temporal analysis location. The determination of the information regarding the location of the intensity peak includes: - Calculate the first positional difference in the space-time volume between the first hypothesized intensity peak position and the calculated first space-time analysis position, and - If the calculated first position difference is lower than a certain threshold, then a first hypothetical intensity peak position is provided as the determined intensity peak position.

2. The method of claim 1, wherein the first assumed intensity peak location is in a pixel row of an image frame that is part of the spatial-temporal volume.

3. The method of claim 1, wherein the determination of the information regarding the location of the intensity peak further includes: If the calculated first position difference is higher than the specific threshold, then the following action will be performed at least once starting from n=2. a) Obtain another new, nth hypothetical intensity peak position along the (n-1)th spatial-temporal trajectory. The nth hypothetical intensity peak position is closer to the calculated (n-1)th spatial-temporal analysis position than the (n-1)th hypothetical intensity peak position. b) Calculate the nth spatial-temporal analysis location based on a spatial-temporal analysis performed locally around the nth hypothetical intensity peak location and along the nth spatial-temporal trajectory, which is the spatial-temporal trajectory associated with the nth hypothetical intensity peak location in the said spatial-temporal trajectory. c) Calculate the nth position difference in the space-time volume between the nth hypothetical intensity peak position and the calculated nth space-time analysis position. d) If the calculated nth position difference is lower than the specific threshold, then the nth hypothetical intensity peak position is provided as the determined intensity peak position, and e) If the calculated nth position difference is higher than the specific threshold, then perform action a)-e) again with n=n+1.

4. The method of claim 3, wherein action e) includes re-executing action a)-e) only when n is also lower than a predefined integer N>2.

5. The method of claim 4, wherein action e) further comprises: If n is greater than or equal to a predefined integer N, then the nth hypothetical intensity peak position is provided as the determined intensity peak position, and the nth hypothetical intensity peak position is associated with unreliability.

6. The method of claim 1, wherein the determination of information regarding the location of the intensity peak further comprises: - Provides the final calculated position difference as a reliability indicator of the determined intensity peak location.

7. The method of any one of claims 1-6, wherein the determination of the information regarding the location of the intensity peak comprises: - Provides a comparison between the first hypothetical intensity peak location and the calculated first spatial-temporal analysis location, serving as a reliability indicator of the first hypothetical intensity peak location as the intensity peak location.

8. A computer-readable storage medium comprising a computer program, said computer program including instructions which, when executed by one or more processors, cause one or more devices to perform the method according to any one of claims 1-7.

9. One or more devices for determining information about the location of an intensity peak in a spatial-temporal volume, said spatial-temporal volume being formed by an image sensor generating image frames by sensing light reflected from a measured object as part of an optical triangulation, said optical triangulation being based on the movement of at least one light source and / or the measured object relative to each other, such that at different consecutive moments, different consecutive portions of the measured object are illuminated by the light source and reflected light from the measured object is sensed by the image sensor, thereby associating a corresponding image frame of the spatial-temporal volume with the corresponding moment and with the corresponding portion of the measured object from which the image sensor senses light at the corresponding moment, said spatial-temporal volume also being associated with a spatial-temporal trajectory relating how feature points of the measured object are mapped to positions in the spatial-temporal volume, said one or more devices being configured to: The location of the first hypothetical intensity peak in the space-time volume is obtained. The first spatial-temporal analysis position is calculated based on a spatial-temporal analysis performed locally around the first hypothetical intensity peak position and along the first spatial-temporal trajectory, which is the spatial-temporal trajectory associated with the first hypothetical intensity peak position in the said spatial-temporal trajectory. The information regarding the location of the intensity peak is determined based on the first assumed location of the intensity peak and the calculated first spatial-temporal analysis location. The one or more devices configured to determine the information regarding the location of the intensity peak include: The one or more devices are configured to: Calculate the first positional difference in the space-time volume between the first hypothesized intensity peak position and the calculated first space-time analysis position, and If the calculated first position difference is lower than a certain threshold, then a first hypothetical intensity peak position is provided as the determined intensity peak position.

10. One or more devices as claimed in claim 9, wherein the first assumed intensity peak location is in a pixel row of an image frame that is part of the spatial-temporal volume.

11. The one or more devices of claim 9, wherein the one or more devices are configured to determine the information regarding the location of the intensity peak, further comprising: The one or more devices are configured to: If the calculated first position difference is higher than the specific threshold, then the following action will be performed at least once starting from n=2. a) Obtain another new, nth hypothetical intensity peak position along the (n-1)th spatial-temporal trajectory. The nth hypothetical intensity peak position is closer to the calculated (n-1)th spatial-temporal analysis position than the (n-1)th hypothetical intensity peak position. b) Calculate the nth spatial-temporal analysis location based on a spatial-temporal analysis performed locally around the nth hypothetical intensity peak location and along the nth spatial-temporal trajectory, which is the spatial-temporal trajectory associated with the nth hypothetical intensity peak location in the said spatial-temporal trajectory. c) Calculate the nth position difference in the space-time volume between the nth hypothetical intensity peak position and the calculated nth space-time analysis position. d) If the calculated nth position difference is lower than the specific threshold, then the nth hypothetical intensity peak position is provided as the determined intensity peak position, and e) If the calculated nth position difference is higher than the specified threshold, then execute a)-e) again with n=n+1.

12. The one or more devices as claimed in any one of claims 9-11, wherein the one or more devices are configured to determine the information regarding the location of the intensity peak, comprising: The one or more devices are configured to: A comparison is provided between the first hypothetical intensity peak location and the calculated first spatial-temporal analysis location, serving as a reliability indicator of the first hypothetical intensity peak location as the intensity peak location.

Citation Information

Patent Citations

  • Optical triangulation

    EP2063220B1