[Insight-users] generating a vector Image
Hila Hiler
hilahiler at gmail.com
Fri May 18 11:03:59 EDT 2012
Hi David, thank you for your suggestion.
actually I don't know how to generate a dummy image that has the following
properties:
Input image:
PixelType: unsigned short
Dimension: 3
Dimensions: 202 419 157
IndexToWorldTransform:
Matrix:
0.488281 0 0
-0 -0.488281 0
-0 0 1
and in addition to my code below:
#define myDimension 3
#define vectorLength 3
Sorry I can't help you a lot ...
On Fri, May 18, 2012 at 3:09 PM, David Doria <daviddoria at gmail.com> wrote:
> On Fri, May 18, 2012 at 5:46 AM, Hila Hiler <hilahiler at gmail.com> wrote:
>
>> Hi,
>>
>> I'm trying to generate a vector image with the same dimensions and region
>> as another image that I have.
>> a RT error about itkSmartPoint/ memory failure are stopping me from get
>> this vector image
>>
>> Here is my code, I really lost of ideas why it's happening here.
>>
>> Thanks in advance.
>>
>>
>> my code:
>>
>>
>> typedef double pixelType;
>> typedef itk::Image < pixelType, myDimension > ImageType;
>>
>> //vector Type
>> typedef itk::VectorImage < pixelType, myDimension > vectorImageType;
>>
>> vectorImageType::Pointer vectorImage = vectorImageType::New();
>> ImageType::Pointer myItkImg;
>>
>> //...some manipulation on myItkImg (initializing and assigning data))
>>
>> 1) first try is:
>>
>> itk::CastImageFilter<ImageType,vectorImageType>::Pointer caster =
>> itk::CastImageFilter<ImageType,vectorImageType>::New();
>>
>> //cast to vector img
>> caster->SetInput(myItkImg);
>> caster->Update();
>> vectorImage = caster->GetOutput();
>> vectorImage->SetVectorLength(vectorLength);
>> vectorImage->Allocate(); *//here the RT occurs*
>>
>> */*RT stop at this itk's internal code:*
>> void UnRegister()
>> {
>> if(m_Pointer) { m_Pointer->UnRegister(); }
>> }
>> */
>>
>>
>> 2) second try:
>>
>> vectorImageType::SizeType size;
>>
>> size[0]=myItkImg->GetDimension(0);
>> size[1]=myItkImg->GetDimension(1);
>> size[2]=myItkImg->GetDimension(2);
>>
>> ImageType::SpacingType img_spacing= myItkImg->GetSpacing();
>> vectorImageType::SpacingType vec_spacing;
>>
>> vec_spacing[0]= img_spacing[0];
>> vec_spacing[1]= img_spacing[1];
>> vec_spacing[2]= img_spacing[2];
>>
>> vectorImageType::IndexType start;
>> start.Fill(0);
>>
>> vectorImageType::RegionType region(start,size);
>> vectorImage->SetSpacing(vec_spacing);
>> vectorImage->SetRegions(region);
>> vectorImage->SetVectorLength(vectorLength);
>> vectorImage->Allocate(); *//here the RT occurs*
>> /*
>> *RT stop at this itk's internal code:*
>> itkDebugMacro (<< "Setting imageIO IORegion to: " << m_ActualIORegion
>> );
>> m_ImageIO->SetIORegion( m_ActualIORegion );
>> */
>>
>
> Please make compilable examples. It is only a few more lines to produce
> some dummy data and include the necessary headers. The idea is that then we
> can copy/paste/compile and see the error.
>
> David
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20120518/22ec4269/attachment.htm>
More information about the Insight-users
mailing list