Live data from Hacker News

FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

fingerio.cs.washington.edu

111–120 of 126 posts

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#111
post #92

I work with sonar and the physical positioning of the sensors is important in trying to get useful results. Why is it these academic types don't release the apks or software? Just publications and maybe a video.

It depends on the conference or journal they submit to. I typically request that authors release data and code in the review and the same is requested of me when I submit a paper for review. I don't know, maybe CHI doesn't have that sort of culture. Or maybe they do and these students just don't have the time right now and plan to do it right before the conference in May.

Indeed, there is no culture of replicability at CHI (and even less so at UIST). Reviewers usually reward novelty and cool PoC videos, not thoroughness. It is quite rare (especially for U.S. labs) to also publish source code, schematics, or raw data. There have been some initiatives advocating for replicability, and some researchers indeed publish everything, but in the whole, a quick, shiny video of a PoC implementation is often sufficient for a paper to be accepted.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#112
post #76

Earlier quoted context omitted.

Or be (not, it would seem) overly paranoid like me, my PIN patterns and entering do not involve moving my fingers horizontally, I put my hand down on the pad with my fingers on set keys, cover it with my wallet, and type it in. I also always double one key to make it that much harder to get by observation, a trick I learned from a sysadmin with major access to my school's systems back when we all had to use public te…

What does it mean to “double one key”?

Have the PIN or password repeat one key in the sequence. Like "mwfabrrpg", if you type quickly an observer won't notice that the 'r' was typed twice in quick sequence.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#113
post #75

Earlier quoted context omitted.

They need to buffer to get a Fourier transform and to do the autocorrelation.

They say they use an "inaudible high frequency soundwave", so that should be > 20kHz. Shouldn't a buffer of a few milliseconds be more than enough then?

Presumably the buffer is longer to make the system more robust by avoiding spurious detections, not because of some fundamental limit like the Nyquist rate. You would need to set the buffer size experimentally.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#114
post #25

Earlier quoted context omitted.

> implicitly ask them I think you mean "explicitly"

No he means implicitly. By not providing everything the academic implicitly requests a conversation before providing everything. The request is never stated but is implied by the assumption that there is no other way to acquire everything.

Ah I misunderstood who was implicitly requesting the conversation, that makes sense.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#115

Regarding everyone's latency concerns, as someone who has done low-latency audio processing on Android -- in their defense I'd bet almost anything the demo is meant to only demonstrate the math behind this. Depending on the platform ( Android cough), low latency audio processing can be almost a dark art itself. And hey look, they're doing this on Android. My guess is that they decided to release the demo earlier inst…

I'm curious, besides doing things in C/C++, are there any "magic tricks" to doing low-latency audio processing on Android? Looking at the chart here [1] it still seems to be a good bit behind iOS. [1] http://www.androidpolice.com/2015/11/13/android-audio-latenc...

This is a good explainer of the various latencies in the Android audio pipeline: http://superpowered.com/androidaudiopathlatency

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#116

Earlier quoted context omitted.

I'm curious, besides doing things in C/C++, are there any "magic tricks" to doing low-latency audio processing on Android? Looking at the chart here [1] it still seems to be a good bit behind iOS. [1] http://www.androidpolice.com/2015/11/13/android-audio-latenc...

In the Java layer? About the only thing you can do is ensure that you're using the devices native sampling rate: typically 48 kHz for phones, and 44.1 kHz for tablets. Non-native sampling will induce a rather large latency hit. The buffering + buffer size stuff, unfortunately, is really only accessible in native IIRC. To be completely honest, it's been a long time since I've messed with audio-stuff on the Java-side,…

Thanks. I actually meant in addition to doing the computation side of things in C/C++, are there any undocumented tricks or pitfalls to avoid?

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#117
post #97
post #19

Earlier quoted context omitted.

Additionally, a number of these research programs take the source code and make a go of a small business product.

And in many cases the universities own the IP associated with the research that goes on in their departments so they keep the source and treat it like a company would treat a trade secret. It's likely Washington will patent this and try to license the patents.

I think we left the topic of "science" about 4 posts up. I don't know what's being described here, but it's not science. Yet somehow, I get the feeling that I'm paying for it.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#118
post #38

We need to immediately improve on PIN-code protection upon cash-withdrawal in ATMs. The problem has been there for a while, but man, it gets easier and easier.

You don't even need the sonar, because the buttons are clicky and you should be able to triangulate the origin of the sound quite easily. Also, I guess this would work with just one microphone with simple pattern matching (I assume every click + echo patterns from the structure makes every button sound quite different). The microphone should listen vibrations in the structure (not air waves). The device could be quite far away from the keyboard if it's connected in the same structure and can hear the clicks.

Re: FingerIO: Using Active Sonar for Fine-Grained Finger Tracking

#119
post #115

Earlier quoted context omitted.

I'm curious, besides doing things in C/C++, are there any "magic tricks" to doing low-latency audio processing on Android? Looking at the chart here [1] it still seems to be a good bit behind iOS. [1] http://www.androidpolice.com/2015/11/13/android-audio-latenc...

This is a good explainer of the various latencies in the Android audio pipeline: http://superpowered.com/androidaudiopathlatency

And a cool follow-up article: http://superpowered.com/android-marshmallow-latency

Last time I worked on Android Audio was around the 4.1-4.2 era, and it was absolutely brutal compared to iOS. Glad to see that it's improving finally!

Post reply on HN