스마트 이미지 편집기
프로젝트 개요
Smart Image Editor는 이미지 품질을 향상하고 이미지를 원하는대로 수정하는데 초점을 맞춘 인공지능 기반 서비스입니다. 객체 탐지(Mask R-CNN) 및 제거, 제거한 영역 복구(Inpainting), 업스케일링(Super Resolution)의 기능을 제공합니다. 팀원들과 신경망에 대해 학습을 하면서 콘솔에서 모델을 실행해보는 것에 그치지 않고, 웹 기반 서비스로 제공해보자는 취지가 더해진 프로젝트입니다.
- 객체 탐지 및 제거(Mask R-CNN)
- 제거된 영역 복구 (Inpainting)
- 업스케일링 (Super Resolution)
프로젝트 개발
- 개발 기간 : 2020. 05. 11 - 2020. 06. 18
- 개발 인원 : 5명
- 역할 : 이미지 해상도 증진을 수행하는 Super-Resolution API 구현
개발 환경
- 언어 : Python 3.7, JavaScript
- 프레임워크 : Django, Pytorch
- GPU server
실행 화면
객체 탐지 및 제거
제거된 영역 복구
업스케일링
업스케일링 결과물 비교
적용 전
적용 후
개발 후기
업로드 된 이미지에 인공지능 모델을 적용할 수 있도록 API 구현하였습니다.
프로젝트에 사용한 인공지능 모델은 MIT 라이선스 기반의 오픈소스를 활용하였으며 모델의 레이어에 변화를 주거나 파라미터 값을 수정하여 좀 더 나은 결과를 내도록 수정하였습니다.
그리고 사용하는 인공지능 모델에서 Alpha 채널을 갖는 32bit PNG 파일을 지원하지 않아서 Alpha 채널을 제거한 24bit PNG 파일로 변환시켜서 수행될 수 있도록 입력 이미지 변환 기능을 추가하였습니다.
이미지를 주제로 하는 프로젝트라 결과물의 변화를 직접 눈으로 확인할 수 있어서 흥미로웠고, 고사양 GPU 서버를 사용하여 모델 학습 시간이 단축되면서 다양한 시도를 해볼 수 있어서 좋았습니다.
서비스를 배포했던 AWS EC2는 학습 서버와 달리 CPU만 사용이 가능했기 때문에 이미지 변환 API를 호출하고 응답을 받기까지 시간이 오래 소요되기는 했으나, 웹 서비스를 통해 AI 모델을 활용할 수 있도록 해본 것은 좋은 경험이었습니다.