Skip to content

기글하드웨어기글하드웨어

인터넷 / 소프트웨어 : 윈도우즈, 리눅스, 기타 운영체제, 각종 어플리케이션, 프로그램, 소프트웨어, 인터넷, 인터넷 서비스에 대한 이야기, 소식, 테스트, 정보를 올리는 게시판입니다.

profile
조회 수 21662 댓글 14
Extra Form

waifu2x를 통해 2d 이미지를 퀄리티 좋게 확대하는것이 가능해졌습니다. 그리고 waifu2x-caffe를 사용하면 cuda나 cudnn 가속을 사용할 수 있고요.. 예전에 이 방법을 통해서 리듬게임 bga 영상을 고화질으로 몇번 만들어 봤었는데 간단하게 방법을 소개해 보도록 하겠습니다.

 

작업순서는 다음과 같습니다.

 

1. ffmpeg로 동영상을 이미지 시퀀스화

2. 이미지 시퀀스화된 이미지를 waifu2x-caffe로 확대

3. 확대된 이미지를 ffmpeg로 연결(+인코딩) [+ 소리와 합침]

 

*반드시 64bit OS가 필요하며(waifu2x-caffe가 32bit OS를 미지원 함), 영상은 프레임 수가 엄청나게 많으므로 cuda(cudnn) 가속을 사용하는 것이 좋습니다.

 

필요한 프로그램은 waifu2x-caffe, ffmpeg 입니다.

 

waifu2x-caffe https://github.com/lltcggie/waifu2x-caffe/releases

 

ffmpeg windows 빌드

 

*8비트 인코딩 (64bit static을 받아서 압축해제) https://ffmpeg.zeranoe.com/builds/

 

*10비트 인코딩용 빌드 (가장 최근 날짜 폴더의 파일명이 static 64bit high bit depth로 된 zip를 받음) https://sourceforge.net/projects/ffmpegwindowsbi/files/?source=navbar

 

우선 영상을 선정합니다. 영상은 되도록 640x360 이상인게 좋으며, 거의 어지간해서는 크기 2배를 할 때가 가장 보기가 좋습니다. 그리고 크기를 2배 이상으로 설정할 경우 2배 확대했던 이미지를 다시 그대로 2배 확대하는 방식으로 이미지가 만들어 집니다.

 

그리고 영상의 종류는 실사, 3d 폴리곤 형태인 경우 정말 하나마나이므로 추천하지 않습니다. waifu2x-caffe의 특성 상 애니메이션 계열이 가장 효과가 좋습니다.

 

1. ffmpeg로 동영상을 이미지 시퀀스화

 

2016-08-20 (10).png

 

우선 ffmpeg를 압축 해제 하시면 ff-prompt.bat 파일이 있습니다. 실행하면 검은 cmd 창이 하나 나오는데, 명령어를 다음과 같이 입력합니다.

 

ffmpeg -i 원본영상.확장자 -q:v 0 대상폴더\images%05d.jpg

 

예시 : 파일이름이 name.mp4인 영상을 D:\upscale에 저장

 

ffmpeg -i name.mp4 -q:v 0 D:\upscale%05d.jpg

 

*저장할때 손실 포맷인 jpg를 사용하는 이유는 거의 대부분의 영상이 yuv포맷(4:2:0)으로 저장되어 있기 때문입니다. png는 yuv포맷으로 저장이 불가능하여 rgb로 이미지가 저장되는데, 저장시에 yuv→rgb로 변환이 되면서 화질 손실이 발생합니다.

 

그리고 위와 같이 변환 후 보여지는 창에 Stream #0.0 video로 시작하는 문구가 있습니다.

 

Stream #0:0: Video: h264 (High 10), yuv420p10le, 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)

 

그중에 fps를 잘 메모해 놓으시면 됩니다.

 

2016-08-16 (10).png

 

변환된 이미지 목록을 확인하면 이런 식으로 나오게 됩니다.

 

2. 이미지 시퀀스화된 이미지를 waifu2x-caffe로 확대

 

2016-08-20 (9).png

 

그리고 변환한 이미지를 waifu2x-caffe로 돌립니다. 여기서도 jpg로 설정 후 출력 화질은 100 으로 설정합니다. 만일 영상이 bd 미디어 등에서 립을 뜬 파일인 경우 노이즈 제거 단계를 1단계나 0단계로 설정 하시는게 좋습니다.

 

노이즈 제거 단계를 높이게 되면 애니메이션의 경우 셀화의 디테일한 부분이 사라질 가능성이 높으며 뭔가 뭉개진듯한 느낌을 받을 수 있습니다.

 

확대 비율은 2로 설정합니다.

 

모델의 경우 UpRGB와 UpPhoto 이 둘중에 하나만 쓰면 되는데, 저는 설명에 적혀있는 데로 영상을 변환하는 것이므로 UpPhoto 모델을 사용합니다. 이 역시 뭔가 디테일한 면이 사라진다고 해야되나..

 

TTA 모드는 속도가 8분의 1으로 줄어들으므로 체크 안하시는것을 추천합니다. 화질이 조금 더 개선되는 효과가 있다고는 하는데 너무 오래 걸려서...

 

분할 크기는 칸에 입력도 가능합니다. pc와 이미지에 따라 팅기지 않는 최적의 수치를 찾아서 설정 후 돌리시는것을 추천합니다. 크기를 크게 할 수록 VRAM을 많이 사용하게 됩니다.

 

*추가 : 나중에 안 사실이지만... 분할 크기를 무작정 크게 늘린다고 빨라지지는 않습니다. 이미지의 크기에 따른 최적의 크기를 먼저 찾은 후에 돌리시는 것을 추천합니다. 세로프레임 길이의 2분의 1을 하는게 가장 나은듯 하네요.

 

3. 확대된 이미지를 ffmpeg로 연결(+인코딩) [+ 소리와 합침]

 

사실 이 부분은 인코딩을 어떻게 할 것인가에 따라 속도가 천차만별으로 변합니다. 그러나 여기에서는 프리셋과 인코딩 하는 방법의 설명은 생략하며, 기본적인 이미지 +소리 → 동영상 에 대해서만 설명 하겠습니다.

 

이전에 실행했던 ffprompt.bat를 실행합니다.

 

*기본적인 x264를 사용하는 명령어입니다.

 

ffmpeg -framerate 23.98 -i images%05d.jpg -i 원본영상파일명.확장자 -c:v libx264 -preset slow -crf 19 -pix_fmt yuv420p -c:a copy 저장할파일.확장자

 

-framerate 23.98 : 위에서 메모해야 했던 fps 입니다. fps가 일치하지 않으면 영상 싱크가 맞지 않으니 반드시 확인 후 인코딩을 실행하세요.

 

원본영상파일.확장자 : 원본 영상의 소리를 가져오기 위해서 추가합니다. 뒤에 -c:a copy (오디오 트랙 복사)와 맞물려 있습니다. 저장할때 사운드 코덱 변경도 가능하지만 여기에서는 생략합니다.

 

crf 19 : 0에 가까울수록 화질이 좋아지며 용량이 커집니다. 보통 화질의 기준은 24이며 0-51으로 설정이 가능합니다. 22~23만 되어도 충분히 좋은 화질이 나옵니다. (저는 19를 사용함) 16~24 사이에서 설정을 추천 합니다.

 

x265 인코딩을 하려면 -c:v를 libx265로 설정 하면 됩니다.

 

x265 10bpp 인코딩 시에는 위에서 10비트용 ffmpeg를 받아 실행해야 하며, -c:v를 libx265로, -pix_fmt를 yuv420p10le로 바꾸면 됩니다. 10비트 cpu 인코딩은 속도가 매우 느리므로 참고 바랍니다.

 

만일 nvenc를 사용하여 gpu 인코딩을 하고싶은 경우, -c:v 부분을 nvenc_h264 또는 nvenc_hevc 를 사용 하시면 됩니다.

*nvenc를 사용하면 -crf 수치를 적용할 수 없어 -crf를 지우고 -b:v 비트레이트(50M, 50000K 등)를 입력해야 합니다. 또한 같은 비트레이트일 경우 cpu로 하는 인코딩에 비해서 화질이 약간 떨어지는 경향이 있으므로 비트레이트 자체를 높게 주는것이 좋습니다.

 

*파스칼은 hevc main10 하드웨어 인코딩이 가능한데, 직접 해보지 못해서 어떤 명령어를 써야하는지 잘 모르겠네요..;

 

퀵싱크를 이용해서 인코딩을 할 경우에는 -c:v 부분을 h264_qsv 나 hevc_qsv로 하면 될것 같습니다. 이부분도 역시 직접 해보지 못한거라 잘 모르겠습니다.

 

그외의 특정 애니릴 같은 경우는 캡션이나 mkv 내장자막 같은 항목들이 있는데, megui에 내장된 툴을 사용하면 쉽게 가져올 수 있으며 이부분의 설명 역시 생략합니다.

 

2016-08-20 (4).png

 

이렇게 까지만 하면 끝입니다.

 

그나저나.. 명령어를 ffmpeg 내에서 알아낼려고 help를 몇번 쳐 봤는데 도움이 전혀 되지 않아서 검색 하느라 조금 오래 걸렸네요... 특히 파스칼 main10 인코딩은 검색 아무리 해도 나오지가 않아서.. 아직 1060이 없어서 해볼 수도 없고..



  • profile
    arc4411      Into the Unknown, Show Yourself !! // ThunderVolt_45 2016.08.21 00:28
    누가 ffmpeg에 gui좀 씌워줬으면 좋겠어요 진짜로
  • profile
    케닌      スナネコ🐱 2016.08.21 00:31
    커맨드를 알아야지만 쓸 수 있어서 너무 불편해요..ㅜㅜ
  • ?
    퀘윈 2016.08.21 08:09
    오토잇으로 대충 만들어도 편할 것 같아요.

    만들어 볼까나...
  • ?
    Φloteer      🤔 2016.08.21 15:50
    그 ffmpeg에 gui 프론트엔드를 씌운 게 흔히 "xx인코더" 등의 이름으로 돌아다니는 gui기반 인코더들이지 말입니다.. 까보면 전부 ffmpeg에 껍데기 씌운 구성.
    문제는 그 대부분이 ffmpeg의 기능의 일부분만을 지원한다는 건데.. 아무래도 대부분 초보자대상이다 보니까요.
  • profile
    케닌      スナネコ🐱 2016.08.21 15:51
    네 그렇죠.. 기능이 전부 생략되어 있거나 옵션 같은것도 죄다 간략화 한 형태.. 차라리 공식에서 gui를 썼으면 좀 나았을것 같은...
  • profile
    쮸쀼쮸쀼 2016.08.21 02:21
    -crf 값이 기본값이 23으로 알고 있는데, 19면 좀 높은 편이거든요. 높은 값을 추천하는 이유가 있으신가요?
  • profile
    케닌      スナネコ🐱 2016.08.21 11:16
    사실 별 이유가 있는건 아닌데.. waifu2x로 노이즈도 빼고 새로 그렸으니 높게 주는게 낫지 않을까? 해서 높게 준것입니다.
  • profile
    쮸쀼쮸쀼 2016.08.21 13:14
    그냥 22~23 정도만 되어도 충분히 깨끗합니다. 차라리 -preset을 slow로 바꾸는 게 더 나을 것 같습니다.
  • profile
    케닌      スナネコ🐱 2016.08.21 13:16
    음.. 근데 저는 22~23 정도로 하면 화질이 약간 아쉬워서 그냥 19를 사용하네요. 우선 본문 내용은 고쳐놓겠습니다.
    프리셋 부분도 같이 고쳤습니다.
  • ?
    호호 2016.08.21 07:47
    와우 유용한 글 잘 보고 갑니다
  • profile
    다니엘_      나나니지 // MacBook Pro (14", M3 Pro) 2016.08.21 11:05
    알아두면 쓸일이 있을거 같은 팁이군요
  • profile
    VoxPopuli 2016.08.21 15:36
    오호. Split size는 직접 타이핑이 가능했군요.

    512도 VRAM을 2G 정도밖에 안 쓰기에 1024를 넣었더니 되는 파일이 있고 안 되는 파일이 있네요.

    1024로 돌린다고 8G를 다 먹진 않을 텐데..
  • profile
    케닌      スナネコ🐱 2016.08.21 15:48
    뭔가 넣은 파일의 이미지 크기와 관련이 있는게 아닐까 싶네요.
  • ?
    플로넨 2016.08.21 21:25
    순간적으로 사용량이 많아지는 구간이 있는데 그 때의 사용량 기준으로 책정되는 것 같습니다.
    512 640은 되는데 768, 896, 960, 1024에서는 문제가 생겨요.

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


  1. Basemark, GPUScore Relic of Life 레이트레이싱 벤치마크

    Basemark의 그래픽 벤치마크인 GPUScore에 Relic of Life 레이트레이싱 벤치마크가 추가됩니다. 다이렉트 X 12, 윈도우/리눅스/벌칸 지원. 실시간 레이 트레이싱 추적 반사 처리를 테스트합니다. 어떻게 생겼나 구경해보려고 했는데 아직...
    Date2020.10.16 소식 By낄낄 Reply0 Views327 file
    Read More
  2. 윈도우 10, 고급 디스플레이 설정에서 리프레시율 설정 가능

    윈도우 10의 프리뷰 버전인 빌드 20236부터는 고급 디스플레이 설정에서 모니터 리프레시율을 설정할 수 있게 됩니다. 이렇게 지극히 당연하고도 단순한 개선을 왜 지금껏 하지 않았나 이해가 안 되는군요. 이래서 뭐 설정이라도 하나 할...
    Date2020.10.16 소식 By낄낄 Reply13 Views1721 file
    Read More
  3. No Image

    지메일과 페북 관련 질문

    요즘 지메일 쓰다가 이상한 점 두 가지를 발견했습니다. 첫째, 수신자를 저로 할 때 과거에는 이메일 주소 일부만 입력하면 제 이메일 주소가 자동으로 뜨고 클릭하면 수신자 지정이 끝났는데, 이제는 주소 전체를 입력해야 합니다. 둘째,...
    Date2020.10.15 질문 By컴퓨타불시착 Reply0 Views440
    Read More
  4. No Image

    개인 클라우스 서버 관련 질문드립니다.

    Lubuntu에 Apache + Mysql + Owncloud 올려서 사용중인데요. owncloud 접속할 때 https로 적용 하려고 하는데요. 공유기에 있는 DDNS로 얻은 iptime.org로는 공인 ssl 인증서 발급이 안되더라구요.. 그래서 도메인 하나 구매해서 네임서버...
    Date2020.10.15 질문 By히키꾸무리 Reply27 Views1537
    Read More
  5. No Image

    화웨이 오픈 소스 아크 컴파일러, C 언어 공식 지원

    화웨이의 오픈소스 컴파일러인 아크(Ark, 방주)가 C 언어를 공식 지원합니다. 자바에서 IR 코드의 JIT 컴파일을 제공할 뿐만 아니라 C/C++에서도 컴파일이 가능합니다. 아크 컴파일러는 C 언어의 기능 대부분을 지원한다네요. 링크는 다음...
    Date2020.10.15 소식 By낄낄 Reply4 Views806
    Read More
  6. No Image

    랜섬에 감염된 하드를 연결해서 보려고 합니다

    감염되어도 상관없는 PC에다 연결하려고합니다. 지금 준비해둔건 앱체크랑 아비라 무료백신인데 혹시 다른 준비물이 더 필요할까 궁금합니다.
    Date2020.10.14 질문 ByLSDddd Reply19 Views923
    Read More
  7. No Image

    자체서버 두고 웹하드나 웹서버 이용하려니 진짜 번거로워서 그러는데 클라우드 쓸만한 것 있을까요?

    회사에 이전 선임이 구축해서 사용하고 있는 웹서버 형식의 웹하드를 사용 중인데, 이거 보안도 그렇고 영 엉망인 느낌입니다.   어째 언어도 전 잘 보지도 않는 PHP에 mysql써서 만들어뒀는데 PC문제는 아닌 듯 한데, 뭐가 엉킨건지 속도...
    Date2020.10.14 질문 By딸기마카롱 Reply9 Views1450
    Read More
  8. No Image

    중국 후야 TV와 도유 TV가 합병

    중국의 게임 스트리밍 회사인 후야 TV와 도유TV가 합병한다고 발표했습니다. 합병이 끝나면 텐센트가 상당한 지분과 함께 의결권의 68%를 갖게 됩니다. 한국에서는 후야나 도유를 쓰는 사람들이 많지 않겠지만 중국에서는 상당히 인기가 ...
    Date2020.10.13 소식 By낄낄 Reply4 Views1960
    Read More
  9. No Image

    공유기 선택좀 도와주세요

    안녕하세요 집이 좀 큰편에 근처에 신호가 많이 잡히는 편이라 간섭이 심해서 기존에 쓰던 공유기를 바꾸고 asus aimesh로 구성해서 쓰려고 총알을 모아놨는대요   최근 그래픽카드며 cpu며 바꿀게 갈수록 늘고있어서  막상 지르려고 했던...
    Date2020.10.13 질문 ByDr.Lemon Reply12 Views1721
    Read More
  10. No Image

    원드라이브 비즈니스에서 버전 관리를 끌 수 있는 방법이 있을까요?

    학생용 원드라이브를 클라우드 싱크를 통해서 나스 백업용으로 쓰려고 하는데, 파일이 업로드 되고 조금 후 다른날짜의 버전이 생깁니다. 파일버전이 2개라 용량도 2배를 차지해서 나스 전체를 백업하기에는 용량이 부족해지네요. 인터넷...
    Date2020.10.13 질문 Bytitle: 컴맹니즛 Reply8 Views1388
    Read More
  11. No Image

    스포티파이, 타사로의 전환 서비스 금지 조치

    SongShift는 API 연동을 통해 Spotify와 같은 음원 스트리밍 서비스간 라이브러리와 재생 목록을 옮겨주는 서드파티 서비스의 하나입니다. SongShift는 스포티파이 개발자 플랫폼 팀이 스포티파이에서의 이전 기능을 두고 API 정지를 경고...
    Date2020.10.13 소식 By이견 Reply1 Views1574
    Read More
  12. KT 인터넷은 일시 정지 상태에서 이전 설치가 안되는군요

    이사를 할 때 인터넷도 옮겨야 합니다. 이사가 깔끔하게 되는 경우엔 그냥 이전 설치를 하면 끝이죠. 떼서 옮기면 되니까요. 하지만 이사가 바로 안 되는 경우는 좀 문제가 있네요. 저처럼 그 사이에 2달 가까이 시간이 남을 경우, 쓰지도...
    Date2020.10.12 일반 By낄낄 Reply2 Views2414 file
    Read More
  13. [소프트웨어 잡담] 서브 디바이스에 광고 차단 소프트웨어를 설치했습니다. 외

    1. 광고 차단 소프트웨어 설치   심심해서 App Store 무료 애플리케이션 중 받을 만한 것이 있나 둘러보고 있는데 Safari용 광고 차단 소프트웨어가 무료로 풀렸네요? 설치했습니다. 설정 가서 뭘 누르고 하라고 해서 그대로 했더니 광고 ...
    Date2020.10.12 일반 Bytitle: 컴맹임시닉네임 Reply3 Views1380 file
    Read More
  14. No Image

    랜섬웨어에 돈 내는 것이 불법으로 규정

    1. 미국 재무부, 랜섬웨어 공격자들을 제재 대상으로 규정. 앞으로 이들에게 돈 내면 불법. 2. 반대론자들은 “오히려 피해 사실을 쉬쉬할 근거가 생겼다”고 주장. 3. 찬성론자들은 “공격자들을 근절시킬 수 있는 장기적...
    Date2020.10.12 소식 By낄낄 Reply5 Views1710
    Read More
  15. No Image

    "한 달 국제전화비 150만 원"..알고 보니 복합기 해킹

    경기도 수원에서 서점을 운영하는 선국규 씨는 지난 7월 전화요금 고지서에서 국제전화 요금이 150만 원이나 부과된 사실을 발견했습니다. 복합기를 확인해봤더니 외국으로 팩스를 발신한 기록이 있었습니다. [선국규/복합기 해킹 피해자 ...
    Date2020.10.12 소식 By낄낄 Reply5 Views2032
    Read More
목록
Board Pagination Prev 1 ... 314 315 316 317 318 319 320 321 322 323 ... 579 Next
/ 579

최근 코멘트 30개

한미마이크로닉스
더함
AMD
MSI 코리아

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소