KR101996551B1 - Apparatus and method for generating subtitles using speech recognition and script - Google Patents

Apparatus and method for generating subtitles using speech recognition and script Download PDF

Info

Publication number
KR101996551B1
KR101996551B1 KR1020180000397A KR20180000397A KR101996551B1 KR 101996551 B1 KR101996551 B1 KR 101996551B1 KR 1020180000397 A KR1020180000397 A KR 1020180000397A KR 20180000397 A KR20180000397 A KR 20180000397A KR 101996551 B1 KR101996551 B1 KR 101996551B1
Authority
KR
South Korea
Prior art keywords
unit
word
display
time
sentence
Prior art date
Application number
KR1020180000397A
Other languages
Korean (ko)
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 KR1020180000397A priority Critical patent/KR101996551B1/en
Application granted granted Critical
Publication of KR101996551B1 publication Critical patent/KR101996551B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/278Subtitling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Studio Circuits (AREA)

Abstract

The present invention relates to a system for generating a subtitle file corresponding to a video by using a voice recognition technology under a premise that there is a dialogue material corresponding to the video, wherein the system comprises: an Input unit for inputting video and dialogue information; a preprocessing unit for converting the dialogue information into a list of sentences divided into display sentence units; a word extracting unit which obtains word information including a string of voice by performing voice recognition on the video; a word matching unit for searching and matching the display sentence units including the word information in the list of sentences; a time setting unit for setting a display time in the display sentence units matching the word information; and a subtitle generation unit for outputting, by converting into an electronic file, the list of sentences in which display time is set for the display sentence units.

Description

음성인식 및 대본을 이용하는 자막 생성 장치 및 방법 {APPARATUS AND METHOD FOR GENERATING SUBTITLES USING SPEECH RECOGNITION AND SCRIPT}[0001] APPARATUS AND METHOD FOR GENERATING SUBTITLES USING SPEECH RECOGNITION AND SCRIPT [0002]

본 발명은 음성인식 및 대본을 이용하는 자막 생성 장치 및 방법에 관한 것으로서, 보다 상세하게는 동영상에 대응하는 대사 자료가 있는 전제하에 음성인식 기술을 활용하여 동영상에 대응하는 자막파일을 생성하는 시스템에 관한 기술이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a system and method for generating subtitles using voice recognition and a scenario, and more particularly, to a system for generating a subtitles file corresponding to a moving picture Technology.

동영상의 자막은 청각장애인이나 외국어를 이해하지 못하는 사람을 위해 제공되어 왔다. 동영상의 자막을 제작하기 위해서는 사람이 동영상을 재생해가면서 재생되고 있는 위치에 맞는 자막 조각을 찾아 그 시간을 설정해야 하는 시간이 소요되는 작업이 필요하다.Subtitles of video have been provided for people who are deaf or not understand foreign language. In order to produce subtitles of a moving picture, it is necessary to take time for a person to find a subtitle piece corresponding to the position where the moving picture is being played and to set the time.

자막은 개인에 의해서도 많이 만들어지기 때문에 인터넷 상에 존재하는 드라마, 영화, 애니메이션 동영상은 프롤로그, 중간광고 혹은 특정 장면의 유무에 따른 다양한 버전과 이에 대응되는 자막이 있을 수 있다. 다양한 버전이 존재하는 가운데 임의로 다운로드한 자막이 동영상과 호환되기를 기대하긴 어렵다. 자막이 2-3초만 빠르거나 늦어져도 동영상을 이해하거나 감상하는데 문제가 있을 수 있기 때문에 자막 기능을 지원하는 동영상 플레이어의 대부분은 자막 시간을 수동으로 조절할 수 있는 기능 역시 내장하고 있다. 시간을 수동으로 조절하지 않고도 호환되지 않는 자막 파일을 사용할 수 있도록 자동으로 조절해주는 연구도 존재한다.Since the subtitles are made by many individuals, drama, movie, and animated video existing on the Internet may have prologue, intermediate advertisement, or various versions depending on presence or absence of a specific scene and corresponding subtitles. While there are various versions, it is hard to expect that any downloaded subtitles will be compatible with the video. Most of the video players that support subtitles also have the ability to manually adjust the subtitle time, because the subtitles can be a problem in understanding or appreciating the video even if the subtitles are only 2-3 seconds faster or slower. There is also research that automatically adjusts for incompatible subtitle files without having to manually adjust the time.

기존의 자막과는 관계없이 음성인식 기술을 활용하여 자막을 자동으로 만드는 시스템도 존재하나, 이는 음성인식 기술의 정확도의 한계로 범용적으로 사용하기 어려운 측면이 존재한다. 음성인식 기술이 정확해지더라도 필요에 따라 욕설이나 약어, 음성에 나타난 불필요한 반복이나 문법오류를 교정해야 할 수 있어 음성인식 결과를 그대로 자막에 쓰는 방법도 본질적인 한계를 가지고 있다.There is a system that automatically creates subtitles using the speech recognition technology regardless of the existing subtitles. However, there are some aspects that are difficult to use universally because of the limit of the accuracy of the speech recognition technology. Even if the speech recognition technology is correct, unnecessary repetition or grammatical errors appearing in the profanity, abbreviation, and voice may need to be corrected as needed. Thus, the method of writing the speech recognition result in the caption is inherently limited.

또한, 현재 음성인식 결과를 그대로 자막으로 사용하는 자동 자막 기능의 가장 큰 단점은 음성인식 기술의 정확도이다. 음성인식으로 자막을 제작하는 방법은 음성에 잡음이 적은 강의 또는 발표 동영상에 적합하다. 하지만, 이 경우에도 화자의 발음이나 억양에 따라 오류의 빈도가 상이할 수 있다. In addition, the biggest disadvantage of the automatic captioning function that uses the result of speech recognition as a caption as it is is the accuracy of speech recognition technology. The method of making subtitles by speech recognition is suitable for lecture with less noise to speech or announcement video. However, even in this case, the frequency of errors may differ depending on the pronunciation or intonation of the speaker.

유형type 내용Contents 약어/고유명사Abbreviation / Proper Noun 자막Subtitle And it's not just LinuxAnd it's not just Linux 음성인식Speech recognition And it's not just lennox And it's not just lennox 텍스트 표현Text representation 자막Subtitle I was 21 at the timeI was 21 at the time 음성인식Speech recognition I was twenty one at the timeI was twenty one at the time 자막 상 교정Caption correction 자막Subtitle I was youngI was young 음성인식Speech recognition I was I was young I was I young

[표 1]은 음성인식으로 나올 수 있는 자막과 대본과의 차이 유형을 보여준다. 약어 및 고유명사, 텍스트 표현, 자막 상 교정의 경우 범용적인 음성인식 모델에서는 오류가 아닐 수 있기 때문에 음성인식 결과만으로 자막을 온전히 대체하기에 한계가 있음을 보여준다. 말을 더듬는 것 이외에 비속어를 마스킹하거나 의도치 않는 문법적인 오류가 있는 발화를 자막 상에서 교정하는 것은 음성인식에서 판단할 영역이 아니다.Table 1 shows the difference between the subtitle and the script that can be obtained by speech recognition. In the case of acronyms and proper nouns, textual representations, and caption correction, it is not an error in a general speech recognition model, which shows that there is a limit to completely substituting subtitles only by speech recognition results. In addition to stuttering, masking of profanity or correcting utterances with unintentional grammatical errors on the subtitles is not an area to judge in speech recognition.

한편, 현대의 음성인식 기술은 클라우드 서비스를 이용함으로써 쉽게 접근이 가능해졌으며, 비용도 크지 않다. 예를 들어, 클라우드 음성인식 서비스에는 IBM 블루믹스(Bluemix)와 GCP(Google Cloud Platform)있다. 두 서비스 모두 영화 한 편의 전체 음성을 텍스트로 변환하기 위해 드는 비용은 선진국의 한 시간 최저임금에도 미치지 않는다.On the other hand, modern speech recognition technology is easily accessible by using cloud service, and its cost is not high. For example, cloud voice recognition services include IBM BlueMix and GCP (Google Cloud Platform). For both services, the cost of converting the entire voice of a movie into text does not exceed the hourly minimum wage in developed countries.

한국공개특허공보 10-2017-0047547Korean Patent Publication No. 10-2017-0047547

이에 본 발명은 상기와 같은 종래의 제반 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은 동영상에 대응하는 대사 자료가 있는 전제하에 음성인식 기술을 활용하여 동영상에 대응하는 자막파일을 생성하는 시스템을 제공하기 위한 것이다.It is an object of the present invention to provide a system and method for generating a caption file corresponding to a moving picture by utilizing a speech recognition technology under the premise that there is metabolism data corresponding to a moving picture, .

상기와 같은 목적을 달성하기 위하여 본 발명의 기술적 사상에 의한 음성인식 및 대본을 이용하는 자막 생성 장치는, 동영상 및 대사정보를 입력받는 입력부와, 상기 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 전처리부와, 상기 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단어추출부와, 상기 문장 리스트에서 상기 단어정보가 포함된 상기 표시문장단위를 탐색하여 매칭하는 단어매칭부와, 상기 단어정보가 매칭된 상기 표시문장단위에 표시시간을 설정하는 시간설정부와, 상기 표시문장단위에 대한 상기 표시시간이 설정된 상기 문장 리스트를 전자파일화하여 출력하는 자막생성부를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided an apparatus for generating speech and a subtitle using a script, the apparatus comprising: an input unit for inputting moving image and metabolism information; and converting the metabolism information into a divided sentence list A word extracting unit for acquiring word information including a character string of a voice by performing speech recognition on the moving picture; and a searching unit for searching for and matching the display sentence unit including the word information in the sentence list A time setting unit for setting a display time in units of the display sentence matched with the word information, and a subtitle generation unit for outputting the electromagnetic wave anomaly and outputting the sentence list in which the display time is set for the display sentence unit .

또한, 상기 단어정보에는 상기 단어의 발화시각 및 종료시각이 더 포함되고, 상기 시간설정부는 상기 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하는 것을 특징으로 할 수 있다.Further, the word information may further include an utterance time and an end time of the word, and the time setting unit may set the utterance time of the first word of the display sentence unit and the end time of the end word as the display time have.

또한, 상기 입력부를 통해 입력되는 상기 대사정보에는 기 제작된 대본 또는 자막파일이 포함되고, 상기 전처리부는 상기 대본을 한 대사 세트 단위로 분할하여 상기 표시문장단위로 설정하고, 상기 자막을 기 정의된 표시시간 단위로 분할하여 상기 표시문장단위로 설정하는 것을 특징으로 할 수 있다.The preprocessing unit may divide the script into units of one metabase set and set the unit in the unit of the display sentence. If the subtitle is a predefined subtitle, And dividing the display time unit into display time units.

또한, 상기 시간설정부는 상기 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않은 표시문장단위를 상기 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정하는 것을 특징으로 할 수 있다.When the subtitle file is input, the time setting unit may set a new display time using a display time previously defined in the subtitle file, for a display sentence unit in which the first word or the end word is not matched have.

또한, 상기 단어매칭부는 불완전 매칭된 표시문장단위 중에서 상기 단어정보를 탐색하는 것을 특징으로 할 수 있다.The word matching unit may search for the word information among the incompletely matched display sentence units.

또한, 상기 단어매칭부는 상기 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정되는 것을 특징으로 할 수 있다.Also, the word matching unit may be configured such that a voice expression word is previously set for a number or a special character included in the character string.

한편, 상기와 같은 목적을 달성하기 위하여 본 발명의 기술적 사상에 의한 음성인식 및 대본을 이용하는 자막 생성 방법은, (A)입력부가 동영상 및 대사정보를 입력받는 단계와, (B)전처리부가 상기 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 단계와, (C)단어추출부가 상기 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단계와, (D)단어매칭부가 상기 문장 리스트에서 상기 단어정보가 포함된 상기 표시문장단위를 탐색하여 매칭하는 단계와, (E)시간설정부가 상기 단어정보가 매칭된 상기 표시문장단위에 표시시간을 설정하는 단계와, (F)자막생성부가 상기 표시문장단위에 대한 상기 표시시간이 설정된 상기 문장 리스트를 전자파일화하여 출력하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method of generating a caption using voice recognition and a script, the method comprising the steps of: (A) inputting input moving image and metabolism information; (B) (C) obtaining word information including a character string of a voice by performing word recognition on the moving image by a word extracting unit; (D) The matching unit searching for and matching the display sentence unit including the word information in the sentence list; (E) setting a display time in the unit of the display sentence in which the time setting unit matches the word information; F) The subtitle generation unit outputs an electromagnetic wave an output of the sentence list in which the display time is set for the display sentence unit.

또한, 상기 (C) 단계에서 획득되는 상기 단어정보에는 상기 음성의 발화시각 및 종료시각이 더 포함되고, 상기 (E) 단계는 상기 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하는 것을 특징으로 할 수 있다.Further, the speech information obtained in the step (C) further includes a speech utterance time and an end time, and the step (E) includes the steps of: And the display time is set.

또한, 상기 대사정보에는 기 제작된 대본 또는 자막파일이 포함되고, 상기 (B) 단계는 대본의 경우 상기 대본을 한 대사 세트 단위로 분할하여 상기 표시문장단위로 설정하고, 자막파일의 경우 상기 자막을 기 정의된 표시시간 단위로 분할하여 상기 표시문장단위로 설정하는 것을 특징으로 할 수 있다.In the case of the script, the script is divided into units of a metabolism set and set in units of the display sentence. In the case of the subtitle file, the subtitle file includes the subtitle file, Is divided into a predetermined display time unit and is set in units of the display sentence.

또한, 상기 (E) 단계는 상기 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않은 표시문장단위를 상기 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정하는 것을 특징으로 할 수 있다.In the step (E), when the caption file is input, a new display time is set using the display time previously defined in the caption file, in which the first or last word is not matched. can do.

또한, 상기 (D) 단계는 불완전 매칭된 표시문장단위 중에서 상기 단어정보를 탐색하는 것을 특징으로 할 수 있다.In the step (D), the word information is searched for among the incompletely matched display sentence units.

또한, 상기 단어매칭부에는 상기 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정된 것을 특징으로 할 수 있다.Further, the word matching unit may be configured such that a voice expression word is preset for a number or a special character included in the character string.

본 발명에 의한 음성인식 및 대본을 이용하는 자막 생성 장치 및 방법에 따르면 아래와 같은 효과가 있다.The apparatus and method for generating a caption using speech recognition and script according to the present invention have the following effects.

첫째, 음성인식으로 검지된 대사의 발화시각 및 종료시각을 자막의 활성시각과 비활성시각으로 이용하므로 정확한 시간에 표시되는 자막을 생성할 수 있게 된다.First, since the utterance time and the end time of the metabolism detected by speech recognition are used as the active time and the inactivity time of the caption, a caption displayed at the correct time can be generated.

둘째, 기 마련된 대본 또는 자막파일을 표시문장으로 사용하므로, 단순 음성인식을 이용한 자동 자막 제작 시스템과 비교할 때 더 나은 수준의 자막을 제작할 수 있게 된다.Second, since a prepared script or a subtitle file is used as a display sentence, it is possible to produce a better level of subtitle compared to an automatic subtitle production system using simple speech recognition.

도 1은 본 발명의 실시예에 따른 음성인식 및 대본을 이용하는 자막 생성 장치의 구성도.
도 2는 동일 대사에서 표시문장단위와 음성인식의 차이를 나타내는 도면.
도 3은 단어정보가 매칭된 표시문장단위를 처리하는 과정을 나타내는 도면.
도 4는 본 발명의 실시예에 따른 음성인식 및 대본을 이용하는 자막 생성 방법의 순서도.
Brief Description of the Drawings Fig. 1 is a block diagram of a subtitle generating apparatus using speech recognition and transcription according to an embodiment of the present invention; Fig.
Fig. 2 is a diagram showing the difference between the display sentence unit and the speech recognition in the same ambassador; Fig.
3 is a diagram illustrating a process of processing a display sentence unit in which word information is matched.
4 is a flowchart of a method of generating a caption using speech and recognition using speech according to an embodiment of the present invention.

첨부한 도면을 참조하여 본 발명의 실시예들에 의한 음성인식 및 대본을 이용하는 자막 생성 장치 및 방법에 대하여 상세히 설명한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.An apparatus and a method for generating a subtitle using speech recognition and a script according to embodiments of the present invention will be described in detail with reference to the accompanying drawings. The present invention is capable of various modifications and various forms, and specific embodiments are illustrated in the drawings and described in detail in the text. It is to be understood, however, that the invention is not intended to be limited to the particular forms disclosed, but on the contrary, is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

