throbber
Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 1 of 11
`
` Exhibit 8
`
`

`

`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 2 of 11
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 2 of 11
`Vision for mobile robots
`
`MICHAEL BRADY ann HAN WANG
`
`Robotics Research Group, Department of Engineering Science, University of Oxford, Oxford OXI 3PJ, U.K.
`
`SUMMARY
`
`Localized feature points, particularly corners, can be computed rapidly andreliably in images, and they
`are stable over image sequences. Corner points provide more constraint than edge points, and this
`additional constraint can be propagated effectively from corners along edges. Implemented algorithms
`are described to compute optic flow and to determinescene structure for a mobile robot using stereo or
`structure from motion. It is argued that a mobile robot may not need to compute depth explicitly in
`order to navigate effectively.
`
`1. INTRODUCTION
`
`This paperis concerned with the information that can
`be computedefficiently and reliably by a mobile robot
`to support effective navigation,
`including obstacle
`avoidance. Object recognition, and the generation of
`collision avoiding trajectories are discussed elsewhere
`(Reid & Brady 1992; Hu et al. 1991). Though weare
`concerned primarily with mobile robots, the issues we
`discuss have also figured in our work on model-based
`(reduced bandwidth) image coding, medical
`image
`processing, and attentional control, for example to
`support automated surveillance systems.
`Mobile robots are used increasingly in flexible
`manufacturing systems, as a programmable alter-
`native to fixtured material transfer schemes such as
`conveyor belts. The mobile robot we work on at
`Oxford is functionally equivalent to a fielded commer-
`cial system that maintains a software model ofthe
`layout of a factory, and determines its position by
`retroreflecting infrared illumination from bar-coded
`targets placed in accurately known locations in the
`environment. Using this data, the mobile robot can
`calculate its position to better than a centimetre over
`40 m, andits orientation to a few degrees. In most
`practical applications this is more than sufficient.
`Paths are planned using the software model of the
`factory. However,
`the fielded mobile robot cannot
`detect unexpected obstacles and plan detours around
`them, nor can it recognize objects to be acquired, for
`example pallets
`from a loading bay. These two
`problems have been the foci of work at Oxford.
`Successful systems have been developed using sonar
`sensing for obstacle detection (Hu et al. 1991) and a
`laser range scanner for recognising objects such as
`palletised goods that vary parametrically (Reid &
`Brady 1992). It is far from obvious that the additional
`poweroffered by visual guidance of vehicles is neces-
`sary for many industrial purposes, particularly inside
`a factory, while the computational cost and unreliabi-
`lity of visual processing currently makes it unattrac-
`
`tive to production engineers, Outdoor applications
`are, however, a different proposition,
`and_ vision
`may well be put
`to cost-effective, practical use in
`applications such as automating work in stockyards,
`mining, agriculture, and for a number of military
`purposes.
`In the next section we argue that the information
`provided at the different locations in an image provide
`vastly different
`local
`information, hence differing
`constraint. This is most obviously the motivation for
`edge detection; but applies equally to the detection, as
`primitives, of distinctive feature points, which, rather
`loosely, we call ‘corners’. Section 3 presents a number
`of techniques
`for computing such feature points
`robustly and reliably, and shows they maybe used for
`segmenting an optic flow field. Section 4 shows two
`approaches to computing scene structure from the
`motion of such feature points. In each case, the depth
`is computed explicitly at each feature point,
`then a
`depth map for the environment is interpolated from
`the discrete set of values. To do even this in real time
`requires a powerful parallel computer architecture;
`the one that has been assembled in Oxford is sketched
`in § 5. In § 6, we discuss the problem of propagating
`constraint from ‘corner’ feature points along contours
`defined by significant
`intensity changes (‘edges’), a
`process that refines Hildreth’s influential early work
`(Hildreth, 1984) on edge-based optic flow. Finally, in
`§ 7, we ask whether depth doesafter all need to be
`made explicit, present some work that shows that
`information that is useful for navigation and collision
`avoidance can be computed without precise camera
`calibration, and say why such a scheme is
`to be
`preferred.
`
`2. THE INEQUALITY OF INFORMATION
`Notall pixels in an image carry the same amount of
`information, even as a constant signal carries no
`information. Our ability as humans to readily inter-
`pret line drawings made from images, suggest that an
`
`Phil. Trans. R. Soc. Lond. B (1992) 337, 341-350
`Printed in Great Britain
`
`341
`
`© 1992 The Royal Society and the authors
`
`
`
`

