DepthViewer

Repo

  • 2022.10 - 2024.02
  • 사용 언어: C# + Python
  • 사용 기술: Unity, ONNX, Pytorch 등

한때 집중해서 개발했던 개인 프로젝트입니다. 이미지나 동영상을 ML 모델로 분석하여 깊이 지도 Depth Map을 infer한 뒤 이를 3D 환경에 표현하는 프로그램입니다. 특히 VR을 목표로 하여 2D 이미지를 3D처럼 보이게 하는 것을 목표로 하였습니다.

/imgs/demo_basic.png

원래 파이썬 스크립트 하나로 시작하여 계속 확장해 나간 만큼 계획되지 않은 여러 기능을 넣으며 코드베이스가 정돈되지 않았긴 했지만, 프로젝트 개발을 시험해 본 좋은 경험이었습니다.

기능들

  • Midas v2.1 small 모델 내장
  • Detph map 캐시 기능: ZIP 파일에 PGM/PFM 파일로 프레임 당 저장 (파이썬으로 자동화 가능)
  • VR 지원
  • 모바일 기기 지원
  • SBS (Side-by-Side) 동영상 제작
  • 데스크탑 화면 렌더링
  • ML 모델 infering을 파이썬 스크립트에서 실행하도록 하고 ZeroMQ 메세지큐 통신을 이용해 C#-Unity 환경의 제약 극복
  • MIT 라이선스

테크데모에 가까운 프로그램이지만 나름 괜찮은 결과였고 (이것으로 상명대 2022 Github 경진대회에서 최우수상을 받기도 하였습니다.) Steam 플랫폼에 시험삼아 출시했을때 13개의 Positive 리뷰를 받았습니다.

/imgs/dv_steam.jpg /imgs/dv_github.jpg

논문 Flying in XR: Bridging Desktop Applications in eXtended Reality through Deep Learning에서 인용되기도 했습니다. (Depth map projection 관련)

/imgs/huh.png

GlossySnake

Repo

  • 2024.03 -
  • 사용 기술: ChatGPT API, Django
  • 사용 언어: Python

현재 진행중인 프로젝트입니다. 자연어 텍스트에 대해 단어 당 번역 서비스를 제공하는 웹 앱을 구현중에 있습니다. 18세기 이후부터 단어 단위로 주석을 다는 Hamiltonian System이 언어학습 용도로 사용되기 시작했는데, 말뭉치의 범위가 제한되어 있어 최근 발달한 자연어 처리 기술을 이용하여 시스템화할 수 있다고 생각했습니다.

/imgs/example_aesop.png

라틴어 “이솝의 우화” 를 영어화자를 위해 Hamilton System을 이용해 주석을 단 책. (1832)
Æsop’s Fables, as Romanized By Phædrus: with a Literal Interlinear Translation

/imgs/glossysnake_example.png

현재까지 구현된 모습. 불어를 단어 당 번역한 모습입니다.

SpacelanderGL

Repo

  • 2024.03 - .05
  • 사용 기술: OpenGL + GLFW
  • 사용 언어: C++

/imgs/spacelandergl_demo.jpg

컴퓨터 그래픽 수업에 과제로 진행한 프로젝트입니다. 행성의 중력 등 물리 계산을 시뮬레이션하였습니다.

Oldhangul

Repo + Page

  • 2024.02
  • 사용 언어/기술: Vue + JS

/imgs/oldhangul_page.jpg

Vue 프레임워크에 익숙해지기 위해 간단히 제작한 옛한글 조합 웹앱입니다. 간단하지만 이때까지 없던 옛한글 입력기라 생각합니다.

3domok

Repo + Page

  • 2019.10
  • 사용 기술: Raylib 3D 엔진
  • 사용 언어: C

/imgs/3domok_screenshot.png

1학년 공학설계입문 수업때 진행한 개인 프로젝트입니다. 특이사항으로는 오픈소스 3D 엔진인 Raylib으로 구현되었다는 점이 있습니다.

SBS2RC

Repo

  • 2022.08 - .09
  • 사용 기술: OpenCV
  • 사용 언어: Python

/imgs/sbs2rc.jpg

2개의 화면으로 구성된 3D 영상을 쉽게 구할 수 있는 적청안경으로 시청할 수 있도록 anaglyph화시키는 스크립트입니다. 오픈소스 코드를 이용하여 VR헤드셋을 위한 360도 영상을 평면으로 projection하는 기능도 추가하였습니다.

간단한 스크립트지만 OpenCV 라이브러리를 익히는데 도움을 주었고, 의외의 수요가 있는지 Github에서 Star를 약간 받았습니다.

dailyArt

Repo

  • 2021.09
  • 사용 기술: The Metropolitan Museum of Art Collection API
  • 사용 언어: Python

/imgs/dailyart_example.jpg

한때 프린터를 자주 쓰지 않아 잉크가 말라버리는 이슈가 있어 해결방안을 모색하던 중 제작한 프로젝트입니다. 한 미국 미술관 API를 이용해 그림을 fetch한 후 파이썬으로 포맷하는 간단한 스크립트인데, 의외로 Github에 Star 개수가 조금 있었습니다. 아마도 한 중국 사이트에 API 사용 예시로 올라간 것이 이유인 것 같습니다.

기타

  • LyricsEmbedder: 음악의 메타데이터를 읽은 후 BeautifulSoup 라이브러리를 이용해 웹 스크래핑으로 가사를 fetch해 파일에 넣는 스크립트
  • engstress: Public domain에 있는 영어사전을 파이썬으로 분해하여 영어 말뭉치에 강세를 표시하는 프로그램. Page
  • prime_numbers_unix_ipc: UNIX 통신 프로그램
  • Todoli: 간단한 Django 프로젝트