전체 글

Computer Vision/OpenCV

[openCV] 캐스케이드 분류기

📌 Intro 이번에는 OpenCV의 얼굴 검출 기능에 대해 정리할 것이다. 이 기능은 비올라와 존스라는 사람이 발표한 부스팅기반의 캐스케이드 분류기 알고리즘을 기반으로 만들어졌다. 이 알고리즘은 특히 얼굴 검출에 적용될 때 속도와 정확도가 좋다고 알려져있다. 📌 유사 하르 필터(Haar-like Filter) 먼저 알아야 할 정보로 유사 하르 필터가 있다. 유사 하르 필터란 흑백 사각형이 서로 붙어 있는 형태로 구성된 필터다. 유사 하르 필터 형태에서 흰색 영역 픽셀 값은 모두 더하고, 검은색 영역 픽셀 값은 모두 빼서 하나의 특징 값을 얻을 수 있다. 사람의 정면 얼굴 형태가 전형적으로 밝은 영역(이마, 미간, 볼 등)과 어두운 영역(눈썹, 입술 등)이 정해져 있기 때문에 유사 하르 필터로 구한 특징..

Computer Vision/GoProCam

[goprocam] 파이썬으로 GoPro 사용하기

📌 Intro 프로젝트를 진행하기 위해 GoPro를 사용하게 되었고, python을 이용하여 GoPro를 다루는 기본적인 방법에 대해 정리하려고 한다. open gopro, goprocam 등 다양한 라이브러리가 있었는데 일단 기본적이더라도 사용법이 나와있는 goprocam라이브러리를 선택했다. 📌 가상 환경 생성 다음과 같은 명령어를 사용하여 고프로를 사용할 가상환경을 먼저 만들어주고 실행시키자. conda create -n gopro python=3.6 activate gopro 다음 명령어를 이용하여 goprocam패키지를 다운 받는다. pip install goprocam 📌 고프로 wifi 연결 내가 가지고 있는 고프로는 GoPro HERO7 BLACK모델이다. 이 모델 기준으로 [기본 설정] ..

AI⦁딥러닝

[AI⦁딥러닝] YOLO 모델이란

📌 Intro Object Detection(객체 인식) 분야에서 널리 사용되고 있는 YOLO에 대해 알아보도록 하겠다. 📌 Object Detection? Object Detection, 객체 검출이란 이미지나 움직이는 영상에서 미리 정의한 객체를 찾아내는 것을 말한다. 단순히 고양이 이미지을 보고 고양이라고 분류하는 것과는 완전히 다른 영역의 문제인 것이다. 각각에 대해 정리하면 다음과 같다. Classification : 여러 물체에 대해 어떤 물체인지 클래스를 분류하는 문제 Localization : 물체가 어디 있는지 박스를 통해 위치 정보를 나타내는 문제 Object Detection : Classification과 Localization을 동시에 진행하는 것 위 그림에서 Classificat..

AI⦁딥러닝

[AI⦁딥러닝] 감정인식분류기 만들기

📌 Intro MNIST 데이터 셋에 이어 FER2013데이터 셋을 이용하여 표정을 통해 감정인식 분류기를 만들어보자. 📌 Dataset FER2013 Overview Label은 7개로 0=Angry, 1=Disgust, 2=Fear, 3=Happy, 4=Sad, 5=Surprise, 6=Neutral로 매핑되어 있다. Image는 FER2013 이미지이고 48 x 48 x 1의 Shape을 가지고 있다. MNIST를 사용할 때는 keras에 내장되어 있는 데이터 셋을 로드해서 사용했었지만, FER2013 데이터 셋은 keras에 내장되어 있지 않기 때문에 .csv파일을 다운받아 사용해야 한다. Details https://www.kaggle.com/competitions/challenges-in-re..

AI⦁딥러닝

[AI⦁딥러닝] MNIST Data를 사용해보기2

