Git Product home page Git Product logo

bioformats_jar's Introduction

I'm a neurobiologist and microscopist by training, and I enjoy maintaining libraries in the general ecosystem of python image visualization and analysis.

  • I was a core developer of napari.
  • Many of the reusable patterns I developed there have been extracted into reusable libraries in the pyapp-kit organization which I continue to maintain.
  • I also maintain the pymmcore-plus organization, a set of packages for microscopy aquisition in pure-python/C++ environments.

In this github org, notable libraries include:

  • FPbase: source code for fpbase.org, the fluorescent protein database.
  • nd2: modern nd2 (Nikon NIS-elements) file reader with broad support
  • ome-types: Python classes for working with the OME datamodel (i.e. OME-XML metadata)
  • pycudadecon: Python wrapper for CUDA-accelerated 3D deconvolution for microscopy
  • pycudasirecon: CUDA-accelerated reconstruction for 3D-structured-illumination
  • cmap: Comprehensive colormap library, with only numpy dependency
  • PSFmodels: Scalar and vectorial models of the 3D microscope point spread function.
  • mrc: deltavision (.mrc/.dv) image file format reader/writer.

bioformats_jar's People

Contributors

tlambert03 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

bioformats_jar's Issues

Create Analogous Package for BSD Licensed Jar

The majority of formats supported by Bioformats are GPL licensed. However, a subset of them can be used in a BSD licensed package. The subset is small, but it does give access to the OME standard formats and other common formats. Since GPL is particularly aggressive, inclusion of this package is likely a non-starter for many packages.

What could be done is to use the same pipeline/structure as outlined here but use the BSD license formats. I'm not sure of all the details, but there may be interest in such a package.

Consider using scyjava?

Hi @tlambert03! ๐Ÿ‘‹

I was wondering if you have considered using the scyjava project to resolve Java dependencies, rather than shipping them in a hardcoded way like this project does?

For PyImageJ, we use scyjava (backed by jpype and jgo) and it lets you customize your classpath from remote Maven artifacts in an extensible way. Without something like this, you'll always run into problems with multiple different needed JARs on the Java classpath across multiple Python-wrappings-of-Java-libraries. Whereas if you use scyjava, we can mix and match things like AICSImageIO[bioformats] with PyImageJ and potentially other Java-backed Python components.

Do you see any reason this wouldn't be a better approach? Happy to discuss further if you have questions or comments about it!

CC @hinerm @elevans

How to import java class into python

I have folder branch like below:
`.../importer/

  • xml.py
  • xml_parser folder:
    +CMXLFile.java`

I am using scyjava.jimport to import CMXLFile java class from CMXLFile.java into xml.py My code is below:

`def read_XML_file(xml_file_path):
# initialize ImageJ
ij = imagej.init()
print(f"ImageJ version: {ij.getVersion()}")
# add class path
config.add_classpath("...\Fiji.app\jars\ij-1.53t.jar")

  # xml_file = ij.io().open(xml_file_path)
  
  CXMLFile = jimport('xml_parser.CXMLFile.CXMLFile')
  print(CXMLFile)
  cxmlfile = CXMLFile()
  imp = cxmlfile.Reader(xml_file_path)
  
  return imp

`
I get the error: TypeError: Class xml_parser.CXMLFile.CXMLFile is not found
So, My question is: How to import java class into python?

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.