학습 내용 영상 데이터 구조와 특징 영상(image)이란 픽셀이 바둑판 모양의 격자에 나열되어 있는 형태(2차원 행렬)이다. 그레이스케일 영상(grayscale image)은 흑백 사진처럼 색상 정보가 없이 오직 밝기 정보만으로 구성된 영상으로 밝기 정보를 256 단계로 표현한다. [0, 255] 혹은 [0, 256)의 범위를 갖는다. C/C++에서는 1Byte의 unsigned char로 표현이 가능한다. typedef unsinged char BYTE;// Windows typedef unsinged char uint8_t;// Linux typedef unsinged char uchar;// OpenCV 트루컬러 영상(truecolor image)은 컬러 사진처럼 다양한 색상을 표현할 수 있는 영상..
Study/Computer vision
Motion Tracking이란? Motion Tracking은 연속된 프레임에서 특정 객체를 찾는 것을 의미한다. 1. Ego-Motion 환경 내에서 카메라의 3차원 이동을 의미하며, 에고 모션 추정은 카메라로 캡쳐된 이미지를 사용하여 카메라의 모션을 결정한다. 이미지 분석을 통해 위치와 방향을 확인하거나 결정할 수 있다. 깊이 지도(Depth Map)와 시차 지도(Parallax Map)을 생성하여 움직임을 추정한다. 대표적으로 Visual Odometry에 사용된다. 2. Optical Flow 광학 흐름(Optical Flow)은 카메라와 피사체의 상대 운동에 의하여 피사체의 운동에 대한 패턴을 뜻하며 밝기 변화가 거의 없고 일정 블록 내의 모든 픽셀이 모두 같은 운동을 한다 가정하여 움직임을 ..

*기초적인 딥러닝 지식(특히, Classification에 관한 지식)을 가지고 있다는 가정으로 설명합니다. 지식증류에 대해 자세히 알아보기 전, 지식증류가 무엇인지부터 살펴보겠습니다. 지식증류(Knowledge Distillation)이란, 말 그대로 지식을 증류한다는 것입니다. 증류의 사전적 의미는 액체를 가열하여 생긴 기체를 냉각하여 다시 액체로 만드는 것입니다. 예를 들어, 바닷물을 증류하여 식수로 만드는 것을 생각해 볼 수 있습니다. 그렇다면 지식을 증류한다는 것은 어떤 것을 의미할까요? 바로, 교사 네트워크(Teacher Network)로부터 학생 네트워크(Student Network)로 지식을 전달(Transfer)하는 것을 의미합니다. 크고 깊은 교사 네트워크의 의미있는 지식을 추출하고 이..
각 test dataset의 RGB mean과 std를 계산하기 위한 code이다. import cv2 import numpy as np import glob path = 'your_dataset_path' # 경로 입력 exts = ['.png'] # 확장자명 입력 data_list = [] for ext in exts: data_list+=glob.glob(path+'/*'+ext) img_norm = list() img_std = list() for data in data_list: img = cv2.imread(data, cv2.IMREAD_COLOR).astype(np.float32)/255.0 if len(img.shape)