WO2021020876A1 - 워터마크의 삽입을 위한 영상 합성 장치 및 방법 - Google Patents

워터마크의 삽입을 위한 영상 합성 장치 및 방법 Download PDF

Info

Publication number
WO2021020876A1
WO2021020876A1 PCT/KR2020/009991 KR2020009991W WO2021020876A1 WO 2021020876 A1 WO2021020876 A1 WO 2021020876A1 KR 2020009991 W KR2020009991 W KR 2020009991W WO 2021020876 A1 WO2021020876 A1 WO 2021020876A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
image
sub
composite
watermark
Prior art date
Application number
PCT/KR2020/009991
Other languages
English (en)
French (fr)
Inventor
장한얼
김동규
한동윤
윤상두
서충현
노인우
Original Assignee
네이버 주식회사
네이버웹툰 유한회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사, 네이버웹툰 유한회사 filed Critical 네이버 주식회사
Priority to JP2022506211A priority Critical patent/JP7307266B2/ja
Publication of WO2021020876A1 publication Critical patent/WO2021020876A1/ko
Priority to US17/649,442 priority patent/US20220156873A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0064Image watermarking for copy protection or copy management, e.g. CGMS, copy only once, one-time copy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0083Image watermarking whereby only watermarked image required at decoder, e.g. source-based, blind, oblivious

Definitions

  • the present disclosure relates to the field of image processing. More specifically, the present disclosure relates to an image synthesizing apparatus and method for inserting a watermark for identifying the source of an image, a copyright holder, and the like.
  • a user who pays a certain amount and has cartoon content may store the cartoon content displayed on his terminal in the terminal using a method such as capture and share it with other users through the Internet.
  • An image synthesizing apparatus and method is a technical problem to reduce the visibility of a watermark in a synthesized image in which an original image and a watermark image are synthesized.
  • an apparatus and method for synthesizing an image makes it possible to detect a watermark in a synthesized image even if there are various modification attacks by users on the synthesized image.
  • an apparatus and method for synthesizing an image according to an exemplary embodiment is a technical task to inspire creators to create by preventing illegal distribution of works.
  • An image synthesis method includes the steps of: inputting an original image and a watermark image into a synthesis model; And obtaining a composite image output from the composite model, wherein each of the original image and the watermark image is processed in each of the first and second sub-models of the composite model and then combined, and the combined The result may be processed in the third sub-model to generate the composite image.
  • the image synthesizing apparatus and method according to an embodiment may reduce visibility of a watermark in a synthesized image in which an original image and a watermark image are synthesized.
  • the image synthesizing apparatus and method according to an exemplary embodiment may detect a watermark in the synthesized image even if there are various modification attacks by users on the synthesized image.
  • the image synthesizing apparatus and method according to an exemplary embodiment may prevent illegal distribution of a work, thereby inspiring creators' creative motivation.
  • FIG. 1 is a block diagram illustrating a configuration of an image synthesizing apparatus according to an exemplary embodiment.
  • FIG. 2 is a flowchart illustrating an image synthesis method according to an exemplary embodiment.
  • FIG. 3 is a diagram for explaining a method of generating a composite image through a composite model.
  • FIG. 4 is a diagram illustrating a structure of a composite model according to an exemplary embodiment.
  • FIG. 5 is a diagram for describing in detail the structure of a composite model according to an exemplary embodiment.
  • FIG. 6 is a diagram for describing a method of extracting a watermark image from a synthesized image according to an exemplary embodiment.
  • FIG. 7 is a diagram for describing a method of extracting a watermark image from a synthesized image through an extraction model.
  • FIG. 8 is a diagram for describing in detail the structure of an extraction model according to an exemplary embodiment.
  • FIG. 9 is a diagram for describing a method of training a synthetic model and an extraction model according to an exemplary embodiment.
  • FIG. 10 is a diagram for explaining a deformation model shown in FIG. 9.
  • FIG. 11 is a diagram illustrating an original image, a synthesized image generated according to an image synthesis method according to an exemplary embodiment, and a watermark image generated according to an image extraction method according to an exemplary embodiment.
  • FIG. 12 is a diagram illustrating an environment to which an image synthesizing apparatus according to an exemplary embodiment is applied.
  • An image synthesis method includes the steps of: inputting an original image and a watermark image into a synthesis model; And obtaining a composite image output from the composite model, wherein each of the original image and the watermark image is processed in each of the first and second sub-models of the composite model and then combined, and the combined The result may be processed in the third sub-model to generate the composite image.
  • An image synthesizing apparatus includes a processor, a synthesis model, and a memory for storing at least one program, wherein the processor generates an original image and a watermark image as the at least one program is executed.
  • the composite image is input to the composite model and output from the composite model is obtained, and each of the original image and the watermark image is processed in each of the first and second sub-models of the composite model and then combined, and the The combined result may be processed in a third sub-model to generate the composite image.
  • one component when one component is referred to as “connected” or “connected” to another component, the one component may be directly connected to the other component or may be directly connected, It should be understood that as long as there is no substrate to be used, it may be connected or may be connected via another component in the middle.
  • each of the components to be described below may additionally perform some or all of the functions that other components are responsible for in addition to its own main function, and some of the main functions that each component is responsible for are different. It goes without saying that it may be performed exclusively by components.
  • FIG. 1 is a block diagram showing a configuration of an image synthesizing apparatus 100 according to an exemplary embodiment
  • FIGS. 2 and 3 are diagrams for explaining an image synthesizing method according to an exemplary embodiment.
  • the image synthesizing apparatus 100 may include a memory 110 and a controller 130.
  • the memory 110 and the controller 130 may be implemented with at least one processor, and may operate according to a program stored in the memory 110.
  • the image synthesizing apparatus 100 may be implemented as a server.
  • the server may synthesize the watermark image with the original image requested by the terminal devices and transmit the synthesized image to the user terminal.
  • the image synthesizing apparatus 100 may be implemented as a terminal device.
  • the terminal device may request an image selected by the user from the server, and generate a composite image by synthesizing a watermark image with an original image received from the server.
  • the terminal device may include various types of devices capable of communicating with a server through a network, such as a smart phone, a tablet PC, a desktop PC, and a notebook.
  • the composite image transmitted to the terminal device may be displayed through a display.
  • the memory 110 may store a composite model.
  • the synthesis model may include a deep neural network (DNN) trained for synthesis of the original image and the watermark image.
  • the DNN may include a convolution neural network (CNN).
  • CNN convolution neural network
  • the memory 110 may further store the extraction model 700, and the extraction model 700 will be described later with reference to FIGS. 6 to 8.
  • the controller 130 inputs the original image 10 and the watermark image 30 into the synthesis model 300 in step S210, and from the synthesis model 300 in step S220.
  • An output composite image 50 may be obtained.
  • the controller 130 may acquire the original image 10 and the watermark image 30 to generate the composite image 50.
  • the controller 130 may acquire the original image 10 selected by the user.
  • the controller 130 may obtain a watermark image 30 including identification information of a user and/or identification information of a copyright holder.
  • the identification information of the user and/or the identification information of the copyright holder may include various symbols, characters, and/or figures used to specify the user or the copyright holder, such as ID, name, sign, and logo.
  • User identification information and/or copyright holder identification information may be previously stored in the memory 110.
  • the image synthesizing apparatus 100 may generate the synthesis image 50 through the synthesis model 300 composed of DNN, and the synthesis model 300 is the visibility of the watermark in the synthesis image 50. It may be trained to reduce this size and extract a watermark from the synthesized image 50 modified according to various modification attacks.
  • FIG. 4 is a diagram for describing a structure of a composite model 300 according to an exemplary embodiment.
  • the original image 10 and the watermark image 30 are input to the composite model 300, and the original image 10 and the watermark image 30 are synthesized from the composite model 300, and the composite image 50 is output. do.
  • the composite model 300 may include a first sub-model 310, a second sub-model 330, and a third sub-model 350.
  • the first sub-model 310 may receive the original image 10 and output output data, and the second sub-model 330 may receive the watermark image 30 and output output data.
  • the first sub-model 310 may reduce the size of the original image 10, and the second sub-model 330 may reduce the size of the watermark image 30.
  • the output data of the first sub-model 310 and the output data of the second sub-model 330 are concatenated and input to the third sub-model 350.
  • a result of combining the output data of the first sub-model 310 and the output data of the second sub-model 330 may be processed by the third sub-model 350 to generate a composite image 50.
  • the third sub-model 350 may increase the size of a result of combining the output data of the first sub-model 310 and the output data of the second sub-model 330.
  • Each of the first sub-model 310, the second sub-model 330, and the third sub-model 350 may include at least one layer for processing input data.
  • At least one layer may include a convolution layer.
  • the convolutional layer may perform convolution processing on the input data with a filter kernel, and output the result of the convolution processing to the next layer.
  • data output from the convolution layer may be continuously processed in a batch normalization layer and an activation layer.
  • the active layer may give non-linear characteristics to the output result of the previous layer.
  • the activation layer can use an activation function.
  • the activation function may include a Leaky ReLU (Rectified Linear Unit) function, a sigmoid function, a Tanh function, a ReLU function, and the like.
  • 5 is a view for explaining in detail the structure of the composite model 300 according to an embodiment.
  • the first sub-model 310 includes an A convolution layer 311 -A, a B convolution layer 311 -B, a C convolution layer 311 -C, and a D convolution layer 311.
  • the second sub-model 330 includes an E convolution layer 331-E, an F convolution layer 331-F, a G convolution layer 331-G, and an H convolution layer ( 331-H)
  • the third sub-model 350 includes an I convolution layer (351-I), a J convolution layer (351-J), a K convolution layer (351-K), and an L convolution layer. (351-L) may be included.
  • Data output from the convolutional layer included in the first sub-model 310, the second sub-model 330, and the third sub-model 350 may have a predetermined size and a predetermined depth.
  • the data 312-A output from the A convolution layer 311-A may have a size of 128 X 128 and a depth of 64.
  • the A convolutional layer 311-A convolves the original image 10 according to a predetermined stride using a filter kernel having a predetermined size, so that 64 pieces of data 312-A having a size of 128 X 128 A) can be printed.
  • first sub-model 310, the second sub-model 330, and the third sub-model 350 all include four convolution layers, but this is only an example, and the first sub-model 310
  • the number of convolutional layers included in each of the model 310, the second sub-model 330, and the third sub-model 350 may be variously changed.
  • the size and depth of output data output from the convolutional layers included in the first sub-model 310, the second sub-model 330, and the third sub-model 350 are not limited to those shown, and those skilled in the art By variously setting the size, number, and stride of the filter kernel, the size and depth of output data can be variously changed.
  • At least one convolution layer among convolutional layers included in the first sub-model 310, the second sub-model 330, and the third sub-model 350 A placement normalization layer and/or an activation layer may be located at the rear end of.
  • a placement normalization layer and/or an activation layer may be located at the rear end of.
  • data output from the A convolution layer 311-A is a batch normalization layer and/or activation. After processing in the layer, it may be input to the B convolution layer 311 -B.
  • the original image 10 may be input as the first sub-model 310 and may be reduced in size.
  • the original image 10 is input to the A convolution layer 311 -A and subjected to convolution processing, and the output data 312 -A of the A convolution layer 311 -A is the B convolution layer 311 -B. It can be input to be convolutional.
  • the output data 312-B of the B convolution layer 311-B may be input to the C convolution layer 311-C and subjected to convolution processing, and the output of the C convolution layer 311-C
  • the data 312-C may be input to the D convolution layer 311-D and subjected to convolution processing.
  • the watermark image 30 may be input as the second sub-model 330 and may be reduced in size.
  • the watermark image 30 is input to the E convolution layer 331-E and subjected to convolution processing, and the output data 332-E of the E convolution layer 331-E is an F convolution layer 331-F.
  • the output data (332-F) of the F convolution layer (331-F) can be input to the G convolution layer (331-G) to be subjected to convolution processing, the output of the G convolution layer (331-G)
  • the data 332 -G may be input to the H convolution layer 331 -H and subjected to convolution processing.
  • the output data 312-D of the D convolution layer 311-D and the output data 332-H of the H convolution layer 331-H are concatenated and input to the third sub-model 350 Can be.
  • the result of combining the output data 312-D of the D convolution layer 311-D and the output data 332-H of the H convolution layer 331-H is input to the third sub-model 350
  • the size can be increased.
  • the combined result is input to the I convolution layer 351-I and subjected to convolution processing, and the output data 352-I of the I convolution layer 351-I is the J convolution layer 351-J. It can be input to be convolutional.
  • the output data 352-J of the J convolution layer 351-J may be input to the K convolution layer 351-K and subjected to convolution processing, and the output of the K convolution layer 351-K
  • the data 352-K may be input to the L convolution layer 351-L and subjected to convolution processing.
  • data output from at least one convolutional layer included in the first sub-model 310 may be input to a subsequent layer and at the same time, at least one convoluted convolutional layer included in the third sub-model 350 It may be concatenated with data output from the root layer.
  • the combined data may be input to a subsequent layer of the third sub-model 350.
  • the reason why the intermediate output result of the convolution layer included in the first sub-model 310 is combined with the intermediate output result of the convolution layer included in the third sub-model 350 is to reduce the visibility of the watermark. .
  • the result of combining the output data 312-D of the D convolution layer 311-D and the output data 332-H of the H convolution layer 331-H is the third sub-model 350 .
  • the feature map corresponding to the original image 10 that is, the intermediate output result of the convolutional layer included in the first sub-model 310 is combined.
  • the intermediate output result of the convolutional layer included in the second sub-model 330 is not combined with the intermediate output result of the third sub-model 350.
  • the output data 312-C of the C convolution layer 311-C is combined with the output data 352-I of the I convolution layer 351-I and input to the J convolution layer 351-J.
  • the output data 312-B of the B convolution layer 311-B is combined with the output data 352-J of the J convolution layer 351-J and input to the K convolution layer 351-K.
  • the output data 312-A of the A convolution layer 311-A is combined with the output data 352-K of the K convolution layer 351-K to form the L convolution layer 351-L. Can be entered.
  • Output data 312-C of C convolution layer 311-C, output data 352-I of I convolution layer 351-I, and output of B convolution layer 311-B The data 312-B and the output data 352-J of the J convolution layer 351-J, and the output data 312-A and the K convolution layer of the A convolution layer 311-A (
  • the output data 351-K of 351-K) may have the same size. That is, when the intermediate output results of the first sub-model 310 are combined with the intermediate output results of the third sub-model 350, the combined intermediate output results have the same size. This is because when output data of different sizes are combined, certain convolution processing for the combined data may be difficult.
  • the sizes of output data of the convolution layer of the first sub-model 310 and output data of the convolution layer of the third sub-model 350 may be different from each other.
  • the output data 312 -C of the C convolution layer 311 -C and the output data 352 -I of the I convolution layer 351 -I may have different sizes.
  • the J convolution layer 351 -J may have a plurality of filter kernels having different sizes for constant convolution processing.
  • the J convolution layer 351- J) is a first filter kernel having a large size and convolves the output data 312 -C of the C convolution layer 311 -C
  • the I convolution layer 351-I is a second filter kernel having a small size.
  • the output data (352-I) of) can be subjected to convolutional processing. Accordingly, data output as a result of convolution using the first filter kernel and data output as a result of convolution using the second filter kernel may have the same size.
  • the size of the filter kernels allocated to the J convolution layer 351 -J is the same, but the size of the output data 312 -C of the C convolution layer 311 -C is the I convolution layer ( 351-I), the first stride for convolution processing the output data 312-C of the C convolution layer 311-C is the I convolution layer ( The output data 351-I of 351-I) may be larger than the second stride for convolution processing. Accordingly, data output as a result of convolution by the first stride and data output as a result of convolution by the second stride may have the same size.
  • the original image 10 may be added to the output data 352-L of the L convolution layer 351-L.
  • a composite image 50 is generated by multiplying the output data 352-L of the L convolution layer 351-L by a weight ⁇ and summing it with the original image 10. I can.
  • the reason why the original image 10 is added to the output data of the third sub-model 350 is to reflect the difference between the training original image 910 and the training composite image 950 to be described later, and the composite model 300 It is to train quickly.
  • the composite image 50 is generated by summing the values.
  • the training speed may be very fast.
  • FIGS. 6 and 7 are diagrams for explaining a method of extracting a watermark image 90 from a modified composite image 70 according to an exemplary embodiment.
  • the controller 130 inputs the modified composite image 70 to the extraction model 700 in step S610, and the watermark image output from the extraction model 700 in step S620 ( 90) can be obtained.
  • the controller 130 may obtain the modified composite image 70 to extract the watermark image 90.
  • the modified composite image 70 may be received from an external device through a network.
  • the modified composite image 70 may be input by an administrator.
  • the transformed composite image 70 may be an image transformed by applying a predetermined type of transforming method to the composite image 50 generated by the composite model 300.
  • the transformation method may include, for example, at least one of coding through a codec, noise addition, quantization, rotation, reduction, enlargement, pixel position change, and filtering.
  • the user may apply a modification attack to the synthesized image 50 for illegal distribution.
  • the image synthesizing apparatus 100 extracts the watermark image 90 by inputting the modified synthesis image 70 into the extraction model 700, and the extracted watermark image 90 is the synthesized image 50 It may be determined whether it corresponds to the watermark image 30 used to generate. For example, the image synthesizing apparatus 100 pre-stores the watermark images 30 used to generate the composite image 50, and the watermark image 90 extracted from the modified composite image 70 and pre-stored By comparing the watermark images 30, it may be determined whether the extracted watermark image 90 corresponds to the pre-stored watermark image 30.
  • the image synthesizing apparatus 100 checks the identification information in the watermark image 90 obtained by inputting the modified synthesis image 70 into the extraction model 700, and stores the identified identification information in advance. It can be determined whether it corresponds to the identification information of and/or the identification information of the copyright holder.
  • the image synthesizing apparatus 100 includes a comparison result of the extracted watermark image 90 and the pre-stored watermark image 30, or identification information confirmed from the extracted watermark image 90 and the pre-stored user identification information, and / Or, information indicating the comparison result of the identification information of the copyright holder can be output.
  • the image synthesizing apparatus 100 may output information representing the comparison result through various output devices such as a printer, a speaker, and a monitor.
  • FIG. 8 is a diagram for explaining in detail the structure of the extraction model 700 according to an embodiment.
  • the extraction model 700 may include a plurality of convolutional layers. Some of the plurality of convolutional layers may reduce the size of input data, and the rest of the plurality of convolutional layers may increase the size of input data.
  • the extraction model 700 includes an A convolution layer 710-A, a B convolution layer 710-B, a C convolution layer 710-C, and a D convolution layer 710-D. ), an E convolution layer 710-E, an F convolution layer 710-F, a G convolution layer 710-G, and an H convolution layer 710-H.
  • the A convolution layer (710-A), the B convolution layer (710-B), the C convolution layer (710-C), and the D convolution layer (710-D) are the first subs that reduce the size of the input data.
  • Model, and the E convolution layer (710-E), the F convolution layer (710-F), the G convolution layer (710-G), and the H convolution layer (710-H) are It may correspond to a second sub-model that increases the size.
  • Data output from the convolutional layer included in the extraction model 700 may have a predetermined size and a predetermined depth.
  • the data 720-A output from the A convolution layer 710-A may have a size of 128 X 128 and a depth of 64.
  • the A convolutional layer 710-A convolves the transformed composite image 70 according to a predetermined stride using a filter kernel having a predetermined size, so that 64 pieces of data 720 having a size of 128 X 128 -A) can be printed.
  • the size and depth of output data output from the convolutional layers included in the extraction model 700 are not limited to those shown, and by a person skilled in the art variously setting the size, number and stride of the filter kernel, the size and depth of the output data You can change the depth in various ways.
  • FIG. 8 illustrates that the extraction model 700 includes eight convolutional layers, but this is only an example, and the number of convolutional layers included in the extraction model 700 may be variously changed. have.
  • a placement normalization layer and/or an activation layer may be positioned at a rear end of at least one of the convolution layers included in the extraction model 700.
  • the data output from the A convolution layer 710-A is a batch normalization layer and/or activation. After processing in a layer, it may be input as a B convolution layer 710-B.
  • the modified composite image 70 may be input as a first sub-model and may be reduced in size.
  • the transformed composite image 70 is input to the A convolution layer 710-A and subjected to convolution processing, and the output data 720-A of the A convolution layer 710-A is a B convolution layer 710-B.
  • the output data 720-B of the B convolution layer 710-B may be input to the C convolution layer 710-C and subjected to convolution processing, and the output of the C convolution layer 710-C
  • the data 720-C may be input to the D convolution layer 710-D and subjected to convolution processing.
  • the data 720-D output from the D convolutional layer 710-D may be input as a second sub-model to increase the size.
  • the data 720-D output from the D convolution layer 710-D is input to the E convolution layer 710-E and subjected to convolution processing, and the output data 720 of the E convolution layer 710-E -E) may be input to the F convolution layer 710 -F and subjected to convolution processing.
  • the output data 720-F of the F convolution layer 710-F may be input to the G convolution layer 710-G and subjected to convolution processing, and the output of the G convolution layer 710-G
  • the data 720-G may be input to the H convolution layer 710-H and subjected to convolution processing.
  • data output from at least one convolutional layer included in the first sub-model may be input to a subsequent layer and data output from at least one convolutional layer included in the second sub-model Can be concatenated.
  • the combined data may be input to a subsequent layer of the second sub-model.
  • the output data 720-C of the C convolution layer 710-C is combined with the output data 720-E of the E convolution layer 710-E and the F convolution layer 710. -F), and the output data 720-B of the B convolution layer 710-B is combined with the output data 720-F of the F convolution layer 710-F, and the G convolution layer ( 710-G).
  • the output data 720-A of the A convolution layer 710-A is combined with the output data 720-G of the G convolution layer 710-G to form the H convolution layer 710-H. Can be entered.
  • the data 720-B and the output data 720-F of the F convolution layer 710-F, and the output data 720-A and the G convolution layer of the A convolution layer 710-A may have the same size. That is, when the intermediate output results of the first sub-model are combined with the intermediate output results of the second sub-model, the combined intermediate output results have the same size.
  • the sizes of output data of the convolution layer of the first sub-model 310 and output data of the convolution layer of the second sub-model 330 may be different from each other.
  • the output data 720-C of the C convolution layer 710-C and the output data 720-E of the E convolution layer 710-E may have different sizes.
  • the F convolution layer 710 -F may have a plurality of filter kernels having different sizes for a certain convolution process.
  • the F convolution layer 710- F is a first filter kernel having a large size
  • the output data 720-C of the C convolution layer 710-C is convolved
  • the E convolution layer 710-F is a second filter kernel having a small size.
  • the output data 720-F of) may be subjected to convolutional processing. Accordingly, data output as a result of convolution using the first filter kernel and data output as a result of convolution using the second filter kernel may have the same size.
  • the size of the filter kernels allocated to the F convolution layer 710-F is the same, but the size of the output data 720-C of the C convolution layer 710-C is the E convolution layer ( 710-E), the first stride for convolution processing the output data 720-C of the C convolution layer 710-C is the E convolution layer ( The output data 720-E of 710-E) may be larger than the second stride for convolution processing. Accordingly, data output as a result of convolution by the first stride and data output as a result of convolution by the second stride may have the same size.
  • FIG. 9 is a diagram for describing a method of training a composite model 300 and an extraction model 700 according to an exemplary embodiment.
  • an original training image 910 and a training watermark image 930 may be input as a composite model 300, and a training composite image 950 may be output from the composite model 300.
  • the modified model 900 is applied to the training composite image 950 to generate the training modified composite image 970.
  • the training modified synthesis image 970 may be input to the extraction model 700, and a watermark image 990 may be output from the extraction model 700.
  • the synthesis model 300 may be trained to reduce first loss information calculated based on a difference between the training original image 910 and the training composite image 950.
  • the composite model 300 may be trained to minimize first loss information calculated based on a difference between the training original image 910 and the training composite image 950.
  • the first loss information is, for example, any one of L 1 -norm value, L 2 -norm value, SSIM value, PSNR-HVS value, MS-SSIM value, VIF value, and VMAF value, or a combination of two or more of them.
  • One result can be used.
  • the first loss information is a difference between two feature maps output from the DNN after inputting each of the training original image 910 and the training composite image 950 into a DNN for feature map extraction. May correspond to.
  • the DNN is, for example, VGG-16, and a feature map corresponding to the training original image 910 and the training composite image 950 may include a feature map output from ReLU2_2 of VGG-16.
  • Training so that the first loss information is reduced or minimized may mean that a training composite image 950 having little difference from the training original image 910 is generated. That is, by training to reduce or minimize the first loss information, the visibility of the watermark in the training composite image 950 may be reduced.
  • the extraction model 700 is trained to reduce the second loss information calculated based on the difference between the training watermark image 930 and the watermark image 990 output from the extraction model 700 Can be.
  • the extraction model 700 may be trained to minimize the second loss information.
  • the second loss information is, for example, any one of L 1 -norm value, L 2 -norm value, SSIM value, PSNR-HVS value, MS-SSIM value, VIF value, and VMAF value, or a combination of two or more of them.
  • One result can be used.
  • the second loss information is, after inputting each of the watermark image 930 for training and the watermark image 990 output from the extraction model 700 into the DNN for feature map extraction, It may correspond to the difference between the two output feature maps.
  • the DNN may be, for example, VGG-16.
  • Training so that the second loss information is reduced or minimized means that the watermark image 990 can be well extracted from the training modified composite image 970 even if various transformation attacks are applied to the training composite image 950. Can mean that. That is, since the extraction model 700 is trained to reduce or minimize the second loss information, the extraction model 700 can more accurately extract the watermark image 990 from the training modified synthesis image 970.
  • the synthesis model 300 and the extraction model 700 may be trained to reduce final loss information by combining the first loss information and the second loss information.
  • the synthesis model 300 and the extraction model 700 may be trained to minimize final loss information obtained by combining the first loss information and the second loss information.
  • the final loss information may be calculated according to Equation 1 below.
  • L is the final loss information
  • L img_mse is loss information calculated based on the difference between the training original image 910 and the training composite image 950
  • L 1 -norm value is the original training image 910 and the training composite image ( 950) is inputted to VGG-16 and the loss information calculated based on the difference in the feature map output from ReLU2_2
  • L wm_mse is the training watermark image 930 and the watermark image 990 output from the extraction model 700.
  • ⁇ img_mse , ⁇ vgg and ⁇ wm_mse denote weights applied to each of the loss information.
  • ⁇ img_mse and ⁇ vgg may be set to be larger than ⁇ wm_mse .
  • Setting ⁇ img_mse and ⁇ vgg larger than ⁇ wm_mse means that the visibility of the watermark in the training composite image 950 is more important than the extraction robustness of the watermark image 990.
  • the deformation model 900 in FIG. 9 models various types of deformation attacks that can be applied to the composite image 50, and as described above, the deformation attacks include coding through a codec, adding noise, quantization, rotation, It may include reduction, enlargement, pixel position change, and filtering.
  • the variant model 900 may be determined in response to each of several variant attacks.
  • a forward function and a backward function for differentiable transformation attacks e.g., noise addition, reduction, enlargement, pixel movement, etc.
  • non-differentiable transformation attacks e.g. For example, coding through a codec, quantization, median filtering, etc.
  • the partial derivative of the backpropagation function of a deformable attack that cannot be differentiated may be approximated to 1. This is based on the assumption that the attacker will generate an output image very similar to the input image even if the attacker attempts to perform a modification attack on the input image.
  • dL/dx is dL/dy which is the derivative of L with respect to y and dy/ which is the derivative of y with respect to x by the differential chain rule. It is expressed as the product of dx.
  • dy/dx may be substituted with 1 according to Equation 2 below.
  • FIG. 11 is a diagram illustrating an original image 1110, a synthesized image 1150 generated according to an image synthesis method according to an exemplary embodiment, and a watermark image 1190 generated according to an image extraction method according to an exemplary embodiment. .
  • the composite model 300 is trained to reduce or minimize the difference between the original image 1110 and the composite image 1150, the difference between the original image 1110 and the composite image 1150 is visually identified. Difficult to do. That is, it is difficult to find a watermark in the composite image 50.
  • the extraction model 700 is trained to increase or maximize the extraction ability of the watermark image 1190, the watermark 1190 may be extracted even from the composite image 1150 in which the watermark cannot be identified.
  • a dot in the watermark image 1190 shown in FIG. 11 represents a message as an inserted watermark.
  • the watermark may have a value of 0 or 1, for example.
  • a white point can have a value of 0, and a black point can have a value of 1.
  • the watermark can be inserted to have one of two values.
  • Each point constituting the watermark may have a 2D Gaussian shape, and the visibility of the watermark in the composite image 1150 may be further reduced according to the 2D Gaussian shape.
  • FIG. 12 is a diagram for describing an environment to which the image synthesizing apparatus 100 according to an exemplary embodiment is applied.
  • the server 1210 and the terminal device 1230 may communicate through a network.
  • the server 1210 may transmit an image to the terminal device 1230 according to the request of the terminal device 1230, and the terminal device 1230 may display the image received from the server 1210 on a display.
  • the server 1210 may provide a webtoon service.
  • the terminal device 1230 accesses the server 1210 to request transmission of the webtoon selected by the user, and the server 1210 transfers the webtoon content (ie, video) selected by the terminal device 1230 to the terminal device 1230. Can be transmitted.
  • the server 1210 may transmit webtoon content to the terminal device 1230 when a user of the terminal device 1230 pays a certain amount of cost or uses a certain point.
  • the image synthesizing apparatus 100 described above may be included in the server 1210.
  • the server 1210 generates a composite image 50 by inputting the original image 10 and the watermark image 30 requested by the terminal device 1230 into the composite model 300, and generates a composite image 50.
  • the watermark image 30 may include an ID assigned to a user of the terminal device 1230.
  • the terminal device 1230 may display the composite image 50 received from the server 1210 on the display.
  • the server 1210 may obtain a watermark image 90 by inputting a modified composite image 70 received from an external device or input by an administrator into the extraction model 700.
  • the server 1210 may determine whether the extracted watermark image 90 corresponds to the watermark image 30 used to generate the composite image 50, and the determination result is output to a monitor, speaker, printer, etc. You can print it through
  • the image synthesizing apparatus 100 may be included in the terminal device 1230.
  • the terminal device 1230 may request transmission of the image selected by the user to the server 1210 and receive the original image 10 from the server 1210.
  • the terminal device 1230 generates a composite image 50 by inputting the received original image 10 and the watermark image 30 into the composite model 300, and the generated composite image 50 into the terminal device 1230.
  • the terminal device 1230 may obtain a watermark image 90 by inputting a modified composite image 70 received from an external device or input by a user into the extraction model 700.
  • the terminal device 1230 may determine whether the extracted watermark image 90 corresponds to the watermark image 30 used to generate the composite image 50, and output the determination result to a monitor, speaker, printer, etc. It can be output through the device.
  • the above-described embodiments of the present disclosure can be written as a program that can be executed on a computer, and the written program can be stored in a medium.
  • the medium may be one that continuously stores a program executable by a computer, or temporarily stores a program for execution or download.
  • the medium may be a variety of recording means or storage means in a form in which a single piece of hardware or several pieces of hardware are combined, but is not limited to a medium directly connected to a computer system, and may be distributed on a network.
  • Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magnetic-optical media such as floptical disks, and And a ROM, RAM, flash memory, and the like, and may be configured to store program instructions.
  • examples of other media include an app store that distributes applications, a site that supplies or distributes various software, and a recording medium or storage medium managed by a server.

Abstract

영상 합성 장치에 의한 영상 합성 방법에 있어서, 원본 영상과 워터마크 영상을 합성 모델에 입력하는 단계; 및 합성 모델에서 출력되는 합성 영상을 획득하는 단계를 포함하되, 원본 영상과 워터마크 영상 각각은 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합되고, 결합된 결과는 제 3 서브 모델에서 처리되어 합성 영상이 생성되는 것을 특징으로 하는 일 실시예에 따른 영상 합성 방법이 개시된다.

Description

워터마크의 삽입을 위한 영상 합성 장치 및 방법
본 개시는 영상 처리 분야에 관한 것이다. 보다 구체적으로, 본 개시는 영상의 출처, 저작권자 등을 식별하기 위한 워터마크를 삽입하는 영상 합성 장치 및 방법에 관한 것이다.
저작물의 중요성이 부각되면서, 저작물의 불법적인 유통/복제를 방지하기 위한 다양한 기술이 제안되고 있다.
최근, 웹툰(webtoon)과 같이 온라인을 통해 만화 컨텐츠를 소비하는 사람들이 많아짐에 따라 만화 컨텐츠를 불법적으로 유통하는 사례가 증가하고 있다. 예를 들어, 일정 금액을 결제하고 만화 컨텐츠를 구비한 사용자는, 자신의 단말에 표시된 만화 컨텐츠를 캡처 등의 방법을 이용하여 단말에 저장하고 인터넷을 통해 다른 사용자들과 공유할 수 있다.
이와 같은 만화 컨텐츠의 불법 유통을 차단하기 위해 만화 컨텐츠에 워터마크(watermark)를 삽입하는 기술이 제안되고 있으나, 사용자가 만화 컨텐츠를 변형하는 경우 워터마크 역시 변형되어 만화 컨텐츠를 불법 유통시킨 사용자나 만화 컨텐츠의 저작권자를 추적하기 어려워지는 문제점이 있다. 또한, 워터마크가 만화 컨텐츠에 삽입됨으로써 만화 컨텐츠의 가독성이 떨어질 수 있다는 문제점도 있다.
따라서, 만화 컨텐츠를 포함한 다양한 영상에 삽입되는 워터마크의 가시성을 저감시키면서도, 사용자들의 다양한 변형 공격에도 워터마크를 쉽게 추출할 수 있게 하는 방안이 요구된다.
일 실시예에 따른 영상 합성 장치 및 방법은 원본 영상과 워터마크 영상이 합성된 합성 영상에서 워터마크의 가시성을 감소시키는 것을 기술적 과제로 한다.
또한, 일 실시예에 따른 영상 합성 장치 및 방법은 합성 영상에 대한 사용자들의 다양한 변형 공격이 있더라도, 합성 영상에서 워터마크를 검출할 수 있게 하는 것을 기술적 과제로 한다.
또한, 일 실시예에 따른 영상 합성 장치 및 방법은 저작물의 불법적인 유통을 방지하여 창작자들의 창작 의욕을 고취시키는 것을 기술적 과제로 한다.
본 개시의 일 실시예에 따른 영상 합성 방법은, 원본 영상과 워터마크 영상을 합성 모델에 입력하는 단계; 및 상기 합성 모델에서 출력되는 합성 영상을 획득하는 단계를 포함하되, 상기 원본 영상과 워터마크 영상 각각은 상기 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합되고, 상기 결합된 결과는 제 3 서브 모델에서 처리되어 상기 합성 영상이 생성될 수 있다.
일 실시예에 따른 영상 합성 장치 및 방법은 원본 영상과 워터마크 영상이 합성된 합성 영상에서 워터마크의 가시성을 감소시킬 수 있다.
또한, 일 실시예에 따른 영상 합성 장치 및 방법은 합성 영상에 대한 사용자들의 다양한 변형 공격이 있더라도, 합성 영상에서 워터마크를 검출할 수 있다.
또한, 일 실시예에 따른 영상 합성 장치 및 방법은 저작물의 불법적인 유통을 방지하여 창작자들의 창작 의욕을 고취시킬 수 있다.
다만, 일 실시예에 따른 영상 합성 장치 및 방법이 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 일 실시예에 따른 영상 합성 장치의 구성을 도시하는 블록도이다.
도 2는 일 실시예에 따른 영상 합성 방법을 설명하기 위한 순서도이다.
도 3은 합성 모델을 통해 합성 영상을 생성하는 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 합성 모델의 구조를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 합성 모델의 구조를 상세하게 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 합성 영상에서 워터마크 영상을 추출하는 방법을 설명하기 위한 도면이다.
도 7은 추출 모델을 통해 합성 영상으로부터 워터마크 영상을 추출하는 방법을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 추출 모델의 구조를 상세하게 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 합성 모델과 추출 모델을 훈련시키는 방법을 설명하기 위한 도면이다.
도 10은 도 9에 도시된 변형 모델을 설명하기 위한 도면이다.
도 11은 원본 영상, 일 실시예에 따른 영상 합성 방법에 따라 생성된 합성 영상 및 일 실시예에 따른 영상 추출 방법에 따라 생성된 워터마크 영상을 도시하는 도면이다.
도 12는 일 실시예에 따른 영상 합성 장치가 적용되는 환경을 설명하기 위한 도면이다.
본 개시의 일 실시예에 따른 영상 합성 방법은, 원본 영상과 워터마크 영상을 합성 모델에 입력하는 단계; 및 상기 합성 모델에서 출력되는 합성 영상을 획득하는 단계를 포함하되, 상기 원본 영상과 워터마크 영상 각각은 상기 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합되고, 상기 결합된 결과는 제 3 서브 모델에서 처리되어 상기 합성 영상이 생성될 수 있다.
본 개시의 다른 실시예에 따른 영상 합성 장치는, 프로세서 및 합성 모델 및 적어도 하나의 프로그램을 저장하는 메모리를 포함하되, 상기 프로세서는 상기 적어도 하나의 프로그램이 실행됨에 따라, 원본 영상과 워터마크 영상을 상기 합성 모델에 입력하고, 상기 합성 모델에서 출력되는 합성 영상을 획득하며, 상기 원본 영상과 워터마크 영상 각각은 상기 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합되고, 상기 결합된 결과는 제 3 서브 모델에서 처리되어 상기 합성 영상이 생성될 수 있다.
본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고, 이를 상세한 설명을 통해 설명하고자 한다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예를 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 실시예의 설명 과정에서 이용되는 숫자(예를 들어, 제 1, 제 2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 '~부(유닛)', '모듈' 등으로 표현되는 구성요소는 2개 이상의 구성요소가 하나의 구성요소로 합쳐지거나 또는 하나의 구성요소가 보다 세분화된 기능별로 2개 이상으로 분화될 수도 있다. 또한, 이하에서 설명할 구성요소 각각은 자신이 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성요소 각각이 담당하는 주기능 중 일부 기능이 다른 구성요소에 의해 전담되어 수행될 수도 있음은 물론이다.
이하, 본 개시의 기술적 사상에 의한 실시예들을 차례로 상세히 설명한다.
도 1은 일 실시예에 따른 영상 합성 장치(100)의 구성을 도시하는 블록도이고, 도 2 및 도 3은 일 실시예에 따른 영상 합성 방법을 설명하기 위한 도면이다.
영상 합성 장치(100)는 메모리(110) 및 제어부(130)를 포함할 수 있다. 메모리(110) 및 제어부(130)는 적어도 하나의 프로세서로 구현될 수 있으며, 메모리(110)에 저장된 프로그램에 따라 동작할 수 있다.
일 실시예에서, 영상 합성 장치(100)는 서버로 구현될 수 있다. 서버는 단말 장치들이 요청한 원본 영상에 워터마크 영상을 합성하고, 합성 영상을 사용자 단말로 전송할 수 있다.
다른 실시예에서, 영상 합성 장치(100)는 단말 장치로 구현될 수도 있다. 단말 장치는 사용자가 선택한 영상을 서버로 요청하고, 서버로부터 수신된 원본 영상에 워터마크 영상을 합성하여 합성 영상을 생성할 수 있다. 일 실시예에서, 상기 단말 장치는 스마트폰, 태블릿 PC, 데스크탑 PC, 노트북 등 네트워크를 통해 서버와 통신할 수 있는 다양한 종류의 기기를 포함할 수 있다.
일 실시예 또는 다른 실시예에서 단말 장치로 전송된 합성 영상은 디스플레이를 통해 표시될 수 있다.
메모리(110)는 합성 모델을 저장할 수 있다. 합성 모델은 원본 영상과 워터마크 영상의 합성을 위해 훈련된 DNN(deep neural network)을 포함할 수 있다. 일 실시예에서, DNN은 CNN(convolution neural network)을 포함할 수도 있다. 메모리(110)는 추출 모델(700)을 더 저장할 수 있는데, 추출 모델(700)에 대해서는 도 6 내지 도 8을 참조하여 후술한다.
도 2 및 도 3을 참조하면, 제어부(130)는 S210 단계에서, 원본 영상(10)과 워터마크 영상(30)을 합성 모델(300)에 입력하고, S220 단계에서, 합성 모델(300)로부터 출력되는 합성 영상(50)을 획득할 수 있다.
제어부(130)는 합성 영상(50)을 생성하기 위해 원본 영상(10)과 워터마크 영상(30)을 획득할 수 있다. 제어부(130)는 사용자가 선택한 원본 영상(10)을 획득할 수 있다. 또한, 제어부(130)는 사용자의 식별 정보 및/또는 저작권자의 식별 정보를 포함하는 워터마크 영상(30)을 획득할 수 있다. 상기 사용자의 식별 정보 및/또는 저작권자의 식별 정보는, ID, 성명, 싸인(sign), 로고 등 사용자나 저작권자를 특정하기 위해 이용되는 다양한 기호, 문자 및/또는 도형을 포함할 수 있다. 사용자의 식별 정보 및/또는 저작권자의 식별 정보는 메모리(110)에 미리 저장될 수 있다.
일 실시예에 따른 영상 합성 장치(100)는 DNN으로 구성된 합성 모델(300)을 통해 합성 영상(50)을 생성할 수 있는데, 합성 모델(300)은 합성 영상(50) 내에서 워터마크의 가시성이 작아지도록, 그리고, 다양한 변형 공격에 따라 변형된 합성 영상(50)에서 워터마크의 추출이 가능하도록 훈련될 수 있다.
이하에서는, 도 4 및 도 5를 참조하여 합성 모델(300)의 구조에 대해 설명한다.
도 4는 일 실시예에 따른 합성 모델(300)의 구조를 설명하기 위한 도면이다.
원본 영상(10) 및 워터마크 영상(30)은 합성 모델(300)에 입력되고, 합성 모델(300)에서 원본 영상(10) 및 워터마크 영상(30)이 합성되어 합성 영상(50)이 출력된다. 합성 모델(300)은 제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350)을 포함할 수 있다.
제 1 서브 모델(310)은 원본 영상(10)을 입력받아 출력 데이터를 출력하고, 제 2 서브 모델(330)은 워터마크 영상(30)을 입력받아 출력 데이터를 출력할 수 있다. 제 1 서브 모델(310)은 원본 영상(10)의 크기를 감소시킬 수 있고, 제 2 서브 모델(330)은 워터마크 영상(30)의 크기를 감소시킬 수 있다.
제 1 서브 모델(310)의 출력 데이터와 제 2 서브 모델(330)의 출력 데이터는 결합(concatenation)되어 제 3 서브 모델(350)로 입력된다. 제 1 서브 모델(310)의 출력 데이터와 제 2 서브 모델(330)의 출력 데이터가 결합된 결과는 제 3 서브 모델(350)에서 처리되어 합성 영상(50)이 생성될 수 있다. 제 3 서브 모델(350)은 제 1 서브 모델(310)의 출력 데이터와 제 2 서브 모델(330)의 출력 데이터가 결합된 결과의 크기를 증가시킬 수 있다.
제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350) 각각은 입력된 데이터를 처리하기 위한 적어도 하나의 레이어를 포함할 수 있다. 적어도 하나의 레이어는 컨볼루션 레이어를 포함할 수 있다. 컨볼루션 레이어는 입력된 데이터에 대해 필터 커널로 컨벌루션 처리를 하고, 컨볼루션 처리된 결과를 다음 레이어로 출력할 수 있다.
일 실시예에서, 컨볼루션 레이어에서 출력된 데이터는 배치 정규화(batch normalization) 레이어 및 활성화 레이어에서 연속적으로 처리될 수 있다. 활성화 레이어는 이전 레이어의 출력 결과에 대해 비선형(Non-linear) 특성을 부여할 수 있다. 활성화 레이어는 활성화 함수를 이용할 수 있다. 활성화 함수는 Leaky ReLU (Rectified Linear Unit) 함수, 시그모이드 함수(sigmoid function), Tanh 함수, ReLU 함수 등을 포함할 수 있다.
도 5는 일 실시예에 따른 합성 모델(300)의 구조를 상세하게 설명하기 위한 도면이다.
도 5를 참조하면, 제 1 서브 모델(310)은 A 컨볼루션 레이어(311-A), B 컨볼루션 레이어(311-B), C 컨볼루션 레이어(311-C) 및 D 컨볼루션 레이어(311-D)를 포함하고, 제 2 서브 모델(330)은 E 컨볼루션 레이어(331-E), F 컨볼루션 레이어(331-F), G 컨볼루션 레이어(331-G), H 컨볼루션 레이어(331-H)를 포함하고, 제 3 서브 모델(350)은 I 컨볼루션 레이어(351-I), J 컨볼루션 레이어(351-J), K 컨볼루션 레이어(351-K) 및 L 컨볼루션 레이어(351-L)를 포함할 수 있다.
제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350)에 포함된 컨볼루션 레이어에서 출력되는 데이터는 소정 크기 및 소정 뎁스(depth)를 가질 수 있다. 예를 들어, A 컨볼루션 레이어(311-A)에서 출력된 데이터(312-A)는 128 X 128의 크기를 가지며 뎁스는 64일 수 있다. A 컨볼루션 레이어(311-A)는 미리 결정된 크기의 필터 커널을 이용하여 미리 결정된 스트라이드(stride)에 따라 원본 영상(10)을 컨볼루션 처리하여 128 X 128의 크기를 갖는 64개의 데이터(312-A)를 출력할 수 있다.
도 5는 제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350) 모두 4개의 컨볼루션 레이어를 포함하는 것으로 도시하고 있으나, 이는 하나의 예시일 뿐이며, 제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350) 각각에 포함된 컨볼루션 레이어의 개수는 다양하게 변경될 수 있다.
또한, 제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350)에 포함된 컨볼루션 레이어들에서 출력되는 출력 데이터들의 크기 및 뎁스는 도시된 것에 한정된 것은 아니며, 당업자가 필터 커널의 크기, 개수 및 스트라이드를 다양하게 설정함으로써, 출력 데이터들의 크기 및 뎁스를 다양하게 변경할 수 있다.
도 5에는 도시되어 있지 않지만, 일 실시예에서, 제 1 서브 모델(310), 제 2 서브 모델(330) 및 제 3 서브 모델(350)에 포함된 컨볼루션 레이어들 중 적어도 하나의 컨볼루션 레이어의 후단에는 배치 정규화 레이어 및/또는 활성화 레이어가 위치할 수 있다. 예를 들어, A 컨볼루션 레이어(311-A)의 후단에 배치 정규화 레이어 및/또는 활성화 레이어가 위치하는 경우, A 컨볼루션 레이어(311-A)에서 출력된 데이터는 배치 정규화 레이어 및/또는 활성화 레이어에서 처리된 후 B 컨볼루션 레이어(311-B)로 입력될 수 있다.
원본 영상(10)은 제 1 서브 모델(310)로 입력되어 크기가 감소될 수 있다. 원본 영상(10)은 A 컨볼루션 레이어(311-A)로 입력되어 컨볼루션 처리되고, A 컨볼루션 레이어(311-A)의 출력 데이터(312-A)는 B 컨볼루션 레이어(311-B)로 입력되어 컨볼루션 처리될 수 있다. 그리고, B 컨볼루션 레이어(311-B)의 출력 데이터(312-B)는 C 컨볼루션 레이어(311-C)로 입력되어 컨볼루션 처리될 수 있고, C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)는 D 컨볼루션 레이어(311-D)로 입력되어 컨볼루션 처리될 수 있다.
워터마크 영상(30)은 제 2 서브 모델(330)로 입력되어 크기가 감소될 수 있다. 워터마크 영상(30)은 E 컨볼루션 레이어(331-E)로 입력되어 컨볼루션 처리되고, E 컨볼루션 레이어(331-E)의 출력 데이터(332-E)는 F 컨볼루션 레이어(331-F)로 입력되어 컨볼루션 처리될 수 있다. 그리고, F 컨볼루션 레이어(331-F)의 출력 데이터(332-F)는 G 컨볼루션 레이어(331-G)로 입력되어 컨볼루션 처리될 수 있고, G 컨볼루션 레이어(331-G)의 출력 데이터(332-G)는 H 컨볼루션 레이어(331-H)로 입력되어 컨볼루션 처리될 수 있다.
D 컨볼루션 레이어(311-D)의 출력 데이터(312-D)와 H 컨볼루션 레이어(331-H)의 출력 데이터(332-H)는 결합(concatenation)되어 제 3 서브 모델(350)로 입력될 수 있다.
D 컨볼루션 레이어(311-D)의 출력 데이터(312-D)와 H 컨볼루션 레이어(331-H)의 출력 데이터(332-H)가 결합된 결과는 제 3 서브 모델(350)로 입력되어 크기가 증가될 수 있다. 상기 결합된 결과는, I 컨볼루션 레이어(351-I)로 입력되어 컨볼루션 처리되고, I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)는 J 컨볼루션 레이어(351-J)로 입력되어 컨볼루션 처리될 수 있다. 그리고, J 컨볼루션 레이어(351-J)의 출력 데이터(352-J)는 K 컨볼루션 레이어(351-K)로 입력되어 컨볼루션 처리될 수 있고, K 컨볼루션 레이어(351-K)의 출력 데이터(352-K)는 L 컨볼루션 레이어(351-L)로 입력되어 컨볼루션 처리될 수 있다.
일 실시예에서, 제 1 서브 모델(310)에 포함된 적어도 하나의 컨볼루션 레이어에서 출력된 데이터는 후속하는 레이어로 입력될 수 있는 동시에, 제 3 서브 모델(350)에 포함된 적어도 하나의 컨볼루션 레이어에서 출력된 데이터에 결합(concatenation)될 수 있다. 결합된 데이터는 제 3 서브 모델(350)의 후속하는 레이어로 입력될 수 있다.
제 1 서브 모델(310)에 포함된 컨볼루션 레이어의 중간 출력 결과를 제 3 서브 모델(350)에 포함된 컨볼루션 레이어의 중간 출력 결과에 결합시키는 이유는, 워터마크의 가시성을 감소시키기 위함이다. 다시 말하면, D 컨볼루션 레이어(311-D)의 출력 데이터(312-D)와 H 컨볼루션 레이어(331-H)의 출력 데이터(332-H)가 결합된 결과가 제 3 서브 모델(350)에서 처리되는 동안, 원본 영상(10)에 대응하는 특징 맵(즉, 제 1 서브 모델(310)에 포함된 컨볼루션 레이어의 중간 출력 결과)을 결합시키는 것이다. 일 예에서, 제 2 서브 모델(330)에 포함된 컨볼루션 레이어의 중간 출력 결과는 제 3 서브 모델(350)의 중간 출력 결과에 결합되지 않는다.
C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)는 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)와 결합되어 J 컨볼루션 레이어(351-J)로 입력되고, B 컨볼루션 레이어(311-B)의 출력 데이터(312-B)는 J 컨볼루션 레이어(351-J)의 출력 데이터(352-J)와 결합되어 K 컨볼루션 레이어(351-K)로 입력될 수 있다. 그리고, A 컨볼루션 레이어(311-A)의 출력 데이터(312-A)는 K 컨볼루션 레이어(351-K)의 출력 데이터(352-K)와 결합되어 L 컨볼루션 레이어(351-L)로 입력될 수 있다.
서로 결합되는 C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)와 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I), B 컨볼루션 레이어(311-B)의 출력 데이터(312-B)와 J 컨볼루션 레이어(351-J)의 출력 데이터(352-J), 그리고, A 컨볼루션 레이어(311-A)의 출력 데이터(312-A)와 K 컨볼루션 레이어(351-K)의 출력 데이터(352-K)는 서로 동일한 크기를 가질 수 있다. 즉, 제 1 서브 모델(310)의 중간 출력 결과를 제 3 서브 모델(350)의 중간 출력 결과에 결합시킬 때, 결합되는 중간 출력 결과는 서로 동일한 크기를 갖는 것이다. 이는 서로 상이한 크기의 출력 데이터들이 결합되는 경우, 결합된 데이터에 대한 일정한 컨볼루션 처리가 어려워질 수 있기 때문이다.
일 실시예에서는, 서로 결합되는, 제 1 서브 모델(310)의 컨볼루션 레이어의 출력 데이터와 제 3 서브 모델(350)의 컨볼루션 레이어의 출력 데이터의 크기는 상이할 수도 있다. 예를 들어, C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)와 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)는 서로 상이한 크기를 가질 수 있다. 일 예에서, 일정한 컨볼루션 처리를 위해 J 컨볼루션 레이어(351-J)는 서로 상이한 크기의 복수의 필터 커널을 가질 수 있다. C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)의 크기가 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)의 크기보다 큰 경우, J 컨볼루션 레이어(351-J)는 큰 크기의 제 1 필터 커널로 C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)를 컨볼루션 처리하고, 작은 크기의 제 2 필터 커널로 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)를 컨볼루션 처리할 수 있다. 이에 의해, 제 1 필터 커널을 이용한 컨볼루션 결과 출력되는 데이터와 제 2 필터 커널을 이용한 컨볼루션 결과 출력되는 데이터는 서로 동일한 크기를 가질 수 있다.
다른 예에서, J 컨볼루션 레이어(351-J)에 할당된 필터 커널의 크기는 모두 동일하되, C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)의 크기가 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)의 크기보다 큰 경우, C 컨볼루션 레이어(311-C)의 출력 데이터(312-C)를 컨볼루션 처리하기 위한 제 1 스트라이드가 I 컨볼루션 레이어(351-I)의 출력 데이터(352-I)를 컨볼루션 처리하기 위한 제 2 스트라이드보다 클 수 있다. 이에 의해, 제 1 스트라이드에 의한 컨볼루션 결과 출력되는 데이터와 제 2 스트라이드에 의한 컨볼루션 결과 출력되는 데이터는 서로 동일한 크기를 가질 수 있다.
일 실시예에서, 원본 영상(10)은 L 컨볼루션 레이어(351-L)의 출력 데이터(352-L)에 합산될 수 있다. 도 5에 도시된 바와 같이, L 컨볼루션 레이어(351-L)의 출력 데이터(352-L)에 가중치(α)가 곱해진 후 원본 영상(10)과 합산됨으로써 합성 영상(50)이 생성될 수 있다. 원본 영상(10)을 제 3 서브 모델(350)의 출력 데이터에 합산하는 이유는, 후술하는 훈련용 원본 영상(910)과 훈련용 합성 영상(950) 사이의 차이를 반영하여 합성 모델(300)을 신속히 훈련시키기 위함이다.
원본 영상(10)을 합성 영상(50)의 예측(prediction) 값이라 하고, 제 3 서브 모델(350)의 출력 데이터를 합성 영상(50)의 잔차(residue) 값이라 하였을 때, 예측 값과 잔차 값을 합산하여 합성 영상(50)을 생성하는 것으로 볼 수 있다. 이 경우, 잔차 값에 대응하는 손실 정보를 이용하여 합성 모델(300)을 훈련시킬 때 그 훈련 속도가 매우 빨라질 수 있는 것이다.
도 6 및 도 7은 일 실시예에 따른 변형 합성 영상(70)에서 워터마크 영상(90)을 추출하는 방법을 설명하기 위한 도면이다.
도 6 및 도 7을 참조하면, 제어부(130)는 S610 단계에서, 변형 합성 영상(70)을 추출 모델(700)에 입력하고, S620 단계에서, 추출 모델(700)로부터 출력되는 워터마크 영상(90)을 획득할 수 있다.
제어부(130)는 워터마크 영상(90)의 추출을 위해, 변형 합성 영상(70)을 획득할 수 있다. 일 실시예에서, 변형 합성 영상(70)은 네트워크를 통해 외부의 장치로부터 수신된 것일 수 있다. 다른 실시예에서, 변형 합성 영상(70)은 관리자에 의해 입력된 것일 수도 있다.
변형 합성 영상(70)은, 합성 모델(300)에 의해 생성된 합성 영상(50)에 소정 종류의 변형 방법이 적용되어 변형된 영상일 수 있다. 상기 변형 방법은 예를 들어, 코덱을 통한 코딩, 노이즈 추가, 양자화, 회전, 축소, 확대, 픽셀 위치 변경 및 필터링 중 적어도 하나를 포함할 수 있다. 전술한 바와 같이, 사용자는 영상 합성 장치(100)에 의해 생성된 합성 영상(50)을 획득한 후, 불법적인 유통을 위해 합성 영상(50)에 변형 공격을 가할 수 있다.
일 실시예에 따른 영상 합성 장치(100)는 변형 합성 영상(70)을 추출 모델(700)에 입력하여 워터마크 영상(90)을 추출하고, 추출한 워터마크 영상(90)이 합성 영상(50)을 생성하기 위해 이용된 워터마크 영상(30)에 대응하는지를 판단할 수 있다. 예를 들어, 영상 합성 장치(100)는 합성 영상(50)을 생성하는데 이용된 워터마크 영상(30)들을 미리 저장하고, 변형 합성 영상(70)으로부터 추출되는 워터마크 영상(90)과 미리 저장된 워터마크 영상(30)들을 비교하여, 추출된 워터마크 영상(90)이 미리 저장된 워터마크 영상(30)에 대응하는지를 판단할 수 있다.
일 실시예에서, 영상 합성 장치(100)는 변형 합성 영상(70)을 추출 모델(700)에 입력하여 획득한 워터마크 영상(90) 내 식별 정보를 확인하고, 확인된 식별 정보가 미리 저장된 사용자의 식별 정보 및/또는 저작권자의 식별 정보에 대응하는지를 판단할 수 있다.
영상 합성 장치(100)는 추출된 워터마크 영상(90)과 미리 저장된 워터마크 영상(30)의 비교 결과, 또는 추출된 워터마크 영상(90)에서 확인된 식별 정보와 미리 저장된 사용자의 식별 정보 및/또는 저작권자의 식별 정보의 비교 결과를 나타내는 정보를 출력할 수 있다. 영상 합성 장치(100)는 프린터, 스피커, 모니터 등의 다양한 출력 장치를 통해 비교 결과를 나타내는 정보를 출력할 수 있다.
도 8은 일 실시예에 따른 추출 모델(700)의 구조를 상세하게 설명하기 위한 도면이다.
추출 모델(700)은 복수의 컨볼루션 레이어를 포함할 수 있다. 복수의 컨볼루션 레이어 중 일부는 입력되는 데이터의 크기를 감소시킬 수 있으며, 복수의 컨볼루션 레이어 중 나머지는 입력되는 데이터의 크기를 증가시킬 수 있다.
도 8을 참조하면, 추출 모델(700)은 A 컨볼루션 레이어(710-A), B 컨볼루션 레이어(710-B), C 컨볼루션 레이어(710-C), D 컨볼루션 레이어(710-D), E 컨볼루션 레이어(710-E), F 컨볼루션 레이어(710-F), G 컨볼루션 레이어(710-G) 및 H 컨볼루션 레이어(710-H)를 포함할 수 있다. A 컨볼루션 레이어(710-A), B 컨볼루션 레이어(710-B), C 컨볼루션 레이어(710-C) 및 D 컨볼루션 레이어(710-D)는 입력 데이터의 크기를 감소시키는 제 1 서브 모델에 해당할 수 있고, E 컨볼루션 레이어(710-E), F 컨볼루션 레이어(710-F), G 컨볼루션 레이어(710-G) 및 H 컨볼루션 레이어(710-H)는 입력 데이터의 크기를 증가시키는 제 2 서브 모델에 해당할 수 있다.
추출 모델(700)에 포함된 컨볼루션 레이어에서 출력되는 데이터는 소정 크기 및 소정 뎁스(depth)를 가질 수 있다. 예를 들어, A 컨볼루션 레이어(710-A)에서 출력된 데이터(720-A)는 128 X 128의 크기를 가지며 뎁스는 64일 수 있다. A 컨볼루션 레이어(710-A)는 미리 결정된 크기의 필터 커널을 이용하여 미리 결정된 스트라이드(stride)에 따라 변형 합성 영상(70)을 컨볼루션 처리하여 128 X 128의 크기를 갖는 64개의 데이터(720-A)를 출력할 수 있다. 추출 모델(700)에 포함된 컨볼루션 레이어들에서 출력되는 출력 데이터들의 크기 및 뎁스는 도시된 것에 한정된 것은 아니며, 당업자가 필터 커널의 크기, 개수 및 스트라이드를 다양하게 설정함으로써, 출력 데이터들의 크기 및 뎁스를 다양하게 변경할 수 있다.
또한, 도 8은 추출 모델(700)이 8개의 컨볼루션 레이어를 포함하는 것으로 도시하고 있으나, 이는 하나의 예시일 뿐이며, 추출 모델(700)에 포함된 컨볼루션 레이어의 개수는 다양하게 변경될 수 있다.
또한, 도 8에는 도시되어 있지 않지만, 추출 모델(700)에 포함된 컨볼루션 레이어들 중 적어도 하나의 컨볼루션 레이어의 후단에는 배치 정규화 레이어 및/또는 활성화 레이어가 위치할 수 있다. 예를 들어, A 컨볼루션 레이어(710-A)의 후단에 배치 정규화 레이어 및/또는 활성화 레이어가 위치하는 경우, A 컨볼루션 레이어(710-A)에서 출력된 데이터는 배치 정규화 레이어 및/또는 활성화 레이어에서 처리된 후 B 컨볼루션 레이어(710-B)로 입력될 수 있다.
변형 합성 영상(70)은 제 1 서브 모델로 입력되어 크기가 감소될 수 있다. 변형 합성 영상(70)은 A 컨볼루션 레이어(710-A)로 입력되어 컨볼루션 처리되고, A 컨볼루션 레이어(710-A)의 출력 데이터(720-A)는 B 컨볼루션 레이어(710-B)로 입력되어 컨볼루션 처리될 수 있다. 그리고, B 컨볼루션 레이어(710-B)의 출력 데이터(720-B)는 C 컨볼루션 레이어(710-C)로 입력되어 컨볼루션 처리될 수 있고, C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)는 D 컨볼루션 레이어(710-D)로 입력되어 컨볼루션 처리될 수 있다.
D 컨볼루션 레이어(710-D)에서 출력된 데이터(720-D)는 제 2 서브 모델로 입력되어 크기가 증가될 수 있다. D 컨볼루션 레이어(710-D)에서 출력된 데이터(720-D)는 E 컨볼루션 레이어(710-E)로 입력되어 컨볼루션 처리되고, E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)는 F 컨볼루션 레이어(710-F)로 입력되어 컨볼루션 처리될 수 있다. 그리고, F 컨볼루션 레이어(710-F)의 출력 데이터(720-F)는 G 컨볼루션 레이어(710-G)로 입력되어 컨볼루션 처리될 수 있고, G 컨볼루션 레이어(710-G)의 출력 데이터(720-G)는 H 컨볼루션 레이어(710-H)로 입력되어 컨볼루션 처리될 수 있다.
일 실시예에서, 제 1 서브 모델에 포함된 적어도 하나의 컨볼루션 레이어에서 출력된 데이터는 후속하는 레이어로 입력될 수 있는 동시에, 제 2 서브 모델에 포함된 적어도 하나의 컨볼루션 레이어에서 출력된 데이터에 결합(concatenation)될 수 있다. 결합된 데이터는 제 2 서브 모델의 후속하는 레이어로 입력될 수 있다.
도 8을 참조하면, C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)는 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)와 결합되어 F 컨볼루션 레이어(710-F)로 입력되고, B 컨볼루션 레이어(710-B)의 출력 데이터(720-B)는 F 컨볼루션 레이어(710-F)의 출력 데이터(720-F)와 결합되어 G 컨볼루션 레이어(710-G)로 입력될 수 있다. 그리고, A 컨볼루션 레이어(710-A)의 출력 데이터(720-A)는 G 컨볼루션 레이어(710-G)의 출력 데이터(720-G)와 결합되어 H 컨볼루션 레이어(710-H)로 입력될 수 있다.
서로 결합되는 C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)와 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E), B 컨볼루션 레이어(710-B)의 출력 데이터(720-B)와 F 컨볼루션 레이어(710-F)의 출력 데이터(720-F), 그리고, A 컨볼루션 레이어(710-A)의 출력 데이터(720-A)와 G 컨볼루션 레이어(710-G)의 출력 데이터(720-G)는 서로 동일한 크기를 가질 수 있다. 즉, 제 1 서브 모델의 중간 출력 결과를 제 2 서브 모델의 중간 출력 결과에 결합시킬 때, 결합되는 중간 출력 결과는 서로 동일한 크기를 갖는 것이다.
일 실시예에서는, 서로 결합되는, 제 1 서브 모델(310)의 컨볼루션 레이어의 출력 데이터와 제 2 서브 모델(330)의 컨볼루션 레이어의 출력 데이터의 크기는 상이할 수도 있다. 예를 들어, C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)와 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)는 서로 상이한 크기를 가질 수 있다. 일 예에서, 일정한 컨볼루션 처리를 위해 F 컨볼루션 레이어(710-F)는 서로 상이한 크기의 복수의 필터 커널을 가질 수 있다. C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)의 크기가 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)의 크기보다 큰 경우, F 컨볼루션 레이어(710-F)는 큰 크기의 제 1 필터 커널로 C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)를 컨볼루션 처리하고, 작은 크기의 제 2 필터 커널로 E 컨볼루션 레이어(710-F)의 출력 데이터(720-F)를 컨볼루션 처리할 수 있다. 이에 의해, 제 1 필터 커널을 이용한 컨볼루션 결과 출력되는 데이터와 제 2 필터 커널을 이용한 컨볼루션 결과 출력되는 데이터는 서로 동일한 크기를 가질 수 있다.
다른 예에서, F 컨볼루션 레이어(710-F)에 할당된 필터 커널의 크기는 모두 동일하되, C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)의 크기가 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)의 크기보다 큰 경우, C 컨볼루션 레이어(710-C)의 출력 데이터(720-C)를 컨볼루션 처리하기 위한 제 1 스트라이드가 E 컨볼루션 레이어(710-E)의 출력 데이터(720-E)를 컨볼루션 처리하기 위한 제 2 스트라이드보다 클 수 있다. 이에 의해, 제 1 스트라이드에 의한 컨볼루션 결과 출력되는 데이터와 제 2 스트라이드에 의한 컨볼루션 결과 출력되는 데이터는 서로 동일한 크기를 가질 수 있다.
도 9는 일 실시예에 따른 합성 모델(300)과 추출 모델(700)을 훈련시키는 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 훈련용 원본 영상(910)과 훈련용 워터마크 영상(930)이 합성 모델(300)로 입력되고, 합성 모델(300)에서 훈련용 합성 영상(950)이 출력될 수 있다. 그리고, 훈련용 합성 영상(950)에 대해 변형 모델(900)이 적용되어 훈련용 변형 합성 영상(970)이 생성될 수 있다. 훈련용 변형 합성 영상(970)은 추출 모델(700)에 입력되고, 추출 모델(700)에서 워터마크 영상(990)이 출력될 수 있다.
일 실시예에서, 합성 모델(300)은 훈련용 원본 영상(910)과 훈련용 합성 영상(950) 사이의 차이에 기초하여 산출되는 제 1 손실 정보가 감소되도록 훈련될 수 있다. 합성 모델(300)은 훈련용 원본 영상(910)과 훈련용 합성 영상(950) 사이의 차이에 기초하여 산출되는 제 1 손실 정보가 최소화되도록 훈련될 수도 있다. 제 1 손실 정보는 예를 들어, L1-norm 값, L2-norm 값, SSIM 값, PSNR-HVS 값, MS-SSIM 값, VIF 값 및 VMAF 값 중 어느 하나 또는 이들 중 2개 이상을 조합한 결과가 이용될 수 있다. 또한, 일 예에서, 제 1 손실 정보는, 훈련용 원본 영상(910)과 훈련용 합성 영상(950) 각각을 특징 맵 추출을 위한 DNN에 입력한 후, DNN에서 출력되는 두 특징 맵 사이의 차이에 해당할 수도 있다. 상기 DNN은 예를 들어, VGG-16이고, 훈련용 원본 영상(910) 및 훈련용 합성 영상(950)에 대응하는 특징 맵은 VGG-16의 ReLU2_2에서 출력되는 특징 맵을 포함할 수 있다.
제 1 손실 정보가 감소 또는 최소화되도록 훈련된다는 것은, 훈련용 원본 영상(910)과 차이가 거의 없는 훈련용 합성 영상(950)이 생성된다는 것을 의미할 수 있다. 즉, 제 1 손실 정보가 감소 또는 최소화되도록 훈련됨으로써 훈련용 합성 영상(950) 내 워터마크의 가시성이 감소될 수 있다.
일 실시예에서, 추출 모델(700)은 훈련용 워터마크 영상(930)과 추출 모델(700)에서 출력되는 워터마크 영상(990) 사이의 차이에 기초하여 산출되는 제 2 손실 정보가 감소되도록 훈련될 수 있다. 추출 모델(700)은 제 2 손실 정보가 최소화되도록 훈련될 수도 있다. 제 2 손실 정보는 예를 들어, L1-norm 값, L2-norm 값, SSIM 값, PSNR-HVS 값, MS-SSIM 값, VIF 값 및 VMAF 값 중 어느 하나 또는 이들 중 2개 이상을 조합한 결과가 이용될 수 있다. 또한, 일 예에서, 제 2 손실 정보는, 훈련용 워터마크 영상(930)과 추출 모델(700)에서 출력되는 워터마크 영상(990) 각각을 특징 맵 추출을 위한 DNN에 입력한 후, DNN에서 출력되는 두 특징 맵 사이의 차이에 해당할 수도 있다. 상기 DNN은 예를 들어, VGG-16일 수 있다.
제 2 손실 정보가 감소 또는 최소화되도록 훈련된다는 것은, 훈련용 합성 영상(950)에 대해 다양한 변형 공격이 가해지더라도 훈련용 변형 합성 영상(970)으로부터 워터마크 영상(990)이 잘 추출될 수 있게 한다는 것을 의미할 수 있다. 즉, 추출 모델(700)이 제 2 손실 정보가 감소 또는 최소화되도록 훈련됨으로써 추출 모델(700)은 훈련용 변형 합성 영상(970)으로부터 워터마크 영상(990)을 보다 정확히 추출할 수 있는 것이다.
일 실시예에서, 합성 모델(300)과 추출 모델(700)은 제 1 손실 정보와 제 2 손실 정보를 결합한 최종 손실 정보가 감소되도록 훈련될 수 있다. 또는 합성 모델(300)과 추출 모델(700)은 제 1 손실 정보와 제 2 손실 정보를 결합한 최종 손실 정보가 최소화되도록 훈련될 수도 있다.
상기 최종 손실 정보는 하기의 수학식 1에 따라 산출될 수 있다.
[수학식 1]
L = λimg_mseLimg_mse + λvggLvgg + λwm_mseLwm_mse
상기 수학식 1에서 L은 최종 손실 정보, Limg_mse는 훈련용 원본 영상(910)과 훈련용 합성 영상(950)의 차이에 기초하여 산출되는 손실 정보로서, L1-norm 값, L2-norm 값, SSIM 값, PSNR-HVS 값, MS-SSIM 값, VIF 값 및 VMAF 값 중 어느 하나 또는 이들 중 2개 이상을 조합한 결과, Lvgg은 훈련용 원본 영상(910)과 훈련용 합성 영상(950)을 VGG-16에 입력하여 ReLU2_2에서 출력되는 특징 맵의 차이에 기초하여 산출된 손실 정보, Lwm_mse는 훈련용 워터마크 영상(930)과 추출 모델(700)에서 출력되는 워터마크 영상(990) 사이의 차이에 기초하여 산출되는 손실 정보를 나타낸다. 그리고, λimg_mse, λvgg 및 λwm_mse는 손실 정보들 각각에 적용되는 가중치를 나타낸다.
상기 수학식 1에서 λimg_mse 및 λvgg는 λwm_mse보다 크게 설정될 수 있다. λimg_mse 및 λvgg를 λwm_mse보다 크게 설정한다는 것은 훈련용 합성 영상(950) 내 워터마크의 가시성을 워터마크 영상(990)의 추출 강인성보다 중요하게 반영한다는 것을 의미한다. 다시 말하면, Limg_mse와 Lvgg에 큰 값의 가중치를 적용함으로써, 최종 손실 정보의 크기가 Limg_mse와 Lvgg에 보다 큰 영향을 받게 하여 훈련용 원본 영상(910)과 훈련용 합성 영상(950)의 차이를 감소시키고자 함이다.
한편, 도 9에서 변형 모델(900)은 합성 영상(50)에 가해질 수 있는 다양한 종류의 변형 공격을 모델링한 것으로서, 전술한 바와 같이, 변형 공격은 코덱을 통한 코딩, 노이즈 추가, 양자화, 회전, 축소, 확대, 픽셀 위치 변경 및 필터링을 포함할 수 있다. 변형 모델(900)은 여러 변형 공격 각각에 대응하여 결정될 수 있다.
변형 공격들 중 미분 가능한 변형 공격(예를 들어, 노이즈 추가, 축소, 확대, 픽셀 이동 등)에 대한 전파 함수(forward function) 및 역전파 함수(backward function), 그리고, 미분 불가능한 변형 공격(예를 들어, 코덱을 통한 코딩, 양자화, 메디안(median) 필터링 등))에 대한 전파 함수의 모델링은 공지된 모델링 방법에 따라 결정 가능하지만, 미분 불가능한 변형 공격의 역전파 함수에 대한 모델링은 문제가 된다.
도 10을 참조하면, x가 변형 모델(900)에 입력되고, 변형 모델(900)에서 y가 출력될 때, 미분 불가능한 변형 공격의 역전파 함수의 부분 미분은 1로 근사할 수 있다. 이는 공격자가 입력 영상에 변형 공격을 가하고자 하더라도 공격자는 입력 영상과 매우 유사한 출력 영상을 생성할 것이라는 가정에 근거한다.
최종 손실 정보를 L라 하고 x에 대한 L의 미분을 dL/dx라 할 때, dL/dx 는 미분 연쇄법칙에 의해 y에 대한 L의 미분인 dL/dy 와 x에 대한 y의 미분인 dy/dx 의 곱으로 표현된다. dy/dx는 아래의 수학식 2에 따라 1로 치환될 수 있다.
[수학식 2]
Figure PCTKR2020009991-appb-I000001
도 11은 원본 영상(1110), 일 실시예에 따른 영상 합성 방법에 따라 생성된 합성 영상(1150) 및 일 실시예에 따른 영상 추출 방법에 따라 생성된 워터마크 영상(1190)을 도시하는 도면이다.
도 11을 참조하면, 합성 모델(300)은 원본 영상(1110)과 합성 영상(1150)의 차이가 감소 또는 최소화되도록 훈련되었기 때문에 원본 영상(1110)과 합성 영상(1150)의 차이를 눈으로 식별하기 어렵다. 즉, 합성 영상(50)에서 워터마크를 발견하기 어렵다. 또한, 추출 모델(700)은 워터마크 영상(1190)의 추출 능력이 증가 또는 최대화되도록 훈련되었기 때문에 워터마크를 식별할 수 없는 합성 영상(1150)에서도 워터마크(1190)를 추출할 수 있다.
도 11에 도시된 워터마크 영상(1190) 내 점(dot)은 삽입한 워터마크로서 메시지를 나타낸다. 워터마크는 예를 들어, 0 또는 1의 값을 가질 수 있다. 예를 들어, 하얀색 점은 0의 값을, 검은색 점은 1의 값을 가질 수 있다. 다시 말하면, 워터마크는 두 개의 값 중 어느 하나를 가지도록 삽입될 수 있는 것이다. 워터마크를 구성하는 각 점은 2차원 가우시안의 형태를 가질 수 있으며, 이러한 2차원 가우시안 형태에 따라 합성 영상(1150) 내 워터마크의 가시성이 보다 감소될 수 있다.
도 12는 일 실시예에 따른 영상 합성 장치(100)가 적용되는 환경을 설명하기 위한 도면이다.
도 12를 참조하면, 서버(1210)와 단말 장치(1230)들은 네트워크를 통해 통신할 수 있다. 서버(1210)는 단말 장치(1230)의 요청에 따라 단말 장치(1230)로 영상을 전송하고, 단말 장치(1230)는 서버(1210)로부터 수신된 영상을 디스플레이에 표시할 수 있다.
일 예시에서, 상기 서버(1210)는 웹툰 서비스를 제공할 수 있다. 단말 장치(1230)는 서버(1210)에 접속하여 사용자가 선택한 웹툰의 전송을 요청하고, 서버(1210)는 단말 장치(1230)에 의해 선택된 웹툰 컨텐츠(즉, 영상)를 단말 장치(1230)로 전송할 수 있다. 실시예에서, 서버(1210)는 단말 장치(1230)의 사용자가 일정 액수의 비용을 지불하거나, 일정 포인트를 사용한 경우에 웹툰 컨텐츠를 단말 장치(1230)로 전송할 수 있다.
일 실시예에서, 전술한 영상 합성 장치(100)는 서버(1210)에 포함될 수 있다. 이 경우, 서버(1210)는 단말 장치(1230)가 요청한 원본 영상(10)과, 워터마크 영상(30)을 합성 모델(300)에 입력하여 합성 영상(50)을 생성하고, 합성 영상(50)을 단말 장치(1230)로 전송할 수 있다. 상기 워터마크 영상(30)은 단말 장치(1230)의 사용자에게 할당된 ID를 포함할 수 있다. 단말 장치(1230)는 서버(1210)로부터 수신된 합성 영상(50)을 디스플레이에 표시할 수 있다. 또한, 서버(1210)는 외부의 장치로부터 수신되거나 관리자에 의해 입력된 변형 합성 영상(70)을 추출 모델(700)에 입력하여 워터마크 영상(90)을 획득할 수도 있다. 서버(1210)는 추출한 워터마크 영상(90)이 합성 영상(50)을 생성하기 위해 이용된 워터마크 영상(30)에 대응하는지를 판단할 수 있고, 판단 결과를 모니터, 스피커, 프린터 등의 출력 장치를 통해 출력할 수 있다.
또한, 일 실시예에서, 영상 합성 장치(100)는 단말 장치(1230)에 포함될 수 있다. 단말 장치(1230)는 사용자가 선택한 영상의 전송을 서버(1210)로 요청하고, 서버(1210)로부터 원본 영상(10)을 수신할 수 있다. 단말 장치(1230)는 수신된 원본 영상(10)과 워터마크 영상(30)을 합성 모델(300)에 입력하여 합성 영상(50)을 생성하고, 생성된 합성 영상(50)을 단말 장치(1230)의 디스플레이에 표시할 수 있다. 또한, 단말 장치(1230)는 외부의 장치로부터 수신되거나 사용자에 의해 입력된 변형 합성 영상(70)을 추출 모델(700)에 입력하여 워터마크 영상(90)을 획득할 수도 있다. 단말 장치(1230)는 추출한 워터마크 영상(90)이 합성 영상(50)을 생성하기 위해 이용된 워터마크 영상(30)에 대응하는지를 판단할 수 있고, 판단 결과를 모니터, 스피커, 프린터 등의 출력 장치를 통해 출력할 수 있다.
한편, 상술한 본 개시의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 작성된 프로그램은 매체에 저장될 수 있다.
매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상, 본 개시의 기술적 사상을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 개시의 기술적 사상은 상기 실시예들에 한정되지 않고, 본 개시의 기술적 사상의 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러 가지 변형 및 변경이 가능하다.

Claims (13)

  1. 영상 합성 장치에 의한 영상 합성 방법에 있어서,
    원본 영상과 워터마크 영상을 합성 모델에 입력하는 단계; 및
    상기 합성 모델에서 출력되는 합성 영상을 획득하는 단계를 포함하되,
    상기 원본 영상과 상기 워터마크 영상 각각은 상기 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합(concatenation)되고, 상기 결합된 결과는 제 3 서브 모델에서 처리되어 상기 합성 영상이 생성되는 것을 특징으로 하는 영상 합성 방법.
  2. 제1항에 있어서,
    상기 제 1 서브 모델에 포함된 레이어의 출력 데이터는, 상기 제 3 서브 모델에 포함된 레이어의 출력 데이터에 결합되어 상기 제 3 서브 모델의 다음 레이어에 입력되는 것을 특징으로 하는 영상 합성 방법.
  3. 제2항에 있어서,
    상기 제 1 서브 모델에 포함된 레이어의 출력 데이터의 크기와 상기 제 3 서브 모델에 포함된 레이어의 출력 데이터의 크기는 서로 동일한 것을 특징으로 하는 영상 합성 방법.
  4. 제1항에 있어서,
    상기 원본 영상은 상기 제 3 서브 모델의 출력 데이터에 합산되어 상기 합성 영상이 생성되는 것을 특징으로 하는 영상 합성 방법.
  5. 제1항에 있어서,
    상기 제 1 서브 모델은 상기 원본 영상의 크기를 감소시키기 위한 적어도 하나의 레이어를 포함하고, 상기 제 2 서브 모델은 상기 워터마크 영상의 크기를 감소시키기 위한 적어도 하나의 레이어를 포함하고, 상기 제 3 서브 모델은 상기 결합된 결과의 크기를 증가시키기 위한 적어도 하나의 레이어를 포함하는 것을 특징으로 하는 영상 합성 방법.
  6. 제1항에 있어서,
    상기 영상 합성 방법은,
    변형 합성 영상을 추출 모델에 입력하는 단계; 및
    상기 추출 모델에서 출력되는 워터마크 영상을 획득하는 단계를 더 포함하되,
    상기 추출 모델은 상기 변형 합성 영상의 크기를 감소시키는 제 1 서브 모델 및 상기 제 1 서브 모델의 출력 데이터의 크기를 증가시키는 제 2 서브 모델을 포함하는 것을 특징으로 하는 영상 합성 방법.
  7. 제6항에 있어서,
    상기 추출 모델의 상기 제 1 서브 모델에 포함된 레이어의 출력 데이터는, 상기 추출 모델의 제 2 서브 모델에 포함된 레이어의 출력 데이터에 결합되어 상기 제 2 서브 모델의 다음 레이어에 입력되는 것을 특징으로 하는 영상 합성 방법.
  8. 제6항에 있어서,
    상기 영상 합성 방법은,
    훈련용 원본 영상과 훈련용 워터마크 영상을 상기 합성 모델에 입력하는 단계; 및
    훈련용 변형 합성 영상을 상기 추출 모델에 입력하는 단계를 더 포함하되,
    상기 합성 모델 및 상기 추출 모델은, 상기 합성 모델에서 출력되는 훈련용 합성 영상과 상기 훈련용 원본 영상 사이의 차이에 기초하여 산출되는 제 1 손실 정보, 및 상기 훈련용 워터마크 영상과 상기 추출 모델에서 출력되는 워터마크 영상 사이의 차이에 기초하여 산출되는 제 2 손실 정보를 결합한 최종 손실 정보가 감소되도록 훈련되는 것을 특징으로 하는 영상 합성 방법.
  9. 제8항에 있어서,
    상기 영상 합성 방법은,
    상기 훈련용 합성 영상을 변형 모델에 따라 변형하여 상기 훈련용 변형 합성 영상을 생성하는 단계를 더 포함하되,
    상기 변형 모델은 복수의 변형 방법 각각에 대응하여 생성되는 것을 특징으로 하는 영상 합성 방법.
  10. 제8항에 있어서,
    상기 제 1 손실 정보와 상기 제 2 손실 정보 각각에 제 1 가중치 및 제 2 가중치가 적용된 후 서로 더해짐으로써 상기 최종 손실 정보가 산출되며,,
    상기 제 1 가중치는, 상기 제 2 가중치보다 큰 것을 특징으로 하는 영상 합성 방법.
  11. 제1항에 있어서,
    상기 영상 합성 방법은,
    서버에 접속한 단말 장치의 사용자의 식별 정보에 대응하는 상기 워터마크 영상을 획득하는 단계를 더 포함하는 것을 특징으로 하는 영상 합성 방법.
  12. 하드웨어와 결합하여 제1항 내지 제11항 중 어느 하나의 항의 영상 합성 방법을 실행하기 위하여 매체에 저장된 프로그램.
  13. 프로세서 및
    합성 모델 및 적어도 하나의 프로그램을 저장하는 메모리를 포함하되,
    상기 프로세서는 상기 적어도 하나의 프로그램이 실행됨에 따라,
    원본 영상과 워터마크 영상을 상기 합성 모델에 입력하고,
    상기 합성 모델에서 출력되는 합성 영상을 획득하며,
    상기 원본 영상과 상기 워터마크 영상 각각은 상기 합성 모델의 제 1 서브 모델과 제 2 서브 모델 각각에서 처리된 후 결합되고, 상기 결합된 결과는 제 3 서브 모델에서 처리되어 상기 합성 영상이 생성되는 것을 특징으로 하는 영상 합성 장치.
PCT/KR2020/009991 2019-08-01 2020-07-29 워터마크의 삽입을 위한 영상 합성 장치 및 방법 WO2021020876A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022506211A JP7307266B2 (ja) 2019-08-01 2020-07-29 ウォーターマークを挿入するための画像合成装置および方法
US17/649,442 US20220156873A1 (en) 2019-08-01 2022-01-31 Image synthesis device and method for embedding watermark

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190094025A KR102412135B1 (ko) 2019-08-01 2019-08-01 워터마크의 삽입을 위한 영상 합성 장치 및 방법
KR10-2019-0094025 2019-08-01

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/649,442 Continuation US20220156873A1 (en) 2019-08-01 2022-01-31 Image synthesis device and method for embedding watermark

Publications (1)

Publication Number Publication Date
WO2021020876A1 true WO2021020876A1 (ko) 2021-02-04

Family

ID=74228724

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/009991 WO2021020876A1 (ko) 2019-08-01 2020-07-29 워터마크의 삽입을 위한 영상 합성 장치 및 방법

Country Status (4)

Country Link
US (1) US20220156873A1 (ko)
JP (1) JP7307266B2 (ko)
KR (1) KR102412135B1 (ko)
WO (1) WO2021020876A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113837915A (zh) * 2021-07-26 2021-12-24 景德镇陶瓷大学 一种边界区域二值化的陶瓷水印模型训练方法和嵌密方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210042696A (ko) * 2019-10-10 2021-04-20 삼성전자주식회사 모델 학습 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100095244A (ko) * 2009-02-20 2010-08-30 삼성전자주식회사 워터마크 삽입 기능이 포함된 영상 재생 방법 및 그 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017130334A1 (ja) * 2016-01-27 2017-08-03 楽天株式会社 画像処理装置、画像処理方法、及びプログラム
EP3983990A4 (en) * 2019-06-12 2023-06-21 Rutgers, the State University of New Jersey LIGHT FIELD MESSAGING

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100095244A (ko) * 2009-02-20 2010-08-30 삼성전자주식회사 워터마크 삽입 기능이 포함된 영상 재생 방법 및 그 장치

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BITA DARVISH ROUHANI ; HUILI CHEN ; FARINAZ KOUSHANFAR: "DeepSigns: A Generic Watermarking Framework for Protecting the Ownership of Deep Learning Models", IACR, INTERNATIONAL ASSOCIATION FOR CRYPTOLOGIC RESEARCH, vol. 20180601:000038, Report 2018/311, 3 April 2018 (2018-04-03), International Association for Cryptologic Research, pages 1 - 8, XP061025451 *
DEEBA FARAH; TEFERA GETENET; KUN SHE; MEMON HIRA: "Protecting the Intellectual Properties of Digital Watermark Using Deep Neural Network", 2019 4TH INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS ENGINEERING (ICISE), IEEE, 4 May 2019 (2019-05-04), pages 91 - 95, XP033689139, DOI: 10.1109/ICISE.2019.00025 *
HUILI CHEN; BITA DARVISH ROUHANI; FARINAZ KOUSHANFAR: "BlackMarks: Blackbox Multibit Watermarking for Deep Neural Networks", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 31 March 2019 (2019-03-31), 201 Olin Library Cornell University Ithaca, NY 14853, XP081160235 *
MARTIN ATZMUELLER, ALVIN CHIN, FREDERIK JANSSEN, IMMANUEL SCHWEIZER, CHRISTOPH TRATTNER (EDS.): "Big data analytics in the social and ubiquitous context : 5th International Workshop on Modeling Social Media, MSM 2014, 5th International Workshop on Mining Ubiquitous and Social Environments, MUSE 2014 and first International Workshop on Machine Learning for Urban Sensor Data, SenseML 2014 : revis", vol. 11219 Chap.40, 7 October 2018, SPRINGER, Berlin, Heidelberg, ISBN: 978-3-642-17318-9, article ZHU JIREN; KAPLAN RUSSELL; JOHNSON JUSTIN; FEI-FEI LI: "HiDDeN: Hiding Data With Deep Networks", pages: 682 - 697, XP047489042, 032548, DOI: 10.1007/978-3-030-01267-0_40 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113837915A (zh) * 2021-07-26 2021-12-24 景德镇陶瓷大学 一种边界区域二值化的陶瓷水印模型训练方法和嵌密方法

Also Published As

Publication number Publication date
US20220156873A1 (en) 2022-05-19
KR20210015335A (ko) 2021-02-10
JP7307266B2 (ja) 2023-07-11
KR102412135B1 (ko) 2022-06-23
JP2022543222A (ja) 2022-10-11

Similar Documents

Publication Publication Date Title
CN109767375B (zh) 图像水印嵌入和追溯的方法及系统
WO2021020876A1 (ko) 워터마크의 삽입을 위한 영상 합성 장치 및 방법
US11704764B2 (en) Method and system for generating watermark on the basis of graphic, terminal, and medium
WO2019050360A1 (en) ELECTRONIC DEVICE AND METHOD FOR AUTOMATICALLY SEGMENTING TO BE HUMAN IN AN IMAGE
JPH06343128A (ja) デジタル像符牒の処理方法及びシステム
CN111932431B (zh) 基于水印分解模型的可见水印去除方法和电子设备
WO2021040318A1 (ko) 신분증 인식 모델을 이용한 분산 학습 방법, 서버, 어플리케이션 및 이를 통한 신분증 인식 방법
WO2020060019A1 (ko) 글자 검출 장치, 방법 및 시스템
EP2281260A2 (en) Apparatus and method for inputting password using game
CN111738769B (zh) 视频处理方法及装置
CN110249329B (zh) 防止网络漫画擅自复制方法及记录介质
WO2022216020A1 (ko) 영상/음성의 생성 이력과 연관된 메타데이터를 포함한 원본 영상/음성 파일 또는 딥페이크 변조 파일을 생성하는 영상/음성획득 또는 편집 장치, 원본 영상/음성 파일 또는 딥페이크 변조 파일 관련 해시값을 수신 및 저장하는 해시뱅크 서버, 원본 영상/음성 파일 또는 딥페이크 변조 파일을 수신 및 처리하는 서버 및 방법
WO2016108562A1 (ko) 지문 정보의 코딩 및 인식 시스템, 그리고 그 구동 방법
WO2019083159A1 (ko) 저작권 보호를 통한 콘텐츠 유통 방법 및 그 시스템
Shirali-Shahreza A new method for real-time steganography
CN113962838A (zh) 水印图像嵌入/增强方法、装置及计算机系统
WO2021261850A1 (ko) 가치 평가를 이용한 개인 컨텐츠 판매 방법 및 시스템
US20030009673A1 (en) Network access terminal, network system, method of network system, storage medium, and program code
JP2006352628A (ja) デジタル画像の作成・送信・受信装置およびその配受信システム
WO2021187833A1 (ko) 배너 이미지 자동 생성 방법 및 장치, 컴퓨터 판독 가능한 저장 매체
CN115205089A (zh) 图像加密方法、网络模型的训练方法、装置及电子设备
WO2022004970A1 (ko) 신경망 기반의 특징점 학습 장치 및 방법
WO2021261727A1 (ko) 캡슐 내시경 영상 판독 시스템 및 방법
WO2021107592A1 (en) System and method for precise image inpainting to remove unwanted content from digital images
EP0980179A1 (en) Method of appending information to image and method of extracting information from image

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20848500

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022506211

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20848500

Country of ref document: EP

Kind code of ref document: A1