
Please use this identifier to cite or link to this publication: http://hdl.handle.net/1926/1505 |
This paper is accompanied with source code and a test to load a NRRD file across the network and verify that is is read properly.







Click here for more details.
Go here to access the main testing dashboard.







The authors describe a new class which uses the CURL library to read the images through a network protocol.
Open Science:The source code is provided as well as the input images.
Reproducibility:I've been able to download, build and run the code with the test program. However I would suggest checking the output image in the test, to be sure that the class is fully working. This can be easily achieved by adding a writer to the test program and by adding the following lines:
FIND_PROGRAM(ITK_TEST_DRIVER itkTestDriver)
SET(TEST_COMMAND ${ITK_TEST_DRIVER} --add-before-env PATH ${CMAKE_BINARY_DIR})
ADD_TEST( ImageNetworkReaderTest ${TEST_COMMAND}
ImageNetworkReaderTest http://www.na-mic.org/Wiki/images/f/f6/Test.nhdr out.nhdr
--compare out.nhdr ${CMAKE_SOURCE_DIR}/images/Test.nhdr
)
ITK and curl, both fully open source.
Open source Contributions:The code is usable without problem and clearly described.
Code Quality :The code is nice.
Interest:This new class would be useful when working on several hosts (computer cluster, ...).
Free comment :The use of the current directory may be problematic in many cases. I would rather suggest using the one given by the environment variables $TMP or $TMPDIR, or in /tmp if it exist, or finally in the current directory if none of the other option are possible.
The reader doesn't seem to delete the downloaded file once no more used. I think it should, but it seems to be a quite different behavior of the cache feature proposed by Julien.
Do you think about creating a similar class to write the images through the network? Is that possible with curl?
A great contribution!
Comment by Daniel Blezek: Temp directory

Hi Gaetan,
Thanks for the nice review. The class has a method to set/get a temporary directory name. I thought it would be better to let the user/application set the temp directory rather than presume too much. Ideally, it could default to /tmp, $TMP, $TMPDIR, or the Windows equivalent, for the moment it defaults to the current directory.
Also, deleting the volume when no longer needed is a good idea. I wanted to use something like tmpnam, but I wasn't sure what the proper cross-platform solution was.
Best regards,
-dan







This paper presents a new class for loading ITK images over the network using the cURL
Open Science:The author provides the source code with tests. Anyone familiar with CMake should be able to compile and run the code.
Reproducibility:The code compiles fine under MSVC 2008 express. CMake 2.6 reports some policies errors.
Use of Open Source Software:This paper proposes a contribution to ITK.
Open source Contributions:The code is usable in his form and is failry easy to compile.
Code Quality :The code follows the ITK coding style
Free comment :1) The paper mention support for SSL protocols (FTPS/HTTPS/LDAPS). However the cURL library distributed with the source code doesn't include the crypto library, thus these protocols will not work. At least there should be an option in CMake to point to the crypto library (this would require some header modification in the cURL library). It's difficult to include the crypto/openssl library because it's not easy to Cmake-ified it. (and maybe source redistribution limitations).
2) It seems that the current source code doesn't use the cache. If an image has already been downloaded, the code should look if the image in the cache is not older than the one on the server, if it is not it should not try to download again. I have not looked deeply in the code but I don't think this is supported (otherwise just ignore this comment).
Overall a great contribution that will be really usefull, especially for regression testing.
Comment by Ethel Mcatheer: Offsprings

1)make sure your offspring are chilly.
2)Just How To wthhold the brownish aspect of switzerland move?
When cake is cooked, remove from stove instantly, place onto a brand new sheet of baking paper(using the brownish part people lower)
Remove the most truly effective cooking document in the sponge. (currently you've two blankets document on each sides.)Switch it around. Allow to cool.This method, allow release a several hot-steam for couple of minutes, the address and remove the brand new cooking document from brownish aspect, anyone won’t harm your skin.
4)The eggs that I'm applying are moderate size which appropriate for baking tray size of 10″x14″.If your eggs are in smaller size, attempt to utilize five eggs(size S) in this formula for a baking tray of 10″ x14″.(this is my very own choice)
3)in case your stove is far too warm actually bake on 180C may cause break while moving, attempt bake at 170C for twenty-five units.
Resources
![]() |
|
Download All | |
Download Source code | |
Github |
Statistics more
![]() |
|
Global rating: | ![]() ![]() ![]() ![]() ![]() |
Review rating: | ![]() ![]() ![]() ![]() ![]() |
Code rating: | ![]() ![]() ![]() ![]() ![]() |
Paper Quality: |
![]() ![]() |
Information more
![]() |
|
Categories: | Images, IO |
Keywords: | Network, ImageSource |
Toolkits: | ITK |
Export citation: |
Share
![]() |
Linked Publications more
![]() |
||
![]() by Hawley J., Johnson H.
|
||
![]() by Vercauteren T., Pennec X., Perchant A., Ayache N.
|
View license
Send a message to the author
