docs: explain full-band activity workflow
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
# Acoustic Camera
|
||||
|
||||
Scene과 마이크 배열로 자유음장 또는 저비용 shoebox microphone signal을 합성하고, STFT와
|
||||
DAS·DAS-PHAT·GCC-PHAT 위치추정으로 주파수 대역별 acoustic map과 ground-truth 평가 지표를
|
||||
만드는 브라우저 앱입니다. 정지 장면은 Snapshot, trajectory 장면은 Moving 흐름으로 분리되어
|
||||
있습니다.
|
||||
Scene과 마이크 배열로 자유음장 또는 저비용 shoebox microphone signal을 합성하고, 표준
|
||||
CA/OS-CFAR·Dixon spectral flux로 ADC 대역 후보를 보거나 STFT와
|
||||
DAS·DAS-PHAT·GCC-PHAT·MUSIC 위치추정으로 주파수 대역별 acoustic map과 ground-truth 평가
|
||||
지표를 만드는 브라우저 앱입니다. 정지 장면은 Snapshot, trajectory 장면은 Moving 흐름으로
|
||||
분리되어 있습니다.
|
||||
|
||||
## 열기와 Snapshot
|
||||
|
||||
@@ -55,6 +56,50 @@ Camera가 SHA-256을 계산해 manifest에 연결합니다. 같은 이름이라
|
||||
|
||||
파일은 외부로 업로드되지 않고 브라우저 메모리에서만 처리됩니다.
|
||||
|
||||
## 전 대역 활동 후보 찾기
|
||||
|
||||
분석 주파수를 미리 모를 때는 분석 대역 아래의 **전 대역 활동 검사**를 펼칩니다.
|
||||
이 흐름은 위치추정 map과 별도이며 다음 순서로 사용합니다.
|
||||
|
||||
1. 실제로 관찰할 물리 마이크 한 채널을 고릅니다.
|
||||
2. 좁은 spectral outlier에는 OS-CFAR 또는 CA-CFAR, 갑작스러운 onset에는
|
||||
Dixon spectral flux를 고릅니다.
|
||||
3. **전 대역 검사**를 누르고 frame별 원시 결과를 확인합니다.
|
||||
4. CFAR가 표시한 ADC bin에 대응한다고 가정할 아날로그 center를 직접 입력합니다.
|
||||
5. **이 가설을 대역으로 추가**한 뒤 DAS·PHAT·GCC-PHAT·MUSIC으로 배열 위치응답을 비교합니다.
|
||||
6. 모든 complete frame과 모든 tested/untested bin은 **Activity JSON**으로 저장합니다.
|
||||
|
||||
Activity worker는 Scene과 선택한 마이크의 위치·응답으로 물리 수신 신호를 합성하지만,
|
||||
음원 위치·주파수·개수 정답은 detector 함수에 전달하지 않습니다. 선택하지 않은 마이크는
|
||||
합성하거나 평균·투표하지 않습니다. 위치추정 band, algorithm, backend 또는 배경 image 연결이
|
||||
잘못돼 Snapshot을 실행할 수 없어도, Scene·선택 마이크·STFT·합성 최소 거리와 필요한 audio
|
||||
asset이 유효하면 Activity는 실행할 수 있습니다.
|
||||
|
||||
CFAR는 Hann STFT의 각 complete frame을 독립 검사합니다. DC, Nyquist와 좌우 full
|
||||
reference window가 없는 edge bin은 reference 수를 줄이거나 wrap하지 않고 untested로 남깁니다.
|
||||
Pfa는 IID exponential square-law 배경을 가정한 tested CUT 하나당 명목 오경보율이며
|
||||
위치 확률, confidence, frame 전체 오경보율 또는 실측 보정값이 아닙니다. 화면에는 CUT,
|
||||
reference, threshold와 ratio를 그대로 표시합니다.
|
||||
|
||||
Dixon spectral flux는 Hamming STFT의 연속 frame 사이에서 증가한 linear magnitude의
|
||||
full-DFT L1 합입니다. 지속 activity가 아니라 onset novelty입니다. Böck–Krebs–Schedl
|
||||
causal peak picker는 기본으로 꺼져 있고, 켤 때도 delta는 확률이 아닌 사용자 보정값입니다.
|
||||
Frame start는 설명용 시각이며 **available** 시각이 실제 causal 판정 가능 시각입니다.
|
||||
|
||||
Scene의 peak normalization을 선택했다면 선택한 한 채널의 전체 render peak가 detector 전에
|
||||
적용됩니다. 이 경우 detector 자체는 입력 이후 causal이어도 spectral-flux 절대값과 delta
|
||||
event를 포함한 end-to-end 전처리는 미래 sample에 의존하며, UI와 JSON에 이를 표시합니다.
|
||||
물리 scale을 그대로 비교하려면 Scene normalization을 none으로 두세요.
|
||||
|
||||
검출기가 관찰하는 주파수는 ADC의 0…Fs/2뿐입니다. 예를 들어 Fs=48 kHz에서 ADC 1,125 Hz로
|
||||
보인 성분은 1,125 Hz, 46,875 Hz, 49,125 Hz 등 여러 아날로그 carrier와 양립합니다.
|
||||
Nyquist 초과 가설도 0–1 MHz 검증 범위에서 허용하지만 alias order와 spectral inversion은
|
||||
자동 선택하지 않습니다. 각 가설을 FFT-grid center의 별도 band로 추가합니다. CFAR와 flux,
|
||||
서로 다른 band 또는 위치 map을 합의·평균·maximum으로 자동 결합하지 않습니다.
|
||||
|
||||
수식, 통계 가정, 문헌과 raw output 계약은
|
||||
[전 대역 활동 검출 모델](../../docs/activity-detection.md)을 참고하세요.
|
||||
|
||||
## 위치 추정 알고리즘과 Backend
|
||||
|
||||
**분석 설정 → 위치 추정 알고리즘**에서 다음 네 구현을 선택합니다.
|
||||
|
||||
Reference in New Issue
Block a user