2016-10-10 4 views
0

C#에 SimpleITK 프레임 워크 (x64)를 사용하고 있습니다. 내가 할 후SimpleItk에서 레이블의 중심 좌표를 얻는 방법

일부 작업 및 필터링 난에 관심이 어디에서, LabelShapeStatisticsImageFilter를 통해 라벨의 무리를 얻었다.

어떻게 중심이 특정 레이블의 좌표를받을 수 있나요? GetCentroid 함수를 사용할 때 부분적인 부정적인 결과가 발생하며이 데이터를 처리하는 방법을 알지 못합니다.

미리 감사드립니다.

+0

이미지의 간격 및 방향 코사인 행렬이란 무엇입니까? Centroid 값은 무엇입니까? – blowekamp

+1

GetOrigin(), GetSpacing()을 사용하면 중심에 공간이 있는지 확인할 수 있습니다. 3D (?) 공간에서 작업하는 방법에 대한 팁은 ITK Software Guide를 참조하십시오. –

답변

0

답변과 의견에 감사드립니다. ,

// NOTE: As of April 8, 2015 the filter does not work with non-zero origins 

그래서 내가 원래 데이터를 저장 (0,0) 원점 설정 - 유용한 Centeroid 도착을하고 Centeroid 변경 :

나는 예에 대한 코멘트에서 문제에 대한 해결책을 발견 원본 Origin이 마침내 다시 원래 값으로 설정 한 결과입니다.

0

LabelShapeStatisticsImageFilter::GetCentroid 메서드는 인덱스 공간이 아닌 실제 공간의 한 점을 반환합니다. 이것은 이미지의 원점, 간격 및 방향 행렬을 고려하여 음수 값이 될 수 있습니다. 결과를 인덱스 공간으로 변환하려면 Image::TransformPhysicalPointToContinuousIndex 또는 Image::TransformPhysicalPointToIndex을 적절하게 사용할 수 있습니다.