seung-lab/connected-components-3d
Connected components on discrete and continuous multilabel 3D & 2D images. Handles 26, 18, and 6 connected variants; periodic boundaries (4, 8, & 6)
해결하는 문제
cc3d는 3D 이미지에서 연결 성분 레이블링(CCL) 문제를 해결하기 위해 설계되었습니다. 특히 단순히 이진(검정과 흰색)이 아닌 여러 레이블을 포함하는 다중 레이블 이미지에 특화되어 있습니다. 많은 기존 도구는 이진 이미지에만 제한되어 있어, 사용자가 각 레이블을 하나씩 처리해야 하며, 수백 또는 수천 개의 레이블을 가진 이미지에서는 매우 느린 처리가 발생합니다. cc3d는 한 번의 패스로 모든 연결된 성분을 레이블링할 수 있어 성능을 크게 향상시킵니다.
작동 방식
이 프로젝트는 Rosenfeld와 Pflatz의 두 번째 패스 방법의 3D 버전을 구현하며, Tarjan의 Union-Find 불연속 집합(경로 압축 및 균형화 포함)과 Wu, Otoo, Suzuki의 연구 기반 결정 트리를 통합합니다.
주요 기술적 특징:
- 연결성 옵션: 3D에서는 26, 18, 6 연결 이웃을 지원하고, 2D에서는 4 또는 8 연결을 지원합니다.
- 다중 레이블 지원: 동시에 여러 다른 레이블을 가진 이미지에서 작동합니다.
- 연속 값 지원: 사용자가 정의한 delta 임계값 기반으로 근접한 값을 결합하여 그레이스케일 이미지를 처리할 수 있습니다.
- 메모리 효율성: RAM보다 큰 이미지에 대해
memmap파일을 지원하며, 두꺼운 Z-섹션의 순차 처리를 위한 압축된CrackleArray를 제공합니다.
대상 사용자
이 도구는 뇌 조직 현미경 이미지와 같은 밀도 높은 3D 생물의학 이미지 또는 3D 볼륨에서 인스턴스 세그멘테이션 및 세맨틱 레이블링을 수행하는 모든 애플리케이션을 다루는 연구자 및 개발자에게 주로 적합합니다.
주요 특징
- 고성능: 한 번의 처리로 모든 연결된 성분을 레이블링하여, 이진 전용 도구보다 일반적으로 1개 이상의 주문 수준에서 속도가 향상됩니다.
- 유연한 연결성: 2D 및 3D 공간에 대한 다양한 연결성 옵션 제공.
- C++ 및 Python: 최대한의 유연성을 위해 Python 바인딩과 C++ 구현 모두 제공.
- 고급 분석 도구: 중심점, 경계 상자, 복셀 수 계산, "먼지"(작은 객체) 제거, k개의 최대 객체 추출 등의 함수 포함.
- 표면적 분석: 서로 다른 레이블 간의 접촉 표면적 및 접촉 네트워크를 계산할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트