Week5 01
강의 5
-
Computational imaging
- Computational photography
- 일반적으로 U-Net architectures 사용
-
Training data in computational imaging
-
Image denoising
- 기본적인 noise 가정 =>
gaussion noise
사용 ( y = x + n) => 수학적으로 단순명료, 평균값 활용하기 좋음 - Gaussian noise 활용 => 합성데이터 만들기
- 단순히 더하거나, simulator 만들기
- 기본적인 noise 가정 =>
-
super resolution
- Collect high-resolution natural images
- 그에 상응하는 low-resolution 이미지들을 down-sampling을 통해 생성한다
- 이때 Down-sampling(e.g. bicubic interpolation) 은 카메라 operation과 정확히 부합하진않음 => GAP 발생
- RealSR
thin lense
=> 확대 parameter를 대략적으로 알면서 확대된 이미지와 원본 resolution 이미지를 확보할 수 있게 됨- 다른
focal length
로 HR & LR image 도출하고Iterative registration
을 통해 Aligned LR image 확보 - Iterative registration
- Ground-truth image를
affine transform
하고 LR image와 비교해서 affine-transformed image 생성 - center crop해서 ground-truth image와 비교하며 L1 optimization 수행
- 이를 통해 affine transform의 parameter를 수정해나감 => 이를 반복적으로 수행하며 더욱 정교한 데이터 생성
- 최종목표: 두 이미지간의 최적 일치를 이루는 변환 매개변수를 찾는 것
- Ground-truth image를
- RealSR을 이용한 모델이 다른 모델들에 비해 훨씬 원본과 유사한 결과 도출
-
Image deblurring
- Acquiring realistic data by using high frame-rate camera(예시. GoPro)
- Long exposure frame = short exposure frames의 합
- sharp image를 accumulation해서 blurr image 생성
- CRT라는 nonlinear 함수 사용
sharp frame averaging
해서 생성한 블러이미지가 훨씬 정교하게 만들어짐- RealBlur dataset => Ground truth image와 굉장히 유사
-
Video motion magnification
-
변위를 안다고 하더라도 증폭된 위치에다가 배치하는 것은 쉽지않은 문제
-
real data pair가 없으므로 합성데이터 활용
-
두 프레임 이용하여 magnification factor 알파가 적용된 cnn을 거쳐 나온
수정된 프레임과 ground-truth간의 L1 loss를 계산하여 두 이미지간의 차이 최소화하도록 학습
-
-
Deep image restoration
-
Fixation problem
- On-demand learning
-
합성데이터를 간단한 level로 만들고 테스트를 해보고 나서 어느정도 성능이 나오는지 보고
점차적으로 복잡도를 늘려가는 방식이 practical한 합성데이터 process 만들 수 있음
-
-
-
Advanced loss functions
-
L2 or L1 loss functions =>
perceptually well-aligned
되어있지 않다=> L1과 L2 손실 함수가 계산하는 수치적 차이가 사람의 시각적 인식과 항상 일치하지 않음
-
L2 or L1 동일한 오차여도 Ground-truth image와 비슷한 것과 전혀 다른 이미지가 존재
-
Adversarial loss
- Generative adversarial networks (GAN)
- generator에서 생성한 fake data가 discriminator를 속이려는 방향으로 학습 (fake를 real로 판단하게)
- L1, L2 loss 이용 => Discriminator 사용 (GAN 연구의 Key point)
- Real data와 비슷한 형태의 출력을 만들게끔 유도
- Pixel-wise MSE loss와 Adversarial loss 같이 사용
- Generative adversarial networks (GAN)
-
Adversarial Loss
- pre-trained networks가 필요하지 않음 => 다양한 어플리케이션에 적용하기 용이
-
Perceptual Loss
- pre-trained networks 요구 => 준비해야하는 단점
- training 데이터의 양에 대해 효율적으로 학습
-
Perceptual Loss
- Pre-trained classifiers filter가 인간의 시각인지와 유사하다는 그런 관찰에서부터 시작
- filter를 학습된 base로 생각
- VGG-16과 같은 Pre-trained network를 사용할 때 같이 학습하지 않고 fix해놓고 사용, Loss를 측정하는데만 사용됨
Feature reconstruction loss
- Transfromed image와 Content target을 Pre-trained loss network를 통해 Loss를 계산
- backpropagation gradient를 Pre-trained network를 학습시키지않는 형태로 transformed image에 흘려주게 됨
Style reconstruction loss
- Style target을 활용
- Gram matrix 형태로 feature를 transform해서 loss 계산
-
-
Extension to video
- Flickering problem => 프레임마다 독립적으로 프로세싱해서 시간축으로 일관되지않고 번쩍이는 문제
- Video processing
- Temporal losses
- short-term temporal loss => 인접한 두개의 컨텐츠가 유사해야한다는 형태로 학습
- Long-term temporal loss => 장거리로도 consistent해야된다는 조건 걸어줌
- 첫번째 outframe을 기준으로 잡고 consistency 측정
- Overall loss = perceptual loss + short-term temporal loss + long-term temporal loss
- 이를 통해 비디오 프로세싱을 스무딩해주는 모델 도출 가능
- Temporal losses
댓글남기기