All Projects → imjoy-team → Imjoy

imjoy-team / Imjoy

Licence: mit
ImJoy: Deep Learning Made Easy!

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Imjoy

Photon
⚡ Rust/WebAssembly image processing library
Stars: ✭ 963 (+608.09%)
Mutual labels:  image-processing, webassembly
Wasm Imagemagick
Webassembly compilation of https://github.com/ImageMagick/ImageMagick & samples
Stars: ✭ 442 (+225%)
Mutual labels:  image-processing, webassembly
Bisweb
This is the repository for the BioImage Suite Web Project
Stars: ✭ 54 (-60.29%)
Mutual labels:  image-processing, webassembly
Smartcircle
✂️Automatically determine where to crop a circular image out of a rectangular.
Stars: ✭ 29 (-78.68%)
Mutual labels:  image-processing, webassembly
Sod
An Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)
Stars: ✭ 1,460 (+973.53%)
Mutual labels:  image-processing, webassembly
Deno Wasi
A (WIP) WebAssembly System Interface implementation for Deno
Stars: ✭ 132 (-2.94%)
Mutual labels:  webassembly
Unity Webxr Export
Develop and export WebXR experiences using Unity WebGL
Stars: ✭ 130 (-4.41%)
Mutual labels:  webassembly
Percy
Build frontend browser apps with Rust + WebAssembly. Supports server side rendering.
Stars: ✭ 1,856 (+1264.71%)
Mutual labels:  webassembly
The Rusty Web
Targeting the web with Rust.
Stars: ✭ 128 (-5.88%)
Mutual labels:  webassembly
Friendly Pow
The PoW challenge library used by Friendly Captcha
Stars: ✭ 136 (+0%)
Mutual labels:  webassembly
Easyocr
Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.
Stars: ✭ 13,379 (+9737.5%)
Mutual labels:  image-processing
Ssocr
Seven Segment Optical Character Recognition
Stars: ✭ 133 (-2.21%)
Mutual labels:  image-processing
Made With Webassembly
A showcase of awesome production applications, side projects, and use cases made with WebAssembly (Wasm). 👷
Stars: ✭ 132 (-2.94%)
Mutual labels:  webassembly
Nuxt Image Loader Module
An image loader module for nuxt.js that allows you to configure image style derivatives.
Stars: ✭ 135 (-0.74%)
Mutual labels:  image-processing
Deepfriedmemes.com
🅱️ Deep fries your pics. Serve with laundry sauce.
Stars: ✭ 131 (-3.68%)
Mutual labels:  image-processing
Pubgis
Generate maps of your position throughout PUBG gameplay
Stars: ✭ 135 (-0.74%)
Mutual labels:  image-processing
Dithergo
Various dithering algorithms implemented in Go
Stars: ✭ 128 (-5.88%)
Mutual labels:  image-processing
Ffcc
Fast Fourier Color Constancy: an auto white balance solution with machine learning in Fourier space
Stars: ✭ 133 (-2.21%)
Mutual labels:  image-processing
Filepond
🌊 A flexible and fun JavaScript file upload library
Stars: ✭ 11,869 (+8627.21%)
Mutual labels:  image-processing
Spacechop
HTTP service for high-level image processing with first-class Docker support.
Stars: ✭ 133 (-2.21%)
Mutual labels:  image-processing

Powered by ImJoy License ImJoy Version Build Site Join the chat at https://gitter.im/imjoy-dev/community image.sc forum

ImJoy - Deep Learning Made Easy!


New: We now provide ImJoy Docs, so you can now easily make interactive documentation for your ImJoy plugins.

New: Kaibu is a web application for visualizing and annotating multi-dimensional images, we provide interactive documentation for the developers to use it.

New: ImageJ.JS is our recent effort to make ImageJ running in the browser and integrated with ImJoy.


ImJoy is a plugin powered hybrid computing platform for deploying deep learning applications such as advanced image analysis tools.

ImJoy runs on mobile and desktop environment cross different operating systems, plugins can run in the browser, localhost, remote and cloud servers.

With ImJoy, delivering Deep Learning tools to the end users is simple and easy thanks to its flexible plugin system and sharable plugin URL. Developer can easily add rich and interactive web interfaces to existing Python code.

Checkout the documentation for how to get started and more details for how to develop ImJoy plugins: ImJoy Docs

