KR102195763B1 - Method and apparatus for processing image - Google Patents
Method and apparatus for processing image Download PDFInfo
- Publication number
- KR102195763B1 KR102195763B1 KR1020190008755A KR20190008755A KR102195763B1 KR 102195763 B1 KR102195763 B1 KR 102195763B1 KR 1020190008755 A KR1020190008755 A KR 1020190008755A KR 20190008755 A KR20190008755 A KR 20190008755A KR 102195763 B1 KR102195763 B1 KR 102195763B1
- Authority
- KR
- South Korea
- Prior art keywords
- patch
- cluster
- clustering
- image
- manipulation
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 21
- 238000003672 processing method Methods 0.000 claims abstract description 13
- 238000001514 detection method Methods 0.000 claims description 16
- 230000002159 abnormal effect Effects 0.000 claims description 12
- 238000003064 k means clustering Methods 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 4
- 238000000605 extraction Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
개시된 이미지 처리 장치에 의해 수행되는 이미지 처리 방법은 픽셀 도메인의 이미지를 DCT 도메인으로 변환하여 복수의 패치로 나눈 후 패치별로 DCT 히스토그램 피쳐를 추출하는 단계, DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행하는 단계, 클러스터링된 조작 패치를 이미지의 조작 위치로서 탐지하는 단계를 포함한다.The image processing method performed by the disclosed image processing apparatus includes converting an image of a pixel domain into a DCT domain, dividing it into a plurality of patches, and then extracting a DCT histogram feature for each patch. And performing clustering divided into manipulation patches, and detecting the clustered manipulation patches as manipulation positions of the image.
Description
본 발명은 이미지 처리 방법 및 장치에 관한 것으로, 더욱 구체적으로는 조작이 의심되는 이미지에 대하여 조작 위치를 판별하는 이미지 처리 방법 및 장치에 관한 것이다.The present invention relates to an image processing method and apparatus, and more particularly, to an image processing method and apparatus for determining a manipulation position with respect to an image suspected of manipulation.
JPEG 포맷의 이미지 파일이나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지 파일에 대하여 조작 위치를 탐지하는 방법으로서 더블 JPEG 기술(Mauro Barni, Luca Bondi, Nicol`o Bonettini, Paolo Bestagini, Andrea Costanzo, Marco Maggini, Benedetta Tondi, and Stefano Tubaro, "Aligned and non-aligned double jpeg detection using convolutional neural networks,"Journal of Visual Communication and Image Representation, vol. 49, pp. 153-163, 2017.)이 있다. 더블 JPEG 기술은 이미지가 JPEG으로 한번 또는 두 번 압축되는지 판별하는 기술로서, 일반 JPEG 이미지를 이미지 편집 프로그램으로 편집 후 저장하게 되면, 더블 JPEG 흔적이 남는다는 점을 이용하여 조작을 탐지하는 기술이다. 그러나, 이러한 더블 JPEG 기술은 조작 위치 판별을 위해 더블 JPEG 탐지를 위한 데이터를 준비한 후 더블/싱글 분류기로 학습을 하여야만 조작 위치를 판별할 수 있는 한계가 있다.Double JPEG technology (Mauro Barni, Luca Bondi, Nicol`o Bonettini, Paolo Bestagini, Andrea Costanzo, Marco Maggini, Benedetta) as a method of detecting the manipulated position for image files in JPEG format or image files in other formats but past JPEG format. Tondi, and Stefano Tubaro, "Aligned and non-aligned double jpeg detection using convolutional neural networks," Journal of Visual Communication and Image Representation, vol. 49, pp. 153-163, 2017.). Double JPEG technology is a technology that determines whether an image is compressed once or twice as a JPEG, and is a technology that detects manipulation by taking advantage of the fact that when a general JPEG image is edited and saved with an image editing program, a double JPEG trace remains. However, such double JPEG technology has a limitation in determining the manipulation location only after preparing data for double JPEG detection to determine the manipulation location and then learning with a double/single classifier.
이러한 더블 JPEG 기술에 따른 학습 기반 분류기의 한계를 없애기 위해 조작이 의심되는 이미지로만 조작 위치를 판별하는 방안(Davide Cozzolino and Luisa Verdoliva, "Singleimage splicing localization through autoencoder-based anomaly detection," in Information Forensics and Security (WIFS), 2016 IEEE International Workshop on. IEEE, 2016, pp. 1-6.)를 고려할 수 있다. 그러나 조작이 의심되는 이미지로만 조작 위치를 판별하는 방안은 스플라이싱(splicing)을 통한 조작에 대해서만 조작 위치를 판별할 수 있다.In order to remove the limitations of the learning-based classifier according to this double JPEG technology, a method of determining the manipulation location only with images that are suspicious of manipulation (Davide Cozzolino and Luisa Verdoliva, "Singleimage splicing localization through autoencoder-based anomaly detection," in Information Forensics and Security. (WIFS), 2016 IEEE International Workshop on.IEEE, 2016, pp. 1-6.) can be considered. However, the method of determining the manipulated position only with an image that is suspicious of manipulation can determine the manipulated position only for manipulation through splicing.
본 발명의 실시예에 의하면, JPEG 포맷의 이미지 파일이나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지 파일에 대하여 붙여넣기(copy-move) 및 스플라이싱 등을 포함하는 각종 조작 행위를 통한 이미지의 조작 위치를 탐지할 수 있는 이미지 처리 방법 및 장치를 제공한다.According to an embodiment of the present invention, image files in JPEG format or image files in other formats but past JPEG format are manipulated through various manipulation actions including copy-move and splicing. It provides an image processing method and apparatus capable of detecting.
본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved of the present invention is not limited to those mentioned above, and another problem to be solved that is not mentioned will be clearly understood by those of ordinary skill in the art from the following description.
본 발명의 일 관점에 따라 이미지 처리 장치에 의해 수행되는 이미지 처리 방법은, 픽셀 도메인의 이미지를 DCT(Discrete Cosine Transform) 도메인으로 변환하여 복수의 패치로 나눈 후 패치별로 DCT 히스토그램 피쳐를 추출하는 단계와, 상기 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행하는 단계와, 상기 조작 패치를 상기 이미지의 조작 위치로서 탐지하는 단계를 포함할 수 있다.An image processing method performed by an image processing apparatus according to an aspect of the present invention includes the steps of converting an image of a pixel domain into a Discrete Cosine Transform (DCT) domain, dividing it into a plurality of patches, and extracting a DCT histogram feature for each patch; And performing clustering for dividing patches from which the DCT histogram feature is extracted into a manipulated patch and a non-manipulated patch, and detecting the manipulated patch as a manipulated position of the image.
여기서, 상기 클러스터링을 수행하는 단계는, 디스턴스 메트릭(distance metric)으로서 유클리드 디스턴스(Euclidean distance)를 사용하고, K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택할 수 있다.Here, in the performing of the clustering, a Euclidean distance is used as a distance metric, and the K-means clustering technique is repeatedly performed a plurality of times to select clustering having the smallest distance.
상기 조작 위치로서 탐지하는 단계는, 상기 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 나타낼 수 있다.The detecting as the manipulation position may indicate a normal state or an abnormal state of a result of the clustering.
상기 정상 상태 또는 상기 비정상 상태를, 각 DCT 히스토그램 피쳐의 중심값, 상기 조작 패치 클러스터의 중심값과 상기 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안(median) 거리값에 기초하여 나타낼 수 있다.The steady state or the abnormal state is based on the center value of each DCT histogram feature, the distance between the center value of the manipulated patch cluster and the center value of the unmanipulated patch cluster, and the center value and median distance value in each cluster. Can be represented by
본 발명의 다른 관점에 따른 이미지 처리 장치는, 픽셀 도메인의 이미지를 DCT 도메인으로 변환하여 복수의 패치로 나눈 후 패치별로 DCT 히스토그램 피쳐를 추출하는 피쳐 추출부와, 상기 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행하는 클러스터부와, 상기 조작 패치를 상기 이미지의 조작 위치로서 탐지하는 위치 탐지부를 포함할 수 있다.An image processing apparatus according to another aspect of the present invention includes a feature extraction unit for converting an image of a pixel domain into a DCT domain, dividing it into a plurality of patches, and extracting a DCT histogram feature for each patch, and the patches from which the DCT histogram feature is extracted. It may include a cluster unit that performs clustering divided into a manipulated patch and a non-manipulated patch, and a location detection unit that detects the manipulated patch as a manipulated position of the image.
여기서, 상기 클러스터부는, 디스턴스 메트릭으로서 유클리드 디스턴스를 사용하고, K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택할 수 있다.Here, the cluster unit may select clustering having the smallest distance by using Euclid distance as a distance metric and repeatedly performing the K-means clustering technique a plurality of times.
상기 위치 탐지부는, 상기 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 나타낼 수 있다.The location detector may indicate a normal state or an abnormal state of a result of the clustering.
상기 정상 상태 또는 상기 비정상 상태를, 각 DCT 히스토그램 피쳐의 중심값, 상기 조작 패치 클러스터의 중심값과 상기 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안 거리값에 기초하여 나타낼 수 있다.The normal state or the abnormal state can be expressed based on the center value of each DCT histogram feature, the distance between the center value of the manipulated patch cluster and the center value of the unmanipulated patch cluster, and the center value and median distance value within each cluster. have.
본 발명의 실시예에 의하면, JPEG 포맷의 이미지 파일이나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지 파일에 대하여 붙여넣기 및 스플라이싱 등을 포함하는 각종 조작 행위를 통한 이미지의 조작 위치를 탐지할 수 있다.According to an embodiment of the present invention, it is possible to detect the manipulation position of an image through various manipulation actions including pasting and splicing with respect to an image file in a JPEG format or an image file in another format but past JPEG format. .
도 1은 본 발명의 일 실시예에 따른 이미지 처리 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 이미지 처리 장치에 의해 수행되는 이미지 처리 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 이미지 처리 방법에 따른 이미지의 변화 과정을 보인 상태도이다.1 is a configuration diagram of an image processing apparatus according to an embodiment of the present invention.
2 is a flowchart illustrating an image processing method performed by an image processing apparatus according to an embodiment of the present invention.
3 is a state diagram showing a process of changing an image according to an image processing method according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various forms, and only these embodiments make the disclosure of the present invention complete, and those skilled in the art to which the present invention pertains. It is provided to fully inform the person of the scope of the invention, and the scope of the invention is only defined by the claims.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, detailed descriptions of known functions or configurations will be omitted except when actually necessary in describing the embodiments of the present invention. In addition, terms to be described later are terms defined in consideration of functions in an embodiment of the present invention, which may vary according to the intention or custom of users or operators. Therefore, the definition should be made based on the contents throughout this specification.
도 1은 본 발명의 일 실시예에 따른 이미지 처리 장치(100)의 구성도이다.1 is a configuration diagram of an
도 1에 나타낸 바와 같이 본 발명의 일 실시예에 따른 이미지 처리 장치(100)는 피쳐 추출부(110), 클러스터부(120) 및 위치 탐지부(130)를 포함할 수 있다. 예를 들어, 이미지 처리 장치(100)와 이를 구성할 수 있는 피쳐 추출부(110), 클러스터부(120) 및 위치 탐지부(130)는 GPU(Graphics Processing Unit)로 구현할 수 있다.As shown in FIG. 1, the
피쳐 추출부(110)는 픽셀 도메인의 이미지를 DCT(Discrete Cosine Transform) 도메인으로 변환하여 복수의 패치(patch)로 나눈 후 패치별로 DCT 히스토그램 피쳐(feature)를 추출할 수 있다.The
클러스터부(120)는 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행할 수 있다. 예를 들어, 클러스터부(120)는 디스턴스 메트릭(distance metric)으로서 유클리드 디스턴스(Euclidean distance)를 사용하고, K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택할 수 있다.The
위치 탐지부(130)는 조작 패치를 붙여넣기 또는 스플라이싱 등을 포함하는 각종 조작 행위를 통한 이미지의 조작 위치로서 탐지할 수 있다. 그리고, 위치 탐지부(130)는 클러스터부(120)에 의한 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 식별 가능하게 나타낼 수 있다. 예를 들어, 위치 탐지부(130)는 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 각 DCT 히스토그램 피쳐의 중심값, 조작 패치 클러스터의 중심값과 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안(median) 거리값에 기초하여 나타낼 수 있다.The
도 2는 본 발명의 일 실시예에 따른 이미지 처리 장치에 의해 수행되는 이미지 처리 방법을 설명하기 위한 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 이미지 처리 방법에 따른 이미지의 변화 과정을 보인 상태도이다.2 is a flowchart illustrating an image processing method performed by an image processing apparatus according to an embodiment of the present invention, and FIG. 3 is a flowchart illustrating a process of changing an image according to an image processing method according to an embodiment of the present invention. It is a state diagram.
이하, 도 1 내지 도 3을 참조하여 본 발명의 일 실시예에 따른 이미지 처리 장치(100)에 의해 수행되는 이미지 처리 방법에 대해 자세히 살펴보기로 한다.Hereinafter, an image processing method performed by the
먼저, JPEG 포맷의 이미지 파일이나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지 파일이 이미지 처리 장치(100)의 피쳐 추출부(110)에 입력된다.First, an image file in a JPEG format or an image file in another format but passed through the JPEG format in the past is input to the
그러면, 피쳐 추출부(110)는 입력된 이미지 파일로부터 DCT 히스토그램 피쳐를 추출한다.Then, the
이처럼, 픽셀 도메인을 DCT 도메인으로 변경하는 이유는 JPEG 흔적이 픽셀 도메인보다 DCT 도메인에 상대적으로 더 잘 남기 때문이다. 그런데, DCT 히스토그램을 추출하는 이미지 처리를 GPU보다 ALU(Arithmetic Logic Unit)의 개수가 상대적으로 적은 CPU(Central Processing Unit)에서 처리하면 장시간이 소요된다. 한편, 이미지 처리 장치(100) 및 피쳐 추출부(110)를 GPU로 구현한 경우에 DCT 히스토그램을 추출하는 이미지 처리 시간을 단축하기 위해 전처리 과정을 수행할 필요가 있다.As such, the reason for changing the pixel domain to the DCT domain is that JPEG traces remain relatively better in the DCT domain than in the pixel domain. However, it takes a long time if the image processing for extracting the DCT histogram is processed by a CPU (Central Processing Unit), which has a relatively smaller number of Arithmetic Logic Units (ALUs) than GPUs. Meanwhile, when the
이러한 전처리 과정에 대해 살펴보면, 피쳐 추출부(110)는 입력된 픽셀 도메인의 이미지를 DCT 도메인으로 변환한 후 복수의 패치로 나눈다. 예를 들어, 피쳐 추출부(110)는 입력된 이미지 파일에 대하여 YCbCr로 변환한 후 Y채널만을 사용하여 64×64 패치로 나눌 수 있다.Referring to this pre-processing process, the
그리고, 피쳐 추출부(110)는 수학식 1과 같이 각 패치별로 이미지 I와 8×8×64 블록의 DCT 기저 함수 basisc1,c2의 2D 컨볼루션(convolution) 연산을 통해 DCT 계수(coefficient) Dc1,c2를 추출한다.In addition, the
이후, 피쳐 추출부(110)는 히스토그램의 빈(bin) 바운더리(boundary) 값 b의 리스트를 이용하여 수학식 2와 같이 각각의 빈 바운더리마다 누적 분포 함수(Cumulative Density Function, CDF) Bc1,c2 를 계산한다.Thereafter, the
여기서, 는 (Dc1,c2-b)의 값을 증폭하는데 사용된 이득이고, 이 값을 0 또는 1로 바꿔서 시그모이드(sigmoid) 함수를 계산한다.here, Is the gain used to amplify the value of (D c1,c2 -b) , and converts this value to 0 or 1 to calculate the sigmoid function.
다음으로, 피쳐 추출부(110)는 수학식 3과 같이 히스토그램의 빈(bin)별로 [1, -1]을 컨볼루션하여 누적 분포 함수를 미분함으로써 히스토그램 피쳐 Zc1,c2 을 획득한다.Next, the
여기서, 빈 레인지(range)는 [-5,5]로 설정하여, 이미지 파일의 Y채널 64×64 패치당 10×63 차원의 피쳐가 추출된다.Here, the empty range is set to [-5,5], and features of 10x63 dimensions per 64x64 patch of Y channel of the image file are extracted.
다음으로, 이미지 처리 장치(100)의 클러스터부(120)는 단계 S210를 통해 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행함으로써, JPEG 포맷의 이미지 파일이나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지 파일에 대하여 조작 위치를 판별할 수 있도록 한다. 예를 들어, 클러스터부(120)는 데이터 포인트를 K개의 그룹으로 묶는 K-means(KM) 클러스터링 기법을 수행하여 조작 패치 클러스터와 미조작 패치 클러스터로 구분할 수 있다. 예컨대, 클러스터부(120)는 디스턴스 메트릭으로서 유클리드 디스턴스를 사용할 수 있다. 아울러, 클러스터부(120)는 K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택할 수도 있다. 예컨대, 클러스터부(120)는 로컬 옵티마(local optima)를 피하기 위해 K-means 클러스터링 기법을 5회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택할 수 있다.Next, the
이로써, 이미지 처리 장치(100)의 위치 탐지부(130)는 클러스터부(120)에 의해 클러스터링된 조작 패치 클러스터를 붙여넣기 및 스플라이싱 등을 포함하는 각종 조작 행위를 통한 조작 위치로서 탐지한다. 한편, 조작이 의심되는 이미지에 대하여 단계 S220을 통해 수행한 클러스터링 결과 중 분류 오류가 포함되어 있을 수 있다. 따라서, 이미지 처리 장치(100)의 위치 탐지부(130)는 단계 S220에 의한 클러스터링 결과가 정상인지 비정상인지를 확인하여 식별 가능하게 나타낼 수 있다.Accordingly, the
단계 S220의 클러스터링 과정에 의해 클러스터링이 잘된 경우라면 클러스터들 간의 거리가 멀고, 하나의 클래스를 두 개로 클러스터링한 경우는 클러스터들 간의 거리가 짧은 특성이 있다. 이러한 특성을 활용하여 위치 탐지부(130)는 단계 S220의 클러스터링 결과를 수학식 4를 이용하여 매트릭(metric) T 값으로 나타낼 수 있다.When clustering is well performed by the clustering process in step S220, the distance between clusters is long, and when one class is clustered into two, the distance between clusters is short. Using this characteristic, the
여기서, med(·)는 메디안 연산자이며, d(x,y)는 x와 y 사이의 유클리드 디스턴스 제곱값이고, f는 피쳐이며, P는 미조작 패치 클러스터의 피쳐 세트이고, M은 조작 패치 클러스터의 피쳐 세트이고, cp는 미조작 클러스터의 중심값이며, cm은 조작 클러스터의 중심값, call은 모든 클러스터의 중심값이다.Where med(·) is the median operator, d(x,y) is the squared Euclidean distance between x and y, f is the feature, P is the feature set of the unmanipulated patch cluster, and M is the manipulated patch cluster Is the feature set of, c p is the center value of the unmanipulated cluster, c m is the center value of the manipulated cluster, and c all is the center value of all clusters.
이처럼, 위치 탐지부(130)는 단계 S220에 의한 클러스터링 결과의 정상 상태 또는 비정상 상태를, 각 DCT 히스토그램 피쳐의 중심값, 조작 패치 클러스터의 중심값과 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안 거리값에 기초하여 나타낼 수 있다.As such, the
지금까지 설명한 바와 같은 본 발명의 일 실시예에 의하면, JPEG 포맷의 이미지나 다른 포맷이지만 과거 JPEG 포맷을 거쳤던 이미지를 복수의 패치로 나눈 후에 DCT 히스토그램 피쳐를 추출하고, DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행함으로써, 붙여넣기 및 스플라이싱 등을 포함하는 각종 조작 행위를 통한 이미지의 조작 위치를 탐지할 수 있다.According to an embodiment of the present invention as described so far, after dividing an image in a JPEG format or an image in another format but passing through the past JPEG format into a plurality of patches, DCT histogram features are extracted, and the DCT histogram features are extracted. By performing clustering that is divided into a manipulated patch and a non-manipulated patch, it is possible to detect the manipulation position of the image through various manipulation actions including pasting and splicing.
본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.Combinations of each block in the block diagram attached to the present invention and each step in the flowchart may be performed by computer program instructions. Since these computer program instructions can be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, the instructions executed by the processor of the computer or other programmable data processing equipment are shown in each block or flow chart of the block diagram. Each step creates a means to perform the functions described. These computer program instructions can also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular way, so that the computer-usable or computer-readable memory It is also possible to produce an article of manufacture in which the instructions stored in the block diagram contain instruction means for performing the functions described in each block or flow chart. Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operating steps are performed on a computer or other programmable data processing equipment to create a computer-executable process to create a computer or other programmable data processing equipment. It is also possible for the instructions to perform the processing equipment to provide steps for performing the functions described in each block of the block diagram and each step of the flowchart.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or each step may represent a module, segment, or part of code comprising one or more executable instructions for executing the specified logical function(s). In addition, it should be noted that in some alternative embodiments, functions mentioned in blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially simultaneously, or the blocks or steps may sometimes be performed in the reverse order depending on the corresponding function.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those of ordinary skill in the art to which the present invention pertains will be able to make various modifications and variations without departing from the essential characteristics of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain the technical idea, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.
100 : 이미지 처리 장치
110 : 피쳐 추출부
120 : 클러스터부
130 : 위치 탐지부100: image processing unit
110: feature extraction unit
120: cluster unit
130: location detection unit
Claims (8)
픽셀 도메인의 이미지를 DCT(Discrete Cosine Transform) 도메인으로 변환하여 복수의 패치로 나눈 후 패치별로 DCT 히스토그램 피쳐를 추출하는 단계와,
상기 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행하는 단계와,
상기 조작 패치를 상기 이미지의 조작 위치로서 탐지하는 단계를 포함하고,
상기 조작 위치로서 탐지하는 단계는, 상기 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 나타내되, 상기 정상 상태 또는 상기 비정상 상태를, 각 DCT 히스토그램 피쳐의 중심값, 상기 조작 패치 클러스터의 중심값과 상기 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안(median) 거리값에 기초하여 나타내는
이미지 처리 방법.An image processing method performed by an image processing device, comprising:
Converting an image in the pixel domain into a DCT (Discrete Cosine Transform) domain, dividing it into a plurality of patches, and extracting a DCT histogram feature for each patch;
Clustering the patches from which the DCT histogram feature is extracted into a manipulated patch and a non-manipulated patch,
Detecting the manipulation patch as a manipulation location of the image,
The detecting as the manipulation position may include indicating a normal state or an abnormal state of a result of the clustering, and indicating the normal state or the abnormal state, a center value of each DCT histogram feature, a center value of the manipulation patch cluster, and the Based on the distance of the center value of the unmanipulated patch cluster, the center value and the median distance value within each cluster
Image processing method.
상기 클러스터링을 수행하는 단계는, 디스턴스 메트릭(distance metric)으로서 유클리드 디스턴스(Euclidean distance)를 사용하고, K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택하는
이미지 처리 방법.The method of claim 1,
In the performing of the clustering, a Euclidean distance is used as a distance metric, and the K-means clustering technique is repeatedly performed a plurality of times to select clustering having the smallest distance.
Image processing method.
상기 DCT 히스토그램 피쳐가 추출된 패치들을 조작 패치와 미조작 패치로 구분하는 클러스터링을 수행하는 클러스터부와,
상기 조작 패치를 상기 이미지의 조작 위치로서 탐지하는 위치 탐지부를 포함하고,
상기 위치 탐지부는, 상기 클러스터링에 대한 결과의 정상 상태 또는 비정상 상태를 나타내되, 상기 정상 상태 또는 상기 비정상 상태를, 각 DCT 히스토그램 피쳐의 중심값, 상기 조작 패치 클러스터의 중심값과 상기 미조작 패치 클러스터의 중심값의 거리, 각 클러스터 내의 중심값과 메디안(median) 거리값에 기초하여 나타내는
이미지 처리 장치.A feature extracting unit that converts an image in the pixel domain into a DCT (Discrete Cosine Transform) domain, divides it into a plurality of patches, and extracts DCT histogram features for each patch;
A cluster unit for performing clustering that divides the patches from which the DCT histogram feature is extracted into a manipulated patch and a non-manipulated patch,
A position detection unit for detecting the manipulation patch as a manipulation location of the image,
The location detection unit may indicate a normal state or an abnormal state of a result of the clustering, and determine the normal state or the abnormal state, a center value of each DCT histogram feature, a center value of the manipulated patch cluster, and the unmanipulated patch cluster. Based on the distance of the center value of, and the median distance value within each cluster
Image processing unit.
상기 클러스터부는, 디스턴스 메트릭(distance metric)으로서 유클리드 디스턴스(Euclidean distance)를 사용하고, K-means 클러스터링 기법을 복수회 반복 시행하여 가장 적은 디스턴스를 갖는 클러스터링을 선택하는
이미지 처리 장치.The method of claim 5,
The cluster unit uses Euclidean distance as a distance metric, and selects clustering having the smallest distance by repeatedly performing the K-means clustering technique multiple times.
Image processing unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190008755A KR102195763B1 (en) | 2019-01-23 | 2019-01-23 | Method and apparatus for processing image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190008755A KR102195763B1 (en) | 2019-01-23 | 2019-01-23 | Method and apparatus for processing image |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200091674A KR20200091674A (en) | 2020-07-31 |
KR102195763B1 true KR102195763B1 (en) | 2020-12-29 |
Family
ID=71834784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190008755A KR102195763B1 (en) | 2019-01-23 | 2019-01-23 | Method and apparatus for processing image |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102195763B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003533912A (en) | 2000-05-11 | 2003-11-11 | テラロジック・インコーポレーテッド | Scalable graphics image rendering on multi-resolution images with / without image data reuse |
US20190019282A1 (en) * | 2017-07-17 | 2019-01-17 | Ron ATZMON | System, method and computer program product for analyzing jpeg images for forensic and other purposes |
-
2019
- 2019-01-23 KR KR1020190008755A patent/KR102195763B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003533912A (en) | 2000-05-11 | 2003-11-11 | テラロジック・インコーポレーテッド | Scalable graphics image rendering on multi-resolution images with / without image data reuse |
US20190019282A1 (en) * | 2017-07-17 | 2019-01-17 | Ron ATZMON | System, method and computer program product for analyzing jpeg images for forensic and other purposes |
Non-Patent Citations (2)
Title |
---|
K-means with Three different Distance Metrics, International Journal of Computer Applications, 2013.04.* |
차이값 히스토그램 기반 가역 워터마킹을 이용한 블록 단위 영상 인증 알고리즘, 정보처리학회논문지, 2011.12.* |
Also Published As
Publication number | Publication date |
---|---|
KR20200091674A (en) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11676408B2 (en) | Identification of neural-network-generated fake images | |
US11410414B2 (en) | Systems and methods for detection and localization of image and document forgery | |
CN106937114B (en) | Method and device for detecting video scene switching | |
Yu et al. | Perceptual hashing with complementary color wavelet transform and compressed sensing for reduced-reference image quality assessment | |
CN110796154A (en) | Method, device and equipment for training object detection model | |
Tinnathi et al. | An efficient copy move forgery detection using adaptive watershed segmentation with AGSO and hybrid feature extraction | |
CN108173704A (en) | A kind of method and device of the net flow assorted based on representative learning | |
Vidyadharan et al. | Digital image forgery detection using compact multi-texture representation | |
CN110457996B (en) | Video moving object tampering evidence obtaining method based on VGG-11 convolutional neural network | |
KR101836811B1 (en) | Method, apparatus and computer program for matching between the images | |
Agrawal et al. | Survey on image segmentation techniques and color models | |
Pasquini et al. | A Benford-Fourier JPEG compression detector | |
KR20090109012A (en) | Image Processing | |
Habibi et al. | Splicing image forgery detection and localization based on color edge inconsistency using statistical dispersion measures | |
JP2004062605A (en) | Scene identification method and device, and program | |
CN110991412A (en) | Face recognition method and device, storage medium and electronic equipment | |
CN111080723B (en) | Image element segmentation method based on Unet network | |
Sasirekha et al. | Enhanced techniques for PDF image segmentation and text extraction | |
CN112785595B (en) | Target attribute detection, neural network training and intelligent driving method and device | |
CN104680192A (en) | Electric power image classification method based on deep learning | |
Manu et al. | Tamper detection of social media images using quality artifacts and texture features | |
CN112966687B (en) | Image segmentation model training method and device and communication equipment | |
Cozzolino et al. | PRNU-based forgery localization in a blind scenario | |
KR102195763B1 (en) | Method and apparatus for processing image | |
Nirmalkar et al. | A review of image forgery techniques and their detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |