Next Article in Journal
FD2-YOLO: A Frequency-Domain Dual-Stream Network Based on YOLO for Crack Detection
Previous Article in Journal
The Human Voice as a Digital Health Solution Leveraging Artificial Intelligence
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Compensation of Speckle Noise in 2D Images from Triangulation Laser Profile Sensors Using Local Column Median Vectors with an Application in a Quality Control System

1
AGH University of Krakow, 30-059 Krakow, Poland
2
CBRTP S.A. (Centrum Badań i Rozwoju Technologii dla Przemysłu S.A.), 00-645 Warszawa, Poland
*
Author to whom correspondence should be addressed.
Sensors 2025, 25(11), 3426; https://doi.org/10.3390/s25113426
Submission received: 4 April 2025 / Revised: 26 May 2025 / Accepted: 27 May 2025 / Published: 29 May 2025
(This article belongs to the Section Sensing and Imaging)

Abstract

:
The main function of triangulation-based laser profile sensors—also referred to as laser profilometers or profilers—is the three-dimensional scanning of moving objects using laser triangulation. In addition to capturing 3D data, these profilometers simultaneously generate grayscale images of the scanned objects. However, the quality of these images is often degraded due to interference of the laser light, manifesting as speckle noise. In profilometer images, this noise typically appears as vertical stripes. Unlike the column fixed pattern noise commonly observed in TDI CMOS cameras, the positions of these stripes are not stationary. Consequently, conventional algorithms for removing fixed pattern noise yield unsatisfactory results when applied to profilometer images. In this article, we propose an effective method for suppressing speckle noise in profilometer images of flat surfaces, based on local column median vectors. The method was evaluated across a variety of surface types and compared against existing approaches using several metrics, including the standard deviation of the column mean vector (SDCMV), frequency spectrum analysis, and standard image quality assessment measures. Our results demonstrate a substantial improvement in reducing column speckle noise: the SDCMV value achieved with our method is 2.5 to 5 times lower than that obtained using global column median values, and the root mean square (RMS) of the frequency spectrum in the noise-relevant region is reduced by nearly an order of magnitude. General image quality metrics also indicate moderate enhancement: peak signal-to-noise ratio (PSNR) increased by 2.12 dB, and the structural similarity index (SSIM) improved from 0.929 to 0.953. The primary limitation of the proposed method is its applicability only to flat surfaces. Nonetheless, we successfully implemented it in an optical inspection system for the furniture industry, where the post-processed image quality was sufficient to detect surface defects as small as 0.1 mm.

1. Introduction

The triangulation laser profile sensor—also known as a laser profilometer [1], laser profiler, or line laser sensor—is a device designed for non-contact 3D scanning of moving surfaces [2,3]. It operates based on the principle of laser triangulation to determine the distance to an object. The working principle is illustrated in Figure 1. A laser beam is shaped into a line using a system of cylindrical lenses. This line is projected onto the object’s surface, and the reflected light is captured by a high-resolution CMOS camera integrated into the profilometer. The position of the reflected laser line on the camera’s sensor enables the calculation of the angle between the projected and reflected beams. This, in turn, allows for the precise determination of the distance from the sensor to each illuminated point on the object’s surface. As the object moves along a conveyor belt in a direction perpendicular to the laser line, a complete surface scan is progressively acquired. This enables the reconstruction of the 3D coordinates for each point on the scanned surface.
Such scans can be used to assess surface properties such as waviness and roughness [4], as well as to detect surface defects [5]. Additionally, they enable the construction of a 3D model of the object, particularly when multiple profilometers are used simultaneously. However, this technique has some limitations. It requires that the scanned surfaces are non-specular, as mirror-like reflections can prevent the sensor from detecting the reflected laser beam. Furthermore, the geometric features of the measured objects may cause occlusions of the laser line, restricting the completeness of the scan. These limitations can be mitigated by employing multiple profilometers positioned at different angles. Our laboratory system is an example of this approach, where a set of profilometers is used to construct a 3D model of one side of an object as part of an optical quality control system, as shown in Figure 2.
While three-dimensional imaging provides precise information about an object’s geometry, many types of surface defects can be effectively detected using two-dimensional (2D) images. In fact, most defect detection methods developed over recent decades rely primarily on 2D data [6]. As a result, many optical inspection systems based on 3D scanning also include analysis of 2D luminance images of the surface. For example, quality control of furniture boards typically involves both 3D inspection to identify shape defects and 2D image analysis to assess visual surface quality.
These two inspection tasks can be performed at separate stations—one using a profilometer for 3D scanning and the other using a conventional camera for image capture [7]. However, since a CMOS sensor is already integrated into the profilometer, many devices are capable of simultaneously acquiring grayscale images of the moving surface during 3D scanning. This opens the possibility of consolidating both inspection functions into a single unit.
The main limitation preventing the use of the profilometer as both a 3D scanner and a grayscale imaging device is the relatively low quality of the luminance images it captures. This degradation is mainly due to the inherent properties of laser light. In profilometers, the laser beam is expanded along the X-axis to form a line. Although the light waves across the X-axis share the same frequency, they exhibit varying phases. This spatial phase variation leads to interference effects, resulting in a random pattern of brightness fluctuations known as speckle noise.
Speckle noise is a well-known phenomenon that poses a significant limitation across various imaging methods, including optical coherence tomography (OCT), synthetic aperture radar (SAR), and ultrasound imaging. Numerous hardware and software-based approaches have been proposed for its mitigation; a comprehensive overview is provided in [8]. In recent years, machine learning techniques have gained prominence in this domain. Examples include the application of convolutional neural networks [9], reinforcement learning for SAR image denoising [10], and denoising diffusion probabilistic models for despeckling OCT images [11]. Nevertheless, classical signal processing methods remain viable alternatives. For instance, in [12], discrete wavelet transform-based algorithms were used for ultrasound image denoising, while [13] introduced an adaptive fuzzy filtering method for speckle reduction in SAR imagery.
Substantial research efforts have also focused on enhancing image quality from widely available imaging devices, such as smartphones and DSLR cameras. Particularly active progress has been observed in machine learning-based methods for denoising consumer-grade images, addressing issues such as low-light noise, Gaussian noise, and compression artifacts, as demonstrated in recent works [14,15].
However, direct comparisons between these approaches and those designed for profilometer image denoising are not appropriate due to fundamental differences in both noise characteristics and application requirements. Profilometer images are affected by structured, directionally correlated noise patterns—most notably, column-like speckle noise resulting from laser light interference. Unlike the statistically independent noise typically modeled in consumer imaging, or in techniques such as OCT, SAR, and ultrasound, speckle noise in profilometer images exhibits strong spatial dependencies.
Moreover, the performance metrics and visual quality criteria commonly used in general photography and medical imaging may not align with the demands of industrial inspection. In such contexts, even submillimeter deviations in surface representation can be critical for accurate defect detection. Therefore, specialized denoising techniques and evaluation methods are required to address the unique challenges posed by profilometer image processing.
In intensity images captured by profilometers, speckle noise exhibits a characteristic pattern, typically appearing as vertical stripes (Figure 3). This occurs because the grayscale image acquired alongside the 3D scan is constructed line-by-line, in a manner analogous to that of a line-scan camera. As a result, the noise resembles column fixed pattern noise (CFPN) observed in CMOS frame cameras [16,17,18] and is even more visible in time-delay integration (TDI) line-scan CMOS cameras [19].
However, the column speckle noise (CSN) observed in profilometer images differs from conventional CFPN in several important ways. CSN is generally stronger and more variable: the position of the noise-induced stripes is not fixed across the sensor but varies significantly with the distance between the sensor and the object. Furthermore, even when scanning a flat surface, the stripe positions exhibit slight vertical shifts between the top and bottom of the image.
Due to these properties, many existing CFPN reduction techniques—such as guided filtering [20], horizontal differential statistics [21], one-dimensional least squares filtering [22], moment matching [23], and inter-column difference minimization [24]—are not well suited to address the structured, distance-dependent CSN present in profilometer images.
In this article, we propose a method for removing column speckle noise (CSN) from intensity images captured by a profilometer. The method exclusively processes grayscale intensity data, where speckle noise makes it necessary to use a camera in the quality control system in addition to laser profilometers. Our algorithm is specifically designed for flat surfaces, where the speckle noise appears as vertical striping. The approach can also be applied to images of slightly non-planar objects, provided that surface slopes remain moderate, the example is provided at the end of Section 2. However, for objects with complex geometries and steep surfaces, where interference patterns deviate significantly from the vertical direction, the method’s effectiveness is substantially reduced.
The intended application domain includes optical quality control systems, particularly for flat products such as metal sheets or furniture boards transported on conveyor belts. In these contexts, the proposed method enables the use of a single profilometer to simultaneously inspect both geometric features (e.g., surface thickness, bumps, and holes) and visual anomalies (e.g., stains and smudges), within a single scanning pass.

2. Materials and Methods

In this section, we present the proposed method for removing column noise from luminance images captured by a profilometer. In the initial version of the algorithm, the correction was performed by subtracting, from each pixel, the difference between the median value of its corresponding column and the global median value of the entire image:
a ( r , c ) = a ( r , c ) median i = 1 ,     . . , R   a ( i , c ) + median i = 1 ,     . . , R , j = 1 ,     . . , C   a ( i , j ) ,
where a(r, c) is the grayscale level of pixel with coordinates (r, c), R is the number of rows, and C is the number of columns of the image.
This correction is conceptually similar to the method proposed in [19], with the key difference being the use of the median instead of the mean. The choice of the median is motivated by the requirements of the target application—namely, the detection of small surface anomalies such as blobs—where preserving sharpness is critical. Using the mean could introduce blurring artifacts, potentially reducing the effectiveness of the visual inspection system.
The result of the column noise correction applied to the image from Figure 3 is shown in Figure 4.
It can be observed that some residual noise remains after the initial correction. This is due to the fundamental difference between column speckle noise (CSN) in profilometer grayscale images and column fixed pattern noise (CFPN) typically encountered in line-scan cameras. In images captured with TDI CMOS sensors, CFPN arises from inherent sensor characteristics, resulting in fixed vertical striping patterns that are consistent across all image rows.
In contrast, CSN in profilometer images originates from laser light interference, and the position of the interference-induced stripes varies with the distance between the profilometer and the object surface. Even small variations in this distance can cause the interference pattern to float, resulting in strip positions that gradually shift from the top to the bottom of the image. Consequently, the noise artifacts are not perfectly aligned along vertical columns.
To address this, we refined our algorithm to perform noise compensation locally. In the improved version, the correction is applied based on both column and row indices, allowing for adaptive adjustment across the image:
a ( r , c ) = a ( r , c ) median i = R 1 ,     . . , R 2   a ( i , c ) + median i = 1 ,     . . , R , j = 1 ,     . . , C   a ( i , j ) ,
where a(r, c) is the grayscale level of pixel with coordinates (r, c), R is the number of rows, C is the number of columns of the image, R1 = max{1, r-ε}, R2 = min{R, r-ε}, and ε is half of the size of the moving window; for our experiments, we assigned ε = 100.
From an image processing perspective, the output image computed using Equation (2) represents the difference between the original image and its median-filtered version, where the filter uses a vertical mask of size (2ε + 1) × 1. This operation is conceptually related to morphological transformations: analogous operations using minimum and maximum filters are known as white-hat and black-hat transforms, which are commonly used to detect bright or dark features, respectively, that are smaller than the structuring element. These transformations suppress larger features, and similarly, our approach effectively removes grayscale variations that span vertically over a range equal to or greater than (2ε + 1) pixels.
The result of the CSN correction applied to the image from Figure 3 is shown in Figure 5. As can be observed, no residual traces of column fixed pattern noise remain in the corrected image.
Figure 6 presents an example illustrating the performance of the proposed algorithm on an image of a 3D object containing surface details. Surface inclination does not exceed 15 degrees. The column fixed pattern noise (CFPN) has been effectively removed, along with large-scale luminance variations such as the brightness differences between the object, its shadow, and the background in the top-left region of the image. Importantly, small, isolated features, such as those marked by arrows, are preserved in the output. These features may correspond to surface defects and are critical for detection in optical quality control systems. Particularly, such elements become even more prominent after processing, enhancing the system’s sensitivity to fine anomalies.
A quantitative evaluation of the proposed algorithm is provided in Section 3.