또한, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Also, unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

또한, 이 설명에서 '시각'은 어느 한 순간의 값이고, '시간'은 시작 시각과 끝 시각이 있는 범위 값이다.In this description, 'time' is a value at a certain moment, and 'time' is a range value having a start time and an end time.

종래의 음성인식만을 이용한 자막 생성 장치는 음성인식 결과가 부정확할 수 있고, 본질적으로 대본과 실제 대사가 상이할 수 있다. 본 발명의 실시예는 상기와 같은 문제를 고려하여 유사 문장을 검색하고, 검색된 문장을 종합하여 최종적인 자막 파일을 생성하는 알고리즘을 가진다. 검색 알고리즘에서는 일 실시예로써 최장 공통 부분열(Longest common subsequence, LIS) 알고리즘을 이용한다.The conventional subtitle generating apparatus using only speech recognition may have incorrect speech recognition results and may be substantially different from the script and actual metabolism. The embodiment of the present invention has an algorithm for searching for a similar sentence in consideration of the above problems and synthesizing the retrieved sentences to generate a final subtitle file. The search algorithm uses a longest common subsequence (LIS) algorithm as an embodiment.

본 발명의 일 실시예에 따른 자막 생성 장치(100)는 동영상과 대사정보를 입력받아 대사정보 기반의 자막을 출력하는 시스템이다. 동영상 파일에서 음성 파일을 추출하고 이를 음성인식 서비스를 통해 단어 단위로 발화시각과 종료시각이 부여된 음성인식 결과를 얻는다. 대본의 경우, 대사 세트 단위로 분리하여 1개 이상의 단어로 구성된 문장 리스트로 변환한다. 표시시간이 동영상과 호환되지 않는 자막파일의 경우, 자막에서 표시시간만 지우는 방법으로 문장 리스트로 변환할 수 있다. 음성인식 결과와 자막이 될 문장 리스트를 얻은 후에는 모든 표시문장단위에 대해 각각 음성인식 결과 내에서 해당 문장을 검색한다. 표시문장단위의 검색 결과는 음성인식 결과 내의 첫단어의 위치와 끝단어의 위치이며, 검색결과는 여러 개일 수 있다. 각 검색결과는 대본의 텍스트와 매칭된 첫단어의 발화시각과 끝단어의 종료시각으로 구성된 하나의 자막 조각으로 변환된다. 모든 문장 리스트에 대한 탐색이 완료되면 가장 적합한 자막을 생성한다.The apparatus for generating subtitles 100 according to an embodiment of the present invention is a system for inputting moving pictures and dialog information and outputting subtitles based on dialog information. Extracts a voice file from the video file, and obtains a voice recognition result in which the utterance time and the end time are given by word using the voice recognition service. In the case of a script, it is converted into a list of sentences composed of one or more words separated by a metabase set unit. If subtitle files whose display time is incompatible with the video can be converted into a sentence list by subtracting only the display time from subtitles. After obtaining the speech recognition result and the sentence list to be the subtitles, the corresponding sentence is searched for in the speech recognition result for every display sentence unit. The search result in the display sentence unit is the position of the first word in the speech recognition result and the position of the end word, and the search result may be plural. Each search result is converted into a single subtitle fragment composed of the text of the script and the ending time of the ending word of the first word matched. When the search for all the sentence list is completed, the subtitle is generated.

도 1을 참조하면, 본 발명의 일 실시예에 따른 자막 생성 장치(100)를 보다 구체적으로 설명한다. 본 발명의 일 실시예에 따른 자막 생성 장치(100)는 동영상 및 대사정보를 입력받는 입력부(110)와, 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 전처리부(130)와, 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단어추출부(120)와, 문장 리스트에서 단어정보가 포함된 표시문장단위를 탐색하여 매칭하는 단어매칭부(140)와, 단어정보가 매칭된 표시문장단위에 표시시간을 설정하는 시간설정부(150)와, 표시문장단위에 대한 표시시간이 설정된 문장 리스트를 전자파일화하여 출력하는 자막생성부(160)를 포함한다.Referring to FIG. 1, a subtitle generating apparatus 100 according to an embodiment of the present invention will be described in more detail. The apparatus for generating subtitles 100 according to an embodiment of the present invention includes an input unit 110 for inputting moving picture and dialog information, a preprocessor 130 for converting the dialog information into a sentence list divided into display sentences, A word matching unit 140 for searching for and matching a display sentence unit including word information in a sentence list, A time setting unit 150 for setting a display time in units of display sentences matched with word information, and a subtitle generating unit 160 for outputting a sentence list in which the display time for the display sentence unit is set to an electromagnetic wave.

입력부(110)를 통해 입력되는 대사정보에는 기 제작된 대본 또는 자막파일이 포함된다. 전처리부(130)는 대본을 한 대사 세트 단위로 분할하여 표시문장단위로 설정하고, 자막을 기 정의된 표시시간 단위로 분할하여 표시문장단위로 설정한다.The meta information inputted through the input unit 110 includes a prepared script or subtitle file. The preprocessing unit 130 divides a script into units of a dialog set, sets the script in units of display sentences, and divides the subtitles into predefined display time units to set them in units of display sentences.

또한, 단어정보에는 단어의 발화시각 및 종료시각이 더 포함되고, 시간설정부(150)는 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하는 것을 특징으로 한다.Further, the word information further includes the utterance time and the end time of the word, and the time setting unit 150 sets the utterance time of the first word in the display sentence unit and the end time of the end word as the display time.

음성인식에서 필요한 정보 중 하나는 음성의 발화시점이다. IBM Bluemix와 Google Cloud의 음성인식 서비스 모두 단어단위로 해당 단어의 시간을 알려주는 옵션을 포함한다. [표 2]는 단어 단위로 발화시각과 종료시각 정보가 주어지는 음성인식 결과의 예이다.One of the necessary information in speech recognition is the speech utterance. Both IBM's Bluemix and Google Cloud's speech recognition services include an option to tell the word's time on a word-by-word basis. [Table 2] is an example of a speech recognition result in which ignition time and end time information are given on a word-by-word basis.

단어word 발화시각(초)Firing time (seconds) 종료시각(초)End time (seconds) thisthis 13.4713.47 13.6113.61 isis 13.6113.61 13.7313.73 suchsuch 13.7313.73 13.9713.97 asas 13.9713.97 14.1214.12 raisingraising 14.1214.12 14.4114.41 youryour 14.4114.41 14.614.6 ...... ...... ......

단어매칭부(140)가 단어정보와 표시문장단위를 탐색하기 전, 경우에 따라 전처리가 필요할 수 있다. 음성인식 결과는 일정한 표현으로 나오는 데 반해 대본은 동영상 콘텐츠의 성격에 따라 음성인식 결과와 다른 표현으로 구성되어 있을 수 있다. 이는 문장을 매칭하는데 있어서 단어를 잘 못 인식한 것과 같은 효과를 낼 가능성도 있다. 그럼에도 불구하고 문장 검색 자체가 매칭 과정에서의 오류를 일정 정도 용인하기 때문에 음성인식 결과의 품질이 좋으면서 표현 방식이 다른 문제가 전반적으로 빈번하지 않다면 전처리를 정밀하게 하지 않고서도 자막을 얻을 수 있다.Before the word matching unit 140 searches for word information and display sentence units, a preprocessing may be required in some cases. The results of the speech recognition are expressed in a certain expression, whereas the script may be composed of speech recognition results and other expressions depending on the nature of the video contents. This is also likely to have the same effect as matching a sentence with a misspelled word. Nevertheless, since the sentence search itself tolerates errors in the matching process to a certain extent, the subtitles can be obtained even if the quality of the speech recognition result is good and the problem of expression is not generally frequent.

단어매칭부(140)는 표시문장단위의 문장을 단어 단위로 분해한 뒤 그 단어열(Sequence)을 음성인식 결과인 단어정보 내에서 탐색한다. 앞서 언급한 음성인식의 부정확성이나 문자열 표현 방식이 다를 수 있는 등의 문제가 존재하므로 공통부분 열을 탐색한다. 만약 탐색 과정에서 불일치하는 부분 열이 있다면 그 크기를 제한하여 과다한 오류를 포함하는 부분 열 탐색은 방지하여야 한다. 예를 들어, 도 2는 'I was 21 at that time' 문장을 음성인식 결과에서 매칭 했을 때 나타날 수 있는 형태를 보여준다. 대본상의 '21'이 음성인식에서 'twenty one'으로 정확하게 인식되었으나, 전처리를 하지 않은 채로 단어의 문자열 일치 여부로 매칭하면 이 부분은 불일치 부분으로 남는다. '21'을 무시하고 다음 'at'의 대응되는 위치를 찾는다면 그 이전에 매칭된 'was'의 위치와 가까워야 한다. 즉, 음성인식에 실패한 단어들이 음성인식 상에 몇 개의 단어로 나타날 수 있는지 결정해두어야 불필요한 검색 결과가 과다하게 매칭되는 것을 막을 수 있다. 만약 이런 제약을 두지 않을 경우, be동사나 전치사 등 문장에서 자주 등장하는 단어로 인해 과다한 검색 결과가 나타날 수 있다. 따라서, 단어매칭부(140)는 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정된다.The word matching unit 140 decomposes a sentence unit sentence into words, and searches the word sequence (Sequence) in word information that is a speech recognition result. There exist problems such as the above-mentioned inaccuracies in speech recognition and the way in which the string representation methods are different, so that the common partial sequence is searched. If there is an inconsistent partial sequence in the search process, it should be limited in size to prevent partial sequence searches involving excessive errors. For example, FIG. 2 shows a form that can be displayed when a sentence of 'I was 21 at that time' is matched in a speech recognition result. The '21' in the script is correctly recognized as 'twenty one' in speech recognition, but if it matches the string of words without preprocessing, this part remains as an inconsistent part. If '21' is ignored and the corresponding position of the next 'at' is found, it should be close to the previously matched 'was' position. That is, it is necessary to determine how many words the speech recognition failure words can appear on the speech recognition, thereby preventing excessive matching of unnecessary search results. If you do not set this constraint, you can get a lot of search results due to words that appear frequently in sentences such as be verbs or prepositions. Therefore, the word matching unit 140 sets a voice expression word for a number or a special character included in the character string.

단어매칭부(140)는 단어정보의 문장 리스트 탐색 단계에서 각 표시문장단위를 전체 범위에서 검색하기 때문에 2개 이상의 위치가 검색될 수 있고, 음성인식 오류율이 높아 위치를 특정하기 어려운 경우 잘못된 위치로 검색될 수 있다. 검색된 복수의 결과 중 정확한 결과를 선택하거나 잘못 검색된 위치를 배제하기 위해서는 다른 문장의 검색 결과를 종합해서 계산해야 한다.Since the word matching unit 140 searches the whole sentence unit in the entire range of the sentence list searching step of the word information, two or more positions can be searched. If the position of the speech information is high and the error rate is high, Can be searched. In order to select the correct result among the multiple results searched or exclude the wrong searched positions, the search results of other sentences must be calculated in a synthesized manner.

도 3을 참조하면, 단어매칭부(140)는 자막 계산을 두 단계로 나누어 진행한다. 첫 번째는 모든 검색된 표시문장단위를 표시시간 기준으로 오름차순 정렬한다. 표시시간은 음성인식된 단어정보와 일대일 대응되기 때문에 단어정보를 등장 순으로 정렬하는 것과 같다. 표시문장단위의 순서를 기준으로 최장 증가수열을 탐색하면 잘못 탐색된 위치를 배제하면서 동시에 각 표시문장단위의 위치가 증가하면서 하나씩만 선택됨으로써 자막으로 변환할 준비가 된다. 최장 증가수열을 찾는 과정에서 문장 순서가 증가하는 조건 외에도 자막 단위 간에 재생시간이 겹치지 않도록 한다. 이는 인식된 특정 단어정보가 2개 이상의 표시문장단위에 포함되지 않도록 하는 조건과 같다.Referring to FIG. 3, the word matching unit 140 divides subtitle calculation into two steps. The first is to sort all the displayed sentence units in ascending order by display time. The display time corresponds to one-to-one correspondence with the speech-recognized word information, so that the word information is arranged in order of appearance. If the longest increment sequence is searched based on the order of the display sentence units, the position of each display sentence unit is increased while eliminating the erroneously searched positions, and only one of them is selected to be ready to be converted into the subtitles. In addition to the condition that the order of sentences increases in the process of finding the longest increase sequence, the playback time between the subtitle units should not overlap. This is equivalent to a condition that the recognized specific word information is not included in two or more display sentence units.

또한, 단어매칭부(140)는 검색 결과를 점수화 하여 낮은 점수를 얻은 불필요한 검색 결과를 제거하는 작업을 실시한다. 단어매칭부(140)는 표시문장단위에 일치하는 단어정보가 있으면 +1, 일치하지 않는 단어가 있으면 0 혹은 -1의 점수를 주는 방법을 수행한다.In addition, the word matching unit 140 performs a task of scoring a search result to remove unnecessary search results obtained with a low score. The word matching unit 140 performs a method of giving a score of +1 if there is word information matching the display sentence unit and a score of 0 or -1 if there is a word that does not match.

점수화 방식은 아래와 같은 문제를 해결하는데, 단어가 N개인 표시문장단위에 대해 음성인식이 완벽하게 수행되면 모든 문장 리스트를 탐색했을 때 해당 구간에만 N^2에 비례하는 검색 결과가 나오게 된다. 또한, N개의 단어 각각이 전체 범위에서 검색되고, 해당 단어 하나만 일치하는 공통 표시문장단위 역시 검색 결과로 나오기 때문에 검색 결과가 비대해질 수 있는 위험을 해결할 수 있게 된다.The scoring method solves the following problem. When speech recognition is performed perfectly for the display sentence unit having N words, when all the sentence list is searched, the search result is proportional to N ^ 2 only in the corresponding section. Also, since each of the N words is searched in the entire range, and a common display sentence unit in which only one of the words coincides is also displayed as a search result, it is possible to solve the risk that the search result may be enlarged.

한편, 탐색 결과, 점수가 우연히 낮아 매칭이 되지 않을 경우 해당 단어정보가 자막에서 누락될 수 있다. 이 누락된 단어정보는 불완전 매칭된 표시문장단위를 대상으로 지역적으로 재 탐색됨으로써 보충될 수 있다. 매칭되지 않은 단어정보는 모든 표시문장단위를 대상으로 재 탐색되는 것이 아니라, 표시시간 기준으로 전후에 존재하는 단어가 완전 매칭된 표시문장단위는 제외하기 때문에 단어 매칭이 더 빠르게 수행될 수 있다. 탐색 범위를 줄이면, 탐색 결과의 필터링 수준도 낮출 수 있어, 더 많은 경우의 수를 계산할 수 있게 된다. 또한, 지역적으로 다시 수행하는 아이디어를 응용하면 수행시간 최적화를 위해 자막을 점진적으로 만들거나 오류가 의심되는 부분에 대해 검색 범위를 다르게 하여 다시 수행하는 것도 가능하다.On the other hand, if the score is accidentally low as a result of the search, the corresponding word information may be missed in the subtitles. This missing word information can be supplemented by locally searching for incompletely matched display sentence units. The matching of words that are not matched is not re-searched for all the display sentence units, but the display sentence unit in which words existing before and after the word are completely matched are excluded. By reducing the search range, you can also lower the level of filtering of search results, allowing you to count more cases. It is also possible to apply the idea of re-executing locally to gradually make subtitles to optimize the execution time, or to perform the search again with different search ranges for suspected error parts.

만약, 표시문장단위의 첫단어나 끝단어가 불일치되는 경우, 자막은 원래 표시되어야 할 순간보다 지연되어 나타나거나, 원래 사라져야 순간보다 늦게 사라질 수 있다.If the first word or end word of the display sentence unit is inconsistent, the subtitles appear to be delayed from the originally displayed moment or disappear later than the original moment.

시간설정부(150)는 적어도 두 가지의 방법으로 시간 불일치 문제를 해결한다. 첫째, 시간설정부(150)는 매칭이 종료되었음에도 어느 표시문장단위에도 속하지 않는 단어정보가 있고, 대응하는 표시 타이밍의 표시문장단위의 끝단어가 매칭되지 않았거나, 바로 다음 표시문장단위의 첫단어가 매칭되지 않았을 경우, 상기 단어정보의 발화시각 또는 종료시각을 불완전 매칭된 표시문장단위의 활성시각 또는 비활성시각에 반영한다. 이는, 음성인식 시 발음이 유사한 단어가 반환되어 단어정보의 매칭이 이루어지지 않은 것을 가정한 것이다.The time setting unit 150 solves the time inconsistency problem in at least two ways. First, the time setting unit 150 determines that there is word information that does not belong to any display sentence unit even though the matching ends, the end word of the display sentence unit of the corresponding display timing is not matched, or the first word The ignition time or the ending time of the word information is reflected on the active time or the inactivity time of the incompletely matched display sentence unit. This is based on the assumption that words similar in pronunciation are returned during speech recognition, and matching of the word information is not performed.

this is such strange thingthis is such a strange thing 편집 거리Edit distance this is suchthis is such 1616 this is such asthis is such as 1313 this is such as raisingthis is such raising 88 this is such as raising yourthis is such raising your 1111

[표 3]은 대사 'this is such a strange thing'이 음성인식 중 'this is such as raising'으로 잘 못 인식되어, 단어매칭부(140)가 'this is such'까지만 매칭한 경우에 편집 거리를 최소화하는 매칭을 선택하여 'this is such as raising"까지 매칭할 수 있음을 보이는 예이다.[Table 3] shows that when the word matching unit 140 matches up to " this is such " only when the word " this is such a strange thing " This is an example showing that you can match up to 'this is such as raising' by selecting a matching that minimizes.

둘째, 입력부(110)로 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않아 종료시각이 설정되지 않은 표시문장단위를 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정한다. 이 방법은, 입력된 자막파일이 대사에는 문제가 없으나, 프롤로그나 에필로그, 광고 등 특정 장면의 삽입 유무로 인해 시간이 밀리는 문제라는 가정 하에 유효하다. 자막파일을 이미 보유하고 있어 표시문장단위의 표시시간을 미리 알고 있으면 음성인식으로는 처리할 수 없는 비음성 자막에 대한 보간도 가능하게 된다.Secondly, when a caption file is input to the input unit 110, a new display time is set using the display time previously defined in the caption file for the display sentence unit in which the first word or the end word is not matched and the end time is not set . This method is effective on the assumption that the input subtitle file has no problem in dialogue, but the problem is that the time is delayed due to the presence of a specific scene such as a prologue, an epilogue, or an advertisement. If the display time of the display sentence unit is known in advance because the subtitle file is already held, interpolation for non-speech subtitle which can not be processed by speech recognition becomes possible.

모든 표시문장단위에 표시시간이 설정되면, 자막생성부(160)가 표시문장단위가 종합된 자막파일을 생성한다. 이때, 자막파일의 확장자는 *.smi, *.srt 등과 같이 종래에 널리 이용되는 확장자가 될 수 있다.When the display time is set for all display sentence units, the subtitle generation unit 160 generates a subtitle file in which display sentence units are integrated. At this time, the extension of the subtitle file may be an extension widely used conventionally such as * .smi, * .srt, and the like.

이어서, 본 발명의 일 실시예에 따른 자막 생성 방법을 설명한다. 도 4를 참조하면, 본 발명의 일 실시예에 따른 자막 생성 방법은, 입력부(110)가 동영상 및 대사정보를 입력받는 단계(S110)와, 전처리부(130)가 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 단계(S121, S124, S126)와, 단어추출부(120)가 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단계(S130)와, 단어매칭부(140)가 문장 리스트에서 단어정보가 포함된 표시문장단위를 탐색하여 매칭하는 단계(S140)와, 시간설정부(150)가 단어정보가 매칭된 표시문장단위에 표시시간을 설정하는 단계(S150)와, 자막생성부(160)가 표시문장단위에 대한 표시시간이 설정된 문장 리스트를 전자파일화하여 출력하는 단계(S160)를 포함하는 것을 특징으로 한다.Next, a subtitle generation method according to an embodiment of the present invention will be described. Referring to FIG. 4, a subtitle generating method according to an embodiment of the present invention includes a step S110 of inputting moving picture and metabolism information by the input unit 110, a step S110 of causing the preprocessing unit 130 to display the metabolism information (S121, S124, S126) of converting the sentence list into a divided sentence list, a step (S130) of acquiring word information including a character string of a voice by performing word recognition on a moving image by the word extracting unit 120, A step S140 for the word matching unit 140 to search for and match a unit of display sentence including the word information in the sentence list, and a step for setting the display time in units of the display sentence matched with the word information And a step (S160) of outputting a sentence list in which the subtitle generating unit 160 sets the display time for the display sentence unit to an electromagnetic wave.

또한, S130 단계에서 획득되는 상기 단어정보에는 상기 음성의 발화시각 및 종료시각이 더 포함되고, S150 단계는 상기 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하는 것을 특징으로 한다.The speech information obtained in step S130 further includes the speech utterance time and the ending time of the speech. In step S150, the speech time of the first word in the display sentence unit and the end time of the end word are set as the display time .

또한, 입력부(110)를 통해 입력되는 대사정보에는 기 제작된 대본 또는 자막파일이 포함되고, 전처리부(130)가 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 단계는 대본의 경우, 대본을 한 대사 세트 단위로 분할하여 표시문장단위로 설정(S124)하고, 자막파일의 경우, 자막을 기 정의된 표시시간 단위로 분할하여 표시문장단위로 설정(S126)하는 것을 특징으로 한다.The pre-processing unit 130 includes a pre-prepared script or a subtitle file, and the step of converting the pre-processing unit 130 into a sentence list that is divided into a display sentence unit is a step of, in the case of a script, (S124). In the case of a subtitle file, the subtitle is divided into a predetermined display time unit and set in units of display sentences (S126).

또한, S150 단계는 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않은 표시문장단위를 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정하는 것을 특징으로 한다.In step S150, when a caption file is input, a new display time is set using the display time previously defined in the caption file for the unit of the display sentence in which the first word or the end word is not matched.

또한, S140 단계는 불완전 매칭된 표시문장단위 중에서 단어정보를 탐색하는 것을 특징으로 한다.In operation S140, word information is searched for among the incompletely matched display sentence units.

또한, 단어매칭부(140)에는 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정된 것을 특징으로 한다.In addition, the word matching unit 140 is characterized in that a voice expression word is preset for a number or special character included in a character string.

[실험 예][Experimental Example]

아래에서는 본 발명의 일 실시예에 따른 자막 생성 장치(100)를 통해 생성된 자막을 평가하는 방법을 소개하고, 동영상과 대본을 가지고 실험한 결과에 대해 설명한다.Hereinafter, a method of evaluating subtitles generated through the subtitle generating apparatus 100 according to an embodiment of the present invention will be introduced, and the results of experiments with moving pictures and scripts will be described.

표시문장단위에 포함된 각 단어는 대본 또는 자막파일에 전적으로 의존하므로, 평가는 각 표시문장단위가 정확한 표시시간을 가지고 있는지 여부이다. 다만, 표시문장단위의 표시시간에 대한 공지된 평가 방법은 존재하지 않는다. 따라서, 이 실험에서는 신규한 평가 방법을 적용하였다.Since each word in the display sentence unit is entirely dependent on the script or subtitle file, the evaluation is whether each display sentence unit has the correct display time. However, there is no known evaluation method for the display time of the display sentence unit. Therefore, a new evaluation method was applied in this experiment.

이 실험에서는 사람이 대본과 동영상을 가지고 자막을 만든 뒤 대응되는 자막 조각의 시간을 비교하였다. 자막 조각 간의 비교는 자카드 지수(Jaccard index)가 활용되었다.In this experiment, a human made subtitles with a script and a moving picture, and then compared the time of corresponding subtitles. The Jaccard index was used to compare the subtitles.

[수학식 1]

Figure 112018000523845-pat00001
[Equation 1]
Figure 112018000523845-pat00001

표시문장단위의 활성시각과 비활성시각을 아래처럼 정의하여 자카드지수를 계산할 수 있게 된다. [수학식 2]는 표시문장단위의 표시시간을 나타낸다. [수학식3]은 2개 표시문장단위의 표시시간이 겹치는 시간을 나타낸다.It is possible to calculate the Jacquard exponent by defining the active time and the inactivity time of the display sentence unit as follows. [Equation 2] represents the display time of the display sentence unit. [Equation 3] represents the time at which the display times of two display sentence units overlap.

