Notes |
|
(0001320)
|
Jim Miller
|
2004-07-30 13:45
|
|
We should probably adopt the convention that the origin of an image is in the center of a pixel. This means the physical extent of an image extends by half a pixel from the physical coordinates of the corner pixels.
ImageFunction::ConvertPointToNearestIndex() and ImageFunction::ConvertContinuousIndexToNearestIndex() seem to do the right thing.
ImageFunction caches the first and last index in the region as ContinuousIndices (m_StartContinuousIndex, m_EndContinuousIndex). We'll need to check their use to determine whether they should be padded by 0.5
ImageFunction::IsInsideBuffer(ContinuousIndex) would need to be updated.
ImageRegion::IsInside(ContinuousIndex) would need to be updated.
Image::TransformPhysicalPointToContinuousIndex() calls ImageRegion::IsInside(ContinuousIndex) which is incorrect, see above. Otherwise this code would be ok.
Image::TransformPhysicalPointToIndex() uses truncation where is should round. This routine also call ImageRegion::IsInside()
We should also check any filter that makes use of image spacing (look for calls to GetSpacing()) and check whether these filters are doing a physical to index calculation that needs to be corrected.
|
|
|
(0009067)
|
Luis Ibanez
|
2007-09-18 10:51
|
|
We will address it during WA10.
non-trivial. |
|
|
(0009681)
|
mnieber
|
2007-11-15 09:29
|
|
>> We should probably adopt the convention that the origin of an image is in the center of a pixel. This means the physical extent of an image extends by half a pixel from the physical coordinates of the corner pixels.
I have experienced major problems with this convention. It would maybe go to far to explain (but ask me if you like), but please make sure that - under the chosen convention - resampling the image does not change the part of physical space that is occupied by the image. |
|
|
(0022879)
|
Cory W Quammen
|
2010-11-04 23:07
|
|
|