1.0.4 • Published 3 years ago

image-access v1.0.4

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

ImageAccess

A class for the didactic implementation of image-processing algorithms in JavaScript.

Overview

The ImageAccess class has been developed to teach image-processing programming at the pixel level in engineering university courses. The class is written in JavaScript and is intended to be used in Jupyter Notebook laboratories run by the IJavascript kernel. However, it can also be used in a native JavaScript environment.

The aim of the ImageAccess class is to facilitate the creation and modification of images in JavaScript. As such, it provides an easy-to-use representation of graylevel images, offering methods for pixel, neighborgood and subimage access automatically taking care of boundary conditions.

The ImageAccess example notebook.ipynb showcases the basic functionalities of the ImageAccess class. Students and employees at the École polytechnique fédérale de Lausanne (EPFL) can click here to run it on the EPFL's JupyterLab instance, Noto. Others may click on the Binder tag for this repository above and run it there instead.

Main Features

With the purpose of simplifying image-processing programming in JavaScript, the ImageAccess class implements, among others, the following key features

  • dedicated verbose error handling and image comparison,
  • simple read and write access to single pixels, rows, and columns,
  • simple read access to pixel neighborhoods, supporting the simplified implementation of IP workflows using the neighborhood concept,
  • simple write access to subimages, simplifying the creation of composite images,
  • and automatic handling of boundary conditions in all of the above.

Installation

npm

The ImageAccess class can easily be installed from npm with

npm install image-access

and then be imported using

var ImageAccess = require('image-access')

GitHub

Alternatively, the github repository can be cloned and the ImageAccess class can be imported with

var ImageAccess = require('./ImageAccess.js')

Contributors

The class was developed at the EPFL's Biomedical Imaging Group, mainly by

with contributions from

The development of this class was supported by the Digital Resources for Instruction and Learning (DRIL) Fund at EPFL, which supported the projects IPLAB – Image Processing Laboratories on Noto and FeedbackNow – Automatic grading and formative feedback for image processing laboratories by Pol del Aguila Pla and Daniel Sage in the sprint and fall semesters of 2020, respectively. See the video below for more information.

Image Processing Labs with Jupyter video on YouTube

Documentation

A detailed documentation can be found in the wiki.