reconstruct op• 데이터 종류: sinogram → image2d
• 호출: import tomography; tomography.backproject_sinogram(sinogram, angles_deg=None, size=None, span_deg=None)(또는 opstomography.get("backproject_sinogram"))
필터 없는 소박한 역투영 —— 흐린 베이스라인.
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
Smear each projection back along the rays it came from and sum. The result is
the true slice convolved with `1/|r|`, so it is correct in the large and
wrong everywhere in detail.
Two numbers, because only one of them is the interesting one. Raw, on the
Shepp-Logan phantom with 180 views, this operator's values run 0.768 to 2.493
where the truth runs 0.0 to 0.0167 — the `1/|r|` kernel has no finite
integral, so an un-filtered back-projection has **no meaningful absolute
scale at all** and its normalised RMS error against the truth is 104. After
the best least-squares rescaling onto the truth — which is what any display
with an auto window does for you, silently — the error is 0.168 against
0.0246 for :func:filtered_backprojection, a factor of 6.8. That
second number is the ramp filter's real contribution; the first is a warning
that a picture which looks approximately right after auto-windowing can be
off by a factor of 100 in the numbers underneath it.
It is a registered operator and not a private helper because the blur *is* the
lesson, and because it is the correct starting point for iterative methods.
Not to be confused with :func:fullseye.backproject, which lifts pixels into
3-D using a depth map and a camera model; that one is projective geometry, this
one is an integral transform, and the only thing they share is a word.
:param sinogram: `(n_angles, n_detectors)`, rows = angles.
:param angles_deg: view angles; `None -> uniform [0, 180)`.
:param size: output side; `None -> the inscribed square, n_det/sqrt2`
rounded down to an odd number.
:param span_deg: angular range used for the `d(theta) weight; None` ->
inferred from *angles_deg* (or 180 for the default scan).
:returns: `(size, size)` float64 image.
:raises ValueError: as :func:filtered_backprojection.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• ct_reconstruction — py -3.11 examples/ct_reconstruction.py
• poc_ct_fidelity — py -3.11 examples/poc_ct_fidelity.py
image2d 를 입력으로 받는 것)reconstruct)filtered_backprojection · sart_reconstruct
*Provenance: tomography.py — TOMOGRAPHY 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.