`

`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 3 of 11
`342 Case@.6:2 1nevt00755-ADAon Doeument45-8 Filed 02/28/22 Page 3 of 11
`
`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`important early processing step is to extract intensity
`changes, a suggestion reinforced by physiological
`studies of simple cells in visual cortex, Indeed, under
`certain weak conditions, an image can be recon-
`structed fromits intensity changes. A (static) image
`can be regarded as a surface,
`in which case the
`extraction of intensity changes amounts to developing
`numerical approximations to the gradient V/ and
`image (local) surface curvatures. Several approxima-
`tions tofirst and higher order derivatives of the image
`intensity function have been proposed typically pre-
`ceded by convolving with a smoothingfilter such as a
`Gaussian G,. A number of edge detection schemes
`have been proposed, extensively evaluated, and imple-
`mentedin real time, for example using recursive filters
`(Canny 1986; Deriche 1987). The Canny filter, for
`example,
`serves
`to emphasize the importance of
`nonlinear filtering. Over the past
`five years three
`novel nonlinear filters have been developed: Fleck’s
`(1988) application of finite-resolution cell complexes
`to compute high frequency texture edges; Owens &
`Venkatesh’s
`(1989)
`local energy model based on
`Hilbert quadrature pairs and local phase; and mor-
`phological filtering.
`
`3. COMPUTING ‘CORNERS’
`
`‘Corners’ carry even more information than edges,
`though they are more difficult
`to extract accurately
`and reliably. In the next section, we describe a system
`that computes structure from motion by tracking
`corners over a sequence of images, and in §6 we use
`corners as seed points in an algorithm to compute
`optic flow. We first address the question of how
`corners can be modeled and extracted. One approach
`considers a corner to be a point on anintensity change
`contour (edge) where the curvature along the edge
`attains a maximum. More formally, let 2 be the unit
`vector in the direction of the intensity gradient. The
`edge curvature K,, can be measured by the image
`surface normal curvature in the tangential direction
`orthogonal
`to n. Elementary differential geometry
`showsthat:
`
`Kyo
`
`ee + iis - SEL
`1
`;
`R+E
`"14+ h+EL
`This formula was discretized and used in an early
`corner finder by Kitchen & Rosenfeld (1982). A later
`implementation by Zuniga & Haralick (1983) worked
`out the expression analytically for the coefficients of a
`bicubic polynomial
`fit
`locally to the image surface.
`Both implementations were highly sensitive to noise.
`Recently, the authors introduced a novel algorithm of
`this sort, which we review following a discussion of an
`alternative formulation for a corner.
`The most attractive alternative model is to identify
`corners with pixels whose intensities are significantly
`different from those surrounding neighbouring pixels.
`One way to do this is
`to use the local
`image
`autocorrelation function; but
`this
`tends
`to place
`corners at some remove from the ideal location, and
`although this does not affect tracking, it does affect
`
`the estimation of three-dimensional depth. A recent
`variant
`to this theme is
`the Harris corner finder
`(Harris & Pike 1987), which has been used in the
`DROID system discussed below. The algorithm consists
`of three steps.
`1. Compute the partial derivatives of the image /,
`and /,, and compute the Gaussian smoothed products:
`<>, <>,
`and <i).
`2. Compute the eigenvalues 4),A2 of the matrix
`
`ct) a(Idy> <>
`
`3. Mark points as corners where the product Aj/2
`divided by the sum 4; + 2 is greater than a threshold.
`Noble’s
`(1989)
`thesis presents a Taylor’s series
`analysis of the grey level function /(x,y) in the vicinity
`of a Harris corner. It shows that the Harris algorithm
`combineslinearly an estimate of the intensity gradient
`and anestimate of the image curvature. Both need to
`be large for a pixel to be marked by Harris’ algorithm.
`Recently, Wang & Brady (1991) developed an
`algorithm that estimates the tangential curvature Ky)
`using the linear
`interpolation and non-maximum
`suppression techniques used originally in Canny’s
`edge finding algorithm. Refer to figure 1. Suppose
`that the image gradient |V/|
`is above a threshold at
`the point C shown, andlet the edge tangent t=n1 be
`in the direction shown. The intensity function J is
`interpolated at locations Jp, 44, Ic,
`ly, Ir, and the
`second derivative a =Kn, is estimated from thefinite
`difference approximation:
`1
`Dil =~ ( — Wp, — I, + 6le + I+ 2p),
`
`r=VJ//, when the
`spatially, e.g.
`where 7 varies
`tangential direction is less than z/4. Corner points are
`marked where(i) Dil> @|VJ\, and (ii) non-maxima
`are suppressed. Figure 2 shows one synthetic image
`and the corners found by Wang & Brady’s corner
`finder. The corner finder has been implemented on
`the parallel architecture PARADOX,describedin § 5,
`and computes corners at 14 Hz. The Wang & Brady
`algorithm exhibits interesting scale space behaviour,
`
`“:
`
`hn
`
`_ -~-------2
`-\------#
`
`2
`
`x
`
`Figure
`
`1, Linear
`
`interpolation for
`addressing.
`
`intermediate pixel
`
`Phil. Trans. R. Soc. Lond. B (1992)
`[ 90 |
`
`
`

`

`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 4 of 11
`
`Case 6:21-cv-00755-ADA Document4S-8orFiledO2/28i22ay Rage 4vOfid1 343
`
`Figure 2. Left, a synthetic image; right, corners located by Wang & Brady’s cornerfinder.
`
`reminiscent of the early algorithm of Asada & Brady
`for further details,
`1986); see Wang & Brady
`(1992
`The quest for feature-finding algorithms continues.
`Since Wang & Brady’s algorithm was invented, Smith
`1992
`has devised a scheme that is a hybrid of an
`autocorrelation and morphological filter. It has been
`used to generate a fast, though approximate, segmen-
`tation of the moving objects in motion sequences. ‘Torr
`et al.
`(1991
`report initial experiments with a system
`that consists of a number of such modules
`each of
`
`limited scope but which are combined in a
`motion estimation system.
`
`robust
`
`4. COMPUTING SCENE STRUCTURE USING
`CORNERS
`
`This section reports two schemes for determining scene
`structure using the feature points computed for each
`image in a sequence by the algorithms described in
`the previous section. First, we review the structure
`from motion algorithm prRotporiginally developed by
`Harris & Pike (1987), The authors have worked on an
`Esprit grant vorLA with the prop team to develop a
`revised version to run on the parallel architecture
`PARADOX. Second, wedescribe an algorithm based
`on disparity gradient to match the feature points in a
`stereo pair of images.
`DROID determines the three-dimensional structure
`of a scene bytracking imagefeatures over a sequence
`of frames.
`It works as follows.
`
`1. Thestate of the system at time¢ consists of a set of
`feature points, each of which has an associated
`vector [x,(t)y;(t)z,(t)e,(t)e, (d)e.(0)a,]". Thefirst three
`components are the estimated three-dimensional
`position of the feature. The second three compo-
`nents are the semi-axes of an ellipsoidal represen-
`tation of uncertainty. Initially,
`the uncertaintyis
`low in the image coordinates, but large in depth.
`As the vehicle circumnavigates a feature (assuming
`that it does), the uncertainty in depth reduces by
`
`Phil. Trans. R. Soc. Lond. B (1992
`
`[ 91
`
`Oo
`
`+is a
`intersecting ellipsoids. The final component
`flag that says whether the feature is
`temporarily
`invisible (e.g. because it
`is occluded).
`2. Given an estimate of the motion between the
`imaging position at
`time ¢ and time /+ 1,
`thestate
`prediction at
`time ‘+1 can be made, and, after
`perspective projection using a pinhole model,
`the
`positions of the feature points in the ¢+ Ist
`image
`can bepredicted.
`image.
`Features can be extracted from the {+ Ist
`Originally,
`features computed using the Harris
`algorithm were used. Now we use the Wang-Brady
`This is by
`far
`the
`or Smith algorithms.
`most
`the
`intensive
`step of
`compu-
`computationally
`tation.
`4. The correspondence is computed between the
`predicted locations of points in step 2 and the
`feature points found in step 3. Ambiguous matches
`are decided by matching descriptions of the pre-
`dicted and found points that
`involve the intensity
`value and gradients.
`5. Thestate estimate is updated using a Kalman filter
`algorithm, and the algorithm loops to step 2.
`6. Optionally, at each loop, the image locations of the
`feature points are triangulated, using the Delaunay
`triangulation that minimises
`long thin triangles
`Floriani 1987).
`The triangles are deprojected into
`recall
`the scene
`that
`the z component of each
`feature point has been estimated). The surface
`normal of each deprojected triangular
`facet’
`is
`computed, Driveable regions are computed as
`the transitive closure of
`the facets lying close to
`the horizontal plane, starting just
`in front of
`the
`vehicle.
`
`number of careful
`(1992
`Wang et al.
`report
`a
`experiments with the prorp algorithm using cameras
`mounted on the robot vehicle described in the first
`section and which can compute its position using the
`on-board infrared sensor. There is no integral action
`in
`the controller,
`but
`subject
`to
`this
`limitation,
`velocity and position estimates are resonably accurate
`
`GNTX0001632
`
`

`

`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 5 of 11
`
`
`
`Figure 3. Stereo images of the laboratory as seen from cameras mounted on the mobile robot.
`
`However, precise camera calibration is required, and,
`in view of the inevitable vibrations of the mobile
`robot, this is the most sensitive part of the system. We
`return to this point below; but note in passing that the
`system has more in common with photogrammetry
`than human vision.
`The authors have explored an alternative method
`for computing scene structure by stereo matching the
`corner feature points in a pair of images (Wang &
`Brady 1992).
`(We have also integrated the stereo
`algorithm and the structure from motion algorithm
`prop.) The stereo algorithm consists of two steps:
`correlation matching; followed by a verification step
`that enforces the disparity gradient limit
`(pGL) con-
`straint
`(Pollard et al. 1985), uncovered for human
`stereopsis (Burt & Julesz 1980).
`
`the left and right images surrounding each feature
`point. For each feature pointin the left image,a set
`of candidate matching feature points in the right
`image are determined to satisfy the epipolar con-
`straint. For each feature point in theleft image, the
`right image feature point whose surrounding region
`maximises the normalized cross correlation with
`that of the left image point (see Wanget al. (1990)
`for more details)
`is noted. This procedure is
`repeated for matches from right to left and pairs
`that maximize each other are recorded as candi-
`date matches.
`. Verification. The DGL is used to confirm matches.
`For point pairs that are in sparse regions of the
`image,
`the disparity gradient is computed as the
`difference in disparity divided by the Euclidean
`distance. The mean ofthe local disparity gradient
`provides a statistical measure of the local support
`
`1. Matching. The match operation proceeds in two
`passes. First, regions of a fixed size are identified in
`
`for a match.
`
`Figure 4. Corners detected in the left image of the stereo pair.
`
`Phil. Trans. R. Soc. Lond. B (1992)
`
`[ 92 ]
`
`GNTX0001633
`
`

`

`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 6 of 11
`Destdh To abbile WobtsY
`
`VE: Beedy antut. Wah 345
`
`Figure 5. Corners detected in the right image of the stereo pair.
`
`rise to image feature points using structure from
`motion or stereo. The algorithms rely on precise
`camera calibration. They more closely resemble
`photogrammetric mapping procedures than human
`stereopsis or motion parallax. It is not clear that the
`accurate depth mapsthat result from such algorithms
`are in fact required for successful navigation by a
`mobile robot (or animal).
`
`5. REAL-TIME ARCHITECTURE
`
`PARADOX is a hybrid architecture, designed and
`configured especially for vision- and image-processing
`algorithms. It consists of three major functional parts:
`a commercial (Datacube) pipelined image-processing
`system, a MIMD network of Transputers, and a
`
`
`
`Figure 3 showsa stereo imagepair of the laboratory
`as seen by a pair of ccp cameras mounted on the
`mobile robot. The cameras were carefully calibrated.
`i Figures 4 and 5 show the corner features detected in
`the left and right
`images
`(they are computed to
`subpixel accuracy).
`Figure 6 shows the corners matched in the stereo
`pair and indicates the disparities computed for each.
`Finally, figure 7 shows the three-dimensional surface
`reconstructed from the
`sparse disparity values.
`Thacker has also reported an approach of matching
`corners using correlation scheme, although thereis not
`verification stage for discarding ambiguous matches
`n noise data (Thacker 1990).
`To summarize this section: it is possible to compute
`the depths from images to the scene points that give
`
`
`
`
`
`Downloadedfromhttps:Sisagaoieon13February2022
`
`a 0
`
`Figure 6. Matched corner pairs are shown as the disparity vectors. The cameras have been calibrated so that
`epipolars align with camera scan lines, so that disparity, a vector valued quantity, can be given by a scalar value,
`
`Phil. Trans. R. Soc. Lond. B (1992)
`
`[ 93 ]
`
`GNTX0001634
`
`

`

`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 7 of 11
`
`346 GaseaGi2dncvi0OO7%55-ADAn /Document45-8 Filed 02/28/22 Page 7 of 11
`
`Figure 7. The three-dimensional surface reconstructed from the sparse disparity information.
`
`controlling workstation. The architecture of PARA-
`DOX, used in the current parallel implementation of
`DROID,
`is shownin figure 8.
`The commercial system contains more than 20
`types of VME-based pipelined processing and input-
`output modules which can perform a range of image
`processing operations at video rates.
`Image data is
`passed between modules via a video bus. This system
`can beusedfor the digitization, storage anddisplayof
`images, andalso for a wide range of video frame-rate
`pixel-based processing operations. For example, con-
`volution and morphological operations can be sup-
`ported directly in the hardware. System control is by
`means of the VME bus from the controlling work-
`station.
`The MIMD network consists of a board that
`contains 32 T800 Transputers, each with one Mbyte
`
`together with both hardwired and _pro-
`of RAM,
`grammable switching devices to allow the network
`topology to be altered. A wide range of network
`topologies can be implemented including parallel one-
`dimensional arrays (Wang e/ al. 1991), a two-dimen-
`sional array or a ring structure. This board delivers
`a peak performance of 320 MIPS. The connection
`between the image processing system and the Trans-
`puter network is by way of an interface board
`designed by the British Aerospace Sowerby Research
`Centre (Sheen 1988).
`In the parallel implementation of prorp (Wang &
`Bowman 1991), the Datacubeis used to digitize, store
`anddisplay the image sequence and graphics overlays;
`corner detection is carried out by the Transputer
`array; whereas the relatively undemanding structure
`from motion filtering is carried out on the workstation.
`
`
`
`Transtech MCP 1000
`31 Transputer Network
`
`Figure 8. Machine architecture PARADOX (propincarnation).
`
`Phil. Trans. R. Soc. Lond. B (1992)
`
`[ 94 ]
`
`GNTX0001635
`
`

`

`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 8 of 11
`Case 6:21-cv-00755-ADA Document 45-8,filled02/28/22ahags.8 of 11
`1si0n
`70
`ang 347
`
`takes O(N?)
`then it
`if the curve has N points,
`iterations to converge. Because in many practical cases
`N = 1000, this can be significant. The solution to this
`problem is somehow to reduce NV. Nagel’s early work
`suggested (Nagel 1987)
`that optic flow might be
`computed at
`image locations that he called ‘image
`corners’,
`though his mathematical definition of a
`corner location can be challenged (see Noble’s thesis).
`The second reason is that the edge points suggested
`by Hildreth are the zero-crossings of a Laplacian ofa
`Gaussian filtered version of the image: V?G,*/, which
`is often approximated by the difference of Gaussian
`(blurred) versions of the image. A feature ofthis set of
`putative edge points is that they form closed image
`contours. If image edges were always two-connected,
`this wouldin principle be satisfactory; but it simply
`cannot cope with multiway junctions typified by
`occlusion.
`If the wrong occlusion interpretation is
`made by the edgefilter (and it often is in practice),
`then inevitably the optic flow estimates of (say) a
`moving object and static background are interpreted
`as a single moving object and the results intermingle
`and degrade badly. The solution is only partly
`alleviated by moving to better edge detectors, such as
`that proposed by Deriche (Deriche 1987), since it
`requires that optic flow estimates be inhibited from
`being confused across
`two independently moving
`objects.
`Wehaveinvestigated a different approach in which
`the Taylor’s series approximation to the image func-
`tion is
`truncated to second order
`in the image
`variables and first order in time. This is not elegant
`mathematically, but reflects the massive difference in
`sampling in space and time of images. Gong & Brady
`(1990) observe that a second order expansion of the
`image function along a curve yields the constraint:
`
`(t'Hn) (t'Ha+Vi-t) =0,
`
`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`It is quite straightforward to do thefiltering on the
`‘Transputer network.
`
`6. PROPAGATING CONSTRAINT FOR OPTIC
`FLOW
`
`In this section we review the work of Brady, Gong,
`and Wang aimed at
`improving in certain respects
`Hildreth’s edge-based optic flow algorithm, whose
`salient points we review. In our variant, we compute
`the full optic flow at corners lying on edges,
`then
`propagate the flow along the edge between such
`locations using a mixed wave-diffusion process.
`As a viewer moves relative to the scene, the image
`brightness pattern changes. Moreprecisely, let J(x,y,/)
`denote the imageat time /. Truncatingto first order a
`Taylor’s series approximation to the expansion ofthe
`image function at
`time and position /(x+dx,y+ dy,
`1+6t), which effectively amounts
`to assuming a
`constant brightness distribution locally,
`leads to the
`motion constraint equation (Horn 1986), given by:
`
`eat
`n*4=—-,
`A~ vill
`
`where n is a unit vector in the direction of the image
`gradient n=V//\|V/\|, and ~=[x y]" is the optic flow.
`This equation showsthatso far asa first order analysis
`is concerned, only the component of optic flow in the
`direction of the image gradient can be computed, an
`observation that is known as the aperture problem.
`Hildreth (Hildreth 1984) proposed to compute
`the optic flow only at edge points of an object.
`The underlying reason is that the magnitude of the
`gradient of the image function ||/V/|| appears in the
`denominator of the motion constraint equation, hence
`the result will be poorly conditioned if this quantity is
`small. But
`large |/V/|| corresponds to edge points.
`Hildreth suggested
`a variational
`principle
`that
`attempted to estimate the optic flow s(s) along a
`(closed zero-crossing)
`image contour r(s) given the
`local
`(aperture problem) estimates of the normal
`component g*(s). More precisely, Hildreth suggested
`computing the optic flow field ¢(s) that minimizes:
`
`Ou?
`
`far(%) es ie + r(m(s) + n(s) — wr(s))?,
`
`(0m,
`
`Thefirst two of these terms enforces a smooth flow
`field,
`the latter enforces agreement with the data.
`Hildreth tested her algorithm primarily on simulated
`data, for which she demonstrated remarkable agree-
`ment with psychophysical observations. We may say
`that Hildreth’s work represents an important step in
`understanding human visual motion competence, but
`her algorithm certainly is not practical, for two major
`reasons.
`
`is that her algorithm is inevitably slow
`The first
`even if it is implemented on a parallel computer (she
`did not consider how this might be done). The reason
`is that
`the optic flow value finally computed at a
`location 5; along the curve depends both in principle
`and in practice on the values computed (including the
`initial value) at every other curve location s2. In fact,
`
`where t is the unit tangent vector to the curve, # the
`unit normal, and H/ the image Hessian matrix as used
`in Nagel’s oreinted smoothness algorithm. Gong &
`Brady (1990) developed an algorithm that improves
`upon Hildreth’s by minimizing
`
`Ou?
`
`jas(#) +(#) + A(p(s) *n(s) — a(s))?
`pee
`detH
`+ a he Ms
`
`on,\"
`
`;
`
`where ¢=det/det//~!.
`to reduce substantially the
`The effect of this is
`computation time of Hildreth’s algorithm by reducing
`the distance over which information has to be propa-
`gated. However,
`it still turns out to be too slowfor
`* real-time implementation.
`In essence, the problemis as follows. Initially, the
`full optic flow a(s1) and f(sg) is computedat succes-
`sive corners along a piecewise smooth contour, and the
`normal component f(s),91<S<S5Q is computed in
`between. Thedifficulty is to propagate efficiently the
`additional constraint provided at the end points along
`the curve. Yuille (1988) proposed a ‘motion coherence
`algorithm’, which essentially amounts to a diffusion
`
`Phil. Trans. R. Soc. Lond. B (1992)
`
`[ 95 ]
`
`
`€
`

`

`
`
`
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 9 of 11
`
`348 «GaseG:2de¢0V-00495-ADAfoDoeument 45-8 Filed 02/28/22 Page 9 of 11
`
`Figure 9. Two images from a sequence wherethe head rotates about an axis passing through the neck and pointing
`forwards.
`
`process which propagates the end point constraints at
`a rate that is proportional to the square root of the
`numberofiterations, hence requires time proportional
`to the square of the distance separating the corners.
`An alternative scheme, introduced for shape analysis
`by Scott et al. (1988) of Oxford, combines a diffusion
`with a wave process.
`Moreprecisely, a corner constraint is propagated in
`both directions from the corner at a constant speed,
`with half the strength in each direction. The wave
`transmits the tangential component of the flow, but
`does not conserve its value. To reduce thesensitivity
`to the velocity measure, we smooth sharp changes
`using a Gaussian (diffusion). The coupled diffusion
`process reducesits value. Clearly, contour points near
`a corner are morestrongly influenced bythe value of
`the tangenial component at
`the nearby corner than
`they are by the value at
`the adjacent corner point
`further away. The algorithm runs in time propor-
`tonal
`to the arclength separating adjacent corners,
`which, given therestriction to propagation along the
`contour, is hard to improve on. Subsequent work by
`Wanget al. (1990) has described a parallel implemen-
`tation of this process on a network of Transputers.
`Figure 9 showsa pair of images from a sequence(from
`an investigation of model-based image coding)
`in
`which the head rotates in the plane of the shoulder
`
`
`
`Figure 10. Propagated flow.
`
`blades fromthe right shoulder towardsthe left. Figure
`10 shows the optic flow computed by the Gong-
`Brady—Wang algorithm,
`
`7. MUST WE COMPUTE DEPTH
`EXPLICITLY?
`
`An important step in the development of machine
`vision was the demonstration that three-dimensional
`scene layout could be computed by processes such as
`stereo, structure from motion, or shape from shading,
`contour, or
`texture. An analysis of the viewing
`geometry in a small number of images (e.g. two in the
`case ofstereo) led, via cameracalibration, to a sparse
`depth map, and then, via surface interpolation,
`to a
`dense depth map. The quality of the resulting depth
`map was evaluated in a number of ways, most
`stringently by requiring robot arms to pick and place
`objects in the field of view. Manyrecent systems have
`exploited parallel hardware simply to execute more
`quickly multistep algorithms devised originally for
`serial processors. More interestingly, parallel hard-
`ware enables more images to be processed; a system
`can always take another look, and can close the loop
`between sensing and action.
`However, closed loop control is no panacea. A key
`issue concerns the choice of control variable, and this
`straightway leads back to calibration, which we
`earlier identified as the Achilles’ heel of three-dimen-
`sional vision systems. Recall, for example,
`the error
`ellipsoids used in the pRorp system. Theerrors in the
`imageplanedirections are small, since corner feature
`points can be localised accurately; but
`the error in
`depth is
`large and circumnavigation ofthe corres-
`ponding scene point is required to give accurate depth
`values. More generally, the distance to a point in the
`scene
`is
`related nonlinearly to image quantities
`(observables) such as disparity that can be computed
`accurately. The nonlinearity corresponds to the cali-
`bration parameters, which are notoriously difficult to
`estimate accurately. From a control theoretic stand-
`point,
`filtering on depth involves a measurement
`equation that is a linear approximation to the hard-
`to-estimate nonlinear imaging geometry, a situation
`that mitigates against robustness.
`
`Phil. Trans. R, Soc. Lond. B (1992)
`
`[ 96 ]
`
`GNTX0001637
`
`

`

`Case 6:21-cv-00755-ADA Document 45-8 Filed 02/28/22 Page 10 of 11
`Case 6:21-cv-00755-ADA+Documéint458FiledO2/28/22.dPageHlO\ofd 1 349
`
`Larry Shapiro, and Steve Smith, This research was sup-
`ported by the SERC ACME Directorate and the EC under
`grants VOILA and FIRST.
`
`REFERENCES
`
`for example,
`Is there an alternative? Can we,
`compute information that is useful to a mobile robot
`directly from observables such as optic flow, disparity,
`and rate of changeofdisparity (or invariant quantities
`computed from these measures), and altogether avoid
`camera calibration. Recent work at Oxford, particu-
`larly by Cipolla (1992) and Blake & Cipolla (1990),
`suggests that we can, First, Blake & Cipolla show
`formally that if an observer makes deliberate motions
`relative to a scene containing a planar closed curve,
`then the surface normal of the plane containing the
`curve can be estimated from the symmetric compo-
`nent of the deformation of the imageof the curve, and
`the time to contact with the curve can be estimated
`from the divergence. Algorithms based on moments of
`the sequence of image curves are developed. Second,
`but again making deliberate motions, an observer can
`distinguish bounding contours of an object (where the
`surface normal turns smoothly away from the viewer)
`from edges fixed in space (for example surface creases
`or
`reflectance changes). Furthermore,
`the surface
`curvature along a bounding contour can be estima-
`ted accurately from the relative motions of surface
`features. Blake et al. (1991) discussed how this might
`be used by a moving observer to navigate among
`smooth objects, and the scheme has been refined and
`implemented by Blake et al. (1992).
`In our current work we are investigating this
`proposition further as we are developing analgorithm
`that, without knowing the motion of the observer,
`groups coplanar sets of features points,
`then deter-
`mines the orientation relative to the observer of each
`planar group, and computes the time to contact it. A
`test for coplanarity based on projective invariants has
`been developed.
`
`8. CONCLUSIONS
`
`Downloadedfromhttps://royalsocietypublishing.org/on13February2022
`
`
`
`
`
`1986 The curvature primal
`Asada, H. & Brady, J.M.
`sketch. JEEE Transactions on Pattern Analysis and Machine
`Intelligence PAMI-8 (1), 2-14.
`Blake, A. & Cipolla, R. 1990 Robust estimation of surface
`curvature from deformation of apparent contours. In Proc.
`Ist European Conf. on Computer Vi

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket