KR20230115028A - Method and apparatus for determining region with high complexity from image of contents to insert identification information therein - Google Patents

Method and apparatus for determining region with high complexity from image of contents to insert identification information therein Download PDF

Info

Publication number
KR20230115028A
KR20230115028A KR1020220011502A KR20220011502A KR20230115028A KR 20230115028 A KR20230115028 A KR 20230115028A KR 1020220011502 A KR1020220011502 A KR 1020220011502A KR 20220011502 A KR20220011502 A KR 20220011502A KR 20230115028 A KR20230115028 A KR 20230115028A
Authority
KR
South Korea
Prior art keywords
image
complexity
determining
tile
unit
Prior art date
Application number
KR1020220011502A
Other languages
Korean (ko)
Other versions
KR102689412B1 (en
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 KR1020220011502A priority Critical patent/KR102689412B1/en
Publication of KR20230115028A publication Critical patent/KR20230115028A/en
Application granted granted Critical
Publication of KR102689412B1 publication Critical patent/KR102689412B1/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/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/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Human Resources & Organizations (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Economics (AREA)
  • Molecular Biology (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Image Processing (AREA)

Abstract

A method is provided that includes: extracting a unit cut included in an image from the image of content including a plurality of unit cuts; determining at least one complex area with high complexity among the areas within the unit cut as an area where identification information associated with the content (e.g., a watermark including identification information of a user who viewed the content) is inserted. Therefore, it is possible to ensure the robustness of identification information against piracy.

Description

식별 정보를 삽입하기 위해 콘텐츠의 이미지로부터 복잡도가 높은 영역을 결정하는 방법 및 장치{METHOD AND APPARATUS FOR DETERMINING REGION WITH HIGH COMPLEXITY FROM IMAGE OF CONTENTS TO INSERT IDENTIFICATION INFORMATION THEREIN}Method and apparatus for determining high complexity region from image of content to insert identification information

본 개시는 콘텐츠의 이미지로부터 복잡도가 높은 영역을 결정하는 방법 및 장치에 관한 것으로, 보다 자세하게는, 복수의 컷들을 포함하는 웹툰 콘텐츠와 같은 콘텐츠의 이미지로부터 식별 정보를 삽입하기에 적합한 복잡도가 높은 영역을 결정하는 방법 및 장치와 관련된다.The present disclosure relates to a method and apparatus for determining a region of high complexity from an image of content, and more particularly, to a region of high complexity suitable for inserting identification information from an image of content such as webtoon content including a plurality of cuts. It relates to a method and apparatus for determining.

최근 만화 및 카툰과 같은 콘텐츠를 온라인으로 제공하는 소위 웹툰 콘텐츠 제공 서비스에 대한 관심이 높아지고 있다. 이러한, 웹툰 콘텐츠는 인물, 동물, 사물 등의 모습을 캐릭터로서 표현하여 나타내고, 지문이나 대사를 통해 유머나 풍자 또는 일정한 줄거리를 담음으로써 독자들에게 읽을거리를 제공한다. Recently, interest in a so-called webtoon content providing service that provides content such as cartoons and cartoons online is increasing. These webtoon contents express characters, animals, objects, etc. as characters, and provide readers with something to read by including humor, satire, or a certain plot through fingerprints or lines.

이러한 웹툰 콘텐츠는 독자가 해당 웹툰 콘텐츠를 스크롤링하는 것에 의해 독자에게 읽힐 수 있다. 웹툰 콘텐츠는 복수의 컷들을 포함하며, 독자는 스크롤링을 통해 복수의 컷들을 순차적으로 확인함으로써 웹툰 콘텐츠를 열람할 수 있다. These webtoon contents can be read by the reader by scrolling the corresponding webtoon contents. The webtoon content includes a plurality of cuts, and the reader can browse the webtoon content by sequentially checking the plurality of cuts through scrolling.

웹툰 콘텐츠는 디지털화된 콘텐츠로서 예컨대, 이미지와 같은 형태로 제공되며, 이러한 이미지와 같은 형태의 웹툰 콘텐츠는 2차적인 복제 및 가공이 상대적으로 쉽다. 웹툰 콘텐츠에 대한 불법적인 복제 및 가공을 방지하기 위해, 웹툰 콘텐츠 내에는 소정의 식별 정보가 삽입될 수 있고, 불법적인 복제 및 가공된 웹툰 콘텐츠로부터 이러한 식별 정보를 추출함으로써 불법적인 복제 및 가공을 수행한 주체를 탐지해 낼 수 있다. Webtoon content is digitized content and is provided in the form of, for example, an image, and secondary copying and processing of webtoon content in the form of such an image is relatively easy. In order to prevent illegal copying and processing of webtoon contents, predetermined identification information can be inserted into webtoon contents, and illegal copying and processing are performed by extracting such identification information from illegally copied and processed webtoon contents. One subject can be detected.

웹툰 콘텐츠에 삽입되는 이러한 식별 정보는 불법적인 복제 및 가공에 효과적으로 대처할 수 있도록 강인성을 가져야 하며, 불법 복제자나 불법적인 복제 및 가공된 웹툰 콘텐츠를 열람하는 열람자에 의해 용이하게 인식되지 않아야 한다. Such identification information inserted into webtoon contents must have toughness to effectively cope with illegal copying and processing, and must not be easily recognized by pirates or readers of illegally copied and processed webtoon contents.

한편, 한국공개특허 제10-2011-0123393호(공개일 2011년 11월 15일)에는 온라인 상의 직거래를 통해 모바일 디지털 콘텐츠 형태의 만화를 제공하는 기술이 개시되어 있다.On the other hand, Korean Patent Publication No. 10-2011-0123393 (published on November 15, 2011) discloses a technology for providing cartoons in the form of mobile digital contents through direct online transactions.

상기에서 설명된 정보는 단지 이해를 돕기 위한 것이며, 종래 기술의 일부를 형성하지 않는 내용을 포함할 수 있으며, 종래 기술이 통상의 기술자에게 제시할 수 있는 것을 포함하지 않을 수 있다.The information described above is for illustrative purposes only and may include material that does not form part of the prior art, and may not include what the prior art may suggest to those skilled in the art.

일 실시예는, 복수의 단위 컷(즉, 장면 컷)들을 포함하는 콘텐츠의 이미지로부터 해당 이미지에 포함된 단위 컷을 추출하고, 단위 컷 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역을 콘텐츠와 연관된 식별 정보(예컨대, 콘텐츠를 열람한 사용자의 식별 정보를 포함하는 워터마크)가 삽입될 영역으로 결정하는 방법을 제공할 수 있다.In one embodiment, a unit cut included in a corresponding image is extracted from an image of content including a plurality of unit cuts (ie, scene cuts), and at least one complex region having a higher complexity is selected from among regions within the unit cut. It is possible to provide a method for determining an area where identification information associated with (eg, a watermark including identification information of a user who browses content) is to be inserted.

일 실시예는, 식별 정보를 삽입하기 위한 영역을 결정하기 위해 콘텐츠의 이미지 내에서 단위 컷을 추출함에 있어서, 이미지의 픽셀 분석에 기반하는 룰-기반의(rule-based) 방법 또는 오브젝트 또는 장면 컷을 검출하도록 학습된 딥러닝 모델을 사용하는 방법을 제공할 수 있다. In one embodiment, in extracting a unit cut in an image of content to determine a region for inserting identification information, a rule-based method based on pixel analysis of an image or an object or scene cut It is possible to provide a method of using a deep learning model trained to detect .

일 실시예는, 식별 정보를 삽입하기 위한 영역으로서, 추출된 단위 컷 내에서 복잡도 점수가 높은 복잡 영역을 결정하기 위해, 이미지의 다양한 파라미터 분석에 기반하는 룰-기반의 방법, 룰-기반의 방법에 따라 결정되는 복잡도를 추정하도록 학습된 딥러닝 모델을 사용하는 방법, 또는 이미지의 분류 모델을 통해 획득되는 어텐션 맵을 사용하는 방법을 사용하는 방법을 제공할 수 있다.An embodiment is a rule-based method based on analyzing various parameters of an image to determine a complex region having a high complexity score within an extracted unit cut as a region for inserting identification information, a rule-based method A method of using a deep learning model trained to estimate the complexity determined according to , or a method of using an attention map obtained through a classification model of an image may be provided.

일 측면에 있어서, 컴퓨터 시스템에 의해 수행되는, 복수의 단위 컷들을 포함하는 콘텐츠의 이미지로부터 복잡 영역을 결정하는 방법에 있어서, 상기 이미지로부터, 상기 이미지에 포함된 단위 컷을 추출하는 단계 및 상기 단위 컷 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역을 상기 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정하는 단계를 포함하는, 복잡 영역을 결정하는 방법이 제공된다. In one aspect, a method for determining a complex region from an image of content including a plurality of unit cuts, performed by a computer system, comprising: extracting unit cuts included in the image from the image; A method for determining a complicated region is provided, comprising determining at least one complex region having a higher complexity among regions within the cut as a region into which identification information associated with the content is to be inserted.

상기 복잡 영역에 삽입될 상기 콘텐츠와 연관된 식별 정보는, 상기 콘텐츠에 삽입되는 워터마크로서 상기 콘텐츠를 열람한 사용자를 식별하기 위한 정보를 포함할 수 있다. The identification information associated with the content to be inserted into the complex area may include information for identifying a user who viewed the content as a watermark inserted into the content.

상기 이미지는, 상기 콘텐츠가 사용자에게 제공될 시에 상기 사용자에게 제공되는 단위 이미지인 서비스 컷 이미지이고, 상기 서비스 컷 이미지는 상기 복수의 단위 컷들 중 적어도 하나의 단위 컷을 포함할 수 있다. The image is a service cut image that is a unit image provided to the user when the content is provided to the user, and the service cut image may include at least one unit cut among the plurality of unit cuts.

상기 이미지는 상기 복수의 단위 컷들을 포함하는 단일한 에피소드 이미지이고, 상기 에피소드 이미지는 복수의 상기 서비스 컷 이미지가 연결되어 생성되고, 상기 추출하는 단계는, 상기 에피소드 이미지를 적어도 하나의 단위 컷을 포함하되 소정의 중복도를 갖는 복수의 분할 이미지들로 분할하는 단계 및 상기 분할 이미지들의 각각으로부터 단위 컷 및 단위 컷의 일부를 추출함으로써, 상기 복수의 단위 컷들의 각각을 추출하는 단계를 포함할 수 있다. The image is a single episodic image including the plurality of unit cuts, the episodic image is generated by connecting a plurality of the service cut images, and the extracting includes the episodic image including at least one unit cut. However, it may include dividing into a plurality of divided images having a predetermined degree of overlap, and extracting each of the plurality of unit cuts by extracting a unit cut and a part of the unit cut from each of the divided images. .

상기 추출하는 단계는, 상기 이미지의 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역을 상기 단위 컷으로 추출하는 단계를 포함할 수 있다. The extracting may include extracting, as the unit cut, a region having unequal pixel values in a horizontal axis direction of the image.

상기 단위 컷을 추출하는 단계는, 상기 이미지의 가로축 방향으로의 픽셀 값들이 동일한 영역을 배경으로 결정하는 단계 및 상기 이미지의 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역의 세로축 방향으로의 길이가 소정의 값 이상인 경우, 상기 픽셀 값들이 동일하지 않은 영역을 상기 단위 컷으로 추출하는 단계를 포함할 수 있다. The extracting of the unit cut may include determining a region having the same pixel values in the horizontal axis direction of the image as a background, and determining a predetermined length in the vertical axis direction of the region having unequal pixel values in the horizontal axis direction of the image. If it is equal to or greater than the value of , extracting a region having unequal pixel values as the unit cut may be included.

상기 추출하는 단계는, 이미지로부터 오브젝트 또는 장면 컷을 검출하도록 미리 학습된 딥러닝 모델을 사용하여, 상기 이미지로부터 오브젝트 또는 장면 컷이 포함된 영역을 추출함으로써 상기 단위 컷을 추출할 수 있다. In the extracting, the unit cut may be extracted by extracting a region including the object or scene cut from the image using a deep learning model pretrained to detect the object or scene cut from the image.

상기 결정하는 단계는, 상기 추출된 단위 컷을 복수의 타일들로 분할하는 단계, 상기 분할된 타일들의 각 타일의 복잡도를 결정하는 단계, 결정된 상기 각 타일의 복잡도에 기반하여, 상기 단위 컷 내에서 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계 - 상기 패치의 각각은 상기 타일들 중 소정의 수의 타일들로 구성됨 - 및 상기 결정된 패치에 대응하는 상기 단위 컷의 영역을 상기 복잡 영역으로 결정하는 단계를 포함할 수 있다. The determining may include dividing the extracted unit cut into a plurality of tiles, determining a complexity of each tile of the divided tiles, and determining a complexity of each tile within the unit cut based on the determined complexity of each tile. Determining at least one patch having a higher complexity score, wherein each of the patches is composed of a predetermined number of tiles among the tiles, and determining an area of the unit cut corresponding to the determined patch as the complex area. steps may be included.

상기 패치를 결정하는 단계는, 상기 각 타일의 복잡도에 기반하여, 상기 각 타일의 크기를 스트라이드(stride)로 하는 슬라이딩 윈도우(sliding window) 방식으로, 각각의 패치의 상기 복잡도 점수를 계산하는 단계 및 계산된 상기 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계를 포함할 수 있다. The determining of the patch may include calculating the complexity score of each patch based on the complexity of each tile in a sliding window method in which a size of each tile is a stride; and and determining at least one patch having a higher calculated complexity score.

상기 타일들 중 소정의 수의 타일들로 구성되는 각 패치의 상기 복잡도 점수는 상기 각 패치에 속하는 타일들의 각각의 상기 복잡도의 합에 기반하여 계산될 수 있다. The complexity score of each patch composed of a predetermined number of tiles among the tiles may be calculated based on the sum of the complexity of each of the tiles belonging to each patch.

상기 패치를 결정하는 단계는, 상기 타일들 중 소정의 수의 타일들로 구성되는 각 패치가, i) 상기 단위 컷에 포함된 말풍선 영역과 교차하는지 여부, ii) 상기 단위 컷에 포함된 식자 영역과 교차하는지 여부, 및 iii) 상기 단위 컷에 포함된 얼굴 영역과 교차하는지 여부 중 적어도 하나의 조건에 더 기반하여, 상기 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계를 포함할 수 있다. The determining of the patch may include determining whether each patch composed of a predetermined number of tiles among the tiles intersects a speech bubble area included in the unit cut, and ii) a composing area included in the unit cut. The method may further include determining at least one patch having a higher complexity score based on at least one condition of intersecting with and iii) intersecting with a face region included in the unit cut.

상기 각 타일의 복잡도를 결정하는 단계는, i) 상기 각 타일과 연관된 엔트로피, ii) 상기 각 타일과 연관된 엣지 밀도(edge density), iii) 상기 각 타일과 연관된 이산 코사인 변환(DCT) 계수의 NZR (non-zero-rate) 및 iv) 상기 각 타일과 연관된 분산 중 적어도 2개에 기반하여 상기 각 타일의 복잡도를 결정할 수 있다. Determining the complexity of each tile comprises: i) entropy associated with each tile, ii) edge density associated with each tile, iii) NZR of a discrete cosine transform (DCT) coefficient associated with each tile The complexity of each tile may be determined based on at least two of (non-zero-rate) and iv) variance associated with each tile.

