Coder Social home page Coder Social logo

biologytools / bio Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 0.0 29.62 MB

A .NET library & program for annotating, & editing various microscopy imaging formats using Bioformats supported images. including whole slide, pyramidal & series.

Home Page: https://github.com/BiologyTools/Bio

License: GNU General Public License v3.0

C# 100.00%
biology microscopy csv imagej roi ome omero bio-formats whole-slide-image

bio's Introduction

alt text

Bio

A .NET application & library for editing & annotating various microscopy image formats. Supports all bioformats supported images. Integrates with ImageJ, running ImageJ filters & macro functions. Download the prebuilt sample application Also check out the new wiki for library usage. or check out the documentation. Supports Windows, Linux.

Features

  • C# scripting with sample tool-script and other sample scripts in "/Scripts/" folder. See samples

  • Supports running ImageJ macro commands on images open in Bio. New Console to run ImageJ macro commands and Bio C# functions.

  • Supports Pyramidal images with multiple resolutions. Like whole slide images.

  • Multiple view modes like Emission, and Filtered. ROI's shown for each channel can be configured in ROI Manager.

  • Supports drawing shapes & colors onto 16 bit & 48 bit images, unlike System.Drawing.Graphics.

  • Convenient viewing of image stacks with scroll wheel moving Z-plane and mouse side buttons scrolling C-planes.

  • Editing & saving ROI's in images to OME format image stacks.

  • Copy & Paste to quickly annotate images and name them easily by right click.

  • Select multiple points by holding down control key, for delete & move tools.

  • Exporting ROI's from each OME image in a folder of images to CSV.

  • Easy freeform annotation with magic select tool which selects based on blob detection.

  • Use AForge filters by opening filters tool window and right click to apply. Currently supports only some AForge filters as many of them do not support 16bit and 48bit images. Convert to 8bit image to make use of more filters. Applyed filters can be easily recorded and used in scripts. Bio impliments some filters like crop for 16 & 48 bit images.

  • Star this project on Github to help spread the word about Bio!

Dependencies

Licenses

Scripting

  • Save scripts into "StartupPath/Scripts" with ".cs" ending.
  • Open script editor and recorder from menu.
  • Double click on script name in Script runner to run script.
  • Scripts saved in Scripts folder will be loaded into script runner.
  • Program installer include sample filter & tool script.
  • Use Script recorder to record program function calls and script runner to turn recorder text into working scripts. (See sample scripts

Sample Tool Script

//css_reference Bio.dll; using System; using System.Windows.Forms; using System.Drawing; using Bio; using System.Threading;

public class Loader {

//Point ROI Tool Example
public string Load()
{
	int ind = 1;
	do
	{
		Bio.Scripting.State s = Bio.Scripting.GetState();
		if (s != null)
		{
			if (!s.processed)
			{
				if (s.type == Bio.Scripting.Event.Down && s.buts == MouseButtons.Left)
				{
					ZCT cord = Bio.App.viewer.GetCoordinate();
					Bio.Scripting.LogLine(cord.ToString() + " Coordinate");
					Bio.ROI an = Bio.ROI.CreatePoint(cord, s.p.X, s.p.Y);
					Bio.ImageView.SelectedImage.Annotations.Add(an);
					Bio.Scripting.LogLine(cord.ToString() + " Coordinate");
					an.Text = "Point" + ind;
					ind++;
					Bio.Scripting.LogLine(s.ToString() + " Point");
					//ImageView.viewer.UpdateOverlay();
				}
				else
				if (s.type == Bio.Scripting.Event.Up)
				{
					Bio.Scripting.LogLine(s.ToString());
				}
				else
				if (s.type == Bio.Scripting.Event.Move)
				{
					Bio.Scripting.LogLine(s.ToString());
				}
				s.processed = true;
			}
		}
	} while (true);
	return "OK";
}

}

bio's People

Contributors

biologytools avatar repoman123 avatar

Stargazers

 avatar  avatar  avatar  avatar  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.