반응형

YOLO는 속도측면에서 이점이 있는 객체 인식 모델로 알려져 있습니다.

 

3버전까지 동일 저자였으나 5버전은 중국인이 제작하였습니다.

 

github.com/ultralytics/yolov5

 

ultralytics/yolov5

YOLOv5 in PyTorch > ONNX > CoreML > TFLite. Contribute to ultralytics/yolov5 development by creating an account on GitHub.

github.com

 

3버전에 비해 성능도 높아지고 자동화가 잘 되어 있어서 사용하기 좋습니다. 또한 파이토치로 구성되어 모바일에 잘 이식된다고 합니다.

 

사용법을 알아보겠습니다.

 

git clone https://github.com/ultralytics/yolov5.git

 

yolo v5는 4가지 선행학습 모델을 제공합니다.

 

s, m, l, x 순으로 모델 크기가 커집니다. l 모델이 가장 합리적 모델이라고 말합니다.

 

합리적이란 모델 크기와 성능 향상 폭을 고려할 때 합리적이라는 뜻입니다.

 

커스텀 데이터 셋으로 학습을 하고자 할 경우 레이블링을 위하여 다음 툴을 사용해줍니다.

 

github.com/tzutalin/labelImg

 

tzutalin/labelImg

🖍️ LabelImg is a graphical image annotation tool and label object bounding boxes in images - tzutalin/labelImg

github.com

 

해당 툴의 yolo 버전 어노테이션은 v5를 지원합니다. 

 

이후 yaml 파일을 생성해주어야 합니다.

 

# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/]
train: dataset/images/  # 118287 images
val: dataset/images/  # 5000 images

# number of classes
nc: 5

# class names
names: ['1','1','1','clubhead', 'clubshaft']

train, val의 경로와 nc 클래스 수, names 클래스 명을 각자의 커스텀 데이터 셋에 맞게 수정해줍니다.

 

이후 아래 명령어로 학습을 실행해줍니다.

 

python train.py --img 512 --batch 16 --epochs 200 --data clubhead.yaml --weights yolov5l.pt

img는 인풋 이미지 크기dlqslek. yaml 파일에 데이터 셋 경로가 있기 때문에 따로 필요는 없죠 --weights에서 선행학습 모델을 설정해줍니다.

 

아래와 같이 학습이 진행되는 것을 볼 수 있습니다.

 

학습 시 앵커 사이즈도 자동으로 탐색해주므로 어떠한 버전보다 편리하군요

 

테스트를 원할 경우 다음과 같은 명령어로 실행이 가능합니다.

python detect.py --source ./data/custom/images/val --weights ./runs/train/exp20/weights/best.pt 

 

반응형

'인공지능' 카테고리의 다른 글

pytorch model summary  (0) 2021.03.16
GRU VS LSTM  (0) 2021.03.15
YOLO v3 커스텀 데이터 셋 학습  (0) 2021.01.05
YOLO V3 원하는 객체만 바운더리 박스 칠하기  (0) 2021.01.05
인공지능 관련 용어집  (0) 2021.01.05
반응형

PersonLab: Person Pose Estimation and Instance Segmentation with a Bottom-Up, Part-Based, Geometric Embedding Model

feature

  • box-free bottom-up
  • multi-person
  • single shot model
  • pose estimation, instance segmentation

Keypoint detection

Goal: 각각의 사람마다 키포인트 감지
Base paper: Papandreou, G., Zhu, T., Kanazawa, N., Toshev, A., Tompson, J., Bregler, C., Murphy, K.: Towards accurate multi-person pose estimation in the wild. In: CVPR. (2017)
keypoint detecting: 키포인트 예측은 각 채널별로 binary classification으로 접근. 예측한 키포인트가 GT에서 R(radius)범위 안에 있다면 정답 이때 R은 32(pixel)로 설정

Short-range offset: 히트맵을 예측할 때 같이 예측함. R의 값에 노말라이즈됨. 임의의 픽셀에서 가까운 키포인트로 향하는 벡터

Hough arrays: 히트맵과 short range offset을 이용하여 hough voting을 함

Mid-range offset:

반응형
반응형

Pose Estimation

Pose Estimation

  • 컴퓨터 비전에서 인간, 동물 등의 객체의 위치(Position)와 방향(Orientation)을 탐지하는 문제
  • 사람의 신체 관절인 키포인트(Keypoint)의 위치를 측정(Localization)하고 추정(Estimation)하는 문제
  • 평가지표: https://ctkim.tistory.com/101?category=906618, 추가 -

