이미지 리사이즈 기능으로 줄이는 기능을 지닌 모듈을 보아왔습니다.

 

문득 이미지 업스케일링 모듈은 왜 없을까 있다면 좋겠다는 생각이 들었습니다.

 

github에 소스코드가 공개되어있는 waifu2x 소스코드를 이용하여(혹은 waifu2x-caffe 설치버전(https://github.com/lltcggie/waifu2x-caffe) 을 서버단에 설치하여)

 

구글에서 만들었다는 RAISR라는 기술을 이용하여(https://github.com/movehand/raisr)

 

저해상도의 사진을 키우고 노이즈를 제거하는 모듈을 만들 순 없을까? 하는 생각이 들었습니다.

 

픽셀 해상도 기준을 넣어서 가로 사이즈나 세로사이즈로 500미만의 사진은 2배로 확대시킨다던지...

실력이 미천하여... 생각만 하고 있네요...

 

능력자분께서는 간단하게 만드실 수 있을 거라 생각합니다.

 

ffmpeg을 이용한 gif to mp4 모듈처럼요 ^^

  • profile
    이미지편집의 최고 툴인 포토샵에서도 작은 이미지의 크기를 키우면 화질 열화가 발생합니다.
    사람이 수작업으로 그럭저럭 보기에 안 거슬릴 정도로 키우는 것도 한계가 있습니다.
    (이미지의 모든 부분을 다 손대서 새로 그리는 작업이 되겠죠.)
    2배 정도만 키워도 눈에 거슬리죠.
    덜 거슬리게 보이게 만들 뿐이죠.

    줄이는 건 쉬워도 늘리는건 어렵습니다.

    영화에서처럼 작은 이미지를 키워서 원래 큰 이미지 처럼 보이게 하는 건.....
    영화라서 그런겁니다.
  • profile profile

    늘리면 열화가 된다는 것은 알고 있습니다.
    그런데도 waifu2x 는 열화도 최소화가 되더라구요...

    심지어는 포토샵보다 뛰어나더라구요...;;;;;

  • profile
    스케일 안건드리고 용량줄이는 것도 있었으면 좋겠네요.
  • profile profile
    RAISR라는 업샘플링 기술이 있다고 하네요...
    이것도 좋을 것 같은데... ;;;;
    구글이 작은 사진을 크게 만들면서도 이미지 왜곡을 최소화하는 새로운 알고리즘의 업샘플링 기술 'RAISR'를 안드로이드에 적용한다는 소식이다.
    지난 11월 첫 선을 보였던 구글 RAISR 기술은 머신러닝 기반의 알고리즘을 사용해 저해상도 사진을 고품질의 고해상도 사진으로 변환해주는 기술이다. 그리고 구글은 이제 RAISR 기술을 Google+ 앱에 적용시킬 예정이다.
    구글은 RAISR 기술을 주로 데이터 통신 최소화를 목적으로 Google+에 적용할 예정이다.
    본래 사진의 해상도와 용량이 1/4만 되어도 원본 크기로 업샘플링할 수 있으며 모바일 데이터 소모량과 트래픽 완화에 도움이 될 것으로 보인다. 한편, PC에서도 이와 유사한 기술을 사용해볼 수 있다.
    waifu2x-caffe라는 프로그램 역시 머신러닝 기반의 이미지 업샘플링 알고리즘을 적용한 프로그램으로 사진을 원하는 크기로 키워볼 수 있으며, 품질 또한 좋은 편이다.
    해당 프로그램은 Github(링크)에서 다운로드받아 사용해볼 수 있다.
  • profile profile
    오! 대단한 기술입니다.
  • profile profile
    이 기사가 언제건가요? 구플에 적용되었을래나??
  • ?
    보니까 C나 C++로 돼있는것같은데 webassembly나 php extension으로 만들어야할듯한데 보통작업이 아닐듯하네요.
  • ? profile

    설치버전으로 실행하게끔 하면 간단할 것도 같아서요... 서버에 설치 후 실행할 수 있게 한다면..
    GIF Converter 모듈(https://xetown.com/rxe_point/972883) 처럼 서버에 설치 후 권한을 주고 사용하는 방법이요...
    이것도 제가 무지해서 간단할거라고만.. 생각하는데... 실례이겠지요;;;;;

  • profile ?
    Extension을 컨버팅 하는거랑 기존에 있는 PHP Extension을 그냥 사용하는건 엄청난 차이가 있습니다.

    작업량도 엄청나게 차이나고 필요한 지식차이도 엄청납니다.
  • profile
    그리 쉬운작업은 아닐 수 있습니다.

    단순히 사이즈업을 하는거라면야 가능할지 모르지만, 열화를 줄이려면 결국은 그 이미지에 대한 학습이 필요합니다.
    늘어나면 생기는 색상의 변화가 일어났을때의 커버력, 그외의 그림자를 커버하거나 기타 이펙트부분들이 크게 늘어나면서 생기는 옅어지는 현상들.

    그런 문제들이 해결되기 위한건 결국 그 이미지가 어떤 이미지인지 알아야할것이기에 딥러닝 또는 데이터가 필요한데.. 그런것을 일반 모듈로 해결하기에는 어려운 점이 있지요.

    제가 어렵게 생각하는걸수도 있습니다.
    다른 정말 뛰어나신 개발자분들은 제가 생각하는 방법 이외에도 더 좋은 방법이 있으실거라 생각합니다.
  • profile

    명시하신 waifu2x같은 경우 요구사양이 꽤나 높은편입니다.
    우선 CUDA를 위해 별도 GPU가 필요하며(CPU로도 가능하긴 합니다만 매우 느립니다) GTX 980으로도 2~4초가량 소요될 정도로 부하가 꽤 심합니다. 이런걸 일반 웹서비스에 적용하려면 돈이 꽤나 많이 들어가겠죠.