GithubHelp home page GithubHelp logo

liris-vision / starling Goto Github PK

View Code? Open in Web Editor NEW
19.0 9.0 7.0 20.77 MB

A graphical tool to build simple computer-vision applications.

License: GNU General Public License v3.0

Python 93.94% Shell 6.06%

starling's Introduction

starling

Starling is a graphical tool to build simple computer-vision applications, developped by the IMAGINE, R3AM and SAARA teams of the LIRIS laboratory.

Starling provides an easy to use graphical environment to experiment computer vision, and to generate C++ code examples of vision algorithms use. It relies on the OpenCV library.

GUI

It's a fork of the Harpia project. Main improvements from Harpia 1.1 are:

  • generates C++ code using OpenCV 2.x C++ API,
  • makes new module integration easier by adding just one xml file,
  • replaces some components by new standards (XML parser, canvas).

It can also be used for OpenCV experimenting and learning.

Starling runs on Linux, MacOS and Windows. A Debian package for Ubuntu is available here.

starling's People

Contributors

elombardi2 avatar erwan-guillou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

starling's Issues

Add copy-paste of several blocks at a time

For now it is only possible to copy-paste one block at a time.
We need a more powerfull copy paste feature that can manage several blocks.
Points to address:

  • how to select several blocks ? With a rectangle selection ? With CTRL+click ?
  • must also copy the connection between the blocks.

Clicking "Run" button when a connector is initiated generates a Python error

When a connector is initiated, and the "Run" button is clicked, a Python error occurs:

File ".../harpia/GcDiagram.py", line 351, in __BlockXMLOut
if t_oConnector.fromBlock == self.m_oBlocks[t_oBlockIdx].GetId() and (self.m_oBlocks[t_oConnector.toBlock].GetState() or a_bKeepNonFlowing):
KeyError: -1

Then the "Run" button becomes grayed and irresponsive.

Improve video read

Due to the user reaction time, it's difficult to pause the video at the first frames.
We should:

  • start the video in paused state (but not in batch mode !)
  • display more clearly that the video is paused
  • implement an image by image read mode
    All this would make the "show image" block code more complex. We could keep the current "show image" block as it is, and add a new "interactive show image" block ?

Improve temporary directories management

A temporary directory is created each time the 'run' button is clicked, to put the generated files . The directories are created in the standard system place (/tmp on Linux). There are several issues:

  • it is difficult to retrieve the generated files because no information is given about their location
  • for each opened project, a lot of temporary directories are created (one for each run)
  • the temporary directories are not removed after use ; this is safe on Linux because they are created in /tmp, but not on WIndows

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.