이 영역을 누르면 첫 페이지로 이동
컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

페이지 맨 위로 올라가기

컴퓨터와 수학, 몽상 조금

컴퓨터공학, 딥러닝, 수학 등을 다룹니다.

Deep Learning

  • 컴퓨터와 수학, 몽상 조금
이미지 변형 (Image Transformation)

이미지 변형 (Image Transformation)

2023.03.09
이미지의 변형은 이미지의 각 픽셀을 이동시켜 이미지를 다른 형태로 변환하는 것이다. 이미지의 각 픽셀 좌표에 어떠한 변환 행렬을 곱하여 이러한 변환을 수행할 수 있다. 이미지 전체에 대해 같은 행렬을 이용한 변환을 수행하는 것을 Parametric Global Warping이라고 한다. 원본 이미지의 픽셀 좌표 $p$에 변형 행렬 $T$를 곱하여 $p'$로 옮기는 것이다. $$p' = Tp$$ 이때, 만약 $T$가 linear한 변형을 수행하는 행렬이라면, $p' \equiv Tp$가 성립한다. 2x2 행렬을 이용한 변환 크기 변형 (Scaling) 이미지의 $x$축과 $y$축에 대하여, 각각 $a, b$의 비율로 변형을 수행한다. $$ \begin{bmatrix} x' \\ y' \end{bmatrix..
SIFT: Scale Invariant Feature Transform을 이용한 Feature Matching

SIFT: Scale Invariant Feature Transform을 이용한 Feature Matching

2023.03.08
이전 글에서 blob 형태의 이미지 속 특징점(feature)을 추출하였다. 이제 이를 이용해서 다른 이미지와 현재 이미지를 비교도 하고, stitching도 하고 해야 하는데, 이러한 feature들의 비교와 매칭은 어떻게 수행할까? 바로 특징점들을 설명하는 descriptor가 필요한 순간이다. 이러한 descriptor들은 크기(scale), 회전(rotation), 조도(illumination) 등 다양한 변화가 가해져도 같은 특징들을 잘 기술해야 한다. Scale 극복하기 같은 물체를 촬영한 사진이더라도 촬영 환경에 따라 크기가 다르게 나올 수 있다. 이런 경우는 해결하기 어렵지 않은데, 어차피 blob의 크기를 알기 때문에 검출된 blob의 크기를 똑같이 맞춰주면 해결된다! Rotation 극..
SIFT: Scale Invariant Feature Transform 을 이용한 Blob Detection

SIFT: Scale Invariant Feature Transform 을 이용한 Blob Detection

2023.03.08
Edge, Line, Corner 검출에 이어 이번에는 blob 검출이다. blob detection은 이미지에서 특성을 추출해야 할 일이 있을 때 최근 들어 가장 흔히 쓰이는 방법이라고 한다. blob은 영어로 물방울 형태를 뜻하는 말로, 원형이라고 생각해도 되겠다. 이해를 위해 blob detection의 결과 이미지를 먼저 보자. 이미지 여기 저기에 크고 작은 원형으로 특징점이 검출된 것을 알 수 있다. Laplacian Filter Blob detection도 지금까지 해온 detection들처럼 합성곱 필터를 통해 수행된다. Blob 형태의 필터를 이용해 합성곱을 수행하면, 이미지 내에서 blob 형태의 속성이 있는 영역은 큰 값을 갖게 되고, 해당 속성이 없다면 작은 값을 출력하는 것이다. B..
코너 검출 (Corner Detection)

코너 검출 (Corner Detection)

