KR20240026788A - 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 - Google Patents
영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 Download PDFInfo
- Publication number
- KR20240026788A KR20240026788A KR1020220105117A KR20220105117A KR20240026788A KR 20240026788 A KR20240026788 A KR 20240026788A KR 1020220105117 A KR1020220105117 A KR 1020220105117A KR 20220105117 A KR20220105117 A KR 20220105117A KR 20240026788 A KR20240026788 A KR 20240026788A
- Authority
- KR
- South Korea
- Prior art keywords
- keyword
- information
- video content
- tag
- database
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 239000000284 extract Substances 0.000 claims abstract description 22
- 238000013136 deep learning model Methods 0.000 claims abstract description 12
- 238000013507 mapping Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 21
- 238000013135 deep learning Methods 0.000 description 19
- 238000013527 convolutional neural network Methods 0.000 description 17
- 238000007781 pre-processing Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000011176 pooling Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 238000011425 standardization method Methods 0.000 description 4
- 238000010200 validation analysis Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 238000013434 data augmentation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007637 random forest analysis Methods 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/75—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7837—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Library & Information Science (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법을 개시한다. 본 발명의 영상 컨텐츠 키워드 태깅 시스템은 업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장하고, 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리하고, 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류하는 영상 분류기, 영상 분류기로부터 2차로 전처리된 복수의 이미지의 픽셀 정보를 이용하여 픽셀 정보 데이터베이스로부터 태그 정보 리스트를 추출하는 태그 추출기, 영상 분류기로부터 추론된 출력값을 이용하여 카테고리와 키워드의 관계형 데이터베이스로부터 키워드 정보 리스트를 추출하는 키워드 추출기 및 태그 추출기로부터 추출된 태그 정보 리스트와 키워드 추출기로부터 추출된 키워드 정보 리스트를 사용자 단말로 제공하고, 해당 사용자 단말로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택이 완료되면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 픽셀 정보 데이터베이스 및 카테고리와 키워드의 관계형 데이터베이스에 저장하여 관리하는 데이터베이스 처리기를 포함한다.
Description
본 발명은 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법에 관한 것으로써, 보다 상세하게는 영상에 대한 자동 카테고리 분류와 분류된 카테고리를 이용한 키워드 생성을 통한 영상 컨텐츠에 대응하는 키워드를 사용자에게 추천하여 영상 컨텐츠에 대한 키워드를 태깅할 수 있는 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 시스템에 관한 것이다.
정보통신기술(IT)기술의 발전과 스마트 기기의 광범위한 보급으로 인하여 개인의 영상 컨텐츠 소비량이 증가할 뿐만 아니라 개인도 영상 컨텐츠의 공급자의 역활을 수행하게 되었다.
영상 컨텐츠는 웹(Web)을 통한 공급이 늘어나고, 웹 표준 기술의 개선으로 인하여 대용량의 영상 컨텐츠도 손쉽게 웹으로 업로드할 수 있게 되었다. 이렇게 많은 영상 컨텐츠를 웹상으로 업로드하고 이를 소장하고, 공유하고, 판매하기 위해서는 웹 상에 저장되는 영상 컨텐츠에 대한 유지와 관리의 편의성과, 사용자 검색 효율성이 매우 중요하게 요구되고 있다.
문제는 영상 컨텐츠는 짧은 영상이더라도 영상 내에 포함된 다양한 내용으로 인하여 해당 영상 컨텐츠를 설명할 수 있는 정보를 함께 태깅하기 위해서는 영상 컨텐츠를 직접 시청하고 내용을 파악하여 관련 정보를 생성해서 해당 영상에 대한 키워드를 선정한 뒤 영상에 대한 태그 정보로 태깅하였다.
하지만, 대용량, 대량의 컨텐츠가 업로드되거나 다수의 공급자들이 영상을 공급하여 다수의 사용자들이 영상을 소비하게 되면서 영상 컨텐츠에 대한 직접적인 시청을 통한 정보 태깅은 매우 비효율적이라는 문제점이 지적되었다.
이러한 문제점을 해결하기 위하여 영상 컨텐츠를 자동으로 카테고리 분류하는 기술, 분류된 카테고리별로 내용 정보와 함게 키워드를 자동으로 생성하는 기술 그리고, 키워드를 이용하여 영상 컨텐츠에 대한 태깅을 실행하는 기술 등이 결합된 새로운 방식의 영상 컨텐츠 키워드 태깅 시스템 및 그 방법에 대한 개발의 필요성이 요구되고 있다.
상술한 필요성에 의해서 안출된 본 발명은 영상 컨텐츠를 웹 상에 업로드하면 영상 컨텐츠에 대한 카테고리를 자동으로 분류하고, 분류된 카테고리 정보 및 영상 컨텐츠 내용에 기초하여 키워드를 자동으로 생성하며, 생성된 키워드를 사용자에게 제공하여 사용자가 키워드를 선택적으로 이용하여 해당 영상 컨텐츠에 대한 키워드 태깅을 수행할 수 있으므로 종래 오토 태깅보다 정확하게 영상 컨텐츠에 대한 키워드 태깅이 가능하고, 사용자는 영상을 면밀하게 살펴보지 않더라도 내용에 대한 정확한 키워드 태깅이 가능하므로 유지 및 관리의 효율성이 향상되는 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위하여 본 발명의 일 실시 예에 따른 영상 컨텐츠 키워드 태깅 시스템은 업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장하고, 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리하고, 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류하는 영상 분류기; 상기 영상 분류기로부터 2차로 전처리된 복수의 이미지의 픽셀 정보를 이용하여 픽셀 정보 데이터베이스로부터 태그 정보 리스트를 추출하는 태그 추출기; 상기 영상 분류기로부터 추론된 출력값을 이용하여 카테고리와 키워드의 관계형 데이터베이스로부터 키워드 정보 리스트를 추출하는 키워드 추출기; 및 상기 태그 추출기로부터 추출된 태그 정보 리스트와 상기 키워드 추출기로부터 추출된 키워드 정보 리스트를 사용자 단말로 제공하고, 해당 사용자 단말로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택이 완료되면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 상기 픽셀 정보 데이터베이스 및 상기 카테고리와 키워드의 관계형 데이터베이스에 저장하여 관리하는 데이터베이스 처리기;를 포함한다.
이 경우에 상기 영상 분류기는, 상기 동영상 데이터 중 사용자 선택에 의해서 어느 하나의 동영상 데이터가 선택되면, 선택된 동영상 데이터를 프레임 단위로 분리하고, 분리된 복수의 프레임 이미지를 미리 설정된 크기로 리사이징하며, 리사이징된 복수의 이미지를 복제하고, 복제된 복수의 이미지의 리사이징된 크기에 따라 픽셀값을 미리 결정된 기준값으로 나눠서 미리 설정된 0 내지 1 사이의 실수값으로 표준화 처리하여 입력된 영상 컨텐츠의 복수의 이미지에 대한 픽셀 정보를 산출할 수 있다.
한편, 상기 태그 추출기는, 상기 복수의 이미지에 대한 픽셀 정보를 이용하여 픽셀 정보와 태그 정보가 매핑되어 사전에 저장된 픽셀 정보 데이터베이스로부터 태그 정보를 추출할 수 있다.
이 경우에, 상기 픽셀 정보 데이터베이스는, 적어도 하나 이상의 객체를 포함하는 이미지로 구성되는 복수의 이미지에 대한 픽셀 정보와 유사한 픽셀 정보를 상기 픽셀 정보 데이터베이스에서 검색하고, 유사도가 높은 객체와 맵핑된 태그 정보를 상기 태그 추출기로 반환할 수 있다.
이 경우에, 상기 태그 추출기는, 상기 픽셀 정보 데이터베이스로부터 반환된 태그 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 사용자 단말을 통해서 태그 정보를 선택할 수 있는 형태로 제공할 수 있다.
한편, 상기 키워드 추출기는, 상기 영상 분류기에 의해서 추론된 카테고리 정보를 이용하여 카테고리 정보와 키워드 정보가 매핑되어 사전에 저장된 관계형 키워드 데이터베이스로부터 키워드 리스트를 추출할 수 있다.
이 경우에, 상기 관계형 키워드 데이터베이스는, 카테고리별로 설명력이 높은 관련 키워드를 사전에 매핑하여 저장하고, 카테고리가 입력되면 해당 카테고리에 매핑되어 있는 관련 키워드 목록을 상기 키워드 추출기로 반환할 수 있다.
이 경우에, 상기 키워드 추출기는, 상기 관계형 키워드 데이터베이스로부터 반환된 키워드 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 해당 사용자 단말을 통해서 키워드 정보를 선택할 수 있는 형태로 제공할 수 있다.
본 발명의 다른 실시 예에 따른 영상 컨텐츠 키워드 태깅 방법은, 업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장하고, 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리하고, 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류하는 영상 분류기, 상기 영상 분류기로부터 2차로 전처리된 복수의 이미지의 픽셀 정보를 이용하여 픽셀 정보 데이터베이스로부터 태그 정보 리스트를 추출하는 태그 추출기, 상기 영상 분류기로부터 추론된 출력값을 이용하여 카테고리와 키워드의 관계형 데이터베이스로부터 키워드 정보 리스트를 추출하는 키워드 추출기 및 상기 태그 추출기로부터 추출된 태그 정보 리스트와 상기 키워드 추출기로부터 추출된 키워드 정보 리스트를 사용자 단말로 제공하고, 해당 사용자 단말로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택이 완료되면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 상기 픽셀 정보 데이터베이스 및 상기 카테고리와 키워드의 관계형 데이터베이스에 저장하여 관리하는 데이터베이스 처리기;를 포함하는 영상 컨텐츠 키워드 태깅 시스템을 이용한 영상 컨텐츠 키워드 태깅 방법에 있어서, 상기 태그 추출기는, 상기 복수의 이미지에 대한 픽셀 정보를 이용하여 픽셀 정보와 태그 정보가 매핑되어 사전에 저장된 픽셀 정보 데이터베이스로부터 태그 정보를 추출하는 단계; 상기 키워드 추출기는,상기 영상 분류기에 의해서 추론된 카테고리 정보를 이용하여 카테고리 정보와 키워드 정보가 매핑되어 사전에 저장된 관계형 키워드 데이터베이스로부터 키워드 리스트를 추출하는 단계; 상기 태그 추출기는, 상기 픽셀 정보 데이터베이스로부터 반환된 태그 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 사용자 단말을 통해서 태그 정보를 선택할 수 있는 형태로 제공하는 단계; 및 상기 키워드 추출기는, 상기 관계형 키워드 데이터베이스로부터 반환된 키워드 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 해당 사용자 단말을 통해서 키워드 정보를 선택할 수 있는 형태로 제공하는 단계;를 포함한다.
이 경우에, 상기 데이터베이스 처리기는, 상기 태그 정보 및 상기 키워드 정보를 이용하여 해당 영상 컨텐츠에 대한 사용자 선택이 완료되면, 해당 영상 컨텐츠에 대해서 태그 정보 및 키워드 정보를 맵핑하여 상기 관계형 키워드 데이터베이스 또는 상기 픽셀 정보 데이터베이스를 갱신하여 저장하는 단계;를 더 포함한다.
본 발명의 다양한 실시 예에 따르면 영상 컨텐츠를 웹 상에 업로드하면 영상 컨텐츠에 대한 카테고리를 자동으로 분류하고, 분류된 카테고리 정보 및 영상 컨텐츠 내용에 기초하여 키워드를 자동으로 생성하며, 생성된 키워드를 사용자에게 제공하여 사용자가 키워드를 선택적으로 이용하여 해당 영상 컨텐츠에 대한 키워드 태깅을 수행할 수 있으므로 종래 오토 태깅보다 정확하게 영상 컨텐츠에 대한 키워드 태깅할 수 있는 사용자 편의성이 증가되는 효과가 있고,
또한, 사용자는 영상을 면밀하게 살펴보지 않더라도 내용에 대한 정확한 키워드 태깅이 가능하므로 유지 및 관리의 효율성이 향상되는 효과가 있다.
도 1은 본 발명의 실시예에 따른 서비스 서버의 구성을 예시적으로 나타내는 블럭도,
도 2는 본 발명의 다른 실시예에 따른 딥러닝을 이용한 영상 카테고리 분류 방법을 예시적으로 나타내는 플로우챠트,
도 3은 본 발명의 일 실시 예에 따른 서비스 서버의 영상 컨텐츠 태깅 동작을 예시적으로 설명하는 블럭도,
도 4는 본 발명의 일 실시 예에 따른 영상 컨텐츠 키워드 태깅 시스템의 구성을 예시적으로 나타내는 블럭도,
도 5는 도 4에 도시된 태그 추출기의 동작을 예시적으로 설명하는 블럭도,
도 6은 도 5에 도시된 태그 추출기에 의한 태그 정보를 추출하는 일 예를 설명하는 도면, 그리고,
도 7은 도 4에 도시된 키워드 추출기의 동작을 예시적으로 설명하는 블럭도.
도 2는 본 발명의 다른 실시예에 따른 딥러닝을 이용한 영상 카테고리 분류 방법을 예시적으로 나타내는 플로우챠트,
도 3은 본 발명의 일 실시 예에 따른 서비스 서버의 영상 컨텐츠 태깅 동작을 예시적으로 설명하는 블럭도,
도 4는 본 발명의 일 실시 예에 따른 영상 컨텐츠 키워드 태깅 시스템의 구성을 예시적으로 나타내는 블럭도,
도 5는 도 4에 도시된 태그 추출기의 동작을 예시적으로 설명하는 블럭도,
도 6은 도 5에 도시된 태그 추출기에 의한 태그 정보를 추출하는 일 예를 설명하는 도면, 그리고,
도 7은 도 4에 도시된 키워드 추출기의 동작을 예시적으로 설명하는 블럭도.
이하에서는 도면을 참고하여 본 발명의 바람직한 실시 예를 중심으로 설명한다. 이하에서 설명하는 본 발명의 바람직한 실시 예는 본 발명의 기술적 사상의 범위내에서 다양하게 설계 변경될 수 있으며, 발명의 개별 구성요소는 하나의 구성요소로 통합되거나 별도의 구성요소로 분리되어 설계될 수 있으며, 도면에 표기된 구성이나 UX/UI 등은 예시적인 것이며 본 발명의 해당 분야에서 통상의 지식을 가진 사람이 본 발명의 상세한 설명을 참고하여 다양하게 설계변경할 수 있으며, 이렇게 설계 변경된 구성 및 UX/UI에 대해서 본 발명의 권리가 미치는 것은 자명하다.
도 1은 본 발명의 실시예에 따른 서비스 서버의 구성을 예시적으로 나타내는 블럭도이다. 도 1을 참고하면, 서비스 서버(100)는 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)를 포함한다. 도 1에 도시된 서비스 서버(100)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 1에 도시된 구성 요소보다 많은 구성 요소에 의해 서비스 서버(100)가 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 서비스 서버(100)가 구현될 수도 있다.
여기서 서비스 서버(100)는 스마트폰(Smart Phone), 개인용 컴퓨터(Personal Computer), 노트북 컴퓨터, 태블릿 PC(Tablet PC) 등의 엣지(Edge) 컴퓨팅 단말로도 구현될 수 있으나, 바람직하게 서비스 서버(100)는 클라우드 및 AI 서버인 GPU(Graphics Processing Unit) 기반 클라우드 서버, 웹 서버, 데이터베이스 서버, 프록시 서버 등의 통합 형태로 구현될 수 있다.
또한, 서비스 서버(100)에는 네트워크 부하 분산 메커니즘, 내지 해당 서버가 인터넷 또는 다른 네트워크상에서 동작할 수 있도록 하는 다양한 소프트웨어 중 하나 이상이 설치될 수 있으며, 이를 통해 컴퓨터화된 시스템으로 구현될 수 있다. 또한, 네트워크는 http 네트워크일 수 있으며, 전용 회선(private line), 인트라넷 또는 임의의 다른 네트워크일 수 있다. 나아가, 서비스 서버(100) 및 단말/서버(미도시) 간의 연결은 데이터가 임의의 해커 또는 다른 제3자에 의한 공격을 받지 않도록 보안 네트워크로 연결될 수 있다.
또한, 서비스 서버(100)는 복수의 데이터베이스 서버를 포함할 수 있으며, 이러한 데이터베이스 서버가 탈중앙화 방식의 데이터베이스 내지 중앙 집중식 데이베이스 등으로 구축될 수 있다.
통신부(110)는 유/무선 통신망을 통해 내부의 임의의 구성 요소 또는 외부의 임의의 적어도 하나의 단말기와 통신 연결할 수 있다. 이때, 상기 외부의 임의의 단말기는 단말(미도시), 서버(미도시) 등을 포함할 수 있다. 여기서, 무선 인터넷 기술로는 무선랜(Wireless LAN: WLAN), DLNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS) 등이 있으며, 통신부(110)는 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다. 또한, 근거리 통신 기술로는 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association: IrDA), UWB(Ultra Wideband), 지그비(ZigBee), 인접 자장 통신(Near Field Communication: NFC), 초음파 통신(Ultra Sound Communication: USC), 가시광 통신(Visible Light Communication: VLC), 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct) 등이 포함될 수 있다. 또한, 유선 통신 기술로는 전력선 통신(Power Line Communication: PLC), USB 통신, 이더넷(Ethernet), 시리얼 통신(serial communication), 광/동축 케이블 등이 포함될 수 있다.
또한, 통신부(110)는 유니버설 시리얼 버스(Universal Serial Bus: USB)를 통해 임의의 단말과 정보를 상호 전송할 수 있다. 또한, 통신부(110)는 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 상기 단말, 상기 서버 등과 무선 신호를 송수신한다. 또한, 통신부(110)는 제어부(150)의 제어에 의해, 비정형 데이터에 해당하는 하나 이상의 동영상 데이터(또는 로우 데이터)를 수집(또는 수신)할 수 있다.
저장부(120)는 다양한 사용자 인터페이스(User Interface: UI), 그래픽 사용자 인터페이스(Graphic User Interface: GUI) 등을 저장할 수 있다. 또한, 저장부(120)는 서비스 서버(100)가 작동하는데 필요한 데이터와 프로그램 등을 저장한다. 즉, 저장부(120)는 서비스 서버(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 딥러닝을 이용한 영상 카테고리 분류 장치(100)의 작동을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한, 이러한 응용 프로그램 중 적어도 일부는 서비스 서버(100)의 기본적인 기능을 위하여 출고 당시부터 서비스 서버(100) 상에 존재할 수 있다. 한편, 응용 프로그램은 저장부(120)에 저장되고, 서비스 서버(100)에 설치되어, 제어부(150)에 의하여 서비스 서버(100)의 작동(또는 기능)을 수행하도록 구동될 수 있다.
또한, 저장부(120)는 플래시 메모리 타입(Flash Memory Type), 하드 디스크 타입(Hard Disk Type), 멀티미디어 카드 마이크로 타입(Multimedia Card Micro Type), 카드 타입의 메모리(예를 들면, SD 또는 XD 메모리 등), 자기 메모리, 자기 디스크, 광디스크, 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory: ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 중 적어도 하나의 저장매체를 포함할 수 있다. 또한, 서비스 서버(100)는 인터넷(internet)상에서 저장부(120)의 저장 기능을 수행하는 웹 스토리지(web storage)를 운영하거나, 또는 상기 웹 스토리지와 관련되어 작동할 수도 있다.
또한, 저장부(120)는 제어부(150)의 제어에 의해 통신부(110)를 통해 수집된(또는 수신된) 비정형 데이터에 해당하는 하나 이상의 동영상 데이터(또는 로우 데이터)를 저장할 수 있다.
표시부(또는 디스플레이부)(130)는 제어부(150)의 제어에 의해 저장부(120)에 저장된 사용자 인터페이스 및/또는 그래픽 사용자 인터페이스를 이용하여 다양한 메뉴 화면 등과 같은 다양한 콘텐츠를 표시할 수 있다. 여기서, 표시부(130)에 표시되는 콘텐츠는 다양한 텍스트 또는 이미지 데이터(각종 정보 데이터 포함)와 아이콘, 리스트 메뉴, 콤보 박스 등의 데이터를 포함하는 메뉴 화면 등을 포함한다. 또한, 표시부(130)는 정전 방식 또는 정압 방식의 터치 스크린 일 수 있다.
또한, 표시부(130)는 액정 디스플레이(Liquid Crystal Display: LCD), 박막 트랜지스터 액정 디스플레이(Thin Film Transistor-Liquid Crystal Display: TFT LCD), 유기 발광 다이오드(Organic Light-Emitting Diode: OLED), 플렉시블 디스플레이(Flexible Display), 3차원 디스플레이(3D Display), 전자잉크 디스플레이(e-ink display), LED(Light Emitting Diode) 중에서 적어도 하나를 포함할 수 있다.
또한, 표시부(130)는 제어부(150)의 제어에 의해 통신부(110)를 통해 수집된(또는 수신된) 비정형 데이터에 해당하는 하나 이상의 동영상 데이터(또는 로우 데이터) 등을 표시할 수 있다.
음성 출력부(140)는 제어부(150)에 의해 소정 신호 처리된 신호에 포함된 음성 정보를 출력한다. 여기서, 음성 출력부(140)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
또한, 음성 출력부(140)는 제어부(150)에 의해 생성된 안내 음성을 출력할 수 있다. 음성 출력부(140)는 제어부(150)의 제어에 의해 통신부(110)를 통해 수집된(또는 수신된) 비정형 데이터에 해당하는 하나 이상의 동영상 데이터(또는 로우 데이터) 등에 대응하는 음성 정보(또는 음향 정보) 등을 출력할 수 있다.
제어부(controller, 또는 MCU(microcontroller unit)(150)는 딥러닝을 서비스 서버(100)의 전반적인 제어 기능을 실행한다. 또한 제어부(150)는 서비스 서버(100)에 연결된 판매자 단말(200) 및/또는 구매자 단말(300)과의 제어 요청 처리를 전반적으로 관여한다.
또한, 제어부(150)는 저장부(120)에 저장된 프로그램 및 데이터를 이용하여 서비스 서버(100)의 전반적인 제어 기능을 실행한다. 제어부(150)는 RAM, ROM, CPU, GPU, 버스를 포함할 수있으며, RAM, ROM, CPU, GPU 등은 버스를 통해 서로 연결될 수 있다. CPU는 저장부(120)에 액세스하여, 저장부(120)에 저장된 O/S를 이용하여 부팅을 수행할 수 있으며, 저장부(120)에 저장된 각종 프로그램, 콘텐츠, 데이터 등을 이용하여 다양한 작동을 수행할 수 있다.
또한, 제어부(150)는 미리 설정된 데이터 세트를 모델을 학습하기 위하여 필요한 학습 세트(train set)과 학습 도중 모델의 정확도를 평가하기 위한 검증 세트(validation set)로 소정의 비율(8 대 2, 7 대 3, 6 대4 비율)로 나누어 학습을 진행(또는 수행)한다.
또한, 제어부(150)는 CNN(Convolutional Neural Networks: 합성곱 신경망) 모델을 구현하기 위해 프로그래밍 언어(예를 들어, 파이썬(python) 등)을 사용하고, 오픈소스 라이브러리인 케라스(keras), 텐서플로우(tensorflow), 테아노(Theano) 등을 통해 신경망 모델을 구축할 수 있다.
본 발명의 실시예에서 사용하는 CNN 모델은 기존 머신러닝 모델들(예를 들어 SVM(Support Vector Machine), RF(Random Forest) 등 포함)과 달리 다차원의 데이터에서 주요 특징점들을 찾아내어 학습하는 방식이기 때문에, 픽셀들로 구성된 이미지 데이터 분류에 적합하다.
또한, 제어부(150)는 미리 설정된 학습 세트, 검증 세트 등을 통해 CNN 모델에 대해서 특정 학습 세트, 검증 세트 등을 위한 딥러닝 기능(또는 학습 기능)을 수행한다. 이때, 제어부(150)는 학습 세트, 검증 세트 등에 대해 전처리를 실시하고, 전처리된 데이터를 CNN 모델을 이용해서 심층 학습을 통해서 카테고리 분류 모델을 학습시킬 수 있다. 제어부(150)는 지도 학습(Supervised Learning), 반지도 학습(Semi-Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 및 심층 강화 학습(Deep Reinforcement Learning) 중 어느 하나 또는 적어도 하나의 조합으로 이루어지는 기계학습을 통해서도 학습 기능을 수행할 수도 있다.
딥러닝(Deep Learning)은 신경망 네트워크로, 많은 수의 계층(layer)을 만들어 학습을 하는 기계 학습 분야이다. 여기서, 신경망 네트워크는 1차원 연산을 수행하는 보통 프로그램과 대비해서, 병렬 연산을 수행하여 빠르고 복잡한 구조를 갖는다. 이때, 신경망 네트워크를 구성하는 각 계층에는 복수의 노드(node)들이 있는데, 입력 노드에서 다음 노드로 연결될 때 가중치 연산을 통해 두 노드 사이의 신호를 제어하여 하나의 값으로 출력한다.
또한, CNN의 구조는 크게 콘볼루션 계층(convolution layer), 풀링 계층(pooling layer) 및 풀리 커넥티드 계층(fully connected layer: 완전 연결 계층)으로 구성될 수 있으며, 이러한 기본구조가 복수개 쌓여서 구성될 수 있다.
또한, CNN 에서는 하위 계층부터 상위 계층을 지나면서 점차 수준이 높은 특징을 추출한다. 여기서, 하위 계층에서는 복수의 콘볼루션과 풀링을 통해 특징맵(feature map)을 구성한다. 또한, 콘볼루션 계층에서는 이전 계층의 복수의 출력값을 입력받아 공유된 가중치 연산(convolution filters) 처리를 수행하고, 상기 풀링 계층에서는 상기 콘볼루션 계층과 1:1로 연결되어 맥스-풀링(max-pooling)을 수행한다. 또한, 맥스-풀링에서는 블록 내의 특징값 중 최대값을 취함으로써, 위치에 상관없이 특징이 되는 값은 보존하고, 특징맵의 크기를 줄여 연산을 빠르게 할 수 있다. 또한, 최상위 풀리 커넥티드 계층에서는 이전 계층에서 추출된 높은 수준의 특징을 사용해서 최종 인식 결과를 결정한다.
이와 같이, 제어부(150)는 영상 데이터를 복수로 분리하여 과적합을 방지하는 교차 검증 기법을 사용한다. 여기서, 교차 검증 기법은 전체 데이터를 복수의 학습 세트와 테스트 세트로 분리하여 학습을 진행하는 방식이다.
또한, 제어부(150)는 CNN 모델에 존재하는 하나 이상의 파라미터에 대해서 미리 설정된 튜닝 기법(예를 들어 그리드 서치, 랜덤 서치 등 포함)을 적용하여 최적의 파라미터를 추출하여 사용한다. 이때, 파라미터는 모델을 학습시킬 때 사용자가 설정해줘야 하는 매개변수로, 튜닝 기법을 통해 최적으로 설정할 수 있다. 여기서, CNN 모델은 4개의 콘볼루션 계층과 2개의 풀리 커넥티드 계층으로 구성되며, 콘볼루션 계층과 풀리 커넥티드 계층 사이에는 맥스-풀링 계층을 배치하여 차원을 줄이고 과적합을 방지하도록 구성한다. 여기서, 활성화 함수는 LeakyReLU, ReLU, Sigmoid, tanh 등을 사용한다.
또한, 제어부(150)는 학습 세트, 검증 세트 등에 대한 딥러닝을 통해서 모델의 성능(또는 정확도), 테스트 데이터에 대한 예측치 등을 포함하는 딥러닝 결과를 산출(또는 생성)한다. 여기서, 성능은 분류 문제를 평가할 때 사용되는 다양한 지표들(예를 들어 정확도(accuracy), 정밀도(precision), 재현율(recall) 등 포함) 등을 사용한다.
또한, 제어부(150)는 통신부(110)를 통해 판매자 단말(200) 등으로부터 동영상 데이터(또는 동영상 파일)에 해당하는 하나 이상의 로우 데이터를 수집(또는 수신)한다.
또한, 제어부(150)는 수집된(또는 수신된) 동영상 데이터(또는 동영상 파일)에 해당하는 하나 이상의 로우 데이터를 저장부(120)에 저장한다. 제어부(150)는 상기 저장부(120)에 저장된 하나 이상의 동영상 데이터(또는 동영상 파일) 중에서 판매자 단말(200)의 사용자 선택(또는 사용자 터치/입력/제어)에 따른 어느 하나의 동영상 데이터에 대해서 1차로 전처리 기능(또는 전처리 과정)을 수행한다.
즉, 저장부(120)에 저장된 하나 이상의 동영상 데이터 중에서 사용자 선택에 따라 어느 하나의 동영상 데이터가 선택되는 경우, 제어부(150)는 선택된 동영상 데이터(또는 동영상 파일)를 프레임 단위(또는 이미지 단위)로 분리하여 미리 설정된 형식의 이미지(또는 이미지 파일)로 변환(또는 분리/생성/구성)한다. 여기서, 미리 설정된 형식은 RGB 형태의 JPG, TIF, PNG 등을 포함한다. 이때, 제어부(150)는 동영상 데이터로부터 미리 설정된 시간 간격으로 프레임 단위에 따라 이미지를 변환할 수 있다.
또한, 제어부(150)는 프레임 단위로 분리된 복수의 이미지(또는 개별 이미지)를 미리 설정된 크기로 리사이징하고, 리사이징된 크기에 따라 각 픽셀값을 변환한다. 이때, 제어부(150)는 미리 설정된 함수를 이용해서 프레임 단위로 분리된 복수의 이미지를 미리 설정된 크기로 리사이징할 수 있다. 또한, 프레임 단위로 분리된 이미지의 크기(또는 세로*가로 크기)가 미리 설정된 크기보다 너무 큰 상태(예를 들어 10배 이상 차이가 나는 상태)에서 프레임 단위로 분리된 이미지를 미리 설정된 크기로 리사이징하는 경우, 제어부(150)는 이미지의 훼손을 방지하기 위해서 복수 단계에 걸쳐서 순차로 확대 또는 축소를 위한 리사이징을 수행하여 최종적으로 미리 설정된 크기로 리사이징할 수 있다.
또한, 제어부(150)는 리사이징된 복수의 이미지를 각각 복제한다. 이때, 제어부(150)는 리사이징된 이미지를 다양한 형태(예를 들어 이미지 회전, 확대, 축소, 가로 및/또는 세로 크기 변경 등 포함)로 변형하여, 새로운 다수의 이미지들(또는 상기 리사이징된 이미지와 관련한 하나 이상의/다수의 새로운 이미지)을 생성한다. 이때, 제어부(150)는 데이터 확장(data augmentation, 데이터 복제) 기법을 활용하여 데이터(또는 이미지)의 수를 증가(또는 복제)할 수 있다.
또한, 제어부(150)는 각 이미지 내에 포함된 픽셀들의 값(또는 픽셀들의 단위)을 미리 설정된 표준화 방식으로 표준화 처리한다. 여기서, 표준화 방식은 각 픽셀값(예를 들어 0 내지 255 중 어느 하나의 값)을 미리 설정된 0 내지 1 사이의 실수로 변환한다. 이때, 상기 실수로 변환된 값은 미리 설정된 소수점(예를 들어 소수점 네자리)까지 계산된 상태일 수 있다.
즉, 제어부(150)는 각 이미지 내에 포함된 픽셀들의 값을 해당 RGB 값에 따른 미리 설정된 기준값(예를 들어 0 내지 255에 대응하는 256)으로 각각 나누고, 각 픽셀의 값을 상기 나눈값(또는 몫)으로 대체(또는 교환)한다.
이와 같이, 제어부(150)는 카테고리 분류(또는 분석)를 위한 동영상 데이터로부터 분리되는 복수의 이미지에 대해서 전처리 기능을 수행하여, 복수의 이미지를 각각 RGB 값에 대응하는 표준화 처리된 값으로 변환하여, 다차원 의 수치화된 테이블을 생성(또는 구성)할 수 있다.
또한, 제어부(150)는 각 이미지별로 특징을 추출하기 위한 전처리를 위해서, 1차로 전처리된 복수의 이미지(예를 들어 1차로 전처리된 프레임 단위로 분리된 복수의 이미지, 1차로 전처리된 복제된 다수의 이미지 등 포함)에 대해서 2차로 전처리 기능(또는 전처리 과정)을 수행한다.
즉, 제어부(150)는 표준화 처리된 복수의 이미지에 대해서 미리 설정된 가우시안 필터를 적용하여 노이즈를 제거한다. 여기서, 노이즈는 이미지 내의 흐릿하거나 흔들림 등으로 인해 발생한 노이즈를 포함한다.
또한, 제어부(150)는 노이즈가 제거된 복수의 이미지에 대해서 객체(또는 물체) 인식 과정을 수행하고, 노이즈가 제거된 복수의 이미지 내에 포함된 객체를 제외한 나머지 배경을 미리 설정된 픽셀값(또는 미리 설정된 표준화 처리 값)으로 변환(또는 검은색/흰색에 대응하는 RGB 값(예를 들어 000000/FFFFFF)과 관련해서 표준화 처리(예를 들어 0/1))한다. 여기서, 객체는 미리 설정된 장소, 인물, 사물 등을 포함한다.
또한, 제어부(150)는 학습 모델(예를 들어 CNN 모델)이 해당 객체를 좀 더 잘 이해할 수 있도록 해당 복수의 이미지(또는 해당 배경 처리된 복수의 이미지) 내에서 각각 인식된 객체의 색상(또는 표준화 처리된 값)을 단순화 처리한다. 여기서, 단순화 처리는 컬러 세그멘테이션(color segmentation)을 통해 객체 검출(object detection)을 실행하는 것으로, 인식된 객체를 미리 설정된 복수의 그레이 레벨(gray-level)로 분류하고, 윤곽(contouring) 기법을 사용해서 각 레벨의 면적을 측정하여, 이미지를 윤곽 영상으로 변환하는 것이다. 이때, 윤곽 기법은 미리 설정된 색상의 그레이 레벨 범위에 임계값(threshold)을 설정해서(또는 걸어) 한 개의 밝기(intensity)로 변환하는 것이다.
또한, 상기 제어부(150)는 상기 2차로 전처리된 복수의 이미지(예를 들어 2차로 전처리된 프레임 단위로 분리된 복수의 이미지, 2차로 전처리된 복제된 다수의 이미지 등 포함)를 입력값으로 CNN(합성곱 신경망) 모델을 이용해서 딥러닝을 수행하여, 해당 2차로 전처리된 복수의 이미지(또는 해당 2차로 전처리된 복수의 이미지와 관련한 동영상 데이터)에 대해 카테고리를 분류한다. 이때, 특정 이미지에 포함된 객체가 복수인 경우, 상기 제어부(150)는 해당 특정 이미지에 대해서 다중 카테고리를 분류할 수도 있다. 여기서, 카테고리는 장소, 인물, 사물, 문화 등을 포함한다.
즉, 제어부(150)는 2차로 전처리된 복수의 이미지를 입력값으로 CNN 모델을 이용해서 딥러닝을 수행하고, 딥러닝 결과를 근거로 해당 2차로 전처리된 복수의 이미지(또는 해당 2차로 전처리된 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리 분류 결과를 생성(또는 예측)한다. 여기서, 카테고리 분류 결과는 해당 동영상 데이터명(또는 동영상 파일명), 카테고리 정보(예를 들어 장소, 인물, 사물, 문화 등 포함) 등을 포함한다.
제어부(150)는 분류된 복수의 이미지(또는 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리에 대한 정보(또는 카테고리 정보)를 근거로 해당 동영상 데이터를 분류된 카테고리(또는 카테고리 정보)와 매핑하여(또는 매칭하여/연동하여) 관리(또는 저장)한다.
즉, 제어부(150)는 생성된 카테고리 분류 결과를 근거로 해당 동영상 데이터를 카테고리 분류 결과와 매핑하여 관리한다. 또한, 제어부(150)는 분류된 복수의 이미지(또는 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리에 대한 정보(또는 카테고리 분류 결과/카테고리 정보)를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다.
또한, 제어부(150)는 분류된 상기 복수의 이미지(또는 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리에 대한 정보(또는 카테고리 분류 결과/카테고리 정보) 등을 통신부(110)를 통해 판매자 단말(200) 및/또는 구매자 단말(300) 등으로 전송(또는 제공)할 수 있다.
또한, 본 발명의 실시예에서 설명하는 특정 동영상 데이터에 대한 전처리 기능, 딥러닝을 통한 학습 기능 등은 본 발명의 서비스 서버(100)에 설치된 전용 앱을 통해 수행하거나 또는, 별도의 딥러닝 서버(미도시)에서 제공하는 웹 사이트 등을 통해 수행할 수도 있다.
이와 같이, 동영상 데이터에 대해서 전처리 기능을 수행하고, 전처리된 이미지를 입력값으로 CNN 모델을 이용해서 전처리된 이미지와 관련한 동영상 데이터의 카테고리를 분류할 수 있다.
이하에서는, 본 발명의 다른 실시 예에 따른 서비스 서버(100)에 의해서 딥러닝을 이용한 영상 카테고리 분류 방법을 도 2를 참조하여 상세히 설명한다.
도 2는 본 발명의 다른 실시예에 따른 딥러닝을 이용한 영상 카테고리 분류 방법을 예시적으로 나타내는 플로우챠트이다. 도 2를 참고하면, 먼저, 제어부(150)는 저장부(120)에 저장된 하나 이상의 동영상 데이터(또는 동영상 파일) 중에서 서비스 서버(100)에 접속한 판매자 단말(200)의 사용자 선택(또는 사용자 터치/입력/제어)에 따른 어느 하나의 동영상 데이터에 대해서 1차로 전처리 기능(또는 전처리 과정)을 수행한다.
즉, 저장부(120)에 저장된 하나 이상의 동영상 데이터 중에서 사용자(판매자) 선택에 따라 어느 하나의 동영상 데이터가 선택되는 경우, 제어부(150)는 선택된 동영상 데이터(또는 동영상 파일)를 프레임 단위(또는 이미지 단위)로 분리하여 미리 설정된 형식의 이미지(또는 이미지 파일)로 변환(또는 분리/생성/구성)한다. 여기서, 미리 설정된 형식은 RGB 형태의 JPG, TIF, PNG 등 을 포함한다.
또한, 제어부(150)는 프레임 단위로 분리된 복수의 이미지(또는 개별 이미지)를 미리 설정된 크기로 리사이징하고, 리사이징된 크기에 따라 각 픽셀값을 변환한다. 이때, 제어부(150)는 미리 설정된 함수를 이용해서 프레임 단위로 분리된 복수의 이미지를 상기 미리 설정된 크기로 리사이징할 수 있다. 또한, 상기 프레임 단위로 분리된 이미지의 크기(또는 세로*가로 크기)가 미리 설정된 크기보다 너무 큰 상태(예를 들어 10배 이상 차이가 나는 상태)에서 프레임 단위로 분리된 이미지를 미리 설정된 크기로 리사이징하는 경우, 제어부(150)는 이미지의 훼손을 방지하기 위해서 복수 단계에 걸쳐서 순차로 확대 또는 축소를 위한 리사이징을 수행하여 최종적으로 미리 설정된 크기로 리사이징할 수 있다.
또한, 제어부(150)는 리사이징된 복수의 이미지를 각각 복제한다. 이때, 제어부(150)는 리사이징된 이미지를 다양한 형태(예를 들어 이미지 회전, 확대, 축소, 가로 및/또는 세로 크기 변경 등 포함)로 변형하여, 새로운 다수의 이미지들(또는 리사이징된 이미지와 관련한 하나 이상의/다수의 새로운 이미지)을 생성한다. 이때, 제어부(150)는 데이터 확장(data augmentation, 데이터 복제) 기법을 활용하여 데이터(또는 이미지)의 수를 증가(또는 복제)할 수 있다.
또한, 제어부(150)는 각 이미지 내에 포함된 픽셀들의 값(또는 픽셀들의 단위)을 미리 설정된 표준화 방식으로 표준화 처리한다. 여기서, 표준화 방식은 각 픽셀값(예를 들어 0 내지 255 중 어느 하나의 값)을 미리 설정된 0 내지 1 사이의 실수로 변환한다. 이때, 실수로 변환된 값은 미리 설정된 소수점(예를 들어 소수점 네자리)까지 계산된 상태일 수 있다.
즉, 제어부(150)는 각 이미지 내에 포함된 픽셀들의 값을 해당 RGB 값에 따른 미리 설정된 기준값(예를 들어 0 내지 255에 대응하는 256)으로 각각 나누고, 각 픽셀의 값을 상기 나눈값(또는 몫)으로 대체(또는 교환)한다.
이와 같이, 제어부(150)는 카테고리 분류(또는 분석)를 위한 동영상 데이터로부터 분리되는 복수의 이미지에 대해서 전처리 기능을 수행하여, 복수의 이미지를 각각 RGB 값에 대응하는 표준화 처리된 값으로 변환하여, 다차원의 수치화된 테이블을 생성(또는 구성)할 수 있다.
일 예로, 제 1 저장부(120)에 미리 저장된 복수의 동영상 데이터 중에서 사용자 선택에 따라 1920 × 1080 크기의 생활영상.mov 영상이 선택될 때, 제1 제어부(150)는 선택된 생활영상.mov 영상을 프레임 단위로 분리하여 225개의 JPG 파일(예를 들어 제1 JPG 파일 내지 제225 JPG 파일)로 변환(또는 분리)한다.
또한, 제 1 제어부는 미리 설정된 파일썬 프로그램에서 구동하는 cv2.resize 함수를 이용해서 1920 × 1080 크기의 상기 제1 JPG 파일 내지 제225 JPG 파일을 미리 설정된 크기(예를 들어 32 픽셀 × 32 픽셀)로 리사이징하고, 리사이징된 제1 JPG 파일 내지 제225 JPG 파일에 대해서 각 픽셀값을 변환(또는 조정)한다.
또한, 제1 제어부는 리사이징된 제 1 JPG 파일 내지 제 225 JPG 파일을 오른쪽으로 90도 회전, 왼쪽으로 90도 회전, 100% 확대, 100% 축소 등을 각각 적용하여 다수의 서브 이미지(예를 들어 제 1-1 JPG 파일 내지 제 1-4 JPG 파일, 제 2-1 JPG 파일 내지 제 2-4 JPG 파일, ... , 제 225-1 JPG 파일 내지 제 225-4 JPG 파일 등 포함)를 복제한다.
또한, 제 1 제어부는 리사이징된 제 1 JPG 파일 내지 제 225 JPG 파일, 각 JPG 파일과 관련해서 복제된 다수의 JPG 파일들에 포함된 각 픽셀들의 값을 미리 설정된 기준값(예를 들어 RGB 값에 따른 256)으로 나눠서 표준화 처리한다(S210).
이후, 제어부(150)는 각 이미지별로 특징을 추출하기 위한 전처리를 위해서, 1차로 전처리된 복수의 이미지(예를 들어 1차로 전처리된 프레임 단위로 분리된 복수의 이미지, 1차로 전처리된 복제된 다수의 이미지 등 포함)에 대해서 2차로 전처리 기능(또는 전처리 과정)을 수행한다.
즉, 제어부(150)는 표준화 처리된 복수의 이미지에 대해서 미리 설정된 가우시안 필터를 적용하여 노이즈를 제거한다. 여기서, 노이즈는 이미지 내의 흐릿하거나 흔들림 등으로 인해 발생한 노이즈를 포함한다. 또한, 제어부(150)는 노이즈가 제거된 복수의 이미지에 대해서 객체(또는 물체) 인식 과정을 수행하고, 노이즈가 제거된 복수의 이미지 내에 포함된 객체를 제외한 나머지 배경을 미리 설정된 픽셀값(또는 미리 설정된 표준화 처리 값)으로 변환(또는 검은색/흰색에 대응하는 RGB 값(예를 들어 000000/FFFFFF)과 관련해서 표준화 처리(예를 들어 0/1))한다. 여기서, 객체는 미리 설정된 장소, 인물, 사물 등을 포함한다.
또한, 제어부(150)는 학습 모델(예를 들어 CNN 모델)이 해당 객체를 좀 더 잘 이해할 수 있도록 해당 복수의 이미지(또는 해당 배경 처리된 복수의 이미지) 내에서 각각 인식된 객체의 색상(또는 표준화 처리된 값)을 단순화 처리한다. 여기서, 단순화 처리는 컬러 세그멘테이션(color segmentation)을 통해 객체 검출(object detection)을 실행하는 것으로, 인식된 객체를 미리 설정된 복수의 그레이 레벨(gray-level)로 분류하고, 윤곽(contouring) 기법을 사용해서 각 레벨의 면적을 측정하여, 이미지를 윤곽 영상으로 변환하는 것이다. 이때, 윤곽 기법은 미리 설정된 색상의 그레이 레벨 범위에 임계값(threshold)을 설정해서(또는 걸어) 한 개의 밝기(intensity)로 변환하는 것이다.
일 예로, 제1 제어부는 표준화 처리된 제1 JPG 파일 내지 제225 JPG 파일, 각 JPG 파일과 관련해서 복제된 다수의 JPG 파일들에 대해서 가우시안 필터를 적용하여 각 이미지 내에서의 흐릿하거나 흔들림 등으로 발생한 노이즈를 제거한다.
또한, 제1 제어부는 노이즈가 제거된 제1 JPG 파일 내지 제225 JPG 파일, 각 JPG 파일과 관련해서 복제된 다수의 JPG 파일들에 대해서 객체 인식 과정을 수행하여, 주요 객체를 제외한 나머지 배경(또는 나머지 픽셀)을 미리 설정된 검은색의 RGB 값(예를 들어 000000)으로 변환하고, 변환된 RGB 값에 해당하는 각 픽셀을 표준화 처리하여 해당 나머지 배경에 대응하는 각 픽셀 값을 '0'으로 표준화한다.
또한, 제1 제어부는 배경 처리된 제1 JPG 파일 내지 제225 JPG 파일, 각 JPG 파일과 관련해서 복제된 다수의 JPG 파일들을 컬러 세그멘테이션을 통해 단순화 처리한다(S220).
이후, 제어부(150)는 2차로 전처리된 복수의 이미지(예를 들어 2차로 전처리된 프레임 단위로 분리된 복수의 이미지, 2차로 전처리된 복제된 다수의 이미지 등 포함)를 입력값으로 CNN(합성곱 신경망) 모델을 이용해서 딥러닝을 수행하여, 해당 2차로 전처리된 복수의 이미지(또는 해당 2차로 전처리된 복수의 이미지와 관련한 동영상 데이터)에 대해 카테고리를 분류한다. 이때, 특정 이미지에 포함된 객체가 복수인 경우, 제어부(150)는 해당 특정 이미지에 대해서 다중 카테고리를 분류할 수도 있다. 여기서, 카테고리는 장소, 인물, 사물,문화 등을 포함한다.
즉, 제어부(150)는 2차로 전처리된 복수의 이미지를 입력값으로 CNN 모델을 이용해서 딥러닝을 수행하고, 딥러닝 결과를 근거로 해당 2차로 전처리된 복수의 이미지(또는 해당 2차로 전처리된 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리 분류 결과를 생성(또는 예측)한다. 여기서, 카테고리 분류 결과는 해당 동영상 데이터명(또는 동영상 파일명), 카테고리 정보(예를 들어 장소, 인물, 사물, 문화 등 포함) 등을 포함한다.
또한, 제어부(150)는 분류된 복수의 이미지(또는 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리에 대한 정보(또는 카테고리 정보)를 근거로 해당 동영상 데이터를 분류된 카테고리(또는 카테고리 정보)와 매핑하여(또는 매칭하여/연동하여) 관리(또는 저장)한다.
즉, 제어부(150)는 생성된 카테고리 분류 결과를 근거로 해당 동영상 데이터를 카테고리 분류 결과와 매핑하여 관리한다.
또한, 제어부(150)는 분류된 복수의 이미지(또는 복수의 이미지와 관련한 동영상 데이터)에 대한 카테고리에 대한 정보(또는 카테고리 분류 결과/카테고리 정보)를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다.
일 예로, 제1 제어부는 2차 전처리된 제1 JPG 파일 내지 제225 JPG 파일, 각 JPG 파일과 관련해서 복제된 다수의 JPG 파일 각각을 상기 CNN 모델을 이용해서 제1 카테고리(예를 들어 인물 카테고리) 및 제2 카테고리(예를 들어 사물 카테고리)로 분류하고, 제1 JPG 파일 내지 제225 JPG 파일과 관련한 생활영상.mov 영상을 제1 카테고리(예를 들어 인물 카테고리) 및 제2 카테고리(예를 들어 사물 카테고리)와 매핑하여 제1 저장부에 저장한다(S230).
도 3은 본 발명의 일 실시 예에 따른 서비스 서버의 영상 컨텐츠 태깅 동작을 예시적으로 설명하는 블럭도이다. 도 3을 참고하면, 서비스 서버(100)는 내부에 통합되거나 별도로 구축되는 영상 분류기(151), 태그 추출기(153), 키워드 추출기(155) 및 DB 처리기(156)를 포함한다. 사용자 단말(200-1, 200-2)은 네트워크를 통해서 서비스 서버(100)에 접속할 수 있고, 영상 컨텐츠를 업로드하는 사용자 단말(200-1) 또는 영상 컨텐츠를 검색하는 사용자 단말(200-2)을 포함한다.
서비스 서버(100)는 사용자 단말 1(200-1)로부터 영상 컨텐츠를 수신하면, 영상 컨텐츠에 대한 이미지 처리를 수행한다. 이미지 처리에 대한 자세한 설명은 앞서 설명한 내용으로 충분하므로, 이하에서는 영상 분류기(151), 태그 추출기(153), 키워드 추출기(155) 및 DB 처리기(156)의 동작을 중심으로 설명한다.
영상 분류기(151)는 업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장한다. 영상 분류기(151)는 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리한다. 영상 분류기(151)는 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류한다.
영상 분류기(151)는 동영상 데이터 중 사용자 선택에 의해서 어느 하나의 동영상 데이터가 선택되면, 선택된 동영상 데이터를 프레임 단위로 분리한다. 영상 분류기(151)는 분리된 복수의 프레임 이미지를 미리 설정된 크기로 리사이징하며, 리사이징된 복수의 이미지를 복제한다. 영상 분류기(151)는 복제된 복수의 이미지의 리사이징된 크기에 따라 픽셀값을 미리 결정된 기준값으로 나눠서 미리 설정된 0 내지 1 사이의 실수값으로 표준화 처리하여 입력된 영상 컨텐츠의 복수의 이미지에 대한 픽셀 정보를 산출한다. 또한, 영상 분류기(151)는 픽셀 정보를 이용하여 딥러닝(CNN 기반 모델)에 입력값으로 입력하여 해당 영상 컨텐츠에 대한 카테고리를 추론한다.
태그 추출기(153)는 영상 분류기(151)로부터 생성된 복수의 이미지에 대한 픽셀 정보를 이용하여 픽셀 정보와 태그 정보가 매핑되어 사전에 저장된 픽셀 정보 데이터베이스(152)로부터 태그 정보를 추출할 수 있다. 픽셀 정보 데이터베이스(152)는 적어도 하나 이상의 객체를 포함하는 이미지로 구성되는 복수의 이미지에 대한 픽셀 정보와 유사한 픽셀 정보를 저장하고 있다. 픽셀 정보 데이터베이스(152)는 태그 추출기(153)로부터 영상 데이터에 대한 픽셀 정보를 수신하면, 수신된 픽셀 정보를 이용하여 유사도가 높은 객체를 검색하고, 검색된 객체에 맵핑되어 있는 태그 정보를 추출해서 태그 추출기(153)로 반환한다. 여기서, 태그 정보의 추출은 특정 검색어와 관련된 오브젝트(물체, 배경 등)가 복수의 이미지 내에 차지하는 면적, 중앙에 위치하는 정도 등에 대한 가중치로 설정하여 추출할 수 있다. 예를 들어, 이미지 내의 오브젝트가 차지하는 면적, 오브젝트가 메인 주제로서 중앙에 차지하는 위치에 비례하게 가중치를 부여하여 관련도가 높은 순서로 개별적인 영상 컨텐츠와 함께 복수의 이미지로 제공될 수 있다. 따라서, 사용자 단말에서 특정 검색어로 검색된 영상 컨텐츠 전체를 스트리밍하지 않고도 관련도가 높은 이미지를 여러개만 확인함으로써 원하는 영상 컨텐츠에 대한 태깅에 의한 검색 효율은 높아질 수 있다.
키워드 추출기(155)는 영상 분류기(151)에 의해서 추론된 카테고리 정보를 이용하여 카테고리 정보와 키워드 정보가 매핑되어 사전에 저장된 관계형 키워드 데이터베이스(154)로부터 키워드 리스트를 추출할 수 있다. 이때, 관계형 키워드 데이터베이스(154)는 카테고리별로 설명력이 높은 관련 키워드를 사전에 매핑하여 저장하고 있다. 관계형 키워드 데이터베이스(154)는 키워드 추출기(155)로부터 카테고리 정보를 수신하면, 수신된 카테고리를 이용하여 관련 키워드를 검색하고, 검색된 키워드 리스트를 추출해서 키워드 추출기(155)로 반환한다.
DB 처리기(156)는 태그 추출기(153)로부터 추출된 태그 정보 리스트와 키워드 추출기(155)로부터 추출된 키워드 정보 리스트를 사용자 단말(200-1)로 제공한다. DB 처리기(156)는 해당 사용자 단말(200-1)로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택 명령을 수신하면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 픽셀 정보 데이터베이스(152) 및 카테고리와 키워드의 관계형 키워드 데이터베이스(154)에 저장하여 관리한다.
사용자 단말 2(200-2)는 영상을 검색하기 위하여 태그, 키워드 등을 포함하는 영상 컨텐츠 검색 요청을 네트워크를 통해서 서비스 서버(100)로 전송할 수 있다. 서비스 서버(100)는 사용자 단말 2(200-2)의 요청에 따라 카테고리와 키워드의 관계형 키워드 데이터베이스(154)로부터 검색 결과를 산출하여 검색 결과를 사용자 단말 2(200-2)로 전송한다.
도 4는 본 발명의 일 실시 예에 따른 영상 컨텐츠 키워드 태깅 시스템의 구성을 예시적으로 나타내는 블럭도이다. 도 4를 참고하면, 영상 컨텐츠 키워드 태깅 시스템은 서비스 서버(100)의 제어부(150)의 내부에 별도 모듈로 구성되거나 별도의 독립 모듈로 구성될 수 있다. 도 4에서는 제어부(150)의 외부 모듈로 구성된 예를 중심으로 설명한다. 영상 분류기(151)는 사용자 단말(200)과는 네트워크 통신을 통해서 상호 커뮤니케이션할 수 있다. 영상 분류기(151)는 사용자 단말(200)로부터 영상 컨텐츠를 수신한다. 영상 분류기(151)는 수신된 영상 컨텐츠에서 이미지 프로세싱을 통해서 카테고리 정보 및 픽셀 정보를 생성한다. 영상 분류기(151)는 생성된 영상 픽셀 정보를 태그 추출기(153)로 전달하고, 영상 픽셀 정보에 대응하는 태그 정보를 픽셀 정보 데이터베이스(152)로부터 검색하여 추출할 수 있다. 또한, 영상 분류기(151)는 카테고리 정보를 키워드 추출기(155)로 전달하고, 카테고리 정보에 대응하는 키워드 정보를 관계형 키워드 데이터베이스(154)로부터 검색하여 추출할 수 있다. 태그 추출기(153) 및 키워드 추출기(155)는 추출된 태그 정보(Out_1)과 키워드 정보(Out_2)를 각각 사용자 단말(200)로 전송하되, 태그 정보(Out_1)와 키워드 정보(Out_2)를 사용자가 임의적으로 선택할 수 있는 형태로 제공함으로써 사용자는 사용자 단말(200)을 통해서 해당 영상 컨텐츠에 대한 태깅 작업을 수행할 수 있다. 사용자가 사용자 단말(200)을 통해서 해당 영상 컨텐츠에 대한 키워드 태깅 작업을 수행하면, 작업 처리된 영상 컨텐츠에 대해서 카테고리 정보, 태깅 정보, 키워드 정보를 맵핑한다. 데이터베이스 처리기(156)는 영상 컨텐츠에 대한 태깅 작업이 완료되면 영상 컨텐츠에 맵핑된 키워드, 카테고리, 태그 정보를 갱신하도록 픽셀 정보 데이터베이스(152) 및 관계형 키워드 데이터베이스(154)를 제어할 수 있다. 즉, 데이터베이스 처리기(156)는 픽셀정보와 태그 사이의 정보 갱신을 픽셀 정보 데이터베이스(152)에 반영하는 처리를 실행한다. 또한, 데이터베이스 처리기(156)는 카테고리와 키워드 사이의 정보 갱신을 관계형 키워드 데이터베이스(154)에 반영하는 처리를 실행한다.
도 5는 도 4에 도시된 태그 추출기의 동작을 예시적으로 설명하는 블럭도이다. 도 5를 참고하면, 태그 추출기(153)는 영상 분류기(151)로부터 입력 영상 컨텐츠(예, A영상 컨텐츠)에 대한 픽셀 정보를 수신한다. 태그 추출기(153)는 수신된 픽셀 정보를 픽셀 정보 데이터베이스(152)에 쿼리하고, 관련된 결과값을 반환받는다. 예를 들어, 픽셀 정보 데이터베이스(152)는 영상 1, 2, ... N번을 보유하고 있고, 영상 1은 객체 1의 픽셀 정보(태그 1-1), 객체 2의 픽셀 정보(태그 1-2), 객체 3의 픽셀 정보(태그 1-3)을 포함한다. 영상 2는 객체 1의 픽셀 정보(태그 2-1), 객체 2의 픽셀 정보(태그 2-2), 객체 3의 픽셀 정보(태그 2-3)을 포함한다. 영상 N은 객체 1의 픽셀 정보(태그 N-1), 객체 2의 픽셀 정보(태그 N-2), 객체 3의 픽셀 정보(태그 N-3)을 포함한다. 여기서 픽셀 정보는 해당 객체에 대한 픽셀 정보를 의미하고, RGB값을 의미할 수도 있으나, 영상 분류기(151)에 의해서 1차 처리되고, 2차 처리된 픽셀 정보(표준화된 픽셀 정보)를 의미한다. 태그 추출기(153)가 픽셀 정보 데이터베이스(152)로 전달한 픽셀 정보와 픽셀 분포, 세부 픽셀 정보 및 픽셀 위치 정보 등을 고려하여 질의한 픽셀 정보와 일치하는 객체의 픽셀 정보를 검색하여 일치하거나 유사한 값을 갖는 객체의 태그 정보를 반환한다.
도 6은 도 5에 도시된 태그 추출기에 의한 태그 정보를 추출하는 일 예를 설명하는 도면이다. 도 6을 참고하면, 입력한 영상 컨텐츠 A는 영상 내에 X 객체, Y 객체, Z 객체를 포함하고 있고, 1차 이미지 처리 및 2차 이미지 처리를 거치면서 픽셀 정보값이 표준화된다. 이렇게 영상 컨텐츠 A에 대한 표준화된 영상 픽셀 정보는 미리 처리되서 픽셀 정보 데이터베이스(152)에 저장된 다른 영상 컨텐츠 1 내지 N의 픽셀 정보와 비교하여 픽셀 정보가 유사한 객체를 검색하게 된다. 예컨대, 영상 컨텐츠 A의 X객체의 픽셀 정보는 영상 컨텐츠 2의 객체 2-1의 픽셀 정보와 일치하거나 유사하면 픽셀 정보 1이 유사하다고 판단하여 객체 2-1의 태그 정보(태그 2-1)를 추출한다. 영상 컨텐츠 A의 Y객체의 픽셀 정보는 영상 컨텐츠 N의 객체 N-2의 픽셀 정보와 유사하므로 픽셀 정보 2가 유사하다고 판단하여 객체 N-2의 태그 정보(태그 N-2)를 추출한다. 마찬가지로 영상 컨텐츠 A의 Z객체의 픽셀 정보는 영상 컨텐츠 1의 객체 1-3의 픽셀 정보와 유사하므로 픽셀 정보 3이 유사하다고 판단하여 객체 1-3의 태그 정보(태그 1-3)를 추출한다. 이렇게 추출된 태그 정보는 해당 객체의 정성 정보 내지는 사용자에 의해서 미리 정의된 영상 관련 정보를 의미한다.
도 7은 도 4에 도시된 키워드 추출기의 동작을 예시적으로 설명하는 블럭도이다. 도 7을 참고하면, 키워드 추출기(155)는 영상 분류기(151)로부터 A영상 컨텐츠의 X카테고리 정보를 수신하면, 수신된 X 카테고리 정보를 관계형 키워드 데이터베이스(154)로 전송한다. 관계형 키워드 데이터베이스(154)는 X카테고리에 사전에 정의된 관련 키워드 X1, X2, X3을 추출하고, 추출된 관련 키워드 X1, X2, X3를 키워드 추출기(155)로 반환한다. 키워드 추출기(155)는 X 카테고리에 관련된 키워드 X1, X2, X3을 사용자 단말(200)로 전달하되, 이때 사용자는 사용자 단말(200)을 통해서 관련 키워드 X1, X2, X3 중 적어도 하나를 선택해서 해당 영상 컨텐츠 A의 관련 키워드로 태깅할 수 있다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100 : 서비스 서버
110 : 통신부
120 : 저장부
130 : 디스플레이부
140 : 음성 출력부
150 : 제어부
151 : 영상 분류기
152 : 픽셀 정보 데이터베이스
153 : 태그 추출기
154 : 관계형 키워드 데이터베이스
155 : 키워드 추출기
156 : 데이터베이스 처리기
200 : 사용자 단말
110 : 통신부
120 : 저장부
130 : 디스플레이부
140 : 음성 출력부
150 : 제어부
151 : 영상 분류기
152 : 픽셀 정보 데이터베이스
153 : 태그 추출기
154 : 관계형 키워드 데이터베이스
155 : 키워드 추출기
156 : 데이터베이스 처리기
200 : 사용자 단말
Claims (10)
- 영상 컨텐츠 키워드 태깅 시스템에 있어서,
업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장하고, 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리하고, 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류하는 영상 분류기;
상기 영상 분류기로부터 2차로 전처리된 복수의 이미지의 픽셀 정보를 이용하여 픽셀 정보 데이터베이스로부터 태그 정보 리스트를 추출하는 태그 추출기;
상기 영상 분류기로부터 추론된 출력값을 이용하여 카테고리와 키워드의 관계형 데이터베이스로부터 키워드 정보 리스트를 추출하는 키워드 추출기; 및
상기 태그 추출기로부터 추출된 태그 정보 리스트와 상기 키워드 추출기로부터 추출된 키워드 정보 리스트를 사용자 단말로 제공하고, 해당 사용자 단말로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택이 완료되면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 상기 픽셀 정보 데이터베이스 및 상기 카테고리와 키워드의 관계형 데이터베이스에 저장하여 관리하는 데이터베이스 처리기;를 포함하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제1 항에 있어서,
상기 영상 분류기는,
상기 동영상 데이터 중 사용자 선택에 의해서 어느 하나의 동영상 데이터가 선택되면, 선택된 동영상 데이터를 프레임 단위로 분리하고, 분리된 복수의 프레임 이미지를 미리 설정된 크기로 리사이징하며, 리사이징된 복수의 이미지를 복제하고, 복제된 복수의 이미지의 리사이징된 크기에 따라 픽셀값을 미리 결정된 기준값으로 나눠서 미리 설정된 0 내지 1 사이의 실수값으로 표준화 처리하여 입력된 영상 컨텐츠의 복수의 이미지에 대한 픽셀 정보를 산출하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제1 항에 있어서,
상기 태그 추출기는,
상기 복수의 이미지에 대한 픽셀 정보를 이용하여 픽셀 정보와 태그 정보가 매핑되어 사전에 저장된 픽셀 정보 데이터베이스로부터 태그 정보를 추출하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제3 항에 있어서,
상기 픽셀 정보 데이터베이스는,
적어도 하나 이상의 객체를 포함하는 이미지로 구성되는 복수의 이미지에 대한 픽셀 정보와 유사한 픽셀 정보를 상기 픽셀 정보 데이터베이스에서 검색하고, 유사도가 높은 객체와 맵핑된 태그 정보를 상기 태그 추출기로 반환하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제4 항에 있어서,
상기 태그 추출기는, 상기 픽셀 정보 데이터베이스로부터 반환된 태그 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 사용자 단말을 통해서 태그 정보를 선택할 수 있는 형태로 제공하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제1 항에 있어서,
상기 키워드 추출기는,
상기 영상 분류기에 의해서 추론된 카테고리 정보를 이용하여 카테고리 정보와 키워드 정보가 매핑되어 사전에 저장된 관계형 키워드 데이터베이스로부터 키워드 리스트를 추출하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제6 항에 있어서,
상기 관계형 키워드 데이터베이스는,
카테고리별로 설명력이 높은 관련 키워드를 사전에 매핑하여 저장하고, 카테고리가 입력되면 해당 카테고리에 매핑되어 있는 관련 키워드 목록을 상기 키워드 추출기로 반환하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 제7 항에 있어서,
상기 키워드 추출기는, 상기 관계형 키워드 데이터베이스로부터 반환된 키워드 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 해당 사용자 단말을 통해서 키워드 정보를 선택할 수 있는 형태로 제공하는 것을 특징으로 하는,
영상 컨텐츠 키워드 태깅 시스템.
- 업로드된 원본 영상 컨텐츠를 동영상 데이터로 저장하고, 저장된 동영상 데이터에 대해서 1차로 전처리하며, 1차로 전처리된 복수의 이미지에 대해서 2차로 전처리하고, 2차로 전처리된 복수의 이미지의 픽셀 정보를 입력값으로 하여 딥러닝 모델에 입력하여 해당 딥러닝 모델에 의해서 추론된 출력값에 기초하여 해당 복수의 이미지를 카테고리별로 분류하는 영상 분류기, 상기 영상 분류기로부터 2차로 전처리된 복수의 이미지의 픽셀 정보를 이용하여 픽셀 정보 데이터베이스로부터 태그 정보 리스트를 추출하는 태그 추출기, 상기 영상 분류기로부터 추론된 출력값을 이용하여 카테고리와 키워드의 관계형 데이터베이스로부터 키워드 정보 리스트를 추출하는 키워드 추출기 및 상기 태그 추출기로부터 추출된 태그 정보 리스트와 상기 키워드 추출기로부터 추출된 키워드 정보 리스트를 사용자 단말로 제공하고, 해당 사용자 단말로부터 해당 영상 컨텐츠에 대한 키워드-태그 선택이 완료되면 해당 키워드-태그 정보를 해당 영상 컨텐츠에 맵핑하여 상기 픽셀 정보 데이터베이스 및 상기 카테고리와 키워드의 관계형 데이터베이스에 저장하여 관리하는 데이터베이스 처리기;를 포함하는 영상 컨텐츠 키워드 태깅 시스템을 이용한 영상 컨텐츠 키워드 태깅 방법에 있어서,
상기 태그 추출기는, 상기 복수의 이미지에 대한 픽셀 정보를 이용하여 픽셀 정보와 태그 정보가 매핑되어 사전에 저장된 픽셀 정보 데이터베이스로부터 태그 정보를 추출하는 단계;
상기 키워드 추출기는,상기 영상 분류기에 의해서 추론된 카테고리 정보를 이용하여 카테고리 정보와 키워드 정보가 매핑되어 사전에 저장된 관계형 키워드 데이터베이스로부터 키워드 리스트를 추출하는 단계;
상기 태그 추출기는, 상기 픽셀 정보 데이터베이스로부터 반환된 태그 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 사용자 단말을 통해서 태그 정보를 선택할 수 있는 형태로 제공하는 단계; 및
상기 키워드 추출기는, 상기 관계형 키워드 데이터베이스로부터 반환된 키워드 정보를 영상 컨텐츠를 업로드한 사용자 단말로 제공하되, 해당 사용자 단말을 통해서 키워드 정보를 선택할 수 있는 형태로 제공하는 단계;를 포함하는,
영상 컨텐츠 키워드 태깅 시스템을 이용한 영상 컨텐츠 키워드 태깅 방법.
- 제9 항에 있어서,
상기 데이터베이스 처리기는, 상기 태그 정보 및 상기 키워드 정보를 이용하여 해당 영상 컨텐츠에 대한 사용자 선택이 완료되면, 해당 영상 컨텐츠에 대해서 태그 정보 및 키워드 정보를 맵핑하여 상기 관계형 키워드 데이터베이스 또는 상기 픽셀 정보 데이터베이스를 갱신하여 저장하는 단계;를 더 포함하는,
영상 컨텐츠 키워드 태깅 시스템을 이용한 영상 컨텐츠 키워드 태깅 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220105117A KR20240026788A (ko) | 2022-08-22 | 2022-08-22 | 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220105117A KR20240026788A (ko) | 2022-08-22 | 2022-08-22 | 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240026788A true KR20240026788A (ko) | 2024-02-29 |
Family
ID=90041332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220105117A KR20240026788A (ko) | 2022-08-22 | 2022-08-22 | 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240026788A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118132859A (zh) * | 2024-05-10 | 2024-06-04 | 中国石油大学(华东) | 一种云盘图片资产精准搜索***与方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101715708B1 (ko) | 2015-12-07 | 2017-03-14 | 주식회사 즐라이몬스터 | 이미지 분석기반의 자동화된 관계형 태그 생성 시스템과 이를 이용한 서비스 제공방법 |
KR101916874B1 (ko) | 2017-10-19 | 2018-11-08 | 충남대학교산학협력단 | 자동으로 동영상 하이라이트 영상의 제목을 생성하는 방법, 장치 및 컴퓨터 판독가능 기록 매체 |
KR102148392B1 (ko) | 2018-11-12 | 2020-08-26 | 주식회사 코난테크놀로지 | 동영상 메타데이터 태깅 시스템 및 그 방법 |
-
2022
- 2022-08-22 KR KR1020220105117A patent/KR20240026788A/ko unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101715708B1 (ko) | 2015-12-07 | 2017-03-14 | 주식회사 즐라이몬스터 | 이미지 분석기반의 자동화된 관계형 태그 생성 시스템과 이를 이용한 서비스 제공방법 |
KR101916874B1 (ko) | 2017-10-19 | 2018-11-08 | 충남대학교산학협력단 | 자동으로 동영상 하이라이트 영상의 제목을 생성하는 방법, 장치 및 컴퓨터 판독가능 기록 매체 |
KR102148392B1 (ko) | 2018-11-12 | 2020-08-26 | 주식회사 코난테크놀로지 | 동영상 메타데이터 태깅 시스템 및 그 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118132859A (zh) * | 2024-05-10 | 2024-06-04 | 中国石油大学(华东) | 一种云盘图片资产精准搜索***与方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11367273B2 (en) | Detecting objects using a weakly supervised model | |
US10515275B2 (en) | Intelligent digital image scene detection | |
US11812184B2 (en) | Systems and methods for presenting image classification results | |
US11587234B2 (en) | Generating class-agnostic object masks in digital images | |
US8988450B1 (en) | Color palette maps for color-aware search | |
US11748070B2 (en) | Systems and methods for generating graphical user interfaces | |
US8587604B1 (en) | Interactive color palettes for color-aware search | |
US20210166058A1 (en) | Image generation method and computing device | |
CN111274972B (zh) | 基于度量学习的菜品识别方法及装置 | |
US12045756B2 (en) | Machine learning methods and systems for cataloging and making recommendations based on domain-specific knowledge | |
US20230127525A1 (en) | Generating digital assets utilizing a content aware machine-learning model | |
Wei et al. | Food image classification and image retrieval based on visual features and machine learning | |
US20220414936A1 (en) | Multimodal color variations using learned color distributions | |
CN114282622A (zh) | 训练样本排查方法及其装置、设备、介质、产品 | |
US10909167B1 (en) | Systems and methods for organizing an image gallery | |
CN116229188B (zh) | 图像处理显示方法、分类模型的生成方法及其设备 | |
WO2021000411A1 (zh) | 基于神经网络的文档分类方法、装置、设备及存储介质 | |
KR20240026788A (ko) | 영상 컨텐츠 키워드 태깅 시스템 및 이를 이용한 영상 컨텐츠 키워드 태깅 방법 | |
KR102437309B1 (ko) | 딥러닝을 이용한 영상 카테고리 분류 장치 및 그 방법 | |
CN114048862A (zh) | 模型的解释方法及装置 | |
KR101867586B1 (ko) | 영상 처리 장치 및 방법 | |
KR101913140B1 (ko) | 사물 인터넷의 빅 데이터를 이용한 산업 감시의 연속 기능 최적화 장치 및 방법 | |
US12045586B2 (en) | Methods and systems for implementing a paper form to a web application construction using a digital camera visualization | |
KR20240025414A (ko) | 판매용 컨텐츠에 대한 편집 기능을 제공하는 컨텐츠 판매 중개 시스템 및 이를 운영하는 방법 | |
KR101910083B1 (ko) | 영상 처리 장치 및 방법 |