수식 구현한거 맞는지 봐주세요
글쓴이: qnfw3174 / 작성시간: 수, 2014/04/02 - 5:39오후
첨부 이미지 123.jpg가 2차원 가우시안 필터로 쓰인다는 공식입니다.
다른데 찾아봐도 같은 식은 없는걸로 봐서 여기서만 특별히 만들어서 쓰는거 같더라구요.
x, y는 중심에서의 거리, 세타는 0도, 30도 60도 등 따로 지정해줍니다.
이런 식으로 41*41 마스크를 만들었는데 값이 이상하게 나오는 것 같네요.
분모에 x, y 저건 각각 5와 1로 되어있습니다.
int nHalf=41, degree=60;
double m_bufGss1[41][41], theta1=degree*M_PI/180, xD, yD, fro1, bac1, exp1;
for(int y=0;y작다nHalf;y++){
for(int x=0;x작다nHalf;x++){
xD=abs(nHalf/2-x);
yD=abs(nHalf/2-y);
fro1=((xD*cos(theta1)+yD*sin(theta1))/5);
bac1=(-xD*sin(theta1)+yD*cos(theta1));
exp1=-(fro1*fro1)-(bac1*bac1);
m_bufGss1[y][x]=exp(exp1);
}
}
3333.jpg는 y=0, x=11까지 진행한 상태일거예요.
값이 너무 작게 나오는 것 같습니다.
수식 구현이 제대로 된건지... 제가 잘 못 이해하고 있는건지...
ll
File attachments:
첨부 | 파일 크기 |
---|---|
![]() | 7.23 KB |
![]() | 99.35 KB |
Forums:
대답해봐야 질문 . 으로 만들 분에게 대답해주고
대답해봐야 질문 . 으로 만들 분에게 대답해주고 싶지는 않네요.
댓글 달기