2023.03.08
지난 글에서 모서리(edge)와 직선(line)을 검출하는 것을 알아보았다. 이번에는 어떤 물체의 코너(corner)를 검출하는 법을 배워보자. Sliding Window Method 이미지에서 코너를 찾기 위해, $n\times n $크기의 window로 이미지를 훑어가며 코너를 찾을 것이다. window가 상하좌우로 움직일 때 특정한 방향으로 움직일 때만 밝기의 변화가 있다면 edge, 모든 방향으로 움직일 때 모두 밝기 변화가 있다면 corner라 생각할 수 있다. (이미지를 참고하면 편하다.) 이를 수식으로 표현하면 다음과 같다. $$ E(u, v) = \sum_{(x,y)\in W} (I(x+u, y+v) - I(x,y))^2 $$ $E(u,v)$는 어떤 이미지의 $(x,y)$좌표에서 $(u,v..
Line Fitting (RANSAC, HOUGH transform)

Line Fitting (RANSAC, HOUGH transform)

2023.03.08
오늘은 이미지 안에 존재하는 어떤 형태, 특히 직선을 검출하는 방법들을 배워보자. 선행 지식으로 Edge Detection을 알아야 하니 혹시 모르시는 분들은 이전 글을 참고 바란다. 이미지 안의 형태를 검출하는 Model Fitting은 다음과 같은 요소들로 구성된다. Data: Fitting을 수행할 이미지의 정보, 여기선 Edge Detection 된 결과를 사용한다. Model: Fitting하여 찾아낼 형태 정보, 직선, 곡선, 도형 등이 될 수 있다. Objective Function: Fitting 결과를 평가하기 위한 함수이다. Fitting이 진행되는 Edge Detection 결과 이미지는 다음과 같은 형태이다. 우리가 보기에야 선이나 곡선을 인지하는 것이 어렵지 않지만, 실제로는 다음..
엣지와 그래디언트 (Edge and Gradient)

엣지와 그래디언트 (Edge and Gradient)

2023.03.07
영상의 모서리(edge)는 다음과 같은 불연속점에서 발생한다. Depth, Distance의 불연속점 Surface Orientation의 불연속점 (예를 들어, 책상 모서리처럼 평면의 각도가 변하는 부분) Surface Color의 불연속점 Illumination의 불연속점 (그림자 등) 이러한 모서리들을 검출하려면 어떻게 해야 할까? Calculating Gradient by Convolution 어떤 이미지를 좌표를 입력하면 해당 픽셀의 밝기값을 출력하는 $f(x, y)$ 형태의 함수라 생각해 보자. 밝기값의 변화가 적은 영역은 평면, 밝기값이 불연속적인 영역은 모서리이기 때문에, 이미지를 미분하여 모서리를 찾아낼 수 있다. 예를 들어, 어떤 픽셀의 밝기값이 100인데, 한 픽셀 오른쪽으로 이동하니..
이미지 필터링 (Image Filtering)

이미지 필터링 (Image Filtering)

2023.03.07
이미지에는 항상 어느 정도의 노이즈(noise)가 발생한다. 이로 인해 같은 환경에서 같은 물체를 여러 번 촬영하여도, 매번 다른 이미지가 촬영되게 된다. 필터링은 이러한 이미지의 노이즈를 제거하는데 사용된다. 노이즈 (Noise) 이미지에는 다양한 노이즈가 발생할 수 있는데, 위 이미지에 나타난 대표적인 사례들을 살펴보자. 좌측의 이미지는 원본 이미지이며, 중앙은 가우시안 노이즈, 우측은 소금과 후추(salt and pepper) 노이즈이다. 가우시안 노이즈는 이미지의 픽셀값이 정확히 저장되지 않고 부정확하게 저장되어 얼룩이 생긴 것처럼 보이게 된다. 한편 소금과 후추 노이즈는 마치 사진에 소금과 후추를 뿌린 것처럼, 특정 픽셀들이 0이나 255(즉, 검은색이나 하얀색) 값을 가지게 되는 노이즈로, 센..
Camera 시스템

Camera 시스템

2023.03.06
핀홀 카메라 사진을 촬영하기 위해 필름을 그대로 찍고자 하는 상에 노출시키면, 상의 여러 부분에서 반사되어 온 광선(Ray)들이 무분별하게 필름의 여러 영역에 도달하여 사진을 찍을 수 없다. 그래서 상의 한 점(영역)에 반사된 광선이 필름의 한 점에만 맺히도록 핀홀 카메라 모델이 고안되었다. 3차원의 세상에 존재하는 한 점 $P$의 이미지 상에서의 위치 $P'$는 어떻게 구할까? 3D 좌표 $P$에서 2D 좌표 $P'$로의 변환은 삼각형의 닮음을 이용하여 다음과 같이 수행된다. 핀홀을 원점 $O$로 두고, 핀홀에서 이미지 평면에 내린 수선의 발인 광학 축(optical axis)을 설정한다. 점 $P, O$ 그리고 광학 축이 이루는 직각 삼각형과 광학축, $O, P'$가 이루는 직각 삼각형의 닮음을 이용..
[Python/OpenCV] 투영을 이용한 이미지 변환

[Python/OpenCV] 투영을 이용한 이미지 변환

2023.02.22
2D 이미지의 Projective(Homography) Transformation을 이용하면 이미지에 대한 다양한 변환을 수행할 수 있다. 기본적인 2D 시점 변환 이미지 내부에 존재하는 2D 평면을 마치 스캔한 것처럼 보이게 시점 변환을 수행해보자. 위 자판기 사진의 옆면의 각 모서리에 점을 지정하고, 해당 평면을 복원하는 변환을 수행해보겠다. (사진과 점이 정확하지 않아 약간 대충 찍은 것은 감안해주기 바란다.) y_pos = img.shape[0] x_pos = img.shape[1] original_coord = np.float32([[122, 30], [370, 0], [190, 800], [370, 960]]) warped_coord = np.float32([[0, 0], [x_pos, 0],..
Multimodal Object Detection via Probabilistic Ensembling(ProbEN) 요약

Multimodal Object Detection via Probabilistic Ensembling(ProbEN) 요약

2023.02.09
객체 인식은 자율주행 차량 등 다양한 분야에서 활용되고 있다. 이때, 자율주행 차량과 같은 시스템들은 밤, 낮, 우천 시 등 다양한 환경에서 Object Detection을 수행해야 하는데, 이를 위해 일반적인 RGB 카메라 뿐만 아니라 열화상(Thermal) 카메라 등이 사용된다. 이 논문에서는 RGB와 Thermal 이미지와 같은 멀티모달 환경에서 모델 내부에서의 특성 융합(feature fusion)이 아닌, 독립된 모델들의 앙상블 방법을 통해 강건한 모델을 만드는 ProbEn 방법을 소개한다. 이 방법을 KAIST PD, FLIR 등의 데이터에서 테스트한 결과, 이전의 다른 방법들을 13% 이상의 차이로 앞서는 결과를 보였다. Introduction 일반적으로 열화상 이미지는 RGB 이미지에 비해..
M2Det: SSD based on Multi-Level FPN 요약

M2Det: SSD based on Multi-Level FPN 요약

2023.02.02
다양한 크기의 물체들을 인식하기 위해서는 다양한 해상도의 feature map들을 활용하는 것이 중요하다. Feature Pyramid Network는 다양한 해상도의 feature map을 적은 연산양으로 만들면서도, 합성곱 신경망 앞쪽에서 생성되어 자칫 low-level 정보가 부족할 수 있는 feature map들에도 뒤쪽 layer의 feature 들을 전달하여 여러 SOTA 모델들에서 활용되어 왔다. (DSSD, RetinaNet, RefineDet, Mask R-CNN 등) FPN이 좋은 성과를 많이 낸 것은 사실이지만, 객체 분류를 위해 사전학습된 backbone network에서 feature를 추출하는 한계 상 FPN은 객체의 간단한 정보들밖에 뽑아내지 못하는 문제가 있다. M2Det에서..
FPN (Feature Pyramid Network) 요약

FPN (Feature Pyramid Network) 요약

2023.02.01
Object Detection에서, Feature Pyramid는 다양한 크기의 물체들을 탐지하기 위한 주효한 방법 중 하나이지만, 많은 (당시) 최근 모델들이 다양한 scale의 feature map들을 만드는 데 컴퓨팅 성능이 너무 많이 요구되기에 feature pyramid를 만드는 접근을 피해왔다. FPN은 적절한 수준의 연산을 통해 Feature Pyramid를 생성하여 Faster R-CNN에 적용한 결과 COCO 데이터셋 SOTA를 달성하였고, 6FPS 속도를 보였다. Feature Pyramid Feature Pyramid란 객체 인식에 필요한 feature 들을 담고 있는 다양한 스케일의 feature map들을 말한다. 이미지에 포함된 객체들의 크기에 따라 다른 해상도의 feature ..
  • 최신
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 다음

정보

컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

  • 컴퓨터와 수학, 몽상 조금의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (279) N
    • Tech Trend (3)
    • Deep Learning (77)
      • 공부 노트 (21)
      • 논문 리뷰 (44)
      • 논문 스키밍 (1)
      • 영상처리 (11)
    • Engineering (3)
      • Tips (2)
      • Experiences (1)
    • Blog (45) N
      • 회고 & 계획 (17)
      • 내 이야기 (9)
      • 리뷰 (3)
      • 군대에 간 공돌이 (10) N
      • ML엔지니어 취업 도전기 (1)
      • 여행 (4)
    • 학부 수업 (141)
      • 머신러닝 (16)
      • C프로그래밍 (8)
      • 자료구조 (11)
      • 알고리즘 (17)
      • 디지털시스템 (25)
      • 컴퓨터구조 (11)
      • 확률과 통계 (21)
      • 선형대수학 (14)
      • 이산수학 (18)
      • 데이터시각화 (0)
    • 강의 (9)
      • 딥러닝 기초 (7)
      • Python (2)

공지사항

인기 글

정보

백지오의 컴퓨터와 수학, 몽상 조금

컴퓨터와 수학, 몽상 조금

백지오

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
반응형

나의 외부 링크

  • profile
  • github
  • linkedin

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. © 백지오. Designed by Fraccino.

티스토리툴바