Four experiments were conducted using a paint can hanging from a spring. In the first experiment, the paint can oscillated purely vertically, and PCA isolated this behavior in a single principal component, capturing 95% of the variance. When noise was added by shaking the cameras in the second experiment, PCA was still able to isolate the oscillatory behavior but with less accuracy. In experiments three and four where the paint can moved in both vertical and horizontal directions, PCA extracted the multidimensional behavior with the expected rank and reasonable accuracy.
OPTIMAL BEAM STEERING ANGLES OF A SENSOR ARRAY FOR A MULTIPLE SOURCE SCENARIOcsandit
We present the gradient and Hessian of the trace of the multivariate Cramér-Rao bound (CRB)
formula for unknown impinging angles of plane waves with non-unitary beamspace measurements,. These gradient and Hessian can be used to find the optimal beamspace
transformation matrix, i.e., the optimum beamsteering angles, using the Newton-Raphson iteration. These trace formulas are particularly useful to deal with the multiple source senario.
We also show the mean squred error (MSE) performance gain of the optimally steered beamspace measurements compared with the usuall DFT steered measurements, when the angle
of arrivals (AOAs) are estimated with stochastic maximum likelihood (SMLE) algorithm.
Investigation of repeated blasts at Aitik mine using waveform cross correlationIvan Kitov
We present results of signal detection from repeated events at the Aitik and Kiruna mines in Sweden as based on waveform cross correlation. Several advanced methods based on tensor Singular Value Decomposition is applied to waveforms measured at seismic array ARCES, which consists of three-component sensors.
OPTIMAL BEAM STEERING ANGLES OF A SENSOR ARRAY FOR A MULTIPLE SOURCE SCENARIOcsandit
We present the gradient and Hessian of the trace of the multivariate Cramér-Rao bound (CRB)
formula for unknown impinging angles of plane waves with non-unitary beamspace measurements,. These gradient and Hessian can be used to find the optimal beamspace
transformation matrix, i.e., the optimum beamsteering angles, using the Newton-Raphson iteration. These trace formulas are particularly useful to deal with the multiple source senario.
We also show the mean squred error (MSE) performance gain of the optimally steered beamspace measurements compared with the usuall DFT steered measurements, when the angle
of arrivals (AOAs) are estimated with stochastic maximum likelihood (SMLE) algorithm.
Investigation of repeated blasts at Aitik mine using waveform cross correlationIvan Kitov
We present results of signal detection from repeated events at the Aitik and Kiruna mines in Sweden as based on waveform cross correlation. Several advanced methods based on tensor Singular Value Decomposition is applied to waveforms measured at seismic array ARCES, which consists of three-component sensors.
Blind separation of complex-valued satellite-AIS data for marine surveillance...IJECEIAES
In this paper, the problem of the blind separation of complex-valued Satellite-AIS data for marine surveillance is addressed. Due to the specific properties of the sources under consideration: they are cyclo-stationary signals with two close cyclic frequencies, we opt for spatial quadratic time-frequency domain methods. The use of an additional diversity, the time delay, is aimed at making it possible to undo the mixing of signals at the multi-sensor receiver. The suggested method involves three main stages. First, the spatial generalized mean Ambiguity function of the observations across the array is constructed. Second, in the Ambiguity plane, Delay-Doppler regions of high magnitude are determined and Delay-Doppler points of peaky values are selected. Third, the mixing matrix is estimated from these Delay-Doppler regions using our proposed non-unitary joint zero-(block) diagonalization algorithms as to perform separation.
Calibrating a CFD canopy model with the EC1 vertical profiles of mean wind sp...Stephane Meteodyn
For some projects, applying the basic rules of EC1 is not sufficient, and it is required to get a more accurate estimation of the wind speed on the construction site. This can be done by using computational fluid dynamics codes which have the advantage, both to take into account of the terrain inhomogeneity and to calculate 3D orographic effects. In this way, the orography and roughness effects are coupled as they are in the real world. However, applying CFD computations must be in coherence with EC1 code. Then it is necessary to calibrate the ground friction for low roughness terrains as well as the drag force and turbulence production in case of high roughness lengths due to the presence of a canopy (forests or built areas). That is the condition for such methods to be commonly used and agreed by Building Control Officers. In this mind, TopoWind has been developed especially for wind design applications and can be a very useful, practical and objective tool for wind design engineers. The canopy model implemented in TopoWind has been calibrated in order to get the mean wind and turbulence profiles as defined in the EC1 for standard terrains. In this way, TopoWind computations satisfy the continuity between the EC1 values for homogeneous terrains and the more complex cases involving inhomogeneous roughness or orographic effects
Hyperon and charm baryons masses from twisted mass Lattice QCDChristos Kallidonis
Talk given at the University of Bonn, Germany. We present results on the masses of all forty light, strange and charm baryons from Lattice QCD simulations. We elaborate on the various methods and techniques followed and examine systematic uncertainties related to isospin breaking effects and finite lattice spacing.
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equationijcga
In mechanical engineering educations, simulating fluid thermodynamics is rather helpful for students to understand the fluid’s natural behaviors. However, rendering both high-quality and realtime simulations for fluid dynamics are rather challenging tasks due to their intensive computations. So, in order to speed up the simulations, we have taken advantage of GPU acceleration techniques to simulate interactive fluid thermodynamics in real-time. In this paper, we present an elegant, basic, but practical OpenGL/SL framework for fluid simulation with a heat map rendering. By solving Navier-Stokes equations coupled with the heat diffusion equation, we validate our framework through some real-case studies of the smoke-like fluid rendering such as their interactions with moving obstacles and their heat diffusion effects. As shown in Fig. 1, a group of experimental results demonstrates that our GPU-accelerated solver of Navier-Stokes equations with heat transfer could give the observers impressive real-time and realistic rendering results.
Velocity analysis is one of the prime aspects of seismic data processing. Velocity analysis is an
iterative process and one keeps on improving subsurface velocity field at different stages of processing. These
analyses require an initial velocity field, but in a virgin area, it is required, to estimate this, from the seismic
data itself by employing CVS (Constant Velocity Stack) or t
2
-x
2 methods. In the present context, we demonstrate
using field data, that t
2
-x
2 method based velocities are more reliable than CVS based velocities for the
subsequent velocity analysis purposes.
Fractal dimensions of 2d quantum gravityTimothy Budd
After introducing 2d quantum gravity, both in its discretized form in
terms of random triangulations and its continuum description as
Quantum Liouville theory, I will give a (non-exhaustive) review of the
current understanding of its fractal dimensions. In particular, I will
discuss recent analytic and numerical results relating to the
Hausdorff dimension and spectral dimension of 2d gravity coupled to
conformal matter fields.
PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION cscpconf
Texture is the term used to characterize the surface of a given object or phenomenon and is an
important feature used in image processing and pattern recognition. Our aim is to compare
various Texture analyzing methods and compare the results based on time complexity and
accuracy of classification. The project describes texture classification using Wavelet Transform
and Co occurrence Matrix. Comparison of features of a sample texture with database of
different textures is performed. In wavelet transform we use the Haar, Symlets and Daubechies
wavelets. We find that, thee ‘Haar’ wavelet proves to be the most efficient method in terms of
performance assessment parameters mentioned above. Comparison of Haar wavelet and Cooccurrence
matrix method of classification also goes in the favor of Haar. Though the time
requirement is high in the later method, it gives excellent results for classification accuracy
except if the image is rotated.
A comparison of SIFT, PCA-SIFT and SURFCSCJournals
This paper compares three robust feature detection methods, they are, Scale Invariant Feature Transform (SIFT), Principal Component Analysis (PCA) -SIFT and Speeded Up Robust Features (SURF). Lowe presented SIFT [1], which was successfully used in recognition, stitching and many other applications because of its robustness. Yan Ke [2] gave a change of SIFT by using PCA to normalize the gradient patch instead of histogram. H. Bay [3] presented a faster method for SURF, which used Fast-Hessian detector. The performance of the three methods is compared for scale changes, rotation , blur, illumination changes and affine transformations, all of which uses repeatability as an evaluation measurement. Additionally, RANSAC is used to reject the inconsistent matches [4]. SIFT presents its stability in most situation except rotation and illumination changes. SURF is the fastest one with good performance as the same as SIFT, PCA-SIFT shows its advantages in rotation, blur and illumination changes.
Blind separation of complex-valued satellite-AIS data for marine surveillance...IJECEIAES
In this paper, the problem of the blind separation of complex-valued Satellite-AIS data for marine surveillance is addressed. Due to the specific properties of the sources under consideration: they are cyclo-stationary signals with two close cyclic frequencies, we opt for spatial quadratic time-frequency domain methods. The use of an additional diversity, the time delay, is aimed at making it possible to undo the mixing of signals at the multi-sensor receiver. The suggested method involves three main stages. First, the spatial generalized mean Ambiguity function of the observations across the array is constructed. Second, in the Ambiguity plane, Delay-Doppler regions of high magnitude are determined and Delay-Doppler points of peaky values are selected. Third, the mixing matrix is estimated from these Delay-Doppler regions using our proposed non-unitary joint zero-(block) diagonalization algorithms as to perform separation.
Calibrating a CFD canopy model with the EC1 vertical profiles of mean wind sp...Stephane Meteodyn
For some projects, applying the basic rules of EC1 is not sufficient, and it is required to get a more accurate estimation of the wind speed on the construction site. This can be done by using computational fluid dynamics codes which have the advantage, both to take into account of the terrain inhomogeneity and to calculate 3D orographic effects. In this way, the orography and roughness effects are coupled as they are in the real world. However, applying CFD computations must be in coherence with EC1 code. Then it is necessary to calibrate the ground friction for low roughness terrains as well as the drag force and turbulence production in case of high roughness lengths due to the presence of a canopy (forests or built areas). That is the condition for such methods to be commonly used and agreed by Building Control Officers. In this mind, TopoWind has been developed especially for wind design applications and can be a very useful, practical and objective tool for wind design engineers. The canopy model implemented in TopoWind has been calibrated in order to get the mean wind and turbulence profiles as defined in the EC1 for standard terrains. In this way, TopoWind computations satisfy the continuity between the EC1 values for homogeneous terrains and the more complex cases involving inhomogeneous roughness or orographic effects
Hyperon and charm baryons masses from twisted mass Lattice QCDChristos Kallidonis
Talk given at the University of Bonn, Germany. We present results on the masses of all forty light, strange and charm baryons from Lattice QCD simulations. We elaborate on the various methods and techniques followed and examine systematic uncertainties related to isospin breaking effects and finite lattice spacing.
Fast Fluid Thermodynamics Simulation By Solving Heat Diffusion Equationijcga
In mechanical engineering educations, simulating fluid thermodynamics is rather helpful for students to understand the fluid’s natural behaviors. However, rendering both high-quality and realtime simulations for fluid dynamics are rather challenging tasks due to their intensive computations. So, in order to speed up the simulations, we have taken advantage of GPU acceleration techniques to simulate interactive fluid thermodynamics in real-time. In this paper, we present an elegant, basic, but practical OpenGL/SL framework for fluid simulation with a heat map rendering. By solving Navier-Stokes equations coupled with the heat diffusion equation, we validate our framework through some real-case studies of the smoke-like fluid rendering such as their interactions with moving obstacles and their heat diffusion effects. As shown in Fig. 1, a group of experimental results demonstrates that our GPU-accelerated solver of Navier-Stokes equations with heat transfer could give the observers impressive real-time and realistic rendering results.
Velocity analysis is one of the prime aspects of seismic data processing. Velocity analysis is an
iterative process and one keeps on improving subsurface velocity field at different stages of processing. These
analyses require an initial velocity field, but in a virgin area, it is required, to estimate this, from the seismic
data itself by employing CVS (Constant Velocity Stack) or t
2
-x
2 methods. In the present context, we demonstrate
using field data, that t
2
-x
2 method based velocities are more reliable than CVS based velocities for the
subsequent velocity analysis purposes.
Fractal dimensions of 2d quantum gravityTimothy Budd
After introducing 2d quantum gravity, both in its discretized form in
terms of random triangulations and its continuum description as
Quantum Liouville theory, I will give a (non-exhaustive) review of the
current understanding of its fractal dimensions. In particular, I will
discuss recent analytic and numerical results relating to the
Hausdorff dimension and spectral dimension of 2d gravity coupled to
conformal matter fields.
PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION cscpconf
Texture is the term used to characterize the surface of a given object or phenomenon and is an
important feature used in image processing and pattern recognition. Our aim is to compare
various Texture analyzing methods and compare the results based on time complexity and
accuracy of classification. The project describes texture classification using Wavelet Transform
and Co occurrence Matrix. Comparison of features of a sample texture with database of
different textures is performed. In wavelet transform we use the Haar, Symlets and Daubechies
wavelets. We find that, thee ‘Haar’ wavelet proves to be the most efficient method in terms of
performance assessment parameters mentioned above. Comparison of Haar wavelet and Cooccurrence
matrix method of classification also goes in the favor of Haar. Though the time
requirement is high in the later method, it gives excellent results for classification accuracy
except if the image is rotated.
A comparison of SIFT, PCA-SIFT and SURFCSCJournals
This paper compares three robust feature detection methods, they are, Scale Invariant Feature Transform (SIFT), Principal Component Analysis (PCA) -SIFT and Speeded Up Robust Features (SURF). Lowe presented SIFT [1], which was successfully used in recognition, stitching and many other applications because of its robustness. Yan Ke [2] gave a change of SIFT by using PCA to normalize the gradient patch instead of histogram. H. Bay [3] presented a faster method for SURF, which used Fast-Hessian detector. The performance of the three methods is compared for scale changes, rotation , blur, illumination changes and affine transformations, all of which uses repeatability as an evaluation measurement. Additionally, RANSAC is used to reject the inconsistent matches [4]. SIFT presents its stability in most situation except rotation and illumination changes. SURF is the fastest one with good performance as the same as SIFT, PCA-SIFT shows its advantages in rotation, blur and illumination changes.
A DIGITAL COLOR IMAGE WATERMARKING SYSTEM USING BLIND SOURCE SEPARATIONcsandit
An attempt is made to implement a digital color image-adaptive watermarking scheme in
spatial domain and hybrid domain i.e host image in wavelet domain and watermark in spatial
domain. Blind Source Separation (BSS) is used to extract the watermark The novelty of the
presented scheme lies in determining the mixing matrix for BSS model using BFGS (Broyden–
Fletcher–Goldfarb–Shanno) optimization technique. This method is based on the smooth and
textured portions of the image. Texture analysis is carried based on energy content of the
image (using GLCM) which makes the method image adaptive to embed color watermark.
The performance evaluation is carried for hybrid domain of various color spaces like YIQ, HSI
and YCbCr and the feasibility of optimization algorithm for finding mixing matrix is also
checked for these color spaces. Three ICA (Independent Component Analysis)/BSS algorithms
are used in extraction procedure ,through which the watermark can be retrieved efficiently . An
effort is taken to find out the best suited color space to embed the watermark which satisfies the
condition of imperceptibility and robustness against various attacks.
Boosting CED Using Robust Orientation Estimationijma
n this paper, Coherence Enhancement Diffusion (CED) is boosted feeding external orientation using new
robust orientation estimation. In CED, proper scale selection is very important as the gradient vector at
that scale reflects the orientation of local ridge. For this purpose a new scheme is proposed in which pre
calculated orientation, by using local and integration scales. From the experiments it is found the proposed
scheme is working much better in noisy environment as compared to the traditional Coherence
Enhancement Diffusion
Poster for our conference paper titled "4K Ultra High Definition Video Coding using Homogeneous Motion Discovery Oriented Prediction" published in the Digital Image Computing: Techniques and Applications (DICTA) 2017 conference.
Abstract: State of the art video compression techniques use the motion model to approximate geometric boundaries of moving objects where motion discontinuities occur. Motion hints based inter-frame prediction paradigm moves away from this redundant approach and employs an innovative framework consisting of motion hint fields that are continuous and invertible, at least, over their respective domains. However, estimation of motion hint is computationally demanding, in particular for high resolution video sequences. Discovery of homogeneous motion models and their associated masks over the current frame and then use these models and masks to form a prediction of the current frame, provides a computationally simpler approach to video coding compared to motion hint. In this paper, the potential of this coherent motion model based approach, equipped with bigger blocks, is investigated for coding 4K Ultra High Definition (UHD) video sequences. Experimental results show a savings in bit rate of 4.68% is achievable over standalone HEVC.
International Journal of Engineering Research and DevelopmentIJERD Editor
Electrical, Electronics and Computer Engineering,
Information Engineering and Technology,
Mechanical, Industrial and Manufacturing Engineering,
Automation and Mechatronics Engineering,
Material and Chemical Engineering,
Civil and Architecture Engineering,
Biotechnology and Bio Engineering,
Environmental Engineering,
Petroleum and Mining Engineering,
Marine and Agriculture engineering,
Aerospace Engineering.
Sub-windowed laser speckle image velocimetry by fast fourier transform technique
Abstract
In this work, laser speckle velocimetry, a unique optical method for velocity measurement of fluid flow has been described. A laser sheet is developed and is illuminated on microscopic seeded particles to produce the speckle pattern at the recording plane. Double frame- single-exposure speckle images are captured in such a way that the second speckle image is shifted exactly in a known direction. The auto-correlation method has the ambiguity of direction of flow. To rectify this, spatial shift of the second image has been premeditated. Cross-correlation of sub interrogation areas is obtained by Fast Fourier Transform technique. Four sub-windows processed to obtain the velocity information with vector map analysis precisely.
METHOD FOR THE DETECTION OF MIXED QPSK SIGNALS BASED ON THE CALCULATION OF FO...sipij
In this paper we propose the method for the detection of Carrier-in-Carrier signals using QPSK modulations. The method is based on the calculation of fourth-order cumulants. In accordance with the methodology based on the Receiver Operating Characteristic (ROC) curve, a threshold value for the decision rule is established. It was found that the proposed method provides the correct detection of the sum of QPSK signals for a wide range of signal-to-noise ratios and also for the different bandwidths of mixed signals. The obtained results indicate the high efficiency of the proposed detection method. The advantage of the proposed detection method over the “radiuses” method is also shown.
Segmentation Based Multilevel Wide Band Compression for SAR Images Using Coif...CSCJournals
Synthetic aperture radar (SAR) data represents a significant resource of information for a large variety of researchers. Thus, there is a strong interest in developing data encoding and decoding algorithms which can obtain higher compression ratios while keeping image quality to an acceptable level. In this work, results of different wavelet-based image compression and segmentation based wavelet image compression are assessed through controlled experiments on synthetic SAR images. The effects of dissimilar wavelet functions, number of decompositions are examined in order to find optimal family for SAR images. The choice of optimal wavelets in segmentation based wavelet image compression is coiflet for low frequency and high frequency component. The results presented here is a good reference for SAR application developers to choose the wavelet families and also it concludes that wavelets transform is rapid, robust and reliable tool for SAR image compression. Numerical results confirm the potency of this approach.
Boosting ced using robust orientation estimationijma
In this paper, Coherence Enhancement Diffusion (CED) is boosted feeding external orientation using new
robust orientation estimation. In CED, proper scale selection is very important as the gradient vector at
that scale reflects the orientation of local ridge. For this purpose a new scheme is proposed in which pre
calculated orientation, by using local and integration scales. From the experiments it is found the proposed
scheme is working much better in noisy environment as compared to the traditional Coherence
Enhancement Diffusion
Using Generic Image Processing Operations to Detect a Calibration GridJan Wedekind
Camera calibration is an important problem in 3D computer vision. The problem of determining the camera parameters has been studied extensively. However the algorithms for determining the required correspondences are either semi-automatic (i.e. they require user interaction) or they involve difficult to implement custom algorithms.
We present a robust algorithm for detecting the corners of a calibration grid and assigning the correct correspondences for calibration . The solution is based on generic image processing operations so that it can be implemented quickly. The algorithm is limited to distortion-free cameras but it could potentially be extended to deal with camera distortion as well. We also present a corner detector based on steerable filters. The corner detector is particularly suited for the problem of detecting the corners of a calibration grid.
- See more at: http://figshare.com/articles/Using_Generic_Image_Processing_Operations_to_Detect_a_Calibration_Grid/696880#sthash.EG8dWyTH.dpuf
A DIGITAL COLOR IMAGE WATERMARKING SYSTEM USING BLIND SOURCE SEPARATIONcscpconf
An attempt is made to implement a digital color image-adaptive watermarking scheme in spatial domain and hybrid domain i.e host image in wavelet domain and watermark in spatial
domain. Blind Source Separation (BSS) is used to extract the watermark The novelty of the presented scheme lies in determining the mixing matrix for BSS model using BFGS (Broyden–Fletcher–Goldfarb–Shanno) optimization technique. This method is based on the smooth and textured portions of the image. Texture analysis is carried based on energy content of the image (using GLCM) which makes the method image adaptive to embed color watermark. The performance evaluation is carried for hybrid domain of various color spaces like YIQ, HSI and YCbCr and the feasibility of optimization algorithm for finding mixing matrix is also checked for these color spaces. Three ICA (Independent Component Analysis)/BSS algorithms are used in extraction procedure ,through which the watermark can be retrieved efficiently . An
effort is taken to find out the best suited color space to embed the watermark which satisfies the condition of imperceptibility and robustness against various attacks.
Normalized averaging using adaptive applicability functions with applications...
videoMotionTrackingPCA
1. Motion Tracking in Video Data
Kellen Betts
Updated July 31, 2016
Abstract
In this project, four experiments are used to develop an algorithm for principal component
analysis (PCA) with singular value decomposition (SVD). We explore simple harmonic oscillations,
pendulum motion, and the effect of noise. The experimental apparatus is a paint can hanging
from a spring. The movement of the paint can is recorded by three cameras. The video files
from the cameras are processed to track the location coordinates of the paint can over the course
of the experiment. PCA is used to extract the dynamical behavior from the data by reducing
redundancy and identifying the directions with maximal variance. In the ideal case where the
paint can oscillates in a single direction, the PCA algorithm effectively isolates the behavior with
a rank one approximation. If noise is introduced by shaking the cameras, the PCA algorithm is still
able to isolate the oscillatory behavior but with less accuracy. Finally, if the paint can oscillates in
the vertical direction and swings or rotates in the horizontal direction, the PCA algorithm extracts
the multidimensional behavior with expected rank and reasonable accuracy.
1 Introduction
Four experiments are conducted using a paint can hanging from a spring. The movement of the paint
can is recorded by three independent cameras (iPhones). The four experiments are:
1. Test 1 (ideal case): A small displacement of the paint can in the z direction and the ensuing
oscillations. In this case, the entire motion is in the z directions with simple harmonic motion
being observed.
2. Test 2 (noisy case): Repeat the ideal case experiment, but this time introduce camera shake into
the video recording. This should make it more difficult to extract the simple harmonic motion.
3. Test 3 (horizontal displacement): In this case, the paint can is released off-center so as to produce
motion in the x − y plane as well as the z direction. Thus, there is both a pendulum motion and
a simple harmonic oscillations.
4. Test 4 (horizontal rotation): In this case, the mass is released off-center and rotates so as to
produce rotation in the x − y plane as well as oscillation in the z direction. Thus, there is both
a pendulum motion and a simple harmonic oscillations.
The primary objective in this project is to use principal component analysis (PCA), where singular
value decomposition (SVD) is a key tool, to extract the dynamics of the paint can from the camera
recordings by reducing redundancy and identifying the directions of maximal variance. The location of
the paint can is tracked in each video by isolating a target color on the can and logging its coordinates
in each frame. The coordinates from each video in a particular experiment are then compiled into a
matrix that comprises the data used in the PCA algorithm.
1
2. Kellen Betts videoMotionTrackingPCA 160731
2 Theoretical Background
The governing equation for this system is known,
d2
f
dt2
= −ω2
f (1)
where f (t) measures the displacement of the mass in the vertical direction. Equation 1 has the
analytical solution,
f (t) = A cos (ωt + ω0) (2)
The primary objective is to identify the motion of the paint can using PCA by removing redundancy
and identifying the maximal variance in the data. In the first experiment there is one degree of freedom
with the paint can oscillating in the vertical direction. However, the experimental setup includes three
streams of data collecting locations of the paint can in two directions. This means there is a lot of
redundancy in the incoming data.
Variance for a dataset a = (a1, a2, . . . , an) is calculated by,
σ2
a =
1
n − 1
aaT
(3)
and correlation between two datasets a and b is calculated by the covariance,
σ2
ab =
1
n − 1
abT
(4)
If two vectors are orthogonal then their dot product is zero, and so their covariance is zero. Conversely,
if the dot product is large and thus the covariance is large then the two vectors are related. Therefore,
covariance provides a measure of statistical dependency between two datasets.
For a matrix,
X Rm×n
(5)
the covariance matrix is calculated,
Cx =
1
n − 1
XXT
(6)
which can be written,
Cx =
σ2
x,a σ2
x,y,a σ2
x,x,a,b · · ·
... σ2
y,a
σ2
x,b
...
σ2
y,c
Rm×m
(7)
The diagonal of the covariance matrix contains the variance of each data stream and the off-diagonals
contain the covariance between pairs of the streams. This means the off-diagonals contain information
about redundancy in the data. Moreover, since dynamical behavior is characterized by change and
covariance is a measure of change between two data streams, then covariance(s) provides a measure of
dynamical behavior in a given dataset. In this project, three cameras are capturing data of the same
apparatus and so covariance provides a way to identify the dynamics of the paint can from the video
data.
For the matrix X (equation 5), the singular value decomposition (SVD) is defined,
X = UΣV ∗
(8)
2
3. Kellen Betts videoMotionTrackingPCA 160731
where Σ is a diagonal matrix of singular values σ that correspond to the square root of the eigenvalues
σi =
√
λi and are ordered based on size. U and V ∗
are orthonormal unitary transformations corre-
sponding to the orientation of the incoming data. Using the proper orthogonal modes from the SVD,
a low rank approximation can be calculated by the sum,
XN ≈
N
j=1
σjujv∗
j (9)
where N is a given rank. The 2-norm error for the approximation is given by,
X − XN 2 = σn+1 . (10)
One way to think about SVD is as a least squares fit in higher dimensional space where the elements
of Σ are ordered by their L2
energy. The energy for a given mode can be calculated,
energyi =
N
i=1 σi
n
i=1 σi
. (11)
Therefore, diagonalization with SVD is a transformation to a new orthonormal basis and provides
low rank approximation for a given dataset. To diagonalize the covariance matrix the transformation
variable Y is defined,
Y = U∗
X (12)
and the variance in Y (see Appendix C for derivation) is calculated,
CY =
1
n − 1
Σ2
. (13)
In this form the system is said to be written in terms of its principal components with the diagonal
matrix Σ2
containing variance measures in Y ordered based by size. This means that the dominant σ2
i
values reflect directions of maximal variance and allow a low rank approximation of the spatiotemporal
dynamics in the data.
3 Algorithm Implementation and Development
3.1 Position Measurements:
After importing the video data and extracting the data for a given frame, the first task is to identify the
x, y coordinates of the paint can in the frame. Initially, I attempted to implement a tracking algorithm
that got coordinates for the light on the top of the can by brightness. Based on the suggestion from
the Catalyst discussion board (megan970), I modified the algorithm to track the yellow color on the
paint can. There are five steps in the tracking algorithm that are repeated for each frame in a video:
1. Choosing target color
2. Getting individual frame
3. Building difference image
4. Identifying location of target color
The RGB values for the yellow color on the paint can are manually identified using a separate image
editing application similar to Photoshop. Since the color spectrum is different for each of the videos,
a subroutine targetColor.m is used to match RGB values to video. A given video is then passed into
a loop that will process each frame. Inside the loop, the frame is converted to an image and double
3
4. Kellen Betts videoMotionTrackingPCA 160731
precision format. Each color channel is then isolated and the target color value for the channel is
subtracted off. The color channels are then combined into a 2-norm difference image where brightness
reflects the distance from the target color. As seen in Figure 1, the target color takes a zero intensity
value (black) and the rest of the image scales to reflect the difference from the target color. Using
this difference image, the paint can location is identified (Figure 2) by finding the coordinates of the
minimum value (i.e. the location of the pixel that is closest to the target color). For each camera, the
location of the paint can is collected in vectors (xi , yi). The data is then arranged into the matrix,
X =
xa
ya
xb
yb
xc
yc
Rm×n
(14)
where i = a, b, c are the three cameras, m is the number of “sensors” tracking the paint can location,
and n corresponds to the number of measurements in time (meaning the length of the video). In these
experiments, the location is tracked in (x, y) for three camera and so the m = 6. Once data for the
paint can location is obtained for each of the cameras in a given test scenario, the final task is to
synchronize the first frames and trim the data to the length of the shortest video so that covariances
between the videos can be calculated.
To speed processing, the use of cropping to the region containing the motion of the paint can
is explored (Figure 2). The challenge with using cropping is the effort to manually identifying the
region in each video that contains the entire range of motion of the paint can. The observed run
time using cropped images is approximately twice as fast due to the data reduction, however, nearly
identical results are obtained for the paint can location from both cropped and uncropped videos.
Therefore, to reduce the upfront manual workload and prevent potential error from cropping out
necessary information, all further analyses use uncropped videos.
Figure 1. For a specified target color (in this case the yellow on the paint
can), a difference image is constructed using the 2-norm of the difference
from the target color. This creates an image (right) where the target color
takes the minimum value and the rests of the image is scaled by difference
from the target color.
4
5. Kellen Betts videoMotionTrackingPCA 160731
Figure 2. The paint can location (right) is identified by finding the minimum
value in the difference image (center) where the scale is based on the difference
from the target color (yellow on the can).
3.2 Principal Component Analysis:
There are three steps in the PCA algorithm:
1. Subtracting the mean from the data
2. SVD of the data
3. Output/visualization of results
Implementation is greatly simplified because calculation of the mean and the SVD operation are per-
formed using built in MATLAB functions (see Appendix A). The outputs from the svd() function are
the U, Σ, V ∗
matrices. The principal component projections (Y = U∗
X), diagonal variances σ2
i = λi ,
and proper orthogonal modes (equation 9) are plotted in the subroutine plotProjections.m. The en-
ergy contained at a given mode is calculated using equation 11.
4 Computational Results
4.1 Test 1
In Test 1, the paint can is set to oscillate in a purely vertical direction and so we should expect maximal
variance in one component. Plotting the raw location tracking data (Figure 3) clearly shows consistent
oscillation in the vertical direction and minimal movement in the horizontal for all three cameras.
Energies of the diagonal variances from the PCA were,
σ2
i 1 2 3 4 5 6
energy 0.9499 0.9744 0.9874 0.9959 0.9986 1.0000
indicating that ~95% of the variance are captured in the first principal component. Figure 4 shows
that the variance in the first component is almost 102
greater than the others. Plotting of the principal
component projections (Figure 5) and the proper orthogonal modes (Figure 6) confirm that the first
component or the rank one approximation captures the one dimensional oscillation in this test case.
5
6. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200
−100
−50
0
50
100
Camera1, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera1, Vert.
0 50 100 150 200
−100
−50
0
50
100
Camera2, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera2, Vert.
0 50 100 150 200
−100
−50
0
50
100
Camera3, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera3, Vert.
Figure 3. For Test 1, the raw location tracking data for each camera clearly
shows oscillation in the vertical (right) direction and minimal movement in
the horizontal (left).
0 2 4 6
0
1000
2000
3000
4000
5000
6000
7000
8000
Diag Variances
0 2 4 6
10
1
10
2
10
3
10
4
Diag Variances (log)
Figure 4. For Test 1, the diagonal variances σ2
i = λi show that the first
component captures most of the variance with almost 102
more variance than
the others.
6
7. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ1
)
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ2
)
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ
3
)
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ
4
)
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ
5
)
0 50 100 150 200
−100
0
100
Princ. Comp. for (λ
6
)
Figure 5. For Test 1, the principal components (Y ) shows that the first
component (top left) clearly captures the oscillatory behavior of the can.
0 50 100 150 200
−10
0
10
Rank(1) , Horiz.
0 50 100 150 200
−10
0
10
Rank(1) , Vert.
0 50 100 150 200
−10
0
10
Rank(2) , Horiz.
0 50 100 150 200
−10
0
10
Rank(2) , Vert.
0 50 100 150 200
−10
0
10
Rank(3) , Horiz.
0 50 100 150 200
−10
0
10
Rank(3) , Vert.
0 50 100 150 200
−10
0
10
Rank(4) , Horiz.
0 50 100 150 200
−10
0
10
Rank(4) , Vert.
0 50 100 150 200
−10
0
10
Rank(5) , Horiz.
0 50 100 150 200
−10
0
10
Rank(5) , Vert.
0 50 100 150 200
−10
0
10
Rank(6) , Horiz.
0 50 100 150 200
−10
0
10
Rank(6) , Vert.
Figure 6. For Test 1, the proper orthogonal modes shows that a rank one
approximation (first row) captures that vertical (right) oscillatory behavior
and is a close match to the full rank (bottom row) data.
7
8. Kellen Betts videoMotionTrackingPCA 160731
4.2 Test 2
In Test 2, the paint can is set to oscillate in a purely vertical direction just as in Test 1 and so we should
expect maximal variance in one component. However, the camera operators intentionally shook the
camera while recording introducing noise in the data. The intention of this scenario is to explore how
noise affects the PCA algorithm. Plotting the raw location tracking data (Figure 7) shows oscillation
in the vertical direction that is consistent but much more erratic than Test 1. The horizontal direction
shows some movement but no consistent oscillatory behavior. Therefore, the noise from the camera
shake diminishes the quality of the data in both the horizontal and vertical directions. Energies of the
diagonal variances from the PCA were,
σ2
i 1 2 3 4 5 6
energy 0.6527 0.8079 0.8985 0.9468 0.9796 1.0000
indicating that only ~65% of the variance is captured in the first principal component compared to
~95% for Test 1. Figure 8 shows that the variance in the first component is dominant but has less
than 101
more variance than the others. Plotting the principal component projections (Figure 9)
shows that both the first and second components show oscillatory behavior. The proper orthogonal
modes (Figure 10) confirm that a rank one approximation does capture the vertical oscillation, but
the rank four approximation (corresponding to ~95% energy) is a better match to the full rank (six)
data. These results indicate that the noise from the camera shake diminishes performance.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera1, Horiz.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera1, Vert.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera2, Horiz.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera2, Vert.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera3, Horiz.
0 50 100 150 200 250 300
−100
−50
0
50
100
Camera3, Vert.
Figure 7. For Test 2, the raw location tracking data for each camera clearly
shows oscillation in the vertical (right) direction but the noise-inducing cam-
era shake diminishes its consistency and introduces movement in the hori-
zontal direction (left).
8
9. Kellen Betts videoMotionTrackingPCA 160731
0 2 4 6
0
1000
2000
3000
4000
5000
Diag Variances
0 2 4 6
10
2
10
3
10
4
Diag Variances (log)
Figure 8. For Test 2, the diagonal variances σ2
i = λi show that the first
component is dominant but less than 101
more than the others.
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
1
)
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
2
)
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
3
)
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
4
)
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
5
)
0 50 100 150 200 250 300
−100
0
100
Princ. Comp. for (λ
6
)
Figure 9. For Test 2, the principal component projections (Y ) shows that
both the first and second components show oscillatory behavior.
9
10. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200 250 300
−10
0
10
Rank(1) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(1) , Vert.
0 50 100 150 200 250 300
−10
0
10
Rank(2) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(2) , Vert.
0 50 100 150 200 250 300
−10
0
10
Rank(3) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(3) , Vert.
0 50 100 150 200 250 300
−10
0
10
Rank(4) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(4) , Vert.
0 50 100 150 200 250 300
−10
0
10
Rank(5) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(5) , Vert.
0 50 100 150 200 250 300
−10
0
10
Rank(6) , Horiz.
0 50 100 150 200 250 300
−10
0
10
Rank(6) , Vert.
Figure 10. For Test 2, the proper orthogonal modes show that a rank one
approximation does capture vertical oscillation, but the rank four approxi-
mation (forth from top) is a better match to the full rank (bottom row).
4.3 Test 3
In Test 3, the paint can is set to oscillate in the vertical direction just as in Test 1-2 but is also set
to oscillate in the horizontal direction and so we should expect maximal variance for two components.
Plotting the raw location tracking data (Figure 11) shows oscillation in both the vertical and horizontal
directions for all three cameras.
Energies of the diagonal variances from the PCA were,
σ2
i 1 2 3 4 5 6
energy 0.4756 0.7226 0.9009 0.9580 0.9957 1.0000
indicating that ~48% of the variance is captured in the first principal component, ~72% in the second,
and that it takes four modes to reach 95%. Figure 12 shows that the variance in the first component
is dominant but that the trend is approximately linear for the first five modes. Plotting the principal
component projections (Figure 13) shows that the first three components contain oscillatory behavior.
The proper orthogonal modes (Figure 14) show that a rank two approximation captures the vertical
and horizontal oscillation, but the rank four approximation (corresponding to ~95% energy) is a better
match to the full rank (six) data. These results indicate that the the PCA algorithm effectively captures
the horizontal and vertical oscillation with two components, but better accuracy is achieved with higher
rank data.
10
11. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200
−100
−50
0
50
100
Camera1, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera1, Vert.
0 50 100 150 200
−100
−50
0
50
100
Camera2, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera2, Vert.
0 50 100 150 200
−100
−50
0
50
100
Camera3, Horiz.
0 50 100 150 200
−100
−50
0
50
100
Camera3, Vert.
Figure 11. For Test 3, the raw location tracking data clearly shows oscilla-
tion in both the vertical (right) and horizontal (left) directions for all three
cameras.
0 2 4 6
0
500
1000
1500
2000
2500
3000
Diag Variances
0 2 4 6
10
1
10
2
10
3
10
4
Diag Variances (log)
Figure 12. For Test 3, the diagonal variances σ2
i = λi show that the vari-
ance in the first component is dominant but that the trend is approximately
linear for the first five modes.
11
12. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
1
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
2
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
3
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
4
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
5
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
6
)
Figure 13. For Test 3, the principal component projections (Y ) shows that
the first three components contain oscillatory behavior.
0 50 100 150 200
−10
0
10
Rank(1) , Horiz.
0 50 100 150 200
−10
0
10
Rank(1) , Vert.
0 50 100 150 200
−10
0
10
Rank(2) , Horiz.
0 50 100 150 200
−10
0
10
Rank(2) , Vert.
0 50 100 150 200
−10
0
10
Rank(3) , Horiz.
0 50 100 150 200
−10
0
10
Rank(3) , Vert.
0 50 100 150 200
−10
0
10
Rank(4) , Horiz.
0 50 100 150 200
−10
0
10
Rank(4) , Vert.
0 50 100 150 200
−10
0
10
Rank(5) , Horiz.
0 50 100 150 200
−10
0
10
Rank(5) , Vert.
0 50 100 150 200
−10
0
10
Rank(6) , Horiz.
0 50 100 150 200
−10
0
10
Rank(6) , Vert.
Figure 14. For Test 3, the proper orthogonal modes show that rank two
(second from top) captures the vertical and horizontal oscillation, but that
rank four (fourth from top) is a better match to the full rank (bottom row).
12
13. Kellen Betts videoMotionTrackingPCA 160731
4.4 Test 4
In Test 4, the paint can is set to oscillate in the vertical and horizontal directions just as in Test 3 but
is the horizontal direction is set to rotation and so we should expect maximal variance for two or more
components. Plotting the raw location tracking data (Figure 15) shows oscillation in both the vertical
and horizontal directions for all three cameras. However, the oscillation in this erratic and at certain
time points shows that the location tracking algorithm may have made substantial errors.
Energies of the diagonal variances from the PCA were,
σ2
i 1 2 3 4 5 6
energy 0.5258 0.8694 0.9297 0.9668 0.9892 1.0000
indicating that ~52% of the variance is captured in the first principal component, ~87% in the second,
and that it takes four modes to reach 95%. Figure 16 shows that the variance in the first two com-
ponents is dominant but that the trend is still approximately linear for the six modes. Plotting the
principal component projections (Figure 17) shows that the first four components contain clear oscil-
latory behavior. The proper orthogonal modes (Figure 18) show the rank two approximation captures
the horizontal and vertical behavior and is a decent match to the full rank (six) data. These results
indicate that the the PCA algorithm effectively captures the horizontal and vertical oscillation with
two components, but better accuracy is achieved with nearly full rank data.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera1, Horiz.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera1, Vert.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera2, Horiz.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera2, Vert.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera3, Horiz.
0 50 100 150 200 250 300 350
−100
−50
0
50
100
Camera3, Vert.
Figure 15. For Test 4, the raw location tracking data shows clear oscillation
in the vertical (right) direction and erratic oscillation in the horizontal (left)
for all three cameras.
13
14. Kellen Betts videoMotionTrackingPCA 160731
0 2 4 6
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Diag Variances
0 2 4 6
10
1
10
2
10
3
10
4
Diag Variances (log)
Figure 16. For Test 4, the diagonal variances σ2
i = λi show that the
variance in the first two components are dominant but that the trend is
approximately linear for the six modes.
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
1
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
2
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
3
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ
4
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ5
)
0 50 100 150 200
−150
−100
−50
0
50
100
150
Princ. Comp. for (λ6
)
Figure 17. For Test 4, the principal component projections (Y ) shows that
the first four or five components contain oscillatory behavior.
14
15. Kellen Betts videoMotionTrackingPCA 160731
0 50 100 150 200 250 300 350
−10
0
10
Rank(1) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(1) , Vert.
0 50 100 150 200 250 300 350
−10
0
10
Rank(2) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(2) , Vert.
0 50 100 150 200 250 300 350
−10
0
10
Rank(3) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(3) , Vert.
0 50 100 150 200 250 300 350
−10
0
10
Rank(4) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(4) , Vert.
0 50 100 150 200 250 300 350
−10
0
10
Rank(5) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(5) , Vert.
0 50 100 150 200 250 300 350
−10
0
10
Rank(6) , Horiz.
0 50 100 150 200 250 300 350
−10
0
10
Rank(6) , Vert.
Figure 18. For Test 4, the proper orthogonal modes show that a rank
two approximation (second from top) captures the vertical and horizontal
oscillation and is a decent match to the full rank (bottom row) data.
5 Summary and Conclusions
Ultimately, this project shows that principal component analysis (PCA) can be used to reduce redun-
dancy and find directions of maximal variance in complex data. This allows low rank approximations of
multidimensional dynamical behavior. One of the primary obstacles encountered was the measurement
of the paint can location in the video frames. This algorithm adopts a suggestion from a classmate to
track the yellow color on the paint can. As with any experiment, experimental precision is critical to
minimizing error attributable to the procedure. I suspect some of the erratic behavior, especially in
Test 4 with the rotation, may be the result of errors with the location tracking algorithms. However,
the paint can apparatus and the videography were not necessarily set up for precision measurement and
all of the observed results match expected behavior with reasonable accuracy indicating the tracking
algorithm used was sufficient for the purposes of this project.
15
16. Kellen Betts videoMotionTrackingPCA 160731
Appendix A
diag Used to extract the diagonals from a matrix.
double Used to convert 8-bit integer image data to double precision format.
frame2im Used to covert a movie frame to an image.
imshow Used to plot image data.
load Loads data from an external file.
ind2sub Used to convert a linear index (in this case the minimum value in the difference image) into
corresponding 2D subscripts.
linspace Used to build a linear vector with n + 1 points for the spatial domain. The vector is then
trimmed to n points due to the periodic boundaries.
mean Used to calculate the mean for each row of the location coordinate data.
min Used to find the minimum value in a given array.
num2str Used to convert a number to a string.
plot Used to plot the various parameters agains time or frequency.
repmat Used to replicate and tile an array for the means.
reshape Reshapes vector or matrix for given dimensions.
semilogy Used to make a plot with the y-axis on a logarithmic scale.
size Used to get the number of rows and columns for a given matrix.
strcat Used to concatenate a string.
subplot Used to produce plot arrays.
sum Used to calculate sums.
switch Conditional structure used to vary code execution based on a specified tag.
tic/toc Used to time the operations.
uint8 Used to convert data to 8-bit integer format.
zeros Used to build vectors and matrices filled with “0”.
16
17. Kellen Betts videoMotionTrackingPCA 160731
Appendix B
See project root for files (MATLAB) .
• Main script for this project = main.m
• loadMovie.m
• playMovie.m
• plotProjections.m
• plotShifted.m
• plotTracking.m
• targetColor.m
Appendix C
Diagonalization of the Covariance Matrix:
The SVD for the matrix of the paint can locations is defined,
X = UΣV ∗
with the transformation variable defined,
Y = U∗
X .
The covariance matrix of Y is defined,
CY =
1
n − 1
Y Y T
=
1
n − 1
(U∗
X) (U∗
X)
T
=
1
n − 1
U∗
XXT
U
and solving the eigenvalue problem,
XXT
U = UΣ2
gives,
CY =
1
n − 1
U∗
UΣ2
=
1
n − 1
Σ2
.
17