반응형

전체 글 42

[기타 공부] Hough Transform

OpenCV에서 Canny detection으로 얻은 edge들을 Hough transform을 사용하여 직선을 검출했던 기억이 있다. 사용하면서도 그 원리를 알아보지 않았는데, 이번에는 그 원리를 자세하게 공부해보았다.   Hough transform의 필요성Hough transform은 1960년대 제안된 알고리즘이다. 당시 gradient를 기반으로 edge를 detect하는 방법은 한계가 존재하였다.위와 같은 자전거 이미지와 여기서 구한 edge가 있다고 생각해보자. 원형의 모양을 가지는 두 바퀴를 찾는것을 목표로 하고 있다. 하지만 기존의 edge에서는 어려움이 존재한다.Data의 어떤 부분을 circle로 학습해야하는가원하는 circle의 edge가 불완전하게 존재한다는 점원하는 edge들 이..

[Paper Review] Rich feature hierarchies for accurate object detection and semantic segmentation

이번에 리뷰하는 논문은 CVPR 2014에서 발표한, Object Detection의 초기 모델이라고 할 수 있는 R-CNN을 제안한 논문이다. Object Detection은 이미지에서 object의 위치를 찾고, 이것을 분류하는 작업을 의미한다. 이와 관련된 논문들은 크게 2 stage와 1 stage 방법으로 나뉘게 된다. 2 stage가 의미하는 것은 detection의 단계를 localization과 classification 두 단계로 나누는 것을 의미한다. 반면 1 stage는 이 과정을 한 번에 진행하게 된다. 오늘 리뷰하는 R-CNN은 2 stage의 대표적인 모델이다.   문제 정의사실 해당 논문은 큰 문제점을 고친다기보다는 object detection 분야의 성능 향상을 목표로 한 ..

[Paper Review] Spatial Transformer Networks

해당 논문은 NeurIPS 2015에서 소개된 논문이다. 당시 CNN은 fast, scalable, end-to-end learning이 가능하다 라는 점에서 다양한 분야를 위한 네트워크로 각광받고 있었다. 이러한 배경에서 논문의 저자들은 CNN의 한계점에 주목하며 문제를 해결하고자 한다.   문제 정의CNN은 spatially invariance의 특성을 가지지 못한다는 한계점을 가진다. 즉 원본 이미지에 대해서 약간의 변형에 가해졌을 때 같은 결과를 출력하는 일관성이 떨어진다는 뜻이다.이를 해결하기 위한 방법이 max pooling이었다. Max pooling의 사용이 주는 이점이 spatially invariance라는 점과 결과에서의 향상을 살펴보면 분명 의미가 있는 기법이다. 하지만 max po..

[기타 공부] Canny Detection

OpenCV에서 edge를 detect 할 때 자주 사용했던 알고리즘이다. 이제는 그 원리를 알아보려고 한다. 이전 게시글에서 설명한 Sobel filter는 두꺼운 edge를 검출해서 보여주기 때문에 edge를 정확히 검출하는데 한계가 존재한다. 따라서 다양한 환경의 영향을 덜 받을 수 있는 정확한 edge 검출 알고리즘이 필요해졌다. Canny Detection의 단계를 살펴보자.   - 단계1. 노이즈 제거 (Gaussian Blur)첫 번째는 edge의 정확도 향상을 위해, 고주파 노이즈들을 없애주는 Gaussian Blur를 적용한다. 이후 적용하는 Sobel filter에도 기본적으로 내재되어 있지만 더욱 확실하게 노이즈 제거를 수행하게 된다. 2. Edge 검출 (Sobel gradient ..

[기타 공부] Sobel gradient, Laplacian gradient

OpenCV를 사용하던 중 edge detection을 위한 다양한 방법의 원리가 궁금해졌다. 기본적으로 이들은 high pass filter를 기반으로 edge를 검출하는 방식이다. 이를 위해 미분으로 각 pixel의 색상 변화율을 계산하고 급격한 변화를 보이는 부분을 검출하게되는데, OpenCV에서는 이러한 high pass filter에 Sobel, Laplacian gradient filter를 사용한다. 그래서 이 두 가지 방법을 먼저 공부해보았다.   1. Sobel gradient이것은 위와 같은 3x3 filter를 사용하여 x방향과 y방향으로 각각 미분 값을 구하여 edge를 detect하는 방법이다. 각각의 kerenel을 Gx, Gy로 정의한다. 특히 위의 필터를 각 방향에 적용하였을..

[Paper Review] Jigsaw Clustering for Unsupervised Visual Representation Learning

이 논문은 2021년 CVPR에 소개된 논문이다. Self-supervised Learning 중 pretext task분야에 속하는 Jigsaw puzzle을 조금 더 발전시키기 위해 노력한 논문이라고 생각되었다. 논문이해를 위해 아래 영상을 참고하였다.https://www.youtube.com/watch?v=zAnc1kT2CJc 논문을 읽으면서 조금 헷갈렸던 개념이 있었는데 위의 영상에 언급되어있었다. 1. Unsupervised learning과 Self-supervised learning은 같은 개념인가?나는 label을 전혀 가지지 않는 unsupervised learning과 직접 label을 정의하여 학습을 진행하는 self-supervised learning은 다른 개념이라고 이해하고 있었..

[Paper Review] Going deeper with convolutions

이 논문은 2014년 CVPR에 소개된 논문이다. 잘 알려진 ILSVRC 2014년 대회에서 우승을 하며 독창적인 아이디어와 deep network를 구현했다는 점에서 널리 알려지게 되었다. 이전에 리뷰한 VGG Net과 마찬가지로 이전 CNN 모델인 AlexNet에서 깊이를 늘리기 위해 노력했다는 점이 인상깊은 논문인 것 같다.   문제 정의결국 GoogLeNet을 고안하게 된 이유는 네트워크에서 "깊이"라는 요소를 늘리고 싶었기 때문이다. 하지만 논문에서 언급하는 것과 같이 깊어짐에 따라서 발생하는 문제가 있다. Parameter의 수가 늘어나며 overfitting의 위험성이 생긴다는 점과 그에따른 계산량의 증가라는 점이다. Filter 수의 uniform한 증가는 계산량에서의 quadratic 증..

[Paper Review] Dense Contrastive Learning for Self-Supervised Visual Pre-Training

이 논문은 2021 CVPR에서 발표된 논문으로 기존에 연구되던 Contrastive Learning을 Dense prediction에 더욱 잘 맞도록 연구한 DenseCL의 내용을 담고있다. 사실 이 논문에 앞서서 Self-Supervised Learning을 연구하는 논문인 BYOL, SimCLR, MoCo 등을 아직 읽지 않아서 배경 지식이 많이 부족했기 때문에, 나중에 해당 논문들을 읽고 다시 읽어봐야 할 것 같다. 먼저 이번에 처음 알게 된 self-supervised learning의 개념을 정리하였다.기존에 사용하던 supervised learning은 학습을 위한 데이터와 그에 대한 정답을 사전에 알려주고 학습을 진행하였다. 하지만 self-supervised learning의 경우는 정답..

[Paper Review] Very Deep Convolutional Networks For Large-Scale Image Recognition

이번에 리뷰하는 논문은 2015년 Oxford 대학에서 발표한 논문으로, 현재 잘 알려진 VGG Net을 제안하는 논문이다. 앞서 리뷰한 ResNet과 같이 독창적인 아이디어로 ILSVRC 대회에서 좋은 성적을 거둔 모델이다. 다만 2015년 대회였던 ResNet과 달리 VGG Net은 2014년 대회에서 2위의 자리를 차지했던 모델이다. 따라서 당시 AlexNet 이후에 eep network에 대한 연구가 한창 진행되던 시기라는 것을 알면 좋을 것 같다. 2014년 1위 모델인 GoogleNet은 다음 논문으로 리뷰 할 예정이다. 아래 사진은 각각 ILSVRC 대회의 1등 모델들과 에러율 그리고 2014년 대회에서의 결과이다.      문제 정의이 논문은 제목에서도 알 수 있듯이 모델 성능의 향상을 위..

[Paper Review] Deep Residual Learning for Image Recognition

이번에 리뷰하는 논문은 2016년 microsoft research의 Kaiming He와 몇몇 연구자들에 의해 CVPR에 발행된 논문이다. ILSVRC의 2015년 대회에서 우승한 ResNet 모델을 소개하는 논문이다. 당시 전례 없이 깊은 모델을 만들었다는 점, 깊어진 깊이에 반해 이전에 나왔던 더 얕은 모델보다 더욱 단순하다는 점, Residual Learning이라는 기법을 도입한 점 등 꼭 읽어야하는 논문 중 하나라고 생각한다.   문제 정의ResNet이 나오기 전까지만 해도 VGG-Net, GoogLeNet 등 ResNet의 152 layers에 비하면 적은 layer를 가지는 모델들이 존재했다. 깊이가 깊어지면 모델의 성능이 좋아질 것을 예상은 할 수 있었지만 모델이 깊어짐에 따른 문제점이 ..

728x90