I’m running MicaToolbox in the latest version of Fiji (ImageJ 1.52p with Java 1.8.0_202) on Mac OS High Sierra (10.13.6). Should all the Mica Toolbox functions work with this installation, or would you recommend that I use an older version of ImageJ? I was following the ImageJ installation recommendations here:
Most of the MicaToolbox functions seem to run ok. I loaded an image of an X-Rite Mini ColorChecker as a Linear Normalized Reflectance Stack to measure the colour chart and obtained good R^2 correlation values (>0.99). When I use measurements of my colour chart to generate a Cone Mapping Model for my camera and human visual system (CIE 1931) using the command “Generate Cone Mapping Model from Chart”, it produces a file in the Cone Models folder with the extension .java. However, I get a warning from Fiji (ImageJ) that says “The ‘Compile and Run Command’ is not currently supported. We recommend using the Script Editor or an IDE such as Eclipse for plugin development.” Can you suggest a workaround for the warning that ‘Compile and Run’ isn’t supported in Fiji (ImageJ)?
After this warning, not all of the MicaToolbox menus are visible in the Plugins menu, and I have to restart Fiji to get all the menus to appear again. When I try to convert the mspec image to a Cone Catch Image, the newly created Cone Mapping Model for my camera doesn’t appear in the drop-down menu as an option. I realized this is because my Cone Mapping Model with .java extension hasn’t been compiled to run in Fiji (ImageJ), and there isn’t a corresponding .class file in the Cone Models folder.
Hi, the issue is that you’re using FIJI instead of ImageJ. Just follow the installation instructions here. There are various toolbox functions which don’t work in FIJI (which is a just a different fork of ImageJ). The standard NIH ImageJ is well maintained and much less bulky than FIJI (which has lots of cool extra functions, but most of them aren’t useful for animal vision image analysis).
If you do need functions in FIJI rather than ImageJ you could compile the script in ImageJ, then copy the .CLASS file across to your FIJI installation.
Many thanks, Jolyon. My reason for attempting to run the micaToolbox in Fiji is that I run Fiji (ImageJ) in Matlab for other applications, and unfortunately the original ImageJ doesn’t run as easily in Matlab. I’m not studying animal vision, but I’m interested in applying parts of the QCPA framework to archaeological materials. Since I do multispectral and computational imaging of cultural heritage, I was also curious about the image calibration workflow for UV-VIS images.
For what it might be worth to others who want to use the micaToolbox with ImageJ in Matlab with other tools available in Fiji, I found a compromise that seems to work: I installed micaToolbox in ImageJ2, a transitional version of ImageJ said to have backwards ImageJ compatibility. ImageJ2 also runs in Matlab, seemingly as smoothly as Fiji. ImageJ2 supports partial functionality of “Compile and Run” with caveats, but at least it doesn’t crash (https://fiji.sc/bug/1012.html). This allowed me to generate the cone model for my camera without causing the micaToolbox menus to disappear.
I had tried the workaround you suggested (compiling the cone model .java file in ImageJ and then copying the .class file into the Fiji plugins/Cone Models folder), but unfortunately it generated a lot of errors and produced an all-white image when I applied it to my mspec image to produce a cone-catch image.
However, I found another workaround to generating the cone-catch image that works in ImageJ2 within Matlab: instead of running the “Convert to Cone Catch” menu, I compiled the cone model in ImageJ as you suggested, then copied the cone model .class file from ImageJ into the ImageJ2/plugins/Cone Models folder. Then from ImageJ2, I load the mspec image in the micaToolbox, then use “Plugins>Compile and Run” to select the cone model .class file for my camera from the ImageJ2>plugins>Cone Models folder, and voilà, it automatically generates the cone-catch image in an output window. I can convert this image to a presentation image using the micaToolbox>Image Visualization>Make Presentation Image menu.
If others are interested, I’ll report back as I try using more of the QCPA framework functions in ImageJ2 and Matlab.
Thanks again for your help, and for your team’s work on the micaToolbox, a very interesting set of image analysis tools.