원본 자막Original subtitles 활성시각/비활성시각Active / inactive time

Figure 112018000523845-pat00002
Figure 112018000523845-pat00002
this is such strange thingthis is such a strange thing 13.28 / 15.4613.28 / 15.46 2.182.18 매칭된 음성인식Matching speech recognition 발화시각/종료시각Firing time / end time
Figure 112018000523845-pat00003
Figure 112018000523845-pat00003
Figure 112018000523845-pat00004
Figure 112018000523845-pat00004
this is suchthis is such 13.47 / 13.9713.47 / 13.97 0.5
2.18
0.5
2.18
0.230.23
this is such as raisingthis is such raising 13.47 / 14.4113.47 / 14.41 0.94
2.18
0.94
2.18
0.430.43

[표 4]의 예를 살펴보면 'this is such strange thing'을 A라 하고, 'this is such'를 B라 한다면, 표시시간을 보았을 때, B는 A의 부분집합이므로

Figure 112018000523845-pat00005
Figure 112018000523845-pat00006
와 같으며, 이는 B의 지속시간이다.If we look at the example in [Table 4], if 'this is such a strange thing' is A and 'this is such' is B, when we see the display time, B is a subset of A
Figure 112018000523845-pat00005
The
Figure 112018000523845-pat00006
, Which is the duration of B.

[수학식2]

Figure 112018000523845-pat00007
&Quot; (2) "
Figure 112018000523845-pat00007

[수학식3]

Figure 112018000523845-pat00008
&Quot; (3) "
Figure 112018000523845-pat00008

자막 파일 간의 자카드 지수는 모든 표시문장단위의 자카드 지수의 평균으로 정의할 수 있다. 이 방법은 대본이 바뀌지 않는 이상 평가를 위해 사람이 수작업을 다시 수행하지 않아도 되고, 평가를 위해 이미 자막이 존재하는 동영상을 수집하여 활용할 수 있다. 자막을 만드는 사람에 따라 시간 기준이 상이할 수 있으므로 절대적인 기준으로 삼는 것보다는 해당 자막에 대한 상대적인 기준으로 삼고 유사 문장 검색이나 자막 계산 방법을 평가 및 개선하는 용도로 사용하는 것이 타당하다. [표 4]에서 'this is such as raising'이 적절한 매칭임에도 불구하고 표시시간이 두 배 이상 차이나서 자카드 지수가 0.43 밖에 되지 않는데, 이는 음성인식 상에서 단어의 발화시점 계산이 잘못되었을 가능성과 원본 자막을 만든 사람의 재량으로 동영상 내에서의 실제 발화시점과 다르게 만들었을 가능성이 동시에 존재한다.The jacquard exponent between subtitle files can be defined as the average jacquard exponent of all display sentence units. This method does not require the user to perform the manual operation again for the evaluation unless the script is changed, and can collect and utilize the video already having the caption for the evaluation. It is reasonable to use it as a relative criterion for the subtitle and to evaluate and improve the similar sentence search or subtitle calculation method, rather than as an absolute criterion, since the time standard may be different depending on the person making the subtitle. In Table 4, even though the 'this is such as raising' is an appropriate match, the display time is more than twice that of the Jacquard index of 0.43, At the discretion of the creator of the video, there is a possibility that it is different from the actual speaking point in the video.

제목title 재생 시간Play time 문장 수Number of sentences 단어 수Number of words TED발표1
Linus Torvalds: The mind behind Linux
TED Announcement 1
Linus Torvalds: The mind behind Linux
21:3421:34 460460 34533453
TED발표2
Sara Menker: A global food crisis ...
TED Announcement 2
Sara Menker: A global food crisis ...
17:5317:53 315315 22582258
TED발표3
Euna Lee: What I learned as a prisoner ...
TED Announcement 3
Euna Lee: What I learned as a prisoner ...
12:0312:03 207207 15181518
TED발표4
Helen Czerski: Fun home experiments ...
TED Announcement 4
Helen Czerski: Fun home experiments ...
16:0116:01 357357 30473047
영화
Big Short
movie
Big Short
2:10:282:10:28 24292429 1558515585

자막을 입수할 수 있는 네 편의 TED 발표 동영상과, 한 편의 영화 [표 5]를 입수하여 자막에서 시간 정보를 지운 뒤 대본으로 사용하여 자막을 생성해보는 실험을 통해 시스템의 성능에 대해 논한다. 자막을 생성하는데 걸리는 시간과 생성된 자막 내의 오류를 측정하고 입수한 자막과의 비교를 통해 자카드 지수를 계산해 보았다. 추가적으로 보간 작업을 한 자막과 그렇지 않은 자막의 평균 자카드 지수를 비교해 봄으로써 시스템의 내부 알고리즘을 변경했을 때 성능 변화를 측정하는 방법을 검증하였다.We will discuss the performance of the system by experimenting with four TED announcement videos available for captioning and one capturing a movie [Table 5] to delete the time information from the subtitles and then creating subtitles using the subtitles as a script. We measured the time taken to generate the subtitles and the errors in the generated subtitles and compared the obtained subtitles with the obtained subtitles. In addition, we compared the average jacquard exponents of subtitling subtitles and non - interpolated subtitles, and verified the method of measuring the performance change when changing the internal algorithm of the system.

CPUCPU Intel Core i3-6100U @2.30GHzIntel Core i3-6100U @ 2.30GHz 메모리Memory 20 GB20 GB 운영체제operating system Ubuntu 16.04 LTSUbuntu 16.04 LTS 구현avatar TypescriptTypescript 음성인식Speech recognition IBM BluemixIBM Bluemix

제목title 음성인식Speech recognition 자막생성Create subtitles TED발표1TED Announcement 1 16분 42초16 minutes 42 seconds 4380ms4380ms TED발표2TED Announcement 2 8분 20초8 minutes 20 seconds 1542ms1542ms TED발표3TED Announcement 3 6분 14초6 minutes 14 seconds 934ms934ms TED발표4TED Announcement 4 13분 35초13 minutes 35 seconds 3728ms3728ms 영화movie 75분 10초75 minutes 10 seconds 92602ms92602ms

음성인식은 IBM Bluemix 서비스를 사용하고, 자막 계산은 타입스크립트로 작성하여 랩탑PC에서 수행하였다[표 6]. [표 7]에서 확인할 수 있듯 음성인식을 수행하는데 대부분의 시간을 사용한다. 수행시간의 경우 분할 정복을 통한 성능 최적화를 어떻게 구성하느냐에 따라 달라질 수 있다. 실험에 사용한 구성은 2회 반복하며 1회차에 두 개 이하의 단어 일치로 검색된 문장을 제외하는 방법을 사용하였다.Speech recognition was performed using the IBM Bluemix service, and subtitle calculations were performed with a type script on a laptop PC [Table 6]. As shown in [Table 7], most of the time is used to perform speech recognition. The execution time may vary depending on how performance optimization through partition reduction is configured. The composition used in the experiment was repeated two times and the method was used to exclude the sentences that were searched for less than two words in the first round.

생성된 자막에서 발생할 수 있는 오류는 두 가지가 있다. 한 가지는 자막의 활성시각과 비활성시각이 부정확한 경우이고, 다른 한가지는 자막 자체가 나타나지 않는 경우이다. [표 7]에서 활성시각 및 비활성시각이 부정확하여 입수한 자막과의 자카드 지수 계산이 0이 나온 자막의 수를 실패로 기록하고, 자막 자체가 누락된 경우를 누락으로 기록하였다. 누락 비율은 전체 문장 수에 대한 누락 수의 비율이고 실패 비율은 전체 문장 수에서 누락된 문장 수를 뺀 수에 대해서 자카드 지수가 0이 나온 수의 비율이다.There are two kinds of errors that can occur in generated subtitles. One is when the active and inactive times of the subtitles are inaccurate, and the other is when the subtitles themselves are not present. In Table 7, the number of subtitles in which the Jacquard index calculation with the caption obtained from the inactivity time is inaccurate due to inaccurate active and inactive time is recorded as failure, and the case where the caption itself is omitted is recorded as a missing. The missing ratio is the ratio of the number of misses to the total number of sentences, and the failure rate is the ratio of the number of jacquard exponents to the number obtained by subtracting the number of missed sentences from the total number of sentences.

[수학식4]

Figure 112018000523845-pat00009
&Quot; (4) "
Figure 112018000523845-pat00009

[수학식5]

Figure 112018000523845-pat00010
&Quot; (5) "
Figure 112018000523845-pat00010

누락의 경우 문장에 있는 단어들 중 어떤 단어도 음성인식으로 인식하지 못해 일치하는 단어가 하나도 있지 않을 때 발생하거나, 검색 결과를 필터링하는 과정에서 제외되지 말아야 할 검색 결과가 제외되었을 가능성이다. 실패의 경우 문장과 단어를 실제로 일치하지 않는 위치에 매칭하거나 원본 자막이 발화의 시점과 맞지 않게 작성된 경우 혹은 음성인식의 시간 정보가 부정확한 경우이다.In the case of omission, it is possible that none of the words in the sentence are recognized as speech recognition, and there are no matching words, or the search results that should not be excluded in the process of filtering the search results are excluded. In the case of failure, the sentence and the word are matched to positions that do not actually match, or the original subtitle is written in a way that does not match the timing of the utterance, or the time information of the speech recognition is incorrect.

제목title 실패(비율)Failure (percentage) 누락(비율)Missing (percentage) TED발표1TED Announcement 1 1 (0.2%)1 (0.2%) 28 (6.1%)28 (6.1%) TED발표2TED Announcement 2 2 (0.6%)2 (0.6%) 2 (0.6%)2 (0.6%) TED발표3TED Announcement 3 0 (0.0%)0 (0.0%) 8 (3.9%)8 (3.9%) TED발표4TED Announcement 4 6 (1.7%)6 (1.7%) 11 (3.1%)11 (3.1%) 영화movie 31 (1.6%)31 (1.6%) 441 (18.2%)441 (18.2%)

[표 8]에서 영화의 경우 TED 발표에 비하여 누락율이 높은 것을 볼 수 있는데, 이는 영화의 음성이 TED 발표 음성에 비해 음성인식이 어려움을 보여준다. 실패율의 경우 TED 발표 및 영화 모두 낮은 것으로 나타나는데, 이는 최소 하나 이상의 단어에 매칭되어 최종적으로 자막에 포함되었을 경우 그 자막이 잘못된 위치일 확률이 상당히 낮음을 의미한다. [Table 8] shows that the movie has a higher omission rate than the TED announcement, which indicates that the voice of the movie is difficult to recognize than the voice of the TED. In case of failure rate, both the TED announcement and the movie are shown as low, which means that the probability that the subtitle is in the wrong position when the subtitle matches at least one word is included in the subtitle.

제목title 보간 전Before interpolation 보간 후After interpolation TED발표1TED Announcement 1 0.720.72 0.750.75 TED발표2TED Announcement 2 0.590.59 0.600.60 TED발표3TED Announcement 3 0.570.57 0.620.62 TED발표4TED Announcement 4 0.630.63 0.680.68 영화movie 0.460.46 0.530.53

각 문장의 자카드 지수의 평균을 구하면 그 값을 상대적인 시스템 평가 척도로 사용할 수 있다. 실행 시간 [표 9]는 보간을 통해 수정한 자막이 사람이 만든 자막에 더 가까워졌음을 보인다. The average of the jacquard exponents of each sentence can be used as a relative system evaluation measure. Execution time [Table 9] shows that the subtitles corrected by interpolation are closer to human-made subtitles.

평균 자카드 지수Average Jacquard Index 0초 (원본)0 seconds (original) 1One 0.25초0.25 sec 0.790.79 0.5초0.5 second 0.640.64 1초1 second 0.390.39 1.5초1.5 seconds 0.230.23 2초2 seconds 0.130.13 3초3 seconds 0.040.04

[표 10]은 TED 발표 1 동영상 자막의 모든 자막 조각에 대해 일괄적으로 오차를 주어 원본과의 평균 자카드 지수를 계산한 것이다. 일반적인 동영상 플레이어의 자막 조절 기능이 0.5초 단위로 조절하는 것을 고려하면 평균 자카드 지수가 0.64 이상이 되어야 비교적 정확한 자막이라고 할 수 있다. Table 10 summarizes the average jacquard exponent with the original by giving a collective error to all caption fragments of the TED announcement 1 video caption. Considering that the subtitle control function of a general video player is adjusted in 0.5 second units, the average Jacquard index should be 0.64 or more so that it is a relatively accurate subtitle.

이상에서 본 발명의 바람직한 실시예를 설명하였으나, 본 발명은 다양한 변화와 변경 및 균등물을 사용할 수 있다. 본 발명은 상기 실시예를 적절히 변형하여 동일하게 응용할 수 있음이 명확하다. 따라서 상기 기재 내용은 아래 특허청구범위의 한계에 의해 정해지는 본 발명의 범위를 한정하는 것이 아니다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. It is clear that the present invention can be suitably modified and applied in the same manner. Therefore, the above description does not limit the scope of the present invention, which is defined by the limits of the following claims.

100 : 자막 생성 장치 110 : 입력부
120 : 단어추출부 130 : 전처리부
140 : 단어매칭부 150 : 시간설정부
160 : 자막생성부
100: caption generation device 110: input part
120: word extracting unit 130: preprocessing unit
140: word matching unit 150: time setting unit
160: Subtitle generation unit

Claims (12)

동영상 및 대사정보를 입력받는 입력부와;
상기 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 전처리부와;
상기 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단어추출부와;
상기 문장 리스트에서 상기 단어정보가 포함된 상기 표시문장단위를 탐색하여 매칭하는 단어매칭부와;
상기 단어정보가 매칭된 상기 표시문장단위에 표시시간을 설정하는 시간설정부와;
상기 표시문장단위에 대한 상기 표시시간이 설정된 상기 문장 리스트를 전자파일화하여 출력하는 자막생성부를 포함하고,
상기 단어정보에는 상기 단어의 발화시각 및 종료시각이 더 포함되고,
상기 시간설정부는 상기 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하며,
상기 입력부를 통해 입력되는 상기 대사정보에는 기 제작된 대본 또는 자막파일이 포함되고,
상기 전처리부는 상기 대본을 한 대사 세트 단위로 분할하여 상기 표시문장단위로 설정하고, 상기 자막을 기 정의된 표시시간 단위로 분할하여 상기 표시문장단위로 설정하며,
상기 시간설정부는 상기 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않은 표시문장단위를 상기 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정하는 것을 특징으로 하는 자막 생성 장치.
An input unit for inputting video and metabolism information;
A preprocessing unit for converting the metabolism information into a sentence list divided on a display sentence unit basis;
A word extracting unit for performing speech recognition on the moving image to obtain word information including a character string of a voice;
A word matching unit for searching for and matching the display sentence unit including the word information in the sentence list;
A time setting unit for setting a display time in units of the display sentence matched with the word information;
And a subtitle generation unit for outputting the sentence list in which the display time is set for the display sentence unit,
Wherein the word information further includes an utterance time and an end time of the word,
Wherein the time setting unit sets the display time of the first word of the display sentence unit and the end time of the end word as the display time,
Wherein the meta information input through the input unit includes a prepared script or a subtitle file,
Wherein the preprocessing unit divides the script into units of a metabase set and sets the script in a unit of the display sentence, divides the caption into units of a predetermined display time,
Wherein the time setting unit sets a new display time using a display time previously defined in the subtitle file when the subtitle file is inputted, wherein a display sentence unit in which a first word or an end word is not matched is set in the subtitle file, .
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 단어매칭부는 불완전 매칭된 표시문장단위 중에서 상기 단어정보를 탐색하는 것을 특징으로 하는 자막 생성 장치.
The method according to claim 1,
Wherein the word matching unit searches the word information among the incompletely matched display sentence units.
제1항에 있어서,
상기 단어매칭부는 상기 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정되는 것을 특징으로 하는 자막 생성 장치.
The method according to claim 1,
Wherein the word matching unit sets a voice expression word for a number or a special character included in the character string.
(A) 입력부가 동영상 및 대사정보를 입력받는 단계와;
(B) 전처리부가 상기 대사정보를 표시문장단위로 분할된 문장 리스트로 변환하는 단계와;
(C) 단어추출부가 상기 동영상을 대상으로 음성인식을 실시하여 음성의 문자열이 포함된 단어정보를 획득하는 단계와;
(D) 단어매칭부가 상기 문장 리스트에서 상기 단어정보가 포함된 상기 표시문장단위를 탐색하여 매칭하는 단계와;
(E) 시간설정부가 상기 단어정보가 매칭된 상기 표시문장단위에 표시시간을 설정하는 단계와;
(F) 자막생성부가 상기 표시문장단위에 대한 상기 표시시간이 설정된 상기 문장 리스트를 전자파일화하여 출력하는 단계를 포함하고,
상기 (C) 단계에서 획득되는 상기 단어정보에는 상기 음성의 발화시각 및 종료시각이 더 포함되고,
상기 (E) 단계는 상기 표시문장단위의 첫단어의 발화시각과 끝단어의 종료시각을 표시시간으로 설정하며,
상기 대사정보에는 기 제작된 대본 또는 자막파일이 포함되고,
상기 (B) 단계는 대본의 경우 상기 대본을 한 대사 세트 단위로 분할하여 상기 표시문장단위로 설정하고, 자막파일의 경우 상기 자막을 기 정의된 표시시간 단위로 분할하여 상기 표시문장단위로 설정하며,
상기 (E) 단계는 상기 자막파일이 입력되었을 경우, 첫단어 또는 끝단어가 매칭되지 않은 표시문장단위를 상기 자막파일에서 기 정의되었던 표시시간을 이용하여 새로운 표시시간을 설정하는 것을 특징으로 하는 자막 생성 방법.
(A) receiving input moving image and metabolism information;
(B) the pre-processing unit converting the metabolism information into a sentence list divided on a display sentence unit basis;
(C) a word extracting unit performing speech recognition on the moving image to obtain word information including a character string of a voice;
(D) a word matching unit searching and matching the display sentence unit including the word information in the sentence list;
(E) setting a display time in the display sentence unit in which the time setting unit matches the word information;
(F) a subtitle generating unit outputting the electromagnetic wave anomaly of the sentence list in which the display time is set for the display sentence unit,
Wherein the word information obtained in the step (C) further includes an utterance time and an end time of the speech,
Wherein the step (E) sets a speaking time of the first word of the display sentence unit and an ending time of the end word as a display time,
The meta information includes a prepared script or subtitle file,
In step (B), the script is divided into a plurality of display sentences by dividing the script into units of one metabase set. In case of the subtitle file, the subtitle is divided into a predetermined display time unit and is set in units of the display sentence ,
Wherein in the step (E), when a subtitle file is input, a new display time is set using a display time previously defined in the subtitle file, Generation method.
삭제delete 삭제delete 삭제delete 제7항에 있어서, 상기 (D) 단계는
불완전 매칭된 표시문장단위 중에서 상기 단어정보를 탐색하는 것을 특징으로 하는 자막 생성 방법.
8. The method of claim 7, wherein step (D)
And searching the word information among the incompletely matched display sentence units.
제7항에 있어서,
상기 단어매칭부에는 상기 문자열에 포함된 숫자 또는 특수문자에 대하여 음성표현단어가 기 설정된 것을 특징으로 하는 자막 생성 방법.
8. The method of claim 7,
Wherein the word matching unit sets a voice expression word for a number or a special character included in the character string.
KR1020180000397A 2018-01-02 2018-01-02 Apparatus and method for generating subtitles using speech recognition and script KR101996551B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180000397A KR101996551B1 (en) 2018-01-02 2018-01-02 Apparatus and method for generating subtitles using speech recognition and script

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180000397A KR101996551B1 (en) 2018-01-02 2018-01-02 Apparatus and method for generating subtitles using speech recognition and script

Publications (1)

Publication Number Publication Date
KR101996551B1 true KR101996551B1 (en) 2019-07-04

Family

ID=67259201

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180000397A KR101996551B1 (en) 2018-01-02 2018-01-02 Apparatus and method for generating subtitles using speech recognition and script

Country Status (1)

Country Link
KR (1) KR101996551B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210112120A (en) 2020-03-04 2021-09-14 박정준 Apparatus and method for helping worship progress
CN114333918A (en) * 2020-09-27 2022-04-12 广州市久邦数码科技有限公司 Method and device for matching audio book subtitles
US11763099B1 (en) 2022-04-27 2023-09-19 VoyagerX, Inc. Providing translated subtitle for video content
US11893813B2 (en) 2019-02-01 2024-02-06 Samsung Electronics Co., Ltd. Electronic device and control method therefor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000324395A (en) * 1999-05-14 2000-11-24 Telecommunication Advancement Organization Of Japan Method for applying timing information to title
JP2004343488A (en) * 2003-05-16 2004-12-02 Nec Corp Method, system, and program for inserting caption
JP2007256714A (en) * 2006-03-24 2007-10-04 Internatl Business Mach Corp <Ibm> Caption correction apparatus
KR20130023461A (en) * 2011-08-29 2013-03-08 (주)토이미디어 Caption management method and caption search method
KR20170047547A (en) 2015-10-23 2017-05-08 엘지전자 주식회사 Display device and method for controlling the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000324395A (en) * 1999-05-14 2000-11-24 Telecommunication Advancement Organization Of Japan Method for applying timing information to title
JP2004343488A (en) * 2003-05-16 2004-12-02 Nec Corp Method, system, and program for inserting caption
JP2007256714A (en) * 2006-03-24 2007-10-04 Internatl Business Mach Corp <Ibm> Caption correction apparatus
KR20130023461A (en) * 2011-08-29 2013-03-08 (주)토이미디어 Caption management method and caption search method
KR20170047547A (en) 2015-10-23 2017-05-08 엘지전자 주식회사 Display device and method for controlling the same

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11893813B2 (en) 2019-02-01 2024-02-06 Samsung Electronics Co., Ltd. Electronic device and control method therefor
KR20210112120A (en) 2020-03-04 2021-09-14 박정준 Apparatus and method for helping worship progress
CN114333918A (en) * 2020-09-27 2022-04-12 广州市久邦数码科技有限公司 Method and device for matching audio book subtitles
US11763099B1 (en) 2022-04-27 2023-09-19 VoyagerX, Inc. Providing translated subtitle for video content
US11770590B1 (en) 2022-04-27 2023-09-26 VoyagerX, Inc. Providing subtitle for video content in spoken language
US11947924B2 (en) 2022-04-27 2024-04-02 VoyagerX, Inc. Providing translated subtitle for video content
US12099815B2 (en) 2022-04-27 2024-09-24 VoyagerX, Inc. Providing subtitle for video content in spoken language

Similar Documents

Publication Publication Date Title
KR101996551B1 (en) Apparatus and method for generating subtitles using speech recognition and script
US8311832B2 (en) Hybrid-captioning system
CN108780643B (en) Automatic dubbing method and device
US7346506B2 (en) System and method for synchronized text display and audio playback
Hori et al. A new approach to automatic speech summarization
US20070168864A1 (en) Video summarization apparatus and method
JP2019070799A (en) Bidirectional probabilistic natural language rewriting and selection
US20070094003A1 (en) Conversation controller
US9818450B2 (en) System and method of subtitling by dividing script text into two languages
CN110675866B (en) Method, apparatus and computer readable recording medium for improving at least one semantic unit set
US8892435B2 (en) Text data processing apparatus, text data processing method, and recording medium storing text data processing program
JP2010230695A (en) Speech boundary estimation apparatus and method
EP3839953A1 (en) Automatic caption synchronization and positioning
US20220148584A1 (en) Apparatus and method for analysis of audio recordings
KR20220048958A (en) Method of filtering subtitles of a foreign language video and system performing the same
WO2004093078A1 (en) Process for adding subtitles to video content
Van de Weijer et al. The four tones of Mandarin Chinese: Representation and acquisition
KR101920653B1 (en) Method and program for edcating language by making comparison sound
JP5243886B2 (en) Subtitle output device, subtitle output method and program
KR102076565B1 (en) Speech processing apparatus which enables identification of a speaking person through insertion of speaker identification noise and operating method thereof
CN113053364A (en) Voice recognition method and device for voice recognition
Psutka et al. Issues in Annotation of the Czech Spontaneous Speech Corpus in the MALACH project.
Nayak et al. A Deep Dive Into Neural Synchrony Evaluation for Audio-visual Translation
Mocanu et al. Automatic subtitle synchronization and positioning system dedicated to deaf and hearing impaired people
Martin et al. Cross-lingual pronunciation modelling for indonesian speech recognition

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