Comments (6)
-
ITK and hence SimpleITK has a fixed set of optimizers. These work for most registration tasks and represent different algorithmic approaches to optimization (gradient, gradient-free, evolutionary). There are many more optimization algorithms out there as this is an independent (and very interesting) research domain.
-
SimpleITK supports the ITKv4 registration framework and thus only the optimizers that are implemented there. The list of v4 optimizers can be found here. ITK still contains the v3 registration framework with its optimizers which include ones that are not in v4.
from simpleitk-notebooks.
Hi @zivy
It's very Interesting.
-
It is not clear then why v3 registration optimizers are still there, if most of the work can be done using only v4 registration framework.
-
As I can see there are two very useful optimizer in ITKv4 like MultiGradientOptimizerv4 , MultiStartOptimizerv4. I don't know whether these are implemented or not! But these are most interesting methods now a days. Anyway if these are also available in SimpleITK, please let me know.
-
I am using SimpleITK in python 2.7, evolutionary methods are not showing up. Is there some version up-gradation required?
Thanks
from simpleitk-notebooks.
@subhajitchatu
The answer to question 1 is mostly historical reasons, part of the growth of ITK over the years.
The answer to question 2 is simply to go to the doxygen documentation and see the list of optimizers supported by simpleitk. This will always be the updated list.
Question 3, by evolutionary optimizers I meant the 1+1 optimizer which is supported in SimpleITK.
from simpleitk-notebooks.
@zivy
Thanks!
I thought all ITKv4 methods will be supported in SimpleITK. Thats why I was excited when I saw MultiGradientOptimizerv4 , MultiStartOptimizerv4 in ITKv4. Because the initial guess problem can be solved via MultiStartOptimizerv4.
Anyway 1+1 optimizer is not showing in my system's SimpleITK package. SimpleITK.py should have that function, even I did a "grep" in the SimpleITK directory , but couldn't able to to find . Thats why I asked you if there is version up-gradation required or not?
from simpleitk-notebooks.
The multi start optimizer is essentially running the gradient descent multiple times based on multiple user initializations. This does not really solve the initialization challenge as the burden is still on the user to supply several initial transformations with the hope that one of them is close enough. If you want this feature added to SimpleITK, please create an issue requesting it.
The 1+1 optimizer was added in release 1.0. The ImageRegistrationMethod now has a SetOptimizerAsOnePlusOneEvolutionary method.
from simpleitk-notebooks.
Hi @zivy
Ok, I will surely create an issue, But I am also interested if SimpleITK could support multiple metric with weight parameter, because in many cases multiple metric usage is very helpful to avoid local minima or saddle point problem in optimization. I don't know how much accurate MultiGradientOptimizerv4 is in this sense. Any suggestion?
Thanks
from simpleitk-notebooks.
Related Issues (20)
- Fixing BinaryDilate cells in 300_Segmentation_Overview notebook
- Keeping notebooks clean for version control HOT 1
- Finding a place for rendered notebooks HOT 5
- Browser Icon for SITK
- Writing a notebook contribution guide HOT 1
- Sphinx + ReadTheDocs structure
- Please check order of input images to sitk.LabelOverlapMeasuresImageFilter.Execute HOT 1
- Inconsistency in distance measures in segmentation evaluation notebook HOT 5
- Warning in `00_Setup.ipynb` HOT 3
- image registration problem HOT 9
- Replace old virtualenv with modern python3 venv in documentation
- characterize_data.py fails save if output directory does not exist HOT 3
- Add renv file and instructions
- install all Python dependencies in read-the-docs build environment
- Exception thrown in SimpleITK - ERROR: No ImageJ/Fiji application found.
- How to use masks for filters HOT 2
- Using demons_filter = sitk.DiffeomorphicDemonsRegistrationFilter() filter error HOT 2
- Image origin changes in a saved image HOT 4
- Correct Documentation for order of transforms from the Image Registration Method.
- Set up issues.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from simpleitk-notebooks.