스마트 이미지 편집기

1 분 소요

프로젝트 개요

Smart Image Editor는 이미지 품질을 향상하고 이미지를 원하는대로 수정하는데 초점을 맞춘 인공지능 기반 서비스입니다. 객체 탐지(Mask R-CNN) 및 제거, 제거한 영역 복구(Inpainting), 업스케일링(Super Resolution)의 기능을 제공합니다. 팀원들과 신경망에 대해 학습을 하면서 콘솔에서 모델을 실행해보는 것에 그치지 않고, 웹 기반 서비스로 제공해보자는 취지가 더해진 프로젝트입니다.

  1. 객체 탐지 및 제거(Mask R-CNN)
  2. 제거된 영역 복구 (Inpainting)
  3. 업스케일링 (Super Resolution)

프로젝트 개발

  • 개발 기간 : 2020. 05. 11 - 2020. 06. 18
  • 개발 인원 : 5명
  • 역할 : 이미지 해상도 증진을 수행하는 Super-Resolution API 구현

개발 환경

  • 언어 : Python 3.7, JavaScript
  • 프레임워크 : Django, Pytorch
  • GPU server

실행 화면

객체 탐지 및 제거

mask_rcnn

제거된 영역 복구

inpainting

업스케일링

super-resolution

업스케일링 결과물 비교

적용 전

ps

적용 후

sr

개발 후기

업로드 된 이미지에 인공지능 모델을 적용할 수 있도록 API 구현하였습니다.

프로젝트에 사용한 인공지능 모델은 MIT 라이선스 기반의 오픈소스를 활용하였으며 모델의 레이어에 변화를 주거나 파라미터 값을 수정하여 좀 더 나은 결과를 내도록 수정하였습니다.

그리고 사용하는 인공지능 모델에서 Alpha 채널을 갖는 32bit PNG 파일을 지원하지 않아서 Alpha 채널을 제거한 24bit PNG 파일로 변환시켜서 수행될 수 있도록 입력 이미지 변환 기능을 추가하였습니다.

이미지를 주제로 하는 프로젝트라 결과물의 변화를 직접 눈으로 확인할 수 있어서 흥미로웠고, 고사양 GPU 서버를 사용하여 모델 학습 시간이 단축되면서 다양한 시도를 해볼 수 있어서 좋았습니다.

서비스를 배포했던 AWS EC2는 학습 서버와 달리 CPU만 사용이 가능했기 때문에 이미지 변환 API를 호출하고 응답을 받기까지 시간이 오래 소요되기는 했으나, 웹 서비스를 통해 AI 모델을 활용할 수 있도록 해본 것은 좋은 경험이었습니다.

카테고리:

업데이트: