Text from the interactive explanation
They See Me Rolling: High-Speed Event Vision-Based Tactile Roller Sensor for Large Surface Inspection
A Hamdi Khairi, Hussain Sajwani, Abdallah Mohammad Alkilany, Laith AbuAssi, Mohamad Halwani, Islam Mohamed Zaid, Ahmed Awadalla, Dewald Swart, Abdulla Ayyad, Yahya Zweiri
Original paperRobotic touch · Event cameras
Fuselages and car bodies are checked across square metres of metal for cracks, nicks and dents, often at a resolution of a tenth of a millimetre or finer. Touch sensors can feel that detail, but only one pressed patch at a time. This roller feels the surface continuously, at half a metre per second.
0.5 m/s scanning
<0.1 mm 3D error
0.5 m/s Braille reading
Roll it yourself
500 mm/s · 0.50 m/s · 1 metre of panel in 2.0 s
What the camera inside sees
Blur in one 10 ms frame: 118 pixels
Sketch of a 640 × 480-pixel view at the paper’s 0.0422 mm per pixel. The ordinary camera assumes a 10 ms exposure.
Earlier rolling and belt touch sensors that rebuilt 3D shape ran well below 0.1 m/s. This one was tested from 0.05 to 0.5 m/s on a robot arm.
Let’s build up why this works.
1 · The skin
A fingertip made of gel
Vision-based touch sensors work like a fingertip with a camera inside. A soft silicone skin, painted on the outside with a reflective silver-mica ink, presses onto a surface, and a camera behind it films how the skin bends.
Here the skin is a band of soft silicone (Sorta-Clear 18, Shore A 18) 80 mm wide, wrapped around a transparent acrylic cylinder 100 mm long. Its outer radius is 47 mm. Inside, a camera on bearings stays still while the cylinder rolls around it, lit by a white LED ring. Press harder and see what the camera can pick up.
Cross-section: gel skin pressing on an object
—
The catch: press, lift, move, repeat
A flat gel pad can only image the patch it is pressed on. Covering a whole panel means pressing, lifting and moving, again and again. A commercial handheld version (GelSight Mobile) needs about 0.1 s of exposure for every patch. One square metre is roughly 830 patches of 40 × 30 mm. Try a few presses, then roll.
A 600 × 240 mm panel, in 40 × 30 mm patches
0 of 120 patches covered
Rolling covers the surface in one continuous sweep. But now the camera is moving while it looks, and that is a problem for an ordinary camera.
2 · The problem
Why speed smears an ordinary camera
The camera sits only a few centimetres from the skin. At that range, even a gentle rolling speed sweeps a feature across many pixels while the shutter is open.
The paper’s calibration gives the scale: one camera pixel covers about 0.0422 mm of skin. So the smear in one frame is simply
blur (pixels) = speed × exposure ÷ 0.0422 mm
One frame from a frame camera inside the roller
Smear: 118 px
The frame is 640 pixels wide. A Braille dot is 1.27 mm across, about 30 pixels.
TouchRoller, an earlier rolling touch sensor, ran at about 11 mm/s for 2D texture maps; its authors noted that faster rolling blurred the camera frames. GelBelt, a sliding belt design, reached 45 mm/s. Why not just use a faster camera? Higher frame rates mean much more data to store and process, and more energy. The authors chose a different kind of eye.
3 · The eye
An eye that only reports change
An event camera has no shutter and takes no frames. Each pixel works on its own, watching the logarithm of its brightness.
When the brightness has changed by more than a threshold C since that pixel’s last report, it fires an event: its position, a timestamp accurate to microseconds, and a polarity (+1 brighter or −1 darker). Then it resets its reference level and keeps watching. Nothing that stays the same produces any data. The roller uses a DVXplorer Mini, 640 × 480 pixels.
24 pixels watching a gel imprint slide past
Events per pass: —
4 · From dots to depth
Depth from a moving eye
Move your head and nearby things slide across your view faster than distant ones. That is motion parallax, and the roller uses it to measure depth.
The robot logs its pose 100 times a second, and the software interpolates where the camera was for each small packet of events. Every event is traced back as a ray from that camera position through its pixel. The rays pass through a stack of depth planes and add a vote to every cell they cross. Where many rays from different positions cross, there is a real edge. The method is called event-based multi-view stereo (EMVS). Because the gel can only deform by about 4 mm, the search is limited to 43–47 mm from the camera, split into 500 planes: 8 µm per plane.
Ray voting in a slice of the depth volume
Predict first: tap the lower panel where you think the rays through feature B (the middle one) will cross. Then press Play or Step.
Feature B: waiting for rays…
The paper builds one depth map from every 20 ms of events. Notice how steep the rays are: the camera is about 45 mm from the skin and sees a patch only a few centimetres across, so the crossing is long and thin. Many rays from many positions are needed to pin the peak down.
5 · The new idea
Three viewpoints, one answer
The same 20 ms of events can be voted from more than one point of view. The authors build three depth maps, referenced to the camera’s position at the start, middle and end of the window.
Each map is warped to the middle view and the three are blended with weights. This is a form of Bayesian Model Averaging (BMA): Zfused = ws·Zs + wm·Zm + we·Ze. Standard EMVS uses only the middle view. Try your own weights.
Blending three noisy depth maps of a staircase
Toy-model error (MAE): 0.0734 mm
How the toy works (not the authors’ code): each view = truth + a noise shared by all views (variance 1.544) + its own noise with variance 1/0.445, 1/0.333 and 1/0.222 for start, middle and end. Weights are normalised to sum to 1, and the error scales as 0.0734 mm × √(variance ÷ 4.547). This reproduces the paper’s averages: EMVS 0.0734 mm, left & right ≈ 0.0619 mm (paper: 0.0614), calibrated BMA 0.0549 mm, and the calibrated weights are its minimum.
What the experiments showed Measured
At 0.3 m/s, blending three views cut the average error from 0.0734 mm (standard EMVS) to 0.0549 mm , a 25.2% reduction. It also beat an earlier left-and-right fusion (0.0614 mm). On a plate of three identical 0.6 mm rectangles, the spread of measured depths fell from 0.067 mm to 0.028 mm.
Using five reference views instead of three did worse on the sphere (0.1115 ± 0.0065 mm vs 0.0946 ± 0.0081 mm). More warping means more warping errors.
The calibrated weights are start 0.445, middle 0.333, end 0.222. The middle sounds like the natural favourite, but the authors suggest three reasons for the start:
The start pose comes straight from the robot’s state; later poses rely on interpolation.
Features first enter view near the start and produce high-contrast events there.
Errors that build up later in the window degrade the end view most.
The weights, a thresholding constant (C = 16) and a median filter size (45) were found by grid search, minimising error on a calibration object. Calibrating on the sphere gave the best average error across objects (0.0549 mm, against 0.0652 mm calibrated on the stairs and 0.0649 mm on the sparse sphere).
To know the true shape under the gel, the roller is rolled over a metal sphere of radius R = 4 mm. The software finds the circular contact patch, with radius r in pixels and its centre. With the measured scale f = 0.0422 mm per pixel (from a Vernier caliper pressed at 2, 3, 4 and 5 mm gaps), the sphere’s centre must sit at depth zb = −√(R² − (r·f)²), and every pixel inside the circle must lie on the sphere.
r·f = 3.67 mm · zb = −1.59 mm
6 · A surprise
Faster… and more accurate?
The authors rolled over the 4 mm sphere at four speeds, from 0.05 to 0.5 m/s. What do you expect happened to the error as the roller sped up?
Make a guess to reveal the measurements.
Sphere: error vs speed (Fig. 9)
—
Simulated illustration One 20 ms window: how far the camera travels and how many rays it collects.
Error falls as speed rises, which is the opposite of a frame camera. In the same 20 ms window a faster roller passes more edges, so more events arrive and more rays vote. That agrees with earlier work by Bhattacharya and colleagues. At slow speeds the camera barely moves within the window, so the start, middle and end maps are nearly identical, and BMA is about the same as left-and-right fusion. Its advantage grows with speed: 5.27% lower error than EMVS at 0.05 m/s, 25.2% at 0.3 m/s and 26.4% at 0.5 m/s.
7 · Reading by touch
Reading Braille at a stroll
For flat 2D features like Braille, the roller can skip full 3D and simply line its events up.
Because the robot commands the speed, the software knows how fast the image is flowing: u̇ = −(F/Z)·v, with Z = 47 mm. Shifting each event back by u̇·(t − tref) stacks a batch of events into one sharp “image of warped events”. Use the wrong speed and the dots smear, like the paper’s direct accumulation in Fig. 12a. Find the speed that makes them snap into crisp rings.
Events from a Braille plate rolling past at 0.5 m/s
Sharpness (variance of the warped-event image)
—
Decoded (2 × 3 grid → 6-bit code → letter)
—
8 · The evidence
What the roller actually measured
Six 3D-printed test objects, five runs each, compared with their known shapes. Average error over all of them: 0.0620 ± 0.0047 mm . Tap a bar to see the object.
Error by object (Table IV, mean of 5 trials)
Tap an object above.
The pattern matches section 3: sharp, well-separated edges fire many events and give the lowest error. Smooth curved tops fire few, so the sphere is hardest.
Measured point clouds Measured
Finding defects Measured
Speed vs 3D error (Table V)
Being fast is not the same as being the most precise. GelBelt reported about 13.5 µm error, but at up to 45 mm/s. This roller ran at 500 mm/s with 62.0 µm: 11× faster than GelBelt and 45× faster than TouchRoller . GelRoller reported 175 µm without a scanning speed, and TouchRoller made 2D maps only.
The tests used a UR10 robot arm rolling at maximum contact. Robot poses were logged at 100 Hz, and events were grouped in packets of 256 that share one interpolated pose.
9 · Back to the aircraft
The one-metre race
Three touch sensors, one metre of panel, in real time.
1 m at each sensor’s maximum reported speed
Finish times: 90.9 s, 22.2 s and 2.0 s. After finishing, the fast roller keeps scanning new metres.
Back to the question we started with. A roller that maps edges in 3D at walking pace brings a robot closer to feeling a whole fuselage or car body. Full 3D scans can be compared with the CAD model to catch and size dents, scratches, cracks or a rivet that is not flush. Those sharp features are exactly what an event camera sees best.
The roller is a specialist in edges. Its maps are semi-dense, built where brightness changes: smooth, featureless surfaces fire few events, and edges running parallel to the rolling direction fire fewer. Its camera is VGA, 640 × 480, and 1-megapixel event sensors now exist. The 3D step does not yet run live: 377 ms per 20 ms depth map, processed offline on a laptop CPU, while the Braille pipeline already runs at about 19 ms per frame.
Source & credits
Khairi A., Sajwani H., Alkilany A. M., AbuAssi L., Halwani M., Zaid I. M., Awadalla A., Swart D., Ayyad A., Zweiri Y. “They See Me Rolling: High-Speed Event Vision-Based Tactile Roller Sensor for Large Surface Inspection.” IEEE Transactions on Robotics (2026). doi.org/10.1109/TRO.2026.3672333 · preprint arXiv:2507.19914v3.
Figures 2–8 and 10–13 are reproduced from the paper, resized or cropped (preprint licensed CC BY-NC-SA 4.0; published version CC BY 4.0); the Fig. 9 and Table III–V charts are re-plotted from the paper’s values. The point-cloud videos come from the authors’ project page, akramekhairi.github.io/TheySeeMeRolling (CC BY-SA 4.0), re-encoded and resized.
The interactive scenes are simulated illustrations built from the paper’s numbers: the hero roller, gel cross-section, blur frame, event pixels, ray voting, speed inset, Braille compensation and race. The fusion slider uses a toy noise model tuned to reproduce Table III; it is not the authors’ code. Values marked as measured come from the paper’s tables and figures. Fig. 9 values other than 0.3 m/s are read off the paper’s chart.
Topics in this iPaper
Engineering
Surface metrology and surface inspection are crucial elements in quality assurance across diverse industries, particularly aerospace and automotive manufacturing.
Section I Introduction, page 1
Computer science
we adapt the multi-view stereo (MVS) space-sweep method, originally developed for frame-based cameras [53] and later extended to event cameras (EMVS) [54]
Section IV-B Surface Reconstruction, page 5
tactile sensing
We introduce a novel neuromorphic tactile roller sensor.
Abstract, page 1
event cameras
Each pixel operates independently and asynchronously, responding dynamically to changes in illumination.
Section III Background - Event Camera Principles, page 4
neuromorphic vision
Neuromorphic vision sensors, or event cameras, provide a promising technological solution to overcome the speed and motion blur limitations of conventional VBTSs
Section I Introduction, page 1
3d reconstruction
It uses a modified event-based multi-view stereo algorithm for 3D reconstruction
Abstract, page 1
multi view stereo
To estimate the 3D structure of the scanned surface from the event stream generated by the moving roller, we adapt the multi-view stereo (MVS) space-sweep method
Section IV-B1, page 5
bayesian model averaging
we fuse these individual depth maps using a Bayesian Model Averaging (BMA) strategy
Section IV-B2, page 6
surface inspection
Inspecting large-scale industrial surfaces like aircraft fuselages for quality control requires precise, high-resolution 3D geometry.
Abstract, page 1
braille recognition
Our system achieves the same task at 0.5 m/s, which is 2.6 times faster, while maintaining full accuracy.
Section VI-C High-Speed Tactile Braille Reading, page 13