목록기타 (7)
Shine's dev log
0. 프로젝트 소개 빅데이터응용 보안 수업시간에 팀 프로젝트로 진행했던 프로젝트를 소개해본다. 프로젝트 주제는 Deepfake Detection 성능을 분석하는 것으로, 총 4명의 팀원들과 협력하여 진행하였다. 우선 deepfake detection과 관련된 논문을 분석한 뒤, 사용할만한 데이터셋을 탐색하고 전처리, 학습, 최적화 등의 과정을 거쳐 프로젝트를 진행하였다. 1. Introduction 최근 딥러닝 기술의 발전으로 Deepfake 와 같이 동영상에 특정 인물의 얼굴을 합성하는 사례가 증가하고 있다. Deepfake 기술은 다양한 분야에 적용될 수 있어 앞으로 그 수요가 증가할 것으로 예상된다. 하지만 deepfake 기술을 이용해 사기, 허위 음란물, 가짜 뉴스 등의 새로운 범죄에 악용될 위..
1. 프로그램 설명 특정 폴더의 파일 이름을 정리해주는 프로그램이다. (그냥 내가 필요해서 만들었는데 혹시나 필요한 사람이 있을까봐 공유해본다) 예를 들어 사진들이 저장된 폴더가 있다고 해보자. 하지만 사진들의 파일명은 "202201302230.jpg" 등과 같이 중구난방으로 저장되어 있는 경우가 많다. 이럴 경우 여러 사진 파일명들을 일관되게 정리하고 싶을 때가 있다. 예를 들어 해당 폴더 속의 모든 사진들을 "JEJU1.jpg" "JEJU2.jpg" "JEJU3.jpg" 등으로 정리하면 보기가 훨씬 좋을 것이다. 본 프로그램은 이처럼 특정 폴더 내의 파일 이름들을 정리 할 수 있도록 해주는 프로그램이다. 특히 사진의 개수가 많을 경우 유용할 것으로 기대된다. 2. 사용법 (프로그램 링크) https:..
1. 개요 사용자로부터 특정 개수 (5개 정도)의 선호하는 영화를 선택받으면, 해당 사용자가 좋아할만한 영화를 추천해주는 영화 추천 시스템을 만들었다. 영화를 추천해주는 방법은 아래와 같이 2가지가 있다. 1) 사용자가 선호하는 영화와 유사한 영화를 추천 2) 다른 사용자들의 평가를 바탕으로 선호할만한 영화를 추천 코드는 아래에서 확인할 수 있다. https://github.com/godeastone/movies-recommendation 2. Abstract 본 프로젝트에서는 사용자가 선호하는 영화 5개를 바탕으로 간단하게 사용자에게 볼만한 영화를 추천해주는 시스템을 제안한다. 본 시스템은 크게 2가지 방식으로 영화를 추천한다. 첫번째 방식은 사용자가 선택한 영화와 자주 같이 시청된 영화들 중, 비슷한..
1. zoom recordings 요즘 교수님들이 대부분 줌으로 강의를 진행하시는데, 강의를 녹화해서 언제든지 볼 수 있도록 올려주시는 천사 교수님들이 계신다. 하지만, 경험상 줌 녹화 링크는 일정 시간이 지나가면 삭제되는 문제가 발생한다. 또한, 인터넷이 없는 환경에서도 안정적으로 강의를 다시 보고싶을 경우에는 해당 녹화파일을 동영상파일로(mp4) 다운로드 받고 싶을때가 있을 것이다. 일반적으로 mp4 영상을 서버로부터 그대로 받아오는 웹페이지의 경우에는, 개발자 도구에 들어가서 mp4 영상 소스 링크를 통해 웹에서 바로 다운받을 수 있지만, zoom recordings 같은 경우에는 위와 같은 방법이 불가능하다. 하지만 다음과 같은 방법을 따라하면 쉽게(?) 줌 녹화 영상을 다운로드 받을 수 있을 것..
1. 개요 졸업 프로젝트로 온라인 시험 부정행위 방지에 관한 개발을 했었는데, 내가 맡은 부분은 아래와 같다. 1) 응시자의 눈동자위치와 고개 회전 정도를 분석하여 (아이트래킹) 부정행위를 막는 기능 2) 응시자의 신분증 상의 얼굴과 실제 웹캠 상의 얼굴을 비교하여 대리시험을 막는 기능 하나의 exe 파일로 만들때 용이하게 하기 위해 하나의 파이썬 스크립트로 개발하였다. 코드는 아래에서 확인할 수 있다. https://github.com/godeastone/Eyetracking 2. 구현 1) 아이트래킹 구현 아이트래킹 정보는 크게 네가지 기능을 수행한다. 첫번째 기능은 응시자의 눈동자의 회전 정도를 파악하는 기능이다. 해당 기능을 구현하기 위해 dlib 라이브러리와 OpenCV 라이브러리를 활용하여 응..
0. 개요 https://github.com/godeastone/Chatting-Program 자바를 활용하여 1:1로 통신할 수 있는 채팅 프로그램을 개발하였다. 일반적인 채팅 프로그램이 아니라 암호화를 적용한 채팅 프로그램이다. 서버와 클라이언트는 대칭키 암호화(AES)를 통해 서로의 메시지를 암호화/복호화 하여 통신한다. 이 때 사용되는 대칭키(비밀키)는 클라이언트가 생성하여 비대칭키 암호화(RSA)를 통해 서버와 공유한다. 전체적은 구조는 아래 그림과 같다. 1. 채팅 프로그램 구현 채팅 프로그램이라는 것이 두 명 이상의 사용자가 서로 문자열을 주고받는 행위라고 할 수 있다. 본 프로그램에서는 두명의 사용자가 채팅을 하는 상황을 가정하는데, 한 명은 Server이고 다른 한명은 Client이다. ..