IEEE Robotics & Automation Magazine - September 2013 - 52
and infrared images acquired with a ToF camera (as
described in the next section) are segmented into their
composite surfaces as described in the "Depth Segmentation" section. Leaf-model contours are fitted to the
extracted segments, the validity of the fit and the graspability of the leaf are measured, and the segments are ranked
(see the "Extraction of Grasping Points" section). A target
leaf is selected, and the robot moves the camera to a closer,
fronto-parallel view of it. The validity of the target and the
graspability are then re-evaluated (see the sections "Contour Fitting" and "Graspability"). If the leaf is considered
suitable for sampling on the basis of these criteria, then the
probing tool is placed onto the leaf following a two-step
path (see the "Intermediate Goal Position and Probing
Point" section). If the target is not considered suitable for
probing, another target leaf (from the general view) is
selected, and the procedure is repeated.
3-D Image Acquisition
Depth measurements are acquired with a ToF camera [see Figure 1(a) and (b)]. This type of sensor has the main advantage
of providing registered depth and infrared-intensity images of
a scene at a high frame rate. The ToF cameras use the wellknown ToF principle to compute the depth. The camera emits
modulated infrared light to measure the traveling time
between the known emitted waves and the ones reflected back
by the objects in the scene.
ToF cameras have two main drawbacks: low resolution
[e.g., 200 # 200 pixels for a photonic mixer device (PMD)
CamCube 3.0 camera] and noisy depth measurements due to
systematic and nonsystematic errors [17]. On the one hand,
low resolution can be a big problem for large environment
applications, but it does not have such a negative impact
when the camera is used at close ranges as it is our case. On
the other hand, noisy depth measurements due to nonsystematic errors are amplified by working in such a short
range. Systematic errors are highly reduced by calibration
procedures, and nonsystematic errors can be palliated using
filtering techniques. Here we apply two filters to remove
undesired wrongly estimated point depths and noise: a
jump-edge filter and an averaging filter [18].
Depth Segmentation
In this section, we describe an algorithm that segments
the sparse and noisy depth data measured by the ToF
camera into surface patches to extract task-relevant image
regions, i.e., leaves. We assume that plant leaves are usually represented by a single surface in a 3-D space.
Although this assumption may not be generally valid, we
assume that it holds in most cases. With the many occlusions present in grown plants and the variability of leaves
in terms of size, orientation, and 3-D shape, the application of appearance models directly to the image data with
the purpose of the leaf segmentation would be extremely
challenging, especially since partial shape models might
also have to be utilized.
52
*
IEEE ROBOTICS & AUTOMATION MAGAZINE
*
september 2013
Removing the noise and invalid points in the depth data by
using the jump-edge filter provides a sparse depth map. We
segment the data by using the infrared-intensity image of the
depth sensor as an auxiliary image. Unlike depth, which is
measured using the ToF principle, the corresponding infraredintensity image provides complete (dense) information with
little noise. In comparison with color or gray-level images, the
infrared intensity images are more amenable to segmentation,
since plant-type characteristic color textures are not present
here. The segments are then selected and merged on the basis
of the available, potentially sparse depth information.
The algorithm proceeds as follows. First, the infrared-intensity image is segmented with a standard algorithm at different
resolutions. The details can be found in [19]. This is necessary
as we do not know beforehand at which resolution good
regions will appear. Those segments that fit the depth data best,
according to a parametric surface model (see the "Fitting of
Quadratic Surface Models" section), are selected, and a new
segmentation is constructed. This procedure has been
described in detail in [15] and will thus not be repeated here.
From this intermediate segmentation and the respective estimated parametric surfaces, a graph is built, in which the nodes
represent segments, and edges represent the pairwise similarity
of the segments' surfaces, as described in the "Segment Graph"
section. Then, to remove remaining over-segmentations present in the intermediate segmentation, a graph-based merging
(clustering) procedure is employed that allows us to handle the
nonlocal character of surface properties (see the "Segment Dissimilarity" and "Graph-Based Merging of Segments" sections).
An overview of the algorithm is provided in Figure 3.
The method requires currently about . 28 s to segment
an image and to fit surface models using MATLAB and nonoptimized code.
Fitting of Quadratic Surface Models
For modeling the 3-D surfaces of image regions, we use a
quadratic function, which allows us to treat planar, spherical,
and cylindrical shapes. Surfaces with more involved curvatures could also be managed within the same approach but
are not required for the application at hand. Moreover, we use
quadratic functions that allow computing the depth z explicitly for the x-y coordinates in the form of z = f ^x, yh . Thus,
surfaces are described by the five parameters a, b, c, d, and e,
where the depth z can be expressed as a function of x and y
through z = ax 2 + by 2 + cx + dy + e .
For a given segment si, we perform a minimization of the
mean squared distance
E i,model = 1
N
/ (z j - z j,m) 2,
j
(1)
of measured depth points z j, m from the estimated model
depth z j = fi,model ^x j, y jh, where fi,model is the data-model
function and N is the number of measured depth points in the
area of segment. The optimization is performed with a NelderMead simplex search algorithm provided in MATLAB.
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - September 2013
IEEE Robotics & Automation Magazine - September 2013 - Cover1
IEEE Robotics & Automation Magazine - September 2013 - Cover2
IEEE Robotics & Automation Magazine - September 2013 - 1
IEEE Robotics & Automation Magazine - September 2013 - 2
IEEE Robotics & Automation Magazine - September 2013 - 3
IEEE Robotics & Automation Magazine - September 2013 - 4
IEEE Robotics & Automation Magazine - September 2013 - 5
IEEE Robotics & Automation Magazine - September 2013 - 6
IEEE Robotics & Automation Magazine - September 2013 - 7
IEEE Robotics & Automation Magazine - September 2013 - 8
IEEE Robotics & Automation Magazine - September 2013 - 9
IEEE Robotics & Automation Magazine - September 2013 - 10
IEEE Robotics & Automation Magazine - September 2013 - 11
IEEE Robotics & Automation Magazine - September 2013 - 12
IEEE Robotics & Automation Magazine - September 2013 - 13
IEEE Robotics & Automation Magazine - September 2013 - 14
IEEE Robotics & Automation Magazine - September 2013 - 15
IEEE Robotics & Automation Magazine - September 2013 - 16
IEEE Robotics & Automation Magazine - September 2013 - 17
IEEE Robotics & Automation Magazine - September 2013 - 18
IEEE Robotics & Automation Magazine - September 2013 - 19
IEEE Robotics & Automation Magazine - September 2013 - 20
IEEE Robotics & Automation Magazine - September 2013 - 21
IEEE Robotics & Automation Magazine - September 2013 - 22
IEEE Robotics & Automation Magazine - September 2013 - 23
IEEE Robotics & Automation Magazine - September 2013 - 24
IEEE Robotics & Automation Magazine - September 2013 - 25
IEEE Robotics & Automation Magazine - September 2013 - 26
IEEE Robotics & Automation Magazine - September 2013 - 27
IEEE Robotics & Automation Magazine - September 2013 - 28
IEEE Robotics & Automation Magazine - September 2013 - 29
IEEE Robotics & Automation Magazine - September 2013 - 30
IEEE Robotics & Automation Magazine - September 2013 - 31
IEEE Robotics & Automation Magazine - September 2013 - 32
IEEE Robotics & Automation Magazine - September 2013 - 33
IEEE Robotics & Automation Magazine - September 2013 - 34
IEEE Robotics & Automation Magazine - September 2013 - 35
IEEE Robotics & Automation Magazine - September 2013 - 36
IEEE Robotics & Automation Magazine - September 2013 - 37
IEEE Robotics & Automation Magazine - September 2013 - 38
IEEE Robotics & Automation Magazine - September 2013 - 39
IEEE Robotics & Automation Magazine - September 2013 - 40
IEEE Robotics & Automation Magazine - September 2013 - 41
IEEE Robotics & Automation Magazine - September 2013 - 42
IEEE Robotics & Automation Magazine - September 2013 - 43
IEEE Robotics & Automation Magazine - September 2013 - 44
IEEE Robotics & Automation Magazine - September 2013 - 45
IEEE Robotics & Automation Magazine - September 2013 - 46
IEEE Robotics & Automation Magazine - September 2013 - 47
IEEE Robotics & Automation Magazine - September 2013 - 48
IEEE Robotics & Automation Magazine - September 2013 - 49
IEEE Robotics & Automation Magazine - September 2013 - 50
IEEE Robotics & Automation Magazine - September 2013 - 51
IEEE Robotics & Automation Magazine - September 2013 - 52
IEEE Robotics & Automation Magazine - September 2013 - 53
IEEE Robotics & Automation Magazine - September 2013 - 54
IEEE Robotics & Automation Magazine - September 2013 - 55
IEEE Robotics & Automation Magazine - September 2013 - 56
IEEE Robotics & Automation Magazine - September 2013 - 57
IEEE Robotics & Automation Magazine - September 2013 - 58
IEEE Robotics & Automation Magazine - September 2013 - 59
IEEE Robotics & Automation Magazine - September 2013 - 60
IEEE Robotics & Automation Magazine - September 2013 - 61
IEEE Robotics & Automation Magazine - September 2013 - 62
IEEE Robotics & Automation Magazine - September 2013 - 63
IEEE Robotics & Automation Magazine - September 2013 - 64
IEEE Robotics & Automation Magazine - September 2013 - 65
IEEE Robotics & Automation Magazine - September 2013 - 66
IEEE Robotics & Automation Magazine - September 2013 - 67
IEEE Robotics & Automation Magazine - September 2013 - 68
IEEE Robotics & Automation Magazine - September 2013 - 69
IEEE Robotics & Automation Magazine - September 2013 - 70
IEEE Robotics & Automation Magazine - September 2013 - 71
IEEE Robotics & Automation Magazine - September 2013 - 72
IEEE Robotics & Automation Magazine - September 2013 - 73
IEEE Robotics & Automation Magazine - September 2013 - 74
IEEE Robotics & Automation Magazine - September 2013 - 75
IEEE Robotics & Automation Magazine - September 2013 - 76
IEEE Robotics & Automation Magazine - September 2013 - 77
IEEE Robotics & Automation Magazine - September 2013 - 78
IEEE Robotics & Automation Magazine - September 2013 - 79
IEEE Robotics & Automation Magazine - September 2013 - 80
IEEE Robotics & Automation Magazine - September 2013 - 81
IEEE Robotics & Automation Magazine - September 2013 - 82
IEEE Robotics & Automation Magazine - September 2013 - 83
IEEE Robotics & Automation Magazine - September 2013 - 84
IEEE Robotics & Automation Magazine - September 2013 - 85
IEEE Robotics & Automation Magazine - September 2013 - 86
IEEE Robotics & Automation Magazine - September 2013 - 87
IEEE Robotics & Automation Magazine - September 2013 - 88
IEEE Robotics & Automation Magazine - September 2013 - 89
IEEE Robotics & Automation Magazine - September 2013 - 90
IEEE Robotics & Automation Magazine - September 2013 - 91
IEEE Robotics & Automation Magazine - September 2013 - 92
IEEE Robotics & Automation Magazine - September 2013 - 93
IEEE Robotics & Automation Magazine - September 2013 - 94
IEEE Robotics & Automation Magazine - September 2013 - 95
IEEE Robotics & Automation Magazine - September 2013 - 96
IEEE Robotics & Automation Magazine - September 2013 - 97
IEEE Robotics & Automation Magazine - September 2013 - 98
IEEE Robotics & Automation Magazine - September 2013 - 99
IEEE Robotics & Automation Magazine - September 2013 - 100
IEEE Robotics & Automation Magazine - September 2013 - 101
IEEE Robotics & Automation Magazine - September 2013 - 102
IEEE Robotics & Automation Magazine - September 2013 - 103
IEEE Robotics & Automation Magazine - September 2013 - 104
IEEE Robotics & Automation Magazine - September 2013 - Cover3
IEEE Robotics & Automation Magazine - September 2013 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com