3. Results

The performance of the proposed method was evaluated in the context of its target application. To this end, experiments were conducted using flat, homogeneous surfaces scanned with a Keyence LJ-X8400 laser profilometer (Keyence, Osaka, Japan). The evaluation comprises three parts. First, we assess the effectiveness of CSN suppression on flat surfaces using four quantitative metrics. Second, we evaluate the algorithm’s ability to preserve small image details by applying it to a profilometer scan of a flat surface containing artificially introduced blobs of varying sizes. Finally, we demonstrate the integration of the method into a prototype optical quality control system developed for the furniture industry.

3.1. The Quality of CFPN Removal for Flat Homogeneous Images

In the following four subsections, we evaluate the effectiveness of column fixed pattern noise (CFPN) removal using five quantitative measures. The first three metrics are specifically designed to assess the reduction of column noise:
  • Standard Deviation of the Column Mean Vector (SDCMV), as introduced in [19];
  • RMS1, defined by Equation (3) and proposed in this paper;
  • RMS2, defined by Equation (4) and also proposed in this paper.
The remaining two metrics are widely used in image quality assessment, particularly for evaluating the fidelity of compressed images relative to a reference:
  • Peak signal-to-noise ratio (PSNR);
  • Structural Similarity Index Measure (SSIM).
These complementary measures enable a comprehensive analysis of both noise suppression and the preservation of image details.

3.1.1. Standard Deviation of Column Mean Vector

To assess the quality of CSN removal in images of homogeneous surfaces, we used the standard deviation of the column mean vector (SDCMV), as proposed in [19]. This metric quantifies the variation in average intensity across image columns and is particularly effective for evaluating the presence of column noise. The SDCMV values obtained for various objects scanned by the profilometer, using different denoising methods, are summarized in Table 1.
The SDCMV value achieved by our method is 2.5 to 4 times lower than that obtained using the state-of-the-art correction method based on global column mean values, and 2.5 to 5 times lower than when using global column median values. While mean-based correction produces a slightly lower SDCMV compared to median-based correction, it also tends to distort small image elements, features that are critical for flaw detection. In contrast, our approach preserves these fine details while significantly reducing column noise, making it more suitable for high-precision visual inspection tasks.

3.1.2. Fourier Transform

A natural approach to assess the strength and directional characteristics of image interference is through the two-dimensional Fourier transform. For an image of a uniform surface without texture or defects, the Fourier transform should ideally be constant and equal to zero across all frequencies. Non-zero values in the transform indicate irregularities in the image, which, in this context, correspond to noise.
Figure 7 presents the magnitude spectra of the Fourier transform for the original image of an HDF board and for images denoised using three different methods. In the original image and the images processed using global column mean and column median vector methods, frequency components corresponding to vertical interference fringes are clearly visible. In Figure 7b,c, although horizontal frequencies are attenuated, image elements with even small but non-zero vertical frequency components (Fy) remain visible, as highlighted in the zoomed region of Figure 7b. The introduction of local compensation in our proposed method enables the removal of column noise that is not perfectly vertical but contains slight vertical frequency components, as demonstrated in Figure 7d.
Figure 8 presents cross-sections (f) of the Fourier spectrum at Fy = 0. It is important to note that the Y-axis scale for the original image is ten times larger than that of the three denoised images.
The root mean square of f can be used as a quantitative measure of the noise intensity along the horizontal direction:
RMS 1 = mean i ( f i 2 ) ,
Values of RMS1 for different methods and various materials are presented in Table 2.
RMS1 is specifically designed to quantify the effectiveness of removing perfectly vertical strip noise, where the frequency component along the Y- axis is zero. The strength of our method lies in its ability to effectively suppress speckle noise even when the interference strips are slightly tilted. Analysis of sample images acquired with a laser profilometer in the Fourier domain enabled us to define the region in the (Fx,Fy) frequency space that corresponds to speckle noise, as illustrated in Figure 9.
Based on this observation, we have developed a measure specifically aimed at assessing the effectiveness of removing column speckle noise from laser profilers:
RMS 2 = mean x , y : y < 0.05 x ( F x , y 2 ) ,
Values of RMS2 are presented in Table 3.

