no image
[Object Detection] darknet custom 학습하기
darknet 학습을 위해 이전에 처리해야할 과정들은 다음 포스팅을 참고 [Object Detection] darknet custom 학습 준비하기 https://eehoeskrap.tistory.com/367 [Object Detection] Darknet 학습 준비하기 환경 Ubuntu 16.04 GeForce RTX 2080 1. 학습 준비하기 1.1 COCO 데이터 세트를 이용한 학습 COCO 데이터는 2014 , 2017 로 나뉘어져 있는데, 홈페이지에서 다운 받을 수도 있지만, 크기가 너무 커서 유틸리티 cur.. eehoeskrap.tistory.com 1. Darknet 코드 다운받기 Darknet 프레임워크를 이용하기 위한 github 는 크게 2가지가 있다. 1.1 yolo v3 저자가..
2019.10.16
[Object Detection] COCO Category 91 vs 80
COCO 데이터 세트 논문에 나와있는 클래스의 개수는 91이다. Darknet 프레임워크에 나와있는 클래스의 개수는 80개이다. COCO 데이터 세트의 2014 데이터와 2017 데이터 이름은 같으며, 단지, Paper 와의 약소한 차이인 누락된 클래스가 있다. 누락된 클래스 11개 stop sign hat shoe eye glasses plate mirror window desk door blender hair brush 또한 참고로 COCO 주석인 json 파일에서 stop sign 에 대한 주석이 빠지면서 생긴 문제인지 train 및 val 의 이미지 개수와 annotation 개수의 차이가 다소 있다. train2017 : 118,287 장 annotation (train2017) : 117,26..
2019.10.08
no image
[Object Detection] Darknet 학습 준비하기
환경 Ubuntu 16.04 GeForce RTX 2080 1. 학습 준비하기 1.1 COCO 데이터 세트를 이용한 학습 COCO 데이터는 2014 , 2017 로 나뉘어져 있는데, 홈페이지에서 다운 받을 수도 있지만, 크기가 너무 커서 유틸리티 curl 를 이용하여 다운받아야 한다. COCO 데이터 세트 https://cocodataset.org/#download COCO - Common Objects in Context cocodataset.org COCO 데이터 세트 종류는 다음과 같다. 이미지 2014 Train images [83K/13GB] 2014 Val images [41K/6GB] 2014 Test images [41K/6GB] 2015 Test images [81K/12GB] 2017 ..
2019.10.08
[Deep Learning] 커널의 의미
각기 다른 개념에서 사용하는 커널의 의미는 다음과 같다. 커널 PCA와 서포트 벡터 머신(SVM)에서의 커널 비선형 함수 MeanShift 알고리즘에서의 커널 샘플의 영향 범위 신경망에서의 커널 가중치 참고자료 : 파이썬을 활용한 머신러닝 쿡북 (한빛미디어)
2019.10.05
no image
[Pose Estimation] COCO dataset 을 이용한 자세 추정 결과
person detection(object detection) + pose estimation + keypoint rescoring
2019.09.17
[Object Detection] YOLO style 로 Bounding Box 값 바꾸기
기존 Bounding Box 좌표 값인 (x1, x2, y1, y2) 형식을 Yolo Style인 이미지 크기에 대한 비율 값으로 바꾸고, (centerX, centerY, w, h) 형식으로 바꾸는 소스코드이다. def convert(size, box): dw = 1./size[0] dh = 1./size[1] x = (box[0] + box[1])/2.0 y = (box[2] + box[3])/2.0 w = box[1] - box[0] h = box[3] - box[2] x = x*dw w = w*dw y = y*dh h = h*dh return (x,y,w,h) im=Image.open(img_path) w= int(im.size[0]) h= int(im.size[1]) print(xmin, xma..
2019.09.17
[Object Detection] Darknet python
Darknet 프레임 워크를 이용하여 Python3 환경에서 Video 영상을 입력으로 Object Detection을 하는 방법이다. 이 때, Darknet 소스코드에 있는 darknet/python/darknet.py 파일을 이용하여 바로 video 영상을 입력 받을 수 없다. 소스코드를 보면 알겠지만, 단지 이미지 패스를 통해 detect 함수에서 이미지를 불러오고 있다. 이 때 nparray to image 과정이 필요하다. 바로 video 영상을 입력 받을 수 있도록 하는 방법을 소개한다. 1. 소스코드 다운 $ git clone https://github.com/pjreddie/darknet.git https://github.com/pjreddie/darknet.git pjreddie/dark..
2019.09.04
no image
[Object Detection] Darknet 학습 시 적절한 Weight 고르기
When should I stop training: Usually sufficient 2000 iterations for each class(object). But for a more precise definition when you should stop training, use the following manual: During training, you will see varying indicators of error, and you should stop when no longer decreases 0.XXXXXXX avg: Region Avg IOU: 0.798363, Class: 0.893232, Obj: 0.700808, No Obj: 0.004567, Avg Recall: 1.000000, co..
2019.09.04
no image
[Pose Estimation] COCO Dataset Annotation Tool
COCO Keypoint 데이터 세트를 만들기 위해 아래와 같은 툴을 사용 할 수 있다. Supervisely Visipedia 1. Supervisely 회원 가입 후, 프로젝트를 생성하여 사진을 불러와 주석을 달 수 있다. 먼저 박스를 쳤을 때 포즈 모델이 어떻게 구성될건지 정의해주는 작업이 필요하다. 웹 기반으로 되어있으며, 포즈모델 이외에도 다양한 라벨링 작업을 수행 할 수 있다. 깃허브 https://github.com/supervisely/supervisely supervisely/supervisely AI for everyone! :tada: Neural networks, tools and a library we use in Supervisely - supervisely/supervisely..
2019.08.28
no image
[Object Detection] Convert Darknet yolov3 model to keras model
Darknet Yolo v3 의 .weights 파일을 Keras의 .h5 로 변환하는 방법인데, 클래스는 제대로 찾을 수 있지만 (사람, 바이크 등) 아무래도 프레임워크간의 변환이니 정확도(box score)가 손실된다. 또한, Keras가 Tensorflow에 내장되면서 Yolo v3 모델을 Keras 모델로 바꾸는 코드들이 Cuda 9.0 을 지원하거나, 잘못된 코드들을 가지고 있는 경우가 있다. (Yolo v2 모델 변환하는 방법은 잘 나와있는 듯) 그래서 변환하지 않는 방법을 추천한다. 변환하지않고, 그냥 darknet 프레임워크를 이용하여 실행하는 방법을 추천한다. 1. python 에서 darknet 프레임워크를 사용하여 weights, cfg , ... 파일들을 불러와 실행하는 방법 htt..
2019.08.19
no image
[Object Detection] 객체 탐지를 위한 데이터 주석 Yolo 형식으로 변환하기
https://github.com/ssaru/convert2Yolo ssaru/convert2Yolo This project purpose is convert voc annotation xml file to yolo-darknet training file format - ssaru/convert2Yolo github.com 위 깃허브 저장소에서 아래와 같은 데이터 세트들의 주석 파일을 Yolo 프레임워크에 맞게 변환 할 수 있다. COCO VOC UDACITY Object Detection KITTI 2D Object Detection 필자는 person.names 를 생성하고, COCO 데이터 세트의 (train2017, val2017) 이미지 정보가 담긴 json 주석 파일들을 yolo 형식(txt)..
2019.08.19
no image
[Pose Estimation] Through-Wall Human Pose Estimation Using Radio Signals
Pose Estimaiton 분야에서 Occlusion(폐색) 문제를 해결 해 볼 수 있는 흥미로운 주제를 발견하였다. MIT에서 연구중인 RF-Pose 인데, 이는 벽에 의해 사람이 가려지는 현상이 일어나더라도 정확하게 자세를 추정 할 수 있다. WiFi 주파수의 무선 신호가 벽을 통과하면서 인체에 반사되는 기술을 이용한 방법이다. 비전 기반 기술 만큼 정확하다고 말하고 있다. 같은 시간에 발생한 Vertical Heatmap 과 Horizontal Heatmap 을 결합한 RF Heatmap 정보를 이용하는데, 이는 폐색 현상을 해결 할 뿐만 아니라 어두운 공간에서 까지 정확하게 인간의 자세를 추정해낼 수 있다. 또 흥미로운 것은 일반적으로 자세 추정 분야에서의 평가 측정은 PCKh 와 OKS 를 이..
2019.08.19