Hi Matthias,

 

Daniel and I took some time to dig through the registration code. Unfortunately 
we are not at a state yet where we could commit any code. In the attachement 
you can find a patch that should solve your problem. I hope it will compile and 
work, I did not take the time to check.

 

Regards,

Klaus

 

 

Klaus Fritzsche

Dipl.-Inform., M.Sc.

DKFZ

German Cancer Research Center (Deutsches Krebsforschungszentrum) 

Member of the Helmholtz Association

Division of Medical and Biological Informatics

Im Neuenheimer Feld 280

D-69120 Heidelberg

Phone: 49-(0)6221-42-3545

Fax: 49-(0)6221-42-2354

E-Mail: [EMAIL PROTECTED]

Web: www.dkfz.de

 

Confidentiality Note: This message is intended only for the use of the named 
recipient(s) and may obtain confidential and/or privileged information. If you 
are not the intended recipient, please contact the sender and delete the 
message. Any unauthorized use of the information contained in this message is 
prohibited.

 

 

 

 

Von: Matthias Keil [mailto:[EMAIL PROTECTED] 
Gesendet: Dienstag, 2. Dezember 2008 14:03
An: Stein Daniel
Cc: [email protected]
Betreff: Re: [mitk-users] Visualization Error after Registration

 

Dear Daniel,

did you find out anything of interest in the meantime? Do you want me to help 
you with searching for the bug? If so and if you have any further debugging 
information please let me know! As I do need a working visualization in the 
registration functionality I would like to contribute some time.

Best regards,
Matthias

Matthias Keil schrieb: 

Dear Daniel,

by debugging the QmitkRigidRegistrationSelector::SetOptimizerValue function, I 
found out that the transformation matrix that is build up at the end of the 
function.

At the end of this function the following lines of code are executed after the 
transformation parameters are read.

vtktransform->GetInverse(vtkmatrix);
m_MovingGeometry->GetIndexToWorldTransform()->SetIdentity();
m_MovingGeometry->SetIndexToWorldTransformByVtkMatrix(vtkmatrix);
m_MovingGeometry->Compose(m_GeometryWorldToItkPhysicalTransform, 1);
m_MovingGeometry->Compose(m_ImageGeometry->GetIndexToWorldTransform(), 1);
m_MovingGeometry->Compose(m_GeometryItkPhysicalToWorldTransform, 0);
mitk::RenderingManager::GetInstance()->RequestUpdateAll();

Up to the second last line everything looks nice and as expected (the 
transformation matrix in m_MovingGeometry looks right). That means if for 
example a translation in x-direction was calculated the x-translation value of 
the transformation matrix was changed. After executing the line

m_MovingGeometry->Compose(m_GeometryItkPhysicalToWorldTransform, 0);

The changes made to the x-translation element are reset to the original values 
and the z-translation element is changed according to the value computed.

Maybe this helps a bit. Although you probably already debugged that far.

Best regards,
Matthias

Matthias Keil schrieb: 

Dear Daniel,

thanks for the information about the visualization errors. You can download my 
test Datasets (actually its the same dataset twice just slightly moved in 
z-direction) from our FTP server.

ftp://ftp.igd.fraunhofer.de/outgoing/makeil/

I saved them in .pic format so that you can read them.

Best regards,
Matthias

Stein Daniel schrieb: 

Dear Matthias,
 
sorry for the delay, but I was out of office and since I have implemented the 
module so far no one else has answered you. I have applied your patch to my 
working solution today. The manual registration sliders are working fine with 
your patch, so I will commit it tomorrow. I will let you know the SVN revision 
containing your patch.
 
Thank you very much for contributing the patch!
 
Regarding your other problem, we are currently working on some issues with the 
correct visualization for every update during registration within MITK. Maybe 
you can send me your testcase images, so that I can check them as well and can 
try to find a solution.
 
Best regards,
 
Daniel
 
---
 
Dipl.-Inform. Med. Daniel Stein
German Cancer Research Center
Div. Medical and Biological Informatics
Im Neuenheimer Feld 280
D-69120 Heidelberg, Germany
Phone:  (+49) 6221/42-3547
Fax:    (+49) 6221/42-2345
http://www.dkfz-heidelberg.de/de/mbi/
Homepage: http://www.dkfz-heidelberg.de/de/mbi/people/Daniel_Stein.html
 
 
 
-----Ursprüngliche Nachricht-----
Von: Matthias Keil [mailto:[EMAIL PROTECTED]
Gesendet: Mi 26.11.2008 15:48
An: [email protected]
Betreff: Re: [mitk-users] Visualization Error after Registration
 
Dear MITK developers,
 
it would be nice if you could give me a little update about the status 
of my patch. Unfortunately I didn't get any feedback so far.
 
Best regards,
Matthias
 
Matthias Keil schrieb:
  

        Dear MITK developers,
         
        I am working quite a lot with the QmitkRigidRegistration widget. I was 
        playing around a bit with the different metrics and optimizers 
        included in the functionality. I did so by decomposing a given 
        translation into its x, y and z component. Registration worked out 
        quite well for these easy given tasks (translating by 2 mm along each 
        axis).
         
        Unfortunately there seems to be an error in displaying the 
        registration results and optimization steps. I attached a .zip file to 
        visualize this error. The calculations done for the registration are 
        correct, as you can see from the output windows (amount of translation 
        is exact and mean squares metric has value 0). The error that occurs 
        is that a translation in x direction results in a translation in z 
        direction in the visualization and vice versa.
         
        I think that the error must be somewhere in the following function:
         
        QmitkRigidRegistrationSelector::SetOptimizerValue
         
        which is called for each optimizer step. I do not think that this 
        error is limited to the translation transform case only, but is more 
        systematically. Therefore I think that something might be wrong in the 
        last part of the function, where the m_movingGeometry member is 
        calculated.
         
        Unfortunately I am not that experienced with the given transformations 
        and changes between ITK and VTK yet.
         
        I am looking forward to hearing from you!
         
        Best wishes,
        Matthias Keil
        -- 
        | Dipl.-Ing. Matthias Keil
        |
        | Fraunhofer Institute for Computer Graphics (IGD)
        | Cognitive Computing & Medical Imaging
        | Fraunhoferstraße 5, 64283 Darmstadt, Germany
        |
        | phone  : +49.6151.155.212
        | fax    : +49.6151.155.480
        | e-mail : [EMAIL PROTECTED]
        | skype  : matthias.keil.office
        | web    : http://www.igd.fraunhofer.de/~makeil 
<http://www.igd.fraunhofer.de/%7Emakeil> 
        ------------------------------------------------------------------------
         
        
-------------------------------------------------------------------------
        This SF.Net email is sponsored by the Moblin Your Move Developer's 
challenge
        Build the coolest Linux based applications with Moblin SDK & win great 
prizes
        Grand prize is a trip for two to an Open Source event anywhere in the 
world
        http://moblin-contest.org/redirect.php?banner_id=100&url=/
        ------------------------------------------------------------------------
         
        _______________________________________________
        mitk-users mailing list
        [email protected]
        https://lists.sourceforge.net/lists/listinfo/mitk-users
            

 
  





-- 
| Dipl.-Ing. Matthias Keil
|
| Fraunhofer Institute for Computer Graphics (IGD)
| Cognitive Computing & Medical Imaging
| Fraunhoferstraße 5, 64283 Darmstadt, Germany
|
| phone  : +49.6151.155.212
| fax    : +49.6151.155.480
| e-mail : [EMAIL PROTECTED]
| skype  : matthias.keil.office
| web    : http://www.igd.fraunhofer.de/~makeil 
<http://www.igd.fraunhofer.de/%7Emakeil> 


________________________________



 
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/


________________________________



 
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users
  





-- 
| Dipl.-Ing. Matthias Keil
|
| Fraunhofer Institute for Computer Graphics (IGD)
| Cognitive Computing & Medical Imaging
| Fraunhoferstraße 5, 64283 Darmstadt, Germany
|
| phone  : +49.6151.155.212
| fax    : +49.6151.155.480
| e-mail : [EMAIL PROTECTED]
| skype  : matthias.keil.office
| web    : http://www.igd.fraunhofer.de/~makeil 
<http://www.igd.fraunhofer.de/%7Emakeil> 
 


________________________________



 
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
 


________________________________



 
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users
  





-- 
| Dipl.-Ing. Matthias Keil
|
| Fraunhofer Institute for Computer Graphics (IGD)
| Cognitive Computing & Medical Imaging
| Fraunhoferstraße 5, 64283 Darmstadt, Germany
|
| phone  : +49.6151.155.212
| fax    : +49.6151.155.480
| e-mail : [EMAIL PROTECTED]
| skype  : matthias.keil.office
| web    : http://www.igd.fraunhofer.de/~makeil

Attachment: initial_fixes.patch
Description: initial_fixes.patch

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to