DOI QR코드

DOI QR Code

New feature and SVM based advanced classification of Computer Graphics and Photographic Images

노이즈 기반의 새로운 피쳐(feature)와 SVM에 기반한 개선된 CG(Computer Graphics) 및 PI(Photographic Images) 판별 방법

  • Jeong, DooWon (Center for Information Security Technologies(CIST), Korea University) ;
  • Chung, Hyunji (Center for Information Security Technologies(CIST), Korea University) ;
  • Hong, Ilyoung (Seoul Supreme Prosecutors' Office) ;
  • Lee, Sangjin (Center for Information Security Technologies(CIST), Korea University)
  • 정두원 (고려대학교 정보보호대학원) ;
  • 정현지 (고려대학교 정보보호대학원) ;
  • 홍일영 (서울중앙지방검찰청) ;
  • 이상진 (고려대학교 정보보호대학원)
  • Received : 2013.08.01
  • Accepted : 2014.03.21
  • Published : 2014.04.30

Abstract

As modern computer graphics technology has been developed, it is hard to discriminate computer graphics from photographic images with the naked eye. Advances in graphics technology has brought a lot of convenience to human, it has side effects such as image forgery, malicious edit and fraudulent means. In order to cope with such problems, studies of various algorithms using a feature that represents a characteristic of an image has been processed. In this paper, we verify directly the existing algorithm, and provide new features based a noise that represents the characteristics of the computer graphics well. And this paper introduces the method of using SVM(Support Vector Machine) with features proposed in previous research to improve the discrimination accuracy.

컴퓨터 그래픽 기술은 사람의 눈으로 컴퓨터 그래픽과 카메라로 촬영한 사진을 구분하기 힘들 정도로 발전하였다. 그래픽 기술의 진보는 인간에게 많은 편의를 주었으나 악의적인 조작 편집 및 사기 기법으로 사용되는 등 부작용도 수반하였다. 이에 대응하기 위해 이미지의 피쳐(feature)를 이용하여 컴퓨터 그래픽을 판별해내는 알고리즘에 대한 연구가 진행되고 있다. 본 논문에서는 기존에 제안된 알고리즘을 직접 검증해보고 컴퓨터 그래픽의 특성을 잘 나타내는 노이즈에 기반한 새로운 피쳐를 제안한다. 또한 선행 연구에서 제안한 피쳐와 함께 SVM(Support Vector Machine)을 활용하여 판별 정확도를 높이는 방법을 소개한다.

Keywords

I. 서론

컴퓨터 그래픽 기술의 발전에 따라 CG (Computer graphics)와 PI (Photographic images)와의 간극이 매우 좁아지고 있다. 발전하는 CG 기술은 광고, 포스터, 영화, 게임 등 다양한 분야의 시각 디자인 산업이 성장하는 데 밑거름이 되었으나, 악의적으로 사진을 조작하여 다른 이를 속이는 사기 행위 등에 사용되기도 한다. 따라서 PI와 CG이미지를 구별하는 일은 범죄 조사, 언론 보도, 이미지분석과 같은 분야에서 중요 이슈가 되고 있다.

사람의 눈으로 구분하기 힘들 정도로 기술력이 발달했지만 많은 연구자들이 PI와 CG 이미지 간에 존재하는 간극을 찾아 구별하는 다양한 방법을 제시하고 있다. 최근에 제시된 방법들은 다음 두 가지의 공통점이 존재한다.

첫째로, PI는 CG 이미지보다 노이즈가 많다는 점을 이용하여 두 이미지를 구분할 수 있는 고유한 피쳐 (feature)을 제안하고 있다. S. Dehnie, T. Sencar, and N. Memon[1]은 원본 이미지와 노이즈를 제거한 이미지간의 차이로 노이즈를 피쳐로 이용하였다. Y. Wang and P. Moulin[2]은 이미지로부터 얻은 diagonal subband coefficient의 히스토그램이 노이즈가 섞일수록 평평한 모양을 보인다는 특성을 활용하였다. R. Wu, X. Li, and B. Yang[3]은 CG 이미지가 14개의 차분 이미지 (Difference image)의 히스토그램을 피쳐로 이용하여 94%대의 높은 정확도를 보였다.

다음으로 제시된 방법들은 획득한 피쳐들의 값 자체로 구분하지 않고 P. Sutthiwan, X. Cai, Y. Q. Shi, and H. Zhang[4]에서 제시한 Markov process와 같은 통계적 기법을 활용하거나 FLD(Fisher Linear Discriminant Analysis), SVM(support vector machine) 등의 데이터마이닝 기법을 사용하여 정확도를 높인다.

본 논문에서는 기존 연구들과 마찬가지로 성능을 개선할 수 있는 피쳐을 찾은 후 데이터마이닝을 활용하여 판별 정확도를 높인다. 임의로 JPEG 포맷의 PI 및 CG 파일들을 수집한 후 판별력이 뛰어났던 [3]의 연구를 직접 검증해본다. 이를 바탕으로 기존 연구에서 제안한 피쳐보다 성능이 뛰어난 노이즈 기반의 새로운 피쳐를 제안하고 SVM을 적용하여 판별 정확도를 높여본다.

II. 기존 연구 검증

Ruoyu Wu et. al[3]은 컴퓨터 그래픽 이미지들과 카메라로 촬영한 실제 사진들을 히스토그램을 통해 식별하는 방법을 제안하였다. 제안된 방법은 4 종류의 마스크(수평, 수직, 대각선, 반대각선)를 이용하여 회선 처리하는 방법으로 1차 미분 및 2차 미분을 통해 14개의 차분이미지(Difference image)들을 얻고, 컴퓨터 그래픽 이미지의 차분이미지 히스토그램 그래프와 카메라로 촬영한 사진의 차분이미지 히스토그램 그래프 간 피쳐 차이를 통해 두 그룹을 구분하는 방법이다. CG의 경우 Fig.1.과 같이 차분이미지의 히스토그램 그래프는 가운데가 높은 정점을 이루고 그래프의 양쪽 날개가 대칭적으로 급격히 감소하는 특징을 보였다. 반면 PI의 경우 상대적으로 낮은 정점과 그래프 양쪽 날개의 완만한 감소를 보인다[3]. 저자들은 실험을 통해 히스토그램 정점으로부터 양쪽 날개의 7개 값을 피쳐로 이용하였을 때 가장 높은 판별율을 보인다고 하였으며, 두 그룹간의 구분을 위한 분석 방법으로 FLD를 이용하였다.

Fig.1. Histogram feature of the PI and CG [3]

본 논문에서는 기존에 제안된 방법과의 비교 검증을 위해 인터넷에서 컴퓨터 그래픽 이미지 및 카메라로 촬영한 사진을 각각 300개씩 임의로 수집한 후, 저자들이 제안한 방법을 그대로 구현하여 판별 정확도를 확인하였다.

실험에 사용된 이미지의 Red, Green, Blue 채널 별로 각각 차분이미지 14개를 얻은 후, 각 차분 이미지 히스토그램 값(k=7)을 피쳐로 이용하였을 때 판별 정확도는 Table 1.과 같았다. 카메라로 촬영된 사진의 식별 확률은 최고 72.9%였으며, 컴퓨터 그래픽에 대하여는 최고 60.6%였다.

Table 1. The result of accuracy verification toward the existing method

Ruoyu Wu et. al[3]이 제안한 방법은 비록 그 이전에 제안된 방법들에 비하여 판별 정확도를 향상시킨 것이기는 하지만, 차분 이미지 히스토그램 Bin 간의 값 차이만을 이용하는 단순한 방법이어서 training 및 test에 사용하는 이미지의 피쳐에 따라 판별 정확도에 큰 차이가 나타나게 된다.

III. 새로운 피쳐를 통한 CG와 PI 판별

3.1 기존 연구에서 제안한 피쳐

Ruoyu Wu et. al[3]이 제안한 방법은 1차 미분 및 2차 미분을 통해 얻은 차분 이미지의 히스토그램을 피쳐로 사용하는 것이다. CG로부터 추출한 차분 이미지의 히스토그램 그래프 모양이 PI로부터 추출한 그래프 모양보다 중앙 집중형인 점을 사용해 이미지를 구분하고자 했다.

제안한 방법은 비록 그 이전에 제안된 방법들에 비하여 판별 정확도를 향상시킨 것이기는 하지만, 차분 이미지 히스토그램 Bin 간의 값 차이만을 이용하는 단순한 방법이어서 training 및 test에 사용하는 이미지에 따라 판별 정확도에 큰 차이가 나타나게 된다. 논문[3]에서는 94%대의 높은 정확도를 보였으나 본 논문에서 실험한 결과는 60%대로 낮게 나온 이유다.

training용 이미지에 따라 큰 차이를 보이는 차분 이미지 히스토그램 Bin만을 피쳐로 사용하기보다 PI와 구분되는 CG만의 고유한 특성을 나타내는 피쳐가 추가하면 정확도를 높일 수 있을 것이다.

3.2 새롭게 제안하는 피쳐

실제 카메라로 촬영한 사진의 노이즈가 컴퓨터로 제작한 가상의 이미지보다 많다는 특징이 있다.[5] 본 논문에서는 PI에서 상대적으로 많이 발견되는 노이즈에 기반한 피쳐를 제안한다. 노이즈는 원본이미지와 디노이징 기법을 사용하여 추출된 이미지간의 차이로 나타낼 수 있다.

디노이징 기법에는 웨이블렛이라는 파형을 이용한 Selesnick[6]의 Wavelet Thresholding기법과 Zhang[9]이 제안한 PCA에 기반한 노이즈를 제거하는 기법 등이 존재한다. 본 논문에서는 알고리즘이 비교적 단순하여 연산 속도가 빠른 Wavelet을 이용한 노이즈 제거 기법을 사용한다.

Selesnick은 [6]을 통해서 엄격한 기준으로 노이즈를 제거하는 Hard-Threshold와 상대적으로 임계점이 높지 않은 Soft-Threshold 기법을 제안했다. Wavelet을 이용하여 노이즈를 추출하는 과정은 식 (1)처럼 표현할 수 있다.

Inoise= I-fWaveletThresholding(I)       (1)

fWaveletThresholding(I)는 Wavelet을 이용하여 노이즈를 제거한 이미지이다. 원본 이미지(I) 에서 fWaveletThresholding(I)를 제거하면 이미지의 노이즈인 Inoise을 추출할 수 있다. 노이즈가 존재하지 않다는 것은 원본 이미지(I)와 픽셀 값의 차이가 없다는 것을 의미하므로 0 값을 갖게 되고 그렇지 않다면 0이 아닌 다른 값을 갖게 된다.

CG와 PI에 존재하는 노이즈를 육안으로 확인해보기 위해 Inoise에서 0이 아닌 픽셀은 모두 255로 치환 하였다. 치환한 이미지를 Inoise′이라 하였을 때, PI와 CG의 Inoise′를 나타내보면 Fig.2.와 같이 차이를 확연하게 알 수 있다. Fig.2.에서 검은 부분은 픽셀이 0으로 노이즈가 없는 영역을 의미한다. CG에 비해 상대적으로 노이즈가 많은 PI에서는 검은 점이 적다는 것을 확인할 수 있다.

Fig.2. Four sample image and Inoise′ of each image (two images above : PI, two images below : CG, right four pictures : Inoise′ of the images)

PI와 CG의 Inoise′에서 픽셀이 0인 점의 비율은 식 (2)로 나타낼 수 있다. 이 비율을 피쳐 fnoise′라고 표현한다. PI와 CG의 샘플 이미지 300개로부터 피쳐를 추출하여 그래프로 나타내면 Fig.3.과 같다. 그래프에서 확인할 수 있듯 CG의 fnoise′가 PI의 fnoise′보다 전체적으로 높다는 것을 알 수 있다.

Fig.3. The graph of the feature fnoise′ extracted from 300 sample images

#(2)

그러나 Fig.3.처럼 fnoise′는 단순히 값이 0인 점들의 비를 나타낸 것으로 PI의 fnoise′가 CG의 fnoise′보다 큰 경우도 있으므로 일괄적으로 임계치를 설정하여 PI와 CG를 구분하면 FP(False Positive)과 FN(False Negative)의 위험도가 높아지게 된다.

fnoise′을 보완하기 위해 단순한 비를 피쳐로 사용하기보단, Fig.2.에서 확인할 수 있듯이 CG는 Inoise′ 가 PI와는 다르게 지역적으로 뭉쳐있다는 점을 활용한다. 이러한 특징을 피쳐로 사용하기 위해 Inoise′를 수평 차분, 수평-수직 차분, 수평-수직-대각선 차분 이미지로 변환한다. 식 (3)은 한 예로 수평 차분 이미지 피쳐를 나타낸 것이다. Inoise′ *fh는 Inoise′의 수평 차분 이미지를 의미하고, fnoise′*fh는 Inoise′*fh에서 픽셀이 0인 것들의 비율을 의미한다.

#(3)

마찬가지로 fnoise′*fh*fv는 Inoise′의 수평-수직 차분 이미지에서의 0의 비율, fnoise′*fh*fv*fd는 수평수직-대각선 차분 이미지에서의 0의 비율을 의미한다.

차분 이미지의 피쳐가 fnoise′보다 좋은 성능을 갖는지 측정해보기 위해 간단한 실험을 수행하였다. 300개의 샘플 CG와 PI로부터 피쳐를 추출한 다음 각 피쳐들간의 수치 비교를 하였다. PI의 피쳐가 CG 의 피쳐보다 높은 경우를 이상치로 간주하여 그 비율을 구한 것을 Table 2.로 나타내었다. 실험 결과에서 확인할 수 있듯이, 차분이미지로 변환하여 추출한 피쳐가 더 좋은 성능을 보였다.

Table 2. Verification for feature performance of differential image

따라서 본 논문에서는 수평 차분, 수평-수직 차분, 수평-수직-대각선 차분 이미지 피쳐(fnoise′*fh, fnoise′*fh*fv, fnoise′*fh*fv*fd)를 이용하여 CG 판별에 사용하였다.

3.3 새로운 피쳐에 기반한 판별

새로운 피쳐로 제안한 fnoise′*fh와 fnoise′*fh*fv, fnoise′*fh*fv*fd의 판별력을 알아보기 위해 2장의 실험과 마찬가지로 PI와 CG 이미지 각 300개를 대상으로 수행한다. 우선 총 600개의 이미지에 대한 피쳐 값을 추출한다. PI와 CG에 대한 피쳐값을 비교하여 FP과 FN을 최소화하고 정확도를 최대화하는 임계치를 찾는다.

Table 3. Verification of identification accuracy based on the new feature

임계치를 0.0008로 설정하였을 때 CG의 식별 확률은 70%, PI의 식별확률은 75.3%로 구해졌고 평균 정확도는 73.1%로 기존 연구결과인 65%보다 정확도가 높았다.

실험 결과 노이즈에 기반한 새로운 피쳐인 fnoise′*fh와 fnoise′*fh*fv, fnoise′*fh*fv*fd는 이전에 제안한 피쳐보다 좋은 성능을 보인다.

IV. SVM을 이용한 판별

본 논문에서 CG와 PI 판별의 정확도를 높이기 위해 Nitin Khanna이 제안한 것처럼 SVM을 사용하였다[7].

4.1 SVM 적용

SVM 학습은 각 이미지로부터 추출한 피쳐들을 사용하다. 본 논문에서는 기존의 연구[3]에서 제안한 피쳐인 Red, Green, Blue 채널별로 얻은 14개 차분 이미지 히스토그램 값(k=7)들과 본 논문에서 새롭게 제안하는 피쳐들을 모두 활용하는 방식을 제안한다. SVM 학습에 사용할 커널함수는 다음과 같다.

k(Xj(Ii), yi) = Xj(Ii)Tyi +c (3)

Xj =# fnoise′*fh, j = 1

fnoise′*fh*fv, j = 2

fnoise′*fh*fv*fd, j = 3

fRuoyuWu′s feature, j = 4,5,...,115

Xj는 이미지의 각 feature 함수를 의미하며 총 115개의 피쳐 함수가 존재한다. 1~3까지는 본 논문에서 제안하는 feature이며 나머지 114개의 피쳐는 기존의 연구[3]에서 제안한 피쳐를 활용한다. Ii는 각각 i번째의 이미지 yi는 i번째 이미지가 PI라면 1로, CG라면 –1의 값을 부여한다.

또한, 학습 이미지의 규모를 달리 하여, 판별 정확도에 미치는 영향을 분석해본다. 학습 이미지는 기존 연구 검증을 위해 2장에서 사용한 CG와 PI 각 300개를 사용하고, 판별 실험용 이미지는 추가로 인터넷에서 수집한 CG와 PI 각 300여 개의 이미지를 사용한다.

4.2 실험용 데이터 규모에 따른 정확도 측정

학습용 이미지의 규모에 따른 정확도를 측정하기 위하여 Table 4.와 같이 실험을 진행하였다. SVM 적용 전/후의 정확도가 높아지는지, 높아진다면 얼마나 높아지는지 실험을 통해 확인하였다. 또한, 기존 연구와의 성능을 비교하기 위하여 [3]에서 제안한 차분이미지 히스토그램을 피처로 활용한 FLD 기법과의 정확도 비교 분석을 진행하였다.

Table 4. Comparison between before and after applying SVM

실험 결과 Table 4.에서 확인할 수 있듯이 SVM을 적용했을 때, 학습 이미지의 규모와 상관없이 정확도가 상승하였다. 기존 논문 [3]의 방법을 적용하였을 때는 평균 67.35%의 정확도를 보였다. Threshold 만을 사용하면 평균 70.33%의 정확도를 보여 [3]의 방법보다 약 3% 정도 판별도가 뛰어난 것을 확인할 수 있었다. SVM을 적용할 경우 평균 89.71%의 정확도를 보여 [3]의 방법론보다 20% 이상 향상된 결과를 보였다. 또한 학습 이미지 크기에 따른 정확도의 표준편차는 2.29로 기존 연구의 4.61보다 적은 수치가 나타났다. 실험 결과 본 연구에서 제안하는 피쳐는 기존 피쳐들보다 CG만의 특성을 잘 반영하여 테스트 이미지에 따라 정확도의 차이가 적은 것으로 나타났으며 CG와 PI 판별 시에는 SVM을 활용할 때 좋은 성능을 보여주는 것을 알 수 있다.

V. 결론 및 향후 연구

본 논문에서는 컴퓨터 그래픽의 특성을 잘 보여주는 노이즈 기반의 새로운 피쳐를 소개하였다. 기존 연구에서 제안한 피쳐가 학습용 이미지에 따라 그 정확도가 크게 차이가 나는데 반하여 본 논문에서 제안한 피쳐는 그 편차가 적어 CG 판별을 위한 피쳐로서 활용할 수 있다는 것을 실험을 통해 증명하였다. 또한 새로운 피쳐와 기존 연구에서 제안한 피쳐를 모두 고려한 SVM을 사용하여 보다 개선된 판별 알고리즘을 개발하였다. 제안한 알고리즘은 사진식별, 컴퓨터 그래픽을 이용한 이미지 위조, 악의적 편집 등을 조사할 시 유용하게 쓰일 것으로 기대된다.

향후 컴퓨터 그래픽을 이용하여 국부적인 위조를 행한 경우, 그 위조된 이미지를 탐지하고 위조가 행해진 위치를 알려주는 알고리즘에 대한 연구가 필요하다.

References

  1. S. Dehnie, T. Sencar, and N. Memon, "Digital image forensics for identifying computer generated and digital camera images," Proceedings of the 2006 IEEE International Conference on Image Processing, pp. 2313-2316, Oct. 2006.
  2. Y. Wang and P. Moulin, "On discrimination between photorealistic and photographic images," Proceedings of the 2006 IEEE international conference on acoustics, speech and signal processing, vol. 2, pp. II-161-II-164, May 2006.
  3. R. Wu, X. Li, and B. Yang, "Identifying computer generated graphics VIA histogram features," Proceedings of the 2011 IEEE International Conference on Image Processing, pp. 1933-1936, Sept. 2011.
  4. P. Sutthiwan, X. Cai, Y. Q. Shi, and H. Zhang, "Computer graphics classification based on markov process model and boosting feature selection technique," Proceedings of the 2009 IEEE International Conference on Image Processing, pp. 2913-2916, Nov. 2009.
  5. T.-T. Ng and S.-F. Chang, "Discrimination of computer synthesized or recaptured images from real images," Digital Image Forensics, pp. 275-309, 2013.
  6. I. W. Selesnick, "The double-density dual- tree DWT," Signal Processing, IEEE Transactions on, vol. 52, no. 5, pp. 1304-1314, May 2004. https://doi.org/10.1109/TSP.2004.826174
  7. N. Khanna, G.T.C Chiu, J.P Allebach and E.J. Delp, "Forensic techniques for classifying scanner, computer generated and digital camera images", Proceedings of the 2008 IEEE international conference on acoustics, speech and signal processing, pp. 1653-1656, April 2008.
  8. S.Lyu and H.Farid, "How realistic is photorealistic?", Signal Processing, IEEE Transactions on, vol. 53, no. 2, pp. 845-850, Feb. 2005 https://doi.org/10.1109/TSP.2004.839896
  9. L. Zhang, R. Lukac, X. Wu, and D. Zhang, "PCA-based spatially adaptive denoising of CFA images for single-sensor digital cameras," Image Processing, IEEE Transactions on, vol. 18, no. 4, pp. 797-812, April 2009. https://doi.org/10.1109/TIP.2008.2011384