Skip to content
Carla Prados

Projects / Research

Characterising a steerable fibre under curvature

2026 · Research student · MISI Group, UCL Hawkes Institute

Characterising a steerable fibre under curvature

Photo by Denny Müller on Unsplash

The brief

To reach the pituitary through the nose, an optical ultrasound probe has to bend to a radius of about 11.8 mm. The probes are currently made from 400 µm fibre, which the manufacturer rates to 43 mm short-term, and nobody had tested what these fibres do beyond that. My job was to find out which fibre size can reach the target and still work as an imaging probe. The project is funded by a Research Ignition Award, and I designed it from scratch.

What I did

I designed and laser-cut a test rig (four versions) that holds a fibre at thirteen fixed bends, from straight down to a 9.5 mm, 90° bend. I tested six fibre configurations: 200, 300, 400, 600 and 800 µm, plus the 400 µm fibre without its buffer coating, to separate the effect of the coating from the effect of core diameter. Each was actuated through every bend at four drive speeds: 312 runs in the plan and 285 analysed recordings. The 800 µm series stopped early because it couldn’t reach the tighter bends. I also measured how much light each fibre transmits at every bend.

To process the recordings I wrote a Python pipeline: fourteen modules and about 3,000 lines. It tracks two markers on the fibre with OpenCV, fits a B-spline along the fibre to turn pixel positions into distance along the curve, and smooths velocity with a Savitzky-Golay filter. It runs from a YAML config and the command line, caches its progress so a batch can resume after a crash, has a separate validation harness, and has guards that stop it from ever writing into the raw data. The output is a 405,000-row frame-by-frame dataset.

Two data problems needed particular care:

  • Frame rate. Every filename carries a “1/3/5/7 fps” label, but that is the actuation drive rate. The camera actually recorded at about 34.7 fps. Confusing the two changes every timing by up to 35× (983 s against 28.3 s for the same file). The pipeline checks the camera rate in three places (OpenCV and two ffprobe fields), flags the mismatch with the filename in every file, and records which value it used and why.
  • The unbuffered fibre. Without its coating the fibre is bare glass, so the detector that finds the fibre’s outline failed on all 52 videos. The rig and camera hadn’t moved between sessions, so I reused the outline from the matching buffered video. I checked the fix by confirming it recovered the known 15 mm marker spacing (median 15.03 mm). After the fix, all 52 outlines were found and 41 videos passed the quality check.

I only report a speed when the marker was detected in at least 60% of frames, and I publish the map of where tracking failed alongside the results. The pixel-to-millimetre calibration came from 1,071 pooled marker measurements, with a coefficient of variation of 1.6%.

Result

  • Reach. Every fibre except 800 µm bent cleanly down to 9.5 mm, past the 11.8 mm target. The 800 µm fibre couldn’t go below 16 mm and is ruled out.
  • Light. At the 11.8 mm bend, the 200 µm fibre kept 92% of its light. The 400 µm fibre kept 82% and the 600 µm fibre 72%.
  • Movement. The 200 µm fibre moved the most evenly in both directions, within 2.5% in the clinical range, while the 600 µm fibre deviated by up to 13.6%. Uneven tip movement distorts the reconstructed image.
  • Coating. Buffered and unbuffered 400 µm fibres moved almost identically. The unbuffered one transmitted slightly more light.

The 200 µm fibre performed best on all three measures. I’m now fabricating a 200 µm probe to measure its imaging depth.

In a separate series on the 400 µm fibre, I set the speed in mm/s and measured 1,715 strokes with a MATLAB tracking script. It showed that the stage consistently moves 7–9% faster than the speed it is set to, so the set value can’t be used as ground truth.

The work continues as my final-year project, and I presented it at the UCL Undergraduate Research Showcase 2026.