The document summarizes different techniques for pattern projection used in 3D shape acquisition, including passive stereo, active stereo using coded structured light, and classifications of pattern projection methods. It discusses techniques such as time multiplexing using binary patterns, spatial codification using De Bruijn sequences, and direct codification using color. Diagrams illustrate concepts like correspondence problems in passive stereo and how encoded patterns can reduce these issues in active stereo.
This document summarizes a student project on implementing lossless discrete wavelet transform (DWT) and inverse discrete wavelet transform (IDWT). It provides an overview of the project, which includes introducing DWT, reviewing literature on lifting schemes for faster DWT computation, and simulating a 2D (5,3) DWT. The results show DWT blocks decomposing signals into high and low pass coefficients. Applications mentioned are in medical imaging, signal denoising, data compression and image processing. The conclusion discusses the need for lossless transforms in medical imaging. Future work could extend this to higher level transforms and applications like compression and watermarking.
Aliasing refers to imperfect reconstruction of a signal when it is sampled at too low of a frequency, resulting in patterns that do not accurately represent the original signal. It occurs when high frequency components are treated as low frequencies during reconstruction. Anti-aliasing aims to minimize aliasing artifacts by removing high frequency components before sampling through techniques like analog filters, optical blurring in digital photography, or supersampling in computer graphics to smooth edges.
The document discusses image segmentation techniques. Image segmentation subdivides an image into constituent regions or groups. Segmentation algorithms fall into two categories based on intensity values: discontinuity and similarity. Discontinuity-based algorithms detect points, lines and edges using techniques like gradient operators and Laplacian filters. Similarity-based algorithms include thresholding, region growing, and region splitting/merging.
The document discusses gradient descent methods for unconstrained convex optimization problems. It introduces gradient descent as an iterative method to find the minimum of a differentiable function by taking steps proportional to the negative gradient. It describes the basic gradient descent update rule and discusses convergence conditions such as Lipschitz continuity, strong convexity, and condition number. It also covers techniques like exact line search, backtracking line search, coordinate descent, and steepest descent methods.
This document provides an introduction to wavelet transforms. It begins with an outline of topics to be covered, including an overview of wavelet transforms, the limitations of Fourier transforms, the historical development of wavelets, the principle of wavelet transforms, examples of applications, and references. It then discusses the stationarity of signals and how Fourier transforms cannot show when frequency components occur over time. Short-time Fourier analysis is introduced as a solution, but it is noted that wavelet transforms provide a more flexible approach by allowing the window size to vary. The document proceeds to define what a wavelet is, discuss the historical development of wavelet theory, provide examples of popular mother wavelets, and explain the steps to compute a continuous wave
Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram processing
Using histogram statistics for image enhancement
Uses for Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram Processing
Basics of Spatial Filtering
This document summarizes a student project on implementing lossless discrete wavelet transform (DWT) and inverse discrete wavelet transform (IDWT). It provides an overview of the project, which includes introducing DWT, reviewing literature on lifting schemes for faster DWT computation, and simulating a 2D (5,3) DWT. The results show DWT blocks decomposing signals into high and low pass coefficients. Applications mentioned are in medical imaging, signal denoising, data compression and image processing. The conclusion discusses the need for lossless transforms in medical imaging. Future work could extend this to higher level transforms and applications like compression and watermarking.
Aliasing refers to imperfect reconstruction of a signal when it is sampled at too low of a frequency, resulting in patterns that do not accurately represent the original signal. It occurs when high frequency components are treated as low frequencies during reconstruction. Anti-aliasing aims to minimize aliasing artifacts by removing high frequency components before sampling through techniques like analog filters, optical blurring in digital photography, or supersampling in computer graphics to smooth edges.
The document discusses image segmentation techniques. Image segmentation subdivides an image into constituent regions or groups. Segmentation algorithms fall into two categories based on intensity values: discontinuity and similarity. Discontinuity-based algorithms detect points, lines and edges using techniques like gradient operators and Laplacian filters. Similarity-based algorithms include thresholding, region growing, and region splitting/merging.
The document discusses gradient descent methods for unconstrained convex optimization problems. It introduces gradient descent as an iterative method to find the minimum of a differentiable function by taking steps proportional to the negative gradient. It describes the basic gradient descent update rule and discusses convergence conditions such as Lipschitz continuity, strong convexity, and condition number. It also covers techniques like exact line search, backtracking line search, coordinate descent, and steepest descent methods.
This document provides an introduction to wavelet transforms. It begins with an outline of topics to be covered, including an overview of wavelet transforms, the limitations of Fourier transforms, the historical development of wavelets, the principle of wavelet transforms, examples of applications, and references. It then discusses the stationarity of signals and how Fourier transforms cannot show when frequency components occur over time. Short-time Fourier analysis is introduced as a solution, but it is noted that wavelet transforms provide a more flexible approach by allowing the window size to vary. The document proceeds to define what a wavelet is, discuss the historical development of wavelet theory, provide examples of popular mother wavelets, and explain the steps to compute a continuous wave
Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram processing
Using histogram statistics for image enhancement
Uses for Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram Processing
Basics of Spatial Filtering
Real time pedestrian detection, tracking, and distance estimationomid Asudeh
combination of HOG Pedestrian Detection method and Lukas Kanade Tracking Algorithm to detect and track people in a Video Stream in a real-time manner. A simple method is used for the distance estimation using a Pinehole camera.
Basic knowhow of several techniques commonly used in deep learning and neural networks -- activation functions, cost functions, optimizers, regularization, parameter initialization, normalization, data handling, hyperparameter selection. Presented as lecture material for the course EE599 Deep Learning in Spring 2019 at University of Southern California.
1) Empirical Mode Decomposition (EMD) is a data-driven method that decomposes complicated data sets into intrinsic mode functions (IMFs) that admit well-behaved Hilbert Transforms. 2) EMD decomposes data through a sifting process that identifies intrinsic modes in the data based on the number of extrema and zero-crossings. 3) Hilbert transforms of the IMFs can then be used to determine instantaneous frequencies to analyze nonlinear and non-stationary signals in the time-frequency domain.
https://mcv-m6-video.github.io/deepvideo-2018/
Overview of deep learning solutions for video processing. Part of a series of slides covering topics like action recognition, action detection, object tracking, object detection, scene segmentation, language and learning from videos.
Prepared for the Master in Computer Vision Barcelona:
http://pagines.uab.cat/mcv/
Digital Image Processing 3rd edition Rafael C. Gonzalez, Richard E. Woods.pdfssuserbe3944
This document provides information about the third edition of the book "Digital Image Processing" by Rafael C. Gonzalez and Richard E. Woods. It includes publication details such as the publisher, editors, and copyright information. The book is dedicated to Samantha and to Janice, David, and Jonathan.
Machine Learning - Convolutional Neural NetworkRichard Kuo
The document provides an overview of convolutional neural networks (CNNs) for visual recognition. It discusses the basic concepts of CNNs such as convolutional layers, activation functions, pooling layers, and network architectures. Examples of classic CNN architectures like LeNet-5 and AlexNet are presented. Modern architectures such as Inception and ResNet are also discussed. Code examples for image classification using TensorFlow, Keras, and Fastai are provided.
SIFT is a scale-invariant feature transform algorithm used to detect and describe local features in images. It detects keypoints that are invariant to scale, rotation, and partially invariant to illumination and viewpoint changes. The algorithm involves 4 main steps: (1) scale-space extrema detection, (2) keypoint localization, (3) orientation assignment, and (4) keypoint descriptor generation. SIFT descriptors provide a feature vector for each keypoint that is highly distinctive and partially invariant to remaining variations.
The document discusses Particle Swarm Optimization (PSO), which is an optimization technique inspired by swarm intelligence and the social behavior of bird flocking. PSO initializes a population of random solutions and searches for optima by updating generations of candidate solutions. Each candidate, or particle, updates its position based on its own experience and the experience of neighboring highly-ranked particles. The algorithm is simple to implement and converges quickly to produce approximate solutions to difficult optimization problems.
Bat algorithm explained. slides ppt pptxMahdi Atawneh
[Important]
Some numbers in the example are not correct ( in iteration 3 and later), I used them to clarify the idea only.
For people who asked me about the random number that appears in the slide:
Overview:
As described in the paper and pseudo code.
We have two important variables ( ri,Ai) for each bat, these variables will be used to evaluate the bats( solutions).
When a bat becomes near the goal, “ri” value will be increased, and “Ai” will be decreased.
*** About the Random variable:
At each iteration,
- The algorithm will have the solutions population ( assume we have 10 bats ), these solutions(bats) values are near each other.
- To prevent the algorithm from falling at local minima, the algorithm at each iteration will generate a random solution (bat) to explore, this could in some cases jump to a new solution that is near the goal.
- So in the slides, the “rand” means the random solution. We will compare it to all other solutions. If the random solution “ri” value is the height we will put this bat in the best solutions array.
Bat algorithm
download the Powerpoint file pptx with animations
https://docs.google.com/presentation/d/0Bxij58M-C_RgY2gxOEFHSlZzWHM/edit?usp=sharing&ouid=117863559816378751483&resourcekey=0-94EJhpYOuJtlSGiJlRH3jQ&rtpof=true&sd=true
The original paper: https://www.researchgate.net/publication/45913690_A_New_Metaheuristic_Bat-Inspired_Algorithm
The document discusses different types of agent structures and programs. It describes simple reflex agents that select actions based only on the current percept. Model based reflex agents maintain an internal state based on the percept history. Goal-based agents choose actions that achieve defined goals, while utility based agents aim to maximize utility or happiness across states. Learning agents can improve by making modifications based on feedback from experiences.
Transform coding is used in image and video processing to exploit correlations between neighboring pixels. The discrete cosine transform (DCT) is commonly used as it provides good energy compaction and de-correlation. DCT represents data as a sum of variable frequency cosine waves in the frequency domain. It has properties like separability and orthogonality that make it efficient for computation. DCT exhibits excellent energy compaction and removal of redundancy between pixels, making it useful for image and video compression.
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...Simplilearn
This Deep Learning Presentation will help you in understanding what is Deep learning, why do we need Deep learning, applications of Deep Learning along with a detailed explanation on Neural Networks and how these Neural Networks work. Deep learning is inspired by the integral function of the human brain specific to artificial neural networks. These networks, which represent the decision-making process of the brain, use complex algorithms that process data in a non-linear way, learning in an unsupervised manner to make choices based on the input. This Deep Learning tutorial is ideal for professionals with beginners to intermediate levels of experience. Now, let us dive deep into this topic and understand what Deep learning actually is.
Below topics are explained in this Deep Learning Presentation:
1. What is Deep Learning?
2. Why do we need Deep Learning?
3. Applications of Deep Learning
4. What is Neural Network?
5. Activation Functions
6. Working of Neural Network
Simplilearn’s Deep Learning course will transform you into an expert in deep learning techniques using TensorFlow, the open-source software library designed to conduct machine learning & deep neural network research. With our deep learning course, you’ll master deep learning and TensorFlow concepts, learn to implement algorithms, build artificial neural networks and traverse layers of data abstraction to understand the power of data and prepare you for your new role as deep learning scientist.
Why Deep Learning?
It is one of the most popular software platforms used for deep learning and contains powerful tools to help you build and implement artificial neural networks.
Advancements in deep learning are being seen in smartphone applications, creating efficiencies in the power grid, driving advancements in healthcare, improving agricultural yields, and helping us find solutions to climate change. With this Tensorflow course, you’ll build expertise in deep learning models, learn to operate TensorFlow to manage neural networks and interpret the results.
You can gain in-depth knowledge of Deep Learning by taking our Deep Learning certification training course. With Simplilearn’s Deep Learning course, you will prepare for a career as a Deep Learning engineer as you master concepts and techniques including supervised and unsupervised learning, mathematical and heuristic aspects, and hands-on modeling to develop algorithms.
There is booming demand for skilled deep learning engineers across a wide range of industries, making this deep learning course with TensorFlow training well-suited for professionals at the intermediate to advanced level of experience. We recommend this deep learning online course particularly for the following professionals:
1. Software engineers
2. Data scientists
3. Data analysts
4. Statisticians with an interest in deep learning
https://telecombcn-dl.github.io/2018-dlai/
Deep learning technologies are at the core of the current revolution in artificial intelligence for multimedia data analysis. The convergence of large-scale annotated datasets and affordable GPU hardware has allowed the training of neural networks for data analysis tasks which were previously addressed with hand-crafted features. Architectures such as convolutional neural networks, recurrent neural networks or Q-nets for reinforcement learning have shaped a brand new scenario in signal processing. This course will cover the basic principles of deep learning from both an algorithmic and computational perspectives.
Introduction to Digital Videos, Motion Estimation: Principles & Compensation. Learn more in IIT Kharagpur's Image and Video Communication online certificate course.
Computer vision has received great attention over the last two decades.
This research field is important not only in security-related software but also in the advanced interface between people and computers, advanced control methods, and many other areas.
Homomorphic filtering is a technique used to remove multiplicative noise from images by transforming the image into the logarithmic domain, where the multiplicative components become additive. This allows the use of linear filters to separate the illumination and reflectance components, with a high-pass filter used to remove low-frequency illumination variations while preserving high-frequency reflectance edges. The filtered image is then transformed back to restore the original domain. Homomorphic filtering is commonly used to correct non-uniform illumination and simultaneously enhance contrast in grayscale images.
This document discusses classifying bird species based on their sounds. It notes there are over 9,000 bird species and the goal is to automatically recognize species or individual birds by their sounds. This is important for environmental monitoring and scientific research. The document reviews literature on using signal processing and machine learning techniques like mel-frequency cepstral coefficients and classifiers like k-nearest neighbor and support vector machines. It then describes the method of collecting and preprocessing audio, extracting features, and classifying birds. It concludes there is still room for improvement by using more data, handling noise better, and developing more efficient techniques.
This document discusses edge detection and image segmentation techniques. It begins with an introduction to segmentation and its importance. It then discusses edge detection, including edge models like steps, ramps, and roofs. Common edge detection techniques are described, such as using derivatives and filters to detect discontinuities that indicate edges. Point, line, and edge detection are explained through the use of filters like Laplacian filters. Thresholding techniques are introduced as a way to segment images into different regions based on pixel intensity values.
This document introduces classification using linear models and discriminant functions. It discusses:
1) Representing binary and multi-class labels using coding schemes like 1-of-K.
2) Using a generalized linear model framework to map linear discriminant functions to class labels.
3) Solving classification problems using least squares to determine the parameters of linear discriminant functions that minimize error on training data.
However, least squares solutions for classification have deficiencies since discriminant function outputs are unconstrained and not probabilistic.
This document summarizes a lecture on 3D vision and shape representations. It discusses various ways to represent 3D shapes, including point clouds, meshes, voxels, implicit surfaces, and parametric surfaces. It also covers recent datasets created for 3D objects, object parts, indoor scenes, and how neural networks can be applied to these representations for tasks like classification, generation, and reconstruction. Representation selection depends on the specific application and tradeoffs between flexibility, memory usage, and supporting different operations. Recent work also aims to develop more unified representations that combine advantages of multiple approaches.
Online video object segmentation via convolutional trident networkNAVER Engineering
발표자: 장원동 (고려대 박사과정)
발표일: 2017.8.
개요:
A semi-supervised online video object segmentation algorithm, which accepts user annotations about a target object at the first frame, will be presented. It propagates the segmentation labels at the previous frame to the current frame using optical flow vectors.
However, the propagation is error-prone. Therefore, I’ve developed the convolutional trident network, which has three decoding branches: separative, definite foreground, and definite background decoders.
Then, the algorithm performs Markov random field optimization based on outputs of the three decoders.
These process is sequentially carried out from the second to the last frames to extract a segment track of the target object.
Experimental results will demonstrate that this algorithm significantly outperforms the state-of-the-art conventional algorithms on the DAVIS benchmark dataset.
Real time pedestrian detection, tracking, and distance estimationomid Asudeh
combination of HOG Pedestrian Detection method and Lukas Kanade Tracking Algorithm to detect and track people in a Video Stream in a real-time manner. A simple method is used for the distance estimation using a Pinehole camera.
Basic knowhow of several techniques commonly used in deep learning and neural networks -- activation functions, cost functions, optimizers, regularization, parameter initialization, normalization, data handling, hyperparameter selection. Presented as lecture material for the course EE599 Deep Learning in Spring 2019 at University of Southern California.
1) Empirical Mode Decomposition (EMD) is a data-driven method that decomposes complicated data sets into intrinsic mode functions (IMFs) that admit well-behaved Hilbert Transforms. 2) EMD decomposes data through a sifting process that identifies intrinsic modes in the data based on the number of extrema and zero-crossings. 3) Hilbert transforms of the IMFs can then be used to determine instantaneous frequencies to analyze nonlinear and non-stationary signals in the time-frequency domain.
https://mcv-m6-video.github.io/deepvideo-2018/
Overview of deep learning solutions for video processing. Part of a series of slides covering topics like action recognition, action detection, object tracking, object detection, scene segmentation, language and learning from videos.
Prepared for the Master in Computer Vision Barcelona:
http://pagines.uab.cat/mcv/
Digital Image Processing 3rd edition Rafael C. Gonzalez, Richard E. Woods.pdfssuserbe3944
This document provides information about the third edition of the book "Digital Image Processing" by Rafael C. Gonzalez and Richard E. Woods. It includes publication details such as the publisher, editors, and copyright information. The book is dedicated to Samantha and to Janice, David, and Jonathan.
Machine Learning - Convolutional Neural NetworkRichard Kuo
The document provides an overview of convolutional neural networks (CNNs) for visual recognition. It discusses the basic concepts of CNNs such as convolutional layers, activation functions, pooling layers, and network architectures. Examples of classic CNN architectures like LeNet-5 and AlexNet are presented. Modern architectures such as Inception and ResNet are also discussed. Code examples for image classification using TensorFlow, Keras, and Fastai are provided.
SIFT is a scale-invariant feature transform algorithm used to detect and describe local features in images. It detects keypoints that are invariant to scale, rotation, and partially invariant to illumination and viewpoint changes. The algorithm involves 4 main steps: (1) scale-space extrema detection, (2) keypoint localization, (3) orientation assignment, and (4) keypoint descriptor generation. SIFT descriptors provide a feature vector for each keypoint that is highly distinctive and partially invariant to remaining variations.
The document discusses Particle Swarm Optimization (PSO), which is an optimization technique inspired by swarm intelligence and the social behavior of bird flocking. PSO initializes a population of random solutions and searches for optima by updating generations of candidate solutions. Each candidate, or particle, updates its position based on its own experience and the experience of neighboring highly-ranked particles. The algorithm is simple to implement and converges quickly to produce approximate solutions to difficult optimization problems.
Bat algorithm explained. slides ppt pptxMahdi Atawneh
[Important]
Some numbers in the example are not correct ( in iteration 3 and later), I used them to clarify the idea only.
For people who asked me about the random number that appears in the slide:
Overview:
As described in the paper and pseudo code.
We have two important variables ( ri,Ai) for each bat, these variables will be used to evaluate the bats( solutions).
When a bat becomes near the goal, “ri” value will be increased, and “Ai” will be decreased.
*** About the Random variable:
At each iteration,
- The algorithm will have the solutions population ( assume we have 10 bats ), these solutions(bats) values are near each other.
- To prevent the algorithm from falling at local minima, the algorithm at each iteration will generate a random solution (bat) to explore, this could in some cases jump to a new solution that is near the goal.
- So in the slides, the “rand” means the random solution. We will compare it to all other solutions. If the random solution “ri” value is the height we will put this bat in the best solutions array.
Bat algorithm
download the Powerpoint file pptx with animations
https://docs.google.com/presentation/d/0Bxij58M-C_RgY2gxOEFHSlZzWHM/edit?usp=sharing&ouid=117863559816378751483&resourcekey=0-94EJhpYOuJtlSGiJlRH3jQ&rtpof=true&sd=true
The original paper: https://www.researchgate.net/publication/45913690_A_New_Metaheuristic_Bat-Inspired_Algorithm
The document discusses different types of agent structures and programs. It describes simple reflex agents that select actions based only on the current percept. Model based reflex agents maintain an internal state based on the percept history. Goal-based agents choose actions that achieve defined goals, while utility based agents aim to maximize utility or happiness across states. Learning agents can improve by making modifications based on feedback from experiences.
Transform coding is used in image and video processing to exploit correlations between neighboring pixels. The discrete cosine transform (DCT) is commonly used as it provides good energy compaction and de-correlation. DCT represents data as a sum of variable frequency cosine waves in the frequency domain. It has properties like separability and orthogonality that make it efficient for computation. DCT exhibits excellent energy compaction and removal of redundancy between pixels, making it useful for image and video compression.
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...Simplilearn
This Deep Learning Presentation will help you in understanding what is Deep learning, why do we need Deep learning, applications of Deep Learning along with a detailed explanation on Neural Networks and how these Neural Networks work. Deep learning is inspired by the integral function of the human brain specific to artificial neural networks. These networks, which represent the decision-making process of the brain, use complex algorithms that process data in a non-linear way, learning in an unsupervised manner to make choices based on the input. This Deep Learning tutorial is ideal for professionals with beginners to intermediate levels of experience. Now, let us dive deep into this topic and understand what Deep learning actually is.
Below topics are explained in this Deep Learning Presentation:
1. What is Deep Learning?
2. Why do we need Deep Learning?
3. Applications of Deep Learning
4. What is Neural Network?
5. Activation Functions
6. Working of Neural Network
Simplilearn’s Deep Learning course will transform you into an expert in deep learning techniques using TensorFlow, the open-source software library designed to conduct machine learning & deep neural network research. With our deep learning course, you’ll master deep learning and TensorFlow concepts, learn to implement algorithms, build artificial neural networks and traverse layers of data abstraction to understand the power of data and prepare you for your new role as deep learning scientist.
Why Deep Learning?
It is one of the most popular software platforms used for deep learning and contains powerful tools to help you build and implement artificial neural networks.
Advancements in deep learning are being seen in smartphone applications, creating efficiencies in the power grid, driving advancements in healthcare, improving agricultural yields, and helping us find solutions to climate change. With this Tensorflow course, you’ll build expertise in deep learning models, learn to operate TensorFlow to manage neural networks and interpret the results.
You can gain in-depth knowledge of Deep Learning by taking our Deep Learning certification training course. With Simplilearn’s Deep Learning course, you will prepare for a career as a Deep Learning engineer as you master concepts and techniques including supervised and unsupervised learning, mathematical and heuristic aspects, and hands-on modeling to develop algorithms.
There is booming demand for skilled deep learning engineers across a wide range of industries, making this deep learning course with TensorFlow training well-suited for professionals at the intermediate to advanced level of experience. We recommend this deep learning online course particularly for the following professionals:
1. Software engineers
2. Data scientists
3. Data analysts
4. Statisticians with an interest in deep learning
https://telecombcn-dl.github.io/2018-dlai/
Deep learning technologies are at the core of the current revolution in artificial intelligence for multimedia data analysis. The convergence of large-scale annotated datasets and affordable GPU hardware has allowed the training of neural networks for data analysis tasks which were previously addressed with hand-crafted features. Architectures such as convolutional neural networks, recurrent neural networks or Q-nets for reinforcement learning have shaped a brand new scenario in signal processing. This course will cover the basic principles of deep learning from both an algorithmic and computational perspectives.
Introduction to Digital Videos, Motion Estimation: Principles & Compensation. Learn more in IIT Kharagpur's Image and Video Communication online certificate course.
Computer vision has received great attention over the last two decades.
This research field is important not only in security-related software but also in the advanced interface between people and computers, advanced control methods, and many other areas.
Homomorphic filtering is a technique used to remove multiplicative noise from images by transforming the image into the logarithmic domain, where the multiplicative components become additive. This allows the use of linear filters to separate the illumination and reflectance components, with a high-pass filter used to remove low-frequency illumination variations while preserving high-frequency reflectance edges. The filtered image is then transformed back to restore the original domain. Homomorphic filtering is commonly used to correct non-uniform illumination and simultaneously enhance contrast in grayscale images.
This document discusses classifying bird species based on their sounds. It notes there are over 9,000 bird species and the goal is to automatically recognize species or individual birds by their sounds. This is important for environmental monitoring and scientific research. The document reviews literature on using signal processing and machine learning techniques like mel-frequency cepstral coefficients and classifiers like k-nearest neighbor and support vector machines. It then describes the method of collecting and preprocessing audio, extracting features, and classifying birds. It concludes there is still room for improvement by using more data, handling noise better, and developing more efficient techniques.
This document discusses edge detection and image segmentation techniques. It begins with an introduction to segmentation and its importance. It then discusses edge detection, including edge models like steps, ramps, and roofs. Common edge detection techniques are described, such as using derivatives and filters to detect discontinuities that indicate edges. Point, line, and edge detection are explained through the use of filters like Laplacian filters. Thresholding techniques are introduced as a way to segment images into different regions based on pixel intensity values.
This document introduces classification using linear models and discriminant functions. It discusses:
1) Representing binary and multi-class labels using coding schemes like 1-of-K.
2) Using a generalized linear model framework to map linear discriminant functions to class labels.
3) Solving classification problems using least squares to determine the parameters of linear discriminant functions that minimize error on training data.
However, least squares solutions for classification have deficiencies since discriminant function outputs are unconstrained and not probabilistic.
This document summarizes a lecture on 3D vision and shape representations. It discusses various ways to represent 3D shapes, including point clouds, meshes, voxels, implicit surfaces, and parametric surfaces. It also covers recent datasets created for 3D objects, object parts, indoor scenes, and how neural networks can be applied to these representations for tasks like classification, generation, and reconstruction. Representation selection depends on the specific application and tradeoffs between flexibility, memory usage, and supporting different operations. Recent work also aims to develop more unified representations that combine advantages of multiple approaches.
Online video object segmentation via convolutional trident networkNAVER Engineering
발표자: 장원동 (고려대 박사과정)
발표일: 2017.8.
개요:
A semi-supervised online video object segmentation algorithm, which accepts user annotations about a target object at the first frame, will be presented. It propagates the segmentation labels at the previous frame to the current frame using optical flow vectors.
However, the propagation is error-prone. Therefore, I’ve developed the convolutional trident network, which has three decoding branches: separative, definite foreground, and definite background decoders.
Then, the algorithm performs Markov random field optimization based on outputs of the three decoders.
These process is sequentially carried out from the second to the last frames to extract a segment track of the target object.
Experimental results will demonstrate that this algorithm significantly outperforms the state-of-the-art conventional algorithms on the DAVIS benchmark dataset.
This document provides an overview of digital image fundamentals including:
- The electromagnetic spectrum and how light is sensed and sampled by sensor arrays to create digital images.
- Common sensor technologies like CCD and CMOS sensors and how they work.
- How digital images are represented through spatial and intensity discretization via sampling and quantization.
- Factors that affect image quality like spatial and intensity resolution.
- Concepts like aliasing, moire patterns, and their relationship to sampling rates.
- Basic image processing techniques like zooming, shrinking, and relationships between pixels.
This document is the preface to a book about coding theory. It introduces the topics that will be covered in the book, including error-correcting codes, secrecy codes, and data compression codes. It explains that the book will present important classes of error-detecting and error-correcting codes and their decoding methods. Some constructions require a background in modern algebra, which will be provided. Secret codes are covered briefly, focusing on the role of error-correcting codes in modern cryptography. Data compression and other information theory topics are discussed in the first part of the book. The material is presented in a way that balances mathematical rigor with accessibility.
Multi-class Classification on Riemannian Manifolds for Video SurveillanceDiego Tosato
In video surveillance, classification of visual data can be very hard due to the scarce resolution and the noise characterizing the sensors data. In this paper, we propose a novel feature, the ARray of COvariances (ARCO), and a multi-class classification framework operating on Riemannian manifolds. ARCO is composed by a structure of covariance matrices of image features, able to extract information from data at prohibitive low resolutions. The proposed classification framework consists in instantiating a new multi-class boosting method, working on the manifoldof symmetric positive definite d×d (covariance) matrices. As practical applications, we consider different surveillance tasks, such as head pose classification and pedestrian detection, providing novel state-of-the-art performances on standard datasets.
NLM originates as a denoising method that does not use a fixed kernel. The key take away is 'non-local' - i.e. a global method. We leverage self-similarity/fractal nature of images and get filtering results not easily matched by conventional methods. It has strong connection to an algorithm in ray-tracing call 'ray histogram fusion'.
In it naive form it is very high quality but slow. PatchMatch is one of the means to accelerate it. PatchMatch is really a form of message-passing hence it has strong connection to CRF. CRF have been a staple of modern vision to get per-pixel segmentation that has a clear well formed boundary.
International Journal of Engineering Research and Applications (IJERA) is an open access online peer reviewed international journal that publishes research and review articles in the fields of Computer Science, Neural Networks, Electrical Engineering, Software Engineering, Information Technology, Mechanical Engineering, Chemical Engineering, Plastic Engineering, Food Technology, Textile Engineering, Nano Technology & science, Power Electronics, Electronics & Communication Engineering, Computational mathematics, Image processing, Civil Engineering, Structural Engineering, Environmental Engineering, VLSI Testing & Low Power VLSI Design etc.
Primal-dual coding photography is a new photographic technique that uses coded illumination and exposure to selectively record user-defined subsets of light paths, generalizing conventional photography. It modulates the contribution of specific light paths using a "probing matrix" of primal codes for illumination and dual codes for exposure over multiple frames. This allows effects like enhancing direct light, capturing indirect light of different ranges, separating light transport effects, and making 3D regions invisible or color-coded in the photo. The technique provides guarantees of optimality and convergence for reconstructing images from the coded photo measurements.
Quarry Detection with GeoAI Tools on Infraestruturas de PortugalFernando Gil
The research focus of the developed work is concentrated on the implementation of Geographic Information Systems – GIS – tools in spatial and temporal contexts, linked to the GIS and Geospatial Information branch of IP.
Through GIS it is possible to visualize, analyse, transform and interpret geographic information. For instance, identification of patterns, trends, and aspects that simplify decision support systems regarding geographical scenarios. Particularly, the work carried out consisted of detecting quarries.
In this context, concepts of Artificial Intelligence, Machine Learning, and Deep Learning were considered. Combined with GIS resources and methodologies, it is conceivable to carry out spatial analysis, remote sensing, and information management, for example.
The mechanisms adopted were initiated from the use of the Esri framework, a provider of geographic information systems, applied in Geographical Artificial Intelligence. GeoAI tools were adopted in the area of quarries, on which the developed work was focused.
Whereas quarries may often be considered as relatively monitored and properly inspected areas, there are scenarios in which they are detected and exceed the specified geographical limits, and situations where they are considered illegal.
Through the available tools, the occurrences mentioned above were intercepted with the national road and railway networks under the company’s supervision. As such, a workflow was developed, implemented, and paired with trained algorithms to obtain an approximate delimitation of the quarries in mainland Portugal.
Perspective Multiscale Detection and Tracking of PersonsMarcos Nieto
This document discusses using perspective information to improve multiscale object detection in images. It presents two approaches: 1) Perspective multiscale detection which rescales the image based on the scene perspective and known object sizes, reducing the number of detection windows needed. 2) Using a fixed grid of detection positions based on the scene perspective, which further reduces computations compared to traditional multiscale detection. Experimental results show the perspective-based approaches reduce evaluations by 60-1000x while maintaining detection performance. This allows real-time detection on embedded systems.
This paper presents a method to reconstruct 3D hair geometry from a small number of photographs using multi-view stereo. The key contributions are a robust matching criterion based on local hair orientation, an aggregation scheme that considers hair structure, and a progressive template fitting procedure to fuse multiple depth maps. The method is quantitatively evaluated on synthetic data and qualitatively shown to produce detailed 3D hair reconstructions from real images.
Long-term Face Tracking in the Wild using Deep LearningElaheh Rashedi
This paper investigates long-term face tracking of a specific person given his/her face image in a single frame as a query in a video stream. Through taking advantage of pre-trained deep learning models on big data, a novel system is developed for accurate video face tracking in the unconstrained environments depicting various people and objects moving in and out of the frame. In the proposed system, we present a detection-verification-tracking method (dubbed as 'DVT') which accomplishes the long-term face tracking task through the collaboration of face detection, face verification, and (short-term) face tracking. An offline trained detector based on cascaded convolutional neural networks localizes all faces appeared in the frames, and an offline trained face verifier based on deep convolutional neural networks and similarity metric learning decides if any face or which face corresponds to the queried person. An online trained tracker follows the face from frame to frame. When validated on a sitcom episode and a TV show, the DVT method outperforms tracking-learning-detection (TLD) and face-TLD in terms of recall and precision. The proposed system is also tested on many other types of videos and shows very promising results.
This document discusses Motaz El Saban's research experience and interests which focus on analyzing, modeling, learning from, and predicting digital media content such as text, images, and speech. Some key areas of research include real-time video stitching, annotating mobile videos, object and activity recognition from videos, and facial expression recognition using deep learning techniques. The document also outlines El Saban's educational background and provides an agenda for his upcoming presentation.
Similar to Lecture 5 Pattern Projection Techniques (20)
Lecture 4 Reconstruction from Two ViewsJoaquim Salvi
The document summarizes lecture 4 on reconstruction from two views. It discusses techniques for shape reconstruction including shape from X methods using multiple camera views or additional information. It then covers the triangulation principle for reconstructing 3D points from 2D point correspondences in multiple views. Finally, it introduces epipolar geometry which models the geometric relationship between two views and can be used to reconstruct the fundamental matrix and epipolar lines.
This document summarizes camera calibration methods. It begins by introducing the pinhole camera model and describing its four step process: from world to camera coordinates, projection to the image plane, modeling lens distortion, and conversion to image coordinates. It then overviews several calibration methods, including the method of Hall which uses a linear transformation matrix, and the method of Faugeras-Toscani which obtains camera parameters through an iterative process accounting for radial distortion. The document focuses on explaining the method of Hall in detail, showing how its modeling leads to equations that can be solved using a pseudoinverse to obtain the camera calibration parameters.
This document outlines the contents of Lecture 1 on rigid body transformations. The key topics covered include Cartesian coordinates, points and vectors, inner products and cross products, translations using translation matrices, rotations using rotation matrices, and homogeneous coordinates for representing transformations. The lecture will define and provide examples of how to represent and compute rigid body transformations such as translations and rotations between coordinate systems.
A workshop hosted by the South African Journal of Science aimed at postgraduate students and early career researchers with little or no experience in writing and publishing journal articles.
हिंदी वर्णमाला पीपीटी, hindi alphabet PPT presentation, hindi varnamala PPT, Hindi Varnamala pdf, हिंदी स्वर, हिंदी व्यंजन, sikhiye hindi varnmala, dr. mulla adam ali, hindi language and literature, hindi alphabet with drawing, hindi alphabet pdf, hindi varnamala for childrens, hindi language, hindi varnamala practice for kids, https://www.drmullaadamali.com
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
Strategies for Effective Upskilling is a presentation by Chinwendu Peace in a Your Skill Boost Masterclass organisation by the Excellence Foundation for South Sudan on 08th and 09th June 2024 from 1 PM to 3 PM on each day.
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptxEduSkills OECD
Iván Bornacelly, Policy Analyst at the OECD Centre for Skills, OECD, presents at the webinar 'Tackling job market gaps with a skills-first approach' on 12 June 2024
How to Fix the Import Error in the Odoo 17Celine George
An import error occurs when a program fails to import a module or library, disrupting its execution. In languages like Python, this issue arises when the specified module cannot be found or accessed, hindering the program's functionality. Resolving import errors is crucial for maintaining smooth software operation and uninterrupted development processes.
Chapter wise All Notes of First year Basic Civil Engineering.pptxDenish Jangid
Chapter wise All Notes of First year Basic Civil Engineering
Syllabus
Chapter-1
Introduction to objective, scope and outcome the subject
Chapter 2
Introduction: Scope and Specialization of Civil Engineering, Role of civil Engineer in Society, Impact of infrastructural development on economy of country.
Chapter 3
Surveying: Object Principles & Types of Surveying; Site Plans, Plans & Maps; Scales & Unit of different Measurements.
Linear Measurements: Instruments used. Linear Measurement by Tape, Ranging out Survey Lines and overcoming Obstructions; Measurements on sloping ground; Tape corrections, conventional symbols. Angular Measurements: Instruments used; Introduction to Compass Surveying, Bearings and Longitude & Latitude of a Line, Introduction to total station.
Levelling: Instrument used Object of levelling, Methods of levelling in brief, and Contour maps.
Chapter 4
Buildings: Selection of site for Buildings, Layout of Building Plan, Types of buildings, Plinth area, carpet area, floor space index, Introduction to building byelaws, concept of sun light & ventilation. Components of Buildings & their functions, Basic concept of R.C.C., Introduction to types of foundation
Chapter 5
Transportation: Introduction to Transportation Engineering; Traffic and Road Safety: Types and Characteristics of Various Modes of Transportation; Various Road Traffic Signs, Causes of Accidents and Road Safety Measures.
Chapter 6
Environmental Engineering: Environmental Pollution, Environmental Acts and Regulations, Functional Concepts of Ecology, Basics of Species, Biodiversity, Ecosystem, Hydrological Cycle; Chemical Cycles: Carbon, Nitrogen & Phosphorus; Energy Flow in Ecosystems.
Water Pollution: Water Quality standards, Introduction to Treatment & Disposal of Waste Water. Reuse and Saving of Water, Rain Water Harvesting. Solid Waste Management: Classification of Solid Waste, Collection, Transportation and Disposal of Solid. Recycling of Solid Waste: Energy Recovery, Sanitary Landfill, On-Site Sanitation. Air & Noise Pollution: Primary and Secondary air pollutants, Harmful effects of Air Pollution, Control of Air Pollution. . Noise Pollution Harmful Effects of noise pollution, control of noise pollution, Global warming & Climate Change, Ozone depletion, Greenhouse effect
Text Books:
1. Palancharmy, Basic Civil Engineering, McGraw Hill publishers.
2. Satheesh Gopi, Basic Civil Engineering, Pearson Publishers.
3. Ketki Rangwala Dalal, Essentials of Civil Engineering, Charotar Publishing House.
4. BCP, Surveying volume 1
it describes the bony anatomy including the femoral head , acetabulum, labrum . also discusses the capsule , ligaments . muscle that act on the hip joint and the range of motion are outlined. factors affecting hip joint stability and weight transmission through the joint are summarized.
2. 2
Lecture 5: Pattern Projection Techniques
Contents
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
3. 3
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
4. 4
Lecture 5: Pattern Projection Techniques
INTERPRETATION
KNOWLEDGE
BASE
DATA
BASE
Interpretation
Level
SCENE
DESCRIPTIONFUSION TRACKING
SHAPE
IDENTIFICATION
LOCALIZATIONSCENE
ANALYSIS
SEGMENTATION
SHAPE
ACQUISITION
FEATURE
EXTRACTION
MOVEMENT
DETECTION
TEXTURE
ANALYSIS
IMAGE
RESTORATION
EDGE
RESTORATION
Description
Level
Image Processing
High Level
FILTERING
EDGE
THINNING
EDGE
DETECTION
COLOUR
COMPENSATION
THRESHOLDING
GRADIENTS
RE-HISTOGRAMATION
A/D
COLOUR
SEPARATION
SENSOR
Image Acquisition
Level
Image Processing
Low Level
5.1 Passive vs active stereo
The
Challenge
of
Computer
Vision
5. 5
Lecture 5: Pattern Projection Techniques
Shape acquisition
techniques
Contact
Non-destructive Destructive
Jointed arms
Slicing
Non-contact
Reflective Transmissive
Non-optical
Optical
...
Microwave radar Sonar
Passive
Active
Stereo Shading Silhouettes TextureMotion
Shape from X Interferometry
(Coded)
Structured
light
Moire Holography
Source: Brian Curless
5.1 Passive vs active stereo
Shape
Acquisition
Techniques
6. 6
Lecture 5: Pattern Projection Techniques
• Correspondence problem
• geometric constraints
search along epipolar lines
• 3D reconstruction of
matched pairs by
triangulation
5.1 Passive vs active stereo
Passive Stereo
7. 7
Lecture 5: Pattern Projection Techniques
Arrange correspondence points
• Ordered Projections
• Projections bad order
Occlusions
• Points without homologue
e
e’
I’
C
C’
p
q
p’ q’
Q
P
l l’
I
3D Object
Inverse order
e
e’
I
C
C’
p
q
p’ q’
l l’
P
Q
I’
3D Objects
Direct order
e
e’
I’
I
C
C’
p ?
q
p’ q’
l l’
P
Q
3D Object
Surface occlusion Point without homologue
5.1 Passive vs active stereo
Passive Stereo
8. 8
Lecture 5: Pattern Projection Techniques
Y
Z
X
I
M
f
m
I’
m’
X’
Y’
Z’
f’
O
O’
C C’
Zw
Xw
Yw
Captured Image Captured Image
• We need at least two cameras.
• A 3D object point has three
unknown co-ordinates.
• Each 2D image point gives two
equations.
• Only a single component of the
second point is needed.
5.1 Passive vs active stereo
Passive Stereo
9. 9
Lecture 5: Pattern Projection Techniques
• One of the cameras is
replaced by a light emitter
• Correspondence problem
is solved by searching the
pattern in the camera
image (pattern decoding)
5.1 Passive vs active stereo
Active Stereo
10. 10
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
11. 11
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
12. 12
Lecture 5: Pattern Projection Techniques
5.2 Coded structured light
• The correspondence problem is reduced :
• The matching between the projected pattern and the captured
one can be uniquely solved codifying the pattern.
– Stripe patterns :
• No scanning.
• Correspondence problem among
slits.
– Grid, multiple dots :
• No scanning.
• Correspondence problem among
all the imaged features (points, dots,
segments,…).
– Single dot :
• No correspondence problem.
• Scanning both axis.
– Single slit :
• No correspondence problem.
• Scanning the axis orthogonal
to the slit.
13. 13
Lecture 5: Pattern Projection Techniques
• A pattern is encoded when after projecting it onto a surface, a set of regions
of the observed projection can be easily matched with the original pattern.
Example: pattern with two-encoded-columns
• The process of matching an image region with its corresponding pattern
region is known as pattern decoding similar to searching correspondences
• Decoding a projected pattern allows a large set of correspondences to be
easily found thanks to the a priori knowledge of the light pattern
Pixels in red and yellow
are directly matched
with the pattern columns
Codification using
colors
Object
scene
5.2 Coded structured light
14. 14
Lecture 5: Pattern Projection Techniques
• Two ways of encoding the correspondences: single axis and two axes
codification it determines how the triangulation is calculated
• Decoding the pattern means locating points in the camera image whose
corresponding point in the projector pattern is a priori known
Two-axes encoding
Triangulation by
line-to-plane
intersection
Triangulation by
line-to-line
intersection
Single-axis encoding
Encoded Axis
5.2 Coded structured light
15. 15
Lecture 5: Pattern Projection Techniques
AXIS CODIFICATION
• Single Axis
- Row-coded patterns
- Column-coded patterns
• Both Axes
• Static Scenes
- Projection of a set of patterns.
• Moving Scenes
- Projection of a unique pattern.
SCENE APPLICABILITY
CODING STRATEGY
• Periodical
- The codification of the tokens
is repeated periodically.
• Absolute
- Each token is uniquely encoded
• Binary
• Grey Levels
• Colour
PIXEL DEPTH
5.2 Coded structured light
16. 16
Lecture 5: Pattern Projection Techniques
Binary codes
Posdamer et al., Inokuchi et al.,
Minou et al., Trobina, Valkenburg
and McIvor, Skocaj and Leonardis,
Rocchin et al., …
n-ary codes
Caspi et al., Horn and Kiryati,
Osawa et al.,…
Gray code + Phase
shifting
Bergmann, Sansoni et al., Wiora,
Gühring, …
TIME-
MULTIPLEXING
Hybrid methods
K. Sato, Hall-Holt and
Rusinkiewicz, Wang et al., …
Non-formal
codification
Maruyama and Abe, Durdle et al.,
Ito and Ishii, Boyer and Kak, Chen
et al., …
De Bruijn sequences
Hügli and Maître, Monks et al.,
Vuylsteke and Oosterlinck, Salvi et
al. Lavoi et al., Zhang et al., …
SPATIAL
CODIFICATION
M-arrays
Morita et al., Petriu et al., Kiyasu
et al., Spoelder et al., Griffin and
Yee, Davies and Nixon, Morano et
al., …
Grey levels
Carrihill and Hummel, Chazan and
Kiryati, Hung, ...DIRECT
CODIFICATION Colour
Tajima and Iwakawa, Smutny and
Pajdla, Geng, Wust and Capson, T.
Sato, …
5.2 Coded structured light
17. 17
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
18. 18
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
19. 19
Lecture 5: Pattern Projection Techniques
TIME-
MULTIPLEXING
Binary codes
Posdamer et al., Inokuchi et al.,
Minou et al., Trobina, Valkenburg
and McIvor, Skocaj and Leonardis,
Rocchin et al., …
n-ary codes
Caspi et al., Horn and Kiryati,
Osawa et al.,…
Gray code + Phase
shifting
Bergmann, Sansoni et al., Wiora,
Gühring, …
Hybrid methods
K. Sato, Hall-Holt and
Rusinkiewicz, Wang et al., …
SPATIAL
CODIFICATION
Non-formal
codification
Maruyama and Abe, Durdle et al.,
Ito and Ishii, Boyer and Kak, Chen
et al., …
De Bruijn sequences
Hügli and Maître, Monks et al.,
Vuylsteke and Oosterlinck, Salvi et
al. Lavoi et al., Zhang et al., …
M-arrays
Morita et al., Petriu et al., Kiyasu
et al., Spoelder et al., Griffin and
Yee, Davies and Nixon, Morano et
al., …
DIRECT
CODIFICATION
Grey levels
Carrihill and Hummel, Chazan and
Kiryati, Hung, ...
Colour
Tajima and Iwakawa, Smutny and
Pajdla, Geng, Wust and Capson, T.
Sato, …
5.3 Classification: Time multiplexing
20. 20
Lecture 5: Pattern Projection Techniques
• The time-multiplexing paradigm consists
in projecting a series of light patterns so
that every encoded point is identified with
the sequence of intensities that receives
• The most common structure of the
patterns is a sequence of stripes
increasing its length by the time
single-axis encoding
• Advantages:
– high resolution a lot of 3D points
– High accuracy (order of m)
– Robustness against colorful objects
(using binary patterns)
• Drawbacks:
– Static objects only
– Large number of patterns High
computing time
Pattern 1
Pattern 2
Pattern 3
Projected
over time
Example: 3 binary-
encoded patterns which
allows the measuring
surface to be divided in
8 sub-regions
5.3 Time multiplexing
21. 21
Lecture 5: Pattern Projection Techniques
5.3 Time-multiplexing: Binary codes (I)
Pattern 1
Pattern 2
Pattern 3
Projected
over time
• Every encoded point is
identified by the sequence
of intensities that receives
• n patterns must be
projected in order to encode
2n stripes
Example: 7 binary
patterns proposed by
Posdamer & Altschuler
…
Codeword of this píxel: 1010010 identifies
the corresponding pattern stripe
22. 22
Lecture 5: Pattern Projection Techniques
Posdamer et al.
Inokuchi et al.
Minou et al.
Trobina
Valkenburg and McIvor
Skocaj and Leonardis
Binary codes
Rocchini et al.
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
• Coding redundancy: every edge between adjacent stripes can be decoded
by the sequence at its left or at its right
5.3 Time-multiplexing: Binary codes (II)
23. 23
Lecture 5: Pattern Projection Techniques
Using a 4-ary code, 3 patterns
are used to encode 64 stripes
(Horn & Kiryati)
• n-ary codes reduce the number of patterns by increasing the number of
projected intensities (grey levels/colours) increases the basis of the code
• The number of patterns, the number of grey levels or colours and the number
of encoded stripes are strongly related fixing two of these parameters the
reamaining one is obtained
Using a binary code, 6
patterns are necessary
to encode 64 stripes
5.3 Time-multiplexing: N-ary codes (I)
24. 24
Lecture 5: Pattern Projection Techniques
Caspi et al. √ √ √
Horn and Kiryati √ √ √N-ary codes
Osawa et al. √ √ √
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
• n-ary codes reduce the number of patterns by increasing the number of
projected intensities (grey levels/colours)
5.3 Time-multiplexing: N-ary codes (II)
25. 25
Lecture 5: Pattern Projection Techniques
5.3 Time-multiplexing: Gray code+Phase shifting (I)
Gühring’s line-shift
technique
• A sequence of binary patterns
(Gray encoded) are projected in
order to divide the object in regions
• An additional periodical pattern is
projected
• The periodical pattern is projected
several times by shifting it in one
direction in order to increase the
resolution of the system similar to a
laser scanner
Example: three
binary patterns
divide the object in
8 regions
Without the binary
patterns we would
not be able to
distinguish among
all the projected
slits
Every slit always
falls in the same
region
26. 26
Lecture 5: Pattern Projection Techniques
Bergmann
Sansoni et al.
Wiora
Gray Code + Phase
Shift
Gühring
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
• A periodical pattern is shifted and projected several times in order to increase
the resolution of the measurements
• The Gray encoded patterns permit to differentiate among all the periods of the
shifted pattern
5.3 Time-multiplexing: Gray code+Phase shifting (II)
27. 27
Lecture 5: Pattern Projection Techniques
• In order to decode an illuminated point it is necessary to observe not only the
sequence of intensities received by such a point but also the intensities of few
(normally 2) adjacent points
• The number of projected patterns reduces thanks to the spatial information that is
taken into account
Hall-Holt and
Rusinkiewicz
technique:
4 patterns with 111
binary stripes
Edges encoding: 4x2
bits (every adjacent
stripe is a bit)
1
1
1
1
1
0
0
0 Pattern 1
Pattern 2
Pattern 3
Pattern 4
Edge codeword:
10110101
5.3 Time-multiplexing: Hybrid methods (I)
28. 28
Lecture 5: Pattern Projection Techniques
K. Sato
Hall-Holt and Rusinkiewicz Hybrid methods
Wang et al.
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.3 Time-multiplexing: Hybrid methods (II)
30. 30
Lecture 5: Pattern Projection Techniques
Types of techniques
Time-multiplexing
• Highest resolution
• High accuracy
• Easy implementation
• Large number of patterns
• Only motionless objects
Spatial codification
• A unique pattern is
required
• Can measure moving
objects
• Lower resolution than time-
multiplexing
• More complex decoding stage
• Occlusions problem
Direct codification
• High resolution
• Few patterns
• Very sensitive to image noise
cameras with large depth-per-pixel
required
• Sensitive to limited bandwith of
LCD projectors special projector
devices are usually required
• Only motionless objects
5.3 Time-multiplexing: Conclusions
31. 31
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
32. 32
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
33. 33
Lecture 5: Pattern Projection Techniques
TIME-
MULTIPLEXING
Binary codes
Posdamer et al., Inokuchi et al.,
Minou et al., Trobina, Valkenburg
and McIvor, Skocaj and Leonardis,
Rocchin et al., …
n-ary codes
Caspi et al., Horn and Kiryati,
Osawa et al.,…
Gray code + Phase
shifting
Bergmann, Sansoni et al., Wiora,
Gühring, …
Hybrid methods
K. Sato, Hall-Holt and
Rusinkiewicz, Wang et al., …
SPATIAL
CODIFICATION
Non-formal
codification
Maruyama and Abe, Durdle et al.,
Ito and Ishii, Boyer and Kak, Chen
et al., …
De Bruijn sequences
Hügli and Maître, Monks et al.,
Vuylsteke and Oosterlinck, Salvi et
al. Lavoi et al., Zhang et al., …
M-arrays
Morita et al., Petriu et al., Kiyasu
et al., Spoelder et al., Griffin and
Yee, Davies and Nixon, Morano et
al., …
DIRECT
CODIFICATION
Grey levels
Carrihill and Hummel, Chazan and
Kiryati, Hung, ...
Colour
Tajima and Iwakawa, Smutny and
Pajdla, Geng, Wust and Capson, T.
Sato, …
5.4 Spatial Codification
34. 34
Lecture 5: Pattern Projection Techniques
• Spatial codification paradigm encodes a set of points with the information contained in a
neighborhood (called window) around them
• The codification is condensed in a unique pattern instead of multiplexing it along time
• The size of the neighborhood (window size) is proportional to the number of encoded
points and inversely proportional to the number of used colors
• The aim of these techniques is to obtain a one-shot measurement system moving
objects can be measured
• Advantages:
• Moving objects supported
• Possibility to condense the codification
into a unique pattern
• Drawbacks:
• Discontinuities on the object surface can
produce erroneous window decoding
(occlusions problem)
• The higher the number of used colours,
the more difficult to correctly identify
them when measuring non-neutral
coloured surfaces
5.4 Spatial Codification
35. 35
Lecture 5: Pattern Projection Techniques
• The first group of techniques that appeared used codification schemes with no
mathematical formulation.
• Drawbacks:
- the codification is not optimal and often produces ambiguities since
different regions of the pattern are identical
-the structure of the pattern is too complex for a good image processing
Maruyama and Abe
complex structure
based on slits
containing random cuts
Durdle et al. periodic pattern
5.4 Spatial Codification: Non-formal codification (I)
36. 36
Lecture 5: Pattern Projection Techniques
Maruyama and Abe
Durdle et al.
Ito and Ishii
Boyer and Kak
Non-formal
codification
Chen et al.
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.4 Spatial Codification: Non-formal codification (II)
37. 37
Lecture 5: Pattern Projection Techniques
• Formulation:
Given P={1,2,...,p} set of colours.
• We want to determine S={s1,s2,...sn} sequence of coloured slits.
Node: {ijk}
Number of nodes: p3 nodes.
Transition {ijk} {rst} j = r, k = s
• The problem is reduced to obtain the path which visits all the nodes of the
graph only once (a simple variation of the Salesman’s problem).
– Backtracking based solution.
– Deterministic and optimally solved by Griffin.
• A De Bruijn sequence (or pseudorrandom sequence) of order m over an alphabet of n
symbols is a circular string of length nm that contains every substring of length m exactly once
(in this case the windows are unidimensional).
1000010111101001
m=4 (window size)
n=2 (alphabet symbols)
m = 3 (window size)
n = p (alphabet symbols)
3
pVR
5.4 Spatial Codification: De Bruijn sequences (I)
38. 38
Lecture 5: Pattern Projection Techniques
Path: (111),(112),(122),(222),(221),(212),(121),(211).
Slit colour sequence:111,2,2,2,1,2,1,1 Maximum 10 slits.
‘1’ Red
‘2’ Green
111
112
121
212
122
211
221
222
m = 3
n = 2
82
2
33
2
pVR
p
Example:
5.4 Spatial Codification: De Bruijn sequences (II)
39. 39
Lecture 5: Pattern Projection Techniques
• The De Bruijn sequences are used to define coloured slit patterns (single axis codification) or
grid patterns (double axis codification)
• In order to decode a certain slit it is only necessary to identify one of the windows in which
it belongs to
Zhang et al.: 125 slits encoded
with a De Bruijn sequence of 5
colors and window size of 3 slits
Salvi et al.: grid of 2929 where a De Bruijn
sequence of 3 colors and window size of 3 slits
is used to encode the vertical and horizontal
slits
5.4 Spatial Codification: De Bruijn sequences (III)
40. 40
Lecture 5: Pattern Projection Techniques
Hügli and Maître
Monks et al.
Salvi et al.
Lavoie et al.
De Bruijn sequences
Zhang et al.
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.4 Spatial Codification: De Bruijn sequences (IV)
41. 41
Lecture 5: Pattern Projection Techniques
• An m-array is the bidimensional extension of a De Bruijn sequence. Every
window of wh units appears only once. The window size is related with the size
of the m-array and the number of symbols used
0 0 1 0 1 0
0 1 0 1 1 0
1 1 0 0 1 1
0 0 1 0 1 0
Morano et al. M-array
represented with an
array of coloured dots
Example: binary m-
array of size 46
and window size of
22
M-array proposed by
Vuylsteke et al.
Represented with
shape primitives
5.4 Spatial Codification: M-arrays (I)
42. 42
Lecture 5: Pattern Projection Techniques
Morita et al.
Petriu et al.
Vuylsteke and Oosterlinck
Kiyasu et al.
Spoelder et al.
Griffin and Yee
Davies and Nixon
M-arrays
Morano et al.
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.4 Spatial Codification: M-arrays (II)
44. 44
Lecture 5: Pattern Projection Techniques
Types of techniques
Time-multiplexing
• Highest resolution
• High accuracy
• Easy implementation
• Large number of patterns
• Only motionless objects
Spatial codification
• A unique pattern is
required
• Can measure moving
objects
• Lower resolution than time-
multiplexing
• More complex decoding stage
• Occlusions problem
Direct codification
• High resolution
• Few patterns
• Very sensitive to image noise
cameras with large depth-per-pixel
required
• Sensitive to limited bandwith of
LCD projectors special projector
devices are usually required
• Only motionless objects
5.4 Spatial Codification: Results
45. 45
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
46. 46
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
47. 47
Lecture 5: Pattern Projection Techniques
TIME-
MULTIPLEXING
Binary codes
Posdamer et al., Inokuchi et al.,
Minou et al., Trobina, Valkenburg
and McIvor, Skocaj and Leonardis,
Rocchin et al., …
n-ary codes
Caspi et al., Horn and Kiryati,
Osawa et al.,…
Gray code + Phase
shifting
Bergmann, Sansoni et al., Wiora,
Gühring, …
Hybrid methods
K. Sato, Hall-Holt and
Rusinkiewicz, Wang et al., …
SPATIAL
CODIFICATION
Non-formal
codification
Maruyama and Abe, Durdle et al.,
Ito and Ishii, Boyer and Kak, Chen
et al., …
De Bruijn sequences
Hügli and Maître, Monks et al.,
Vuylsteke and Oosterlinck, Salvi et
al. Lavoi et al., Zhang et al., …
M-arrays
Morita et al., Petriu et al., Kiyasu
et al., Spoelder et al., Griffin and
Yee, Davies and Nixon, Morano et
al., …
DIRECT
CODIFICATION
Grey levels
Carrihill and Hummel, Chazan and
Kiryati, Hung, ...
Colour
Tajima and Iwakawa, Smutny and
Pajdla, Geng, Wust and Capson, T.
Sato, …
5.5 Direct Codification
48. 48
Lecture 5: Pattern Projection Techniques
• Every encoded pixel is identified by its own intensity/colour
• Since the codification is usually condensed in a unique pattern, the spectrum of
intensities/colours used is very large
• Additional reference patterns must be projected in order to differentiate among all the
projected intensities/colours:
• Ambient lighting (black pattern)
• Full illuminated (white pattern)
• …
• Advantages:
– Reduced number of patterns
– High resolution can be teorically achieved (all points are coded)
• Drawbacks:
– Very noisy in front of reflective properties of the objects, non-linearities in
the camera spectral response and projector spectrum non-standard
light emitters are required in order to project single wave-lengths
– Low accuracy (order of 1 mm)
5.5 Direct Codification
49. 49
Lecture 5: Pattern Projection Techniques
• Every encoded point of the pattern is identified by its intensity level
Carrihill and Hummel
Intensity Ratio Sensor: fade
from black to white
Requirements to
obtain high
resolution
Every slit is identified by its own intensity
• Every slit must be projected using a single wave-length
• Cameras with large depth-per-pixel (about 11 bits) must
be used in order to differentiate all the projected intensities
5.5 Direct Codification: Grey levels (I)
50. 50
Lecture 5: Pattern Projection Techniques
Carrihill and Hummel
Chazan and Kiryati Grey levels
Hung
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.5 Direct Codification: Grey levels (II)
51. 51
Lecture 5: Pattern Projection Techniques
• Every encoded point of the pattern is identified by its colour
Tajima and
Iwakawa rainbow
pattern
(the rainbow is
generated with a
source of white light
passing through a
crystal prism)
T. Sato patterns capable of
cancelling the object colour
by projecting three shifted
patterns
(it can be implemented with an
LCD projector if few colours are
projected drawback: the
pattern becomes periodic in
order to maintain a good
resolution)
5.5 Direct Codification: Colour (I)
52. 52
Lecture 5: Pattern Projection Techniques
Tajima and Iwakawa
Smutny and Pajdla
Geng
Wust and Capson
Colour
T. Sato
Static
Scene applicability
Moving
Binary
Grey levelsPixel depth
Colour
Periodical
Coding strategy
Absolute
5.5 Direct Codification: Colour (II)
54. 54
Lecture 5: Pattern Projection Techniques
Types of techniques
Time-multiplexing
• Highest resolution
• High accuracy
• Easy implementation
• Large number of patterns
• Only motionless objects
Spatial codification
• A unique pattern is
required
• Can measure moving
objects
• Lower resolution than time-
multiplexing
• More complex decoding stage
• Occlusions problem
Direct codification
• High resolution
• Few patterns
• Very sensitive to image noise
cameras with large depth-per-pixel
required
• Sensitive to limited bandwith of
LCD projectors special projector
devices are usually required
• Only motionless objects
5.5 Direct Codification: Conclusions
55. 55
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
56. 56
Lecture 5: Pattern Projection Techniques
5. Pattern Projection Techniques
5.1 Passive vs active stereo
5.2 Coded structured light
5.3 Classification: Time multiplexing
5.4 Classification: Spatial codification
5.5 Classification: Direct codification
5.6 Optimising De Bruijn patterns
5.7 Implementation of a De Bruijn pattern
Contents
57. 57
Lecture 5: Pattern Projection Techniques
Guidelines
Requirements Best technique
• High accuracy
• Highest resolution
• Static objects
• No matter the number of
patterns
Phase shift + Gray code
Gühring’s line-shift technique
• High accuracy
• High resolution
• Static objects
• Minimum number of patterns
N-ary pattern Horn & Kiryati
Caspi et al.
• High accuracy
• Good resolution
• Moving objects
Optimised Bruijn pattern
Salvi and Pagés.
59. 59
Lecture 5: Pattern Projection Techniques
Typical one-shot patterns
Stripe pattern Grid pattern
De Bruijn codification
M-array codification
Array of dots
Array of shape
primitives
Multi-slit pattern
Checkerboard
pattern
Image by Li Zhang
60. 60
Lecture 5: Pattern Projection Techniques
Best one-shot patterns
De Bruijn
patterns
Stripe
patterns
High resolution and good accuracy
Multi-slit
patterns
High accuracy and good resolution
Grid patterns Low resolution
M-array
patterns
Array of dots
Low resolution and inaccurate sub-pixel
localisation of the dots
Shape
primitives
Low accuracy and difficult sub-pixel
localisation of shape primitives
Checkerboard Low resolution
61. 61
Lecture 5: Pattern Projection Techniques
Optimising De Bruijn patterns: interesting features
Optimisation Advantages
Maximising resolution
Larger number of correspondences in
a single shot
Maximising accuracy Better quality in the 3D reconstruction
Minimising the window
size
More robustness against
discontinuities in the object surface
Minimising the number
of colours
More robustness against non-neutral
coloured objects and noise
62. 62
Lecture 5: Pattern Projection Techniques
Optimisation: maximising resolution
Stripe patterns: achieve maximum
resolution since they are formed by
adjacent bands of pixels.
Multi-slit patterns: the maximum resolution
is not achieved since black gaps are
introduced between the slits
Ideal pattern: the one which downsamples the projector
resolution so that all the projected pixels are perceived in the
camera image in fact only columns or rows must be identified
in order to triangulate 3D points.
63. 63
Lecture 5: Pattern Projection Techniques
Optimisation: maximising accuracy
Ideal pattern: multi-slit patterns allow intensity peaks to be
detected with precise sub-pixel accuracy
Multi-slit pattern Stripe pattern
Edge detection between
stripes: need to find edges in
the three RGB channels
the location of the edges
does not coincide
Figure by Jens Gühring
RGB channels
intensity profile
of a row of the
image
64. 64
Lecture 5: Pattern Projection Techniques
Optimisation: minimising the window
size and the number of colours
Maximising Minimising
Number
of
colours
• Larger resolution
• Smaller distance in the Hue
space more difficult colour
identification
• Smaller resolution
• Larger distance in the Hue
space Easier colour
identification
Window
size
• Larger resolution
• Danger to violate the local
smoothness assumption
• Smaller resolution
• More robustness against
surface discontinuities
If both the number of colours and the window
size are minimised the resolution decreases
65. 65
Lecture 5: Pattern Projection Techniques
Optimising De Bruijn patterns: summary
Optimisation Best pattern
Maximising resolution Stripe pattern
Maximising accuracy Multi-slit pattern
Minimising the window
size and the number of
colours preserving a
good resolution
Stripe pattern + multi-slit pattern
66. 66
Lecture 5: Pattern Projection Techniques
A new hybrid pattern
intensity
Horizontal scanline
Combination of the
advantages of stripe patterns
and multi-slit patterns
Stripe pattern in the RGB
space
Multi-slit pattern in the
Luminance channelintensity
Horizontal scanline
intensity
Horizontal
scanline
Projected luminance profile
Perceived luminance profile
67. 67
Lecture 5: Pattern Projection Techniques
The new coding strategy
Given n different values
of Hue and a window
size of length m
A pattern with 2nm stripes is defined
with a square Luminance profile with
alternating full-illuminated and half-
illuminated stripes
The pattern is divided in n periods
so that all the full-illuminated stripes
of every period share the same Hue
The half-illuminated stripes of every
period are coloured according to a
De Bruijn sequence of order m-1
and the same n Hue values
Example:
n=4, m=3
128 stripes
32 stripes32 stripes
16 coded stripes 16 coded stripes…
…
68. 68
Lecture 5: Pattern Projection Techniques
The new coding strategy
S={0010203112132233}
0=red; 1=green; 2=cyan; 3=blue
69. 69
Lecture 5: Pattern Projection Techniques
Implementation design of the coded
structured light technique
Colour
selection and
calibration
Colours
AM, Am
Geometric
calibration
K1, Pc, Pp
RGB channel
alignment
calibration
gHr, gHb
Peak
compensation
calibration
offsets
RGB
alignment
Image
rectification
Peak
detection
Peak
decoding
Peak
compensation
Colour
rectification
3D
reconstruction
Offline
processes
Online
processes
Radial
distortion
removal
Most of the processes of
this schema are valid for
any one-shot technique
based on colour
structured light
70. 70
Lecture 5: Pattern Projection Techniques
Offline processing: RGB channel
misalignment calibration
The grid cross-points coordinates are
located with sub-pixel accuracy in each RGB
channel.
Two homographies gHr and gHb are
calculated in order to reduce the
misalignment between the red and the blue
channel with respect to the green.
RGB image
red channel
green channel
blue channel
red grid
green grid
blue grid
It should be
a white grid
Homographies
71. 71
Lecture 5: Pattern Projection Techniques
Offiline processing: geometric calibration
- Camera: Pinhole + Radial lens distortion
- Projector: like a reverse camera
72. 72
Lecture 5: Pattern Projection Techniques
Offline processing: colour selection (I)
Example:
selection of
n=3 colours
Hue
1) Select n
equi-spaced
Hue levels
2) Project the n Hue values with different Luminance values and
interpolate their response curve.
Each RGB channel has different sensitivity the intensity perceived is
in function of the projected Hue
3) Given the maximum and
minimum levels of luminances that
we want to perceive the
corresponding projecting
luminances for every Hue can be
chosedemitted Luminance
perceivedLuminance
73. 73
Lecture 5: Pattern Projection Techniques
Offline processing: colour selection (II)
The projector-camera system introduces a strong colour
cross-talk which makes colour identification difficult.
The cross-talk can be reduced with a calibration procedure:
• a pure red, green and blue patterns are projected over a colour-
neutral panel.
• a linear mapping is calculated between the colour instructions
and the perceived ones a cross-talk matrix is obtained
• this matrix approximates the behaviour of the projector-camera
system This matrix will be used online to reduce the cross-talk.
The highest cross-talk exists between the green and the red channel
74. 74
Lecture 5: Pattern Projection Techniques
Offline processing: peak compensation calibration
Every peak of luminosity is affected by the colours of the surrounding
stripes the detected peak position is affected by an offset
Peak compensation calibration: the pattern containing both full and half-
illuminated stripes is projected and then the pattern only containing the
full-illuminated stripes is also projected
Maxima peak
sub-pixel position
-
offsets
The same process is made
with the minima peaks
Maxima peak
sub-pixel position
75. 75
Lecture 5: Pattern Projection Techniques
Online processing
Colours
AM, Am
K1, Pc, Pp
gHr, gHb offsets
RGB
alignment
Image
rectification
Peak
detection
Peak
decoding
Peak
compensation
Colour
rectification
3D
reconstruction
Online
processes
Radial
distortion
removal
Stripes location: binarised 2nd
derivative of the luminance channel
Radial
distortion
removal
RGB
alignment
Image
rectification
Peak
detection
Peak
decoding
Colour
rectification
Peak decoding
1 number of period
De Bruijn: 00102031121322330
Position of the stripe inside the period
Sub-pixel location of each positive and negative
luminance peak: Blais and Rioux detector
Colour rectification by using the inverse
of the calibrated cross-talk matrix
Peak
compensation
3D
reconstruction
78. 78
Lecture 5: Pattern Projection Techniques
Conclusions
• A new coding strategy for one-shot patterns has been
presented.
• The new pattern combines the high resolution of stripe-
patterns and the high accuracy of multi-slit patterns.
• A pattern with 2nm stripes is achieved with only n levels of Hue
and a window property equal to m. (ex. 2*43 = 128 stripes)
• Given the same parameters, stripe-patterns encoded with
classical De Bruijn sequences have a resolution of nm (ex.
43 = 64 stripes)
• The resolution has been doubled.
• The pattern has a sinusoidal profile in the luminance channel
so that maximum and minimum peaks can be accurately
detected with classical peak detectors.
n = Number of colours (4),
m = Window size (3)
79. 79
Lecture 5: Pattern Projection Techniques
Published Material
Journals
– J. Pagés, J. Salvi, J. Forest. Optimised De Bruijn patterns for one-shot shape
acquisition. Image and Vision Computing. 23(8), pp 707-720, August 2005.
– J. Salvi, J. Pagés, J. Batlle. Pattern Codification Strategies in Structured Light Systems.
Pattern Recognition 37(4), pp 827-849, April 2004.
– J. Batlle, E. Mouaddib and J. Salvi. A Survey: Recent Progress in Coded Structured
Light as a Technique to Solve the Correspondence Problem. Pattern Recogniton 31(7),
pp 963-982, July 1998.
– J. Salvi, J. Batlle and E. Mouaddib. A Robust-Coded Pattern Projection for Dynamic 3D
Scene Measurement. Pattern Recognition Letters 19, pp 1055-1065, September 1998.
Recent Conferences
– J. Pagès, J. Salvi and J. Forest. Optimised De Bruijn Patterns for One-Shot Shape
Acquisition. IEEE Int. Conf. on Pattern Recognition, ICPR 2004, Cambridge, Great
Britain, 2004.
– J. Pagès, J. Salvi and C. Matabosch. Implementation of a robust coded structured light
technique for dynamic 3D measurements. IEEE Int. Conf. on Image Processing, ICIP
2003, Barcelona, Spain, Septembre 2003.
– J. Pagès, J. Salvi, R. García and C. Matabosch. Overview of coded light projection
techniques for automatic 3D profiling. IEEE Int. Conf. on Robotics and Automation,
ICRA 2003, Taipei, Taiwan, May 2003.
More Information: http://eia.udg.es/~qsalvi/