분류 전체보기
-
DeepFake FakeApp 영상합성 4 완성DeepFake 영상합성 2018. 2. 9. 20:34
학습된 모델으로 영상을 만드는 마지막 과정입니다.Model에는 위에서 학습한 Model의 경로, Data 에는 Data_A의 경로를 입력해 준 후 Start 합니다. Data_A 폴더 내부에 merged 폴더가 생겼고 그 안에 합성된 이미지가 생기는 것들을 보실 수 있으실 겁니다.Merged 폴더에는 얼굴이 있는 영상만 있기 때문에 merged 폴더에 있는 사진들을 모두 Data_A 경로로 덮어쓰기 해 줍니다.Data_A 폴더에 ffmpeg파일을 붙여넣기 한 후 Power Shell을 실행합니다. ffmpeg -f image2 -r 29.97 -i out%d.png -vcodec libx264 out.mp4Power Shell에 다음 명령어를 붙여 넣습니다.위의 굵은 글씨는 원본 영상 A의 프레임입니다...
-
DeepFake FakeApp 영상합성 3 학습DeepFake 영상합성 2018. 2. 9. 20:24
얼굴 추출이 모두 끝났다면 추출된 얼굴들로 기계학습을 시작합니다.데이터의 정확성을 위해서 aligned 폴더 내에 얼굴이 아닌 사진이나, 얼굴이 가려진 사진이 있을 경우 지워줍니다.그 후 FakeApp 폴더 내의 Model 폴더, Data_A폴더 내 align 폴더 Data_B폴더 내 align폴더를 지정한 후 Start 버튼을 눌러줍니다.1050 이하의 그래픽카드 (VRAM 2GB 이하)를 사용하시는 분은 GPU학습이 불가합니다. 만약 학습중 프로그램이 갑자기 종료된다면 메모리 부족일 가능성이 크니Batch Size를 64 → 32Sava Period를 100 → 32Nodes를 512 → 256로 변경해 줍니다. 학습을 하다 보면 콘솔의 값이 0으로 수렴하는 것을 보실 수 있습니다.0에 가까워질수록 ..
-
DeepFake FakeApp 영상합성 2 영상 자르기와 얼굴 추출DeepFake 영상합성 2018. 2. 9. 20:13
Ffmpeg의 압축을 풀게 되면 다음과 같은 파일이 나옵니다.프로젝트 중 자주 사용하게 되므로 Ffmpeg.exe를 fakeapp 폴더로 옮겨둡니다. 동영상 A에 B의 얼굴을 붙여넣는 방식입니다.합성할 동영상 두 편을 준비해 Data_A, Data_B 폴더로 옮겨줍니다.그 후 shift + 우클릭 으로 Power Shell을 실행합니다. 동영상파일에서 우클릭 → 속성 → 자세히 를 통해 프레임을 알아낸 후 ffmpeg -i DataA.mp4 -vf fps=23.98 "out%d.png"다음 명령어를 입력하여 동영상을 프레임별로 자릅니다.굵은 텍스트는 사용자 환경에 따라 달라지는 값입니다. Data_B 폴더의 영상도 마찬가지로 잘라줍니다. 이 때 동일 인물 영상 여러 개를 자른 후 추가 하셔도 됩니다. 자..
-
DeepFake FakeApp 영상합성 1 기본 환경 세팅DeepFake 영상합성 2018. 2. 9. 20:10
영상합성에 앞서 필요한 준비물 FakeApp 프로그램 - 필수 CUDA Toolkit 8.0 - 필수 VRAM 3GB 이상의 엔비디아 그래픽카드 ( 1050ti 이상) - 선택 Ffmpeg - 필수 https://developer.nvidia.com/cuda-80-ga2-download-archive 먼저 NVIDIA 홈페이지에서 자신의 시스템과 맞는 CUDA Toolkit 8.0을 다운받습니다. 보통 설치 시 환경변수가 설정되지만 그렇지 않은 경우를 위해 환경변수를 추가해줍니다. (벌써 추가되어 있다면 건너뛰어도 무방합니다.) C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin C:\Program Files\NVIDIA GPU Computing T..
-
보호운영체제/파일 시스템 2018. 2. 5. 08:24
접근의 유형 보호 기법은 가능한 파일 접근 유형을 제한함으로써 통제된 접근을 제공한다. 파일 접근 유형 읽기 : 파일로부터 읽기 쓰기 : 파일에 쓰기 실행 : 파일을 메모리에 읽어오고 실행하기 추가 : 파일의 끝에 새로운 정보를 첨부하기 삭제 : 파일을 지우고 사용 공간을 반환하기 리스트 : 파일의 속성, 이름 등을 출력하기 접근 제어 가장 일반적인 방법은 사용자의 신원에 따라 특정 파일에 대한 접근 허용 여부를 결정하는 것이다. 신원에 기반한 접근을 구현하는 가장 일반적인 방법은 각 파일과 디렉터리에 접근 제어 리스트를 연관하는 방법이다. 접근 리스트의 길이를 간결하게 하기 위해서 많은 시스템들은 모든 사용자를 세 가지 부류로 분리한다. 소유자 : 파일을 생성한 사용자 그룹 : 파일을 공유하여 파일에 ..
-
파일 공유운영체제/파일 시스템 2018. 2. 5. 08:21
파일 공유는 다수 사용자 시스템에서 필요하다. 파일 보호 기법을 통해 파일이 공유되며, 분산 시스템에서는 네트워크를 경유하여 파일을 공유한다. 다수의 사용자 디렉터리 구조가 사용자의 파일 공유를 허용한다면 시스템은 파일 공유를 중재해야 한다. 파일 공유와 보안을 구현하기 위해서 파일, 디렉터리의 소유자, 그룹 이라는 개념을 사용한다. 그룹 ID 로 그룹을 구분하고 그룹 접근 권한을 허용한다. 원격 파일 시스템 네트워크를 통한 파일 공유 시 사용자는 FTP와 같은 프로그램을 통해서 기계간의 파일을 직접 전송할 수 있다. 다른 방법으로는 로컬 기계에서 원격 디렉터리를 접근할 수 있는 분산 파일 시스템 방식이 있다. 세 번째 방법으로는 WWW를 통한 접근이 있다.
-
디렉터리와 디스크 구조운영체제/파일 시스템 2018. 2. 5. 08:20
저장 장치는 전체를 하나의 파일 시스템으로 사용할 수 있는데 보다 더 정교한 제어를 위해서 세분될 수도 있다. 디스크를 예로 들면 디스크는 쿼터 단위로 분할되고 각 쿼터가 하나의 파일 시스템을 포함할 수 있다. 파일 시스템을 포함하고 있는 임의의 개체는 볼륨이라고 불린다. 각 볼륨은 시스템에 존재하는 파일에 대한 정보를 가지고 있어야 한다. 이 정보는 디바이스 디렉터리 또는 컨텐츠 볼륨 테이블의 항목에 저장된다. 디바이스 디렉터리는 그 볼륨에 있는 모든 파일에 대한 이름, 위치, 크기, 유형 등의 정보를 기록한다. 저장 장치의 구조 컴퓨터 시스템은 다양한 유형의 여러 파일 시스템을 가진다. 컴퓨터 파일 시스템은 확장이 가능하고 하나의 파일 시스템 안에서도 파일을 그룹으로 분리하여 관리하고 그룹에 대한 조..
-
접근 방법운영체제/파일 시스템 2018. 2. 5. 08:13
순차 접근저장되어 있는 레코드 순으로 접근한다. 직접 접근파일은 고정 길이의 논리 레코드의 집합으로 정의되고 직접 접근 파일은 어떤 블록이라도 직접 액세스 할 수 있음구현시 해시 함수나 색인 테이블이 사용된다. 기타 접근 방법직접 접근 파일이 있을 시 그것을 기반으로 여러가지 다른 파일 접근 방법을 제공할 수 있다.이들은 대부분 파일에 대한 색인을 사용한다.색인이란 여러 부분에 대한 포인터를 제공하는 것이다.찾고자 하는 레코드가 있으면 색인부터 찾아 그에 대응하는 포인터를 얻고,그 포인터를 사용하여 파일을 직접 접근하고 원하는 레코드를 찾는 방식이다.