vol_granulometry — 3D feature op

데이터 종류: voxelmeasurement

호출: import fullseye as fs; fs.ledger.vol_granulometry(vol_binary, radii=None, spacing=None)(구현을 직접 호출하려면 import volops; volops.vol_granulometry(vol_binary, radii=None, spacing=None), 원장에서 가져오려면 ops3d.get("vol_granulometry"))

원장 경유의 반환값: fullseye.ledger.vol_granulometry(...) 는 **선언된 out 형 measurement 의 값만** 반환합니다(실제 함수는 보조 정보도 반환). 버려진 쪽이 필요하면 fullseye.ledger.vol_granulometry.raw(...) 를 쓰거나 volops.vol_granulometry 를 직접 호출하세요.

• 실제 반환: 中央径

사용법

이진 볼륨의 기공・입자 크기 분포(열림 연산 계열에서).

> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.

Opening by a ball of radius `r deletes every feature narrower than 2r`.

Tracking the surviving volume fraction as `r` grows gives the cumulative

size distribution `F(r)`; its negative increment is the size density — the

fraction of material that sits in features of that size. This is Matheron's

granulometry, the measurement behind every "pore size distribution" plot in

casting, foam and powder work.

Computed from the local-thickness volume rather than by repeated openings:

the two agree exactly (a voxel survives the opening of radius `r` iff its

local thickness is at least `2r`) and one distance transform replaces N

morphological passes.

*radii* are in the units of *spacing* (millimetres when *spacing* is given,

voxels otherwise); leave it `None for min(spacing)`-steps up to the

largest thickness present. Returns ``{"radii": [...], "surviving_fraction":

[...], "density": [...], "mean_size": float, "d50": float, "units": "mm"|"voxel"}``

where sizes are diameters (`2r`), because that is what a pore diameter

means.

Applicability. (1) A distribution is only as good as the threshold that

made the binary volume — report it. (2) Features touching the volume border

are truncated and bias the distribution downward; crop or state it.

(3) `d50` is interpolated between the two bracketing radii, so it is no

finer than the radius step.

HALCON has no granulometry operator.

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

ct_porosity_and_fibre_morphometrypy -3.11 examples_3d/ct_porosity_and_fibre_morphometry.py

타입이 이어지는 다음 연산자(measurement 를 입력으로 받는 것)

vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle

같은 카테고리(feature)

sobel3d · hessian3d · curvature_maps · edt_jfa · vol_frangi · vol_local_std · vol_local_thickness · vol_orientation_coherence


*Provenance: volops.py — 3D 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.