3.1.3. PSNR and SSIM

The peak signal-to-noise ratio (PSNR) is a widely used metric for assessing image quality after compression or denoising. For an original image A and its noisy approximation B, PSNR is defined as:
PSNR ( A , B ) = 10   l o g 10 m a x ( A ) M S E ( A , B ) ,
where MSE(A,B) is a mean square error:
MSE ( A , B ) = 1 M N i = 1 M j = 1 N A i , j B i , j 2 .
PSNR (peak signal-to-noise ratio) cannot be directly applied to our case, as it requires a reference image—typically the original, uncompressed image—to assess the quality of the compressed version based on their similarity (see Figure 10a). However, in our scenario, the original image is already corrupted by speckle noise, and the algorithm aims to remove this noise. Therefore, a true reference image is not available for comparison.
To adapt PSNR for our method, we propose the scheme illustrated in Figure 10b, where a reference image is generated by applying a large-scale low-pass filter to the original image. This filtering process removes the speckle noise, and the resulting output represents the underlying grayscale level of the input image.
This assessment method is valid only for images of homogeneous surfaces, as our algorithm is specifically designed to remove column noise while preserving other image details.
We used 100 × 100 median filter window. Table 4 presents PSNR for different types of surfaces.
Another commonly used metric for assessing image quality is the Structural Similarity Index Measure (SSIM), introduced in [25]. Like PSNR, SSIM is intended to evaluate the difference between an original and a compressed image. Therefore, we adopted the same approach for generating the reference image as shown in Figure 10b.
SSIM produces a value between −1 and 1, where 1 indicates perfect structural similarity, 0 indicates no similarity, and values below 0 suggest negative correlation. The SSIM values obtained in our experiments are presented in Table 5.

3.1.4. Comparison of Measures

Table 6 presents a comparison of metrics averaged across various surface types for three CFPN denoising methods: (a) a state-of-the-art correction using column mean values, (b) correction using column median values, and (c) correction using local median values. The most significant performance improvement is observed in RMS2, a measure specifically designed to quantify this type of noise based on the spectral characteristics of profilometer images. The RMS2 value for the proposed method (c) is over eight times lower than those for methods (a) and (b). SDCMV (as proposed in [19]) and RMS1 are also intended to measure column noise; however, unlike RMS2, they are not tailored to the specific frequency profile of profilometer noise. For the proposed method, RMS1 is reduced by 34% compared to method (a), and SDCMV is nearly three times lower.
The other two metrics, PSNR and SSIM, are general indicators of image quality and are not specifically designed to assess column noise. PSNR, expressed in decibels, increases with similarity and approaches infinity for identical images. The proposed method improves PSNR by 2.12 dB compared to method (a), which is a notable enhancement. SSIM for the proposed method is 0.953, compared to 0.929 for method (a). Since SSIM values range from −1 to 1, with 1 indicating perfect similarity, it is more meaningful to consider how closely the result approaches 1 rather than comparing ratios. From this perspective, the improvement is substantial.
Visual comparison of the results is presented in Figure 11.

3.1.5. Sensitivity to Parameter ε

In this chapter, we examine how the performance of our algorithm varies with the parameter ε, which represents half of the window size and defines R1 and R2 in Equation (2). The analysis uses the RMS2 measure, specifically designed to assess the effectiveness of removing column speckle noise from laser profiler images. The results are shown in Figure 12.
Noise removal is most effective at small values of ε. When ε = 0, the output image becomes homogeneous, with all pixel values equal to the median of the input image, resulting in an RMS2 value of zero. Although this completely eliminates column noise, it also removes all image details. The RMS2 value increases monotonically as ε grows. The increase is rapid between 0 and 15, then slows considerably between 20 and 100, after which it steepens again for larger ε values.
The choice of ε involves a trade-off between the effectiveness of speckle noise removal and preserving potentially relevant image details for subsequent analysis. Details with a horizontal span smaller than ε will be preserved, while larger features may be removed according to Equation (2). We set ε = 100 to ensure that all irregularities in the image, which could represent potential flaws, are accurately detected.

3.2. Preserving Relevant Details of the Image

To verify the ability of the method to preserve the details of the image, we prepared a test image printed on an aluminum board (Dibond), see Figure 13. The test image consists of circles with diameters of 0.5, 0.4, 0.3, 0.2, and 0.1 mm.
To illustrate the size of the dots relative to the interference strips, two areas marked with dashed squares in Figure 13 are shown in Figure 14. Each area contains a 0.1 mm dot at the center, which should remain unaffected by the speckle noise removal algorithm and subsequently be automatically detected.
Figure 13 served as the input for our algorithm. After removing the interference fringes, the processed image was used as input for an optical surface defect detection system. Defects appear as small regions with luminance differing from the surrounding surface. The flaw detection algorithm relies on a series of simple morphological operations, which we do not describe here as they fall outside the scope of this paper. The results are shown in Figure 15. The interference fringes were successfully removed, while details such as small dots—down to 0.1 mm in size—remained unaffected and were all correctly detected.
Original images and the results of the experiments presented in this chapter are available as graphic files in the Supplementary Materials.

3.3. Application of the Proposed Method for the Detection of Blobs in the Optical Inspection System

We applied the proposed method in a prototype optical quality control system for the furniture industry, where the inspected items include laminated fiberboards and other furniture components. The optical inspection covers both the geometry of the boards and any surface irregularities reflected in grayscale variations. The system employs a Keyence LJ-X8400 laser profilometer to monitor the geometry of each inspected element. Our goal was also to use this device to detect visual surface flaws, identified as local changes in grayscale intensity.
The elements move along a conveyor belt, with their position tracked by an incremental encoder providing a resolution of 2.1 μm. The profilometer is mounted on a robotic arm to enhance system flexibility, allowing adjustment of the trade-off between field of view and measurement accuracy during operation. Figure 16 shows the laboratory setup with a fiberboard ready for scanning.
Along with the 3D scan in the form of a point cloud, the profilometer also captured an image of the board. This image is significantly affected by column speckle noise, as illustrated in Figure 17.
The image shown in Figure 18 was used as input for the system designed for optical detection of surface defects, which appear as small areas with luminance differing from the surrounding surface. The flaw detection algorithm is based on a series of simple morphological operations; however, its detailed description is not included here, as it falls outside the scope of this paper. Figure 19 presents the result of the automatic detection of surface flaws in the board image from Figure 13, following the application of the proposed method for removing interference fringes.
The algorithm’s processing time is low enough to be integrated into a quality control system without negatively affecting overall throughput. Without parallel computing, the processing time is proportional to the number of pixels in the input image. The largest images captured by the profilometer had a resolution of 3018 × 2353 pixels, and the processing time for such images on a standard PC was 0.37 s. This allows the algorithm to operate in real time with a significant margin, given a scanning speed of 20 cm/s and a total scan duration of 2 s per element. Since the primary computational load arises from a form of median filtering, the algorithm is well-suited for parallelization. In scenarios requiring faster processing, it can be implemented on GPU or FPGA hardware.

4. Discussion

In this article, we proposed a method for removing column speckle noise (CSN) from 2D images acquired by laser profilometers. These images are captured simultaneously with the primary data—three-dimensional point clouds—during a single scan. However, they are often affected by strong column noise caused by optical interference. Unlike column noise in CMOS TDI cameras, where vertical strip positions are fixed, in profilometer images the strip positions vary depending on the distance to the scanned surface. Consequently, no standard method currently exists for effectively removing speckle noise in profilometer 2D imagery, and manufacturers typically do not offer any built-in tools to improve image quality. As a result, the 2D imaging capability of profilometers is rarely used, and system designers often choose to add separate cameras for visual inspection.
Our target application involves flat surfaces, where horizontal variation of speckle noise is minimal. This allows for column-wise compensation. However, even minor positional shifts of the interference patterns make it impractical to directly apply conventional column fixed pattern noise (CFPN) correction methods developed for TDI CMOS sensors.
To address this, we proposed a localized speckle noise reduction algorithm. It compensates for the interference by subtracting from each pixel the median grayscale value of its column, computed within a local vertical window around the pixel. This is further adjusted by the global median of the entire image.
The method is specifically tailored for flat, homogeneous surfaces, although it can also be applied to 3D objects with limited depth variation. In addition to removing speckle noise, the algorithm effectively suppresses large-scale grayscale gradients, producing a differential-like output image. Therefore, it should not be considered a general-purpose denoising tool. However, small-scale variations—such as those indicating surface flaws—are preserved, making the method highly suitable for optical quality control tasks.
The primary application is in the furniture industry, where the method has been successfully integrated into a fiberboard flaw detection system. Importantly, the same laser profilometer is used simultaneously for both 3D and 2D inspection tasks.
Future developments could include adapting the proposed method for denoising images of 3D objects with steep or complex surfaces. In such cases, the direction of interference strips is no longer strictly vertical but varies depending on surface geometry. To address this, the algorithm could be extended to follow the direction of the strips dynamically, adjusting the orientation of the moving window accordingly.
Another promising direction for future work is the development of an alternative denoising approach based on deep neural networks. A major challenge here is the lack of suitable training data: while profilometer-acquired images affected by column speckle noise can serve as input, corresponding clean ground truth images are typically unavailable. One potential solution is to use high-quality images taken with standard cameras as clean references and synthetically add column speckle noise to create paired training samples. Alternatively, unsupervised learning techniques could be explored, leveraging the known spectral characteristics of CSN to guide the training process without requiring explicit ground truth.

Supplementary Materials

The following supporting information can be downloaded at: https://www.mdpi.com/article/10.3390/s25113426/s1, Original images from laser profilometers and the output images from noise correction algorithms compared in the article, for various materials.

Author Contributions

P.R.: Conceptualization, Methodology, Software, Investigation, Writing—Original Draft, Supervision. D.K.: Conceptualization, Methodology, Investigation, Validation, Resources, Writing—Review and Editing. M.K.: Methodology, Investigation, Resources, Writing—Review and Editing. M.R.: Methodology, Investigation, Resources, Writing—Review and Editing. G.P.: Conceptualization, Project Administration, Funding Acquisition. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Polish Agency for Enterprise Development (PARP), grant number FENG.01.01-IP.02-2927/23, and by the Polish Ministry of Science and Higher Education from research subsidy 16.16.120.773.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article and Supplementary Materials.

