wikillm

Paper · 2022-04-13 · cs.RO

Single-grasp Deformable Object Discrimination: the Effect of Gripper Morphology, Sensing Modalities, and Action Parameters

Four robot hands and grippers squeeze two sets of deformable objects once each. Classifiers (SVM on features, LSTM on raw time series, k-NN) learn the object from the position and effort or tactile readings. The Barrett Hand reaches 94-99% on 20 polyurethane foams with SVM or LSTM. Faster squeezes and changed finger configurations hurt generalisation. Author-reported.

Support vector machineLong short-term memory (LSTM)Time series classificationDimensionality reductiontactile-sensinggraspingdeformable-objectsgripper-morphologyhaptic-object-recognition

arXivPDFMarkdown10 min read

AI-compiled by claude-haiku-5-5 on 2026-10-25, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

In plain words

Robots can often tell what an object is by squeezing it. This paper asks how much the robot's own body shapes what it feels. It uses four devices: two human-like hands and two simple two-finger grippers. Each one squeezes a soft object once, and the sensor readings from that squeeze are fed to a classifier that guesses the object.

The authors find that the robot's body matters more than the choice of classifier. A hand with many touch sensors does best. Squeezing faster makes the guess worse, and a model trained on one way of holding an object does not transfer well to another way. Readings from different devices look so different that a single model cannot easily learn all of them together. The data set of about 24,000 squeezes is published for others to use.

TL;DR

Single squeezes of 9 ordinary deformable objects and 20 polyurethane foams were recorded with two anthropomorphic hands and two parallel-jaw grippers, at several speeds and finger configurations §1 §3. The Barrett Hand, with 96 tactile cells, is the most accurate on the harder foam set. Results are author-reported and come from one data set per device, so compare them only with the same setup §5. The code is not public; the data is on OSF §4.2.4 §7.

Problem

Model-free object recognition by touch usually uses rich tactile arrays or exploratory sequences §2. The authors ask whether a single grasp is enough, and how the gripper's shape, the squeezing speed and the sensors change the result §1. Earlier work compared classifiers or features on one device, one sensor set and one action, so the effect of the embodiment was not isolated §7. The study uses one squeeze per object, which excludes exploratory sequences §2. Only the stress-strain response during compression is used, not surface exploration §2.

Method

Objects §3.1. The ordinary Objects set has 9 mostly cuboid deformable objects of different size and stiffness §3.1.1 fig. 1. The Foams set has 20 polyurethane foam blocks of similar size, each with a manufacturer's density and elasticity value §3.1.2 tab. I fig. 1.

Devices §3.2. Four devices were used fig. 2:

  • qb SoftHand (research edition): five fingers driven by one motor, with motor position and motor current as the only feedback §3.2.1.
  • Robotiq 2F-85: parallel-jaw gripper with gap position and motor current §3.2.2.
  • OnRobot RG6: parallel-jaw gripper with gap position and motor current §3.2.3.
  • Barrett Hand (BH8-282): three fingers, two of which rotate. It has 96 pressure-sensitive cells, 3 fingertip torque sensors and 8 joint encoders §3.2.4.

Grasp action §3.2. Recording starts when the gripper begins to close. The series used for analysis starts when contact is detected from a rise of about 5-10% above a nominal effort value, the exact value depending on the noise level. It ends at the device's own stopping criterion §3.2. Each device has its own stopping rule: a motor-position window for the SoftHand §3.2.1, a gap-stagnation window for the Robotiq §3.2.2, an effort threshold for the RG6 §3.2.3, and joint stop, joint limit or maximum pressure for the Barrett Hand §3.2.4.

Action parameters §3.2.1-§3.2.5. Two finger configurations are used on the two anthropomorphic hands, and the speed is varied on all four devices fig. 3. Speeds are set per device, and §3.2.5 matches nominal closing speeds across devices where possible. The RG6 threshold of 39 N gives about 46 mm/s, which corresponds to 21% closing speed on the Robotiq §3.2.5.

