리멤버 유저에게 보다 깨끗한 명함 이미지 제공을 위한 이미지 복원 방법:
https://blog.dramancompany.com/2022/11/%eb%a6%ac%eb%a9%a4%eb%b2%84-%ec%9c%a0%ec%a0%80%ec%97%90%ea%b2%8c-%eb%b3%b4%eb%8b%a4-%ea%b9%a8%eb%81%97%ed%95%9c-%eb%aa%85%ed%95%a8-%ec%9d%b4%eb%af%b8%ec%a7%80-%ec%a0%9c%ea%b3%b5%ec%9d%84-%ec%9c%84/
😈 데이터블로그 챌린지 14일차😈 입니다.
명함 서비스 회사인 리멤버에서 어떻게 명함을 고화질로 복원하는지에 대한 아티클을 읽었습니다. 고해상도 이미지 복원을 위한 task 분야 및 잘 알려진 딥러닝 이미지모델에 대해 소개합니다.
명함이미지를 촬영할때 촬영 환경의 조도, 빛반사, 명함 오염 등 다양한 요소에 따라서 이미지 복원이 필요성이 존재함
고해상도, 노이즈제거, 블러제거, 인페인팅 등에 대한 task를 해결해야함
딥러닝 기반 이미지 모델들에 대한 추가설명. 각 task별 SOTA 논문도 소개
(Super-Resolution, Denoising Task:swinIR,
Denoising, Deblurring Task: NAFNet )
내 생각: 지난번 어도비의 generative fill과 더불어 고해상도 이미지복원에 대한 추가 궁금점이 있었는데 , 해당분야에 대한 task 및 다양한 딥러닝 모델에 대한 설명을 통해 해결할 수 있었습니다.
Denoising, Deblurring:
노이즈를 제거하는 것
Inpainting:
오래된 사진 또는 화질이 번진 이미지에서 이미지를 복구하는 것
Super-Resolution
: 전통적으로 Interpolation을 사용함. ( 알고있는 두 지점 사이의 값을 추정하는 방법)
=> Bilinear interpolation, Bicubic interpolation ( 2차원으로 확장해 super resolution을 적용하여 저해상도 이미지를 고해상도 이미지로 변환시켜줌)
=> Nearest, Area, Lanczos 존재 ( Lanczos가 좀 더 선명함)
interpolation은 openCV에서 이미지 사이즈를 축소,확대할 때 사용하는 방법이라 super resolution으로 부르기에 애매한 부분이 존재함
Denoising
: 필터링을 이용해 노이즈를 제거하는 방법
=> Gaussian, Bilateral, Median filtering, Non-Local means filtering 등이 존재
1) Gaussian filtering : 현 픽셀값과 이웃 픽셀 값들의 가중 평균을 이용해 현재 픽셀 값을 교체하는 방법
2) Bilateral filtering : 가우시안 필터링의 보완방법. Edge 정보를 보존하면서 노이즈를 제거함
3) Non-Local means filtering[1] : Bilateral Filtering 을 보완한 방법. 주변 픽셀을 patch로 잘라내어 패치 사이의 거리를 계산함
1) Patch 기반: 손상되지 않는 부분에서 가장 일치하는 후보 패치를 찾아 손상된 위치에서 복사.
2) diffusion 기반: 이미지 컨텐츠에서 누락된 영역의 경계로부터 시작하여 누락된 영역 내부로 점차 채워가는 방식
SwinIR[5]
: Super-Resolution, Denoising Task에 대한 SOTA 모델(2021년)
NAFNet[6]
:UNet[7] 모델 구조를 채택하여 Gated Linear Unit을 활용해 비선형 활성화 함수를 사용하지 않고 Denoising, Deblurring Task를 해결하는 논문이며, Denoising, Deblurring Task에서 SOTA 모델