Acknowledgments

The authors would like to thank the CBRTP team of researchers and engineers for their cooperation during construction of the prototype.

Conflicts of Interest

Author Grzegorz Putynkowski was employed by the company CBRTP S.A. The remaining authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

References

  1. Tang, Y.; Luo, W.; Wang, Q.; Li, J.; Cheng, L.; Li, J.; Ke, Y. A novel hand-eye semi-automatic calibration process for laser profilometers using machine learning. Measurement 2023, 216, 112936. [Google Scholar] [CrossRef]
  2. Li, M.; Du, Z.; Ma, X.; Dong, W.; Gao, Y. A robot hand-eye calibration method of line laser sensor based on 3D reconstruction. Robot. Comput.-Integr. Manuf. 2021, 71, 102136. [Google Scholar] [CrossRef]
  3. Xu, J.; Hoo, J.L.; Dritsas, S.; Fernandez, J.G. Hand-eye calibration for 2D laser profile scanners using straight edges of common objects. Robot. Comput.-Integr. Manuf. 2022, 73, 102221. [Google Scholar] [CrossRef]
  4. Ruzbarsky, J. Roughness Control of Surfaces Using a Laser Profilometer with the Selected Material Cutting Technology. Materials 2023, 16, 4109. [Google Scholar] [CrossRef] [PubMed]
  5. Wu, C.; Chen, B.; Ye, C. Detecting defects on corrugated plate surfaces using a differential laser triangulation method. Opt. Lasers Eng. 2020, 129, 106064. [Google Scholar] [CrossRef]
  6. Ren, Z.; Fang, F.; Yan, N.; Wu, Y. State of the Art in Defect Detection Based on Machine Vision. Int. J. Precis. Eng. Manuf.-Green Technol. 2021, 9, 661–691. [Google Scholar] [CrossRef]
  7. Rotter, P.; Klemiato, M.; Knapik, D.; Rosół, M.; Putynkowski, G. Inclusion Detection in Injection-Molded Parts with the Use of Edge Masking. Sensors 2024, 24, 7150. [Google Scholar] [CrossRef] [PubMed]
  8. Kompanets, I.; Zalyapin, N. Methods and Devices of Speckle-Noise Suppression (Review). Opt. Photonics J. 2020, 10, 219–250. [Google Scholar] [CrossRef]
  9. Lattari, F.; Gonzalez Leon, B.; Asaro, F.; Rucci, A.; Prati, C.; Matteucci, M. Deep Learning for SAR Image Despeckling. Remote Sens. 2019, 11, 1532. [Google Scholar] [CrossRef]
  10. Goyal, S.; Menon, N.C.; Anbarasu, B. Image Despeckling For Synthetic Aperture Radar Using Reinforcement Learning. In Proceedings of the 2024 International Conference on Advances in Data Engineering and Intelligent Computing Systems (ADICS), Chennai, India, 18–19 April 2024. [Google Scholar]
  11. Hu, D.; Tao, Y.K.; Oguz, I. Unsupervised Denoising of Retinal OCT with Diffusion Probabilistic Model. In Medical Imaging 2022: Image Processing; SPIE: Bellingham, WA, USA, 2022. [Google Scholar]
  12. Choi, H.H.; Lee, J.H.; Kim, S.M.; Park, S.Y. Speckle noise reduction in ultrasound images using a discrete wavelet transform-based image fusion technique. Bio-Med. Mater. Eng. 2015, 26, S1587–S1597. [Google Scholar] [CrossRef] [PubMed]
  13. Kushwaha, S. An effective adaptive fuzzy filter for speckle noise reduction. Multimed. Tools Appl. 2024, 83, 34963–34978. [Google Scholar] [CrossRef]
  14. Reyhaneh, N.; Yavartanoo, M.; Son, S.; Lee, K.M. Cvf-sid: Cyclic multi-variate function for self-supervised image denoising by disentangling noise from image. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, New Orleans, LA, USA, 19–24 June 2022; pp. 17583–17591. [Google Scholar]
  15. Boucherit, I.; Kheddar, H. Reinforced Residual Encoder–Decoder Network for Image Denoising via Deeper Encoding and Balanced Skip Connections. Big Data Cogn. Comput. 2025, 9, 82. [Google Scholar] [CrossRef]
  16. Otim, S.O. Simplified Fixed Pattern Noise Correction & Image Display for High Dynamic Range CMOS Logarithmic Imagers. Ph. D. Thesis, University of Oxford, Oxford, UK, 2007. [Google Scholar]
  17. Jang, H.; Kim, T.G.; Park, S.E.; Hwang, J. Column Fixed Pattern Noise Suppression with STI profile control in 1.75 um Pixel CMOS Image Sensor. In Proceedings of the International Image Sensor Workshop 2009, Bergen, Norway, 26–28 June 2009. [Google Scholar]
  18. Konnik, M.; Welsh, J. High-level numerical simulations of noise in CCD and CMOS photosensors: Review and tutorial. arXiv 2014, arXiv:1412.4031. [Google Scholar]
  19. Liu, Z.; Xu, J.; Wang, X.; Nie, K.; Jin, W. A Fixed-Pattern Noise Correction Method Based on Gray Value Compensation for TDI CMOS Image Sensor. Sensors 2015, 15, 23496–23513. [Google Scholar] [CrossRef] [PubMed]
  20. Cao, Y.; Yang, M.Y.; Tisse, C.-L. Effective strip noise removal for low-textured infrared images based on 1-D guided filtering. IEEE Trans. Circuits Syst. Video Technol. 2016, 26, 2176–2188. [Google Scholar] [CrossRef]
  21. Cao, Y.; He, Z.; Yang, J.; Cao, Y.; Yang, M.Y. Spatially Adaptive Column Fixed-Pattern Noise Correction in Infrared Imaging System Using 1D Horizontal Differential Statistics. IEEE Photonics J. 2017, 9, 7803513. [Google Scholar] [CrossRef]
  22. Li, F.; Zhao, Y.; Xiang, W. Single-frame-based column fixed-pattern noise correction in an uncooled infrared imaging system based on weighted least squares. Appl. Opt. 2019, 58, 9141–9153. [Google Scholar] [CrossRef] [PubMed]
  23. Xu, J.; Nie, H.; Nie, K.; Jin, W. Fixed-pattern noise correction method based on improved moment matching for a TDI CMOS image sensor. J. Opt. Soc. Am. A 2017, 34, 1500–1510. [Google Scholar] [CrossRef] [PubMed]
  24. Wang, S.-P. Stripe noise removal for infrared image by minimizing difference between columns. Infrared Phys. Technol. 2016, 77, 58–64. [Google Scholar] [CrossRef]
  25. Wang, Z.; Bovik, A.C.; Sheikh, H.R.; Simoncelli, E.P. Image quality assessment: From error visibility to structural similarity. IEEE Trans. Image Process. 2004, 13, 600–612. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Working principle of a laser profilometer.
