First of all, I hope package requests are appropriate here. I will try my best to make this request as constructive as can be. If requests are not appropriate, I apologize, and I won’t take it personally if the discussion gets closed.
I think it would be very beneficial to have a Julia package implementing reading and writing of files in the MRC format . One application of this format is to store 2D and 3D images from cryogenic electron microscopy. Since MRC files are images, it would probably make sense to integrate this package with ImageIO.jl. Reading an MRC file should ideally give a simple 2D or 3D array, compatible with the image processing packages already available in Julia.
There is a Python package to read MRC files into numpy arrays and write such arrays out to MRC files: mrcfile. So, I anticipate people will recommend using this package through PyCall.jl. This is probably possible, I have not tried, but it would be far from ideal since it entails having to manage a Python installation. The good part though is that this package’s license (3-clause BSD) allows drawing inspiration from it as much as one would need.
I would try to build a Julia package to read/write MRC files myself, but I am much too ignorant about too many things for this to be a tractable project: I don’t know enough Python to understand how the
mrcfile package works, nor enough Julia to implement all this. So, if anybody would like to take on this project, I will be very happy to help: I can help design an API; I can provide MRC files for testing purposes (the EMDB is also a good resource); maybe I can even do some coding if you can walk me through the logic of the implementation like I’m 5 and give me pointers (happy to read documentation any time, if it helps accomplishing this).
Thank you in advance!