본문 바로가기

Research

[Object Detection] Robust Real-Time Object Detection (4) * search에 대한 computing time을 줄이면서, 인식률을 증가시킬수 있는 방식* 이는 cascade가 이런 특징을 가지도록 design되어 있음.* 각 stage는 adaboost classifier로 구성 (전 포스트에서 설명한 adaboost training)* 초기 adaboost threshold는 낮은 threshold값을 가짐. 이 낮은 threshold는 높은 감지율과 높은 오류율(false positive rate)의 특성을 가진다.* two feature에 대해 얘기하고 있는데, 뜬금없이 나와서 더 좀 보고 이해좀 해야겠음.* cascade == "degenerate decision tree"(위의 그림) * cascade 구조는 대부분은 reject되는 특징을 반영.** .. 더보기
[Object Detection] Robust Real-Time Object Detection (3) ● training 과정▶ 위의 그림에서☞ n - 전체 training sample 수 ☞ xi - image -> integral image☞ yi - label : 0, 1☞ m - positive sample 수☞ l - negative sample 수☞ w - weight☞ T - iteration, optimal 한 classifier 최대 수 ☞ t < T (0부터 시작한다면,)☞ i 이때 resize(24x24) & integral image converting▶ 이후론, training set은 24x24이미지, integral image 형태를 의미함. ▶ 3. generating!! haar like feature 실제 haar like feature를 계산하는게 아니라, 24*24안에.. 더보기
[Object Detection] Robust Real-Time Object Detection (2) * Haar like feature** integral image심플하다.. 수평방향으로 현재 pixel과 이전 픽셀을 더하고 이 결과값을 다시 인풋으로 해서 수직방향으로 더하면 Integral 이미지, 즉, 적분 이미지가 된다.ref) 참고 coding) for(int j=0; j 더보기
[Object Detection] Robust Real-Time Object Detection (1) 논문 정보Paul Viola, and Michael Jones. International Journal of Computer Vision 57(2):137--154 (2002) Haarr like feature.. Integral image : 현재 위치 (x, y)는 (0, 0)~(x~y)의 Pixel값들의 Sum으로 표시, 일종의 적분 이미지, 그러나 매우 단순해보임. 가능하나? 이런 생각이 듬.왜? 매우 빠른 (극도의) feature 추출 방법을 선보임. 이는 Scale space에서 보다 강력함. (논문에서 11 pyramid 이미지에서 15fps) 이런 Integral image를 이용하여, 위의 4가지형태의 Haar like feature를 생성 수직/수평/대각선형태(이는 방향성을 지니고 있음.. 더보기
공분산의 의미 (사진 출처 : http://www.wikihow.com/Calculate-Covariance) covariance(공분산)의 의미는 x, y 가 존재할때, 이에 대한 상관관계를 의미한다. 예를 들어, x가 커지면 y도 커질까? covar = dxx dxy dxy dyy 즉, dx, dy, dxy 3개의 값을 구하면된다. 이제부터,dxx = sum((x-mean_x)^2)/Ndyy = sum((y-mean_y)^2)/Ndxy = sum((x-mean_x)*(y-mean_y))/N 구할 수 있다. 그런데 더 의미를 찾으면, 우리는 여기에서 dxx, dyy, dxy 어디서 본것 같지 않나요?? 즉, edge의 방향 성분과 유사하며, 이는 곧 분포도에 대한 방향을 획득할 수 있다. (참고 - pca의 eige.. 더보기
[Object Detection] Class-Specific Hough Forests for Object Detection (1) 논문 정보Gall J. and Lempitsky V., Class-Specific Hough Forests for Object Detection (PDF, Images/Videos/Code), IEEE Conference on Computer Vision and Pattern Recognition (CVPR'09), 2009. ©IEEE 주요 KeywordHough Forest (Hough Voting Codebook)Random Forest (미리 걔념을 알아야할듯)Object DetectionCodebookVoting앙상블 Abstract- 타켓된 One 클래스를 감지하는 알고리즘.( 이후, 멀티클래스 관련논문이 존재하는듯~)- 이미지내에 특정 오브젝트의 위치까지 판단.- 전체적인 개념으로 볼때, V.. 더보기
Gaussian Mixture Model 관련 중요 단어는, 확률 분포, 확률 밀도 함수, Gaussian 분포, - 기본적으로 확률 분포는 Gaussian 분포 대응된다.- 확률 밀도 함수는 특정 구간에 대한 확률 분포를 구하는 것이다. 이는 가우시안 함수의 미분한 것으로 이를 이용하여 특정 구간을 구하게(적분) 된다.- Gaussian Mixture Model 는 여러개의 확률 분포의 결합이라 할수 있다.즉, 예를 들어 다음 그림을 모델링 하는 것이다. 여기에서는 3개의 확률 분포가 존재한다. (예를 들어, KMeans의 K=3와 의미가 같다는 것을 의식!!)따라서, 잘 생각해보면, 3개의 가우시안 확률 식이 존재하는데, 새로운 데이터가 어디에 속하는지 알기 위해서는 가우시안 함수에 파라메터를 구하면 된다. 이때 적용하는 것이 likelih.. 더보기
Gaussian Filter 원문링크 Gaussian Filter 영상을 부드럽게 하기 위해서는 신호처리분야에서 저역 통과 필터(low pass filter)를 통과시켜야 된다. 저역 통과 필터는 주파수 공간에서 영상의 저주파 성분만을 통과시키는 필터로써 mean filter, weighted mean filter 등 여러가지가 있지만 여기에서는 Gaussian Filter에 대해 알아본다. 가우시안 함수는 자연현상을 가장 잘 표현하는 함수 식 중의 하나이다. 1차원 가우시안 분포를 식으로 나타내면 아래와 같다. μ는 일반적으로 0으로 놓는다. σ는 값의 분포를 결정지으며, 표준편차를 의미한다. 일반적으로 μ = 0과 σ^2 = 1를 정규분포라고 부른다. 영상처리에서 가우시안 필터는 2차원 가우시안 함수 값을 이용하여 마스크를 생성.. 더보기
Affine Transform Patch - opencv example 분석 예정~^^;Warped Patch에 대해 현재 헷갈리고 있는데..ㅠㅠ 관련 자료를 찾다가 다음 소스를 찾았다..그냥 AffineTransformPatch이름이라는 이유로 구글링해서..ㅎ 그런데 이 소스가 범상찾아서 찾아보니.. "Real-Time Learning of Accurate Patch Rectification" 의 논문을 OpenCV에서 구현해놓은것이다. 일단 논문과 다음 소스가 어떻게 적용되고 있는지 그리고 내가 원하는것인지 참고하려고 한다. void AffineTransformPatch(IplImage* src, IplImage* dst, CvAffinePose pose) { CvRect src_large_roi = cvGetImageROI(src); IplImage* temp = cvC.. 더보기
[링크] 자세한 KMeans 초기값 설정 개념 참고) OpenCV에서는 이 함수를 지원한다. 예전 kmesns 버전에서는 random만 제공했는데, 현재는 kmeans++ 버전이 지원되는 걸 확인, 다만, opencv 안에 아래 3개 모두 알고리즘을 제공하는 것이 있는데 그것이 flann 이다. 자세히 소스를 보면 모두 제공됨을 알 수 있다. 원문 링크k-means알고리즘은 맨 처음 k개의 center를 잘못 정하면 엉뚱한 결과가 생길 수 있다. 예를 들면, 다음 그림과 같은 경우이다. k=3 일때, 파란색 세개의 클러스터로 묶이는 것이 올바른 결과다. 하지만, 잘못 해서(또는 재수가 없어서) 두번째 열의 인스턴스 세개를 초기 center로 잡고 k-means 알고리즘을 돌리면 엉뚱하게도 빨간색 묶음으로 클러스터링되는 난감한 결과가 생기고 만다. 이.. 더보기