Figure 1. Working principle of a laser profilometer.
Sensors 25 03426 g001
Figure 2. Set of four profilometers in our laboratory stand for 3D object scanning.
Figure 2. Set of four profilometers in our laboratory stand for 3D object scanning.
Sensors 25 03426 g002
Figure 3. Image of a flat homogeneous surface captured by profilometer.
Figure 3. Image of a flat homogeneous surface captured by profilometer.
Sensors 25 03426 g003
Figure 4. Result of CFPN correction using column median values.
Figure 4. Result of CFPN correction using column median values.
Sensors 25 03426 g004
Figure 5. Result of local CFPN correction.
Figure 5. Result of local CFPN correction.
Sensors 25 03426 g005
Figure 6. An example of algorithm performance on a 3D object image. White arrows indicate small, isolated features that can be identified as inclusions.
Figure 6. An example of algorithm performance on a 3D object image. White arrows indicate small, isolated features that can be identified as inclusions.
Sensors 25 03426 g006
Figure 7. Magnitude of Fourier transform of HDF board image: (a) original image taken with profile sensor, (b) image after CFPN correction using column mean values, (c) image after CFPN correction using column median values, (d) image after CFPN correction using local median values.
Figure 7. Magnitude of Fourier transform of HDF board image: (a) original image taken with profile sensor, (b) image after CFPN correction using column mean values, (c) image after CFPN correction using column median values, (d) image after CFPN correction using local median values.
Sensors 25 03426 g007
Figure 8. Cross-sections f of Fourier spectrum for Fy = 0 for different correction methods. Note different scale for original image.
Figure 8. Cross-sections f of Fourier spectrum for Fy = 0 for different correction methods. Note different scale for original image.
Sensors 25 03426 g008
Figure 9. Spectrum of speckle noise. Yellow lines indicate area considered in RMS2 coefficient.
Figure 9. Spectrum of speckle noise. Yellow lines indicate area considered in RMS2 coefficient.
Sensors 25 03426 g009
Figure 10. Standard use of PSNR (a) and its adaptation to our method (b).
Figure 10. Standard use of PSNR (a) and its adaptation to our method (b).
Sensors 25 03426 g010
Figure 11. Visual comparison of methods: (a) original image, (b) CFPN correction using column mean values, (c) CFPN correction using column median values, (d) CFPN correction using local median values.
Figure 11. Visual comparison of methods: (a) original image, (b) CFPN correction using column mean values, (c) CFPN correction using column median values, (d) CFPN correction using local median values.
Sensors 25 03426 g011
Figure 12. Sensitivity of measure RMS2 to parameter ε.
Figure 12. Sensitivity of measure RMS2 to parameter ε.
Sensors 25 03426 g012
Figure 13. Image of test surface from a Keyence LJ-X8400 laser profilometer. Areas marked with dashed rectangles are shown in Figure 14, zoomed in.
Figure 13. Image of test surface from a Keyence LJ-X8400 laser profilometer. Areas marked with dashed rectangles are shown in Figure 14, zoomed in.
Sensors 25 03426 g013
Figure 14. Zooming of two selected areas from Figure 13 with a 0.1 mm dot in the middle.
Figure 14. Zooming of two selected areas from Figure 13 with a 0.1 mm dot in the middle.
Sensors 25 03426 g014
Figure 15. Automatic detection of surface flaws in image from Figure 13 after removing interference fringes.
Figure 15. Automatic detection of surface flaws in image from Figure 13 after removing interference fringes.
Sensors 25 03426 g015
Figure 16. Laboratory stand for simultaneous control of geometrical and visual defects of flat surfaces. A fiberboard is prepared on the conveyor belt for scanning.
Figure 16. Laboratory stand for simultaneous control of geometrical and visual defects of flat surfaces. A fiberboard is prepared on the conveyor belt for scanning.
Sensors 25 03426 g016
Figure 17. A photo of fiberboard taken by profilometer, affected by speckle noise.
Figure 17. A photo of fiberboard taken by profilometer, affected by speckle noise.
Sensors 25 03426 g017
Figure 18. Result of our denosing algorithm for photo in Figure 17.
Figure 18. Result of our denosing algorithm for photo in Figure 17.
Sensors 25 03426 g018
Figure 19. Visual flaws detected in fiberboard photo taken by profilometer.
Figure 19. Visual flaws detected in fiberboard photo taken by profilometer.
Sensors 25 03426 g019
Table 1. Standard deviation of column mean vector (SDCMV) for different surfaces and different correction methods.
Table 1. Standard deviation of column mean vector (SDCMV) for different surfaces and different correction methods.
Original ImageCFPN Correction Using Column Mean ValuesCFPN Correction Using Column Median ValuesCFPN Correction Using Local Median Values
White furniture board18.73810.28930.31980.1095
HDF board20.79260.292920.537350.10033
Painted fiberboard17.35430.291750.327340.12376
Aluminum board 4.74990.291740.375020.07498
White plastic sheet19.90290.284360.416640.09236
Table 2. RMS given by (3) for different surfaces and different correction methods.
Table 2. RMS given by (3) for different surfaces and different correction methods.
Original ImageCFPN Correction Using Column Mean ValuesCFPN Correction Using Column Median ValuesCFPN Correction Using Local Median Values
White furniture board110,126688836383
HDF board284,145172946981024
Painted fiberboard278,427182625761560
Aluminum board 31,4627571288335
White plastic sheet213,80012192385761
Table 3. RMS2 given by Equation (4) for different surfaces and different correction methods.
Table 3. RMS2 given by Equation (4) for different surfaces and different correction methods.
RMS2Original ImageCFPN Correction Using Column Mean ValuesCFPN Correction Using Column Median ValuesCFPN Correction Using Local Median Values
White furniture board0.4226490.1915760.1918560.033532
HDF board1.4030350.5217780.5382240.056508
Painted fiberboard1.4735580.1869790.1904850.047434
Aluminum board 0.4128090.2156160.2170440.013529
White plastic sheet0.9541640.3466920.3503780.030150
Table 4. PSNR [dB] for different surfaces and different correction methods.
Table 4. PSNR [dB] for different surfaces and different correction methods.
Original ImageCFPN Correction Using Column Mean ValuesCFPN Correction Using Column Median ValuesCFPN Correction Using Local Median Values
White furniture board38.139842.167442.161444.0632
HDF board35.957439.101939.053841.6184
Painted fiberboard36.471238.500238.603539.6811
Aluminum board 38.331943.083243.341546.5082
White plastic sheet35.088640.852940.832442.9152
Table 5. SSIM for different surfaces and different correction methods.
Table 5. SSIM for different surfaces and different correction methods.
Original ImageCFPN Correction Using Column Mean ValuesCFPN Correction Using Column Median ValuesCFPN Correction Using Local Median Values
White furniture board0.909630.940740.940720.96129
HDF board0.853320.887880.888590.93502
Painted fiberboard0.875520.936190.936140.94076
Aluminum board 0.899270.95420.954080.97734
White plastic sheet0.858450.926280.926140.95132
Table 6. Comparison of measures averaged over all types of surface.
Table 6. Comparison of measures averaged over all types of surface.
Original Image(a)
CFPN Correction Using Column Mean Values
(b)
CFPN Correction Using Column Median Values
(c)
CFPN Correction Using Local Median Values
SDCMV16.307560.2900140.395230.100186
RMS1183,5921243.82356.6812.6
RMS20.9332430.2925280.2975970.036231
PSNR36.7977840.7411240.7985242.95722
SSIM0.8792380.9290580.9291340.953146
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Rotter, P.; Knapik, D.; Klemiato, M.; Rosół, M.; Putynkowski, G. Compensation of Speckle Noise in 2D Images from Triangulation Laser Profile Sensors Using Local Column Median Vectors with an Application in a Quality Control System. Sensors 2025, 25, 3426. https://doi.org/10.3390/s25113426

AMA Style

Rotter P, Knapik D, Klemiato M, Rosół M, Putynkowski G. Compensation of Speckle Noise in 2D Images from Triangulation Laser Profile Sensors Using Local Column Median Vectors with an Application in a Quality Control System. Sensors. 2025; 25(11):3426. https://doi.org/10.3390/s25113426

Chicago/Turabian Style

Rotter, Paweł, Dawid Knapik, Maciej Klemiato, Maciej Rosół, and Grzegorz Putynkowski. 2025. "Compensation of Speckle Noise in 2D Images from Triangulation Laser Profile Sensors Using Local Column Median Vectors with an Application in a Quality Control System" Sensors 25, no. 11: 3426. https://doi.org/10.3390/s25113426

APA Style

Rotter, P., Knapik, D., Klemiato, M., Rosół, M., & Putynkowski, G. (2025). Compensation of Speckle Noise in 2D Images from Triangulation Laser Profile Sensors Using Local Column Median Vectors with an Application in a Quality Control System. Sensors, 25(11), 3426. https://doi.org/10.3390/s25113426

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop