[컴퓨터비전] Edge Detection with LoG and Edge Direction with Sobel Filter

나경·2024년 12월 18일
0

Finding Edges in Reality

image 안의 noise는 불필요하게 많은 edge를 유발한다

LPF로 noise를 먼저 줄이고 Laplacian filter를 적용하는 방식으로 해결할 수 있다 Gaussian filter가 이미지를 smooth하게 만드는 것에 효과적이기 때문이다 하지만 필터링을 두 번 적용해야 한다는 점에서 비효율적이라는 문제점이 발생한다

LoG (Laplacian of Gaussian)

LoG는 Gaussian filter 이후에 Laplacian filter를 하는 것이다
convolution과 Laplacian 연산은 결합법칙이 성립하기 때문에 Laplacian을 취한 후 그 결과를 convolution하는 것과 같다

3차원 공간에서 LoG는 거꾸로 뒤집은 모자 형태이다
센터 부분이 마이너스이고, 주변이 플러스이다

Finding Edges with LoG


1. 8개의 이웃 중 4개의 방향 조합에 2개 이상의 다른 부호 조합이 포함되어 있는지 확인한다
- 4개의 방향 조합은 위아래, 좌우, 대각선을 의미한다
- 꼭 2개 이상이 아닌 경우도 있을 수 있다
2. 각 조합의 값 차이가 Threshold(임계값 T)보다 커야한다


이 경우를 보면 대각선 조합인 -3.2246과 2.0133, -7.2404와 0.4038 이렇게 두 조합이 있다
이제 이 조합들의 값 차이가 임계값보다 큰지 파악하면 된다
임계값을 1로 가정한 경우에는 두 조합 모두 값의 차이가 임계값보다 크기 때문에 5.6038에서 edge를 가진다는 것을 알 수 있다

임계값(Threshold)을 높이면 조건이 엄격해지기 떄문에 대부분의 경우 엣지가 되지 못하고, 임계값을 낮추면 엣지가 될 확률 높아진다

Edge Direction with Sobel Filter

  1. 첫 번째 사진을 보면 밝기 변화가 좌우로 일어나기 떄문에 Abrupt change(Step Direction)는 수평 방향이다 Edge Direction은 Abrupt change의 perpendicular(수직)이기 떄문에 Edge Directin은 수직 방향이 된다

  2. 두 번째 사진을 보면 밝기 변화가 위아래로 일어나기 떄문에 Abrupt change(Step Direction)는 수직 방향이다 Edge Direction은 Abrupt change의 perpendicular(수직)이기 때문에 Edge Direction은 수평 방향이 된다

Edge는 수직 방향이다
= 변하는 방향의 직교 방향이라고 생각하면 된다

Edge direction is perpendicular to the Abrupt Change Direction

1D Sobel Filter

미분 필터를 사용한다고 생각하면 된다
변화량 = 일계미분이라고 생각하면 된다

2D Sobel Filter

기울기의 방향은 dx, dy를 이용한 벡터 형태로 표현된다

  • dx: X 방향의 변화량
  • dy: Y 방향의 변화량


참고
https://throwexception.tistory.com/1097

0개의 댓글