두 개의 3D itk 이미지를 등록하려고합니다. 고정 된 것은 240 * 240 * 285이고 움직이는 것은 80 * 80 * 17입니다. affineTransform을 사용하여 등록하려고했으나 이미지의 크기 차이가 너무 커서 등록이 작동하지 않는다는 사실을 발견했습니다. 그래서 나는 동영상을 리샘플링하고 선형 인터폴 레이터를 사용하여 고정 된 크기로 크기를 설정했습니다.itk 크기가 다른 두 3D 이미지를 등록하는 데 너무 느림
하지만 문제가 발생합니다. 등록 속도가 매우 느리고 한 세트의 데이터 등록을 완료하는 데 1 시간 이상이 소요됩니다. 하지만 40 세트가 있습니다!
누구나 빠른 등록 방법을 홍보 할 수 있습니까? 아니면 등록에 대해 잘못된 것이 있습니까?
optimizer->SetMaximumStepLength(0.01);
optimizer->SetMinimumStepLength(0.0001);
optimizer->SetNumberOfIterations(300);
optimizer->MinimizeOn();
많은 감사, 아빈 이미지를 리샘플링
예, itk :: CenteredTransformInitializer를 사용하여 변환을 초기화했습니다. 하지만 작동하지 않는 것 같습니다. 여기에 내 초기화 코드가있다. '// 초기화 초기화 도구를 초기화하십시오. TransformInitializerType :: 포인터 초기화 프로그램 = TransformInitializerType :: New(); \t 초기화 프로그램 -> SetTransform (변환); \t 초기화 프로그램 -> SetFixedImage (fixedImg); \t 초기화 프로그램 -> SetMovingImage (tmpMovingImg); \t 이니셜 라이저 -> MomentsOn(); \t initializer-> InitializeTransform(); ' – user3060215
참고로 affineTransform에 3D 이미지를 등록하는 예제를 사용했습니다. [link] (http://public.kitware.com/cgi-bin/viewcvs.cgi/Insight/Examples/Registration/ImageRegistration20.cxx?revision=1.1&view=markup) – user3060215
귀하의 경우에 효과가없는 것을 더 잘 정의 할 수 있습니다. . 그것은 사용 된 비용 함수의 종류에 의존하는 최적화 기의 설정 일 수 있습니다. –