solettaproject / soletta

Soletta Project is a framework for making IoT devices. With Soletta Project's libraries developers can easily write software for devices that control actuators/sensors and communicate using standard technologies. It enables adding smartness even on the smallest edge devices.
http://solettaproject.org
Apache License 2.0
226 stars 109 forks source link

Denoise Filter Library for Sensors #2310

Open lblim opened 8 years ago

lblim commented 8 years ago

Task Description

Introduce denoise filter library into Soletta, it is needed for noisy sensors such as gyroscope and magnetometer Type of denoise filters

The filters and FBP node should be applied to all supported sensor types regardless Physical connection of sensors (either through sensor hub or direct connect) Logical connection of sensors (either through IIO or non-IIO)

lblim commented 8 years ago

@laykuanloon @fulong82 @elvinongbl

barbieri commented 8 years ago

did you check the buffer types? I recall @glima wrote them to address these

glima commented 8 years ago

Yes, if it's just mean/median you want, we already have support for that at least for integer types. Float could be added easily as well.

lblim commented 8 years ago

@barbieri and @glima Thanks for pointing this out. Are you referring to https://github.com/solettaproject/soletta/blob/master/src/modules/flow/int/int.c

@laykuanloon Please take a look at the source code to see if it meets our requirements, we may extend on top of it if we need more than that. Also to expand for other data type such as float.

glima commented 8 years ago

@barbieri and @glima Thanks for pointing this out. Are you referring to https://github.com/solettaproject/soletta/blob/master/src/modules/flow/int/int.c

Yes, exactly (int/buffer node).

@laykuanloon Please take a look at the source code to see if it meets our requirements, we may extend on top of it if we need more than that. Also to expand for other data type such as float.

You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/solettaproject/soletta/issues/2310#issuecomment-248482794

Gustavo Lima Chaves Intel - Open Source Technology Center

barbieri commented 7 years ago

@lblim did that work for you?

barbieri commented 7 years ago

@laykuanloon ping

laykuanloon commented 7 years ago

@barbieri I implement denoise inside my sample app. https://github.com/solettaproject/soletta/commit/45117b9b9951204bbb2c8c7d6709f76d0e0d4a30

Is better to have a denoise that can work for C and sol_direction_vector data type. What do you think?

barbieri commented 7 years ago

@lblim I agree, I'll propose this as a project, thanks.

In this project we will also propose denoise based on redundancy, like done in drones, one can use another sensor at different sampling rate, driver and mount, then use them to provide the same information and use the redundancy to reduce noise.

In addition to traditional buffer + function filtering as done before.