상기 각 타일의 복잡도를 결정하는 단계는, 상기 i) 내지 iv)를 기 설정된 평균 및 표준편차에 기반하여 표준화하는 단계 및 표준화된 상기 i) 내지 iv) 중 최대값 및 최소값을 배제하여 선택된 중간의 2개의 값에 기반하여 상기 각 타일의 복잡도를 결정하는 단계를 포함할 수 있다. The step of determining the complexity of each tile may include standardizing i) to iv) based on a preset mean and standard deviation, and excluding the maximum and minimum values among the normalized i) to iv), and The step of determining the complexity of each tile based on two values may be included.

상기 각 타일의 복잡도를 결정하는 단계는, 룰-기반(rule-based)의 결정 모델을 사용하여 결정되는 상기 각 타일의 복잡도를 정답(Ground Truth)으로서 추정하도록 미리 학습된 딥러닝 모델을 사용하여 상기 각 타일의 복잡도를 결정할 수 있다.In the step of determining the complexity of each tile, a deep learning model pretrained to estimate the complexity of each tile determined using a rule-based decision model as a ground truth is used. The complexity of each tile may be determined.

상기 룰-기반의 결정 모델은, i) 상기 각 타일과 연관된 엔트로피, ii) 상기 각 타일과 연관된 엣지 밀도(edge density), iii) 상기 각 타일과 연관된 이산 코사인 변환(DCT) 계수의 NZR (non-zero-rate) 및 iv) 상기 각 타일과 연관된 분산 중 적어도 2개에 기반하여 상기 각 타일의 복잡도를 결정하도록 구성된 것일 수 있다. The rule-based decision model is: i) the entropy associated with each tile, ii) the edge density associated with each tile, iii) the NZR of the discrete cosine transform (DCT) coefficient associated with each tile (non -zero-rate) and iv) the complexity of each tile based on at least two of the variance associated with each tile.

상기 결정하는 단계는, 상기 추출된 단위 컷을 이미지를 분류하도록 미리 학습된 분류 모델에 입력시키는 단계, 상기 분류 모델의 복수의 중간층(middle layer)들의 상기 단위 컷과 연관된 피쳐맵들을 획득하는 단계, 상기 피쳐맵들을 시각화하는, 상기 피쳐맵들에 대응하는 어텐션 맵(attention map)들을 생성하는 단계 및 상기 어텐션 맵들을 평균 또는 합(sum)한 어텐션 맵으로부터, 활성화도가 상위인 영역을 나타내는 적어도 하나의 패치에 대응하는 상기 단위 컷의 영역을 상기 복잡 영역으로 결정하는 단계를 포함할 수 있다. The determining step may include inputting the extracted unit cut to a classification model pretrained to classify an image, obtaining feature maps associated with the unit cut of a plurality of middle layers of the classification model, Visualizing the feature maps, generating attention maps corresponding to the feature maps, and at least one indicating a region having a higher activation degree from the attention map obtained by averaging or summing the attention maps. and determining an area of the unit cut corresponding to a patch of the complex area.

상기 콘텐츠는 웹툰 콘텐츠이고, 상기 단위 컷들의 각각은 상기 웹툰 콘텐츠를 구성하는 장면 컷일 수 있다. The content is webtoon content, and each of the unit cuts may be a scene cut constituting the webtoon content.

다른 일 측면에 있어서, 복수의 단위 컷들을 포함하는 콘텐츠의 이미지로부터 복잡 영역을 결정하는 컴퓨터 시스템에 있어서, 상기 컴퓨터 시스템에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 이미지로부터, 상기 이미지에 포함된 단위 컷을 추출하고, 상기 단위 컷 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역을 상기 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정하는, 컴퓨터 시스템이 제공된다.In another aspect, a computer system for determining a complex region from an image of content including a plurality of unit cuts includes at least one processor implemented to execute instructions readable by the computer system, The processor of extracts, from the image, a unit cut included in the image, and determines at least one complex region having a higher complexity among regions within the unit cut as a region into which identification information associated with the content is to be inserted. A computer system is provided.

콘텐츠의 이미지에 포함된 장면 컷 내의 복잡도가 높은 복잡 영역을 결정하여, 결정된 복잡 영역에 워터마크와 같은 식별 정보가 삽입되도록 함으로써, 콘텐츠에 대한 리드로잉(re-drawing) 공격 및/또는 신호 공격(signal attack)과 같은 콘텐트의 불법 복제 및 가공 행위에 대해 식별 정보의 강인성을 보장할 수 있다. A re-drawing attack and/or a signal attack ( It is possible to guarantee robustness of identification information against illegal copying and processing of contents such as signal attack.

장면 컷 내의 복잡도가 높은 복잡 영역에 워터마크와 같은 식별 정보가 삽입됨으로써, 삽입된 식별 정보가 불법 복제자나 불법 복제 및 가공된 웹툰 콘텐츠를 열람하는 열람자에 의해 인식하기 어렵게 될 수 있다. By inserting identification information, such as a watermark, into a complicated area with high complexity in a scene cut, it may be difficult for an illegal copyer or a viewer to read pirated and processed webtoon content to recognize the inserted identification information.

장면 컷 내에서 복잡도 점수가 높은 복잡 영역을 결정하기 위해, 이미지의 다양한 파라미터 분석에 기반하는 룰-기반의 방법이 사용됨으로써, 복잡 영역 결정의 정교성을 높일 수 있다. In order to determine a complex region with a high complexity score within a scene cut, a rule-based method based on analysis of various parameters of an image is used, thereby increasing the sophistication of the complexity region determination.

또한, 장면 컷 내에서 복잡도 점수가 높은 복잡 영역을 결정하기 위해, 룰-기반의 방법에 따라 결정되는 복잡도를 추정하도록 학습된 딥러닝 모델을 사용하는 방법 또는 이미지의 분류 모델을 통해 획득되는 어텐션 맵을 사용하는 방법이 사용됨으로써, 복잡 영역 결정의 속도를 높일 수 있다. In addition, in order to determine a complex region with a high complexity score within a scene cut, a method using a deep learning model learned to estimate complexity determined according to a rule-based method or an attention map obtained through a classification model of an image By using a method using , it is possible to increase the speed of complex region determination.

도 1은 일 실시예에 따른, 콘텐츠의 이미지에 대해 복잡 영역을 결정하여 식별 정보를 삽입하는 방법을 나타낸다.
도 2는 일 실시예에 따른, 식별 정보를 삽입하기 위한 콘텐츠의 이미지에 대해 복잡 영역을 결정하는 방법을 수행하는 컴퓨터 시스템을 나타낸다.
도 3은 일 실시예에 따른, 식별 정보를 삽입하기 위한 콘텐츠의 이미지에 대해 복잡 영역을 결정하는 방법을 나타내는 흐름도이다.
도 4는 일 예에 따른, 에피소드 이미지인 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타내는 흐름도이다.
도 5는 일 예에 따른, 룰-기반의 방법을 통해 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타내는 흐름도이다.
도 6은 일 예에 따른, 콘텐츠의 이미지를 복수의 타일들로 분할하여 각 타일의 복잡도를 계산하고, 복잡도 점수가 상위인 패치를 결정하는 방법을 나타내는 흐름도이다.
도 7은 일 예에 따른, 복잡도 점수가 상위인 패치를 결정하는 방법을 나타내는 흐름도이다.
도 8은 일 예에 따른, 콘텐츠의 이미지의 각 타일의 복잡도를 결정하는 방법을 나타내는 흐름도이다.
도 9는 일 예에 따른, 어텐션 맵 기반의 방법을 통해 콘텐츠의 이미지의 복잡 영역을 결정하는 방법을 나타내는 흐름도이다.
도 10은 일 예에 따른, 콘텐츠의 이미지로부터 단위 컷을 추출하고, 단위 컷으로부터 식별 정보를 삽입하기 위한 복잡 영역을 결정하는 방법을 나타낸다.
도 11은 일 예에 따른, 에피소드 이미지인 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타낸다.
도 12는 일 예에 따른, 룰-기반의 방법을 사용하여 콘텐츠의 이미지의 각 타일의 복잡도를 결정하는 방법을 나타낸다.
도 13은 일 예에 따른, 슬라이딩 윈도우 방식을 사용하여 콘텐츠의 이미지의 복잡 영역에 대응하는 패치를 결정하는 방법을 나타낸다.
도 14는 일 예에 따른, 어텐션 맵 기반의 방법을 사용하여 콘텐츠의 이미지의 복잡 영역을 결정하는 방법을 나타내는 흐름도이다.
1 illustrates a method of determining a complex region and inserting identification information into an image of content, according to an exemplary embodiment.
2 illustrates a computer system performing a method of determining a complex region for an image of content for embedding identification information, according to one embodiment.
3 is a flowchart illustrating a method of determining a complex region for an image of content for embedding identification information, according to an exemplary embodiment.
4 is a flowchart illustrating a method of extracting a unit cut from an image of content that is an episodic image, according to an example.
5 is a flowchart illustrating a method of extracting a unit cut from an image of content through a rule-based method according to an example.
6 is a flowchart illustrating a method of dividing an image of content into a plurality of tiles, calculating a complexity of each tile, and determining a patch having a higher complexity score, according to an example.
7 is a flowchart illustrating a method of determining a patch having a higher complexity score according to an example.
8 is a flowchart illustrating a method of determining a complexity of each tile of an image of content, according to an example.
9 is a flowchart illustrating a method of determining a complex region of an image of content through an attention map-based method according to an example.
10 illustrates a method of extracting a unit cut from an image of content and determining a complex region for inserting identification information from the unit cut, according to an example.
11 illustrates a method of extracting a unit cut from an image of content that is an episodic image, according to an example.
12 illustrates a method of determining a complexity of each tile of an image of content using a rule-based method, according to an example.
13 illustrates a method of determining a patch corresponding to a complex region of an image of content using a sliding window method according to an example.
14 is a flowchart illustrating a method of determining a complex region of an image of content using an attention map-based method according to an example.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일 실시예에 따른, 콘텐츠의 이미지에 대해 복잡 영역을 결정하여 식별 정보를 삽입하는 방법을 나타낸다.1 illustrates a method of determining a complex region and inserting identification information into an image of content, according to an exemplary embodiment.

도 1을 참조하여, 복수의 단위 컷(즉, 장면 컷)들을 포함하여 구성되는, 예컨대, 웹툰 콘텐츠와 같은 콘텐츠의 이미지에 대해 워터마크와 같은 식별 정보를 삽입하기 위한 영역을 결정하는 방법에 대해 설명한다. Referring to FIG. 1, for a method of determining a region for inserting identification information such as a watermark in an image of content, for example, webtoon content, including a plurality of unit cuts (ie, scene cuts), Explain.

콘텐츠는 복수의 단위 컷들을 포함할 수 있다. 이러한 단위 컷들의 각각은 웹툰 콘텐츠와 같은 콘텐츠의 장면을 구성하는 장면 컷으로서, 사용자 단말과 같은 단말을 통해 콘텐츠가 열람될 때 순차적으로 노출됨으로써 의미적 연관성을 가질 수 있다. 콘텐츠의 단위 컷들은 순차적으로 배열될 수 있고, 단위 컷들은 순차적으로 노출될 때 유기적으로 연결되는 스토리를 형성할 수 있다. 콘텐츠를 열람하는 사용자는 이러한 콘텐츠의 스토리를 이해하는 것을 통해, 콘텐츠를 즐길 수 있다. Content may include a plurality of unit cuts. Each of these unit cuts is a scene cut constituting a scene of content such as webtoon content, and may have a semantic relationship by being sequentially exposed when content is viewed through a terminal such as a user terminal. Unit cuts of content may be sequentially arranged, and when the unit cuts are sequentially exposed, organically connected stories may be formed. A user viewing the content can enjoy the content by understanding the story of the content.

일례로, 콘텐츠는 웹툰 콘텐츠로서, 유/무선 네트워크를 기반으로 인터넷을 통해 제공되는 디지털 콘텐츠 형태의 만화를 포함할 수 있다. 콘텐츠의 단위 컷들은, 예컨대, 사용자가 사용자 단말의 화면을 스크롤링함에 따라 순차적으로 제공될 수 있다. 다만, 실시예의 콘텐츠는 이러한 웹툰 콘텐츠에 그치지 않고 이미지의 형태로 구성되는 여하한 콘텐츠를 포함할 수 있다. For example, the content is webtoon content, and may include digital content type cartoons provided over the Internet based on a wired/wireless network. Unit cuts of content may be sequentially provided as the user scrolls the screen of the user terminal, for example. However, the content of the embodiment may include any content configured in the form of an image, not just such webtoon content.

콘텐츠는 콘텐츠 제공 서버를 통해 클라이언트(client)인 사용자 단말에 제공되는 것일 수 있다. 콘텐츠 제공 서버는 웹툰 콘텐츠인 콘텐츠를 제공하는 서비스 플랫폼일 수 있다. Content may be provided to a user terminal, which is a client, through a content providing server. The content providing server may be a service platform providing webtoon content.

후술될 상세한 설명에서 "단위 컷"은 콘텐츠의 하나의 장면을 나타내는 "장면 컷"으로서, 장면이 들어가는 블록 이미지(즉, 장면 컷 이미지)를 의미할 수 있다.In a detailed description to be described later, a “unit cut” is a “scene cut” representing one scene of content, and may mean a block image (ie, a scene cut image) into which the scene is included.

콘텐츠는 사용자(즉, 사용자 단말)에 소정의 단위 이미지로 제공될 수 있으며, 이러한 콘텐츠를 제공하는 서비스에서 제공되는 기본 이미지는 서비스 컷 이미지로 지칭될 수 있다. 이러한 서비스 컷 이미지는 적어도 하나의 단위 컷을 포함하도록 구성될 수 있고, 또는/추가적으로, 적어도 하나의 단위 컷의 일부를 포함하도록 구성될 수 있다.Content may be provided to a user (ie, a user terminal) as a predetermined unit image, and a basic image provided from a service providing such content may be referred to as a service cut image. This service cut image may be configured to include at least one unit cut, and/or may additionally include a portion of at least one unit cut.

한편, 이러한 서비스 컷 이미지들이 연결되어 구성(생성)되는 이미지는 에피소드 이미지로 지칭될 수 있다. 에피소드 이미지는 복수의 단위 컷들을 포함하는 단일한 이미지일 수 있고, 예컨대, 웹툰 콘텐츠와 같은 콘텐츠의 한 회차의 서비스 컷 이미지들을 연결함으로써 구성되는 것일 수 있다. Meanwhile, an image configured (created) by connecting these service cut images may be referred to as an episodic image. The episode image may be a single image including a plurality of unit cuts, and may be configured by connecting service cut images of one episode of content, such as webtoon content, for example.

도 1에서 도시된 실시예에서의 콘텐츠의 이미지(10)는 단위 컷(들)을 포함하는 이미지로서, 이러한 서비스 컷 이미지 또는 에피소드 이미지일 수 있다.The image 10 of content in the embodiment shown in FIG. 1 is an image including unit cut(s), and may be such a service cut image or an episode image.

컴퓨터 시스템(100)은 이러한 이미지(10)로부터 단위 컷(20)을 추출할 수 있고, 단위 컷(20) 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역(30)을 결정할 수 있고, 결정된 복잡 영역(30)에 콘텐츠와 연관된 식별 정보가 삽입되도록 할 수 있다. The computer system 100 may extract the unit cut 20 from the image 10, determine at least one complex region 30 having a higher complexity among regions within the unit cut 20, and determine the Identification information associated with content may be inserted into the complex area 30 .

결정된 복잡 영역(30)에 삽입될 콘텐츠와 연관된 식별 정보는, 해당 콘텐츠에 삽입되는 워터마크로서 콘텐츠를 열람한 사용자(사용자 단말 및/또는 사용자 계정)를 식별하기 위한 정보를 포함할 수 있다. The identification information associated with the content to be inserted into the determined complex area 30 may include information for identifying a user (user terminal and/or user account) who viewed the content as a watermark inserted into the content.

구체적으로, 식별 정보는, 예컨대, 콘텐츠에 대한 콘텐츠 열람자 정보를 포함할 수 있다. 콘텐츠 열람 정보는 콘텐츠를 열람한 또는 구매한(혹은, 열람 또는 구매 요청한) 사용자에 대한 정보를 포함할 수 있다. 콘텐츠 열람 정보는 해당 사용자를 식별하기 위한 정보로서, 사용자 ID 를 포함할 수 있다. 이 때, 사용자 ID 는 콘텐츠를 열람하기 위해 콘텐츠 제공 서비스에 가입할 때 등록한 사용자 식별 ID 일 수 있다. 이러한 사용자 식별 ID는 콘텐츠 열람 시 사용자가 로그인한 ID 일 수 있다. 말하자면, 식별 정보는 트랜잭션 트래킹(transaction tracking)을 위한 정보일 수 있다. Specifically, the identification information may include, for example, content viewer information for content. Content viewing information may include information about a user who has viewed or purchased (or requested to view or purchase) content. Content viewing information is information for identifying a corresponding user and may include a user ID. In this case, the user ID may be a user identification ID registered when subscribing to a content providing service in order to view content. This user identification ID may be an ID logged in by a user when browsing content. In other words, the identification information may be information for transaction tracking.

또는, 식별 정보는 전술한 트랜잭션 트래킹을 위한 정보 외에 상이한 형태의 정보를 포함하도록 구성될 수 있다. 예컨대, 식별 정보는 콘텐츠에 대한 저작권자 정보를 포함할 수 있다. 식별 정보에 저작권자 정보가 포함됨으로써, 식별 정보를 포함하는 콘텐츠와 관련하여 분쟁이 발생할 시 식별 정보에 의해 저작권자가 확인될 수 있다. Alternatively, the identification information may be configured to include different types of information in addition to the information for transaction tracking described above. For example, the identification information may include copyright holder information for content. By including the copyright owner information in the identification information, the copyright owner can be confirmed by the identification information when a dispute arises in relation to content including the identification information.

또는, 식별 정보는 콘텐츠를 제공하거나 제공자 및/또는 이용하는 사용자 측에서 사용 가능한 기타 콘텐츠와 관련된 정보를 포함하도록 구성될 수도 있다. Alternatively, the identification information may be configured to provide the content or include information related to other content available from the provider and/or user side.

웹툰과 같은 콘텐츠는 이미지로 구성된다는 점에서, 불법적인 복제나 가공이 용이하게 이루어질 수 있다. 따라서, 상기 식별 정보는 이러한 불법적인 복제 및 가공을 방지하고 불법 복제자(유출자, 가공자)를 식별하기 위한 정보를 포함할 수 있다. 워터마크와 같은 식별 정보는 일반적인 콘텐츠의 열람자의 콘텐츠 열람을 방해하지 않고, 불법 복제자가 식별 정보의 삽입 위치를 알 수 없도록 콘텐츠의 이미지 내에 삽입되어야 할 수 있다. Since contents such as webtoons are composed of images, illegal copying or processing can be easily performed. Accordingly, the identification information may include information for preventing such illegal copying and processing and identifying an illegal copyer (a leaker or a processor). Identification information such as a watermark may be inserted into an image of content so that a general content viewer does not interfere with viewing the content and an illegal copyer cannot know where the identification information is inserted.

또한, 불법 복제자는 콘텐츠를 재편집하여 공유하는 경우가 많은 바, 식별 정보는 불법 복제자에 의한 리드로잉 공격이나, 신호 공격에 대해 강인성을 갖도록 콘텐츠의 이미지 내에 삽입되어야 할 필요가 있다. 리드로잉 공격은 예컨대, 콘텐츠의 이미지에 포함되어 있는 말풍선 영역 및/또는 식자 영역을 재편집 또는 재번역하는 행위, 이미지 리사이징 행위, 이미지 크롭(여백 제거 등) 행위 등을 포함할 수 있다. 신호 공격은 예컨대, 콘텐츠의 이미지에 대해 노이즈를 추가하거나, 필터를 적용하거나, 블러링 처리를 하거나, 색상을 변환하거나, 해상도를 변경하거나, 디노이징 처리를 수행하거나, 이미지 압축 처리를 하는 등의 이미지의 재편집 행위를 포함할 수 있다. In addition, since illegal copyers often re-edit and share content, identification information needs to be inserted into an image of content to have robustness against a redraw attack or a signal attack by illegal copyers. A redrawing attack may include, for example, an act of re-editing or re-translating a speech bubble area and/or a typeface area included in an image of content, an act of resizing an image, an act of cropping an image (removing blank space, etc.), and the like. Signal attacks include, for example, adding noise to the image of the content, applying a filter, performing blurring processing, converting color, changing resolution, performing denoising processing, image compression processing, and the like. It may include the act of re-editing the image.

실시예에서는, 콘텐츠의 이미지(10) 내의 색상이 단조로운 영역, 즉, 복잡도가 낮은 영역(5)이 아니라, 복잡도가 상위인 복잡 영역(30)을 결정하여, 식별 정보를 삽입하기 위한 영역으로 결정할 수 있다. 식별 정보가 복잡도가 낮은 영역(5)에 삽입되면, 이러한 식별 정보는, 식별 정보에 의한 노이즈에 의해, 콘텐츠의 열람자에게 쉽게 인식될 수 있고, 불법 복제자의 리드로잉 공격 및 신호 공격에 취약하게 될 수 있다. In the embodiment, an area in which the color of the image 10 of the content is monotonous, that is, a complex area 30 having a higher complexity is determined instead of an area 5 having a low complexity to be determined as an area for inserting identification information. can If the identification information is inserted into the low-complexity area 5, this identification information can be easily recognized by the viewer of the content due to the noise caused by the identification information, and will be vulnerable to redrawing attacks and signal attacks by pirates. can

복잡 영역(30)은 전술한 불법 복제자의 리드로잉 공격에 대한 식별 정보의 강인성을 확보하기 위해 단위 컷(20)의 말풍선 영역 및 식자 영역 이외의 영역으로 결정될 수 있다. 또한, 복잡 영역(30)은 전술한 불법 복제자의 신호 공격에 대한 식별 정보의 강인성을 확보하고, 식별 정보의 비가시성을 확보하기 위해 단위 컷(20) 내에서 복잡도가 높은 영역으로 결정될 수 있다. The complex area 30 may be determined as an area other than the speech bubble area and the compose area of the unit cut 20 in order to secure the robustness of the identification information against the above-described illegal copyer's redrawing attack. In addition, the complexity region 30 may be determined as a region of high complexity within the unit cut 20 in order to secure the robustness of identification information against the aforementioned illegal copyer's signal attack and to secure the invisibility of identification information.

이처럼, 실시예에서는, 단위 컷(20)이나 이미지(10)의 고정된 영역이 아니라, 단위 컷(20) 내의 복잡도가 상위인 복잡 영역(30)을 결정하여 해당 영역(30)에 식별 정보가 삽입되도록 함으로써, 불법 복제가가 식별 정보의 삽입 패턴을 파악하거나, 식별 정보를 제거하기 위한 공격 행위를 하는 것을 어렵게 할 수 있다. As such, in the embodiment, rather than the unit cut 20 or a fixed area of the image 10, a complex area 30 having a different complexity within the unit cut 20 is determined, and identification information is provided in the corresponding area 30. By making it inserted, it can be difficult for an illegal copyer to grasp an insertion pattern of identification information or perform an attack to remove identification information.

컴퓨터 시스템(100)이 이미지(10)로부터 단위 컷(20)을 추출하여, 단위 컷(20) 내에서 복잡 영역(30)을 결정하는 구체적인 방법에 대해서는 후술될 도 2 내지 도 14를 참조하여 더 자세하게 설명한다. The computer system 100 extracts the unit cut 20 from the image 10 and determines the complex region 30 within the unit cut 20 with reference to FIGS. 2 to 14 to be described later. Explain in detail.

도 2는 일 실시예에 따른, 식별 정보를 삽입하기 위한 콘텐츠의 이미지에 대해 복잡 영역을 결정하는 방법을 수행하는 컴퓨터 시스템을 나타낸다.2 illustrates a computer system performing a method of determining a complex region for an image of content for embedding identification information, according to one embodiment.

컴퓨터 시스템(100)은 전술한 워터마크와 같은 식별 정보를 삽입하기 위한 영역으로서, 콘텐츠의 이미지(10)의 단위 컷(20) 내에서 복잡 영역(30)을 결정하기 위한 동작을 수행하는 장치일 수 있다. The computer system 100 is a device that performs an operation for determining a complex region 30 within the unit cut 20 of the image 10 of content as an area for inserting identification information such as the aforementioned watermark. can

컴퓨터 시스템(100)은 이미지(10)로부터 단위 컷(20)을 추출하고, 단위 컷(20) 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역(30)을 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정할 수 있다. The computer system 100 extracts the unit cut 20 from the image 10 and inserts identification information associated with the content into at least one complex region 30 having a higher complexity among regions within the unit cut 20. area can be determined.

컴퓨터 시스템(100)은 적어도 하나의 컴퓨팅 장치를 포함하도록 구성될 수 있고, 컴퓨팅 장치는 콘텐츠를 관리하는 사용자나 관리자의 단말 또는 서버로 구현될 수 있다. The computer system 100 may be configured to include at least one computing device, and the computing device may be implemented as a terminal or server of a user or administrator who manages content.

컴퓨터 시스템(100)은 도시된 것처럼, 메모리(130), 프로세서(120), 통신부(110) 및 입출력 인터페이스(140)를 포함할 수 있다.As shown, the computer system 100 may include a memory 130, a processor 120, a communication unit 110, and an input/output interface 140.

메모리(130)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 비소멸성 대용량 기록장치는 메모리(130)와 분리되어 별도의 영구 저장 장치로서 포함될 수도 있다. 또한, 메모리(130)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(130)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신부(110)를 통해 메모리(130)에 로딩될 수도 있다. The memory 130 is a computer-readable recording medium and may include a random access memory (RAM), a read only memory (ROM), and a permanent mass storage device such as a disk drive. Here, the ROM and the non-perishable mass storage device may be separated from the memory 130 and included as a separate permanent storage device. Also, an operating system and at least one program code may be stored in the memory 130 . These software components may be loaded from a computer-readable recording medium separate from the memory 130 . The separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a memory card. In another embodiment, software components may be loaded into the memory 130 through the communication unit 110 rather than a computer-readable recording medium.

프로세서(120)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(130) 또는 통신부(110)에 의해 프로세서(120)로 제공될 수 있다. 예를 들어, 프로세서(120)는 메모리(130)에 로딩된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다. The processor 120 may be configured to process commands of a computer program by performing basic arithmetic, logic, and input/output operations. Instructions may be provided to the processor 120 by the memory 130 or the communication unit 110 . For example, processor 120 may be configured to execute instructions received according to program code loaded into memory 130 .

통신부(110)는 컴퓨터 시스템(100)이 다른 장치(사용자 단말 또는 다른 서버 등)와 통신하기 위한 구성일 수 있다. 말하자면, 통신부(110)는 다른 장치에 대해 데이터 및/또는 정보를 전송/수신하는, 컴퓨터 시스템(100)의 안테나, 데이터 버스, 네트워크 인터페이스 카드, 네트워크 인터페이스 칩 및 네트워킹 인터페이스 포트 등과 같은 하드웨어 모듈 또는 네트워크 디바이스 드라이버(driver) 또는 네트워킹 프로그램과 같은 소프트웨어 모듈일 수 있다.The communication unit 110 may be a component for the computer system 100 to communicate with other devices (user terminals or other servers). In other words, the communication unit 110 is a hardware module or network such as an antenna, a data bus, a network interface card, a network interface chip, and a networking interface port of the computer system 100 that transmits/receives data and/or information to other devices. It may be a software module such as a device driver or networking program.

입출력 인터페이스(140)는 키보드 또는 마우스 등과 같은 입력 장치 및 디스플레이나 스피커와 같은 출력 장치와의 인터페이스를 위한 수단일 수 있다.The input/output interface 140 may be a means for interfacing with an input device such as a keyboard or mouse and an output device such as a display or speaker.

프로세서(120)는 컴퓨터 시스템(100)의 구성 요소들을 관리할 수 있고, 전술한 단위 컷(20)의 추출 및 복잡 영역(30)의 결정을 수행하기 위한 프로그램 또는 어플리케이션을 실행할 수 있고, 상기 프로그램 또는 어플리케이션의 실행 및 데이터의 처리 등에 필요한 연산을 처리할 수 있다. 프로세서(120)는 컴퓨터 시스템(100)의 적어도 하나의 프로세서(CPU 또는 GPU 등) 또는 프로세서 내의 적어도 하나의 코어(core)일 수 있다.The processor 120 may manage components of the computer system 100, execute a program or application for extracting the unit cut 20 and determining the complexity region 30, and execute the program Alternatively, operations required for application execution and data processing may be processed. The processor 120 may be at least one processor (such as a CPU or GPU) of the computer system 100 or at least one core within the processor.

또한, 실시예들에서 컴퓨터 시스템(100) 및 프로세서(120)는 도시된 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 프로세서가 포함하는 구성요소들 전술한 프로세서(120)의 일부이거나 프로세서(120)에 의해 구현되는 기능일 수 있다. 말하자면, 프로세서(120)가 포함하는 구성요소들은, 운영체제의 코드나 적어도 하나의 컴퓨터 프로그램의 코드에 따른 제어 명령(instruction)에 따라 프로세서(120)가 수행하는 서로 다른 기능들(different functions)의 표현일 수 있다.Also, in embodiments, computer system 100 and processor 120 may include more components than those shown. Components included in the processor may be part of the aforementioned processor 120 or functions implemented by the processor 120 . In other words, the components included in the processor 120 represent different functions performed by the processor 120 according to a control instruction according to an operating system code or at least one computer program code. can be

컴퓨터 시스템(100)의 프로세서(120)의 동작에 따라, 이미지(10)로부터 단위 컷(20)을 추출하여, 단위 컷(20) 내에서 복잡 영역(30)을 결정하는 구체적인 방법에 대해서는 후술될 도 2 내지 도 14를 참조하여 더 자세하게 설명한다. A specific method of extracting the unit cut 20 from the image 10 and determining the complex region 30 within the unit cut 20 according to the operation of the processor 120 of the computer system 100 will be described later. It will be described in more detail with reference to FIGS. 2 to 14 .

이상 도 1을 참조하여 전술된 기술적 특징에 대한 설명은, 도 2에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.Since descriptions of the technical features described above with reference to FIG. 1 may be applied as they are to FIG. 2 , duplicate descriptions will be omitted.

후술될 상세한 설명에서, 컴퓨터 시스템(100)이나, 프로세서(120) 또는 그 구성요소들에 의해 수행되는 동작은 설명의 편의상 컴퓨터 시스템(100)에 의해 수행되는 동작으로 설명될 수 있다. In the detailed description to be described later, an operation performed by the computer system 100 or the processor 120 or its components may be described as an operation performed by the computer system 100 for convenience of description.

도 3은 일 실시예에 따른, 식별 정보를 삽입하기 위한 콘텐츠의 이미지에 대해 복잡 영역을 결정하는 방법을 나타내는 흐름도이다.3 is a flowchart illustrating a method of determining a complex region for an image of content for embedding identification information, according to an exemplary embodiment.

도 3을 참조하여, 컴퓨터 시스템(100)이 콘텐츠의 이미지(10)로부터 단위 컷(20)을 추출하고, 단위 컷(20) 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역(30)을 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정하는 방법에 대해 더 자세하게 설명한다. Referring to FIG. 3 , the computer system 100 extracts a unit cut 20 from an image 10 of content, and selects at least one complex region 30 having a higher complexity among regions within the unit cut 20. A method of determining a region in which identification information associated with content is to be inserted will be described in more detail.

전술한 것처럼, 콘텐츠의 이미지(10)는 복수의 단위 컷들을 포함할 수 있다. As described above, the image 10 of content may include a plurality of unit cuts.

단계(310)에서, 컴퓨터 시스템(100)은 이미지(10)로부터, 이미지(10)에 포함된 단위 컷(20)을 추출할 수 있다. 컴퓨터 시스템(100)은 콘텐츠의 이미지(10)로부터 복수의 단위 컷들의 각 단위 컷을 추출해 낼 수 있다. In operation 310 , the computer system 100 may extract a unit cut 20 included in the image 10 from the image 10 . The computer system 100 may extract each unit cut of a plurality of unit cuts from the image 10 of content.

컴퓨터 시스템(100)은, 예컨대, 콘텐츠가 사용자에게 제공될 시에 사용자(사용자 단말 또는 사용자 계정)에게 제공되는 단위 이미지인 서비스 컷 이미지인 이미지(10)로부터, 서비스 컷 이미지가 포함하는 적어도 하나의 단위 컷(20)을 추출할 수 있다. 서비스 컷 이미지는 적어도 하나의 단위 컷 및/또는 적어도 하나의 단위 컷의 일부를 포함하도록 구성될 수 있다. The computer system 100, for example, from the image 10, which is a service cut image, which is a unit image provided to the user (user terminal or user account) when content is provided to the user, at least one service cut image included. Unit cut 20 can be extracted. The service cut image may include at least one unit cut and/or a part of at least one unit cut.

한편, 이미지(10)는 복수의 서비스 컷 이미지들일 수 있고, 이 때, 컴퓨터 시스템(100)은 복수의 서비스 컷 이미지들로부터 콘텐츠가 포함하는 복수의 단위 컷들의 각 단위 컷을 추출해 낼 수 있다. Meanwhile, the image 10 may be a plurality of service cut images, and in this case, the computer system 100 may extract each unit cut of a plurality of unit cuts included in the content from the plurality of service cut images.

추출된 각 단위 컷(20)은 식별 정보를 삽입할 복잡 영역(30)의 결정을 위한 대상이 될 수 있다. Each extracted unit cut 20 may be a target for determining a complex region 30 into which identification information is to be inserted.

단계(320)에서, 컴퓨터 시스템(100)은, 단계(310)에서 추출된 단위 컷(20) 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역(30)을 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정할 수 있다. 컴퓨터 시스템(100)은 단위 컷(20)이 포함하는 영역들 중에서 단위 컷(20)의 말풍선 영역 및 식자 영역을 제외한 영역을 복잡 영역(30)으로 결정할 수 있고, 말풍선 영역 및 식자 영역을 제외한 영역 중 복잡도가 상위인 영역을 복잡 영역(30)으로 결정할 수 있다. 식자 영역은 단위 컷(20) 내에 텍스트가 삽입된 영역일 수 있다. 단위 컷(20) 내에서 장면의 배경에 해당하거나 단일색인 영역과 같이 복잡도가 낮은 영역은 복잡 영역(30)으로 결정되지 않을 수 있다. In step 320, the computer system 100 inserts identification information associated with the content into at least one complex region 30 having a higher complexity among the regions in the unit cut 20 extracted in step 310. area can be determined. The computer system 100 may determine an area excluding the speech bubble area and the typesetting area of the unit cut 20 from among areas included in the unit cut 20 as the complex area 30, and the area excluding the speech bubble area and the typesetting area. Among them, a region having a higher complexity may be determined as the complex region 30 . The composing area may be an area in which text is inserted in the unit cut 20 . An area of low complexity, such as a background of a scene or a single color area within the unit cut 20 may not be determined as the complex area 30 .

단계(330)에서, 컴퓨터 시스템(100)은, 결정된 복잡 영역(30)에 콘텐츠와 연관된 식별 정보를 삽입할 수 있다. 복잡 영역에 삽입되는 식별 정보는, 콘텐츠에 삽입되는 워터마크로서 콘텐츠를 열람한 사용자를 식별하기 위한 정보를 포함할 수 있다. 식별 정보에 대해서는 도 1을 참조하여 설명된 내용이 그대로 적용될 수 있는 바 중복되는 설명은 생략한다. In step 330 , the computer system 100 may insert identification information associated with the content into the determined complex region 30 . Identification information inserted into the complex area is a watermark inserted into the content and may include information for identifying a user who viewed the content. As for the identification information, since the contents described with reference to FIG. 1 can be applied as they are, duplicate descriptions will be omitted.

컴퓨터 시스템(100)은, 이미지(10)로부터 추출된 단위 컷들의 각각에 대해 복잡 영역(30)을 결정하여, 결정된 복잡 영역(30)에 식별 정보를 삽입할 수 있다. 또는, 컴퓨터 시스템(100)은 단위 컷들 중 일부의 단위 컷(들)에 대해서만 복잡 영역(30)을 결정하여, 결정된 복잡 영역(30)에 식별 정보를 삽입할 수도 있다.The computer system 100 may determine a complex area 30 for each of the unit cuts extracted from the image 10 and insert identification information into the determined complex area 30 . Alternatively, the computer system 100 may determine the complex region 30 only for some of the unit cuts, and insert identification information into the determined complex region 30 .

복잡 영역(30)은 복수일 수 있고, 복수의 복잡 영역들 각각에 대해 식별 정보가 삽입될 수도 있다. There may be a plurality of complex areas 30, and identification information may be inserted for each of the plurality of complex areas.

실시예에서는, 이미지(10) 내의 고정된 위치가 아니라, 이미지(10)의 복잡도, 즉, 이미지(10)가 포함하는 단위 컷(20) 내의 복잡도를 고려하여 결정된 복잡 영역(30)에 식별 정보가 삽입될 수 있음으로써, 콘텐츠의 불법 복제자가 식별 정보를 인식하거나 식별 정보의 삽입 패턴을 파악하기가 어렵게 될 수 있다. In the embodiment, the identification information is provided in the complex area 30 determined by considering the complexity of the image 10, that is, the complexity in the unit cut 20 included in the image 10, rather than a fixed position in the image 10. can be inserted, making it difficult for an illegal copyer of content to recognize identification information or to grasp an insertion pattern of identification information.

관련하여, 도 10은 일 예에 따른, 콘텐츠의 이미지로부터 단위 컷을 추출하고, 단위 컷으로부터 식별 정보를 삽입하기 위한 복잡 영역을 결정하는 방법을 나타낸다.In this regard, FIG. 10 illustrates a method of extracting a unit cut from an image of content and determining a complex region for inserting identification information from the unit cut, according to an example.

도시된 것처럼, 콘텐츠는 복수의 서비스 컷 이미지들(1000)로 구성될 수 있다. 전술한 이미지(10)는 이러한 복수의 서비스 컷 이미지들(1000) 또는 서비스 컷 이미지들(1000) 각각일 수 있다. 각 서비스 컷 이미지는 적어도 하나의 단위 컷을 포함하되, 적어도 하나의 단위 것의 일부를 더 포함할 수도 있다. As shown, the content may be composed of a plurality of service cut images 1000 . The aforementioned image 10 may be each of the plurality of service cut images 1000 or the service cut images 1000 . Each service cut image includes at least one unit cut, but may further include a part of the at least one unit cut.

컴퓨터 시스템(100)은 복수의 서비스 컷 이미지들(1000)로부터 단위 컷들(1010-1 내지 1010-3)을 추출할 수 있다. 단위 컷들(1010-1 내지 1010-3)의 각각은 캐릭터, 인물, 및 사물 등과 같은 오브젝트, 말풍선 영역 및 식자 영역 중 적어도 하나를 포함할 수 있다. The computer system 100 may extract unit cuts 1010 - 1 to 1010 - 3 from the plurality of service cut images 1000 . Each of the unit cuts 1010-1 to 1010-3 may include at least one of a character, an object such as a person or an object, a speech bubble area, and a composing area.

컴퓨터 시스템(100)은 추출된 단위 컷들(1010-1 내지 1010-3) 각각으로부터 말풍선 영역과 식자 영역을 검출할 수 있다. 예컨대, 단위 컷(1010-1)에서 말풍선 영역(1020-1)이, 단위 컷(1010-3)에서 식자 영역(1020-2)이 검출될 수 있다.The computer system 100 may detect a speech bubble area and a composing area from each of the extracted unit cuts 1010-1 to 1010-3. For example, a speech bubble area 1020-1 in the unit cut 1010-1 and a composing area 1020-2 in the unit cut 1010-3 may be detected.

컴퓨터 시스템(100)은 검출된 말풍선 영역(1020-1) 및 식자 영역(1020-2)을 배제하여 각 단위 컷에 대해 복잡 영역을 결정할 수 있다. 도시된 것처럼, 단위 컷(1010-1)에 대해서는 복잡 영역(1030-1)이, 단위 컷(1010-2)에 대해서는 복잡 영역(1030-2)이, 단위 컷(1010-3)에 대해서는 복잡 영역(1030-3)이, 식별 정보를 삽입하기 위한 영역으로서 결정될 수 있다. 각 단위 컷에서 결정된 복잡 영역은 소정의 크기의 영역으로서 해당 단위 컷에서 복잡도가 가장 높은 영역일 수 있다.The computer system 100 may determine a complex region for each unit cut by excluding the detected speech bubble region 1020-1 and composing region 1020-2. As shown, a complex region 1030-1 for unit cut 1010-1, a complex region 1030-2 for unit cut 1010-2, and a complex region 1030-3 for unit cut 1010-3. An area 1030-3 may be determined as an area for inserting identification information. The complex region determined in each unit cut is a region of a predetermined size and may be a region with the highest complexity in the corresponding unit cut.

컴퓨터 시스템(100)이 이미지(10)로부터 단위 컷(20)을 추출하는 보다 구체적인 방법이나, 단위 컷(20) 내에서 복잡도가 상위인 복잡 영역(30)을 결정하는 보다 구체적인 방법에 대해서는 후술될 도 4 내지 도 9 및 도 11 내지 도 14를 참조하여 더 자세하게 설명된다. A more specific method for the computer system 100 to extract the unit cut 20 from the image 10 or a more specific method for determining the complex region 30 having a higher complexity within the unit cut 20 will be described later. It is described in more detail with reference to FIGS. 4 to 9 and 11 to 14 .

이상, 도 1 및 도 2를 참조하여 전술된 기술적 특징에 대한 설명은, 도 3 및 도 10에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The above description of the technical features described above with reference to FIGS. 1 and 2 may be applied to FIGS. 3 and 10 as it is, and thus duplicate descriptions are omitted.

도 4는 일 예에 따른, 에피소드 이미지인 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타내는 흐름도이다. 4 is a flowchart illustrating a method of extracting a unit cut from an image of content that is an episodic image, according to an example.

전술한 콘텐츠의 이미지(10)는 콘텐츠의 복수의 단위 컷들을 포함하는 단일한 에피소드 이미지일 수 있고, 컴퓨터 시스템(100)은 이러한 에피소드 이미지로부터 단위 컷(20)을 추출하여, 단위 컷(20)으로부터 복잡 영역(30)을 결정할 수 있다. The above-described content image 10 may be a single episodic image including a plurality of unit cuts of the content, and the computer system 100 extracts the unit cut 20 from the episodic image, and unit cut 20 It is possible to determine the complex region 30 from.

관련하여, 도 11은 일 예에 따른, 에피소드 이미지인 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타낸다.In relation to this, FIG. 11 illustrates a method of extracting a unit cut from an image of content that is an episodic image, according to an example.

단계(410)에서, 컴퓨터 시스템(100)은 에피소드 이미지(1100)를 구성할 수 있다. 예컨대, 컴퓨터 시스템(100)은 전술한 복수의 서비스 컷 이미지들(1000)을 연결함으로써, 콘텐츠의 복수의 단위 컷들을 포함하는 단일한 에피소드 이미지(1100)를 구성(생성)할 수 있다. 또는, 컴퓨터 시스템(100)은 직접 에피소드 이미지(1100)를 구성하지 않고, 이미 생성된 에피소드 이미지(1100)로부터 단위 컷들을 추출할 수도 있다. At step 410 , computer system 100 may compose episodic image 1100 . For example, the computer system 100 may configure (generate) a single episode image 1100 including a plurality of unit cuts of content by connecting the plurality of service cut images 1000 described above. Alternatively, the computer system 100 may extract unit cuts from the already created episode image 1100 without directly composing the episode image 1100 .

단계(420)에서, 컴퓨터 시스템(100)은 에피소드 이미지(1100)를 적어도 하나의 단위 컷을 포함하되 소정의 중복도를 갖는 복수의 분할 이미지들로 분할할 수 있다. 분할 이미지의 각각은 적어도 하나의 단위 컷 및/또는 적어도 하나의 단위 컷의 일부(즉, 단위 컷의 일부분)를 포함할 수 있고, 인접하는 분할 이미지와 상기 소정의 중복도에 따라 중복되는 영역을 포함할 수 있다. 소정의 중복도는 컴퓨터 시스템(100)에 의해 적절하게 설정될 수 있다. In step 420, the computer system 100 may divide the episodic image 1100 into a plurality of divided images including at least one unit cut but having a predetermined degree of overlap. Each of the divided images may include at least one unit cut and/or a portion of the at least one unit cut (ie, a portion of the unit cut), and an overlapping region with an adjacent divided image according to the predetermined degree of overlap is defined. can include The desired degree of redundancy may be suitably set by computer system 100 .

컴퓨터 시스템(100)은 에피소드 이미지(1100)에 포함된 단위 컷이 소정의 중복도에 따라 중복되도록 분할 이미지를 생성함으로써, 전술한 서비스 컷 이미지들(1000)의 각각에서 잘려진 단위 컷(즉, 각 서비스 컷 이미지에 일부만이 포함된 단위 컷)으로부터도 단위 컷이 추출될 수 있도록 할 수 있다. The computer system 100 creates divided images such that the unit cuts included in the episode image 1100 overlap according to a predetermined degree of overlap, so that the unit cuts (ie, each A unit cut may be extracted even from a unit cut including only a part of a service cut image).

단계(430)에서, 컴퓨터 시스템(100)은 단계(420)의 분할 이미지들의 각각으로부터 각 분할 이미지에 포함된 단위 컷 및 상기 단위 컷의 일부를 추출함으로써, 에피소드 이미지(1100)에 포함된 복수의 단위 컷들의 각각을 추출할 수 있다. 이 때, 추출된 각 단위 컷이 전술한 복잡 영역(30)을 결정하기 위한 대상이 될 수 있다. In step 430, the computer system 100 extracts a unit cut included in each divided image and a part of the unit cut from each of the divided images in step 420, thereby extracting a plurality of images included in the episode image 1100. Each of the unit cuts may be extracted. At this time, each extracted unit cut may be a target for determining the complex region 30 described above.

도 11에서 도시된 것처럼, 에피소드 이미지(1100)가 단위 컷들(단위 컷 1, 2, 3 ...)을 포함하는 경우에 있어서, 에피소드 이미지(1100)는 복수의 분할 이미지들로 소정의 중복도를 가지고 분할될 수 있고, 분할 이미지들의 각각으로부터 단위 컷 및 단위 컷의 일부가 추출될 수 있고, 추출된 단위 컷의 일부들이 조합됨에 따라, 단위 컷들(단위 컷 1, 2, 3 ...)의 각각이 추출될 수 있다. As shown in FIG. 11 , in the case where the episode image 1100 includes unit cuts (unit cuts 1, 2, 3...), the episode image 1100 is composed of a plurality of divided images with a predetermined degree of overlap. , unit cuts and parts of the unit cuts can be extracted from each of the divided images, and as parts of the extracted unit cuts are combined, unit cuts (unit cuts 1, 2, 3...) Each of can be extracted.

즉, 도 11에서 도시된 예시에서 첫 번째 분할 이미지로부터 단위 컷 1 및 단위 컷 2의 일부가 추출되고, 두 번째 분할 이미지로부터 단위 컷 2의 일부 및 단위 컷 3의 일부가 추출되고, 세 번째 분할 이미지로부터 단위 컷 3의 일부가 추출됨으로써, 단위 컷들(단위 컷 1, 2, 3 ...)이 모두 추출될 수 있다. 분할 이미지가 중복도를 가짐으로써 일부만 추출된 분할 컷들이 하나의 분할 컷들로 합쳐질 수 있다.That is, in the example shown in FIG. 11 , parts of unit cut 1 and unit cut 2 are extracted from the first divided image, part of unit cut 2 and part of unit cut 3 are extracted from the second divided image, and third division By extracting a part of unit cut 3 from the image, all unit cuts (unit cuts 1, 2, 3...) can be extracted. Since the divided image has overlap, the divided cuts from which only part of the image is extracted may be merged into one divided cut.

이 때, 추출된 단위 컷들(단위 컷 1, 2, 3 ...)은 원래의 에피소드 이미지(1100)가 가지는 연결성(즉, 순서)를 가질 수 있다. In this case, the extracted unit cuts (unit cuts 1, 2, 3, ...) may have connectivity (ie, order) that the original episode image 1100 has.

추출된 각 단위 컷은 전술한 도 10에서와 같이 복잡 영역(30)을 결정하기 위한 각각의 대상이 될 수 있다.Each extracted unit cut may be each target for determining the complex region 30 as shown in FIG. 10 described above.

이상, 도 1 내지 도 3 및 도 10을 참조하여 전술된 기술적 특징에 대한 설명은, 도 4 및 도 11에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.Above, the description of the technical features described above with reference to FIGS. 1 to 3 and 10 may be applied to FIGS. 4 and 11 as it is, and thus duplicate descriptions are omitted.

도 5는 일 예에 따른, 룰-기반의 방법을 통해 콘텐츠의 이미지로부터 단위 컷을 추출하는 방법을 나타내는 흐름도이다. 5 is a flowchart illustrating a method of extracting a unit cut from an image of content through a rule-based method according to an example.

도 5를 참조하여, 전술한 서비스 컷 이미지(들)(1000) 또는 에피소드 이미지(1000)와 같은 콘텐츠의 이미지(10)로부터 룰-기반의 방법을 사용하여 단위 컷(20)을 추출하는 방법에 대해 더 자세하게 설명한다. Referring to FIG. 5, a method of extracting a unit cut 20 using a rule-based method from an image 10 of content such as the above-described service cut image(s) 1000 or episode image 1000 explain in more detail.

룰-기반의 방법은 이미지(10)의 픽셀 분석에 기반한 방법일 수 있다.A rule-based method may be a method based on pixel analysis of image 10 .

단계(510)에서, 컴퓨터 시스템(100)은 이미지(10)의 픽셀 값들에 기반하여 이미지(10)의 배경 및 단위 컷(20)을 결정할 수 있다. 이미지(10)의 배경은 단위 컷(20)과는 구분되는 이미지(10) 내의 단색 영역일 수 있다.At step 510 , computer system 100 may determine a background and unit cut 20 of image 10 based on the pixel values of image 10 . The background of the image 10 may be a solid color area within the image 10 that is distinct from the unit cut 20 .

구체적으로, 단계(512)에서, 컴퓨터 시스템(100)은 이미지(10)의 가로축 방향으로의 픽셀 값들이 동일한 영역을 이미지(10)의 배경으로 결정할 수 있다. 말하자면, 컴퓨터 시스템(100)은 이미지(10)의 가로줄 전체의 픽셀 값이 동일하여 동일한 색상을 나타내는 영역을 이미지(10)의 배경으로 결정할 수 있다.Specifically, in operation 512 , the computer system 100 may determine a region having the same pixel values in the horizontal axis direction of the image 10 as the background of the image 10 . In other words, the computer system 100 may determine, as the background of the image 10, an area representing the same color because pixel values of all horizontal lines of the image 10 are the same.

단계(514)에서, 컴퓨터 시스템(100)은 이미지(10)의 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역을 단위 컷(20)으로 추출할 수 있다. 말하자면, 컴퓨터 시스템(100)은 이미지(10)의 가로줄 전체의 픽셀 값이 동일하지 않아서 가로줄에서 여러 색상이 나타내는 영역을 단위 컷(20)으로 결정할 수 있다. 이 때, 컴퓨터 시스템(100)은 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역의 세로축 방향으로의 길이가 소정의 값 이상인 경우에만, 해당 픽셀 값들이 동일하지 않은 영역을 단위 컷(20)으로 추출할 수 있다. In operation 514 , the computer system 100 may extract, as the unit cut 20 , a region in which pixel values in the horizontal axis direction of the image 10 are not the same. In other words, the computer system 100 may determine an area represented by multiple colors in the horizontal line as the unit cut 20 because the pixel values of the entire horizontal line of the image 10 are not the same. At this time, the computer system 100 extracts the region having unequal pixel values as the unit cut 20 only when the length in the vertical axis direction of the region having unequal pixel values in the horizontal axis direction is equal to or greater than a predetermined value. can do.

이처럼, 룰-기반의 방법을 통해서는, 컴퓨터 시스템(100)은 이미지(10)의 가로줄에 존재하는 픽셀들의 색이 모두 동일한 영역을 이미지(10)의 배경으로 결정할 수 있고, 이미지(10)의 가로줄에 존재하는 픽셀들의 색이 동일하지 않은 영역을 단위 컷(20)으로 결정할 수 있다. 말하자면, 이미지(10)의 배경이 아니게 되는 이미지(10)의 가로줄로부터 다시 이미지(10)의 배경이 되는 가로줄까지의 영역이 단위 컷(20)으로 결정될 수 있다. 다만, 컴퓨터 시스템(100)은 가로줄에 존재하는 픽셀들의 색이 동일하지 않은 영역이라고 하더라도 세로축 방향으로의 길이가 소정의 값 이하인 경우에는 복잡 영역(30)의 결정을 위한 단위 컷(20)으로 추출하지 않을 수 있다. 즉, 세로축 방향으로의 길이가 너무 짧게 되면 식별 정보를 삽입하기 부적절하므로, 이러한 영역은 단위 컷(20)으로 추출되지 않을 수 있다.In this way, through the rule-based method, the computer system 100 can determine as the background of the image 10 an area in which all pixels in the horizontal line of the image 10 have the same color, and An area in which pixels in a horizontal line do not have the same color may be determined as the unit cut 20 . In other words, an area from a horizontal line of the image 10 that is not the background of the image 10 to a horizontal line that becomes the background of the image 10 may be determined as the unit cut 20 . However, the computer system 100 extracts the area as the unit cut 20 for determining the complex area 30 when the length in the vertical axis direction is less than a predetermined value, even if the color of the pixels existing in the horizontal line is not the same. may not That is, if the length in the direction of the vertical axis is too short, it is inappropriate to insert identification information, and thus such an area may not be extracted by the unit cut 20 .

또한, 컴퓨터 시스템(100)은 컴퓨터 시스템(100)은 가로줄에 존재하는 픽셀들의 색이 동일하지 않은 영역(제1 장면)과 그 다음의 가로줄에 존재하는 픽셀들의 색이 동일하지 않은 영역(제2 장면) 간의 세로축 방향으로의 거리가 일정 값 이하인 경우에는 "제1 장면 + 제2 장면"을 하나의 단위 컷(20)으로서 추출할 수 있다. 말하자면, 컴퓨터 시스템(100)은 장면들 간의 이미지(10)의 배경(즉, 이미지(10)의 가로줄에 존재하는 픽셀들의 색이 동일한 영역)이 짧은 경우 장면들을 통합하여 통합된 장면을 단위 컷(20)으로 추출할 수 있다. In addition, the computer system 100 includes an area in which pixels in a horizontal line do not have the same color (first scene) and an area in which pixels in the next horizontal line do not have the same color (second scene). When the distance in the vertical axis direction between scenes) is less than or equal to a predetermined value, “first scene + second scene” may be extracted as one unit cut 20 . In other words, if the background of the image 10 between scenes (that is, the area where pixels in the horizontal line of the image 10 have the same color) is short, the computer system 100 integrates the scenes to form an integrated scene as a unit cut ( 20) can be extracted.

한편, 컴퓨터 시스템(100)은 전술한 룰-기반의 방법이 아닌 딥러닝 모델을 사용하는 방법을 통해 서비스 컷 이미지(들)(1000) 또는 에피소드 이미지(1000)와 같은 콘텐츠의 이미지(10)로부터 단위 컷(20)을 추출할 수 있다.On the other hand, the computer system 100 from the image 10 of the content such as the service cut image (s) 1000 or the episode image 1000 through a method using a deep learning model rather than the above-described rule-based method. Unit cut 20 can be extracted.

이 때, 컴퓨터 시스템(100)은 이미지로부터 오브젝트 또는 장면 컷을 검출하도록 미리 학습된 딥러닝 모델을 사용하여, 이미지(10)로부터 오브젝트 또는 장면 컷이 포함된 영역을 추출함으로써 단위 컷(20)을 추출할 수 있다. 오브젝트는 캐릭터, 인물, 또는 사물일 수 있다. 또한, 오브젝트는 말풍선 또는 식자일 수도 있다. 장면 컷을 검출하도록 미리 학습된 딥러닝 모델은 복수의 장면 컷들을 포함하는 웹툰 콘텐츠들을 훈련 데이터로서 사용하여 웹툰 콘텐츠로부터 장면 컷(단위 컷)을 검출하도록 훈련된 것일 수 있다. At this time, the computer system 100 extracts a region including the object or scene cut from the image 10 using a deep learning model pretrained to detect the object or scene cut from the image, thereby generating the unit cut 20. can be extracted. An object may be a character, person, or object. Also, the object may be a speech bubble or typesetting. A deep learning model pretrained to detect scene cuts may be trained to detect scene cuts (unit cuts) from webtoon contents using webtoon contents including a plurality of scene cuts as training data.

컴퓨터 시스템(100)은 이러한 미리 학습된 딥러닝 모델을 사용하여 이미지(10)로부터 단위 컷(20)을 추출할 수 있다. 컴퓨터 시스템(100)은 딥러닝 모델을 사용하는 방법을 통해, 룰-기반의 방법에 비해 단위 컷(20)을 더 빠르게 추출할 수 있다. Computer system 100 may extract unit cut 20 from image 10 using this pretrained deep learning model. The computer system 100 may extract the unit cut 20 more quickly through a method using a deep learning model, compared to a rule-based method.

이상, 도 1 내지 도 4, 도 10 및 도 11을 참조하여 전술된 기술적 특징에 대한 설명은, 도 5에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 4, 10 and 11 may be applied to FIG. 5 as it is, and thus duplicate descriptions are omitted.

도 6은 일 예에 따른, 콘텐츠의 이미지를 복수의 타일들로 분할하여 각 타일의 복잡도를 계산하고, 복잡도 점수가 상위인 패치를 결정하는 방법을 나타내는 흐름도이다.6 is a flowchart illustrating a method of dividing an image of content into a plurality of tiles, calculating a complexity of each tile, and determining a patch having a higher complexity score, according to an example.

도 6을 참조하여, 컴퓨터 시스템(100)이 추출된 단위 컷(20)(혹은 이미지(10))의 영역들에 대해 복잡도를 계산하여 복잡 영역(30)을 결정하는 방법에 대해 더 자세하게 설명한다. Referring to FIG. 6, a method for determining a complex region 30 by calculating the complexity of regions of the unit cut 20 (or image 10) extracted by the computer system 100 will be described in more detail. .

단계(610)에서, 컴퓨터 시스템(100)은 이미지(10)로부터 추출된 단위 컷(20)을 복수의 타일들로 분할할 수 있다. 예컨대, 컴퓨터 시스템(100)은 단위 컷(20)을 일정한 크기의 직사각형 또는 정사각형의 타일들로 분할할 수 있다. 타일들은 서로 겹치지 않을 수 있다. In step 610, the computer system 100 may divide the unit cut 20 extracted from the image 10 into a plurality of tiles. For example, the computer system 100 may divide the unit cut 20 into rectangular or square tiles of a certain size. Tiles may not overlap each other.

단계(620)에서, 컴퓨터 시스템(100)은 분할된 타일들의 각 타일의 복잡도를 결정할 수 있다. 컴퓨터 시스템(100)은 분할된 타일들을 분석함으로써 각 타일의 복잡도를 계산할 수 있다. At step 620, the computer system 100 may determine the complexity of each tile of the divided tiles. The computer system 100 may calculate the complexity of each tile by analyzing the divided tiles.

단계(630)에서, 컴퓨터 시스템(100)은 결정된 각 타일의 복잡도에 기반하여, 단위 컷(20) 내에서 복잡도 점수가 상위인 적어도 하나의 패치를 결정할 수 있다. 컴퓨터 시스템(100)은 단위 컷(20)의 타일들 중 소정의 수의 타일들로 구성되는 패치 각각에 대해 복잡도 점수를 결정하여, 복잡도 점수가 상위가 되는 적어도 하나의 패치를 결정할 수 있다. 즉, 컴퓨터 시스템(100)은 복잡도 점수가 최고인 하나의 패치를 결정하거나, 복잡도 점수가 상위인 2 이상인 n개의 패치들을 결정할 수 있다.In operation 630, the computer system 100 may determine at least one patch having a higher complexity score within the unit cut 20 based on the determined complexity of each tile. The computer system 100 may determine a complexity score for each patch including a predetermined number of tiles among the tiles of the unit cut 20 and determine at least one patch having a higher complexity score. That is, the computer system 100 may determine one patch having the highest complexity score or n patches having two or more higher complexity scores.

단계(640)에서, 컴퓨터 시스템(100)은 단계(630)에서 결정된 패치에 대응하는 단위 컷(20)의 영역을 복잡 영역(30)으로 결정할 수 있다. 컴퓨터 시스템(100)은 결정된 복잡 영역(30)에 전술한 식별 정보가 삽입되도록 할 수 있다.In step 640 , the computer system 100 may determine a region of the unit cut 20 corresponding to the patch determined in step 630 as the complex region 30 . The computer system 100 may allow the aforementioned identification information to be inserted into the determined complex region 30 .

단계(630)에서, 복잡도 점수가 상위인 적어도 하나의 패치를 결정함에 있어서, 컴퓨터 시스템(100)은 소정의 우선순위 조건을 더 고려할 수 있다. 예컨대, 컴퓨터 시스템(100)은 각 패치에 대해 복잡도 점수를 계산함에 있어서 상기 소정의 우선순위 조건을 고려할 수 있다. 또는, 컴퓨터 시스템(100)은 결정된 n개의 패치들 중에서 복잡 영역(30)에 해당하는 패치(들)을 선정하기 위해 상기 소정의 우선순위 조건을 고려할 수 있다.In operation 630, in determining at least one patch having a higher complexity score, the computer system 100 may further consider a predetermined priority condition. For example, the computer system 100 may consider the predetermined priority condition in calculating a complexity score for each patch. Alternatively, the computer system 100 may consider the predetermined priority condition in order to select patch(s) corresponding to the complex region 30 from among the determined n patches.

일례로, 복잡도 점수가 상위인 적어도 하나의 패치를 결정함에 있어서, 컴퓨터 시스템(100)은, 단위 컷(20)의 타일들 중 소정의 수의 타일들로 구성되는 각 패치가, i) 단위 컷(20)에 포함된 말풍선 영역과 교차하는지 여부, ii) 단위 컷(20)에 포함된 식자 영역과 교차하는지 여부, 및 iii) 단위 컷(20)에 포함된 얼굴 영역, 캐릭터 또는 기타 오브젝트와 교차하는지 여부 중 적어도 하나의 조건에 더 기반하여, 복잡도 점수가 상위인 적어도 하나의 패치를 결정할 수 있다. For example, in determining at least one patch having a higher complexity score, the computer system 100 determines that each patch composed of a predetermined number of tiles among the tiles of the unit cut 20, i) unit cut Whether it intersects the speech bubble area included in (20), ii) whether it intersects the composing area included in the unit cut 20, and iii) intersects the face area, character, or other object included in the unit cut 20 At least one patch having a higher complexity score may be determined further based on at least one condition among whether or not the patch is performed.

i)과 관련하여, 컴퓨터 시스템(100)은 패치가 단위 컷(20)에 포함된 말풍선 영역과 교차하는 경우 해당 패치의 복잡도 점수를 낮추거나, 해당 패치를 전술한 n개의 패치들 중에서 최종적인 복잡 영역(30)을 결정하기 위한 패치로 결정되지 않도록 배제할 수 있다. In relation to i), the computer system 100 lowers the complexity score of the patch when the patch intersects the speech bubble area included in the unit cut 20, or determines the final complexity of the patch among the n patches described above. It may be excluded so that it is not determined as a patch for determining the area 30 .

ii)와 관련하여, 또한, 컴퓨터 시스템(100)은 패치가 단위 컷(20)에 포함된 식자 영역과 교차하는 경우 해당 패치의 복잡도 점수를 낮추거나, 해당 패치를 전술한 n개의 패치들 최종적인 복잡 영역(30)을 결정하기 위한 패치로 결정되지 않도록 배제할 수 있다.In relation to ii), the computer system 100 also lowers the complexity score of the patch when the patch intersects the literate area included in the unit cut 20, or the patch is selected as the final n patches. It may be excluded from being determined as a patch for determining the complex region 30 .

iii)과 관련하여, 또한, 컴퓨터 시스템(100)은 패치가 단위 컷(20)에 포함된 얼굴 영역, 캐릭터 또는 기타 오브젝트와 교차하는 경우 해당 패치의 복잡도 점수를 높일 수 있다.In relation to iii), the computer system 100 may also increase the complexity score of the patch when the patch intersects a face region, character, or other object included in the unit cut 20 .

또는, 복잡 영역(30)을 결정하기 위한 패치를 결정함에 있어서 전술한 우선순위 조건들 중 적어도 하나는 각 타일의 복잡도에 기반하여 계산되는 복잡도 점수에 우선하여 적용될 수 있다. 일례로, 복잡 영역(30)을 결정하기 위한 패치를 결정할 시, i)에 따라 말풍선 영역과 교차하지 않는 제1 패치들이 우선적으로 결정되고(즉, 말풍선 영역과 교차하는 패치들이 우선적으로 배제되고), 제1 패치들 중에서 ii)에 따라 식자 영역과 교차하지 않는 제2 패치들이 결정된 후 제2 패치들 중에서(즉, 그 다음으로 식자 영역과 교차하는 패치들이 배제된 후 남은 패치들 중에서), 각 타일의 복잡도에 기반하여 계산되는 복잡도 점수가 상위인 패치(들)이 복잡 영역(30)을 결정하기 위한 패치로 결정될 수 있다. Alternatively, in determining a patch for determining the complex region 30, at least one of the above-described priority conditions may be applied in preference to a complexity score calculated based on the complexity of each tile. For example, when determining a patch for determining the complex region 30, according to i), first patches that do not intersect the speech bubble region are preferentially determined (that is, patches that intersect the speech bubble region are preferentially excluded) , among the second patches after the second patches that do not intersect with the literate area are determined according to ii) among the first patches (that is, among the patches remaining after the patches intersecting the next literate area are excluded), each Patch(s) having a higher complexity score calculated based on the complexity of the tile may be determined as a patch for determining the complexity region 30 .

또는, 상기 결정된 n개의 패치들 중에서 i)에 따라 말풍선 영역과 교차하지 않는 제1 패치들이 우선적으로 결정되고, 제1 패치들 중에서 ii)에 따라 식자 영역과 교차하지 않는 제2 패치(들)이 복잡 영역(30)을 결정하기 위한 패치로 결정될 수 있다.Alternatively, among the determined n patches, first patches that do not intersect the speech bubble area according to i) are preferentially determined, and among the first patches, the second patch(s) that do not intersect the composing area according to ii) are determined. It may be determined as a patch for determining the complex region 30 .

이처럼, 실시예에서는, 다양하게 설정될 수 있는 우선순위 조건들의 정책에 따라, 컴퓨터 시스템(100)이 복잡 영역(30)을 결정하기 위한 패치를 결정할 수 있다.As such, in the embodiment, the computer system 100 may determine a patch for determining the complex region 30 according to a policy of priority conditions that may be set in various ways.

이상, 도 1 내지 도 5, 도 10 및 도 11을 참조하여 전술된 기술적 특징에 대한 설명은, 도 6에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 5, 10 and 11 may be applied to FIG. 6 as it is, and thus duplicate descriptions are omitted.

도 7은 일 예에 따른, 복잡도 점수가 상위인 패치를 결정하는 방법을 나타내는 흐름도이다. 7 is a flowchart illustrating a method of determining a patch having a higher complexity score according to an example.

도 7을 참조하여, 각 타일의 복잡도에 기반하여 패치의 복잡도 점수를 계산하고, 이에 따라, 복잡 영역(30)을 결정하기 위한 패치를 결정하는 방법을 더 자세하게 설명한다. Referring to FIG. 7 , a method of calculating a complexity score of a patch based on the complexity of each tile and, accordingly, determining a patch for determining the complex region 30 will be described in more detail.

단계(710)에서, 컴퓨터 시스템(100)은, 각 타일의 복잡도에 기반하여, 각 타일의 크기를 스트라이드(stride)로 하는 슬라이딩 윈도우(sliding window) 방식으로, 각각의 패치의 복잡도 점수를 계산할 수 있다. In step 710, the computer system 100 may calculate a complexity score of each patch based on the complexity of each tile in a sliding window manner in which the size of each tile is a stride. there is.

단계(720)에서, 컴퓨터 시스템(100)은, 각 패치에 대해 계산된 복잡도 점수가 상위인 적어도 하나의 패치를 결정할 수 있다. 결정된 패치는 복잡 영역(30)을 결정하기 위한 패치가 될 수 있다. In step 720, the computer system 100 may determine at least one patch having a higher complexity score calculated for each patch. The determined patch may be a patch for determining the complex region 30 .

관련하여, 도 13은 일 예에 따른, 슬라이딩 윈도우 방식을 사용하여 콘텐츠의 이미지의 복잡 영역에 대응하는 패치를 결정하는 방법을 나타낸다. 이러한 슬라이딩 윈도우 방식은 전체 패치들에 대한 복잡도 점수들을 고속으로 계산할 수 있도록 할 수 있다. In this regard, FIG. 13 illustrates a method of determining a patch corresponding to a complex region of an image of content using a sliding window method according to an example. This sliding window method can calculate complexity scores for all patches at high speed.

도시된 것처럼, 단위 컷(1300)은 복수의 타일들로 분할될 수 있다. 컴퓨터 시스템(100)은 분할된 타일들의 각 타일(1310)의 복잡도를 계산할 수 있다. 패치(1320)는 소정의 개수의 타일들로 구성될 수 있고, 예컨대, 도시된 것처럼 4개의 타일들이 하나의 패치(1320)를 구성할 수 있다. 패치(1320)의 크기는 실시예에 따라 상이하게 될 수 있다. 패치(1320)의 복잡도 점수는 해당 패치(1320)에 속하는 타일들의 각각의 복잡도 합 또는 평균에 기반하여 계산될 수 있고, 상가 복잡도 합 또는 평균이 패치(1320)의 복잡도 점수가 될 수도 있다. As shown, the unit cut 1300 may be divided into a plurality of tiles. The computer system 100 may calculate the complexity of each tile 1310 of the divided tiles. The patch 1320 may be composed of a predetermined number of tiles, and for example, four tiles may constitute one patch 1320 as shown. The size of the patch 1320 may be different according to embodiments. The complexity score of the patch 1320 may be calculated based on the sum or average of the respective complexities of the tiles belonging to the patch 1320, and the additive complexity sum or average may be the complexity score of the patch 1320.

컴퓨터 시스템(1320)은 도 13에서 도시된 것과 같은 방향으로 슬라이딩 윈도우 방식으로 각각의 패치의 복잡도 점수를 계산할 수 있고, 계산된 복잡도 점수가 상위인 패치(들)을 결정할 수 있다 The computer system 1320 may calculate the complexity score of each patch in a sliding window manner in the direction shown in FIG. 13 and determine patch(s) having a higher calculated complexity score.

슬라이딩 윈도우(sliding window) 방식으로 각각의 패치의 복잡도 점수를 계산함에 있어서, 전술한 우선순위 조건들(예컨대, i) 또는 ii))에 해당하는 패치는 복잡 영역(30)을 결정하기 위한 패치로부터 배제될 수 있다. In calculating the complexity score of each patch in a sliding window method, a patch corresponding to the above-described priority conditions (eg, i) or ii)) is selected from patches for determining the complexity region 30. may be excluded.

이상, 도 1 내지 도 6, 도 10 및 도 11을 참조하여 전술된 기술적 특징에 대한 설명은, 도 7 및 도 13에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 6, 10, and 11 may be applied to FIGS. 7 and 13 as they are, and thus duplicate descriptions are omitted.

아래에서는, 도 8 및 도 12를 참조하여, 단위 컷(1300)의 각 타일의 복잡도를 계산하는 방법에 대해 더 자세하게 설명한다. Below, a method of calculating the complexity of each tile of the unit cut 1300 will be described in detail with reference to FIGS. 8 and 12 .

먼저, 룰-기반의 방법을 사용하여 각 타일의 복잡도를 계산하는 방법에 대해 설명한다.First, a method of calculating the complexity of each tile using a rule-based method will be described.

관련하여, 도 8은 일 예에 따른, 콘텐츠의 이미지의 각 타일의 복잡도를 결정하는 방법을 나타내는 흐름도이다. 도 12는 일 예에 따른, 룰-기반의 방법을 사용하여 콘텐츠의 이미지의 각 타일의 복잡도를 결정하는 방법을 나타낸다. In this regard, FIG. 8 is a flowchart illustrating a method of determining a complexity of each tile of an image of content, according to an example. 12 illustrates a method of determining a complexity of each tile of an image of content using a rule-based method, according to an example.

컴퓨터 시스템(100)은, 단위 컷(1300)의 각 타일의 복잡도를 계산함에 있어서, i) 각 타일과 연관된 엔트로피, ii) 각 타일과 연관된 엣지 밀도(edge density), iii) 각 타일과 연관된 이산 코사인 변환(DCT) 계수의 NZR (non-zero-rate) 및 iv) 각 타일과 연관된 분산 중 적어도 하나에 기반하여 각 타일의 복잡도를 결정할 수 있다. 또는, 컴퓨터 시스템(100)은 상기 i) 내지 iv) 중 적어도 2개의 조합에 기반하여 기반하여 각 타일의 복잡도를 결정할 수 있다.Computer system 100, in computing the complexity of each tile of unit cut 1300, determines i) the entropy associated with each tile, ii) the edge density associated with each tile, and iii) the discrete value associated with each tile. The complexity of each tile may be determined based on at least one of a non-zero-rate (NZR) of a cosine transform (DCT) coefficient and iv) a variance associated with each tile. Alternatively, the computer system 100 may determine the complexity of each tile based on a combination of at least two of i) to iv).

i)과 관련하여, 각 타일과 연관된 엔트로피는 해당 타일 내에서 사용된 색이 다양할수록 높게 될 수 있다. 다만, 이러한 엔트로피는 그라데이션이 포함된 영역에서도 높은 값을 나타낼 수 있다. Regarding i), the entropy associated with each tile can be higher as the colors used within that tile vary. However, such entropy may exhibit a high value even in a region including a gradation.

ii)와 관련하여, 각 타일과 연관된 엣지 밀도는 타일 내에 존재하는 엣지의 양이 많을수록 높게 될 수 있다. 다만, 이러한 엣지 밀도는 그라데이션이 포함된 영역에서 지나치게 낮은 값을 나타낼 수 있다.Regarding ii), the edge density associated with each tile may become higher as the amount of edges present in the tile increases. However, such an edge density may represent an excessively low value in a region including a gradation.

iii)와 관련하여, 각 타일과 연관된 DCT-NZR은 타일의 이미지를 표현하기 위해 사용되는 주파수 개수가 많을수록 크게 될 수 있다. 다만, 이러한 DCT-NZR은 단순한 곡선을 포함하는 영역에서 높은 값을 나타낼 수 있다.Regarding iii), the DCT-NZR associated with each tile may increase as the number of frequencies used to represent the image of the tile increases. However, this DCT-NZR may show a high value in a region including a simple curve.

iv)와 관련하여, 각 타일과 연관된 분산은 타일 내에서의 색 분포를 나타낼 수 있다. 다만, 이러한 분산은 단순하게 색이 분할되어 있는 영역에서 높은 값을 나타낼 수 있다. Regarding iv), the variance associated with each tile may represent the color distribution within the tile. However, such dispersion may exhibit a high value in a region where colors are simply divided.

전술한 것처럼, i) 내지 iv)는 각각 타일의 복잡도를 나타낼 수 있으나, 복잡도를 정확하게 반영하지 못할 가능성이 있는 바, 적어도 2개의 조합이 타일의 복잡도를 계산하기 위해 사용될 수 있다. As described above, i) to iv) may represent the complexity of each tile, but there is a possibility that the complexity may not be accurately reflected, so a combination of at least two may be used to calculate the tile complexity.

단계(810)에서, 컴퓨터 시스템(100)은 각 타일과 연관된 i) 내지 iv)를 기 설정된 평균 및 표준편차에 기반하여 표준화할 수 있다. 말하자면, i) 내지 iv)의 각각은 표준화된 값으로 변환될 수 있다. 기 설정된 평균 및 표준편차는 복수의 콘텐츠들(즉, 다른 웹툰 콘텐츠들)의 타일들을 분석함으로써 미리 계산된 기준 값일 수 있다. 이러한 기준 값의 계산에 있어서 흰색 단색과 검정색 단색의 타일은 계산에서 배제될 수 있다. At step 810, computer system 100 may standardize i) to iv) associated with each tile based on a predetermined mean and standard deviation. That is to say, each of i) to iv) can be converted to a standardized value. The preset average and standard deviation may be reference values pre-calculated by analyzing tiles of a plurality of contents (ie, other webtoon contents). In calculating the reference value, tiles of a single color white and a single color black may be excluded from the calculation.

단계(820)에서, 컴퓨터 시스템(100)은 표준화된 i) 내지 iv) 중 최대값 및 최소값을 배제하여 선택된 중간의 2개의 값에 기반하여 각 타일의 복잡도를 결정할 수 있다. 예컨대, 중간의 2개의 값의 평균 또는 합에 기반하여 각 타일의 복잡도가 계산될 수 있다. In step 820, the computer system 100 may determine the complexity of each tile based on the middle two values selected by excluding the maximum and minimum values of standardized i) to iv). For example, the complexity of each tile may be calculated based on the average or sum of the middle two values.

도 12a의 예시에서 도시된 것처럼, 일 타일의 중간 값은, 최대값인 분산과 최소값인 DCT-NZR이 배제되고, 중간 값인 엔트로피와 엣지 밀도를 사용하여 결정될 수 있고, 엔트로피와 엣지 밀도의 합 또는 평균으로 계산될 수 있다. 또는, 도 12b의 예시에서 도시된 것처럼, 일 타일의 중간 값은, 최대값인 엣지 밀도와 최소값인 엔트로피가 배제되고, 중간 값인 DCT-NZR와 분산을 사용하여 결정될 수 있고, DCT-NZR와 분산의 합 또는 평균으로 계산될 수 있다. As shown in the example of FIG. 12A, the median value of one tile may be determined using the median entropy and edge density, excluding the maximum value of variance and the minimum value of DCT-NZR, and the sum of entropy and edge density or can be calculated as an average. Alternatively, as shown in the example of FIG. 12B, the median value of one tile may be determined using DCT-NZR and variance, which are median values, excluding edge density, which is the maximum value, and entropy, which is the minimum value, and DCT-NZR and variance, which are median values. can be calculated as the sum or average of

이에 따라, i) 내지 iv) 중에서 벗어나는 2개의 값을 배제하고 타일의 복잡도를 계산함으로써, 타일의 복잡도가 보다 정확하게 계산될 수 있고, 따라서, 타일의 복잡도에 기반하여 결정되는 패치의 복잡도 점수 역시 단위 컷(20) 내의 복잡한 정도를 정확하게 반영할 수 있게 된다. Accordingly, by excluding two values that deviate from i) to iv) and calculating the complexity of the tile, the complexity of the tile can be more accurately calculated. Therefore, the complexity score of the patch determined based on the complexity of the tile is also a unit The degree of complexity within the cut 20 can be accurately reflected.

요컨대, 컴퓨터 시스템(100)은 전술한 i) 내지 iv)의 파라미터들을 사용하여 각 타일의 복잡도를 결정하는 룰-기반의 결정 모델을 포함할 수 있다. In short, computer system 100 may include a rules-based decision model that determines the complexity of each tile using the parameters i) through iv) described above.

한편, 도 12a 및 도 12b에서 예시된 그래프에서, x축은 표준화된 복잡도 값을 나타낼 수 있다. 말하자면, x축은 i) 내지 iv)의 파라미터들을 표준화한 값을 나타낼 수 있다. y축은 이미지(또는 타일)의 개수를 나타낼 수 있다. Meanwhile, in the graphs illustrated in FIGS. 12A and 12B , the x-axis may represent a standardized complexity value. In other words, the x-axis may represent a standardized value of parameters i) to iv). The y-axis may represent the number of images (or tiles).

다음으로, 딥러닝 모델을 사용하여 각 타일의 복잡도를 결정하는 방법을 설명한다. Next, we describe how to determine the complexity of each tile using a deep learning model.

컴퓨터 시스템(100)은 전술한 룰-기반의 결정 모델에 의해 결정되는 각 타일의 복잡도를 정답(Ground Truth; GT)으로서 추정하도록 미리 학습된 딥러닝 모델을 사용하여 각 타일의 복잡도를 결정할 수 있다. 상기 딥러닝 모델은 전술한 룰-기반의 결정 모델에 의해 결정되는 각 타일의 복잡도를 레이블로 설정하여, 이를 추정하도록 훈련된 것일 수 있다.The computer system 100 may determine the complexity of each tile using a deep learning model pretrained to estimate the complexity of each tile determined by the above-described rule-based decision model as a ground truth (GT). . The deep learning model may be trained to set the complexity of each tile determined by the above-described rule-based decision model as a label and estimate it.

전술한 것처럼, 룰-기반의 결정 모델은, i) 각 타일과 연관된 엔트로피, ii) 각 타일과 연관된 엣지 밀도, iii) 각 타일과 연관된 DCT-NZR 및 iv) 각 타일과 연관된 분산 중 적어도 2개에 기반하여 각 타일의 복잡도를 결정하도록 구성된 것일 수 있다. As described above, a rule-based decision model can be used to determine at least two of i) the entropy associated with each tile, ii) the edge density associated with each tile, iii) the DCT-NZR associated with each tile, and iv) the variance associated with each tile. It may be configured to determine the complexity of each tile based on.

딥러닝 모델은 예컨대, EfficientNet 기반의 모델일 수 있다. The deep learning model may be, for example, an EfficientNet-based model.

컴퓨터 시스템(100)은 전술한 룰-기반의 결정 모델 대신에 딥러닝 모델을 사용하여 각 타일의 복잡도를 결정함으로써, 각 타일에 대한 복잡도 결정을 고속으로 수행할 수 있다. The computer system 100 determines the complexity of each tile using a deep learning model instead of the above-described rule-based decision model, so that the complexity of each tile can be determined at high speed.

한편, 도 6 내지 도 8을 참조하여 전술한 복잡도 계산과 복잡 영역(30) 결정의 대상이 되는 단위 컷(20 또는 1300)은 실시예에 따라서는 이미지(10) 자체일 수도 있으며, 이 때, 이미지(10)로부터 단위 컷(20)을 추출하는 동작은 수행되지 않을 수 있다. 이에 대해서도 전술한 것과 유사한 설명이 적용될 수 있을 것인 바, 중복되는 설명은 생략한다.Meanwhile, the unit cut 20 or 1300, which is the object of complexity calculation and determination of the complexity region 30 described above with reference to FIGS. 6 to 8, may be the image 10 itself, depending on the embodiment. In this case, An operation of extracting the unit cut 20 from the image 10 may not be performed. A description similar to that described above may also be applied to this, and redundant description will be omitted.

이상, 도 1 내지 도 7, 도 10, 도 11 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 8 및 도 12에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 7, 10, 11, and 13 may also be applied to FIGS. 8 and 12 as they are, and thus duplicate descriptions are omitted.

아래에서는, 도 9 및 도 14를 참조하여, 어텐션 맵을 사용하여 단위 컷(20) 또는 이미지(10) 내의 복잡 영역을 결정하는 방법에 대해 더 자세하게 설명한다. Hereinafter, a method of determining a complex region in the unit cut 20 or image 10 using the attention map will be described in more detail with reference to FIGS. 9 and 14 .

관련하여, 도 9는 일 예에 따른, 어텐션 맵 기반의 방법을 통해 콘텐츠의 이미지의 복잡 영역을 결정하는 방법을 나타내는 흐름도이다. 도 14는 일 예에 따른, 어텐션 맵 기반의 방법을 사용하여 콘텐츠의 이미지의 복잡 영역을 결정하는 방법을 나타내는 흐름도이다.In this regard, FIG. 9 is a flowchart illustrating a method of determining a complex region of an image of content through an attention map-based method according to an example. 14 is a flowchart illustrating a method of determining a complex region of an image of content using an attention map-based method according to an example.

단계(910)에서, 컴퓨터 시스템(100)은 단위 컷(20)을 이미지를 분류하도록 미리 학습된 분류 모델에 입력시킬 수 있다. 한편, 분류 모델으로 입력되는 것은 단위 컷(20)이 아닌 이미지(10)일 수도 있다. 이 때, 이미지(10)로부터 단위 컷(20)을 추출하는 동작은 수행되지 않을 수 있다. 말하자면, 단계들(910 내지 950)에 의해서는 서비스 컷 이미지 또는 에피소드 이미지로부터 바로 복잡 영역(30)이 결정될 수 있다. 분류 모델은 이미지 분류를 위한 딥러닝 모델로서 예컨대, VGG일 수 있다. At step 910, the computer system 100 may input the unit cut 20 into a classification model pre-trained to classify the image. Meanwhile, what is input to the classification model may be the image 10 instead of the unit cut 20 . At this time, an operation of extracting the unit cut 20 from the image 10 may not be performed. In other words, steps 910 to 950 may determine the complex region 30 directly from a service cut image or an episodic image. The classification model is a deep learning model for image classification and may be, for example, VGG.

단계(920)에서, 컴퓨터 시스템(100)은 상기 분류 모델의 복수의 중간층(middle layer)들의 단위 컷과 연관된 피쳐맵들을 획득할 수 있다. In step 920, the computer system 100 may obtain feature maps associated with unit cuts of a plurality of middle layers of the classification model.

단계(930)에서, 컴퓨터 시스템(100)은 피쳐맵들을 종합하여 피쳐맵들에 대응하는 어텐션 맵(attention map)들을 생성할 수 있다. 말하자면, 컴퓨터 시스템(100)은 상기 피쳐맵들을 시각화하는, 어텐션 맵들을 생성할 수 있다. In operation 930, the computer system 100 may generate attention maps corresponding to the feature maps by synthesizing the feature maps. That is to say, computer system 100 may generate attention maps, which visualize the feature maps.

단계(940)에서, 컴퓨터 시스템(100)은 생성된 어텐션 맵들을 평균 또는 합(sum)한 어텐션 맵으로부터, 활성화도가 상위인(예컨대, 밝게 표시되는 상위의) 영역을 나타내는 패치를 결정할 수 있다. 패치는 소정의 크기를 가질 수 있다. In step 940, the computer system 100 may determine a patch representing a region having a higher activation degree (eg, a higher region displayed brightly) from an attention map obtained by averaging or summing the generated attention maps. . A patch may have any size.

단계(950)에서, 컴퓨터 시스템(100)은 결정된 패치에 대응하는 단위 컷(10) 또는 이미지(10)의 영역을 복잡 영역(30)으로 결정할 수 있다. In operation 950 , the computer system 100 may determine a region of the unit cut 10 or image 10 corresponding to the determined patch as the complex region 30 .

도 14에서 Original 은 원본 이미지(10) 또는 단위 컷(20)에 대응하는 것으로서, 분류 모델에 대한 입력을 나타낼 수 있다. Pool 1 내지 Pool 5는 분류 모델의 중간층들의 피쳐맵들로부터 생성된 어텐션 맵들을 나타낼 수 있다. Pool 1으로부터 Pool 5으로 갈수록 어텐션 맵의 이미지의 크기는 작게 될 수 있는 바, Pool 1으로부터 Pool 5는 동일한 크기를 갖도록 리사이징될 수 있다. In FIG. 14, Original corresponds to the original image 10 or the unit cut 20 and may represent an input to a classification model. Pool 1 to Pool 5 may represent attention maps generated from feature maps of middle layers of the classification model. Since the size of the image of the attention map may decrease from Pool 1 to Pool 5, Pool 1 to Pool 5 may be resized to have the same size.

리사이징된 어텐션 맵들을 합한 어텐션 맵이 Sum으로 도시되었다. 컴퓨터 시스템(100)은 Sum 어텐션 맵으로부터 가장 활성화된 영역에 대응하는 단위 컷(10) 또는 이미지(10)의 영역을 복잡 영역(30)으로 결정할 수 있다. An attention map combining resized attention maps is shown as Sum. The computer system 100 may determine an area of the unit cut 10 or image 10 corresponding to the most activated area from the sum attention map as the complex area 30 .

컴퓨터 시스템(100)은 활성화된 영역(패치)을 컨볼루션 연산(컨볼루션 함수)를 사용하여 결정할 수 있으며, 활성화도가 상위인 복수인 n개의 패치들를 결정할 수도 있다. 이와 같이 결정된 복잡 영역(30)에는 전술된 식별 정보가 삽입될 수 있다. The computer system 100 may determine an activated region (patch) using a convolution operation (convolution function), and may also determine a plurality of n patches having higher activation degrees. The aforementioned identification information may be inserted into the complex region 30 determined in this way.

실시예의 어텐션 맵을 사용하는 방법을 통해서는, 전술한 룰-기반의 방법이나 딥러닝 모델을 이용한 방법에 비해, 이미지(10)로부터 복잡 영역(30)을 더 빠르게 결정해 낼 수 있다. Through the method using the attention map of the embodiment, it is possible to more quickly determine the complex region 30 from the image 10 compared to the above-described rule-based method or method using a deep learning model.

이상, 도 1 내지 도 8 및 도 10 내지 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 9 및 도 14에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.The description of the technical features described above with reference to FIGS. 1 to 8 and 10 to 13 may be applied to FIGS. 9 and 14 as they are, and thus duplicate descriptions are omitted.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The devices described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, devices and components described in the embodiments include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable PLU (programmable logic unit). logic unit), microprocessor, or any other device capable of executing and responding to instructions. The processing device may run an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에서 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. The device can be commanded. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. can be embodied in Software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer readable media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. In this case, the medium may continuously store a program executable by a computer or temporarily store the program for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or combined hardware, but is not limited to a medium directly connected to a certain computer system, and may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROM and DVD, magneto-optical media such as floptical disks, and ROM, RAM, flash memory, etc. configured to store program instructions. In addition, examples of other media include recording media or storage media managed by an app store that distributes applications, a site that supplies or distributes various other software, and a server.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.

Claims (19)

컴퓨터 시스템에 의해 수행되는, 복수의 단위 컷들을 포함하는 콘텐츠의 이미지로부터 복잡 영역을 결정하는 방법에 있어서,
상기 이미지로부터, 상기 이미지에 포함된 단위 컷을 추출하는 단계; 및
상기 단위 컷 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역을 상기 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
A method for determining a complex region from an image of content including a plurality of unit cuts, performed by a computer system, comprising:
extracting unit cuts included in the image from the image; and
Determining at least one complex region having a higher complexity among regions within the unit cut as a region into which identification information associated with the content is to be inserted.
Including, how to determine the complex area.
제1항에 있어서,
상기 복잡 영역에 삽입될 상기 콘텐츠와 연관된 식별 정보는, 상기 콘텐츠에 삽입되는 워터마크로서 상기 콘텐츠를 열람한 사용자를 식별하기 위한 정보를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The identification information associated with the content to be inserted into the complex area includes information for identifying a user who has viewed the content as a watermark inserted into the content.
제1항에 있어서,
상기 이미지는, 상기 콘텐츠가 사용자에게 제공될 시에 상기 사용자에게 제공되는 단위 이미지인 서비스 컷 이미지이고,
상기 서비스 컷 이미지는 상기 복수의 단위 컷들 중 적어도 하나의 단위 컷을 포함하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The image is a service cut image that is a unit image provided to the user when the content is provided to the user,
The method of determining a complex region, wherein the service cut image includes at least one unit cut among the plurality of unit cuts.
제3항에 있어서,
상기 이미지는 상기 복수의 단위 컷들을 포함하는 단일한 에피소드 이미지이고,
상기 에피소드 이미지는 복수의 상기 서비스 컷 이미지가 연결되어 생성되고,
상기 추출하는 단계는,
상기 에피소드 이미지를 적어도 하나의 단위 컷을 포함하되 소정의 중복도를 갖는 복수의 분할 이미지들로 분할하는 단계; 및
상기 분할 이미지들의 각각으로부터 단위 컷 및 단위 컷의 일부를 추출함으로써, 상기 복수의 단위 컷들의 각각을 추출하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 3,
The image is a single episode image including the plurality of unit cuts,
The episode image is generated by connecting a plurality of the service cut images,
The extraction step is
dividing the episode image into a plurality of divided images including at least one unit cut and having a predetermined degree of overlap; and
Extracting each of the plurality of unit cuts by extracting a unit cut and a portion of the unit cut from each of the divided images.
Including, how to determine the complex area.
제1항에 있어서,
상기 추출하는 단계는,
상기 이미지의 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역을 상기 단위 컷으로 추출하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The extraction step is
Extracting, as the unit cut, a region in which pixel values in the horizontal axis direction of the image are not the same
Including, how to determine the complex area.
제5항에 있어서,
상기 단위 컷을 추출하는 단계는,
상기 이미지의 가로축 방향으로의 픽셀 값들이 동일한 영역을 배경으로 결정하는 단계; 및
상기 이미지의 가로축 방향으로의 픽셀 값들이 동일하지 않은 영역의 세로축 방향으로의 길이가 소정의 값 이상인 경우, 상기 픽셀 값들이 동일하지 않은 영역을 상기 단위 컷으로 추출하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 5,
The step of extracting the unit cut,
determining a region having the same pixel values in a horizontal axis direction of the image as a background; and
extracting, as the unit cut, an area having unequal pixel values when a length in a vertical axis direction of an area having unequal pixel values in the horizontal axis direction of the image is equal to or greater than a predetermined value;
Including, how to determine the complex area.
제1항에 있어서,
상기 추출하는 단계는,
이미지로부터 오브젝트 또는 장면 컷을 검출하도록 미리 학습된 딥러닝 모델을 사용하여, 상기 이미지로부터 오브젝트 또는 장면 컷이 포함된 영역을 추출함으로써 상기 단위 컷을 추출하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The extraction step is
A method for determining a complex region, wherein the unit cut is extracted by extracting a region including the object or scene cut from the image using a deep learning model pretrained to detect the object or scene cut from the image.
제1항에 있어서,
상기 결정하는 단계는,
상기 추출된 단위 컷을 복수의 타일들로 분할하는 단계;
상기 분할된 타일들의 각 타일의 복잡도를 결정하는 단계;
결정된 상기 각 타일의 복잡도에 기반하여, 상기 단위 컷 내에서 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계 - 상기 패치의 각각은 상기 타일들 중 소정의 수의 타일들로 구성됨 -; 및
상기 결정된 패치에 대응하는 상기 단위 컷의 영역을 상기 복잡 영역으로 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The determining step is
Dividing the extracted unit cut into a plurality of tiles;
determining a complexity of each tile of the divided tiles;
determining at least one patch having a higher complexity score within the unit cut, based on the determined complexity of each tile, wherein each patch is composed of a predetermined number of tiles among the tiles; and
Determining an area of the unit cut corresponding to the determined patch as the complex area
Including, how to determine the complex area.
제8항에 있어서,
상기 패치를 결정하는 단계는,
상기 각 타일의 복잡도에 기반하여, 상기 각 타일의 크기를 스트라이드(stride)로 하는 슬라이딩 윈도우(sliding window) 방식으로, 각각의 패치의 상기 복잡도 점수를 계산하는 단계; 및
계산된 상기 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 8,
The step of determining the patch is,
calculating the complexity score of each patch, based on the complexity of each tile, using a sliding window method in which a size of each tile is a stride; and
Determining at least one patch having a higher calculated complexity score
Including, how to determine the complex area.
제8항에 있어서,
상기 타일들 중 소정의 수의 타일들로 구성되는 각 패치의 상기 복잡도 점수는 상기 각 패치에 속하는 타일들의 각각의 상기 복잡도의 합에 기반하여 계산되는, 복잡 영역을 결정하는 방법.
According to claim 8,
The complexity score of each patch consisting of a predetermined number of tiles among the tiles is calculated based on the sum of the complexity of each of the tiles belonging to each patch.
제8항에 있어서,
상기 패치를 결정하는 단계는,
상기 타일들 중 소정의 수의 타일들로 구성되는 각 패치가, i) 상기 단위 컷에 포함된 말풍선 영역과 교차하는지 여부, ii) 상기 단위 컷에 포함된 식자 영역과 교차하는지 여부, 및 iii) 상기 단위 컷에 포함된 얼굴 영역과 교차하는지 여부 중 적어도 하나의 조건에 더 기반하여, 상기 복잡도 점수가 상위인 적어도 하나의 패치를 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 8,
The step of determining the patch is,
Each patch composed of a predetermined number of tiles among the tiles, i) whether or not it intersects the speech bubble area included in the unit cut, ii) whether or not it intersects the composing area included in the unit cut, and iii) Determining at least one patch having a higher complexity score, further based on at least one condition of whether the patch intersects a face region included in the unit cut.
Including, how to determine the complex area.
제8항에 있어서,
상기 각 타일의 복잡도를 결정하는 단계는,
i) 상기 각 타일과 연관된 엔트로피, ii) 상기 각 타일과 연관된 엣지 밀도(edge density), iii) 상기 각 타일과 연관된 이산 코사인 변환(DCT) 계수의 NZR (non-zero-rate) 및 iv) 상기 각 타일과 연관된 분산 중 적어도 2개에 기반하여 상기 각 타일의 복잡도를 결정하는, 복잡 영역을 결정하는 방법.
According to claim 8,
The step of determining the complexity of each tile,
i) the entropy associated with each tile, ii) the edge density associated with each tile, iii) the non-zero-rate (NZR) of the discrete cosine transform (DCT) coefficient associated with each tile, and iv) the A method for determining complexity regions, wherein the complexity of each tile is determined based on at least two of the variances associated with each tile.
제12항에 있어서,
상기 각 타일의 복잡도를 결정하는 단계는,
상기 i) 내지 iv)를 기 설정된 평균 및 표준편차에 기반하여 표준화하는 단계; 및
표준화된 상기 i) 내지 iv) 중 최대값 및 최소값을 배제하여 선택된 중간의 2개의 값에 기반하여 상기 각 타일의 복잡도를 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 12,
The step of determining the complexity of each tile,
standardizing the i) to iv) based on a preset mean and standard deviation; and
Determining the complexity of each tile based on the middle two values selected by excluding the maximum value and the minimum value among the normalized i) to iv)
Including, how to determine the complex area.
제8항에 있어서,
상기 각 타일의 복잡도를 결정하는 단계는,
룰-기반(rule-based)의 결정 모델을 사용하여 결정되는 상기 각 타일의 복잡도를 정답(Ground Truth)으로서 추정하도록 미리 학습된 딥러닝 모델을 사용하여 상기 각 타일의 복잡도를 결정하는, 복잡 영역을 결정하는 방법.
According to claim 8,
The step of determining the complexity of each tile,
A complexity region in which the complexity of each tile is determined using a deep learning model pretrained to estimate the complexity of each tile determined using a rule-based decision model as a ground truth. How to determine.
제14항에 있어서,
상기 룰-기반의 결정 모델은, i) 상기 각 타일과 연관된 엔트로피, ii) 상기 각 타일과 연관된 엣지 밀도(edge density), iii) 상기 각 타일과 연관된 이산 코사인 변환(DCT) 계수의 NZR (non-zero-rate) 및 iv) 상기 각 타일과 연관된 분산 중 적어도 2개에 기반하여 상기 각 타일의 복잡도를 결정하도록 구성된 것인, 복잡 영역을 결정하는 방법.
According to claim 14,
The rule-based decision model is: i) the entropy associated with each tile, ii) the edge density associated with each tile, iii) the NZR of the discrete cosine transform (DCT) coefficient associated with each tile (non -zero-rate) and iv) determining the complexity of each tile based on at least two of the variance associated with each tile.
제1항에 있어서,
상기 결정하는 단계는,
상기 추출된 단위 컷을 이미지를 분류하도록 미리 학습된 분류 모델에 입력시키는 단계;
상기 분류 모델의 복수의 중간층(middle layer)들의 상기 단위 컷과 연관된 피쳐맵들을 획득하는 단계;
상기 피쳐맵들을 시각화하는, 상기 피쳐맵들에 대응하는 어텐션 맵(attention map)들을 생성하는 단계; 및
상기 어텐션 맵들을 평균 또는 합(sum)한 어텐션 맵으로부터, 활성화도가 상위인 영역을 나타내는 적어도 하나의 패치에 대응하는 상기 단위 컷의 영역을 상기 복잡 영역으로 결정하는 단계
를 포함하는, 복잡 영역을 결정하는 방법.
According to claim 1,
The determining step is
inputting the extracted unit cuts to a pre-learned classification model to classify images;
obtaining feature maps associated with the unit cut of a plurality of middle layers of the classification model;
generating attention maps corresponding to the feature maps, which visualize the feature maps; and
Determining a region of the unit cut corresponding to at least one patch representing a region having a higher activation degree, as the complex region, from an attention map obtained by averaging or summing the attention maps.
Including, how to determine the complex area.
제1항에 있어서,
상기 콘텐츠는 웹툰 콘텐츠이고,
상기 단위 컷들의 각각은 상기 웹툰 콘텐츠를 구성하는 장면 컷인, 복잡 영역을 결정하는 방법.
According to claim 1,
The content is webtoon content,
Each of the unit cuts is a scene cut constituting the webtoon content, a method for determining a complex region.
제1항 내지 제17항 중 어느 한 항의 방법을 상기 컴퓨터 시스템에서 실행시키기 위한 컴퓨터 판독 가능 기록매체에 기록된 프로그램. A program recorded on a computer readable recording medium for executing the method of any one of claims 1 to 17 in the computer system. 복수의 단위 컷들을 포함하는 콘텐츠의 이미지로부터 복잡 영역을 결정하는 컴퓨터 시스템에 있어서,
상기 컴퓨터 시스템에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
상기 이미지로부터, 상기 이미지에 포함된 단위 컷을 추출하고,
상기 단위 컷 내의 영역들 중에서 복잡도가 상위인 적어도 하나의 복잡 영역을 상기 콘텐츠와 연관된 식별 정보가 삽입될 영역으로 결정하는, 컴퓨터 시스템.
A computer system for determining a complex region from an image of content including a plurality of unit cuts,
at least one processor implemented to execute instructions readable by the computer system
including,
The at least one processor,
Extracting unit cuts included in the image from the image;
A computer system that determines at least one complex region having a higher complexity among regions within the unit cut as a region into which identification information associated with the content is to be inserted.
KR1020220011502A 2022-01-26 2022-01-26 Method and apparatus for determining region with high complexity from image of contents to insert identification information therein KR102689412B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220011502A KR102689412B1 (en) 2022-01-26 2022-01-26 Method and apparatus for determining region with high complexity from image of contents to insert identification information therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220011502A KR102689412B1 (en) 2022-01-26 2022-01-26 Method and apparatus for determining region with high complexity from image of contents to insert identification information therein

Publications (2)

Publication Number Publication Date
KR20230115028A true KR20230115028A (en) 2023-08-02
KR102689412B1 KR102689412B1 (en) 2024-07-29

Family

ID=87566619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220011502A KR102689412B1 (en) 2022-01-26 2022-01-26 Method and apparatus for determining region with high complexity from image of contents to insert identification information therein

Country Status (1)

Country Link
KR (1) KR102689412B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070030997A1 (en) * 2005-08-04 2007-02-08 Microsoft Corporation Imput complexity adaptive quantization watermarking
KR102096893B1 (en) * 2018-11-22 2020-04-06 주식회사 데이터코볼트 Apparatus and method for inserting an identification code for tracking a duplicated image
KR20200040739A (en) * 2018-06-19 2020-04-20 네이버웹툰 주식회사 Method, apparatus and computer program for prevent content leakage

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070030997A1 (en) * 2005-08-04 2007-02-08 Microsoft Corporation Imput complexity adaptive quantization watermarking
KR20200040739A (en) * 2018-06-19 2020-04-20 네이버웹툰 주식회사 Method, apparatus and computer program for prevent content leakage
KR102096893B1 (en) * 2018-11-22 2020-04-06 주식회사 데이터코볼트 Apparatus and method for inserting an identification code for tracking a duplicated image

Also Published As

Publication number Publication date
KR102689412B1 (en) 2024-07-29

Similar Documents

Publication Publication Date Title
CN110502984B (en) Drawing review method and device, computer equipment and storage medium
CN110276349B (en) Video processing method, device, electronic equipment and storage medium
US8141146B2 (en) Authentication server, authentication method and authentication program
CN108648132B (en) Method, system, terminal and medium for generating watermark according to image
CN109316747B (en) Game auxiliary information prompting method and device and electronic equipment
EP3114601B1 (en) Access control for a resource
US20210303905A1 (en) Method, system, and non-transitory computer readable record medium for extracting and providing text color and background color in image
CN110765893B (en) Drawing file identification method, electronic equipment and related product
CN112257729B (en) Image recognition method, device, equipment and storage medium
US8929684B2 (en) Image display apparatus and control method thereof
CN111626222A (en) Pet detection method, device, equipment and storage medium
KR102412135B1 (en) Image synthesizing apparatus and method for inserting watermark
WO2021011333A1 (en) Methods for determining data integrity using overlapping regions
GB2555168A (en) Using labels to track high-frequency offsets for patch-matching algorithms
CN110097071A (en) The recognition methods in the breast lesion region based on spectral clustering in conjunction with K-means and device
CN110766068A (en) Verification code identification method and computing device
CN117745589A (en) Watermark removing method, device and equipment
CN113887375A (en) Text recognition method, device, equipment and storage medium
CN114067324A (en) Identifying method, device, equipment and storage medium for identifying verification code picture
CN111803956B (en) Method and device for determining game plug-in behavior, electronic equipment and storage medium
US20200387730A1 (en) Image Processing Apparatus, Image Forming Apparatus, Display Apparatus, Image Processing Method, and Storage Medium
KR102689412B1 (en) Method and apparatus for determining region with high complexity from image of contents to insert identification information therein
KR101764998B1 (en) Method and system for filtering image
CN115294162B (en) Target identification method, device, equipment and storage medium
CN114881836A (en) Picture watermark processing method and device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant