가끔 사진을 찍을때 물체가 흔들려서 찍히는 경우가 있는데요 물론 요즘 핸드폰은 보정 기능이 있어서 왠만하면 초점이 잘 잡히는 편이지만 그렇지 못한 상황에서 매우 난감할 때가 있습니다
이런 경우 deblur gan을 통해서 복구를 할 수 있는데요 흔들린 이미지를 학습한 딥러닝 모델을 통해서 다수의 사진도 한꺼번에 쉽게 복원하실 수 있습니다
먼저 deblurgan을 구동하기 위해서는 파이썬3.6, tensorflow1.7 버전이 설치가 되어야 합니다 하지만 다수의 파이썬 버전 환경이 필요한 경우 일일히 파이썬을 설치할 필요없이 Anaconda 하나만 설치하시면 여러가지 파이썬 버전을 설치하고 가져올 수 있는 것이죠
▼아나콘다(Anaconda) 다운로드
www.anaconda.com/products/individual
위에서 아나콘다를 다운로드 받아주신다음 설치를 진행해줍니다
그럼 위와 같은 창이 나오게 되는데요 앞에 있는 base 라고 되어 있는 것은 기본 환경이라는 뜻입니다
파이썬 3.6 버전을 설치하기 위해서 가상환경을 만들고 거기에서 파이썬을 버전별로 설치해주실 수 있습니다
우선 가상환경을 하나 만들어 보도록 하겠습니다
저는 파이썬 3.6 버전으로 python3.6이라는 이름으로 생성을 해보도록 하겠습니다
conda create -n 가상환경이름 python=버전
이렇게 입력을 해주시면 됩니다
가상환경 설치가 끝나면 위와 같이 다시 베이스로 돌아오게 되는데요
가상환경 리스트를 확인해보기 위해서 다음과 같은 명령어를 입력해주세요
conda env list
그럼 아래 보시면 파이썬3.6 버전이 설치된 환경을 확인할 수 있습니다
해당 환경을 불러오려면 다음 명령어를 입력해주세요
conda activate python3.6
그럼 앞에 (base) 라고 되었던 부분이 python3.6이라는 가상 환경으로 스위칭된것을 볼 수 있습니다
다른 환경을 만들어서 똑같은 방식으로 전환해주실 수도 있고 해당 가상환경을 삭제하려면 아래 명령어를 통해서 진행할 수 있습니다
conda env remove -n 가상환경이름
다음으로 tensorflow1.7버전을 설치하기위해서 다음 명령어를 입력해주시면 됩니다
★텐서플로우1.7 버전 설치
pip install tensorflow==1.7
설치가 완료되면 잘 설치가 되었는지 확인해봐야 겠죠 다음 명령어를 입력해서 pip 리스트를 모두 확인할 수 있습니다
pip list
위 그림에서 보시는 것과 같이 tensorflow1.7버전이 잘 설치된 모습을 확인할 수 있습니다
이제 준비는 끝났습니다 본격적으로 deblurgan을 구동해보도록 하겠습니다
위에서 파일과 코드를 다운로드 받아서 압축을 해제해줍니다
저는 C드라이브에다가 풀어줬는데요
anaconda에서 해당 폴더 위치로 들어가는 명령어를 입력해주세요
cd C:\deblur-master
그러면 c드라이브에 있는 deblur-master 폴더로 이동한것을 볼 수 있죠
처음 deblur-master 폴더 안에 testing_imgs 폴더에 기본적으로 흐린 이미지 파일들이 들어있습니다 이를 바로 복구해보도록 하겠습니다
다음으로 코드를 실행하기 위해서 파이썬 실행 명령어를 다음과 같이 입력해주시면 됩니다
python run_model.py
조금만 기다리면 자동으로 복구가 진행되는 것을 볼 수 있습니다
하지만 만약 위그림 처럼 no module naced cv2 라는 오류메시지가 떳다면 opencv-python 을 설치해주시면 해결이 됩니다 다음 명령어를 입력해주세요
pip install opencv-python
설치 완료 후 다시 run_model.py 코드를 실행해줍니다
작업이 쭉 진행되면서 마지막 이미지 deblurring 작업 완료 메시지가 뜨게됩니다 현재 g1, g2, g3, g4 png이미지 파일이 모두 완료된것을 알 수 있습니다
이제testing_imgs_res 폴더에 가서 확인해보시면 복구된 이미지 파일들을 모두 확인해보실 수 있습니다