--PCKh: 전체 프레임에서 사람의 스케일링이 변화되므로 머리 크기에 따라 적응적 임계값 적용 --MAP: Multi-person Pose Estimation의 평가지표로 사용

  • 2D: x, y , 3D: x, y, z
  • Top-down: 사람 인식 후 crop -> pose estimation
    • 정확도 높음
    • Detection 성능에 의존
    • 속도 느림 - 다중 객체 환경에서 특히
  • Bottom-up: 영상에 포함된 사람의 키포인트를 모두 추정하고, 키포인트 간의 상관관계를 분석하여 포즈 추정
    • 빠름, 정확도 낮음

### Pose Estimation Datasets * MPII Human Pose: http://human-pose.mpi-inf.mpg.de/ * Leeds Sports Poses: http://sam.johnson.io/research/lsp.html * FLIC: https://bensapp.github.io/flic-dataset.html, https://bensapp.github.io/flic-dataset.html * ITOP: https://www.alberthaque.com/projects/viewpoint\_3d\_pose/, https://www.alberthaque.com/projects/viewpoint\_3d\_pose/ * DensePose-COCO: http://densepose.org/ * COCO: http://cocodataset.org/


##State-of-the-art leaderboards

MPII Human Pose

Cascade Feature Aggregation for Human Pose Estimation

  • PCKh-0.5 : 93.9%
  • Cascade Feature Aggregation (CFA) 제안
  • 각 다른 스테이지에서의 Feature 들을 통합하여 풍부한 문맥정보를 얻음
  • 서로 다른 스케일의 다양한 정보를 포착하기 위해 Hourglass model 을 Backbone 으로 사용
  • Encoder와 Decoder의 Backbone은 ResNet model을 사용
  • Partial Occlusion에 강건한 추정과 Keypoint Localization 정확도를 향상 시킬 수 있음

Leeds Sports Poses

Learning Feature Pyramids for Human Pose Estimation

  • PCK : 93.9%
  • DCNN(Deep Coonvolutional Neural Network) 모델에서 Pyramid 를 학습
  • DCNN의 스케일에서 불변성을 높이기 위해 PRM(Pyramid Residual Module)을 제안 =
  • Multi-branch Network에서 서로 다른 서브샘플링 비율로 얻어진 입력 특징의 다양한 스케일에 Convolution Filter 를 적용하여 학습
  • Joint Location의 Score Map은 각 Hourglass 모듈의 끝부분에서 생성되며 Squared-error Loss 또한 각 Stack에 입력

FLIC Wrists

Stacked Hourglass Networks : Stacked Hourglass Networks for Human Pose Estimation

  • PCK@0.2 : 97.0%
  • 얼굴이나 손과 같은 Feature 들은 Local Evidence 가 중요
  • 전체적인 포즈를 추정하기 위해서는 Full-body 를 이해하는 것이 필요
  • 여러 스케일에 대한 정보를 포착하는 것이 중요
  • 영상에서 모든 스케일에 대한 정보를 Downsampling의 과정에서 추출하고 이를 Upsampling 과정에 반영
  • Pixel-wise output 생성, 이러한 과정을 반복하여 Stacked Hourglass Network 구조를 완성

ITOP front-view, top-view

V2V-PoseNet (Voxel-to Voxel Prediction Network for Accurate 3D Hand and Human Pose Estimation from a Single Depth Map)

  • Mean mAP : 88.74%
  • 하나의 깊이 지도(Depth Map)에서 3차원 손과 인간의 자세를 추정하기 위한 기존의 딥러닝 기반 방법은 대부분 2차원 깊이 지도를 이용하여 손 또는 신체 관절과 같은 키포인트의 3차원 좌표를 직접 "회귀(Regression)" 하는 방법을 사용
  • 이러한 접근법은 2차원 깊이 지도에서 원근의 왜곡이 존재
  • 원근의 왜곡이란 예를 들어 3차원 실세계를 2차원으로 투영하여 영상을 생성하기 때문에 실제 객체의 모양에 대한 정보가 소실되는 문제점이 있고, 이를 다시 3차원으로 복원하려고 할 때 정보를 완벽하게 복원 하는데 한계가 있음
  • 또한, 2차원 영상에서 3차원 좌표를 직접 회귀시키는 것은 2차원 좌표에 대응하는 3차원 좌표가 무한히 많기 때문에 정보가 매우 비선형적이므로 학습이 어려움
  • 그래서 본 논문에서는 3차원 손과 인간의 포즈 추정 문제를 3차원 복셀화 된 그리드를 사용
  • Voxel-to Voxel 방식으로 예측
  • 각 키포인트에 대해 Voxel 당 Likelihood 를 추정