📌 Intro MNIST 데이터 셋을 이용하여 ANN(DNN) 모델을 구성, 학습, 정확도 측정까지 진행해보았다. 이번에는 모델의 layer를 더 깊게 만들어보고 정확도를 비교해보도록 하자. 또 CNN모델을 만들어 학습, 정확도를 측정하여 ANN모델과의 정확도를 비교해보도록 하자. MNIST를 사용하는 방법과 CNN에 대한 내용은 이전에 정리해두었기 때문에 바로 코드를 보며 간단한 주석과 함께 내용을 정리할 것이다. 📌 DNN 코드 import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # 1. MNIST 데이터 셋 import mnist = tf.keras.datasets.mnist (x_train, y_train), (x_..

AI⦁딥러닝

[AI⦁딥러닝] CNN에 대해 알아보자

📌 Intro 이전에는 MNIST 데이터 셋을 이용하여 기본적은 ANN(DNN)모델을 구성해보고 학습 및 추론까지 진행해봤다. 다음에는 CNN으로 모델을 구성하고 진행을 하려고 했는데 그 전에 CNN에 대한 내용을 정리하고 시작하면 좋을 것 같아서 글을 작성하게 되었다. 📌 CNN? CNN은 Convolutional Neural Network의 줄임말이며 보통 CNN으로 쓰인다. 이는 인간의 시신경을 모방하여 만든 딥러닝 구조 중 하나이며, 특히 이미지 분류에서 좋은 성능을 보이는 것으로 알려져 있다. CNN은 위의 그림처럼 크게 두 부분으로 나눌 수 있는데 하나는 이미지의 특징을 추출하는 것이고(Feature Learning) 또 다른 하나는 추출한 특징을 이용하여 클래스를 분류(Classificati..

AI⦁딥러닝

[AI⦁딥러닝] MNIST Data를 사용해보기

📌Intro AI나 머신러닝 혹은 딥러닝에 대해 공부를 하고있는 사람이라면 거의 대부분이 시작을 MNIST로 했을 것이라 생각하고 나 역시 그렇다. 이쪽 분야의 지식이 풍부한 것은 아니지만 공부한 내용을 정리하며 이해를 높이려한다. 모델을 만들고, MNIST 데이터를 이용하여 손글씨 분류기 모델의 학습과 추론과정에 대해 알아보도록 하자. 📌MNIST Data? 먼저 MNIST 데이터에 대해 설명이 필요할 것 같다. MNIST 데이터는 여러명의 사람들이 손으로 쓴 숫자들로 이루어진 데이터베이스다. 이미지의 크기는 28X28X1이며 아래와 같이 60,000개의 트레이닝 이미지와 10,000개의 테스트 이미지로 구성되어 있다. 각 데이터 셋은 이미지와 라벨이 매핑되어 있는 형태인데, 여기서 이미지는 손글씨 사..

활동

한국스마트미디어학회 2022년 종합학술대회

[6월 9일] 운 좋게 들어왔던 연구실에서 너무나도 운이 좋게 지도교수님의 도움으로 6월 1일 한국스마트미디어학회에 제1저자로 논문 제출을 할 수 있었다.. 말은 논문이라고 하지만 사실 대단한게 아닌 2장짜리 페이퍼다. 시험기간에 과제까지 겹쳐서 2장을 쓰는데도 오랜 시간이 걸렸던 것 같다. (시험이 아니었어도 오래걸렸으려나..) 다행히 6월 9일 아래처럼 Acceptance Letter를 받았다. 😊 그리고 6월 13일 최종 논문 등록을 마쳤다. 논문 제출을 완료하고 살펴보니 오타와 사사표기에 실수가 있어 수정이 필요했다. 고친 뒤에 다시 올리려고 보니 수정할 수가 없다....?????????!!!! 그래서 바로 학회로 전화를 했더니 학회 메일로 수정본 보내달라고 하셔서 다행히도 오탈자를 수정하여 재등..

Krrong
노는게 제일 좋아