티스토리 뷰

Game/DirectX 11

bilateral filter

newpolaris 2017. 3. 30. 15:48

응용도 많고 하지만, 계산 코스트가 무지 막지 하다


그 덕분에 최적화로 논문이 많이 나온듯


마치 jpeg2000 과 sift 보는 듯; 


tone mapping에 쓰이던데 게임에서 쓰는 것과 차이가 멀까. 


단순 리니어 지역 매핑이 아니라 결과가 더 나은가


아님 multi exposer 지원해서?


필터 자체는 non-linear로 분리가 안되는데, 막상 불리해도 de-noising 결과는 괜찮은 듯


히에로그래피 앤진에서 소스를 제공한다


BilateralSeparableCS.hlsl


그냥 gasussian separate에 color sigma만 추가한거다


노이즈 제거는 되는건 확인 했다. 외각의 사각형 테두리 결과가 차이나던데 그빼곤 이미지 하나론 문제 없어 보인다


저 소스의 문제라면 space part 의 kernel 이 7로 고정되어있기 땜시 이미지가 크다면 소용이 없다


결국 kernel 을 키워야하는데 ...


최신 연구에 가까워 질수록 애매해지고 선택 가능한건 늘어가는건 어쩔 수 없는 듯


de-noisng 이라는 특성상 중복 제거시 noise가 줄긴 준다.


나머지 특징도 그냥 가우시안처럼 적용가능할 듯 


https://github.com/opencv/opencv/blob/master/modules/cudaimgproc/src/bilateral_filter.cpp

http://docs.opencv.org/2.4/modules/imgproc/doc/filtering.html?highlight=bilateralfilter#bilateralfilter


오픈 CV의 선택은 space sigma 의 1.5 를 radius로 하거나 별도의 kernel size를 입력으로 받는거다


어짜피 space 부분이 0이되면 효과가 없으니, 적당한 해결책 같다만


맥이 아니니 테스트하기 귀찮네;

'Game > DirectX 11' 카테고리의 다른 글

Tone mapping (2)  (0) 2017.04.02
Tone mapping  (0) 2017.04.01
Bilateral Filter (4)  (0) 2017.03.31
Bilateral filter (3)  (0) 2017.03.30
bilateral filter (2)  (0) 2017.03.30
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크