목록기술, 나의 공부를 공유합니다. (83)
yoncho`s blog
RCNN 계열RCNN은 Region with CNN으로써, Region Proposal(영역 추정)을 기반으로한 Object Detection Network이다.계열을 순서대로 나열하면,RCNN -> SPPNet -> Fast RCNN -> Faster RCNN 순이다.이번 블로그에서는 위 네개의 RCNN들을 설명할 것이다.그럼 시작하자 (부릉부릉)~1. RCNN (Regions with CNN)RCNN은 영역을 추정해주는 stage1과 추정한 영역으로 검출을 수행하는 stage2로 나뉘어져있다.stage1에서는 Region Proposal(Selective Search)를 적용해 2000개의 서로다른 region영역을 뽑아온다.하지만,, CNN에 input img로 활용하기 위해서는반드시, 이미지의 크..
GOOGLE OPEN IMAGE DATASETYOLO와 함께 작성할 예정입니다
MS COCO DATASETMS COCO 데이터 세트는 PASCAL VOC 데이터세트 보다 많은80개의 Object Category를 갖고있으며,300K Img, 1.5million object를 가지고있어서,평균적으로 1개의 img안에 5개의 object들이 들어가있는 데이터 세트이다.특히, MS-COCO 2017은 Tensorflow가 나온해의 가장 많은 카테고리를 갖고있는데이터 세트였기 때문에,Tensorflow Object Detection API & 많은 오픈소스계열 패키지들은COCO Dataset으로 pretrained된 모델을 제공하고있다.COCO 역시,Classification/Detection,Semantic & Instance Segmentation 을 한다.[홈페이지]https://c..
Object Detection Dataset객체 검출 데이터세트는 어마무시하게 많지만, 대표적인 3가지 데이터 세트를 소개하겠습니다.[1] PASCAL VOC 2012 (VOC 2012) _ XML file[2] MS COCO _ JSON file[3] Google Open Image _ CSV filePASCAL VOC 2012 DATASETPASCAL VOC 2012 데이터세트는 Object Detection의 데이터세트에서 베이직으로여겨진다. 객체 검출을 공부했다면 기본적으로 아는 데이터 세트라고 할 수 있다.20개의 객체 카테고리가 존재하고,Classification/Detection,Segmentation,Action Classification,Person Layout의 기능을 한다.Datase..
Object Detection 객체 검출영상, 이미지에서 물체(객체)를 검출 할 수 있다는 것은 어마무시한 행위이다.자율주행, 주민등록증 인식, 자동차 번호판 인식등등으로 수많은 행위들을 할 수 있기 때문이다.OpenCV(영상처리)를 하고 나서 진행하는 post이기 때문에, OpenCV를 중간중간에 사용하며이 파트에서 알고있어야할 중요한 라이브러리는 구글이 풀어놓은 인공지능 라이브러리 괴물, TensorFlow(텐서플로우)입니다.물론 PyTorch(파이토치)라는 아이도 유명합니다. 하지만 필자는 텐서플로우를 했고, 자격인증서까지 취득했으므로텐서플로우 코드들로 진행겠습니다.그럼 지금부터 객체 검출, 오브젝트 디텍션을 시작합니다.Classification / Localization / Detection / ..
5. 직선 검출직선 검출은 이미지내에서 선형적인 부분들을 검출한다.직선 도로에서 도로의 차선이라든지, 건물의 외형들을 검출할 수 있다.직선 검출 알고리즘은 허프 변환 (Hough Transform)을 활용해 직선을 검출한다.허프변환은 이미지 내의 어떤 점이라도 선의 일부일 수 있다는 가정하에 직선의 방정식을 이용해 직선을 검출한다.OpenCV에서 특히, 이분야에서는 삼각함수를 이용한 직선의 방정식을 구한다.(이유는 그냥 직선의 방정식에는 한계들이 존재하기 때문이다.)위와 같은 원점으로부터 각도와 거리로 직선의 방정식을 표현할 수 있다.위 그림을 설명하겠습니다.각도 (0’ ~ 180’)별로 원점에서 거리와 각도가 동일한 직선을 찾는 것이다.p1점을 기준으로 a각도에서 b만큼의 직선까지의 거리가 나온 직선 ..
3. 다각형 근사다각형 근사는 검출된 윤곽선의 형상을 분석할 시 정점의 수가 적은 다각형으로 표현하도록 하는 근사방법이다.즉, 이미지에서 검출된 그룹화된 윤곽선 정보를 갖고 최대한 적은 정점을 갖는 다각형으로 표현하는 것이다.다각형 근사는 더글라스-패커(Douglas-peucker)알고리즘을 사용한다.위 알고리즘은 근사치 정확도 (Epsilon)의 값으로 기존의 다각형과 윤곽점이 압축된 다각형의 최대편차를 고려해 최종 다각형을 근사하게된다.더글라스-패커 알고리즘은 위와같이 적용된다.위 짧은 영상을 순서대로 정리해놓은 그림이다.굵은 점들이 윤곽점, 검은색 실선이 윤곽선들이다.두 극점을 선택한 후 선으로 연결한다. => (a)라는 선그리고 해당 선에 근사치 정확도, 즉 epsilon을 적용한다.근사치 정확도..
OpenCV에서 제일 중요한 부분, 이미지에서 특징점 검출 !!영상내 주요한 특징점 !! Feature Point를 검출하는 방법특징점이 존재하는 위치나 해당 특징점을 부각시켜준다.how??.. 바로!!픽셀의 색상강도, 연속성, 변화량, 의존성, 유사성, 임계점 등을 이용해특징인 가장자리(Edge), 윤곽선(Contour), 코나(Corner), 블록껍질, 모멘트(Moment), 직선, 원 등을 구분한다.가장자리(Edge)검출은 픽셀의 그레이디언트의 상위 임계값과 하위임계값을 사용해 검출한다.픽셀의 연속성, 연결성등이 있어야하며 가장자리로 인식하지않으면 모두 제거한다.윤곽선(Contour)검출은 동일한 색상이나 비슷한 강도를 가진 연속 픽셀을 하나로 묶어서 처리한다.윤곽 검출을 토해 모멘트, 코너, 면적..