DensePose-COCO

Parsing R-CNN for Instance-Level Human Analysis

  • AP : 61.6%
  • Human Part Segmentation, Dense Pose, Human-object Interaction 분야에서는 인간의 Details 정보가 필요
  • 영상에서 서로 다른 사람의 인스턴스를 구별하고 각 인스턴스의 세부 사항을 표현하는 것이 필요
  • 본 논문은 Parsing R-CNN 이라는 인스턴스 수준의 인간 분석을 해결하기 위한 End-to-End 방법을 제안
  • Region 기반 접근법의 특성과 인간의 외형을 종합적으로 고려하여 인스턴스의 세부사항을 표현
  • Feature Semantic 정보를 향상 시키고, 해상도를 유지하기 위해 Separation Sampling 적용
  • RolPool 연산은 많은 세부적인 특징들을 소실 시키기 때문에 Finest Level 에서만 수행
  • 인스턴스의 다른 부분이나 밀도가 높은 부분을 구별하기 위해 Feature Map 해상도를 확대
  • Receptive Field 를 확대하고 신체의 다른 부분들 사이의 관계를 파악하기 위해 기하학적 및 문맥 부호화 모듈 제안
  • 높은 퀄리티의 Class-aware Mask 가 생성됨
  • 높은 정확성과 작은 오버헤드를 갖는 적절한 브랜치를 구성함
  • R-CNN을 Parsing 하는 것은 매우 효율적이기 때문에 많은 문제에 적용 시킬 수 있음

COCO

HRNet-48 : Deep High-Resolution Representation Learning for Human Pose Estimation

HRNet Network

(a) Hourglass, (b) Cascaded Pyramid Network, (c) SimpleBaseline, (d) HRNet

  • Mean mAP : 77%
  • 고 해상도의 인간 포즈 추정
  • 기존의 방법은 고해상도에서 저해상도 네트워크에 의해 생성된 저해상도 표현으로부터 고해상도 표현을 복원
  • HRNet 은 전체 프로세스를 통해 고해상도 표현을 유지
  • 고해상도 서브 네트워크를 시작으로 점차적으로 고해상도와 저해상도 서브넷을 하나씩 추가하여 많은 스테이지를 생성하고 다중 해상도의 서브 네트워크를 병렬로 연결
  • COCO 데이터 세트를 이용하여 벤치마크 한 결과 중 현재 제일 성능이 우수한 논문

OpenPose

  • 문제점

    • 이미지 내에 몇명의 사람이 등장하는지 모름
    • 관절이나 팔다리가 가려질 수 있음
    • 처리시간
  • 알고리즘

    • 이미지에서 Part Affinity Fields(PAFs)와 Part Confidence Maps(PCM) 검출하여 관절을 찾음
    • 찾아진 관절간의 관계성을 찾아 matching
  • PCM

    • 관절의 위치에 대한 히트맵
  • PAFs

    • 뼈에 대한 정보를 담고 있는 히트맵
    • vector로 표현됨
    • 여러 stage를 통해 정밀화
    • 관절의 주인 찾기

VGG 19에서 10 층만 사용 후 인풋 이미지의 feature 추출하여 PCM 취득 후 PAFs 취득

**
참고: https://reading-cv-paper.tistory.com/entry/TPAMI-OpenPose-Realtime-Multi-Person-2D-Pose-Estimation-using-Part-Affinity-Fields
참고: https://eehoeskrap.tistory.com/329 [Enough is not enough]

반응형
반응형

터미널 창에

 

export TF_CPP_MIN_LOG_LEVEL=2

입력

 

반응형

'인공지능 > 환경 세팅' 카테고리의 다른 글

Conda 가상환경 설정  (0) 2021.01.06
반응형

Conda로 가상환경을 설정하며 python 버전을 설정하고 싶을 땐

conda create -n [가상환경 이름] python=3.x

가상환경 실행하고 싶을 땐

conda activate [가상환경 이름]

가상환경 해제하고 싶을 땐

conda deactivate

conda 패키지 설치하고 싶을 땐

conda install [패키지명]

pip 패키지 설치하고 싶을 땐

pip install [패키지명]

native 가상환경 구성하고 싶을 땐

sudo apt-get install virtualenv
virtualenv venv
virtualenv venv --python=python3.x

반응형

'인공지능 > 환경 세팅' 카테고리의 다른 글

Tensorflow Info 메세지 제거  (0) 2021.02.15
반응형

Super resolution의 초기 논문인 Image Super-Resolution Using Deep Convolutional Networks 논문 리뷰를 하겠습니다.

Introduction


Super Resolution (SR)은 저해상도 이미지를 고해상도 이미지로 복원하는 것입니다.

Single image super resolution (SISR)과 Multiple image super resolution (MISR)로 분야가 나뉘어져 있습니다.

본 논문에서 기존의 Sparse Coding (SC), Example-based 기법에서 더 나아가 딥러닝 기법을 적용한 기법을 제안합니다.

성능은 그림 1과 같습니다.

기존 기법에 비해 PSNR이 높은 것을 볼 수 있습니다.

여기서 Peak signal-to-noise ratio(PSNR)이란?

영상의 손실 압축에서 화질 손실 정보를 평가할 때 사용하는 평가지표입니다.

그림 1 SRCNN 성능


본 논문에서 어필하는 Contributions는 다음과 같습니다.

  • 전처리가 거의 없이 데이터와 CNN을 이용하여 end-to-end SR을 함
  • 전통적인 기법과 딥러닝의 상관관계를 분석하여 네트워크 구조 설계 지침
  • 딥러닝 기반의 기술을 통해 높은 성능과 속도를 제공

Related Work

 

Image Super-Resolution

SISR 알고리즘은 4가지로 분류 가능합니다.

  • Prediction models
  • Edge based methods
  • Image statistical method
  • Patch based methods

본 논문에선 Patch based methods에 관한 설명을 간단하게 합니다.



  • 저해상도와 고해상도의 쌍으로된 patch 정보(딕셔너리)를 가지고 있음
  • 저해상도에서 고해상도로 복원시 nearest neighbor(NN)으로 보간

전통적인 SR 알고리즘은 grayscale이나 single channel image를 중점으로 연구
컬러 이미지는 YUV로 변환 후 Y값만 사용
이전 연구에서 컬러값을 결과 이미지에 덮어 씌운 경우는 있으나, 각 채널간 분석은 없음

Convolutional Neural Network (CNN)

CNN은 최근 이미지 분류 분야에서 성공적인 성능을 보이는 추세입니다.
객체 인식, 얼굴 인식 등 컴퓨터 비전 영역에도 접목 중입니다.
CNN이 성공하려면 몇가지 factor가 필요합니다.

  • 강력한 GPU로 효과적인 학습
  • ReLu를 이용 (빠른 수렴)
  • 데이터 셋 접근성 용이 (ImageNet)

 

Deep Learning for Image Restoration

Fully connected layer (FC) 로만 이루어진 Multi Layer Perceptron (MLP) 모델, CNN으로 이미지 denoising 연구가 있었습니다.
패턴(먼지/비내림)을 제거하는 연구가 있었습니다.

위 연구들의 한계는 denoising만을 하는 점, end-to-end가 아닌 점입니다.

SRCNN

SRCNN은 그림 2와 같이 구성되어 있습니다.

bicubic interpolation으로 upscaling한 Low resolution image data를 이용합니다.

Y는 보간된 이미지, F(Y)의 방식을 통해 고해상도 X를 얻어내는 것이 목표입니다.

F는 3가지 과정으로 구성됩니다.

그림 2 SRCNN 구조

  • Patch extraction and representation - Y를 overlapping하며 high dimensional vector로 변환. 즉, feature map 생성
  • Non-linear mapping - 고차원 to 고차원으로 비선형 매핑
  • Reconstruction - 비선형 매핑이 진행된 feature map을 통하여 X 생성

Patch Extraction and Representation

  • 유명한 patch extraction기법은 PCA, DCT, Haar과 같은 선행 학습된 기법을 이용하는 것 
  • 본 논문에선 patch extraction을 아래 수식과 같이 정의
  • W는 weight, B는 bias
  • 1번째 layer에서 ReLu를 activation function으로 사용하였기 때문에 아래 수식이 도출됨 
  • Filter가 c X f1 X f1 인것으로 보아 channel first인 것으로 확인

 

F1(Y) = max(0, W1 * Y + B1)



Non-Linear Mapping

1번째 layer에서 출력된 feature map을 입력함

 

F2(Y) = max(0, W2 * F1(Y) + B2)

Reconstruction

  • 1번째 layer와 2번째 layer간 비선형 매핑 연산에서 출력된 n1-dimensional feature를 입력함
  • Activation function으로 linear를 사용함
  • Loss function = Mean Squared Error(MSE)

Experiments

그림 3과 같이 1번째 layer에서 엣지를 추출하는 것이 시각화되고, 2번째 layer에서 density를 추출함

그림 3 시각화

성능 실험은 filter 개수, 크기, layer 수를 변경하여 실험 
Filter 개수가 많을수록 성능이 좋지만 속도는 느림 
Filter 크기가 클 수록 성능이 좋음 
Layer 수가 많으면 오히려 성능이 낮음

그림 4 실험 결과

 

반응형

'인공지능 > 논문리뷰' 카테고리의 다른 글

Personlab 논문 리뷰  (0) 2021.03.15
Pose Estimation  (0) 2021.03.15
반응형

YOLO는 많은 사람들이 사용하고 있는 객체 인식 오픈소스입니다.

이미 선행학습 (Pre-trained)된 데이터도 있지만, 제가 원하는 클래스는 송전탑 (Transmission tower) 클래스입니다.

따라서 해당 클래스만 학습해보도록 하겠습니다.

환경: Ubuntu 18.04 LTS

데이터 셋을 구하기 위해 먼저 크롤링을 해줍니다.

구글 크롬 드라이버를 이용할 것입니다.

크롬 드라이버를 본인의 크롬 버전에 맞게 다운로드 받습니다.

Link: https://chromedriver.chromium.org/downloads

크롬 버전 확인 방법은 그림 1과 같습니다.

그림 1

 

그림 1-1

크롤러 프로그램은 google-images-download를 사용했습니다.

Link: https://github.com/ultralytics/google-images-download

Readme에 적힌대로 진행하면 크롤링을 진행할 수 있습니다.

다음은 레이블링을 해야합니다.

이미지 내에 객체의 좌표를 로깅하는 것입니다.

본 포스팅에선 YOLO mark를 사용했습니다.

Link: https://github.com/AlexeyAB/Yolo_mark


  1. git clone https://github.com/AlexeyAB/Yolo_mark
  2. cd Yolo_mark
  3. cmake .
  4. make
  5. chmod u+x ./linux_mark.sh
  6. ./linux_mark.sh

위 커맨드들을 입력해주시면 그림 2와 같은 창이 팝업됩니다.

그림 2


저는 이미 송전탑 이미지들을 넣어놔서 다음과 같은 이미지가 나오지만, 처음에는 비행기 그림이 나옵니다.

크롤링한 이미지들을 다음 경로에 넣어주면 그림 2와 같아집니다.

Path: Yolo_mark/x64/Release/data/img

레이블링 하는 법은 마우스 드래그로 합니다.

다른 상세한 단축키들은 h키를 눌러 확인할 수 있습니다.

클래스 명을 바꿔주는 방법은 다음 경로에 있는 파일을 수정하면 됩니다.

Path: Yolo_mark/x64/Release/data/obj.names

클래스 개수를 수정해주는 파일은 다음 경로의 파일입니다. 파일 내용 중 classes를 바꿔주면 됩니다.

Path: Yolo_mark/x64/Release/data/obj.data

그림 3은 드래그 후의 결과입니다. 드래그 한 후 다음 이미지로 넘어가면 train.txt로 저장되는데 이를 yolo 학습때 사용하면 됩니다.

그림 3

YOLO프로그램이 있는 darknet 폴더로 들어갑니다.

 

현재 저희는레이블링을 하며 names, data, image 데이터 셋 3가지의 custom data를 만들었습니다. 이를 학습에 이용하기 위해 수정해봅니다.

 

기본적으로 data 파일은 cfg폴더에 있고, names파일과 image data는 data폴더에 있습니다.

 

각자 맞는 장소에 옮겨줍니다.

 

이때 train.txt파일 내부에는 이전 Yolo mark에서 레이블링 진행했던 경로로 되어있는데, 경로를 다음 커맨드로 일괄 치환해줍니다.

 

  1. vi train.txt
  2. :%s/x64\/Release\///i
  3. wq

선행학습된 weight 파일을 받아줍니다.

 

cmd: wget https://pjreddie.com/media/files/darknet53.conv.74

 



여기서 문제점이 있습니다. 기본적으로 -gpus 옵션은 다중 gpu도 가능한데, gpus를 enable하려면 makefile을 수정해야합니다.

makefile 1번째 줄의 GPU=0를 GPU=1로 바꿔줍니다.

본 블로깅에선 CUDA 10.1버전을 사용했는데 바꿔준 후 make를 하면 에러가 납니다. 제 생각엔 CUDA 10버전부터는 불가능한 것으로 보입니다. 따라서 CUDA 9버전이 설치되어 있는 서버에서 진행했습니다.

또한 weight를 저장하는 간격을 설정하기 위해 detector.c를 수정해 줍니다.

그림 4에서 빨간색으로 밑줄 친 부분이 몇 epoch에 weight를 저장할지 설정하는 것입니다. 기존 10000을 100으로 바꾸었습니다.

그림 4

이후 학습 커맨드를 입력해줍니다.

 

./darknet detector train data/obj.data cfg/yolov3.cfg darknet53.conv.74 -gpus 0,1

학습 가중치 파일은 backup폴더에 저장됩니다.

그림 6과 같이 학습이 되는 것을 볼 수 있습니다.

그림 5

반응형

'인공지능' 카테고리의 다른 글

pytorch model summary  (0) 2021.03.16
GRU VS LSTM  (0) 2021.03.15
YOLO V5 사용하기  (0) 2021.03.15
YOLO V3 원하는 객체만 바운더리 박스 칠하기  (0) 2021.01.05
인공지능 관련 용어집  (0) 2021.01.05
반응형

인공지능 관련 연구를 하며 YOLO를 많이 접하게 됩니다.

이때 사용하는 기능은 객체 인식 후 바운더리 박스의 좌표 값, 정확도 임계값 또는 특정 클래스만 인식 등이 있습니다.

어떤 소스를 고쳐야 하는지 알아봅니다.

참고: L = 줄 번호

환경은 Ubuntu 18.04 LTS, C, C++ 버전입니다.

먼저 darknet.c L400 에 있는 main 함수를 보겠습니다.

실행시킬때 넘겨받는 옵션들을 처리하게 됩니다.

일반적인 테스트 프로세스는 yolo를 실행할 때 detect 옵션을 줍니다.

따라서 main 함수에서 detector.c L562 test_detector 함수로 들어갑니다.

test_detector

L 577~585: 파일 경로가 옵션으로 주어졌으면 해당 파일이 input image, 아니라면 입력할 수 있도록 함
L 597: 객체 인식
L 600: 객체 인식 결과 변수 할당
L 604: 박스 그리기
L 605: 메모리 해제
L 606~615: 이미지 저장

이 부분에서 dets라는 변수는 YOLO 네트워크의 결과물이라고 할 수 있습니다.

이러한 dets 변수를 파라미터로 갖고 draw_detections 함수로 들어갑니다.

draw_detections는 image.c L239 에 정의되어있습니다.

이 함수에서 앞서 언급한 작업을 진행할 수 있습니다.

dets[i].prob : 정확도
names[j] : 클래스
L 294 : label 입력 제거한다면 label이 결과물에 표시되지 않습니다.
draw_box_width(): 바운더리 박스 그리는 함수 마찬가지로 제거하면 박스가 그려지지 않습니다.
left, top, right, bot: 인식된 객체의 바운더리 박스 좌표

위 변수들을 적당히 조합한다면 그림 1과 같이 원하는 객체만 박스를 그릴 수 있습니다.

 

반응형

'인공지능' 카테고리의 다른 글

pytorch model summary  (0) 2021.03.16
GRU VS LSTM  (0) 2021.03.15
YOLO V5 사용하기  (0) 2021.03.15
YOLO v3 커스텀 데이터 셋 학습  (0) 2021.01.05
인공지능 관련 용어집  (0) 2021.01.05

+ Recent posts