본문 바로가기

openCV21

[openCV] 특징점 검출 특징점 영상 내 추출한 정보 특징점은 points, edges or objects와 같은 다양한 구조이다. 특징점은 이웃한 픽셀들의 정보를 활용하여 생성될 수도 있다. 좋은 특징점 조건 Illumination 조명의 영향을 받지 않아야 한다. Translation 위치에 상관없이 동일한 결과가 나와야 한다. Scale 크기에 제한이 없어야 한다. Rotation Perspective transform 적은 계산량과 메모리 사용 Several Images features ORB (oFast detector + r-BRIEF descriptor) 빠르고 조명과 회전에 강인하다. FAST detector 역할 p픽셀보다 연속적으로 밝기 값이 크거나 작다면 픽셀 p는 feature BRIEF descriptor.. 2020. 2. 1.
[openCV] 영상 변환 이미지 변환 Similarity transformation : 크기나 모양을 변형시키는 것, 영상 내의 물체의 형태가 그대로 유지된다. Affine transformation : 비율이 달라지는 것, 형태가 변하지만 평행선은 유지된다. Projective transformation : 직선은 유지되지만 평행 관계를 잃어버린다. Projective transformation 각각의 픽셀을 특정한 위치로 이동시켜주는 행렬을 구한다는 것 (3x3 행렬이 필요) 출처 - 컴퓨터 비전 한동대학교 황성수 http://www.kocw.net/home/cview.do?cid=1b1f5b73413060b5 2020. 2. 1.
[openCV] 추적 Tracking detection은 검출하고자 하는 대상을 정해놓고 찾아내는 것이고 Tracking은 대상이 검출된 상황에서 그것을 따라가는 것 기본 개념 : ROI 설정 후 히스토그램 또는 features로 표현한다 -> 다음 프레임에서 ROI와 가장 유사한 패치를 찾아낸다 Meanshift 어떠한 점들의 밀도가 최대가 되는 위치로 이동시켜주는 알고리즘 Histogram back-projection과 결합하여 사용 Camshift mean-shift의 수정된 버전 물체의 크기가 변함에 따라 관심 영역의 크기도 변화하기 때문에 정확한 추적이 가능하다. Optical Flow 밝기의 움직임 KLT 알고리즘 가정 : 어떠한 물체의 밝기값은 인접한 프레임에선 변하지 않는다, 어떠한 픽셀의 움직임은 인접한 픽셀.. 2020. 2. 1.
[openCV] 딥러닝을 활용한 객체 검출 openCV 3.3부터 신경망을 불러와서 코드를 활용할수 있게 되었다. 현재 openCV는 Caffe, TensorFlow, Darknet, Torch/PyTorch 라는 신경망 framework를 지원한다. openCV에서 딥러닝을 사용하는 방법 1. 기존 학습된 신경망 모델을 불러온다. 2. 입력영상을 딥러닝 모델에 적합하게 바꾼다. (blob의 형태로 변환) 3. blob을 신경망에 집어 넣는다. 대표적인 신경망 GoogleNet은 영상이 어떠한 영상인지 판별, YOLO는 영상 내에 존재하는 물체들 검출 출처 - 컴퓨터 비전 한동대학교 황성수 http://www.kocw.net/home/cview.do?cid=1b1f5b73413060b5 2020. 2. 1.
[openCV] 보행자 검출 보행자 검출은 HoG를 활용하여 표현한다. HoG 얼굴 검출의 성능 개선 ▪ Image patch resizing ▪ Histogram normalization -> 조명에 따라 HoG 계산이 다르게 나오는 것을 막기 위해 normalization 수행 openCV function HOGDescriptor hog(Size(48, 96), Size(16, 16), Size(8, 8), Size(8, 8), 9); hog.setSVMDetector(HOGDescriptor::getDaimlerPeopleDetector()); //두 가지 옵션 가능 // getDaimlerPeopleDetector() // getDefaultPeopleDetector() win_size : 검출을 위한 윈도우 크기 block.. 2020. 1. 31.
[openCV] 얼굴 검출 사물 검출 ▪ Haar-like feature 영상이 주어져 있을 때 영상의 특정 영역을 픽셀들의 값들의 합의 차이를 이용해 물체 검출,, 검은색의 사각형 내부에 있는 픽셀들의 합 - 흰색 영역 내의 픽셀들의 합 어떠한 feature가 얼굴을 검출하기에 적합한지 찾아내기 위해 Adaboost(Adaptive Boosting) 이 사용된다. Boosting: weak-learner의 집합으로 strong-learner을 만드는 것 Adaptive: 각각의 weak-learner의 가중치를 다르게 조절해주는 것 Cascade classifier integral image integral image를 활용하면 픽셀에 접근하지 않고도 계산량을 줄일 수 있는 장점이 있다. openCV에 내장되어 있는 face d.. 2020. 1. 31.