I am Danny G . I am an Electrical Engineering Assignment Expert at matlabassignmentexperts.com. I hold a Ph.D. Matlab, Schiller International University, USA. I have been helping students with their homework for the past 9 years. I solve assignments related to Electrical Engineering.
Visit matlabassignmentexperts.com or email info@matlabassignmentexperts.com.
You can also call on +1 678 648 4277 for any assistance with Electrical Engineering Assignments.
Matlab Assignment Help: SEO-Optimized Title for Matlab Problems Document
1. Matlab Assignment Help
For any help regarding Matlab Assignment Help
Visit :- https://www.matlabassignmentexperts.com/
Email :- info@matlabassignmentexperts.com
Call us at :-+1 678 648 4277
2. Problem 1:
Suppose we allow for a scale factor in the problem of absolute orientation—in addition to
translation and rotation—so that the transformation from the “left’’ to the “right’’ coordinate systems
becomes
Then the absolute orientation problem becomes one of minimizing
(a) By differentiating w.r.t. to r0, dividing by n, and setting the result equal to zero, find a formula for
the best fit translation involving the centroids r¯l and r¯r of the two sets of measurements
(b) By shifting the origin of each set of measurements to its centroid, show that the translation r0
drops out and the error to be minimized simplifies to
(c) Show that this can be written in the form
Problems
Matlab Assignment Help
3. where Sr and Sl are sums of squares of the lengths r r,i and r l,i respectively, while Dr l is the
sum of dot-products of r r,i and R(r l,i).
(c) Conclude that the best fit scale is given by
(d) Now suppose we instead find the best fit transformation
from “right’’ to “left’’ coordinate system. We might expect that this transformation is the inverse
of the earlier one, that is, s = 1/s, R = R−1, and r = (1/s)R−1(r0). Unfortunately this is not so. In
particular show that
(e) Show that this asymmetry can be removed by instead minimizing
Matlab Assignment Help
4. What is the best fit value for s in terms of Sr , Sl, Dr l and Dlr ?
(f) Show that the best scale factor as defined in part (e) can be determined without
knowing the rotation or translation.
(g) Does the best fit rotation depend on which of the three choices for best fit scale factor ((c),
(d) or (e)) we adopt?
Problem 2:
The above is a photograph of a portion of a flat target used for camera calibration as well as
estimation of camera distortions.
Matlab Assignment Help
5. The above is a photograph of a portion of a flat target used for camera calibration as well as
estimation of camera distortions.
(a) Explain image processing methods that could be used to accurately recover the images of the
vertices of the pattern.
(b) Explain the advantages—if any—of this pattern over one consisting of three sets of parallel
black lines along the edges of the triangles in this pattern (on a white background).
(c) Explain the advantages—if any—of this pattern over one consisting of sets of black dots at
the vertices of the pattern (on a white background).
(d) Explain the advantages—if any—of this pattern over one consisting of LED light sources
placed at the vertices of the pattern (on a black background).
Problem 3: Representing finite rotations using unit quaternions.
(a) Consider a tetrahedron with vertices at (a, 0, b)T , (a, 0, −b)T , (−a, b, 0)T , and (−a, −b,
0)T . What should be the ratio between a and b so that this is a regular tetrahedron? Find
the unit quaternions representing all rotations that bring the tetrahedron into alignment with
itself.
(b) If we start with the tetrahedron in a different alignment with the coordinate axes we get a
different set of unit quaternions representing the group of rotations of the tetrahedron. Show
that if {q˚i} isthe set of quaternionsfound in part (a), then the set of quaternions found with a
different alignment of axes can be written in the form {p ˚ ˚qip˚∗} for some unit quaternion ˚p
Matlab Assignment Help
6. (c) One measure of the “size’’ of a rotation is simply the angle of rotation. If we ignore the
identity operation, what is the “smallest’’ rotation amongst the groups of rotations of the regular
polyhedra (Platonic solids)?
Matlab Assignment Help
7. Problem 4a: Least Squares Image Adjustment.
In the classical least squares approach to photo grammetry, one minimizes the sum of
squares of differences
This approach is used whether one is trying to recover the parameters of the imaging
situation (interior orientation, exterior orientation, and so on), or recover coordinates
of points in the environment.
Given image measurements of a feature point (xI 1, yI 1) determine the best fit
coordinates of the corresponding point (xC 1, yC 1, zC 1) in the scene by minimizing
the sum of squares of errors. Comment on the result. What happens when N > 1?
Problem 4b:
Matlab Assignment Help
8. In the case of (i) absolute orientation, (ii) exterior orientation, and (iii) interior orientation, one
can use two-dimensional versions of the three dimensional problem sin order to gain some
insight. We didn’t do this for relative orientation.
In the case of linear ‘cameras’ operating in the plane, what is the minimum number of
correspondences of rays from the ‘left’ camera with rays from the ‘right’ camera that are
needed to fully constrain the relative position and orientation of the right camera with respect
to the left camera?
Problem 5:
This problem address a possible ambiguity in interpreting motion fields
By differentiating the perspective projection equation
with respect to time t, we get an equation for the motion field r˙ = dr/dt. Next, in rigid body
motion we have for the velocity of a point in space relative to the camera:
Matlab Assignment Help
9. where t is the instantaneous translational velocity of the camera, while ω is the instantaneous
rotational velocity.
Now consider a camera looking at a planar surface. Suppose R0 is an arbitrary point
in the surface. Lines connecting points in the surface, such as (R − R0), are all
perpendicular to the surface normal n of the plane. That is,
Show that the motion field when
is the same as when
for suitable choice of the constant k. What is the value of k? Draw a diagram showing an
example of this kind of ambiguity where two different motions and two different surfaces give
rise to the same motion field. (Note: In order to make things simpler, you may want to pick c =
0.)
Matlab Assignment Help
10. Part a
The cost is:
Problem 1
Differentiate this with respect to ro and set it equal to zero:
Part b
Matlab Assignment Help
Solutions
13. Similarly we can find the inverse transformation mentioned in part (d).
Obviously, the result does not depend on rotation or translation. We also notice
that
Matlab Assignment Help
14. i.e., the asymmetry is removed.
Part g
To choose best rotation R to minimize the cost functions for part (b), (d), and (e), we only
need to maximize
The selection for rotation matrix R (from left to right) (or R': from left to right) does not
depend on the selection of scalar s.
Actually two rotation matrix II and II' than respectively maximize the two above ex-
pressions have the following relationship:
i.e., there also exists symmetry for rotation matrix for all three situations.
Problem 2
For each of the following parts, we expect the following important steps. We might ignore
many complementary details.
Matlab Assignment Help
15. Part a
(1) Edge finding to find the edges of the triangular areas — away from the vertices.
(2) Then least squares fitting of straight lines to the edge fragments (ignoring parts near
vertices)
(3) Then intersecting the lines to find the vertices (more least squares, since three lines
don't intersect in a point generally).
Part b
The edges of the triangles are (relatively) independent of distance from camera to target.
On the other hand, lines instead of areas have the following disadvantages:
(1) It will not work well from far away when they may be "washed out" because their
width is smaller than a pixel.
(2) It will not work well close up when the width of the lines may cover many pixels.
Further, accurate focus is needed to make sure the lines are visible (less of a
problem with areas — the borders just have gradual transitions).
Part c
Dots are even worse than lines because of the following concerns:
(1) They will disappear when viewed from Ear enough away (partial pixel effect).
(2) From close up they will cover a large disc in the image (actually, this is not so bad,
since we saw that the center of the disc can be found accurately). Same focus
issues as (b).
Matlab Assignment Help
16. Part d
LEDs have similar disadvantages as dots.
(1) From too far away they are invisible. (LEDs can be seen better than black dots.)
(2) From closer up they will saturate the sensor, making it hard to find the exact position
of the center.
Further, some sensors will be permanently damaged when exposed to accurately
focused. By the way, additional advantages of this pattern shown are that not only can it
be used over a wide range of distances, but also over quite a range of inclinations.
Problem 3
Part a
Matlab Assignment Help
17. To construct a regular tetrahedron, we should have:
1) There will be 4 rotating axis each passing 1 vertice (with 120°, 240° degree rotation)
which can bring the tetrahedron back into alignment with itself.
Matlab Assignment Help
19. Note:
For this specific example, E+F+G+H = (0, 0, 0), therefore the center of the
tetrahedron is at the origin and we can find the rotation axis directly from four vertices. i.e.,
/1 = E, 12 = F.13 = G and /4 = H. However it is not the general case. ( The solution we
offered applies in more general situations. ) Students who use the vertices coordinates as
rotating axis without explanation do not receive full credit.
Matlab Assignment Help
20. We could also write simple matlab code to cross-multiply all the resulting quaternions and stop
if no new ones are produced. However, we should aware that quaternions q,qx,qy,qz and -q, -
qx,-qy, -q1 represent the same rotations.
Matlab Assignment Help
21. Part b
Consider the orientation tetrahedron described in part(a) the standard orientation. We
define 4 to be the set of quaternions that bring it back to alignment with itself.
Quaternion p describes the transformation that rotates a tetrahedron from the standard
orientation (T) to an arbitrary alignment (T').
Quaternion p°*, describes the inverse transformation that rotates the tetrahedron with the
mentioned arbitrary alignment (T') to the standard orientation (T).
Then, for the arbitrary tetrahedron, the quaternion 220.70p0* describes the following com-
posed rotation:
1) It first rotates (described by p°*) the arbitrary tetrahedron (T') with other alignment to
the standard orientation (T).
2) Next, it rotates (described by 4) the tetrahedron from its standard orientation (T) and
brings it back to alignment with itself (T).
3) Finally, it rotates (described by the tetrahedron from its standard orientation to the initial
arbitrary orientation (T'). 00 0
Thus, quaternion pqp* describes the transformation that rotate the arbitrary tetrahe-dron
with other alignment back to the alignment with itself. And the set of quaternions we find
are all we need because of one-to-one relationship we present here.
Matlab Assignment Help
22. Part c
The smallest angles of rotation that brings platonic solids back to alignment with
them-selves are:
Part d
Matlab Assignment Help
24. Now we compare the computational loads for two equations when 4 is a unit quaternion. The
computation load for typical operations are listed below.
Matlab Assignment Help
25. 1. Computational load for r4 is 0, which save us the computational load for r1, i.e., (7 muls, 3
adds).
2. Computational load for 2q and for r5 is (3 muls) and (9 muls, 3 adds). which needs extra
(2muls.ladds) than for r3.
Total: (19 muls, 12 adds)
In total, the computational load for the second expression saves us 5 muls, 2 adds.
Problem 4
Matlab Assignment Help
26. can make E to be zero. Because there are three degree of freedom in choosing 3D points
while there are only two constraints, we will have infinite number of solutions. It means that
we could not uniquely decided the shape of 3D object if we are given only one image. The
result does not change for N = 1 or N > 1.
Problem 4b
Matlab Assignment Help
27. This problem was phrased in a slightly tricky way: The answer is that the 2D-version of the relative
orientation problem is unsolvable, regardless of how many correspondences you have. In other
words, for any number n of points xi, seen by the left camera (i.e. are points on the "image line" of
the left camera. a 2D-equivalent to the image plane of a regular camera. These points are the
images of the n points on the plane that are in the field of view of this camera), if the right camera
sees the same n points as points pc, on its image line, then the two cameras can lie on the plane
almost anywhere in relation to one another. Here is why we say they can lie almost anywhere:
Points p1.....pn define n rays coming out of the left camera! and points pc....pin define n rays coming
out of the right camera. The only constraint on the relative position of the two cameras is that for
each k, the k-th rays of the two cameras must intersect. This is not much of a constraint ... On the
figure 1 below we mark these intersections with circles. You can think of them as rings binding the
two rays together: Imagine the two set of rays as two set of infinite straight wires fixed to their image
lines: The rings binding each two corresponding rays together leave a lot of freedom for the two
cameras.
Some intuition for why the problem cannot be solved for any n correspondences can be also
gained from the algebra: For each point seen by the two cameras, its positions (xi, ye) and (x:,
y:) in the coordinate systems of, correspondingly, the left and the right camera, are bound by
equation
where R is a rotation matrix (determined by one variable, the rotation angle a), and T is the
translation vector (two variables ti, ty). This equation gives us two constraints per each point: = xi
cos a + yi sin a + Ex and = —xi sin a + cos a + ty. Furthermore, the four unknowns xi, ye, yl are
bound by the equations pi/ f = xi lyi and is: ift where f and fi are principal distances of the two
cameras. Therefore, we get the total of four constraints for each point visible by the two cameras
(i.e. per each "correspondence"). However, each point gives us also, as we pointed out, four
unknowns. Hence, no amount of points can give us enough constraints to figure out the three main
unknowns we want to determine:
Matlab Assignment Help
28. Problem 5
The point of this problem was to show that (almost) each movement of a camera in relation to
some plane can be interpreted in two ways. Let's say the real movement of the camera is
defined by (n, t, w, h) = a, c, Ro n) where h is a constant such that R • n = h for all R (we know
that's constant because all the camera sees is some plane with normal
n). It turns out that there exists k, s.t. movement (b, a, c, Ro n) and movement (a, b, c+ ka x b,
h') produce the same motion field r' (note that notion r' is a shortcut for a function which defines
a motion r' for each point r on the image plane). In other words, whatever your real movement
(n, t, w, h) = (b, a, c, Ron) is, you can (but only for a split second...) believe that your movement
is rather described by (n, t, w h) = (a, b, c + ka x b, hi) where k and h' are variables that depend
on b. a, Ro in a way that we will show below. We will proceed as follows: First we transform the
equation for the motion field r' so that it depends only on the "movement descriptors" (n, t, w, h)
and the pixel position r. To do that, we first find r' by differentiating
Matlab Assignment Help
29. This last form is the simplest to work with: It shows that r' must be perpendicular to 1‘, which it how
it should be, because any change in the image position of a certain point in the image (that's what
the motion field r' describes) must be within the image plane, and so it is always perpendicular to
the camera axis Z. We get rid of —R' by subsituting
Matlab Assignment Help
30. Now that we have arrived at a satisfactory formula for r', which describes it purely in terms of
the "movement descriptor" variables (n, t, w, h) and the pixel variable r, we can plug in the
variables describing the two movements (n, t, w, h) = (b, a, c, hi) and (n, t, w, h) — (a, b, c + ka
x b, h2), which will give us two motion field functions fel and fri2 (both are functions of pixel
position r). And then we can see when these two motion fields can be the same, i.e. when
function f Are = fre2 — fel is equal to zero for the whole image plane (i.e. for all r):
In other words Ar' = z x [r x v] where v = c1a +c2b, where cl,c2 are scalar functions of r. First
observe that to make Ar' zero for all r, v has to be zero for all r. That is because r is always non-
zero and never perpendicular to Z. and hence for every non-zero vector v, r x v will be always
non-zero and never parallel to Z. and hence Z x [r x will never be zero.
Now, v = cia +c2b, where ci,c2 are scalar functions of r, and so there are two cases to consider if
we want v to be always zero:
Matlab Assignment Help
31. This will be always zero if hi = h2! which we can simply denote by some constant h. Notice,
however, that if a and b are parallel, then k(a x b) = 0, and so the two movements
scenarioes, (a, b, c, h) and (b.a.c. h), describe really the same movement of the camera,
only with regards to a different unviersal coordinate system: but from the camera's point of
view these two movements are the same.
2. Now take a general case when a and b are not parallel. Then v will be always zero
only if ci and c2 are zero for all r. But that happens only if /5+k = 0 and /5+ k = 0, i.e.
when hi = h2 = h for some h, and if It = -4. See figure 2 below for an example. For the
example scenario, we have two image planes with normal vector a and b. We can see
that effect of extra rotation is to make the angles between the translational direction and
the plane normal be the same so that we can easily show that the motion field is the
same under two translational motion. It makes sense since to adjust same amount of
motion differences caused by pure translation, the closer the camera, the less rotation
angle we need. The constraint hi = h2 must be mentioned. It is also acceptable to use
the situation where a and to are parallel as an example which is easier and does not
require the constraints.
Matlab Assignment Help
32. Note: It is important to understand the assumption and the definition of variables involved in
equations. (1) We can only assume image coordinates n = r2 while we should not assume RI
=R2. which is not necessarily true for all image points. It is true that the two planes have
intersection, i.e., R1 = R2, which, however, holds only for a few points.
(2) We cannot assume R. • n = 1 or R. • n=constant. which actually assumes Ri • ni = R2 •
n2 and is not necessarily true. Furthermore, a and b are not necessarily unit vectors.
Matlab Assignment Help