Key Features of ImJoy

  • Minimal and flexible plugin powered web application

  • Server-less progressive web application with offline support

  • Support mobile devices

  • Rich and interactive user interface powered by web technologies

    • use any existing web design libraries
    • Rendering multi-dimensional data in 3D with webGL, Three.js etc.
  • Easy-to-use workflow composition

  • Isolated workspaces for grouping plugins

  • Self-contained plugin prototyping and development

    • Built-in code editor, no extra IDE is needed for development
  • Powerful and extendable computational backends for browser, local and cloud computing

    • Support Javascript, native Python and web Python
    • Concurrent plugin execution through asynchronous programming
    • Run Python plugins in the browser with Webassembly
    • Browser plugins are isolated with secured sandboxes
    • Support async/await syntax for Python3 and Javascript
    • Support Conda virtual environments and pip packages for Python
    • Support libraries hosted on Github or CDNs for javascript
    • Easy plugin deployment and sharing through GitHub or Gist
    • Deploying your own plugin repository to Github
  • Native support for n-dimensional arrays and tensors

    • Support ndarrays from Numpy for data exchange

ImJoy greatly accelerates the development and dissemination of new tools. You can develop plugins in ImJoy, deploy the plugin file to Github, and share the plugin URL through social networks. Users can then use it by a single click, even on a mobile phone

Quick Start

The easiest way to try ImJoy is to start with a plugin running directly in the browser.

For example, you can install our Image Recognition plugin with this link. Clicking the link will open the ImJoy Web App and show a dialog to confirm the installation of the plugin. Once installed, you can launch the plugin by clicking the button Image Recognition in the plugin menu on the left. The demo plugin will run a trained deep neural network model (MobileNet) to perform image classification (e.g. identifying an elephant in an image).

This plugin uses your browser as its computational backend, so all computation is done locally, no data will be sent to a remote server.

Besides running plugins in the browser, ImJoy provides the flexibility to keep the GUI locally in your browser, and perform computational tasks with Python. These computations can be performed on your computer utilising the full power of the local GPU/CPU. The computational backend can also be launched on remote servers including cloud servers on Amazon, Google Compute, or an institutional computing cluster.

Previously, running Python plugins would require installation of the Plugin Engine. However, now we have added experimental support for running Python plugins via the servers provided by MyBinder.org. You can try for example the DeepBindScan plugin without any installation.

To learn more details about ImJoy, please go to ImJoy Docs.

Repositories

Currently, ImJoy consists of the following repositories:

Documentation, questions and feedback

  1. We provide a detailed ImJoy Docs. This includes a section with frequently asked questions.
  2. For further help and questions for how to use ImJoy and process data with ImJoy, you can post on image.sc.
  3. To report bugs or suggest enhancements for ImJoy itself, please file a GitHub issue.

Acknowledgements

This is a non-exhaustive list of the open-source tools and libraries we used in ImJoy:

  • Joy.js (This is where the name ImJoy comes from!)
  • Jailed (This helps ImJoy to isolate plugins)
  • Vue.js (The main ImJoy App is written in Vue.js)
  • vue-grid-layout (For window management)
  • python-socketio (This how the plugin engine talk with the ImJoy app)
  • pyodide (Enables web python mode with WebAssembly)
  • conda (The plugin engine uses Conda for managing virtual env. and packages)
  • docsify (The ImJoy documentation is created with docsify)

We thank all the authors for offering these excellent work to the open-source community.

Support ImJoy

Please star the ImJoy GitHub repository to support ImJoy.

If you use ImJoy in your project, please add one of the badges to your code repository or website: Powered by ImJoy Launch ImJoy, see how to add an ImJoy badge.

We would like ImJoy to be a community driven framework, everyone is welcome to contribute your idea, feedback, plugins and code to the project.

If you are interested in contributing to the project, please read our guideline here.

Citation

Please cite our paper on Nature Methods (https://www.nature.com/articles/s41592-019-0627-0, free access: https://rdcu.be/bYbGO ):

Ouyang, W., Mueller, F., Hjelmare, M. et al. ImJoy: an open-source computational platform for the deep learning era. Nat Methods (2019) doi:10.1038/s41592-019-0627-0

Code of Conduct

Help us keep the ImJoy community open and inclusive. Please read and follow our Code of Conduct.

License

MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].