KR102550750B1 - 수어 인식 방법 - Google Patents

수어 인식 방법 Download PDF

Info

Publication number
KR102550750B1
KR102550750B1 KR1020200188065A KR20200188065A KR102550750B1 KR 102550750 B1 KR102550750 B1 KR 102550750B1 KR 1020200188065 A KR1020200188065 A KR 1020200188065A KR 20200188065 A KR20200188065 A KR 20200188065A KR 102550750 B1 KR102550750 B1 KR 102550750B1
Authority
KR
South Korea
Prior art keywords
vectors
data
direction data
text
sign language
Prior art date
Application number
KR1020200188065A
Other languages
English (en)
Other versions
KR20220097673A (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 KR1020200188065A priority Critical patent/KR102550750B1/ko
Publication of KR20220097673A publication Critical patent/KR20220097673A/ko
Application granted granted Critical
Publication of KR102550750B1 publication Critical patent/KR102550750B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/469Contour-based spatial representations, e.g. vector-coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

수어 인식 방법이 제공된다. 수어 인식 방법은 각 시점에 대하여 수어 동영상으로부터 화자의 신체 부위에 대응하는 포인트들, 및 신체 부위들 사이의 연결 관계를 나타내며 상기 포인트들 사이를 연결하는 라인들을 생성하는 단계, 각 시점에 대하여 상기 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계, 및 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계를 포함할 수 있다.

Description

수어 인식 방법{Sing language recognition method}
본 개시는 수어 인식 방법에 관한 것이다. 보다 구체적으로는 인공 신경망을 사용한 수어 인식 방법에 관한 것이다.
본 발명은 정보통신산업진흥원-AI 바우처 지원사업(추경)의 일환으로 ㈜프론티스에서 주관하고 ㈜솔트룩스에서 연구하여 수행된 결과로부터 도출된 것이다. [연구기간: 2020.09.01~2020.12.31, 연구관리 전문기관: 정보통신산업진흥원, 연구과제명: 산업 정비 교육 실감콘텐츠를 위한 AI 수어 번역 솔루션 개발, 세부사업명: 지능정보산업인프라조성, 세부과제번호: A0606-20-2282]
농인들은 구어(colloquial language) 대신 수어(sign language)를 사용하여 의사를 전달할 수 있다. 수어는 신체의 움직임을 사용하여 의사를 전달한다. 종래 수어 인식 방법에 따르면, 신체의 움직임이 촬영되고, 촬영된 동영상이 시간 축, X 축, 및 Y축에 걸친 3차원 컨벌루션을 통해 텍스트로 변환되었다. 그러나, 동일한 동작을 촬영하더라도 카메라의 위치에 따라 촬영된 동영상 내에서 각각의 신체 부위의 위치 및 크기가 다르고 촬영 조건에 따라 촬영된 동영상 내에서 화면의 밝기 및 색상이 달라 높은 인식 정확도를 달성하기 어려웠다. 또한, 3차원 컨벌루션은 많은 계산 자원을 필요로 하므로 높은 인식 속도를 달성하기 어려웠다.
본 개시가 해결하고자 하는 과제는 높은 인식 정확도 및 높은 인식 속도를 가지는 수어 인식 방법을 제공하는 것이다.
본 개시의 실시예들에 따른 수어 인식 방법은 각 시점에 대하여 수어 동영상으로부터 화자의 신체 부위에 대응하는 포인트들, 및 신체 부위들 사이의 연결 관계를 나타내며 상기 포인트들 사이를 연결하는 라인들을 생성하는 단계, 각 시점에 대하여 상기 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계, 및 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계를 포함할 수 있다.
일부 실시예들에서, 상기 벡터들의 방향 데이터는 상기 벡터들과 관련된 각도들의 코사인(cosine) 값들 및 상기 벡터들과 관련된 각도들의 사인(sine) 값들을 포함할 수 있다.
일부 실시예들에서, 상기 각 시점에 대하여 상기 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계는, 상기 포인트들 중 중요 포인트들을 선택하는 단계, 및 각 시점에 대하여 상기 중요 포인트들 사이를 연결하는 중요 라인들에 대응하는 중요 벡터들의 방향 데이터를 추출하는 단계를 포함하고, 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는 시간에 걸친 상기 중요 벡터들의 방향 데이터를 텍스트로 변환하는 단계일 수 있다.
일부 실시예들에서, 상기 중요 포인트들 각각은 어깨의 부위들, 팔의 부위들, 손의 부위들, 및 입의 부위들 중 하나에 대응할 수 있다.
일부 실시예들에서, 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는, 각 시점의 상기 벡터들의 방향 데이터로부터 각 시점의 포즈(pose) 데이터를 추출하는 단계; 및 시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계를 포함할 수 있다.
일부 실시예들에서, 각 시점의 상기 벡터들의 방향 데이터로부터 각 시점의 포즈 데이터를 추출하는 단계는, 다층 퍼셉트론(multi-layer perceptron)을 사용할 수 있다.
일부 실시예들에서, 시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계는,
시간에 걸친 포즈 데이터로부터 추상화된 데이터를 추출하는 단계, 및 상기 추상화된 데이터를 텍스트로 변환하는 단계를 포함할 수 있다.
일부 실시예에서, 상기 시간에 걸친 포즈 데이터를 추상화된 데이터를 추출하는 단계는 시간 축을 따른 1차원 컨벌루션(convolution)을 사용하고, 상기 추상화된 데이터를 텍스트로 변환하는 단계는 다층 퍼셉트론을 사용할 수 있다.
일부 실시예에서, 상기 수어 인식 방법은 특정 포즈에 대응하는 분할 시점들을 찾는 단계를 더 포함하고, 상기 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는, 이웃한 분할 시점 사이의 시구간에 걸친 벡터들의 방향 데이터를 단어로 변환하는 단계, 및 단어들을 문장으로 구성하는 단계를 포함할 수 있다.
일부 실시예에서, 상기 특정 포즈는 단어와 단어 사이임을 나타내는 포즈 및 문장의 끝임을 나타내는 포즈 중 적어도 하나를 포함할 수 있다.
본 발명의 실시예들에 따르면, 각 시점에 대하여 수어 동영상으로부터 화자의 신체 부위에 대응하는 포인트들 및 포인트들 사이를 연결하는 라인들이 생성될 수 있고, 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터가 추출될 수 있고, 시간에 걸친 벡터들의 방향 데이터가 텍스트로 변환될 수 있다. 벡터들의 방향 데이터는 카메라 위치 및 촬영 조건의 변동에 덜 민감하므로 인식 정확도가 향상될 수 있다. 또한, 시간에 걸친 벡터들의 방향 데이터를 텍스트로 변환하기 위해 시간 축을 따른 1차원 컨벌루션이 사용될 수 있다. 3차원 컨벌루션보다 계산 자원이 덜 소요되는 1차원 컨벌루션이 사용되므로 인식 속도가 향상될 수 있다.
도 1은 본 개시의 실시예들에 따른 수어 인식 방법을 나타낸 흐름도이다.
도 2a는 도 2b는 본 개시의 실시예들에 따른 수어 인식 방법을 설명하기 위한 개념도들이다.
도 3은 본 개시의 실시예들에 따른 수어 인식 방법을 나타낸 흐름도이다.
도 4a 및 도 4b는 본 개시의 실시예들에 따른 수어 인식 방법을 설명하기 위한 개념도들이다.
도 5는 본 개시의 실시예들에 따른 수어 인식 방법을 나타낸 흐름도이다.
도 6은 본 개시의 실시예들에 따른 수어 인식 방법을 설명하기 위한 개념도이다.
도 7은 본 개시의 실시예들에 따른 수어 인식 방법을 나타낸 흐름도이다.
도 8은 본 개시의 실시예들에 따른 수어 인식 방법을 설명하기 위한 개념도이다.
도 9는 본 개시의 실시예들에 따른 수어 인식 장치를 나타낸 블록도이다.
도 10은 본 개시의 실시예들에 따른 수어 인식 방법을 포함하는 농인 교육 방법을 나타낸 흐름도이다.
도 11은 본 개시의 실시예들에 따른 수어 인식 장치를 포함하는 농인 교육 시스템을 나타낸 블록도이다.
이하에서 첨부된 도면을 참조하여 본 개시의 실시예들이 상세히 설명될 것이다. 그러나, 본 개시의 실시예들은 여러 가지 다른 형태로 변형 또는 수정될 수 있으므로, 본 발명의 범위가 아래의 실시예들에 의해 한정되는 것으로 해석되어서는 안 된다. 본 개시의 실시예들은 당 업계의 통상의 기술자에게 본 발명을 보다 상세히 설명하기 위해서 제공되는 것으로 해석되어야 한다. 도면들에 걸쳐 동일한 부호는 동일하거나 유사한 요소를 나타낼 수 있다. 방법 청구항이 방법 청구항을 구성하는 단계들이 따라야할 순서를 명시적으로 개시하지 않는한, 단계들의 순서는 방법 청구항의 범위를 제한하지 않는다.
도 1은 본 개시의 실시예들에 따른 수어 인식 방법(100)을 나타낸 흐름도이다. 도 2a는 도 2b는 본 개시의 실시예들에 따른 수어 인식 방법(100)을 설명하기 위한 개념도들이다.
도 1 및 도 2a를 참조하면, 각 시점에 대하여 수어 동영상으로부터 포인트들(P) 및 라인들(L)이 생성될 수 있다(110). 각각의 포인트(P)는 화자의 신체 부위에 대응할 수 있다. 각각의 라인(L)은 화자의 신체 부의들 사이의 연결 관계를 나타내며, 이웃한 포인트들(P) 사이를 연결할 수 있다. 수어 동영상으로부터 포인트들(P) 및 라인들(L)을 생성하기 위해 인공 신경망 기반 인간 포즈 추정 방법이 사용될 수 있다. 예를 들어, DeepPose, DeepCut, RMPE(Regional Multi-Person Pose Estimation), OpenPose, Densepose, Alphapose, PoseNet, 등이 사용될 수 있다.
도 1 및 도 2b를 참조하면, 각 시점에 대하여 라인들(L, 도 2a 참조)에 대응하는 벡터들(V)의 방향 데이터가 추출될 수 있다(120). 일부 실시예에서, 벡터들(V)의 방향 데이터는 벡터들(V)과 관련된 각도들 또는 벡터들(V)과 관련된 각도들의 코사인(cosine) 값들 및 벡터들(V)과 관련된 각도들의 사인(sine) 값들의 조합을 포함할 수 있다. 일부 실시예에서, 벡터들(V)과 관련된 각도들은 이웃한 벡터들(V) 사이의 각도들, X 축과 벡터들(V) 사이의 각도들, 및 Y 축과 벡터들(V) 사이의 각도들 중 하나를 포함할 수 있다.
다음으로, 시간에 걸친 벡터들(V)의 방향 데이터가 텍스트로 변환될 수 있다(130). 예를 들어 퍼셉트론(완전 결합 신경망), 컨벌루션 신경망, 순환 신경망, 장단기 기억망, 또는 이들의 조합을 포함하는 인공 신경망을 사용하여 시간에 걸친 벡터들(V)의 방향 데이터가 텍스트로 변환될 수 있다. 벡터들(V)의 방향 데이터는 카메라 위치에 따라 동영상 내의 신체 부위의 크기 및 위치가 변하거나 촬영 조건에 따라 색상 또는 밝기 등이 변하더라도 크게 변화하지 않으므로, 인식 정확도가 향상될 수 있다.
도 3은 본 개시의 실시예들에 따른 수어 인식 방법(100A)을 나타낸 흐름도이다. 도 4a 및 도 4b는 본 개시의 실시예들에 따른 수어 인식 방법(100A)을 설명하기 위한 개념도들이다. 이하에서는 도 1, 도 2a 및 도 2b를 참조하여 설명된 수어 인식 방법(100)과 도 3, 도 4a, 및 도 4b를 참조하여 설명될 수어 인식 방법(100A) 사이의 차이점이 설명된다.
도 3, 도 4a 및 도 4b를 참조하면, 도 1, 도 2a, 및 도 2b를 참조하여 설명된 바와 유사하게 각 시점에 대하여 수어 동영상으로부터 포인트들 및 라인들이 생성될 수 있다(110).
다음으로, 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터가 추출될 수 있다(120). 구체적으로, 포인트들(P) 중 중요 포인트들(PP)이 선택될 수 있다(121). 중요 포인트들(PP)은 수어 인식에 중요한 신체 부위들에 대응할 수 있다. 중요 포인트들(PP) 각각은 어깨의 부위들, 팔의 부위들, 손의 부위들, 및 입의 부위들 중 하나에 대응할 수 있다.
다음으로, 각 시점에 대하여 라인들(LL) 중 중요 포인트들(PP) 사이를 연결하는 중요 라인(LL)에 대응하는 중요 벡터들(VV)의 방향 데이터가 추출될 수 있다(122). 일부 실시예에서, 중요 벡터들(VV)의 방향 데이터는 중요 벡터들(VV)과 관련된 각도들, 중요 벡터들(VV)과 관련된 각도들의 코사인 값들, 및 중요 벡터들(VV)과 관련된 각도들의 사인 값들 중 적어도 하나를 포함할 수 있다. 일부 실시예에서, 중요 벡터들(VV)과 관련된 각도들은 이웃한 중요 벡터들(VV) 사이의 각도들, X 축과 중요 벡터들(VV) 사이의 각도들, 및 Y 축과 중요 벡터들(VV) 사이의 각도들 중 하나를 포함할 수 있다.
다음으로, 시간에 걸친 중요 벡터들(VV)의 방향 데이터가 텍스트로 변환될 수 있다(130A). 중요 벡터들(VV)의 수는 도 1, 도 2a, 및 도 2b를 참조하여 설명한 벡터들(V)의 수보다 작으므로 각 시점에서 방향 데이터의 길이가 감소될 수 있다. 따라서 시간에 걸친 중요 벡터들(VV)의 방향 데이터를 텍스트로 변환하기 위해 필요한 계산 자원은 도 1, 도 2a, 및 도 2b를 참조하여 설명한 벡터들(V)의 방향 데이터를 텍스트로 변환하기 위해 필요한 계산 자원보다 작을 수 있다. 따라서, 수어 인식 방법(100A)은 인식 속도를 향상시킬 수 있다.
도 5는 본 개시의 실시예들에 따른 수어 인식 방법(100B)을 나타낸 흐름도이다. 도 6은 본 개시의 실시예들에 따른 수어 인식 방법(100B)을 설명하기 위한 개념도이다. 이하에서는 도 1, 도 2a 및 도 2b를 참조하여 설명된 수어 인식 방법(100)과 도 5 및 도 6을 참조하여 설명될 수어 인식 방법(100B) 사이의 차이점이 설명된다.
도 5 및 도 6을 참조하면, 도 1, 도 2a 및 도 2b를 참조하여 설명된 수어 인식 방법(100)과 유사하게, 수어 인식 방법(100B)은 각 시점에 대하여 수어 동영상으로부터 포인트들 및 라인들을 생성하는 단계(110), 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계(120), 및 시간에 걸친 벡터들의 방향 데이터를 텍스트로 변환하는 단계(130)를 포함할 수 있다.
시간에 걸친 벡터들의 방향 데이터를 텍스트로 변환하는 단계(130)는 각 시점에 대하여 벡터들의 방향 데이터로부터 포즈(pose) 데이터를 추출하는 단계(131) 및 시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계(132)를 포함할 수 있다. 시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계(132)는 시간에 걸친 포즈 데이터로부터 추상화된 데이터를 추출하는 단계(132A) 및 추상화된 데이터를 텍스트로 변환하는 단계(132B)를 포함할 수 있다.
도 6에 도시된 바와 같이, 각 시점(예를 들어, ti)의 벡터들의 방향 데이터(d1)는 k0의 채널 수를 가질 수 있다. 각 시점의 방향 데이터(d1)를 시간 축을 따라 배열함으로써 시간(t1 내지 tm)에 걸친 벡터들의 방향 데이터(D1)가 형성될 수 있다.
각 시점(예를 들어, ti)의 벡터들의 방향 데이터(d1)로부터 각 시점(예를 들어, ti)의 포즈 데이터(d2)가 추출될 수 있다(131). 각 시점(예를 들어, ti)에서 포즈 데이터(d2)는 k1의 채널 수를 가질 수 있다. 각 시점의 포즈 데이터(d2)를 시간 축을 따라 배열함으로써 시간(t1 내지 tm)에 걸친 포즈 데이터(D2)가 형성될 수 있다.
각 시점(예를 들어, ti)에서 포즈 데이터(d2)는 그 시점(예를 들어, ti)에서 포즈에 대한 정보를 담고있을 수 있다. 예를 들어, 하나의 단어에 대응하는 수어는 하나의 실제 동작으로 구성되며, 하나의 동작은 복수의 정지된 포즈를 포함할 수 있다. 예를 들어 각 시점(예를 들어, ti)에서 포즈 데이터(d2)는 그 시점(예를 들어, ti)에서 포즈를 복수의 가능한 포즈 중 어떤 것에 가까운지를 나타낼 수 있다. 예를 들어 각 시점(예를 들어, ti)에서 포즈 데이터(d2)는 k1개의 가능한 포즈 중 어떤 것에 가까운지를 나타낼 수 있다. k1개의 가능한 포즈는 실제 포즈가 추상화된 개념일 수 있다. 따라서 k1개의 가능한 포즈가 실제 어떤 포즈에 대응하는지 알아내는 것은 직관적이지 않으며 모호할 수 있다.
각 시점(예를 들어, ti)의 벡터들의 방향 데이터(D1)로부터 각 시점(예를 들어, ti)의 포즈 데이터(D2)를 추출하는 단계(131)는 다층 퍼셉트론(multi-layer perceptron)(MP1)을 사용하여 수행될 수 있다. 다층 퍼셉트론은 인공 신경망의 한 종류이다. 다층 퍼셉트론은 복수의 층을 포함할 수 있다. 다층 퍼셉트론은 입력 층, 출력 층, 및 적어도 하나의 은닉 층을 포함할 수 있다. 각각의 층은 복수의 노드를 포함할 수 있고, 이웃한 두 층의 노드들은 서로 완전히 연결될 수 있다. 서로 연결된 노드들 사이에는 가중치가 설정될 수 있다. 각각의 노드는 이전 층의 노드들의 출력 값 및 가중치들에 의해 결정되는 입력 값을 수신하여 입력 값으로부터 활성화 함수에 따라 값을 출력할 수 있다. 다층 퍼셉트론은 완전 연결 신경망(fully-connected neural network)로도 불릴 수 있다. 다층 퍼셉트론은 k0의 채널 수를 가지는 각 시점(예를 들어, ti)의 방향 데이터(d1)로부터 k1의 채널 수를 가지는 각 시점(예를 들어, ti)의 포즈 데이터(d2)를 추출할 수 있다. 일부 실시예에서 포즈를 좀 더 명확히 구분하기 위해 다층 퍼셉트론의 출력 층의 노드들의 활성화 함수로서 소프트맥스(softmax) 함수가 사용될 수 있다.
다음으로, 시간(예를 들어 t1 내지 tm)에 걸친 포즈 데이터(D2)로부터 추상화된 데이터(D5)가 추출될 수 있다(132A). 일부 실시예에서, 추상화는 복수회에 걸쳐 이루어질 수 있다. 시간(예를 들어 t1 내지 tm)에 걸친 포즈 데이터(D2)로부터 제1 추상화된 데이터(D3)가 추출되고, 제1 추상화된 데이터(D3)로부터 제2 추상화된 데이터(D4)가 추출되고, 제2 추상화된 데이터(D4)로부터 최종적으로 제3 추상화된 데이터(D5)가 추출될 수 있다. 추상화의 회수는 3회로 제한되지 않는다.
각각의 추상화 단계에는 컨벌루션 신경망이 사용될 수 있다. 각각의 추상화는 시간 축을 따라 이루어질 수 있다. 예를 들어, 각각의 추상화에는 시간 축을 따른 1차원 컨벌루션이 사용될 수 있다. 3차원 컨벌루션보다 계산 자원이 덜 소요되는 1차원 컨벌루션이 사용되므로 인식 속도가 향상될 수 있다.
예를 들어 컨벌루션의 윈도우 크기는 3 이상으로 설정하여 비교적 넓은 시간 범위에 걸쳐 추상화가 이루어질 수 있다. 예를 들어 스트라이드(stride)는 2 이상으로 설정하여 빠르게 추상화된 데이터(D3, D4, D5)의 크기를 감소시켜 인식 송도를 증가시킬 수 있다. 그러나 윈도우의 크기 및 스트라이드의 크기는 이에 제한되지 않는다. 각각의 컨벌루션의 윈도우 크기 및 스트라이드 크기가 동일할 필요는 없다.
도 6에 도시된 실시예에서, 각각이 w1 의 윈도우 크기를 가지는 k2개의 필터들을 사용하여 시간 축을 따라 1차원 컨벌루션을 수행함으로써 시간(t1 내지 tm)에 걸친 포즈 데이터(D2)로부터 제1 추상화된 데이터(D3)가 추출될 수 있다. 또한, 각각이 w2의 윈도우 크기를 가지는 k3개의 필터들을 사용하여 시간 축을 따라 1차원 컨벌루션을 수행함으로써 제1 추상화된 데이터(D3)로부터 제2 추상화된 데이터(D4)가 추출될 수 있다. 또한, 각각이 w3의 크기를 가지는 k4개의 필터들을 사용하여 시간 축을 따라 1차원 컨벌루션을 수행함으로써 제2 추상화된 데이터(D4)로부터 최종적으로 제5 추상화된 데이터(D5)가 추출될 수 있다.
다음으로, 추상화된 데이터(D5)가 텍스트(W)로 변환될 수 있다(132B). 추상화된 데이터(D5)를 텍스트(W)로 변환하기 위해 다층 퍼셉트론(MP2)이 사용될 수 있다. 일부 실시예에서 복수의 가능한 텍스트 중 하나를 선택하기 위해 다층 퍼셉트론의 출력 층의 노드들의 활성화 함수로서 소프트맥스(softmax) 함수가 사용될 수 있다.
예를 들어, 다층 퍼셉트론(MP2)은 추상화된 데이터(D5)를 복수의 가능한 텍스트들 중 하나로 분류하는 분류기로서 기능할 수 있다. 예를 들어 다층 퍼셉트론은 추상화된 데이터(D5)로부터 결과 데이터(D6)를 추출할 수 있다. 일부 실시예에서, 복수의 가능한 텍스트들은 결과 데이터(D6) 내의 각각의 자리에 대응할 수 있다. 따라서 결과 데이터(D6) 내의 값들 중 최대 값을 찾고, 최대 값이 차지하는 위치에 대응하는 텍스트(W)를 찾음으로써 결과 데이터(D6)로부터 텍스트(W)가 추출될 수 있다. 다른 실시예에서, 복수의 가능한 텍스트들은 고유한 데이터 값을 가질 수 있다. 복수의 가능한 텍스들의 고유한 벡터 값들 중 결과 데이터(D6)와 가장 유사한 것을 찾고, 가장 유사한 고유한 벡터 값에 대응하는 텍스트(W)를 찾음으로써 결과 데이터(D6)로부터 텍스트(W)가 추출될 수 있다. 텍스트(W)는 단어, 또는 문장일 수 있다. 즉, 수어 인식은 단어, 또는 문장 단위로 이루어질 수 있다.
도 7은 본 개시의 실시예들에 따른 수어 인식 방법(100C)을 나타낸 흐름도이다. 도 8은 본 개시의 실시예들에 따른 수어 인식 방법(100C)을 설명하기 위한 개념도이다. 이하에서는 도 1, 도 2a 및 도 2b를 참조하여 설명된 수어 인식 방법(100)과 도 7 및 도 8을 참조하여 설명될 수어 인식 방법(100C) 사이의 차이점이 설명된다.
도 7 및 도 8을 참조하면, 수어 인식 방법(100C)은 특정 포즈에 대응하는 분할 시점들을 찾는 단계(140)를 더 포함할 수 있다.
특정 포즈는 단어와 단어 사이임을 나타내는 포즈(BW) 및 문장의 끝임을 나타내는 포즈(EOS) 중 적어도 하나를 포함할 수 있다. 원래 수어는 단어 사이임을 나타내는 포즈(BW) 및 문장의 끝임을 나타내는 포즈(EOS)를 포함하지 않지만, 수어 인식을 쉽게하기 위해 단어 사이임을 나타내는 포즈(BW) 및 문장의 끝임을 나타내는 포즈(EOS)를 미리 약속하고 약속된 포즈들(BW, EOS)이 단어와 단어 사이 및 문장의 끝에 사용될 수 있다. 일부 실시예에서, 문장의 끝임을 나타내는 포즈(EOS)는 생략될 수 있거나 단어 사이임을 나타내는 포즈(BW)와 동일할 수 있다.
특정 포즈에 대응하는 분할 시점들을 찾기 위해 인공 신경망, 예를 들어 다층 퍼셉트론(MP3)이 사용될 수 있다. 예를 들어, 다층 퍼셉트론은 각 시점(예를 들어, ti)의 벡터들의 방향 데이터(d1)를 셋, 즉 단어 사이임을 나타내는 포즈(BW), 문장의 끝임을 나타내는 포즈(EOS), 및 단어와 단어 사이임 또는 문장의 끝임을 나타내지 않는 포즈(NE) 중 하나로 분류할 수 있다. 다른 실시예에서, 다층 퍼셉트론은 각 시점(예를 들어, ti)의 벡터들의 방향 데이터(d1)를 둘, 즉 단어 사이임 또는 문장의 끝임을 나타내는 포즈(BW/EOS)와 단어 사이임 또는 문장의 끝임을 나타내지 않는 포즈(NE) 중 하나로 분류할 수 있다. 다른 실시예에서, 다층 퍼셉트론은 각 시점(예를 들어, ti)의 벡터들의 방향 데이터(d1)를 단어 사이임을 나타내는 포즈(BW)와 단어 사이임을 나타내지 않는 포즈(NE) 중 하나로 분류할 수 있다.
도 8에 도시된 실시예에서, 단어 사이임을 나타내는 포즈(BW) 또는 문장의 끝임을 나타내는 포즈(EOS)로 분류된 시점들(t16, t24, t30, tn)은 분할 시점들로 설정될 수 있다. 즉, 시구간(t1 내지 tn)은 제1 시구간(t1 내지 t15), 제2 시구간(t17 내지 t23), 제3 시구간(t25 내지 t29), 및 제4 시구간(t31 내지 tn-1)으로 분할될 수 있다.
다음으로, 이웃한 분할 시점 사이의 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터가 추출될 수 있다(120C). 예를 들어, 1 시구간(t1 내지 t15)의 각 시점에 대한 벡터들의 방향 데이터(D1a), 제2 시구간(t17 내지 t23)의 각 시점에 대한 벡터들의 방향 데이터(D1b), 제3 시구간(t25 내지 t29)의 각 시점에 대한 벡터들의 방향 데이터(D1c), 및 제4 시구간(t31 내지 tn-1)의 각 시점에 대한 벡터들의 방향 데이터(D1d)가 추출될 수 있다. 일부 실시예에서, 이웃한 분할 시점 사이의 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터는 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계(120)로부터 얻은 벡터들의 방향 데이터를 분할 시점들로 분할 함으로써 얻어질 수 있다. 다른 실시예에서, 이웃한 분할 시점 사이의 각 시점에 대하여 라인들에 대응하는 벡터들의 방향 데이터는 각 시점에 대하여 수어 동영상으로부터 포인트들 및 라인들을 생성하는 단계(110)로부터 얻은 포인트들 및 라인들을 분할 시점들로 분할하고, 분할된 라인들에 대응하는 벡터들의 방향 데이터를 추출함으로써 얻어질 수 있다.
다음으로, 시간에 걸친 벡터들의 방향 데이터가 텍스트로 변환될 수 있다(130). 시간에 걸친 벡터들의 방향 데이터를 텍스트로 변환하는 단계(130)는 이웃한 분할 시점 사이의 시구간에 걸친 벡터들의 방향 데이터를 단어로 변환하는 단계(131C) 및 단어들을 문장으로 구성하는 단계(132C)를 포함할 수 있다. 예를 들어, 제1 시구간(t1 내지 t15)에 걸친 벡터들의 방향 데이터(D1a)는 제1 단어로 변환될 수 있고, 제2 시구간(t17 내지 t23)에 걸친 벡터들의 방향 데이터(D1b)는 제2 단어로 변환될 수 있고, 제3 시구간(t25 내지 t29)에 걸친 벡터들의 방향 데이터(D1c)는 제3 단어로 변환될 수 있고, 제4 시구간(t31 내지 tn-1)에 걸친 벡터들의 방향 데이터(D1d)는 제4 단어로 변환될 수 있다. 다음으로, 제1 단어 내지 제3 단어가 첫번째 문장으로 구성될 수 있다. 제4 단어는 두번째 문장으로 구성될 수 있다.
이웃한 분할 시점 사이의 시구간에 걸친 벡터들의 방향 데이터를 단어로 변환하는 단계(131C)는 도 5 및 도 6을 참조하여 설명한 시간에 걸친 벡터들의 방향 데이터를 텍스트로 변환하는 단계(130)에 사용된 방법을 사용하여 수행될 수 있다. 도 6에서, 다층 퍼셉트론(MP2, 도 6 참조)은 추상화된 데이터(D5)를 복수의 단어 중 하나로 분류할 수 있다.
단어들을 문장으로 구성하는 단계(132C)는 단순히 단어들을 나열하는 단계, 복수의 가능한 문장 중 하나로 분류하는 단계, 또는 자연스러운 문장을 생성하는 단계를 포함할 수 있다. 일부 실시예에서, 자연스러운 문장을 생성하거나 복수의 가능한 문장 중 하나로 분류하기 위해 자연어 생성 기술이 사용될 수 있다. 일부 실시예에서, 단어들을 문장으로 구성하는 단계(132C)에는 인공 신경망 기반 자연어 생성 기술이 사용될 수 있다.
도 9는 본 개시의 실시예들에 따른 수어 인식 장치(200)를 나타낸 블록도이다.
도 9를 참조하면, 수어 인식 장치(200)는 포인트 및 라인 생성부(210), 제1방향 데이터 추출부(240), 및 텍스트 변환부(250)를 포함할 수 있다. 일부 실시예에서, 수어 인식 장치(200)는 제1 중요 포인트 선택부(230)를 더 포함할 수 있다. 일부 실시예에서, 수어 인식 장치(200)는 분할부(220)를 더 포함할 수 있다. 일부 실시예에서, 수어 인식 장치(200)는 제2 중요 포인트 선택부(231) 및 제2 방향 데이터 추출부(241)를 더 포함할 수 있다.
포인트 및 라인 생성부(210)는 수어 동영상을 수신할 수 있다. 포인트 및 라인 생성부(210)는 각 시점에 대하여 수어 동영상으로부터 포인트들 및 라인들을 생성하도록 구성될 수 있다. 포인트들 및 라인들을 생성하기 위해 인간 포즈 추정을 위한 인공 신경망, 예를 들어, DeepPose, DeepCut, RMPE(Regional Multi-Person Pose Estimation), OpenPose, Densepose, Alphapose, PoseNet, 등이 사용될 수 있다. 포인트 및 라인 생성부(210)는 포인트들 및 라인들을 제1 중요 포인트 선택부(230) 또는 제1 방향 데이터 추출부(240)로 출력할 수 있다.
제1 중요 포인트 선택부(230)는 포인트들 및 라인들을 수신할 수 있다. 제1 중요 포인트 선택부(230)는 포인트들 중 중요 포인트들을 선택할 수 있고 중요 포인트들 사이의 중요 라인들을 생성할 수 있다. 제1 중요 포인트 선택부(230)는 중요 포인트들 및 중요 라인들을 방향 데이터 추출부(240)로 출력할 수 있다.
제1 방향 데이터 추출부(240)는 포인트 및 라인 생성부(210)로부터 포인트들 및 라인들을 수신하거나 중요 포인트 선택부(230)로부터 중요 포인트를 및 중요 라인들을 수신할 수 있다. 제1 방향 데이터 추출부(240)는 라인들에 대응하는 벡터들의 방향 데이터를 추출하거나 중요 라인들에 대응하는 중요 벡터들의 방향 데이터를 추출하도록 구성될 수 있다. 제1 방향 데이터 추출부(240)는 벡터들의 방향 데이터 또는 중요 벡터들의 방향 데이터를 분할부(220) 또는 텍스트 변환부(250)로 출력할 수 있다.
분할부(220)는 특정 포즈에 대응하는 분할 시점들을 찾을 수 있다. 분할부(220)는 방향 데이터로부터 특정 포즈에 대응하는 분할 시점을 찾기 위해 인공 신경망, 예를 들어 다층 퍼셉트론을 포함할 수 있다. 일부 실시예에서, 분할부(220)는 제1 방향 데이터 추출부(240)로부터 방향 데이터를 수신하여 방향 데이터로부터 특정 포즈에 대응하는 분할 시점을 찾을 수 있다. 분할부(220)는 분할 시점들에 의해 분할된 포인트 및 라인을 제2 중요 포인트 선택부(231)로 출력할 수 있다. 분할 시점들에 의해 분할된 포인트 및 라인이란, 이웃한 분할 시점 사이의 각 시점에 대한 포인트들 및 라인들을 의미한다.
제2 중요 포인트 선택부(231)는 분할된 포인트들 및 라인들을 분할부(220)로부터 수신할 수 있다. 제2 중요 포인트 선택부(231)는 이웃한 분할 시점 사이의 각각의 시점에서 포인트들 및 라인들로부터 중요 포인트들 및 중요 라인들을 선택함으로써 분할된 중요 포인트들 및 중요 라인들을 추출할수 있다. 여기서 분할된 중요 포인트들 및 중요 라인들은 이웃한 분할 시점 사이의 각 시점에 대한 중요 포인트들 및 중요 라인들을 의미한다. 제2 중요 포인트 선택부(231)는 분할된 중요 포인트 및 중요 라인을 제2 방향 데이터 추출부(241)로 출력할 수 있다.
제2 방향 데이터 추출부(241)는 제2 중요 포인트 선택부(231)로부터 분할된 중요 포인트 및 중요 라인을 수신할 수 있다. 제2 방향 데이터 추출부(241)는 분할된 중요 포인트 및 중요 라인으로부터 분할된 방향 데이터를 추출할 수 있다. 분할된 방향 데이터는 이웃한 분할 시점 사이의 각 시점에 대한 방향 데이터를 의미한다. 제2 방향 데이터 추출부(241)는 분할된 방향 데이터를 텍스트 변환부(250)로 출력할 수 있다.
텍스트 변환부(250)는 제1 방향 데이터 추출부(240)로부터 방향 데이터를 수신하거나 제2 방향 데이터 추출부(241)로부터 분할된 방향 데이터를 수신할 수 있다. 텍스트 변환부(250)은 방향 데이터 또는 분할된 방향 데이터를 텍스트로 변환하도록 구성될 수 있다. 방향 데이터를 텍스트로 변환하기 위한 인공 신경망이 사용될 수 있다. 예를 들어, 텍스트 변환부(250)는 포즈 데이터 추출부(251), 추상화부(252), 단어 변환부(253), 및 문장 구성부(254)를 포함할 수 있다.
포즈 데이터 추출부(251)는 제1 방향 데이터 추출부(240)로부터 방향 데이터를 수신하거나 제2 방향 데이터 추출부(241)로부터 분할된 방향 데이터를 수신할 수 있다. 포즈 데이터 추출부(251)는 방향 데이터 또는 분할된 방향 데이터로부터 포즈 데이터를 추출할 수 있다. 예를 들어 포즈 데이터 추출부(251)는 방향 데이터로부터 포즈 데이터를 추출하기 위해 인공신경망, 예를 들어 퍼셉트론을 포함할 수 있다. 포즈 데이터 추출부(251)는 포즈 데이터를 추상화부(252)로 출력할 수 있다.
추상화부(252)는 포즈 데이터 추출부(251)로부터 포즈 데이터를 수신할 수 있다. 추상화부(252)는 이웃한 분할 시점 사이의 시구간에 걸친 벡터들의 포즈 데이터를 추상화하도록 구성될 수 있다. 예를 들어, 추상화부(252)는 포즈 데이터를 시간 축을 따른 1차원 컨벌루션에 의해 추상화할 수 있다. 추상화부(252)는 인공 신경망, 예를 들어 컨벌루션 신경망을 포함할 수 있다. 추상화부(252)는 단어 변환부(253)로 추상화된 데이터를 출력할 수 있다.
단어 변환부(253)는 추상화부(252)로부터 추상화된 데이터를 수신할 수 있다. 단어 변환부(253)는 추상화된 데이터를 단어로 변환하도록 구성될 수 있다. 단어 변환부(253)는 추상화된 데이터를 단어로 변환하기 위해 인공 신경망, 예를 들어 다층 퍼셉트론을 포함할 수 있다. 단어 변환부(253)는 단어를 문장 구성부(254)로 출력할 수 있다.
문장 구성부(254)는 단어 변환부(253)로부터 단어들을 차례로 수신할 수 있다. 문장 구성부(254)는 단어들을 문장으로 구성하도록 구성될 수 있다. 문장 구성부(254)는 단순히 단어들을 나열하거나, 단어들을 복수의 가능한 문장 중 하나로 분류하거나, 단어들로부터 자연스러운 문장을 생성할 수 있다. 단어들로부터 자연스러운 문장을 생성하기 위해 인공 신경망, 예를 들어 순환 신경망, 장단기 기억망 등이 사용될 수 있다. 문장 구성부(254)는 문장을 출력할 수 있다. 적어도 하나의 문장은 텍스트로서 출력될 수 있다.
일부 실시예에서, 텍스트 변환부(250)는 단어 변환부(253) 및 문장 구성부(254) 대신 문장 변환부(미도시)를 포함할 수 있다. 문장 변환부(미도시)는 추상화된 데이터를 추상화부(252)로부터 수신하여 추상화된 데이터를 문장으로 바로 변환할 수 있다. 즉 텍스트 변환부(250)는 문장 단위로 방향 데이터를 텍스트로 변환할 수 있다.
일부 실시예에서, 분할부(220)는 방향 데이터로부터 특정 포즈에 대응하는 분할 시점들을 찾고 분할된 방향 데이터를 생성할 수 있다. 분할부(220)는 분할된 방향 데이터를 텍스트 변환부(250)로 바로 출력할 수 있다. 제2 중요 포인트 선택부(231) 및 제2 방향 데이터 추출부(241)는 생략될 수 있다.
일부 실시예에서, 수어 인식 장치(200)는 컴퓨터, 서버, 웨어러블 전자 기기, 휴대용 전자기기, 등 기억 장치와 연산 장치를 포함하는 임의의 전자 장치에 구현될 수 있다. 상기 웨어러블 전자 기기는 스마트 장갑, 스마트 안경, 스마트 시계,또는 이들의 조합을 포함할 수 있다. 상기 휴대용 전자기기는 예를 들어 스마트폰, 테블릿 PC, 또는 이들의 조합을 포함할 수 있다. 상기 기억 장치는 램(RAM), 롬(ROM), 하드디스크, CD-ROM, 플래쉬메모리, 또는 이들의 조합을 포함할 수 있다. 상기 연산 장치는 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 어플리케이션 프로세서(AP), 또는 이들의 조합을 포함할 수 있다.
일부 실시예에서, 수어 인식 장치(200)는 복수의 전자 장치에 걸쳐 구현될 수 있다. 예를 들어, 포인트 및 라인 생성부(210), 제1 중요 포인트 선택부(230), 제1 방향 데이터 추출부(240), 및 분할부(220)는 클라이언트 측 전자 장치에 구현될 수 있고, 제2 중요 포인트 선택부(230), 제2 방향 데이터 추출부(240) 및 텍스트 변환부(250)는 서비스 제공자 측 전자 장치에서 구현될 수 있다. 분할된 포인트 및 라인이 클라이언트 측 전자 장치로부터 서비스 제공자 측 전자 장치로 전달되므로 서비스 제공가 측 전자 장치의 계산 부담이 감소될 수 있다.
다른 실시예에서, 포인트 및 라인 생성부(210)는 클라이언트 측 전자 장치에 구현될 수 있고, 제1 중요 포인트 선택부(230), 제1 방향 데이터 추출부(240), 분할부(220), 및 텍스트 변환부(250)는 서비스 제공자 측 전자 장치에서 구현될 수 있고, 제2 중요 포인트 선택부(231) 및 제2 방향 데이터 추출부(241)는 생략될 수 있다. 다른 실시예에서, 포인트 및 라인 생성부(210), 제1 중요 포인트 선택부(230), 제1 방향 데이터 추출부, 및 분할부(220)는 클라인트 측 전자 장치에 구현될 수 있다. 텍스트 변환부(250)는 서비스 제공자 측 전자 장치에서 구현될 수 있고, 제2 중요 포인트 선택부(231) 및 제2 방향 데이터 추출부(241)는 생략될 수 있다.
도 10은 본 개시의 실시예들에 따른 수어 인식 방법을 포함하는 농인 교육 방법(300)을 나타낸 흐름도이다.
도 10을 참조하면, 농인 교육 방법(300)은 제1 사용자 및 제2 사용자에게 컨텐츠를 출력하는 단계(310), 제1 사용자로부터 수어 동영상을 수신하는 단계(320), 수어 동영상을 제1 텍스트로 변환하는 단계(330), 제1 텍스트를 제1 음성으로 변환하는 단계(340), 제2 사용자에게 제1 음성을 출력하는 단계(350), 제2 사용자로부터 제2 음성을 수신하는 단계(360), 제2 음성을 제2 텍스트로 변환하는 단계(370), 및 제1 사용자에게 제2 텍스트를 출력하는 단계(380)를 포함할 수 있다.
먼저, 컨텐츠가 제1 사용자 및 제2 사용자에게 출력될 수 있다(310). 제1 사용자는 말하는 것과 듣는 것 중 적어도 하나가 어려운 농인일 수 있고, 제2 사용자는 들을 수 있고 말할 수 있는 강사일 수 있다. 컨텐츠는 농인을 교육시키기 위한 내용을 포함할 수 있다.
제1 사용자는 컨텐츠를 보며 떠오른 질문을 제2 사용자에게 묻거나 컨텐츠 내에 포함된 질문에 대한 답을 제2 사용자에게 제공하고자 할 수 있다. 제1 사용자는 수어를 통해 제2 사용자에게 질문을 하거나 답변을 할 수 있다. 제1 사용자를 촬영함으로써 수어 동영상이 생성될 수 있다. 농인 교육 시스템은 제1 사용자로부터 수어 동영상을 수신할 수 있다(320).
다음으로, 수어 동영상은 제1 텍스트로 변환될 수 있다(330). 수어 동영상은 예를 들어 도 1 내지 도 8을 참조하여 설명한 수어 인식 방법들(100, 100A, 100B, 100C)에 의해 제1 텍스트로 변환될 수 있다(330).
제1 텍스트는 제1 음성으로 변환될 수 있다(340). 음성 합성을 위해 조음 합성(articulatory synthesis), 포먼트 합성(Formant synthesis), 연결 합성(Concatenative synthesis), 통계기반 파라미터 합성(statistical parametric speech synthesis), 또는 인공 신경망이 사용될 수 있다. 연결 합성은 USS(Unit selection synthesis)라고 불리기도 한다. 연결 합성은 녹음 데이터를 잘게 나눈 유닛들 중 가장 적합한 유닛을 선택하고, 선택된 유닛들을 서로 연결함으로써 음성을 합성한다. 통계기반 파라미터 합성은 은닉 마르코프 모델(HMM)과 같은 모델로부터 파라미터를 생성하고, 파라미터로부터 신호 처리를 통해 음성을 합성한다. 인공 신경망은 예를 들어 WaveNet, tacotron, 또는 tacotron2을 포함할 수 있다.
다음으로, 제2 사용자에게 제1 음성이 출력될 수 있다(350). 제2 사용자는 제1 음성을 듣고 이에 대한 답변 또는 질문을 하고자 할 수 있다. 제2 사용자는 제2 음성을 말함으로써 답변 또는 질문을 할 수 있다. 농인 교육 시스템은 제2 사용자로부터 제2 음성을 수신할 수 있다(360).
제2 음성은 제2 텍스트로 변환될 수 있다(370). 이후 제1 사용자에게 제2 텍스트가 출력될 수 있다(380). 제2 음성을 제2 텍스트로 변환하기 위해, 예를 들어 제2 음성으로부터 특징을 추출하고, 추출된 특징으로부터 음소, 음절, 및 단어를 인식하고, 음소, 음절 및 단어를 재구성해 문장을 복원할 수 있다.
상기 특징은 예컨대 MFCC(Mel-Frequency Cepstral Coefficient), 캡스트럼(cepstrum), LPC(Linear Predictive Coding), PLP(Perceptual Linear Predictive analysis), 또는 필터 뱅크 에너지(filter bank energy)를 포함할 수 있다. 음소, 음절, 및 단어의 인식에는 예컨대 동적 시간 워핑(Dynamic Time Warping, DTW), 지식 베이스(knowledge base), 인공 신경망이 사용될 수 있다. 인공 신경망은 예를 들어, 은닉 마르코브 모델(HMM), 완전 연결 심층 신경망(fully connected deep neural network), 또는 장단기 기억(Long Short-Term Memory, LSTM)을 포함할 수 있다. 장단기 기억 망이 사용되는 경우 기존의 다른 접근법들보다 향상된 음성인식 성능을 제공할 수 있다. 음소, 음절 및 단어를 문장으로 재구성하기 위해 구문 규칙(syntactic) 모델, 통계적 모델, N-gram 모델, 또는 인공 신경망 모델이 사용될 수 있다.
도 10에는 제1 사용자가 먼저 수어로 말하고 이후 제2 사용자가 음성으로 말하는 실시예가 도시된다. 그러나, 다른 실시예에서, 제2 사용자가 제1 사용자에게 먼저 음성으로 말하고, 이후 제1 사용자가 수어로 말할 수 있다. 즉, 제1 사용자로부터 수어 동영상을 수신하는 단계(320), 수어 동영상을 제1 텍스트로 변환하는 단계(330), 제1 텍스트를 제1 음성으로 변환하는 단계(340), 및 제2 사용자에게 제1 음성을 출력하는 단계(350)는 제1 사용자에게 제2 텍스트를 출력하는 단계(380) 후에 수행될 수 있다.
본 개시에 따른 농인 교육 방법(300)은 농인-비농인 대화 방법으로 변형 실시될 수 있다. 예를 들어, 제1 사용자 및 제2 사용자에게 컨텐츠를 출력(310)하는 단계는 생략될 수 있다. 제1 사용자는 농인이고 제2 사용자는 비농인일 수 있다. 제1 사용자의 의사는 제1 사용자로부터 수어 동영상을 수신하는 단계(320), 수어 동영상을 제1 텍스트로 변환하는 단계(330), 제1 텍스트를 제1 음성으로 변환하는 단계(340), 및 제2 사용자에게 제1 음성을 출력하는 단계(350)를 통해 제2 사용자에게 전달될 수 있다. 제2 사용자의 의사는 제2 사용자로부터 제2 음성을 수신하는 단계(360), 제2 음성을 제2 텍스트로 변환하는 단계(370), 및 제1 사용자에게 제2 텍스트를 출력하는 단계(380)를 통해 제1 사용자에게 전달될 수 있다.
도 11은 본 개시의 실시예들에 따른 수어 인식 장치를 포함하는 농인 교육 시스템(400)을 나타낸 블록도이다.
도 11을 참조하면, 농인 교육 시스템(400)은 컨텐츠 제공부(410), 수어 동영상 입력부(421), 수어 인식부(422), 음성 합성부(423), 음성 출력부(424), 음성 입력부(431), 음성 인식부(432), 및 텍스트 출력부(433)를 포함할 수 있다.
컨텐츠 제공부(410)는 제1 사용자(U1) 및 제2 사용자(U2)에게 콘텐츠를 제공할 수 있다. 컨텐츠 제공부(410)는 각각 제1 출력 장치(B1) 및 제2 출력 장치(B3)를 통해 제1 사용자(U1) 및 제2 사용자(U2)에게 콘텐츠를 제공할 수 있다. 도 11에는 제1 출력 장치(B1) 및 제2 출력 장치(B3)가 가상현실(VR) 헤드셋들인 것으로 도시되나, 제1 출력 장치(B1) 및 제2 출력 장치(B3) 각각은 다른 전자 장치, 예를 들어, 모니터, 텔레비전 등일 수 있다. 본 개시에 따른 농인 교육 시스템(400)는 농인-비농인 대화 시스템으로 변형 실시될 수 있다. 예를 들어, 컨텐츠 제공부(410)는 생략될 수 있다.
수어 동영상 입력부(421)는 제1 사용자(U1)로부터 수어 동영상을 수신할 수 있다. 수어 동영상 입력부(421)는 제1 입력 장치(B2)를 통해 제1 사용자(U1)로부터 수어 동영상을 수신할 수 있다. 제1 입력 장치(B2)는 제1 사용자(U1)의 수어로부터 수어 동영상을 생성할 수 있다. 제1 입력 장치(B2)는 다양한 종류의 카메라, 또는 동영상을 생성할 수 있는 임의의 전자 장치일 수 있다. 수어 동영상 입력부(421)는 수어 인식부(422)로 수어 동영상을 출력할 수 있다.
수어 인식부(422)는 수어 동영상 입력부(421)로부터 수어 동영상을 수신할 수 있다. 수어 인식부(422)는 수어 동영상을 제1 텍스트로 변환할 수 있다. 수어 인식부(422)는 도 9를 참조하여 설명한 수어 인식 장치(200)를 포함할 수 있다. 수어 인식부(422)는 제1 텍스트를 음성 합성부(423)로 출력할 수 있다.
음성 합성부(423)는 수어 인식부(422)로부터 제1 텍스트를 수신할 수 있다. 음성 합성부(423)는 제1 텍스트를 제1 음성으로 변환할 수 있다. 음성 합성부(423)는 제1 음성을 음성 출력부(424)로 출력할 수 있다.
음성 출력부(424)는 제1 음성을 음성 합성부(423)로부터 수신할 수 있다. 음성 출력부(424)는 제1 음성을 제2 사용자에게 출력할 수 있다. 예를 들어 음성 출력부(424)는 제2 출력 장치(B3)를 통해 제2 사용자에게 제1 음성을 출력할 수 있다. 도 11에는 제2 출력 장치(B3)가 가상현실(VR) 헤드셋인 것으로 도시되었으나, 제2 출력 장치(B3)는 모니터와 헤드셋 세트, 모니터와 스피커 세트, 텔레비전과 같이 임의의 시각 출력 장치와 음성 출력 장치의 조합을 포함할 수 있다.
음성 입력부(431)는 제2 사용자(U2)로부터 제2 음성을 수신할 수 있다. 예를 들어, 음성 입력부(431)는 제2 입력 장치(B4), 예를 들어 마이크를 통해 제2 사용자(U2)로부터 제2 음성을 수신할 수 있다. 음성 입력부(431)는 음성 인식부(432)로 제2 음성을 출력할 수 있다.
음성 인식부(432)는 음성 입력부(431)로부터 제2 음성을 수신할 수 있다. 음성 인식부(432)는 제2 음성을 제2 텍스트로 변환할 수 있다. 예를 들어 음성 인식부(432)는 입력 음성으로부터 특징을 추출하는 전처리부, 추출된 특징으로부터 음소, 음절, 및 단어를 인식하는 음성-텍스트 변환부, 및 음소, 음절, 단어를 재구성해 문장을 복원하는 텍스트 후처리부를 포함할 수 있다. 음성 인식부(432)는 제2 텍스트를 텍스트 출력부(433)로 출력할 수 있다.
텍스트 출력부(433)는 음성 인식부(432)로부터 제2 텍스트를 수신할 수 있다. 텍스트 출력부(433)는 제1 사용자에게 제2 텍스트를 출력할 수 있다. 예를 들어 텍스트 출력부(433)는 제1 출력 장치(B1)를 통해 제1 사용자에게 제2 텍스트를 출력할 수 있다. 예를 들어 제2 텍스트는 영상의 자막으로 제공될 수 있다.
일부 실시예에서, 농인 교육 시스템(400)은 컴퓨터, 서버, 웨어러블 전자 기기, 휴대용 전자기기, 등 기억 장치와 연산 장치를 포함하는 임의의 전자 장치에 구현될 수 있다. 상기 웨어러블 전자 기기는 스마트 장갑, 스마트 안경, 스마트 시계,또는 이들의 조합을 포함할 수 있다. 상기 휴대용 전자기기는 예를 들어 스마트폰, 테블릿 PC, 또는 이들의 조합을 포함할 수 있다. 상기 기억 장치는 램(RAM), 롬(ROM), 하드디스크, CD-ROM, 플래쉬메모리, 또는 이들의 조합을 포함할 수 있다. 상기 연산 장치는 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 어플리케이션 프로세서(AP), 또는 이들의 조합을 포함할 수 있다.
일부 실시예에서, 농인 교육 시스템(400)은 복수의 전자 장치에 걸쳐 구현될 수 있다. 예를 들어, 수어 동영상 입력부(421), 텍스트 출력부(433), 및 수어 인식부(422)의 일부는 제1 사용자 측 전자 장치에 구현될 수 있고, 음성 출력부(424) 및 음성 입력부(431)는 제2 사용자 측 전자 장치에 구현될 수 있고, 컨텐츠 제공부(410)는 서비스 제공자 측 제1 서버에서 구현될 수 있고, 수어 인식부(422)의 나머지 부분, 음성 합성부(423), 및 음성 인식부(432)는 서비스 제공자 측 제2 서버에서 구현될 수 있다. 다른 실시예에서, 수어 인식부(422) 전체가 서비스 제공자 측 제2 서버에서 구현될 수 있다.
본 개시에 개시된 실시예들은 본 개시의 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 개시의 기술 사상의 범위가 한정되는 것은 아니다. 본 개시의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 개시의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100, 100A, 100B, 100C: 수어 인식 방법, P: 포인트, PP: 중요 포인트, L: 라인, LL: 중요 라인, V: 벡터, VV: 중요 벡터, D1: 방향 데이터, D2: 포즈 데이터, D3, D4, D5: 추상화된 데이터, D6: 결과 데이터, MP1, MP2: 다층 퍼셉트론, W: 텍스트, 200: 수어 인식 장치, 300: 농인 교육 방법, 400: 농인 교육 시스템

Claims (10)

  1. 각 시점에 대하여 수어 동영상으로부터 화자의 신체 부위에 대응하는 포인트들, 및 신체 부위들 사이의 연결 관계를 나타내며 상기 포인트들 사이를 연결하는 라인들을 생성하는 단계;
    각 시점에 대하여 상기 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계; 및
    시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계;를 포함하며,
    시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는,
    각 시점의 상기 벡터들의 방향 데이터로부터 각 시점의 포즈(pose) 데이터를 추출하는 단계; 및
    시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계;를 포함하고,
    시간에 걸친 포즈 데이터를 텍스트로 변환하는 단계는,
    시간 축을 따른 1차원 컨벌루션(convolution)을 사용하여, 시간에 걸친 포즈 데이터를 시간 축을 따라 추상화함으로써 추상화된 데이터를 추출하는 단계; 및
    다층 퍼셉트론을 사용하여, 상기 추상화된 데이터를 텍스트로 변환하는 단계;를 포함하는 것을 특징으로 하는 수어 인식 방법.
  2. 제1 항에 있어서,
    상기 벡터들의 방향 데이터는 상기 벡터들과 관련된 각도들의 코사인(cosine) 값들 및 상기 벡터들과 관련된 각도들의 사인(sine) 값들을 포함하는 수어 인식 방법.
  3. 제1 항에 있어서,
    상기 각 시점에 대하여 상기 라인들에 대응하는 벡터들의 방향 데이터를 추출하는 단계는,
    상기 포인트들 중 중요 포인트들을 선택하는 단계; 및
    각 시점에 대하여 상기 중요 포인트들 사이를 연결하는 중요 라인들에 대응하는 중요 벡터들의 방향 데이터를 추출하는 단계를 포함하고,
    시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는
    시간에 걸친 상기 중요 벡터들의 방향 데이터를 텍스트로 변환하는 단계인 것을 특징으로 하는 수어 인식 방법.
  4. 제3 항에 있어서,
    상기 중요 포인트들 각각은 어깨의 부위들, 팔의 부위들, 손의 부위들, 및 입의 부위들 중 하나에 대응하는 것을 특징으로 하는 수어 인식 방법.
  5. 삭제
  6. 제1 항에 있어서,
    각 시점의 상기 벡터들의 방향 데이터로부터 각 시점의 포즈 데이터를 추출하는 단계는,
    다층 퍼셉트론(multi-layer perceptron)을 사용하는 것을 특징으로 하는 수어 인식 방법.
  7. 삭제
  8. 삭제
  9. 제1 항에 있어서,
    특정 포즈에 대응하는 분할 시점들을 찾는 단계를 더 포함하고,
    상기 시간에 걸친 상기 벡터들의 방향 데이터를 텍스트로 변환하는 단계는,
    이웃한 분할 시점 사이의 시구간에 걸친 벡터들의 방향 데이터를 단어로 변환하는 단계; 및
    단어들을 문장으로 구성하는 단계를 포함하는 것을 특징으로 하는 수어 인식 방법.
  10. 제9 항에 있어서,
    상기 특정 포즈는 단어와 단어 사이임을 나타내는 포즈 및 문장의 끝임을 나타내는 포즈 중 적어도 하나를 포함하는 것을 특징으로 하는 수어 인식 방법.
KR1020200188065A 2020-12-30 2020-12-30 수어 인식 방법 KR102550750B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200188065A KR102550750B1 (ko) 2020-12-30 2020-12-30 수어 인식 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200188065A KR102550750B1 (ko) 2020-12-30 2020-12-30 수어 인식 방법

Publications (2)

Publication Number Publication Date
KR20220097673A KR20220097673A (ko) 2022-07-08
KR102550750B1 true KR102550750B1 (ko) 2023-07-04

Family

ID=82407575

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200188065A KR102550750B1 (ko) 2020-12-30 2020-12-30 수어 인식 방법

Country Status (1)

Country Link
KR (1) KR102550750B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101988037B1 (ko) * 2018-05-24 2019-06-11 변재형 시각 및 청각 장애인과 일반인 간의 상호소통을 위한 특수행동인식 서비스 제공 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020088290A (ko) * 2001-05-21 2002-11-27 (주)애드임팩트 가상현실용 장갑을 이용한 수화 자동번역장치
KR20190115509A (ko) * 2018-03-15 2019-10-14 전자부품연구원 자동 수어 인식 방법 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101988037B1 (ko) * 2018-05-24 2019-06-11 변재형 시각 및 청각 장애인과 일반인 간의 상호소통을 위한 특수행동인식 서비스 제공 방법

Also Published As

Publication number Publication date
KR20220097673A (ko) 2022-07-08

Similar Documents

Publication Publication Date Title
CN113408385B (zh) 一种音视频多模态情感分类方法及系统
Czyzewski et al. An audio-visual corpus for multimodal automatic speech recognition
Katsaggelos et al. Audiovisual fusion: Challenges and new approaches
CN111276120B (zh) 语音合成方法、装置和计算机可读存储介质
US7636662B2 (en) System and method for audio-visual content synthesis
JP6019108B2 (ja) 文字に基づく映像生成
CN115329779B (zh) 一种多人对话情感识别方法
JP2014519082A5 (ko)
KR20200027331A (ko) 음성 합성 장치
Ivanko et al. Multimodal speech recognition: increasing accuracy using high speed video data
Goto et al. Face2Speech: Towards Multi-Speaker Text-to-Speech Synthesis Using an Embedding Vector Predicted from a Face Image.
WO2023046016A1 (en) Optimization of lip syncing in natural language translated video
Shimba et al. Talking heads synthesis from audio with deep neural networks
Klaylat et al. Enhancement of an Arabic speech emotion recognition system
KR102550750B1 (ko) 수어 인식 방법
CN116631434A (zh) 基于转换系统的视频语音同步方法、装置、电子设备
Zoric et al. A real-time lip sync system using a genetic algorithm for automatic neural network configuration
KR20210086744A (ko) 딥러닝 기반의 영상 컨텐츠 제작 방법 및 장치
Reddy et al. Indian sign language generation from live audio or text for tamil
Zorić et al. Real-time language independent lip synchronization method using a genetic algorithm
CN114360491A (zh) 语音合成方法、装置、电子设备及计算机可读存储介质
Mahavidyalaya Phoneme and viseme based approach for lip synchronization
Fernandez-Lopez et al. Optimizing phoneme-to-viseme mapping for continuous lip-reading in spanish
Shih et al. Speech-driven talking face using embedded confusable system for real time mobile multimedia
Kiran Reddy et al. DNN-based cross-lingual voice conversion using Bottleneck Features

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