piv_peak_locking — PIV assess op

• 데이터 종류: flow2d → table

• 호출: import fullseye as fs; fs.ledger.piv_peak_locking(flow, bins=20)(구현을 직접 호출하려면 import pivops; pivops.piv_peak_locking(flow, bins=20), 원장에서 가져오려면 opspiv.get("piv_peak_locking"))

사용법

피크 로킹의 강도. 소수부의 분포가 균일 분포에서 얼마나 벗어나 있는가.

서브픽셀 추정은 참 변위의 소수부가 0이나 0.5일 때 그쪽으로 끌려가는치우침을 가진다(상관 피크의 모양과 피팅하는 함수의 모양이 다른 데서 오는, PIV의교과서적인 계통 오차). 흐름이 균일하지 않다면 소수부는 균일 분포에 가까울 것이므로, 거기서의 어긋남을 잰다.

지표 c0는 표본 수에 의존하지 않는 카이제곱형 어긋남:

sum((n_i - n_bar)^2 / n_bar) / (bins - 1). 균일 분포에서 표본을 취하면기댓값 1이 되므로, 1 전후라면 균일과 구별할 수 없고, 클수록 치우쳐 있다.

★ 다만 이 지표는 "참 변위의 소수부가 균일하다"는 것을 가정한다. 창의 수가적은 장이나, 변위가 천천히 변하는 장에서는 참값 자체의 c0도 커진다 (실측: 선형 램프의 참값에서 82 —— 창 격자가 19열밖에 없어 소수부가 이산적으로밖에나타나지 않기 때문). 따라서 c0는 같은 입력의 참값과 비교하여 읽을 것.

결정적인 진단은 따로 있다 —— 균일 병진의 소수부를 0에서 0.9까지 흔들어, 추정값이 대각선에 올라타는지를 본다. 실측(win=32, density 0.02):

========== ================= ==================

추정법 소수부 오차 RMS 최대 절대 오차

========== ================= ==================

gauss3 0.0037 px 0.0088 px

parabolic 0.0104 px 0.0151 px

centroid 0.2259 px 0.3701 px

========== ================= ==================

centroid는 참값 0.1을 0.02, 0.9를 0.98로 답한다 —— 정수로 끌어당기는교과서대로의 S자. 나와야 할 것이 나왔다는 것의 확인이지, 구현의 결함이 아니다(그래서 3개 모두 남겨 두었다).

Args:

flow: (2, h, w).

bins: 소수부 히스토그램의 계급 수.

Returns:

dict: c0(양 성분을 합친 지표), hist((2, bins)),

frac_mean / frac_std, bins.

자세한 사용 가이드

• piv_displacement 패밀리 가이드

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

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

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

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

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

• piv_field_analysis_tour — py -3.11 examples/piv_field_analysis_tour.py

• poc_battery_electrode_breathing — py -3.11 examples/poc_battery_electrode_breathing.py

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

—

같은 카테고리(assess)

piv_sample_at_windows · piv_error_stats · piv_time_statistics


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

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