본문 바로가기

전체 글239

opencv-findContours # Counting Objects(contours 윤곽선, hierarchy 계층구조) # cv2.findContours(이진화 이미지(mask), 검색 방법, 근사화 방법) contours, hierarchy = cv.findContours(dst.copy(), cv.RETR_EXTERNAL, \ cv.CHAIN_APPROX_SIMPLE) # [contours[i]] = 윤곽선 표시 # cv.CHAIN_APPROX_SIMPLE 윤곽점들 단순화 수평, 수직 및 대각선 요소를 압축하고 끝점만 남김 print(contours) # 각 점으로 표시됨 print(hierarchy[0][1]) # cv2.drawContours(이미지, [윤곽선], 윤곽선 인덱스, (B, G, R), 두께, 선형 타입) # 윤곽선.. 2021. 12. 11.
opencv-basic https://076923.github.io/posts/Python-opencv-1/ Python OpenCV 강좌 : 제 1강 - OpenCV 설치 OpenCV 076923.github.io OpenCV Open Source Computer Vision Library 이미지 불러오기 (cv.imread) import cv2 as cv # 이미지 불러오기 img = cv.imread('cat.bmp') (h,w,d) = img.shape print(img.shape) cv2.namedWindow("image", cv2.WINDOW_AUTOSIZE) # WINDOW_NORMAL = 영상 크기가 클때(마우스로 크기를 줄이거나 키울 수 있음) # WINDOW_AUTOSIZE = default cv.imshow.. 2021. 12. 11.
Python에서 시간 측정하기(Decorator, Command line) * Decorator 활용 import time from functools import wraps def check_time(function): @wraps(function) def measure(*args, **kwargs): start_time = time.time() result = function(*args, **kwargs) end_time = time.time() print(f"@check_time: {function.__name__} took {end_time - start_time}") return result return measure @check_time def test_function(): for _ in range(10000): print("Just print something") .. 2021. 9. 26.
Generative Adversarial Networks, GAN GAN의 대립적인 의미를 이해한다. DCGAN의 Latent 개념과 그 연산에 대해서 이해한다. CycleGAN의 개념을 이해한다. GAN의 개념을 설명할 수 있다. GAN에서 생성자와 판별자의 공통된 모듈이 어디에 있는 지 파악할 수 있다. 학습된 CheckPoint 저장하고, 불러올 수 있다. 생성한 이미지를 gif형태로 제작할 수 있다. Convolution Neural Network(CNN)을 기반으로한 생성모델인 Deep Convolutional GAN (DCGAN), CycleGAN GAN 생성적 대립 신경망 이미지를 생성하는 원리를 “경찰과 위조지폐범”으로 비유하여 설명합니다. 위조지폐범은 위조지폐를 진짜 지폐와 거의 비슷하게 만듭니다. 위조지폐를 진짜 지폐로 속이고 사용할 수 있도록 말이죠.. 2021. 8. 29.
AutoEncoder, AE AutoEncoder (AE)의 구성에 대해서 설명할 수 있어야 합니다. AE의 학습과정을 이해할 수 있다. Latent variable의 추상적 개념을 정의할 수 있고, 이를 활용하여 기본적인 information retrieval problem를 해결해본다. AE의 활용방안에 대해서 생각해볼 수 있다. AutoEncoder alibi-detect 라이브러리 사용하면 수월함 https://www.youtube.com/watch?v=RJ4oB6MWTsA&list=PL-xmlFOn6TULrmwkXjRCDAas0ixd_NtyK&index=23 = 디코더로 나온 이미지가 blurry하게 나온다는 단점을 가지고 있다. ==> GAN이 보완 오토인코더(Autoencoders)는 입력데이터 자체를 레이블로 활용하는.. 2021. 8. 28.
Image Segmentation(FCN, U-Net) Image Segmentation 개념을 이해하고 대표 모델을 활용할 수 있다. Image Augmentation의 개념을 이해하고, 기본적인 증강방식을 활용할 수 있다. Object Recognition 개념을 이해하고, 활용할 수 있다. 정리 : https://github.com/codestates/AIB04_Discussion/discussions/26 Segmentation Vision 연구가 발전된 방향을 보면, 처음에는 분류만 해보다가, 1. 입력 이미지에서 개체(Object)가 있는 위치를 찾을 수 있을까? 2. 해당 개체들을 의미적(semantic)으로 분류해볼 순 없을까? 3. 이미지 안에 한 개의 클래스만 있는 게 아니라 여러 종류의 클래스가 있다면, 각각의 픽셀들이 어느 클래스에 속하.. 2021. 8. 28.
Convolutional Neural Networks, CNN / window? Part 1: Convolution & pooling 개념을 설명할 수 있다. Part 2: CNN을 이용하여 분류(Classification)문제에 적용할 수 있다. Part 3: 전이학습(transfer learning)을 이용하여 image classification을 할 수 있다. 정리 : https://github.com/codestates/AIB04_Discussion/discussions/24 최근의 컴퓨터비전(Computer vision, CV)는 대부분을 convolution에 의존하고 있다고해도 과언이 아니다. Weights를 공유하며, 특징을 추출하는데 이만한 방법론을 찾기 어렵기 때문이다. 사물인식 - Object Detection (YOLO) + RCNN(Fast, Faster, .. 2021. 8. 28.
Transformer / BERT, GPT Transformer의 장점과 주요 프로세스인 Self-Attention에 대해 이해하고 설명할 수 있다. 트랜스포머를 발표한 논문 제목은 왜 "Attention is All You Need"인지 설명할 수 있다. Positional Encoding을 적용하는 이유에 대해서 설명할 수 있다. Masked Self-Attention가 트랜스포머 구조 중 어디에 적용되며 어떤 역할을 하는지 설명할 수 있다. 기존 RNN과 비교하여 Transformer가 가지는 장점에 대해서 설명할 수 있다. GPT, BERT 그리고 다른 모델에 대해서 개략적으로 설명할 수 있다. GPT(Generative Pre-Training) 사전 학습된 언어 모델(Pre-trained LM)의 Pre-training과 Fine-tun.. 2021. 8. 22.
Recurrent Neural Network, RNN 언어 모델 (Language Model) 통계 기반 언어모델을 이해하고 설명할 수 있습니다. 통계 기반 언어모델의 한계를 이해하고 이를 극복하기 위해 등장한 신경망 언어 모델의 장점을 설명할 수 있습니다. 순환 신경망 (Recurrent Neural Network, RNN) RNN의 구조와 작동 방식을 이해하고 설명할 수 있습니다. RNN의 장점과 단점을 설명하고 이해할 수 있습니다. LSTM & GRU LSTM과 GRU가 고안된 배경과 구조를 연관지어 설명할 수 있습니다. 두 방법의 차이에 대해서 설명할 수 있습니다. Attention Attention이 탄생하게 된 배경에 대해서 설명할 수 있습니다. Attention의 장점에 대해서 설명하고 Attention 으로도 해결할 수 없는 RNN의 구조적 .. 2021. 8. 22.