Series and padding §3.2 §4.1. For one device and speed, series are aligned at their end and shorter ones are padded with zeros at the start. The number of points is fixed per device and speed. Where this is not possible (Barrett, Robotiq), zeros are added at the start §4.1. Speed comparisons use up- and downsampling to equalise lengths §5.3.

Input representations §4.1. Either the raw series, one per channel, or a feature vector. The features are nine statistics per channel: minimum, mean, skewness, maximum, kurtosis, median, standard deviation, sum, and the amplitude of the Hilbert transform. They follow an earlier paper from the same group §4.1. The feature vector is standardised to zero mean and unit standard deviation across its dimensions §4.1.

Classifiers §4.2. Three methods, with several input types §4.2:

  • k-NN on raw series or features, Euclidean distance, with k chosen on the validation set separately for each gripper and object set §4.2.1.
  • SVM on features, with a grid search over kernel, C and gamma, separately for each gripper, action and object set §4.2.2.
  • LSTM on zero-padded raw series. Its final output at the last step with non-zero input feeds two linear layers and a softmax, trained with cross-entropy and Adam. A grid search covers depth, width and learning rate §4.2.3.

The problem is posed as learning a map from a multi-channel time series to one of the object labels §4.2. Each classifier is trained, validated and tested on separate subsets, with validation and test of equal size §4.2.4.

Pseudocode
# Build one sample and classify it  [§3.2] [§4.1] [§4.2]
# Input:  raw recording (T, s), nominal effort, stop rule of the device
# Output: predicted object label

def extract_series(recording, nominal_effort, noise_margin):
    # Contact: first step whose effort change exceeds the nominal value
    # by 5-10%, chosen per gripper from the noise level  [§3.2]
    contact = first_step_above(recording.effort, nominal_effort, noise_margin)
    # Keep contact up to the device's own stopping criterion  [§3.2]
    return recording[contact:stop_step(recording)]


def pad_to_length(series, length):
    # Align series at their end; add zeros at the start  [§3.2] [§4.1]
    return zero_pad_front(series, length)  # (length, s)


def features(series):
    # Nine statistics per channel, concatenated  [§4.1]
    vector = concatenate([stat_vector(channel) for channel in series.T])
    # Standardise across the whole vector; reading is ambiguous  [§4.1]
    return (vector - mean(vector)) / std(vector)


def classify_svm(train_x, train_y, validation_x, validation_y):
    best_model, best_score = None, -1.0
    # Kernels: linear, sigmoid, RBF  [§4.2.2]
    for kernel in ["linear", "sigmoid", "rbf"]:
        # C: 7-10 log-spaced values from 1e-5 to 1e-3  [§4.2.2]
        for c_value in log_grid(1e-5, 1e-3, num=8):
            # gamma: only where the kernel uses it  [§4.2.2]
            for gamma in gamma_values(kernel):
                model = svm(kernel, c_value, gamma).fit(train_x, train_y)
                score = accuracy(model, validation_x, validation_y)
                if score > best_score:
                    best_model, best_score = model, score
    # Keep the setting with the best validation score  [§4.2.2]
    return best_model

Unsupervised check §4.3. Principal component analysis on the feature vectors shows the main sources of variance: gripper, action and object §4.3 fig. 8. The paper also tried t-SNE, which it reports as similar, but shows only PCA §4.3.

Hyperparameters

NameValueWhereNotes
objects set size9 objects§3.1.1mostly cuboid
foams set size20 foams§3.1.2 tab. Idensity and CV40 elasticity from the manufacturer
qb SoftHand closing time2.5 s (v1), 1.5 s (v2)§3.2.1motor target time; no mm/s speed given
qb SoftHand stop window3 consecutive samples§3.2.1stop when no motion toward target
qb SoftHand sampling10 Hz§3.2.128 (v1) and 17 (v2) points per channel
Robotiq 2F-85 speeds0.68%, 20.69%, 63.42%, 100%§3.2.2about 1.6, 46, 80 and 131.33 mm/s
Robotiq 2F-85 stop window8 consecutive samples§3.2.2threshold "found empirically", value not stated
Robotiq 2F-85 sampling100 Hz§3.2.2about 760, 439, 356, 319 points for the four speeds
OnRobot RG6 force thresholds39 N, 109 N§3.2.3sets closing speed; 109 N to v2 is inferred
OnRobot RG6 closing speed46 mm/s (v1), 93 mm/s (v2)§3.2.3 §3.2.5matched to Barrett speeds
OnRobot RG6 sampling15 Hz§3.2.3about 45 (v1) and 41 (v2) points per channel
Barrett joint velocity0.6 rad/s (v1), 1.2 rad/s (v2)§3.2.4for action 1
Barrett compression speed46 mm/s, 93 mm/s§3.2.4for action 2, from forward kinematics
Barrett sampling200 Hz recording, about 25 Hz tactile§3.2.4about 260 (v1) and 220 (v2) points
contact threshold5-10% above nominal effort§3.2depends on noise; per device
feature set9 statistics per channel§4.1min, mean, skewness, max, kurtosis, median, std, sum, Hilbert amplitude
k-NN metricEuclidean§4.2.1k chosen on validation; value not stated
SVM kernelslinear, sigmoid, RBF§4.2.2
SVM C1e-5 to 1e-3, 7-10 values, log-spaced§4.2.2as written in the paper; see Pitfalls
SVM gamma1e-5 to 1e-3, 7-10 values, log-spaced§4.2.2only where the kernel uses it
LSTM depth2 or 4 layers§4.2.3grid
LSTM width32, 64, 128, 256 hidden units§4.2.3grid
LSTM learning ratelog grid over 1e-5 to 1e-3§4.2.3
LSTM optimiser and lossAdam, cross-entropy§4.2.3softmax output
LSTM batch sizeset by memory§4.2.3value not stated
LSTM models trained336§4.2.3best is typically 4 layers, 256 units
split sizesvalidation and test equal§4.2.4proportions and seeds not stated
chance level11% objects, 5% foamsfig. 5 fig. 6 fig. 71/9 and 1/20

Results

Author-reported. Setup: one data set per device, classifiers trained per gripper, action and object set, accuracy on the held-out split §5. Exact per-cell numbers appear only in plots (figures 5 to 7), which are not reproduced here fig. 5 fig. 6 fig. 7.

SettingMetricBaselineThis paperSource
Objects set, Barrett Hand and Robotiq 2F-85accuracy11% chanceclose to perfect across actions and classifiers; 100% for selected settings§5.1 fig. 5
Objects set, OnRobot RG6accuracy11% chanceclose behind Barrett and Robotiq (no number in text)§5.1
Objects set, qb SoftHandaccuracy11% chancebest SVM about 86% at the slow speed§5.1
Foams set, Barrett Handaccuracy5% chance94-99% across actions, with SVM and LSTM§5.2 fig. 5
Foams set, OnRobot RG6accuracy5% chanceover 75% with LSTM§5.2
Foams set, Robotiq 2F-85accuracy5% chance68-77% across speeds, with SVM§5.2
Foams set, k-NNaccuracy5% chancelags behind SVM and LSTM (no number in text)§5.2
Transfer across finger configurationsaccuracysame-setting diagonalfails for qb SoftHand and Barrett Hand§5.4 fig. 6
Transfer across speedsaccuracysame-setting diagonallimited for all devices except Barrett Hand within a configuration§5.4 fig. 6
Sensory ablation, Barrett foamsaccuracyall sensorstactile alone approaches all sensors§5.5 fig. 7
Sensory ablation, parallel grippersaccuracyall sensorsgap position alone is close to position plus current§5.5 fig. 7

The paper's summary gives Barrett Hand about 95% and Robotiq about 70% on the foams set §7.

Paper vs code

No official code. Searched: the paper and its arXiv comments do not link code; the bibliography points only to an OSF data page, osf.io/zetg3, which the paper names as its data and visualisation tool §7 and which returned no code or license (dataset only, not used as code). GitHub repository search for "deformable grasp discrimination", "haptic deformable gripper morphology", "gripper deformable discrimination", "softhand barrett LSTM haptic", "hoffmann haptic", "pliska grasp", "patni hunt-crossley" returned nothing relevant. The GitHub account of the senior author lists 12 repositories, none for this study. No project page was found in the paper.

Pitfalls

  • Data counts are in a figure. The number of samples per device, speed and object set is in Table II, which is an image in the source. The text gives only the total of about 24,000 measurements §1 §4.2.4.
  • Results are plots. Per-cell accuracies appear only in figures 5 to 7. Only the sentences in Results can be cited as numbers §5.
  • No repetition or variance. The text does not state the number of runs, random seeds, or confidence intervals. Differences of a few points should not be read as significant §5.
  • Split proportions not stated. Validation and test are "distinct but of the same size", with no ratio given §4.2.4.
  • Unclear whether reported accuracy is on test. Selection uses the validation set §4.2.2 §4.2.3. The text does not say explicitly that the numbers in Results come from the held-out test set.
  • Robotiq stroke units. The gap is given as "0-85 cm" in one place and as an 85 mm stroke in another. The mm value is likely the intended one §3.2.2.
  • Problem formulation has two label spaces. The label space is written both as integers 0..C and as the reals §4.2. The classifiers use object classes, so integer labels are the working interpretation.
  • OnRobot RG6 threshold mapping. Only 39 N to 46 mm/s is stated §3.2.5. The mapping of 109 N to 93 mm/s is inferred from the list order §3.2.3.
  • Speed matching is partial. The Barrett compression speeds in mm/s come from forward kinematics for action 2 only §3.2.4. The SoftHand is given only in closing time §3.2.1, so it cannot be matched on mm/s.
  • Padding order is ambiguous. Series are aligned at the end §3.2, but the LSTM section says it keeps the original length without saying where the zeros go §4.2.3. Selecting the output "at the last step with non-zero input" depends on this choice.
  • Feature normalisation is ambiguous. The paper says the vector is standardised "across all dimensions" §4.1. Whether this means one mean and deviation over all entries, or per dimension, is not stated.
  • Hilbert amplitude is not defined. The paper lists it as a feature without saying whether it is the envelope mean, maximum or another summary §4.1.
  • SVM C grid is unusually low. The stated range 1e-5 to 1e-3 §4.2.2 is far below common defaults; feature scaling decides whether this is sensible. No code is available to confirm the range or the scale.
  • Resampling method not named. Up- and downsampling are used to equalise lengths across speeds §5.3, but the method is not given.
  • Stopping thresholds not given. The Robotiq window threshold is "found empirically" with no value §3.2.2.
  • Compute cost is qualitative. The text says the SVM is much less demanding than the LSTM, with no timings or sizes §7. The LSTM grid has 336 models §4.2.3.
  • Dataset licence not stated. The OSF data is named as publicly available, but its licence is not given in the paper §1 §7.

Lineage

  • Builds on: features follow Hoffmann et al. (Robotics and Autonomous Systems, 2014) on terrain classification by a quadruped robot §4.1. No arXiv card.
  • Related, same devices and objects: Patni et al. (2024) estimated elasticity and viscoelasticity with the same two-finger grippers and object sets §2. No arXiv card.
  • Compared against: Wang et al. (2022), tactile two-finger gripper with randomised pinch speed §7; Liarokapis et al. (2015), 3D-printed objects with force sensors §7; Xu et al. (2013), BioTac touch §7. No arXiv cards.
  • Superseded by: not known from this wiki.

Source and license

Adapted from “Single-grasp Deformable Object Discrimination: the Effect of Gripper Morphology, Sensing Modalities, and Action Parameters” by Michal Pliska, Shubhan Patni, Michal Mares, Pavel Stoudek, Zdenek Straka, Karla Stepanova, Matej Hoffmann (arXiv:2204.06343), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors.