본문 바로가기
ㄴ 공부공부룸/AI

[위변조] CAT-Net

by sPARKle_judy 2023. 1. 13.
728x90

[2023.01월 위변조 연구 관련 survey]

 

 

<Learning JPEG Compression Artifacts for Image Manipulation Detection and Localization>

이미지 위변조를 detect 하고 localization하는 방법에 대해 소개하는 논문이다. 

이미지의 획득과 편집에서 발생하는 JPEG 압축 Artifact에 초점을 맞춘다. 

 

이미지 위변조를 방지하기 위해서는 이를 detect하고 위조된 영역을 localization하는 것이 중요하다.

 

 

기본 가정은 다음과 같다.

조작된 영역의 이미지의 artifact 혹은 JPEG 압축 artifact는 원래 영역의 artifact와 통계적 특성이 다르다.

 

 

따라서 JPEG 압축 Artifact가 있는 Discrete Cosine Transforme(DCT) 계수를 사용한여 이미지 위변조의 localization을 가능하게 하는 CNN을 이용하는데, 이것이 Compression Artifact Tracing Network(CAT-Net)이다.

 

기존 CNN에서는 convolution이 DCT 계수에 필수적인 공간 좌표를 버리기 때문에 DCT 계수의 분포를 학습할 수 없었지만, CAT-Net은 학습 가능한 신경망을 설계하고 훈련한다.

 

 

 

 

https://arxiv.org/pdf/2108.12947v2.pdf

 

 

 

 

 

 

 


 

1. Image Acquisition Artifact

Artifact란 촬영하여 디지털 이미지를 획득할 때 생성되는 프로세스의 미세 트레이스

 

 

 

 

1.1) 대표적인 Artifact 종류

 

lens 수차, sensor pattern noise, color filter array로부터의 보간 트레이스,  color 보정, white balance 보정, 감마 보정에의한 후처리 등

 

 

 

 

1.2) Artifact  특징

 

Artifact는 이미지 획득 프로세스에 수반되는 장치 및 설정 의존적 지문으로 사람의 눈으로 구별하기 어렵다.

 

따라서 Artifact의 통계적 특성 변화를 포착하기 위한 규칙 기반, 수작업 기능 기반 및 데이터 기반 접근 방식이 연구되었다.

 

이러한 접근 방식을 이용하여 미세 획득 Artifact으로부터 조작된 영역을 탐지한다.

 

 

 

 

1.3) Image acquiring 과정 및 각 과정에서 생성된 Artifact

 

아래 그림은 디지털 카메라에서 이미지를 획득하는 세부 프로세스를 보여준다.

 

빨간색 용어: 특정 획득 프로세스에서 생성된 Aquisition Artifact

 

 

일련의 과정에서 위변조 감지에 사용할 수 있는 특징은 다음과 같다.

 

1. 렌즈 이상 (구형 수차, 필드 곡률, 렌즈 반경 왜곡, 색도 왜곡 등의 이미지 수차)

2. CFA 통과 후 발생한 센서 패턴 노이즈 (고정 패턴 및 광 응답 불균일성)

3. CFA 기반 센서의 경우 --> CFA 보간 artifact를 적용하여 색상 보간 프로세스(demosaicing) 활용

4. 후처리 artifact (색상 보정, 화이트 밸런스 조정, 감마 보정)

5. JPEG compression artifact

 

 

1~4은 image aquisition에 있어 미세 트레이스이고, 5는 디지털 영상의 대표적인 손실 압축 기법에서의 트레이스이다.

 

 

 

 

 


 

 

2. JPEG Compression Artifact

JPEG란 저장 공간을 줄이기 위해 사용되는 압축 표준

Discrete Cosine Transform(DCT) 도메인에 적용된 양자화 기반 압축으로 인해 미묘하지만 뚜렷한 Artifact를 남김

 

 

이미지 위변조 연구에서 이중 JPEG 검출 여부를 이용해 위변조의 유무를 판단한다.

 

 

다른 이미지에 붙여넣은 영역은 원본 이미지의 실제 영역과 비교하여 Y채널 DCT 계수의 통계적인 분포가 다를 수 있다.

 

원본 이미지 실제 영역은 처음에는 카메라에, 그리고 다시 위조의 일부로 이중으로 압축되어 히스토그램에 패턴을 남기지만, 조작된 영역은 단일 압축으로 패턴을 남긴다.

 

원본 이미지 실제 영역 조작된 영역
이중 압축 단일 압축

 

 

즉, 변조된 영역은 두 개의 히스토그램의 합으로 이루어진 부분이다.

 

 

 

 

 


 

 

3. Image Forensics Using Image Aquisition Artifacts and JPEG Compression Artifacts

 

다음 표는 이미지 조작 detection 및 localization 방법론을 정리한 표이다.

 

딥러닝 이용 유무에 따라 표가 나뉜다. 위는 딥러닝을 사용하지 않은 방법, 아래가 딥러닝을 사용한 방법이다.

 

 

딥러닝을 사용한 이후에는 신경망 기능을 생성하기 위해 DCT 히스토그램을 사용하는 이중 JPEG detect에 대한 연구도 진행되었다.  Wang과 Zhang이 이중 JPEG 검출을 위해 CNN에 입력으로 히스토그램 기능을 사용한 최초 사례이다. 

 

 

 

 

 


 

 

4. CAT-Net (Compression Artifact Tracing Network)

완전한 종단 간 훈련이 가능한 신경망 기반 이미지 조작 탐지기로,

RGB 및 DCT 도메인 정보를 모두 사용하여 위변조를 detect 및 localize

 

 RGB 도메인에서의 조작 탐지 DCT 도메인에서의 조작 탐지
네트워크가 sensor pattern noise, block artifact 및
기타 획득 artifact와 같은 세분화된 시각 artifact를 탐색 및 학습하는 데에 사용
JPEG 압축 artifact를 탐색하는 데에 사용

But, 컨볼루션이 DCT 계수에 중요한 공간 좌표를 버리기 때문에 DCT 계수를 CNN에 직접 공급하는 것 부적절!

--> DCT 볼륨 표현을 사용하여 DCT 계수의 분포를 학습 
(+ 이중 JPEG 탐지를 사용하는 새로운 사전 훈련 방법 제안)

 

 

 

 

4.1) CAT-Net main contribution summary

 

이미지 스플라이싱 감지를 위한 JPEG 압축 Artifact 추적 방법을 도입한 이전 연구를 확장하여,

'이미지 스플라이싱 위조 + 복사-이동 위조' 를 대상으로 하여 더 광범위한 비교 방법으로 실험을 수행하였다.

 

 

- DCT 볼륨 표현을 기반으로 압축 Artifact를 학습하는 CAT-Net은 이중 JPEG 압축을 감지하는 데에 히스토그램 표현을 사용하여 이미지 조작 detect 및 localize를 성공적으로 수행하였다.

 

- CAT-Net은 변조된 영역을 미세하게 localize하기 위해 공간 정보를 잃지 않고 분할 네트워크로 직접 DCT 계수를 받아들여 DCT 분포를 학습하는 최초의 신경망이다.

 

- CAT-Net은 처음으로 RGB 및 DCT 도메인을 공동으로 고려하여 조작된 영역을 localize한다. 

 

 

 

 

4.2) CAT-Net 구성도

 

CAT-Net은 RGB 스트림, DCT 스트림 및 융합 단계로 구성된다. 

 

  RGB 스트림 DCT 스트림
입력 RGB 이미지 DCT 계수,
JPEG 헤더에서 얻은 양자화 테이블
학습 sensor pattern noise,
EXIF 메타데이터,
차단 아티팩트,
이미지 aquistion 아티팩트
압축 아티팩트
구조 HRNet HRNet의 3-해상도 변

 

HRNet을 채택한 이유

- HRNet이 전체 프로세스에서 고해상도 표현을 유지하여 미세한 아티팩트를 잃지 않고 전체 이미지 캡처 가능
- HRNet feature map 크기가 JPEG 아티팩트를 추적하는 데에 적합 
- HRNet은 stride-2 컨볼루션을 사용하여 feature map을 downsampling하고 pooling layer는 사용하지 않아 미묘한 신호를 필요로 하는 작업에 적합 

 

 

 

CAT-Net 구성도와 basic block, fusion unit은 아래의 그림과 같다. 

컨볼루션 유닛은 대부분 4개의 연속된 basic block들로 구성되고, fusion unit은 다중 해상도 피처 맵을 일치시킨 후 합산하여 융합한다.

 

 

- 입력: RGB 픽셀, DCT 계수 및 양자화 테이블

- 출력: 변조되는 각 픽셀의 확률 맵

 

 

CNN이 DCT 계수의 분포를 학습할 수 있도록

DCT 볼륨 표현, 주파수별 연산, 그리드 정렬 자르기, 이중 JPEG detectiond으로부터의 transfer learning이 필요하다.

 

 

 

 

4.3) DCT 볼륨 표현

 

CNN은 변환 불변 속성을 가정하고 모든 계수를 동일하기 처리하기 때문에 DCT 계수에서 압축 아티팩트를 자동으로 학습할 수 없다. 3차원 사진 데이터를 1차원으로 평면화시켜야 하기 때문이다.

 

하지만 공간 좌표는 DCT 계수에 매우 중요하다. 따라서 DCT 계수 M을 이진 볼륨으로 변환하여 채널 인덱스에 0 또는 1로 표시된다. 변환함수는 다음과 같다.

- clip(·)는 배열 요소를 [-T, T] 간격으로 클립한다. T가 클수록 더 넓은 범위의 히스토그램 빈을 캡처할 수 있지만 더 많은 GPU 메모리가 필요하다. 본 논문에서는 실험적으로 T를 20으로 선택했다.

 

- abs(·)는 요소별 절대값을 취해 DCT 히스토그램의 대칭성에 쓰인다. 절대값을 취함으로써 발생하는 정보 손실은 무시할 수 있지만, 형상 맵 크기는 거의 절반이 된다.

 

 

JPEG 영상 조작 localizationn에서 DCT 볼륨 표현은 이중 JPEG 압축을 감지하는 DCT 히스토그램보다 더 정확하다.

DCT 볼륨 표현 DCT 히스토그램
픽셀 수준에서 예측에 적합한 이미지 해상도를 유지 정보를 패치 방식으로 병합하고 시각적 표현을 잃음

 

--> DCT 히스토그램 = DCT 볼륨 + global average pooling

 

따라서 DCT 볼륨은 위치 정보를 손실하기 전의 기능으로, 이 표현에 대한 컨볼루션은 더 풍부한 통계적 특징을 생성한다.

 

 

 

 

4.4) 주파수별 작업 

 

RGB 픽셀과 달리 DCT 계수는 위치에 따라 다른 주파수를 나타낸다. 

 

컨볼루션에서 주파수 성분을 혼합하기 때문에 모든 작업을 주파수 기준으로 수행해야 한다.

 

따라서 8X8 컨볼루션, 1X1 컨볼루션, 양자화 테이블 곱셈 및 주파수 성분 분리가 포함된다.

 

- 8X8 컨볼루션: DCT계수가 8X8 블록으로 구성되어 있기 때문에 동일한 주파수에서 작동

- 1X1 컨볼루션: 주파수 성분을 혼합하지 않기 때문에 유효

- 양자화 테이블: 네트워크가 압축 기록을 학습하는 데에 도움

 

 

본 논문에서는 JPEG 디코딩 프로세스를 모방한다.

 => 양자화 테이블은 피처 맵을 사용하여 요소별로 곱, 양자화 계수의 역양자화를 위해 사용된다. 

 

 

 

 

4.5) 그리드 정렬 자르기 

 

신경망은 고정 크기의 입력 이미지를 취한다.

 

이러한 제약에서 벗어나기 위해 기존에는 크기 조정 또는 무작위 자르기를 사용했다.

 

DCT 계수의 경우 위치 정보를 파괴하기 때문에 이 두 가지 방법을 사용할 수 없어 새로운 자르기 방법이 등장하는데,

그것이 그리드 정렬 방식이다.

 

 

입력 이미지 M과 crop 크기 hXw 가 주어지면, 기존의 자르기 이미지 h(M)은 다음과 같다.

 

여기서 그리드 정렬 자르기는 h, w, i ,j 가 8의 배수가 되어야 한다.

민약 전통적인 무작위 크롭이 사용된다면, 주파수 성분은 모든 채널에 분산될 것이고 후속 컨볼루션은 주파수를 구별할 수 없을 것이다. 

 

 

 

 

4.6) Non-JPEG 이미지 처리

 

JPEG 형식이 아니라 다른 많은 형식이 사용될 수 있는데, 비 JPEG 이미지에는 DCT 스트림에 필요한 DCT 계수 또는 양자화 테이블이 포함되지 않을 수 있다.

 

이 경우, CAT-Net은 DCT를 RGB 픽셀 값에 적용하여 DCT를 계산하고 양자화 테이블이 하나로 채워졌다고 가정하여 JPEG 품질 100으로 이미지를 초기에 압축함으로써 비 JPEG 이미지도 처리할 수 있게 한다.

 

 압축되지 않은 영상형식의 위조 영상은 최종 위조 이미지가 압축 없이 저장된다는 것을 의미하므로,

영상획득 중에 압축 아티팩트가 존재할 수 있다. 

따라서 DCT 계수를 분석하는 것이 유리할 수 있다.

 

그러나 다른 압축 형식이 있는 이미지의 위변조 단서를 분석하는 데에는 적합하지 않아

이 경우에는 RGB 스트림에 의존해야 한다. 

 

 

 

 

 


 

 

5. Double JPEG Detection

 

이중 JPEG 탐지는 주어진 JPEG 이미지가 JPEG로 한 번 또는 두 번 압축되었는지에 대한 여부를 확인하는 이진 분류 작업이다.

 

이 작업을 위해 이미지 압축 아티팩트를 분석하는 기능이 필요하다.

 

따라서 CAT-Net의 하위 네트워크인 DCT 스트림은 압축 아티팩트를 캡처하기 위해 이 작업에 대해 사전 훈련된다.

사전훈련 작업의 주요 목적은 이미지 조작 감지 네트워크를 보다 효율적으로 초기화하는 것이다.

 

 

<Evaluation Metrics>

Acc = (TP + TN) / (TP + TN + FP + FN)
TPR = TP / (TP + FN)
TNR = TN / (TN + FP)

* Acc: 정확도, TPR: True positive rate(이중압축o), TNR: True negative rate(이중압축x)
* TP: True positive, TN: True negative,  FP:False positive, FN: False negative

 

 

 

RGB 픽셀을 입력으로 하는 방법 압축 아티팩트 학습 불가
원시 DCT 픽셀을 입력으로 하는 방법 압축 아티팩트 학습 불가
DCT 히스토그램을 입력으로 하는 방법 압축 아티팩트 학습 가능
DCT 볼륨을 입력으로 하는 방법 압축 아티팩트 효과적 학습 가능

  => DCT 스트림이 JPEG 압축 아티팩트를 캡처하도록 잘 설계되었음을 확인

 

 

 

 

 


 

 

6. Image Manipulation Detection

 

 

 

 

728x90
LIST

'ㄴ 공부공부룸 > AI' 카테고리의 다른 글

하이퍼파라미터 튜닝  (0) 2022.12.06
[OCR] PixelLink  (0) 2022.12.06
[OCR] Text detection model research  (0) 2022.11.29