분류 전체보기144 [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. [openCV] 선 검출 허프 변환 y = ax + b -> b = -ax + y (a : 기울기 b: y절편) 즉, 한 점이 가질 수 있는 모든 직선을 b와 m에 대한 평면에서 하나의 직선으로 표현하는 것 에지 영상에서 가능한 (a,b)의 조합을 구한다. 각 에지 픽셀을 통과하는 직선을 모두 찾은 다음 (a,b)의 조합이 여러번 활용될 경우 그것이 영상에 존재하는 선의 방정식일 확률이 높다. 즉, 에지 픽셀을 통과하는 선들을 찾은 후 겹치는 점이 영상에 존재하는 선이다. y = ax + b 라는 식을 활용할 경우 직선이 수직 방향에 가까운 경우 a가 무한대로 수렴하는 문제점 -> 𝜌𝜃 값을 사용 𝜌 : 원점에서 직선에 수선을 내렸을때 수선의 길이 𝜃 : 𝜌와 x축이 이루는 각도 알고리즘 1. 이진 영상으로 변환 2. subdi.. 2020. 1. 29. [openCV] 에지 검출 Edge pixels : 영상의 픽셀 주변으로 밝기 값이 급격히 변하는 부분, 픽셀 Edges : Edge pixels들의 연속된 집합 에지 검출 방법 1. 1차원 함수에 대해 1차 미분 수행하여 에지 검출. 따라서 1차 미분을 했을 때 크기가 0이 아닌 부분을 활용하면 에지 검출이 가능하다. 2. 2차원 영상의 경우, image gradient 사용 gradient 란 주어진 데이터가 2차원 데이터라면 그 2차원 데이터 f의 gradient는 x축 방향으로 편미분 하고 , y축 방향으로 편미분 한 값으로 이루어져 있는 벡터이다. gradient 크기 : 미분 값을 제곱해서 더한 후 루트 값을 씌운 것 gradient 각도 : arctan x/y값 gradient 방향은 현재 픽셀에서 가장 급격하게 변하.. 2020. 1. 29. 이전 1 ··· 18 19 20 21 22 23 24 다음