Skip to content

'CentreOfRotationCorrector.xcorrelation' doesn't seem to work #1922

Description

@Cosme-liu

Description

I try to find the rotation center by using CentreOfRotationCorrector.xcorrelation, but the reconstruction result (original data vs corrected data) seems the same, which still has many crescent-shaped artifacts. It seems that the CentreOfRotationCorrector.xcorrelation doesn't work.

Is there other methods to find or correct the rotation center? For example, in Tomopy, we can use tomopy.find_center() and define the rotation center during reconstrution tomopy.recon(minus_log, angles, center=center, algorithm='gridrec')

Code

proj = TIFFStackReader(file_name=path_input)
ag = AcquisitionGeometry.create_Parallel3D(detector_position=[0,800,0])\
    .set_panel(num_pixels=[622,450])\
    .set_angles(angles=np.linspace(0,180,1080))
pj = proj.read_as_AcquisitionData(ag)

processor = CentreOfRotationCorrector.xcorrelation(slice_index='centre',projection_index=0, ang_tol = 0.1)
processor.set_input(pj) 
pj_centred=processor.get_output()
recon0 = FBP(pj)
recon1 = FBP(pj_centred)
output0 = recon0.run()
output1 = recon1.run()

Reconstruction using origianl data:
original

Reconstruction using corrected data:
corrected

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions