Coder Social home page Coder Social logo

francescogabbrielli / sensor-logger Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 848 KB

A "real time" dataset generator using device sensors and cameras

License: MIT License

Java 98.90% CMake 0.04% Python 1.06%
android-application sensors camera datasets opencv-android datalogger streaming-data streaming-video

sensor-logger's Introduction

SensorLogger

A "real time" dataset generator using device sensors and camera

Purpose

This Android app is stil a prototype, mainly for educational purposes. The aims of the project are:

  • to mantain as far as possible the corrispondence between frames and sensor data
  • configurable to be lightweight and not memory/battery consuming
  • as fast as possible!

Features

  • Record frames (video) and sensor data
  • Stream both images and sensors to a remote client
  • Upload to FTP
  • Save locally on the phone
  • Rotate sensor axes
  • All of the above, together!

Usage

Just start the app. To begin a recording session you can either:

  • just launch the python client. The app is preset to automatically start streaming
  • click the volume button
  • tap the screen
  • try any other button you may have.... it may work

More options to enjoy in the settings :)

Build

The app uses OpenCV. There are 2 options to build the app

Standard build

OpenCV will be linked through the OpenCV Manager app. You will be prompted to install it if you don't have it.

Native build

If you don´t want to bother installing more stuff, in this case you will need to ship the correct native libraries together with OpenCV module. To do this just uncomment the ndk section in the app build.gradle

ndk {
    moduleName "sensor-logger"
    abiFilters 'armeabi-v7a', 'arm64-v8a'
}

and the sourceSets section in the openCVLibrary module:

sourceSets {
    main {
        jniLibs.srcDirs "sdk/native/libs"
    }
}

where the path of jniLibs.srcDirs is where you will need to put the OpenCV static libraries (not included here) of your choice.

Python client

A simple python client is provided to capture the streaming of both sensors and images (because with a browser you can only access a video stream). This is actually pretty slow, being implemented with matplolib, but is a good starting point for collecting and make use of "real-time" data within a data science python application

Open on Youtube

Licenses

sensor-logger's People

Contributors

francescogabbrielli avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.