GithubHelp home page GithubHelp logo

jeguzzi / ai_sail Goto Github PK

View Code? Open in Web Editor NEW
8.0 4.0 2.0 97 KB

Image streamer for AI-Deck and some more.

CMake 0.12% Python 14.09% C 76.84% Makefile 0.96% C++ 1.66% Shell 0.23% Jinja 6.10%
crazyflie aideck nina gap streaming-video

ai_sail's Introduction

AI-SAIL

This repository contains code that extends the streaming example provided by Bitcraze with

  • an application-level UART protocol to exchange structured messages (and logging) between Crazyflie and GAP. GAP can also log to UART and Crazyflie can pass dynamic parameters to GAP;
  • dynamic configurations for the most important camera parameters, like format, fps, exposure and cropping;
  • streaming RAW images too, which works generally better than the default JPEG encoder, despite the higher bandwidth (> x15). For instance, it allows you to capture and stream 160 x 90 at about 60 fps;
  • streaming over JTAG and named pipes, which is much slower (1/6) than WiFi but convenient for debugging and in case you don't have NINA packaged with a GAP.
  • a client that accepts RAW images too and another that republishes the stream to ROS.

The repository is divided into 5 parts:

  • [Video-stream] client (Python3),
  • crazyflie: just the aideck.c driver and the autogenerated protocol to include in the firmware tree,
  • gap: the complete firmware for GAP8,
  • nina: the complete firmware for NINA,
  • protocol: a Python3 script to generate C-code using Jinjia templates.

Please refer to the related READMEs for documentation and follow the instruction to install the different toolchains, to build, and to run the software.

The Crazyflie code works the latest firmware, the GAP code with the latest GAP SDK (3.6), and the NINA code with ESP_IDF 3.3.1.

The name is an homage to the fantastic AI-DECK, to which we just add a sail to navigate better and faster to perilous sees of robotics and machine learning research.

ai_sail's People

Contributors

jeguzzi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ai_sail's Issues

Is `pi_camera_reg_set16` correctly implemented?

Hey!

I was browsing through this project (btw., really cool stuff!) hoping it'll help me figure out how to force a specific exposure setting on himax in my code. While doing that, I've seen that in pi_camera_reg_set16 function (which, as I understand, should be setting a parameter):

return pi_camera_reg_get(camera, reg_addr_h, v+1);

the low byte is being set, but for the high one, the get function is being used. Am I missing something or it's a mistake?

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.