Hi Steve,<div><br></div><div><div>> Obviously, Bio-formats is Java, and MyTardis is Python. Judging from</div><div>> <a href="http://loci.wisc.edu/bio-formats/interfacing-non-java-code">http://loci.wisc.edu/bio-formats/interfacing-non-java-code</a>, the most</div>

<div>> sensible approach is perhaps Ice?</div><div><br></div><div>The CellProfiler project (written in Python) uses Bio-Formats. They wrote their own interprocess solution called Subimager [1], which could potentially work for you as well.</div>

<div><br></div><div>Another solution that works very well for cross-language integration is pipes. Write a small Java program that accepts some input over stdin, and provides output over stdout (and/or writes to files if that is ultimately what you want). Then call that program from Python and process the results. It is a tried and true interoperability approach that works cross-platform. We used it with the original OME Server written in Perl, and it worked great. We also use it to integrate Bio-Formats with ITK [2].</div>

<div><br></div><div>Regarding Ice, you may notice mention of "Bio-Formats Ice Bindings" on our non-Java code page. Unfortunately, they don't actually exist right now. Others have expressed interest in such bindings (e.g., the XuvTools project), but realistically I simply do not have time to develop or maintain them.</div>

<div><br></div><div>On the other hand, as Josh says, OMERO could be a good solution if you want to use Ice, because it has very well developed Ice bindings. Of course, you are then depending on the OMERO infrastructure on the server side, rather than only Bio-Formats, but perhaps that would be a good thing. There is a ton of great functionality you could leverage, which might ultimately simplify your life in the long run.<br>

<br></div><div>Regards,</div><div>Curtis</div><div><br></div><div>[1] <a href="https://github.com/CellProfiler/subimager">https://github.com/CellProfiler/subimager</a></div><div>[2] <a href="http://loci.wisc.edu/bio-formats/itk">http://loci.wisc.edu/bio-formats/itk</a></div>

<div><br></div><div><br></div><div class="gmail_quote">On Wed, Oct 31, 2012 at 11:59 PM, Steve Bennett <span dir="ltr"><<a href="mailto:stevage@gmail.com" target="_blank">stevage@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hi all,<br>
  I work on a project called MyTardis [1] that is a Django-based<br>
research data repository used particularly for protein<br>
crystallography, electron microscopy, and synchrotron science at<br>
research institutions around Australia. New deployments typically<br>
spend time writing filters to read file formats, mostly in order to<br>
extract metadata (occasionally data visualisation too). It's occurred<br>
to us[2] that it might make more sense to use (and contribute to) an<br>
existing library like Bio-formats. The data files include standard<br>
image files (.tif), instrument-specific image files (eg, FEI,<br>
Philips...), numeric spectrum data, and I think some 3D formats. We<br>
may be starting work on some neuroimaging data (NIFTI etc) soon.<br>
<br>
Obviously, Bio-formats is Java, and MyTardis is Python. Judging from<br>
<a href="http://loci.wisc.edu/bio-formats/interfacing-non-java-code" target="_blank">http://loci.wisc.edu/bio-formats/interfacing-non-java-code</a>, the most<br>
sensible approach is perhaps Ice?<br>
<br>
So, I was wondering if anyone has experience with this kind of Python<br>
usage, and perhaps has some sample code to share?<br>
<br>
Our major use cases would be:<br>
1) At the time of (asynchronous) import, MyTardis would call<br>
Bio-formats to request specific information about the file: instrument<br>
parameters, user name, image dimensions - whatever is appropriate.<br>
2) (less important) Calling Bio-formats to extract pixel-level data,<br>
or even do wholesale image conversions (eg, to .jpeg)<br>
<br>
Performance is not a major consideration for most deployments  -<br>
imports take place in the background, usually after the researcher has<br>
left the instrument.<br>
<br>
Thanks,<br>
Steve<br>
<br>
Victorian e-Research Strategic Initiative (Melbourne)<br>
<br>
[1] <a href="http://mytardis.github.com/" target="_blank">http://mytardis.github.com/</a> - new web page in development<br>
[2] Prompted by meeting Jason Swedlow at an e-Research conference in<br>
Sydney this week.<br>
_______________________________________________<br>
ome-users mailing list<br>
<a href="mailto:ome-users@lists.openmicroscopy.org.uk">ome-users@lists.openmicroscopy.org.uk</a><br>
<a href="http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users" target="_blank">http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users</a><br>
</blockquote></div><br></div>