The 1 € Filter: improved Human-computer interaction
CC0 / Pixabay
Human-computer interaction (HCI) has never been in the news as much as now. While it is true that technological progress is important and reverberates through our daily lives, there are still improvements to be made. Accuracy and responsiveness are at the centre of these concerns. It's also what at stake in the 1 € Filter project of the Mjolnir team at the Inria Lille - Nord Europe research centre.
Can latency be reduced for interactive systems with noisy input? That's the challenge of the 1 € Filter ("one euro filter") project conducted by the Mjolnir research team of the Inria Lille – Nord Europe centre (in conjunction with the University of Lille − Sciences and Technologies*). It's a first order adaptive low-pass filter whose name is a play on the $1 Recognizer algorithm. The aim is to find a simple method for working on two important factors in the use of interactive systems: noise filtering and reducing delay time (latency) in an increasingly digital world. Géry Casiez, researcher in Human-computer interaction at the University of Lille – Sciences and Technologies and member of the Mjolnir team, sums up the issue like this: “When we use peripherals other than a mouse, which has a fairly stable pointer, the object trembles, which indicates that there is noisy input data. When we try to reduce this noise, there is latency, which can really hinder the user.” This is the case when using a Kinect, for example. The video camera films the position of the user's hand, but on the screen the pointer may tremble and must be filtered for it to be stable. Such filtering introduces latency, which is especially visible if the player moves the Kinect quickly. This ultimately results in slowing down the person and increasing the number of errors. Performing a task with accuracy thus becomes rather difficult.
A number of known algorithms can be used to reduce the noise. The problem is that they introduce a delay time which can be significant between the action of the user and the response on the screen, and which is not always satisfactory for the end user. The significance of the filter is thus in better control of the latency that is introduced: “With noise reduction equivalent to other existing algorithms, 1 € Filter introduces less latency,” explains Casiez.
A simple tool that is available to all
From a practical point of view, the tool is easy to use. There is no complex procedure or correlation problem to set the two filter parameters, fcmin and beta. The first is used to adjust the noise reduction level and the second serves to minimise latency introduced by the filter. Noise reduction increases with filtering, but latency also increases. When the noise filtering level, fcmin, is acceptable, the value of beta is gradually increased to reduce latency without reintroducing noise. “There is a real compromise between reduction of input noise and latency,”explains the researcher.Indeed, at low speed, the noise is the most disturbing. Inversely, latency is more disturbing at high speed. The filter is intended to balance these two parameters to sufficiently reduce noise with a satisfactory decrease in induced latency.
A user-friendly tool that is freely available on the Internet for industrial users, researchers and “enlightened enthusiasts”, in the words of Casiez, such as users of Arduino cards who would like to interact with sensors, for example. Several of these enthusiasts have sent the researcher applications of the filter in various computing languages, which has given Casiez some ideas: “In the short term, after verifying the code, I would like to bring all the versions of 1 € Filter together to create a project on the GitHub site, which hosts several open source projects,” so that everyone can use the filter in the language they wish.
What's next? The scientist is continuing to work on measuring latency in interactive systems. Work is already under way to compensate induced latency between the movement of the finger and the object on the screen, such as a tablet. “We're looking for algorithms that can anticipate the action of the user to make up for the latency.We're trying to predict the position of the finger in the near future in order to estimate its current position. Such algorithms could clearly be used with the 1 € Filter,” explains Casiez. The goal is to make interactive systems more and more reactive in the future.
*Within joint research unit UMR 9189 - CNRS-Centrale Lille-University of Lille1 − Sciences and Technologies, CRIStAL.