[Insight-developers] ITK 3.12: FREEZING TODAY
Bill Lorensen
bill.lorensen at gmail.com
Thu Feb 26 14:56:55 EST 2009
A simple fix to the warning is to create a variable set = to
NumberOfSmoothingFilters.
On Thu, Feb 26, 2009 at 10:19 AM, Andinet Enquobahrie
<andinet.enqu at kitware.com> wrote:
> Bill,Luca-
>
> Another warning that Luis and I diagnosed this morning is the following
>
> http://www.cdash.org/CDash/viewBuildError.php?type=1&buildid=279996
>
> This particular issue is related to the following fragment code in
> HessianRecursiveGaussianImageFilter.txx:38
>
> for( unsigned int i = 0; i<NumberOfSmoothingFilters; i++ )
> {
> GaussianFilterPointer filter = GaussianFilterType::New();
> filter->SetOrder( GaussianFilterType::ZeroOrder );
> filter->SetNormalizeAcrossScale( m_NormalizeAcrossScale );
> filter->ReleaseDataFlagOn();
> m_SmoothingFilters.push_back( filter );
> }
>
> For 2D images,
>
> NumberOfSmoothingFilters = ImageDimension - 2 = 0
>
> This loop will never be executed and that is the reason we are getting the
> warning.
>
> This issue got exposed now ince we are using 2D DSA image for testing the
> newly added itkHessianToObjectnessMeasureImageFilterTest
>
> To fix these warnings, one option is to use specialized templates.
>
> I have entered a bug entry on this.
>
> http://public.kitware.com/Bug/view.php?id=8624
>
> -Andinet
>
>
>> Bill, Luis,
>> you're both right, in the sense that, yes, the EigenValueArrayType uses
>> the dimension of the pixel type, which happens to be indeed equal to the
>> image type for the typical use case. So I expect the code to run correctly.
>>
>> I'm thinking about cases where this assumption would not hold... like when
>> one computes the 2D Hessian (say in the xy plane) on 3D image.
>> Although one could argue that this is unlikely (and untested!), I think we
>> have to make a decision here. From the point of view of keeping concepts
>> clean (which always pays off in the long run), I'd go back to using
>> InputPixelType::Dimension, but the other way is also fine (the assumption
>> should be documented, though).
>>
>>
>> As to the warning about the "short unsigned int" to "double" warning (by
>> the way, thanks for all the work you're doing around my filter!): the cast
>> fix solves the problem, but it introduces a potential problem in the
>> functionality.
>> OutputImageType can be defined with an integer PixelType, which will
>> result in an integer type enhanced image. The problem is that the maximum
>> response scale image should report the exact scale (float type) at which the
>> filter responded the best, without converting it to integer type, since this
>> would lead to wrong information. In other words, the scales image always has
>> to be float (I wouldn't use double for this, there's no use).
>>
>> Summarizing, I would introduce a typedef float ScalesPixelType
>> typdef Image<ScalesPixelType> ScalesImageType;
>> and change the rest of the class to use ScalesImageType instead of
>> OutputImageType for output 1.
>>
>> I don't know if you want to keep the class in for 3.12, so just let me
>> know if I can commit changes to it (or if you want to do it).
>>
>> Best
>>
>>
>> Luca
>>
>>
>> On Feb 25, 2009, at 9:33 PM, Luis Ibanez wrote:
>>
>>>
>>> Bill, Luca,
>>>
>>> Yes, that piece was a bit confusing.
>>>
>>> My reasoning was:
>>>
>>> The type is used to define the Eigen values of the Hessian,
>>> that happens to be the input image type.
>>>
>>> Therefore the length of the array that will store the eigenvalues
>>> must match the dimension of the image.
>>>
>>> Typically the pixel type of a Hessian Image will be a symmetric
>>> second rank tensor, in which case the "Dimension" still refers to
>>> the dimension of the space in which the image is embedded.
>>>
>>>
>>> Luca:
>>> Is this consistent with the intention you had in this code ?
>>>
>>>
>>>
>>> Thanks for any hint,
>>>
>>>
>>> Luis
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------------------------
>>> On Wed, Feb 25, 2009 at 3:04 PM, Bill Lorensen <bill.lorensen at gmail.com
>>> <mailto:bill.lorensen at gmail.com>> wrote:
>>>
>>> Luis,
>>>
>>> I think these changes:
>>>
>>> http://public.kitware.com/cgi-bin/viewcvs.cgi/Code/Review/itkHessianToObjectnessMeasureImageFilter.h?root=Insight&r1=1.1&r2=1.2&sortby=date
>>>
>>> <http://public.kitware.com/cgi-bin/viewcvs.cgi/Code/Review/itkHessianToObjectnessMeasureImageFilter.h?root=Insight&r1=1.1&r2=1.2&sortby=date>
>>>
>>> do not match the original intent. The EigenValueArrayType used
>>> InputPixelType::Dimension. The changes are the equivalent of using
>>> InputImageType::ImageDimension. The dimension is of the pixeltype not
>>> the imagetype.
>>>
>>> Bill
>>>
>>> On Wed, Feb 25, 2009 at 2:07 PM, Luis Ibanez
>>> <luis.ibanez at kitware.com <mailto:luis.ibanez at kitware.com>> wrote:
>>> >
>>> > Hi Bill,
>>> >
>>> > We are addressing the issues in Borland and VS6...
>>> > but if it start taking too long, we can simply remove the new
>>> files.
>>> >
>>> > I can't wait to be able to install Visual Studio 6.0 in a computer
>>> > in the Amazon cloud... :-)
>>> >
>>> >
>>> > Luis
>>> >
>>> >
>>> >
>>> ----------------------------------------------------------------------
>>> > On Wed, Feb 25, 2009 at 12:17 PM, Bill Lorensen
>>> <bill.lorensen at gmail.com <mailto:bill.lorensen at gmail.com>>
>>> > wrote:
>>> >>
>>> >> Are we comfortable freezing if code was just checked into Review
>>> >> yesterday? I suggest we remove the new stuff that was checked
>>> in for
>>> >> now, even though it is in Review. Borland as well as VS6 has
>>> >> problems. I made sure before I went away to have a clean VS6
>>> build.
>>> >>
>>> >> Bill
>>> >>
>>> >> On Wed, Feb 25, 2009 at 11:59 AM, Bill Lorensen
>>> <bill.lorensen at gmail.com <mailto:bill.lorensen at gmail.com>>
>>> >> wrote:
>>> >> > You will also need to use itkGetStaticConstMacro for the
>>> static const
>>> >> > that is declared in that header. This is standard practice for
>>> >> > Borland.
>>> >> >
>>> >> > I have restarted my continuous for a couple of days.
>>> >> >
>>> >> > Bill
>>> >> >
>>> >> > On Wed, Feb 25, 2009 at 11:55 AM, Luis Ibanez
>>> <luis.ibanez at kitware.com <mailto:luis.ibanez at kitware.com>>
>>> >> > wrote:
>>> >> >> Hi Bill,
>>> >> >>
>>> >> >> Yeap, we are tracking those.
>>> >> >>
>>> >> >> They seem to be related to the direct use of
>>> ImageType::Dimension.
>>> >> >> We are replacing it with the dimension declaration
>>> extracted with the
>>> >> >> GetImageDimension helper class.
>>> >> >>
>>> >> >>
>>> >> >> Luis
>>> >> >>
>>> >> >>
>>> >> >> ---------------------------------------------------
>>> >> >> On Wed, Feb 25, 2009 at 11:40 AM, Bill Lorensen
>>> >> >> <bill.lorensen at gmail.com <mailto:bill.lorensen at gmail.com>>
>>> >> >> wrote:
>>> >> >>>
>>> >> >>> Recent checkins to Review have broken the Borland build.
>>> This should
>>> >> >>> be repaired. I cannot help at this moment.
>>> >> >>>
>>> >> >>> On Wed, Feb 25, 2009 at 10:34 AM, Bradley Lowekamp
>>> >> >>> <blowekamp at mail.nih.gov <mailto:blowekamp at mail.nih.gov>>
>>> wrote:
>>> >> >>> > I am building an experimental with the fix for this (and the
>>> >> >>> > ImageIORegion
>>> >> >>> > M-D to N-D conversion issues):
>>> >> >>> >
>>> >> >>> > http://public.kitware.com/Bug/view.php?id=8369
>>> >> >>> > After that I am good :)
>>> >> >>> >
>>> >> >>> > On Feb 25, 2009, at 10:04 AM, Luis Ibanez wrote:
>>> >> >>> >
>>> >> >>> > Unless anyone has a strong objection, we will be freezing
>>> >> >>> > the cvs repository today in order to clean up the last
>>> >> >>> > details before we cut the release of ITK 3.12 on Saturday.
>>> >> >>> >
>>> >> >>> > Objections anyone ?
>>> >> >>> >
>>> >> >>> >
>>> >> >>> > Thanks
>>> >> >>> >
>>> >> >>> >
>>> >> >>> > Luis
>>> >> >>> >
>>> >> >>> > _______________________________________________
>>> >> >>> > Powered by www.kitware.com <http://www.kitware.com>
>>> >> >>> >
>>> >> >>> > Visit other Kitware open-source projects at
>>> >> >>> > http://www.kitware.com/opensource/opensource.html
>>> >> >>> >
>>> >> >>> > Please keep messages on-topic and check the ITK FAQ at:
>>> >> >>> > http://www.itk.org/Wiki/ITK_FAQ
>>> >> >>> >
>>> >> >>> > Follow this link to subscribe/unsubscribe:
>>> >> >>> > http://www.itk.org/mailman/listinfo/insight-developers
>>> >> >>> >
>>> >> >>> >
>>> >> >>> > _______________________________________________
>>> >> >>> > Powered by www.kitware.com <http://www.kitware.com>
>>> >> >>> >
>>> >> >>> > Visit other Kitware open-source projects at
>>> >> >>> > http://www.kitware.com/opensource/opensource.html
>>> >> >>> >
>>> >> >>> > Please keep messages on-topic and check the ITK FAQ at:
>>> >> >>> > http://www.itk.org/Wiki/ITK_FAQ
>>> >> >>> >
>>> >> >>> > Follow this link to subscribe/unsubscribe:
>>> >> >>> > http://www.itk.org/mailman/listinfo/insight-developers
>>> >> >>> >
>>> >> >>> >
>>> >> >>
>>> >> >>
>>> >> >
>>> >
>>> >
>>>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com <http://www.kitware.com>
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-developers
>>
>> --
>> Luca Antiga, PhD
>> Head, Medical Imaging Unit,
>> Biomedical Engineering Department,
>> Mario Negri Institute.
>> mail: Villa Camozzi, 24020, Ranica (BG), Italy
>> phone: +39 035 4535-381
>> email: antiga at marionegri.it <mailto:antiga at marionegri.it>
>> web: http://villacamozzi.marionegri.it/~luca
>> <http://villacamozzi.marionegri.it/%7Eluca>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-developers
>>
>
>
> --
> ==========================================================
> Andinet A. Enquobahrie, PhD
> R&D Engineer
> Kitware Inc.
>
> 28 Corporate Drive
> Clifton Park, NY 12065-8662
> Phone: 518-371-3971 x124
> www.kitware.com
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
>
More information about the Insight-developers
mailing list