DEEP.I - Lab

오프라인 공간의 지능화를 꿈꾸는 딥아이 연구실입니다.

반응형

Matlab 15

[Matlab] 복셀화 (Voxcelization)을 이용한 LIDAR 라이다 PCD 데이터 압축 #4

Concept 지난 포스팅에 이은 라이다 데이터 전처리 기법 #4 , PCD Voxcelization 알고리즘입니다. 3차원 희소 데이터 특성을 가지는 라이다 PCD는 채널 수에 따라 다르지만, 10,000 ~ 1,000,000 개 이상의 데이터가 초 단위로 수집됩니다. 단순한 3차원 float 형의 공간 정보이지만, 10,000 개 이상의 데이터를 실시간으로 전 처리하고 알고리즘에 활용하기에는 효율성이 매우 떨어집니다. 특히, 차량이나 드론과 같은 이동체에서 자율주행을 위해 활용될 경우, 연구소 환경과 같은 고성능 워크스테이션에서의 연산이 불가능 하기에 다양한 기법으로 데이터를 압축시키거나 효율적으로 연산하는 방법들이 제안되고 있습니다. 최신 기법은 아니지만, 비교적 쉽고 현재까지 활용되고 있는 Vox..

Matlab 2021.03.10

[Matlab] 매트랩에서 개발자 코딩 폰트 설정하기 (D2 Coding)

개발자용 코딩 폰트 D2 Coding 이번 포스트는 매트랩에 D2 Coding 개발자 폰트를 적용하는 방법입니다. 일반적인 폰트에서 i, l, 1 등은 직관적으로 구별하기가 쉽지 않지만, 개발자용 폰트를 사용하게 되면 구분이 쉬워지며 줄간격, 글자 간격등이 일치하게 되어 깔끔해집니다. D2 Coding 폰트는 네이버에서 개발된 폰트이며 다른 개발자용 폰트와 다르게 한글까지 호환되어 주석 작성에 편리함을 줍니다. 적용 방법 https://github.com/naver/d2codingfont에서 접속한 후 [Downloads ZIP]을 클릭하여 다운로드합니다. 다운로드한 파일의 압축을 해제한 다음에는 다운로드 위치에 접근하여 가장 최신 버전의 폰트의 압축을 해제합니다. D2 CodingAl l폴더에 접근한 ..

Matlab 2021.01.27

[Matlab] 매트랩 화면에 개발자용 테마 적용하기

매트랩 코딩 테마 코딩이 이루어지는 공간은 장시간동안 집중해서 보는 공간이므로, 눈의 피로도가 낮고 가독성이 높은 글자 폰트를 사용하는것이 좋습니다. 따라서, Visual Studio나 Spyder, Pycharm 등의 IDE에서는 다양한 테마를 지원하고 있는데요. 이번 포스트는 기타 IDE과 같이 매트랩에서 테마를 적용할 수 있는 간단한 포스트입니다. 기본적인 테마를 적용하면 다음과 같이 매트랩 화면을 변경할 수 있습니다. Cobalt Darkmate Matrix 적용방법 https://github.com/scottclowe/matlab-schemer에서 다운로드 받을 수 있으며 총 11개의 테마가 있습니다. 접속한 후 [Downloads ZIP]을 클릭하여 다운로드 받습니다. 다운로드 받은 파일의 압..

Matlab 2021.01.27

[Matlab] 변환 행렬 (Transformation matrix)을 이용한 LIDAR 라이다 PCD 데이터 전처리 #3

Concept 이번 포스팅의 주제는 라이다 데이터 전처리 기법 #3, 변환 행렬 (Transformation matrix)를 이용한 라이다 PCD 변환입니다. 지상에서 수집되는 라이다는 수집되는 장치 또는 위치에 고정된 형태로 시스템이 구축된 상태에서 가동됩니다. 설치과정에서 축을 고정하게 되어 별도의 전처리가 필요하지 않지만, 예외인 경우가 있습니다. 대표적으로 드론 탑재 시스템이 있습니다. 3차원 축을 기준으로 움직이는 드론에 탑재된 라이다의 기준 축은 필연적으로 잡음이 섞이게 됩니다. 예측 필터로 그려지는 SLAM 모델링에서는 어느정도 잡음이 억제되지만, 순간순간의 PCD 프레임은 축이 기울거나 흔들릴 수 있습니다. 이럴때 간단하게 변환 행렬 (Transformation matrix)을 통해 축 변..

Matlab 2021.01.25

[Matlab] 이미지로 동영상 만들기 및 동영상의 프레임을 이미지로 저장하기

Concept 일반적으로 YOLO, SSD, Faster R-CNN 등의 CNN 기반의 객체 탐지 알고리즘을 다루는 경우에는 단일 이미지로 학습을 진행하게 됩니다. 모델 최적화를 통해 학습을 완료한 후 AP(Average Precision)를 측정하는 과정을 통해 학습을 마무리하는데 테스트 과정에서 객체 탐지 모델의 성능을 시각화하는 경우 이미지를 동영상으로 변환해야 하는 상황이 생깁니다. 그리고 학습에 사용할 데이터셋을 구축하기 위해 동영상의 프레임에서 이미지를 추출하기도 합니다. 이번 포스트는 위와 같은 상황에서 이미지를 비디오로, 비디오를 이미지로 변환해주는 매트랩 소스 코드입니다. 자율주행 벤치마킹 데이터셋 KITTI를 활용하여 간단하게 소스 코드를 작성해보겠습니다. 1. 이미지를 비디오로 변환 ..

Matlab 2021.01.11

[Matlab] 극좌표계를 이용한 LIDAR 라이다 PCD 데이터 Segmentation #2

Concept 지난 포스팅에 이은 라이다 데이터 전처리 기법 #2, PCD Segmentation 알고리즘입니다. 일반적인 라이다는 360도 전 구간에서 데이터를 수집합니다. 모든 데이터가 필요하기도 하지만, 측면이나 후면에 부착된 도로 주행 분석 시스템에서는 불필요 데이터를 제거해야 합니다. 이를 위해 방사되는 각도에 따른 분할 알고리즘을 구현해보도록 하겠습니다. POST 1.라이다 데이터 전처리 [KITTI DATASET 활용하기] 2. 각도에 따라 라이다 데이터 분할하기 [Segmentation] 3. 변환 행렬을 이용하여 라이다 데이터 축 변환하기 [Transformation] 4. 복셀화를 이용한 LIDAR 라이다 PCD 데이터 압축 [Voxcelization] Algorithm (Polar C..

Matlab 2021.01.04

[Matlab] LIDAR 라이다 PCD (Point Cloud Data) 데이터 전처리 #1 KITTI DATASET 활용

Concept 한동안 라이다 (LiDAR) 센서 관련 프로젝트를 하면서 PCD(Point Cloud Data) 데이터 분석 업무를 진행했었습니다. 관련 자료가 많이 없다보니 많이 힘들었었던 기억이납니다. PCD는 희소 데이터 특성을 갖는 3차원 공간 데이터이며 현재 다양한 산업 분야에서 활용되고 있습니다. 비록 테슬라는 다른 길을 걷고 있지만, 최근 제안되는 자율 주행 기술 관련 논문에서는 PCD 데이터를 위치 데이터로 활용하고 있으며 더 나아가 영상과 융합하여 탐지 성능을 향상시키고도 있습니다. 기업이나 연구소 수준에서는 자체 데이터를 이용하지만 저널이나 컨퍼런스에서는 오픈된 데이터로 검증하게 됩니다. 공개 데이터 중, 가장 유명한 데이터는 아마 KITTI-DATASET이 아닐까 싶습니다. 다양한 센서..

Matlab 2020.12.10

[Matlab] 다층 퍼셉트론(MLP)을 이용한 MNIST 손글씨 인식 알고리즘 구현

MNIST DATASET MNIST 데이터셋은 머신러닝을 입문하는 분들이 처음 접하게 되는 데이터 중 하나입니다. 28 x 28 해상도를 가지는 흑백 이미지로 구성되어있지만, 영상 처리 알고리즘 이외 K-Measn, PCA, RNN 등 다양항 기법이 적용 가능하여 초기 데이터 분석 단계에서 연습에 활용되고 있습니다. 저 역시 처음 머신러닝에 입문했을 때 XOR 게이트 문제 이후, 머리를 쓰며 가장 많이 다뤄본 데이터입니다. 이제 막 입문하시는 분들이라면 Tesnorflow 나 Pytorch가 제공하는 함수 사용 이전에 직접 수식을 코딩하고 데이터 전처리하는 연습은 꼭 가지시길 바랍니다. 그런 의미에서 이번 포스팅에서는 모두를 위한 인공지능 교육에 활용했었던 MATLAB 기반 MINIST 손글씨 인식 알고..

Matlab 2020.12.05

[Matlab] 매트랩에서 GIF 이미지(애니메이션) 파일 만들기

이번 포스팅은 매트랩에서 동적 이미지 GIF 파일을 생성하는 방법을 소개하겠습니다. 매트랩에서 Figure 창을 스캔해서 저장하는 방식이며 함수 형태로 저장해두면, 그때그때 세미나나 평가 결과 등의 첨부자료로 쉽게 사용하실 수 있습니다. 0. 선행 예제 plot, drawnow, cla 등과 같이 figure를 화면에 띄우는 매트랩 기본함수가 익숙하시지 않다면 이전 포스팅을 참고하셔도 좋을 것 같습니다. deep-eye.tistory.com/8?category=401244 [Matlab] 매트랩을 이용한 실시간 그래프 그리기 매트랩은 다양한 분야에서 분석하거 설계하는데 활용되고 있습니다. 직관적으로 데이터를 확인할 수 있어 데이터분석 입문으로 시작해도 좋다 생각합니다. 특히, 논문에 사용될 그래프를 도시..

Matlab 2020.11.29

[MATLAB] 클러스터링 (군집화) 기법 구현을 위한 기본 2D 데이터셋 모음

클러스터링은 사용되는 분야와 데이터 특징에 따라 정말 다양하게 응용되고 있습니다. 하지만, 기본적인 '군집'의 메커니즘은 모두 동일하기 때문에 논문에서 아이디어를 제안하면서 사용되는 데이터는 그림 1과 같이 2차원 데이터입니다. 이번 포스팅에서는 Application 단계 이전에 클러스터링 연습이나 구현 또는 제안하려는 기법의 평가를 위해 사용되는 2차원 데이터 몇 가지를 소개하겠습니다. 1. 데이터 다운로드 git clone https://github.com/DEEPI-LAB/clustering-dataset.git 데이터가 많다보니 정리가 어려워 깃허브에 올렸습니다. 링크를 통해서도 받으실 수 있습니다. github.com/DEEPI-LAB/clustering-dataset DEEPI-LAB/clus..

Matlab 2020.11.26
반응형