Using the ESRF edf plugins for ImageJ with Fiji - imagej

I'm trying to use the ESRF edf plugins for ImageJ with Fiji as I also need to open 64-bit TIFF files which I cannot with ImageJ - Unsupported format or file not found.
https://www.esrf.fr/UsersAndScience/Experiments/Imaging/ID19/Software/slice-by-slice-volume-opener
https://github.com/olofsvensson/esrf-imagej-plugins/tree/master/ESRFPlugins/plugins
I have an old version of Fiji (https://github.com/Nin17/ImageJ-FIJI/tree/main) that works with the edf plugins but cannot open 64-bit TIFF files.
Unsupported bits per sample 64: https://i.stack.imgur.com/UARtZ.png
If I update Fiji to accept the 64-bit TIFFs it can no longer accept the edf files if I set them to open with Fiji or in drag and drop - it says 'Initialising base reader' and then produces something like this:
Incorrectly opened edf file: https://i.stack.imgur.com/3d02o.jpg
I can still open the edf files if I go to Plugins -> Input-Ouput -> EDFRead but this is time consuming if I have to open lots of edf files.
If I put the edf plugin files present in my old version of Fiji into a recently downloaded Fiji I get the same result.
I've tried comparing files between the two versions but I have no knowledge of Java so I don't really know what I'm looking for.
In short, how do I use the ESRF edf plugins with a single version of Fiji that can open both .edf and 64-bit tiff in either drag and drop or open with.

Related

How to Install a toolset in Fiji or ImageJ

New to FIJI and ImageJ here, so I apologize if this question sounds idiotic to the veterans. I came across a really cool toolset that can deblur laser scanning microscopy images here: http://image.bio.methods.free.fr/lsmtrans.html but it is missing from my newly downloaded FIJI release. I think I found the code here: http://rsb.info.nih.gov/ij/macros/toolsets/LSM%20Transmission%20Deblurring.txt but I have no idea how to install it by hand. Do I need to save it notepad++ as a .jar (code looks like java) or .ijm file? Or is there a way to search for it from the FIJI application?
My FIJI version: ImageJ 1.52p Java 1.8.0_172 (64 bit)
To manually install a Toolset:
Save a local copy of the file (txt extension)
Navigate to Macros/Toolsets inside your Fiji installation (on a Mac, access this by right clicking on the Fiji app in a Finder window and selecting "Show Package Contents")
Copy the file to this location
Restart Fiji if it was running
Toolset is available by clicking >> in the toolbar

How to enable CUDA 5.0 in opencv v2.4.4 and VC10 without CMake and solve error 'missing cudart32_42_9.dll'?

This is my first post, please accept my apologies if I am unclear or fail to completely abide with posting rules. I have in any case sought far and wide in prep for my own question.
Working with:
Windows 7 Enterprise version 6.1.7600
Intel Xeon CPU Quadcore 3.07GHz
NVidia Quadro 4000 GPU
CUDA v5.0 Toolkit for Windows x64 build
OpenCV v2.4.4
OpenCV Cuda Package belonging to opencv v2.4.4
Microsoft Visual Studios C++ 2010 Express ('vc10')
(!) Without CMake (!)
steps, tutorials & checks I've done:
I have installed and configured software I required for opencv 2.4.4 following the opencv.org tutorial....
with vc10, following the opencv.org tutorial on building opencv in vc10 (applying the there-described global method and placing the gpu-related dlls on top), but
I have not installed CMake software and never had any need for it, until I attempted moving calculations to the gpu.
I've furthermore copy-pasted all the .dll files I'm applying in this
vc10-solution into the 'Debug'-folder (placed in the same folder as where
the .sln file of this solution is).
Lastly, I've followed the NVidia developer Zone CUDA 5.0 Getting Started
Guide up to the 'Verify Installation' paragraph, with successful outcome, and also configured the Build configurations to include CUDA compilation following the 'build customization for existing
projects' instructions.
This question is about trying to speed up a win32 console .cpp that I've made in debug-mode (i.e. an visual studios solution using the win32 OpenCV library a rather simple image processing project, but with a blur with a large kernel that's taking much time) by making it run on the gpu. However, I am experiencing trouble running opencv with cuda 5.0 (even though OpenCV Cuda Package's readme.txt tells me to download and install Cuda 5.0).
Upon compiling and running in vc10 (=hitting F5, with Win32 Platform) - or likewise upon running the corresponding .exe executable-, I get an system error saying that "The program could not be started because cudart32_42_9.dll is missing on my computer".
Apparantly , even though opencv's readme tells me to use cuda5.0, it's still looking for the cuda-libraries belonging to 32bits cuda 4.2 toolkit (cudart 32 _42_9.dll) - and obviously not finding them because they're not installed.
In this question it is mentioned that OpenCV v2.4.4 simply hasn't been compiled with cuda 5.0 and the only way to make this run is to compile my own libraries using CMake.
My Question:
I am wondering if in the meantime allowing OpenCV v2.4.4 to run using x64 cuda 5.0 has become possible but WITHOUT having to compile my own libraries using CMake.
I would kindly like to ask any of you to share with me precisely what steps to take. In your solution, please write in detail, as this is only my third week of using C++ language, compilers libraries dlls and all such.
Many thanks in advance!
EDIT
This question has actually now (due to #talonmies 's comment) become much more like a question asked by
user 'duttasankha' titled 'OpenCV with cuda MS Visual Studio 2008', and
user 'zebullon' titled 'Do I need a 64 bit SDK on a 64 bit machine'.
In order to fully answer my own question:
I have been able to get CUDA 5.0 running without having to compile anything myself (e.g. without having to use CMake) or reinstalling any GPU driver software.
I followed - amongst others – duttasankha and zebullon’s posts (I named these in the EDIT in my question) and took an extra, small leap of faith.
I downloaded the 32 bits CUDA 4.2 SDK (software development kit, available on the same site as the other CUDA downloads) and
installed/extracted it. This is noteworthy because I had a newer
CUDA Toolkit and driver version (5.0) installed, which was 64bits!
I looked (windows search function) for where the SDK files had been
extracted and found cudart32_42_9.dll in the C:...\My
Documents\NVIDIA GPU Computing SDK 4.2\C\common\bin folder.
I copied all of the 32bits dll's in this folder (all the dll's
whose names end on '32_42_9.dll') and placed them (together with
the opencv-dll's I mention in the summary in my question above) in
the folder named 'Debug' which is positioned in the same folder in
which the .sln solution-file of this project is (this is the folder
where Visual Studios always places the .exe executable files
belonging to the project). I copied all of them because even though
I only got the message that this one cudart-dll was missing, the gpu
functions in opencv need all of the copied dll’s.
I had already completed the directions concerning the required
Visual Studios settings. (see opencv.org tutorial on enabling Visual
Studios 2010, doing so the global (not local) way, also see this
guide.
But now, in the Linker; Input; Additional Dependancies field I completed my
dependencies list with the cuda-related libraries. It looked like
this: C:\opencv\build\x86\vc10\lib\opencv_gpu244d.lib
C:\opencv\build\x86\vc10\lib\opencv_core244d.lib
C:\opencv\build\x86\vc10\lib\opencv_highgui244d.lib
C:\opencv\build\x86\vc10\lib\opencv_video244d.lib
C:\opencv\build\x86\vc10\lib\opencv_ml244d.lib
C:\opencv\build\x86\vc10\lib\opencv_legacy244d.lib
C:\opencv\build\x86\vc10\lib\opencv_imgproc244d.lib Notice that the cuda-related lib’s 'opencv_gpu244d.lib' and 'opencv_core244d.lib' are at
the top of this list. (Incidently, this core244d.lib is
cuda-related, because this is the opencv core library that came from
the OpenCV-2.4.4-CUDA-vc10.7z package I downloaded from
Sourceforge.com . Instructions for unpacking/ correct placement are
available in the accompanying .text-file in this 7z package from
Sourceforge).
In Visual Studios , in the Project-Folder Explorer, I rightclicked on
the name of my project (=vc10 solution) and choose
Build-configuration. Here I placed a check in the CUDA 5.0(.targets,
.props) which showed corresponding path “
$(VCTargetsPath)\BuildCustomizations\CUDA 5.0.targets “.
Now, running my code does not prompt any more system errors concerning missing DLL’s and the CUDA ‘Initialization and Information ‘ functions from the opencv.org documentation are also functioning in a new test-project I made up to check global functioning of the CUDA set-up.
Apparantly, the Driver and CUDA Toolkit of a newer version know how to cooperate with the DLL of the older version CUDA SDK.
Hope someone else will save some time when they read this. If I missed details in my description of the answer, please let me know.

How to combine MSI files created with WiX in differnet languages to one file where yo can select the language?

I have a Windows Installer XML (WiX 3.5) project and five localization files for my installer. Therefore WiX creates five .msi files, for every language one. How can i put all in one .msi and let the user select the language when executing the installer?
I heard something about a bootstrapper, but then i would have a Setup.exe and i need a msi file. Is it not possible to adabt the localization strings after compiling with WiX?
This can be done using transforms. Please take a look at this article:
http://www.installsite.org/pages/en/msi/articles/embeddedlang/
There are 2 parts to making this happen,
localisation of the Installer UI, and/or
choice of installed files.
The method I chose will automatically select the local (or near local) language, and can also be forced to a specific transform using command line options. This doesn't prompt the user to choose which language to install in - so maybe it doesn't actually meet your needs.
The second 'installed files' doesn't seem to be documented as well and I was recently asking about it in Why would MST not include files with different content.
As a response provided there is now an ANT build script using Windows7 SDK & antdotnet

What are advantages of using separate debug info files?

The debug info is useful when using tools like AQTime to profile application.
Since Delphi XE, there is a new linking option: "Specifying Path to Debug Info Files" that will generate a separate .TDS file.
What are advantages of using separate debug info files?
The .TDS files are Turbo Debugger 32 Debug Info files.
As you stated, separated debug info files are to be used in separated development tools, e.g. a Software Profiler.
There are several formats around. Some tools expect the information to be available as .TDS, the native Delphi format (not standard is .map), other is .DBG (Microsoft's format)... You can convert from one format to the other via some tools (e.g. map2dbg).
Another option is to embed the debugging information inside the .exe. In this case, the .exe size will grow (and may grow a lot). There are several formats arounds, but most rely on the PE chunked format.
So as advantage of using separated debug info file, I mainly see:
Does not increase the .exe size;
Can be deleted if not used;
Can be added on request (e.g. for support);
Can be compressed when not used;
Can be converted to one format to another.
For our Open Source logging tool, we provided a mixed approach: either use the standard .map file, either an external compressed .mab version (900 KB .map into 70 KB .mab), either embed the .mab to the final .exe.

How to convert ODT to DOC/RTF without openoffice.org

Is there any way to convert odt documents to doc or rtf on linux without openoffice or any library that relies on having openoffice installed ?
OpenOffice.org and its derivatives (LibreOffice, Symphony, etc) currently have one of the best converters between ODF and the Microsoft formats (besides the ODF support built into MS Office).
If those converters are not an option for you, you can choose between some alternatives: Foremost you might want to check out the KOffice project which also offers command line tools for file conversion:
KOffice - File Filters
Then there is another open source project with a free BSD license available on SourceForge:
OpenXML/ODF Translator
This project offers not only add-ins for Microsoft Office, but also a stand-alone command line version which also runs on Linux.
Then there would also be a different approach: You can automate Google Docs using command line tools:
googlecl: Command line tools for the Google Data APIs
Google Docs file conversion have internally been based on the OpenOffice.org file filters, but as far as I know they have been replaced by Aspose, a library for document formats.
Aspose is available in several versions, and as you have a Linux dependency you might want to check out their Java version.
Aspose.Words for Java
The library has its price, but you won't find another library that is not a full office suite with that quality.
If you don't want to use OpenOffice, Google Docs is your best bet. Cross-platform, web-based, and free, it takes about 2 minutes. You would upload the file, and check convert, then redownload as a doc or pdf (depends on what you want).
http://docs.google.com/
You could try this freeware (Docx2Rtf) and run it under WINE.
Checkout unoconv. It relies on OpenOffice.org its core, but it doesn't rely on any GUI packages. I assume this is what you want?
Use http://zamzar.com/ It has great support for all those formats. And is not reliant on any other installed program.
And of course, being a web page, it will work on any OS.

Resources