[ITK-users] ITK with Python Wrap: print itkMatrix proxy object

Harnish, Roy Roy.Harnish at ucsf.edu
Mon Sep 12 17:15:44 EDT 2016


Hi Fabio,

You could try / take a look at these two functions that are related to image direction. I have had some confusion about direction matrix orientation and how to index into it, so these aren't guaranteed to be correct. Hope this helps.

Roy

def itkImage_print_direction_cosine_matrix(itkImage):
    vnl_matrix = itkImage.GetDirection().GetVnlMatrix()
    for i in range(3):
        for j in range(3):
            print "{:>8.4f}".format(vnl_matrix.get(i,j)),
        print

def itkImage_set_direction_cosine_matrix(itkImage,direction_cosine_matrix):
    """
    direction_cosine_matrix is assumed to be
    of the form

    R0 C0 S0
    R1 C1 S1
    R2 C2 S2

    so we switch R and C to accomodate ITK's column
    major order.
    """
    for i in range(3):
        for j in range(3):
            if j == 0:
                col_idx = 1
            if j == 1:
                col_idx = 0
            if j == 2:
                col_idx = 2
            itkImage.GetDirection().GetVnlMatrix().set(i,j,direction_cosine_matrix[i,col_idx])


________________________________
From: Insight-users [insight-users-bounces at itk.org] on behalf of D'Isidoro Fabio [fisidoro at ethz.ch]
Sent: Monday, September 12, 2016 12:19 PM
To: insight-users at itk.org
Subject: [ITK-users] ITK with Python Wrap: print itkMatrix proxy object

Hallo,

I am using ITK with Python wrap. I would like to print the direction matrix of a 3D image obtained with the command

image.GetDirection()

However, what is printed is just

<itkMatrixPython.itkMatrixD33; proxy of <Swig object of type ‘itkMatrixD33 *’ at 0x0D3E1470> >

I understand it’s related to the wrapping, but how can I solve it?

Thank you,

Fabio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/insight-users/attachments/20160912/db3e9d7e/attachment.html>


More information about the Insight-users mailing list