Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

imregconfig

명암 기반 정합 구성

설명

예제

[optimizer,metric] = imregconfig(modality)는 명암 기반 영상 정합을 수행하기 위해 imregister에 전달할 optimizermetric 구성을 생성합니다. 여기서 modality는 영상 캡처 모달리티를 지정합니다.

예제

모두 축소

영상을 작업 공간으로 불러온 후 표시합니다. 두 영상이 비슷한 밝기와 대비를 가지고 있으므로 단일모달 영상입니다.

fixed  = imread('pout.tif');
moving = imrotate(fixed, 5, 'bilinear', 'crop');
imshowpair(fixed, moving,'Scaling','joint')

Figure contains an axes object. The axes object contains an object of type image.

모달리티를 'monomodal'로 설정해서 최적화 객체와 메트릭 객체를 생성합니다.

[optimizer, metric]  = imregconfig('monomodal')
optimizer = 
  registration.optimizer.RegularStepGradientDescent

  Properties:
    GradientMagnitudeTolerance: 1.000000e-04
             MinimumStepLength: 1.000000e-05
             MaximumStepLength: 6.250000e-02
             MaximumIterations: 100
              RelaxationFactor: 5.000000e-01
metric = 
  registration.metric.MeanSquares

  This class has no properties.

최적화 객체와 메트릭 객체를 imregister에 전달하여 정합을 수행합니다.

movingRegistered = imregister(moving,fixed,'rigid',optimizer, metric);

정합된 영상을 봅니다.

figure
imshowpair(fixed, movingRegistered,'Scaling','joint')

Figure contains an axes object. The axes object contains an object of type image.

두 개의 영상을 읽어 들입니다. 이 예제에서는 무릎 MRI(자기 공명 영상) 영상 두 개를 사용합니다. 고정 영상은 스핀 에코 영상이고, 이동 영상은 반전 회복(inversion recovery) 기법이 사용된 스핀 에코 영상입니다. 두 개의 시상면 단층은 같은 시간에 수집했지만 약간 정렬되지 않았습니다.

fixed = dicomread('knee1.dcm');
moving = dicomread('knee2.dcm');

정렬되지 않은 영상을 표시합니다.

imshowpair(fixed, moving,'Scaling','joint')

Figure contains an axes object. The axes object contains an object of type image.

두 영상이 서로 다른 센서에서 획득된 것이므로 모달리티(촬영 장치)를 'multimodal'로 설정해서 최적화 객체와 메트릭 객체를 생성합니다.

[optimizer, metric] = imregconfig('multimodal')
optimizer = 
  registration.optimizer.OnePlusOneEvolutionary

  Properties:
         GrowthFactor: 1.050000e+00
              Epsilon: 1.500000e-06
        InitialRadius: 6.250000e-03
    MaximumIterations: 100
metric = 
  registration.metric.MattesMutualInformation

  Properties:
    NumberOfSpatialSamples: 500
     NumberOfHistogramBins: 50
              UseAllPixels: 1

문제가 전역 최댓값에 수렴하도록 하고 추가 반복을 허용하도록 최적화 객체의 속성을 조정합니다.

optimizer.InitialRadius = 0.009;
optimizer.Epsilon = 1.5e-4;
optimizer.GrowthFactor = 1.01;
optimizer.MaximumIterations = 300;

정합을 수행합니다.

movingRegistered = imregister(moving, fixed, 'affine', optimizer, metric);

정합된 영상을 봅니다.

figure
imshowpair(fixed, movingRegistered,'Scaling','joint')

Figure contains an axes object. The axes object contains an object of type image.

입력 인수

모두 축소

영상 캡처 모달리티로, 다음 값 중 하나로 지정됩니다.

모달리티설명
"monomodal"

단일모달 영상은 비슷한 밝기와 대비를 가집니다. 영상은 동일한 유형의 스캐너 또는 센서에서 캡처됩니다.

"multimodal"

다중모달 영상은 서로 다른 밝기와 대비를 가집니다. 영상은 두 가지 카메라 모델 또는 두 가지 유형의 의료 영상 모달리티(예: CT와 MRI) 같은 서로 다른 두 가지 유형의 장치에서 수집될 수 있습니다. 또한 서로 다른 노출 설정을 사용하는 카메라나 서로 다른 영상 시퀀스를 사용하는 MRI 스캐너 같은 하나의 장치에서 수집될 수도 있습니다.

데이터형: char | string

출력 인수

모두 축소

최적화 구성으로, RegularStepGradientDescent 또는 OnePlusOneEvolutionary 최적화 객체로 반환됩니다.

메트릭 구성은 정합 중 최적화할 영상 유사도 메트릭을 나타내며, MeanSquares 또는 MattesMutualInformation 메트릭 객체로 반환됩니다.

  • imregconfig는 기본 정합 구성을 제공하도록 디폴트 설정을 갖는 optimizermetric을 반환합니다. 최적화 속성 또는 메트릭 속성을 조정하면 정합 결과가 개선될 수 있습니다. 예를 들어, 최적화 객체에서 반복 횟수를 늘리거나 최적화 객체의 스텝 크기를 줄이거나 확률적 메트릭 값의 샘플 수를 변경하면, 성능이 저하되는 대신 정합이 어느 정도 개선됩니다.

확장 기능

버전 내역

R2012a에 개발됨