KR102204582B1 - 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 - Google Patents
피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 Download PDFInfo
- Publication number
- KR102204582B1 KR102204582B1 KR1020190035514A KR20190035514A KR102204582B1 KR 102204582 B1 KR102204582 B1 KR 102204582B1 KR 1020190035514 A KR1020190035514 A KR 1020190035514A KR 20190035514 A KR20190035514 A KR 20190035514A KR 102204582 B1 KR102204582 B1 KR 102204582B1
- Authority
- KR
- South Korea
- Prior art keywords
- joint angle
- frame
- image
- joint
- reference points
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/45—For evaluating or diagnosing the musculoskeletal system or teeth
- A61B5/4528—Joints
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/0059—Measuring for diagnostic purposes; Identification of persons using light, e.g. diagnosis by transillumination, diascopy, fluorescence
- A61B5/0077—Devices for viewing the surface of the body, e.g. camera, magnifying lens
-
- G06K9/00926—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/50—Maintenance of biometric data or enrolment thereof
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Veterinary Medicine (AREA)
- Public Health (AREA)
- Animal Behavior & Ethology (AREA)
- Surgery (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Heart & Thoracic Surgery (AREA)
- Pathology (AREA)
- Biomedical Technology (AREA)
- Rheumatology (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Dentistry (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
본 개시서에는 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치가 개시된다. 구체적으로, 본 개시서의 방법에 의하면, 컴퓨팅 장치가, 상기 관절이 촬영된 영상을 획득하여, 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)을 검출하고, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하며, 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출한다.
Description
본 개시서에는 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치가 개시된다. 구체적으로, 본 개시서의 방법에 의하면, 컴퓨팅 장치가, 상기 관절이 촬영된 영상을 획득하여, 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)을 검출하고, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하며, 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출한다.
종래의 관절각의 측정 방식은 도 1에 예시된 바와 같이 참조점(reference point)을 수동으로 지정해 주거나 각도기 등을 이용하여 물리적으로 각도를 측정한 것으로서 한계를 지닌다.
따라서 본 개시서에서는 참조점을 자동으로 검출하여, 측정이 시작된 참조점의 위치를 기반으로 관절이 굴신한 각도인 관절각을 효율적으로 측정할 수 있는 관절각 측정 방법 및 이를 이용한 장치를 제안하고자 한다.
본 개시서는 단일 영상이 아닌 연속적으로 얻어지는 영상 프레임들을 이용하여 실시간으로 관절각을 정확하고 효과적으로 측정하는 방안을 제시하는 것을 목적으로 한다.
본 개시서는 다양한 조명 환경 및 색 변화에 대해서도 강건한(robust) 결과를 얻을 수 있는 방안을 제시하는 것을 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.
본 개시서의 일 태양에 따르면, 피검체(subject)의 제1 골부와 제2 골부를 잇는 관절의 관절각을 측정하는 방법이 제공되는바, 그 방법은, (a) 컴퓨팅 장치가, 상기 관절이 촬영된 영상을 획득하거나 상기 컴퓨팅 장치에 연동되는 타 장치로 하여금 상기 관절이 촬영된 영상을 획득하도록 지원하는 단계; (b) 상기 컴퓨팅 장치가, 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)을 검출하거나 상기 타 장치로 하여금 상기 다수의 참조점을 검출하도록 지원하는 단계; (c) 상기 컴퓨팅 장치가, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하거나 상기 타 장치로 하여금 상기 이동된 위치를 도출하도록 지원하는 단계; 및 (d) 상기 컴퓨팅 장치가, 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출하거나 상기 타 장치로 하여금 상기 관절각을 산출하도록 지원하는 단계를 포함한다.
일 실시 예에서는, 상기 관절각의 측정 행위가 종료될 때까지 상기 (a) 단계 내지 상기 (c) 단계가 연속적으로 반복 수행된다.
바람직하게는, 상기 참조점은 코너(corner)일 수 있다. 이 경우, 상기 (b) 단계에서는, 해리스 코너 검출(Harris corner detection) 방식이 적용될 수 있다.
유리하게는, 상기 (c) 단계에서 피라미드 루카스-카나데(Pyramid Lucas-Kanade) 방식으로 희소(sparse) 광학 흐름이 추적될 수 있다.
다른 실시 예에서, 상기 (d) 단계에서, 상기 다수의 참조점에 대한 평균 지점을 기준으로 상기 제1 골부를 대표하는 제1 대표지점 및 상기 제2 골부를 대표하는 제2 대표지점을 산출함으로써 상기 제1 대표지점에 대한 제2 대표지점의 위치 관계에 기초하여 상기 관절각이 산출될 수 있다.
한편, 상기 (a) 단계는, 상기 컴퓨팅 장치가, 획득된 상기 영상을 전처리하거나 상기 타 장치로 하여금 상기 영상을 전처리하도록 지원하는 단계를 포함할 수 있다.
본 발명의 다른 태양에 따르면, 본 발명에 따른 방법을 수행하도록 구현된 인스트럭션들(instructions)을 포함하는 컴퓨터 프로그램도 제공된다.
본 발명의 또 다른 태양에 따르면, 피검체의 제1 골부와 제2 골부를 잇는 관절의 관절각을 측정하는 컴퓨팅 장치가 제공되는바, 그 장치는, 상기 관절이 촬영된 영상을 획득하는 통신부; 및 참조점 검출 모듈을 통하여 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점을 검출하는 제1 프로세스, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하는 제2 프로세스, 및 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출하는 제3 프로세스를 수행하거나 상기 통신부를 통하여 연동되는 타 장치로 하여금 수행하도록 지원하는 프로세서를 포함한다.
본 개시서의 예시적인 실시 예에 따르면, 관절각을 측정할 때 이용되는 참조점이 자동으로 지정되고, 각도기 등을 이용하여 물리적으로 각도를 측정하지 않아도 되는 편의적 효과가 있다.
특히, 예시적인 실시 예에 따르면, 단일 영상이 아닌 실시간 영상 프레임에 관하여 추적이 수행됨으로써 다양한 조명 환경 및 색 변화에 강건(robust)한 추적이 가능해지는 효과가 있다.
본 발명의 실시 예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시 예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 사람(이하 "통상의 기술자"라 함)에게 있어서는 발명에 이르는 노력 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 참조점을 수동으로 지정하고 각도기 등을 이용하여 관절각을 물리적으로 측정하는 종래의 관절각 측정 방식을 예시적으로 나타낸 도면이다.
도 2는 본 개시서의 일 실시 예에 따라, 피검체의 관절의 관절각을 측정하는 방법(이하 "관절각 측정 방법"이라 함)을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 3은 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 수행하는 컴퓨팅 장치의 하드웨어 및 소프트웨어 아키텍처를 예시적으로 도시한 개념도이다.
도 4는 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 예시적으로 나타낸 흐름도이다.
도 5는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 검출하는 참조점으로서 코너(corner)를 개념적으로 예시한 도면이다.
도 6은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 이용되는 참조점 검출 방식이 아핀(affine) 변환에도 강건해야 함을 설명하기 위하여 나타낸 도면이다.
도 7은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 추적되는 광학 흐름을 개념적으로 예시한 도면이다.
도 8은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 광학 흐름을 추적하기 위하여 이용되는 피라미드 루카스-카나데(pyramid Lucas-Kanade) 방식을 닭의 움직임의 추적에 이용한 예시를 나타낸 도면이다.
도 9는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에 따라 추출된 코너(corner)들이 예시적으로 표시된 도면이며, 도 10은 도 9의 코너들을 추적함으로써 관절각을 계산한 예시를 나타낸 도면이다.
도 11은 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 좌우 각도가 산출되는 과정을 예시한 도면이다.
도 12는 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 상하 각도가 산출되는 과정을 예시한 도면이다.
도 1은 참조점을 수동으로 지정하고 각도기 등을 이용하여 관절각을 물리적으로 측정하는 종래의 관절각 측정 방식을 예시적으로 나타낸 도면이다.
도 2는 본 개시서의 일 실시 예에 따라, 피검체의 관절의 관절각을 측정하는 방법(이하 "관절각 측정 방법"이라 함)을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 3은 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 수행하는 컴퓨팅 장치의 하드웨어 및 소프트웨어 아키텍처를 예시적으로 도시한 개념도이다.
도 4는 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 예시적으로 나타낸 흐름도이다.
도 5는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 검출하는 참조점으로서 코너(corner)를 개념적으로 예시한 도면이다.
도 6은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 이용되는 참조점 검출 방식이 아핀(affine) 변환에도 강건해야 함을 설명하기 위하여 나타낸 도면이다.
도 7은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 추적되는 광학 흐름을 개념적으로 예시한 도면이다.
도 8은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 광학 흐름을 추적하기 위하여 이용되는 피라미드 루카스-카나데(pyramid Lucas-Kanade) 방식을 닭의 움직임의 추적에 이용한 예시를 나타낸 도면이다.
도 9는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에 따라 추출된 코너(corner)들이 예시적으로 표시된 도면이며, 도 10은 도 9의 코너들을 추적함으로써 관절각을 계산한 예시를 나타낸 도면이다.
도 11은 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 좌우 각도가 산출되는 과정을 예시한 도면이다.
도 12는 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 상하 각도가 산출되는 과정을 예시한 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시 예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
실시 예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시 예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 개시서의 상세한 설명 및 청구항들에 걸쳐 '관절'은 해부학적으로 일반적으로 이해되는 의미를 가지는 용어이며, 예를 들어 발목 또는 손목일 수 있으나 이에 한정되지 않음은 물론이다.
또한, 본 개시서의 상세한 설명 및 청구항들에 걸쳐 '관절각(joint angle)'은 관절의 굴신(bending and stretching) 각도를 지칭하는 것이다.
더욱이 본 발명은 본 명세서에 표시된 실시 예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시 예에 관련하여 본 발명의 사상 및 범위를 벗어나지 않으면서 다른 실시 예로 구현될 수 있다. 또한, 각각의 개시된 실시 예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 사상 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 명세서에서 달리 표시되거나 분명히 문맥에 모순되지 않는 한, 단수로 지칭된 항목은, 그 문맥에서 달리 요구되지 않는 한, 복수의 것을 아우른다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
이하, 통상의 기술자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시 예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 2는 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 2를 참조하면, 본 개시서의 일 실시 예에 따른 컴퓨팅 장치(200)는, 통신부(210) 및 프로세서(220)를 포함하며, 상기 통신부(210)를 통하여 외부 컴퓨팅 장치(미도시)와 직간접적으로 통신할 수 있다.
구체적으로, 상기 컴퓨팅 장치(200)는, 전형적인 컴퓨터 하드웨어(예컨대, 컴퓨터, 프로세서, 메모리, 스토리지(storage), 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS; network-attached storage) 및 스토리지 영역 네트워크(SAN; storage area network)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다. 상기 스토리지는 하드 디스크, USB(universal serial bus) 메모리와 같은 기억 장치뿐만 아니라 클라우드 서버와 같은 네트워크 연결 기반의 저장 장치의 형태를 포함할 수 있다.
이와 같은 컴퓨팅 장치의 통신부(210)는 연동되는 타 컴퓨팅 장치와의 사이에서 요청과 응답을 송수신할 수 있는바, 일 예시로서 그러한 요청과 응답은 동일한 TCP(transmission control protocol) 세션(session)에 의하여 이루어질 수 있지만, 이에 한정되지는 않는 바, 예컨대 UDP(user datagram protocol) 데이터그램(datagram)으로서 송수신될 수도 있을 것이다.
구체적으로, 통신부(210)는 통신 인터페이스를 포함하는 통신 모듈의 형태로 구현될 수 있다. 이를테면, 통신 인터페이스는 WLAN(wireless LAN), WiFi(wireless fidelity) Direct, DLNA(digital living network alliance), Wibro(wireless broadband), Wimax(world interoperability for microwave access), HSDPA(high speed downlink packet access) 등의 무선 인터넷 인터페이스와 블루투스(Bluetooth™), RFID(radio frequency identification), 적외선 통신(infrared data association; IrDA), UWB(ultra-wideband), ZigBee, NFC(near field communication) 등의 근거리 통신 인터페이스를 포함할 수 있다. 뿐만 아니라, 통신 인터페이스는 외부와 통신을 수행할 수 있는 모든 인터페이스(예를 들어, 유선 인터페이스)를 나타낼 수 있다.
예를 들어, 통신부(210)는 이와 같이 적합한 통신 인터페이스를 통해 외부로부터, 예컨대 2차원 카메라로부터 관절각 측정의 대상이 되는 피검체의 관절이 촬영된 영상의 데이터를 획득할 수 있다. 덧붙여, 넓은 의미에서 상기 통신부(210)는 인스트럭션 또는 지시 등을 전달받기 위한 키보드, 마우스, 기타 외부 입력 장치, 인쇄 장치, 디스플레이, 기타 외부 출력 장치를 포함하거나 이들과 연동될 수 있다.
또한, 컴퓨팅 장치의 프로세서(220)는 MPU(micro processing unit), CPU(central processing unit), GPU(graphics processing unit), NPU(neural processing unit) 또는 TPU(tensor processing unit), 캐시 메모리(cache memory), 데이터 버스(data bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
도 3은 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 수행하는 컴퓨팅 장치의 하드웨어 및 소프트웨어 아키텍처를 예시적으로 도시한 개념도이다.
도 3을 참조하여 본 개시서에 따른 방법 및 장치의 구성을 개관하면, 컴퓨팅 장치(200)는 그 하드웨어 구성요소 그리고/또는 소프트웨어 구성요소로서 영상 정보 획득 모듈(310)을 포함할 수 있다. 이 영상 정보 획득 모듈(310)는 2차원 카메라 등의 외부의 데이터 소스 또는 저장 장치로부터 관절이 촬영된 영상의 데이터를 획득한다.
그리고 획득된 영상의 데이터를 전달받은 참조점 검출 모듈(320)은 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)를 검출하도록 구성되고, 검출된 다수의 참조점에 대하여 광학 흐름 추적 모듈(330)은 상기 참조점의 영상 프레임 간 광학 흐름(optical flow)을 추적함으로써 참조점의 이동된 위치를 도출하도록 구성되며, 관절각 산출 모듈(340)은 참조점의 원위치와 이동된 위치에 기초하여 관절각을 산출하도록 구성된다.
영상 정보 획득 모듈(310) 내지 관절각 산출 모듈(340)을 포함하는 도 3에 도시된 개별 모듈들은, 예컨대, 컴퓨팅 장치(200)에 포함된 통신부(210), 또는 상기 통신부(210) 및 프로세서(220)의 연동에 의하여 구현될 수 있음은 통상의 기술자가 이해할 수 있을 것이다.
산출된 상기 관절각을 외부 엔티티(external entity)에 제공하도록 구성된 출력 모듈(350)이 더 포함될 수 있음은 물론이다. 여기에서 외부 엔티티라고 함은, 본 개시서에 따른 방법을 수행하는 컴퓨팅 장치(200)의 사용자, 관리자를 포함하나 이 이외에도 상기 관절각의 정보들을 필요로 하는 주체라면 어느 주체라도 포함되는 것으로 이해되어야 할 것이다. 외부 엔티티가 인간인 때에는 상기 출력 모듈(350)는 소정의 출력 장치, 예컨대 디스플레이에 표시된 사용자 인터페이스를 통하여 획득된 영상 및 상기 영상 위에 표시된 관절각의 정보 및 이를 뒷받침하는 표시를 외부 엔티티에 제공할 수 있다.
이제 도 3을 참조하여 개략적으로 설명된 각 구성요소들에 의하여 달성될 수 있는 구체적인 기능 및 효과에 관하여 도 4 내지 도 11을 참조하여 상세히 후술하기로 한다. 도 3에 나타난 구성요소들은 설명의 편의상 하나의 컴퓨팅 장치에서 실현되는 것으로 예시되었으나, 본 개시서의 방법을 수행하는 컴퓨팅 장치(200)는 복수개의 장치들이 서로 연동되도록 구성될 수도 있다는 점이 이해될 것이다. 예를 들어, 영상 정보 획득 모듈(310), 참조점 검출 모듈(320) 및 광학 흐름 추적 모듈(330)은 제1 컴퓨팅 장치인 서버에서 수행되고, 관절각 산출 모듈(340) 및 출력 모듈(350)은 제1 컴퓨팅 장치에 연동되는 제2 컴퓨팅 장치인 클라이언트에서 수행될 수 있도록 구성할 수도 있을 것인바, 통상의 기술자는 다양한 방식으로 복수개의 장치들이 서로 연동하여 본 발명의 방법을 수행하도록 구성할 수 있을 것이다.
도 4는 본 개시서의 일 실시 예에 따른 관절각 측정 방법을 예시적으로 나타낸 흐름도이다.
도 4를 참조하면, 본 발명에 따른 관절각 측정 방법은, 우선, 컴퓨팅 장치(200)에 의하여 구현되는 영상 정보 획득 모듈(310)이, 상기 피검체의 관절이 촬영된 영상을 획득하거나 통신부(210)를 통하여 상기 컴퓨팅 장치(200)에 연동되는 타 장치(미도시)로 하여금 상기 관절이 촬영된 영상을 획득하도록 지원하는 단계(S100)를 포함한다.
상기 영상은 2차원 카메라 등을 통하여 촬영되어 그 영상 정보가 컴퓨팅 장치(200)에 전달됨으로써 획득될 수 있는데, 영상을 촬영하는 카메라의 위치는 상기 피검체, 특히 관절에 대하여 고정되어 있을 수 있으나, 상대적으로 위치가 고정된 영상을 획득할 수 있는 수단(예컨대, 흔들림 보정 수단)이 제공되면 그렇지 아니하여도 무방할 것이다.
본 개시서에서의 측정 대상인 관절, 특히 손목, 발목이 움직일 때에 한하여 영상 내 움직임이 발생하는 것이 바람직할 것이다. 설명의 편의상, 본 개시서의 촬영 조건은 카메라의 위치가 고정되어 있어 관절이 움직일 때에 한하여 영상 내 움직임이 발생하는 것으로 가정하였다.
바람직하게는, 단계(S100)는, 컴퓨팅 장치(200)에 의하여 구현되는 전처리 모듈(315; 미도시)이 획득된 상기 영상을 전처리하거나 상기 타 장치로 하여금 상기 영상을 전처리하도록 지원하는 단계(S150)를 포함할 수 있다.
영상의 전처리는 미디언 필터(median filter) 등과 같이 잡음(noise)을 제거하는 기술 등이 적용될 수 있으며, 이를 통하여 영상을 선명하게 하거나 흐리게 할 수 있다. 예를 들어, 전처리는 대비(contrast)를 유지하는 히스토그램 평탄화(예컨대, CLAHE 적용)를 포함할 수 있다.
연산량을 줄이기 위한 등의 이유로 후술하는 참조점의 검출 및 광학 흐름의 추적은 그레이스케일(grayscale) 영상에 대하여 수행될 수 있는바, 출력을 위한 영상 프레임은 원본 영상으로 제공되는 한편, 실제 영상의 처리를 위하여 그레이스케일로의 변환이 전처리 중에 수행될 수도 있다.
다음으로, 본 발명에 따른 관절각 측정 방법은, 컴퓨팅 장치(200)에 의하여 구현되는 참조점 검출 모듈(320)이, 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)을 검출하거나 상기 타 장치로 하여금 상기 다수의 참조점을 검출하도록 지원하는 단계(S200)를 더 포함한다.
단계(S200)에서는 주어진 조건 하에서 영상 내의 물체(관절 및 관절에 의하여 이어지는 골부들)를 인식하고 추적하는 것이 이루어져야 하는데, 특히 물체가 움직이면서 생기는 조명 변화(그림자 등), 형태, 크기 및 위치의 변화가 있더라도 추적하고자 하는 참조점을 쉽게 찾을 수 있어야 하는 문제가 있다.
본 발명자는 영상에서 위 문제를 해결할 수 있는 참조점으로서 주위 배경과 잘 구분되며 식별이 용이한 지점인 코너(corner)를 선택하였으며, 본 개시서에서는 주로 이와 같은 코너를 검출하기 위한 방안을 적용하였다.
도 5는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 검출하는 참조점으로서 코너(corner)를 개념적으로 예시한 도면이고, 도 6은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 이용되는 참조점 검출 방식이 아핀(affine) 변환에도 강건해야 함을 설명하기 위하여 나타낸 도면이다.
도 5에 예시된 바와 같이 영상 내에서 코너를 검출하기 위한 기본적인 착안점은 영상 내 작은 윈도우(픽셀들의 범위)를 조금씩 이동(shift)시켰을 때, 다른 지점들(510, 520)과 다르게 코너(530)는 모든 방향으로 영상의 변화가 크다는 점이다. 구체적으로, 평탄한 영역(flat region; 510)은 모든 방향에 걸쳐 변화가 없으며, 에지(520)는 에지 방향에 걸쳐서는 변화가 없는 반면, 코너(530)는 모든 방향으로 현저한 변화를 보인다.
검출된 코너들은 영상의 평행이동(translation), 회전 변화에는 불변(invariant)이고 조명(illumination) 변화에도 어느 정도 강건한 특성을 지닌다. 다만, 본 개시서에서 요구되는 참조점의 추적에 최적화되도록, 즉, 추적에 용이하도록 코너를 선별하고, 평행이동뿐만 아니라 도 6에 예시적으로 도시된 바와 같은 아핀 변환에 대하여도 강건한 참조점을 추출할 수 있는 참조점 검출 방식을 이용해야 되는바, 이러한 요구 조건을 만족시키는 코너의 검출 방식으로는 해리스 코너 검출(Harris corner detection) 방식이 있다.
다만, 본 개시서에서 이를 채용함에 있어서 다음의 3가지 인자를 고려하여 검출되는 코너들을 이용하였다.
첫 번째 인자는 검출할 참조점, 즉, 코너의 최대 개수인데, 이는 참조점 검출을 시작했을 때 반환되는 참조점의 개수에 대한 상한을 의미하며, 만약 이보다 더 많은 수의 참조점이 검출되는 때에는 가장 강한 참조점들의 순으로 반환될 수 있다.
두 번째 인자는 품질 수준(quality level)인데, 이는 검출되는 참조점, 즉, 코너의 품질의 수준을 결정하게 된다. 검출된 참조점에 대하여 가장 측정 값이 좋은 참조점(maxx, y QualityMeasureMap(x, y))에 품질 수준(Quality Level) 수치를 곱한 값(즉, Quality Level×maxx, y QualityMeasureMap(x, y))보다 낮은 참조점들은 무시할 수 있다.
세 번째 인자는 최소 거리(minimum distance)인데, 이는 검출된 참조점들 사이의 최소 거리, 예컨대, 최소 유클리드 거리로서, 참조점 검출에 있어서 설정된 최소 거리 이상의 값들만 검출하게 된다. 이에 따르면 검출하려는 대상에서 코너들 간의 거리가 고려된다.
한편, 단계(S200)에서의 상기 참조점의 검출에 대하여 미리 정해진 제1 기준 임계값(예컨대, 상기 참조점의 최대 개수, 품질 수준, 최소 거리, 상기 참조점의 최소 개수 중 어느 하나에 대한 임계값임)에 미달하면, 본 개시서에 따른 관절각 측정 방법의 수행은 단계(S100)부터 다시 진행될 수 있다. 예를 들어, 지정된 영역에 참조점이 1개 이상은 존재하여야 하는데, 만약 존재하지 않는다면 참조점이 검출될 때까지 특징점의 검출이 반복될 수 있다(제1 기준 임계값).
계속해서 도 4를 참조하면, 단계(S200) 후에, 본 발명에 따른 관절각 측정 방법은, 컴퓨팅 장치(200)에 의하여 구현되는 광학 흐름 추적 모듈(320)이, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하거나 상기 타 장치로 하여금 상기 이동된 위치를 도출하도록 지원하는 단계(S300)를 더 포함한다.
도 7은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 추적되는 광학 흐름을 개념적으로 예시한 도면이다.
광학 흐름(optical flow)은 두 개의 연속된 영상 프레임 사이에 객체의 가시적인 동작 패턴을 지칭한다. 도 7을 참조하면, 시점 t에 있어서의 영상 프레임인 I(t)에 나타난 참조점들의 집합 {pi}에 대하여 다음 시점인 t+1의 영상 프레임인 I(t+1)에 나타난 움직임이 속도 벡터들(velocity vectors; {v3})로 추적되는바, 하나의 카메라에 의한 영상 프레임의 시퀀스(710)에 대한 영상 추적(720)에 의한 추적 결과(730)가 예시적으로 도시되어 있다.
광학 흐름은 한 영상 프레임의 많은 지점들이 다음 영상 프레임의 어느 곳으로 이동했는지를 파악하는 것에 관한 것이다. 일반적으로 영상 프레임 시퀀스에서 광학 흐름을 추적할 때 첫 번째 영상 프레임의 대부분의 지점을 다음 영상 프레임의 어딘가에서 찾을 수 있다고 합리적으로 가정하면, 상기 지점들의 움직임의 패턴은 객체 자체가 움직이거나 카메라가 움직이기 때문에 발생하게 되는데, 본 개시서의 촬영 조건에 따르면 카메라의 위치는 관절에 상대적으로 고정되어 있으므로 광학 흐름은 객체의 움직임의 패턴을 보여줄 것이다.
더 구체적으로 설명하면, 광학 흐름의 종류에는 밀집 광학 흐름(dense optical flow) 및 희소 광학 흐름(sparse optical flow)이 있는데, 영상을 이루는 모든 픽셀이 상대적인 변위 벡터를 가질 때에는 밀집 광학 흐름이라고 하고, 영상 내 특정 부분에 대하여만 상대적 변위 벡터를 가질 때를 희소 광학 흐름이라고 한다. 즉, 영상 내부의 모든 픽셀에 대하여 적용되는 것과 앞서 검출된 코너와 같은 참조점에 대해서만 추적하는 차이가 있는바, 이로 인하여 필연적으로 밀집 광학 흐름의 방식이 연산량을 많이 요구하는데, 본 개시서에서는 촬영된 신체 부위 전체, 예컨대 손이나 발 전체를 추적하는 것이 아닌 손목, 발목이 움직였다고 식별할 수 있는 지점에 대하여만 추적할 수 있으면 충분하므로 희소 광학 흐름을 이용하였다.
일 예시로서, 희소 광학 흐름 중에서 루카스-카나데(Lucas-Kanade) 방식이 적용될 수 있는데, 통상의 기술자에게 알려진 바와 같이 루카스-카나데 방식의 기본적인 원리는 각 관심 지점(point of interest)을 둘러싸고 있는 작은 윈도우로부터 유도된 국소적인 정보에만 의존하므로 희소 광학 흐름에도 적용할 수 있다. 다만, 루카스-카나데 방식에서 작은 국소 윈도우를 이용함에 따른 단점은 큰 움직임에 의하여 국소 윈도우의 내부에 있던 점이 외부로 이동할 수 있어 검출이 불가능하게 될 수 있다는 점이다. 본 발명자들은 이 문제를 해결하기 위하여 영상 피라미드(image pyramid)의 가장 낮은 정밀도를 가진 최상위 레벨로부터 시작하여 더 정밀한 하위 레벨로 추적하는 피라미드 루카스-카나데(pyramid Lucas-Kanade) 방식을 적용하였는바, 이에 의하면 큰 움직임에 대해서도 국소 윈도우를 이용하여 검출할 수 있을 것이다.
참고로, 도 8은 본 개시서의 일 실시 예에 따른 관절각 측정 방법에서 광학 흐름을 추적하기 위하여 이용되는 피라미드 루카스-카나데(pyramid Lucas-Kanade) 방식을 닭의 움직임의 추적에 이용한 예시를 나타낸 도면이다.
관절각의 측정이 시작되면, 단계(S300)에서, 측정을 시작한 최초 프레임이 참고할 이전(previous) 프레임으로 지정되고, 여기에서 검출된 참조점 역시 참고할 이전(previous) 참조점으로 지정된다. 그 다음 프레임부터는 참고할 이전 프레임 및 참고할 이전 참조점 및 현재 프레임을 인자로 하여, 상기 현재 프레임 내에서의 참고할 참조점 및 이에 매칭되는 좌표를 얻게 된다. 그 후, 현재 프레임 및 상기 매칭되는 좌표는 그 다음 프레임에 대하여 이용되는 참고할 이전 프레임, 참고할 이전 참조점으로 갱신된다.
단계(S300)의 일 실시 예에서는, 추적의 대상이 된 참조점에 대하여 정제가 수행될 수 있는데, 예컨대, 현재 프레임에서 검출된 새로운 참조점의 위치에 해당하는 좌표들의 평균 값을 통하여 구한 중점과 검출된 참조점 간의 거리가 특정 거리(예컨대 90) 이하인 참조점을 감싸는 원을 상정하여, 그 중점으로부터 거리가 90을 초과하는 참조점을 제거할 수 있다.
단계(S300)에서 상기 이동된 위치의 도출에 있어서 미리 정해진 제2 기준 임계값(예컨대, 새로운 참조점 위치의 좌표들의 개수, 변위 벡터의 크기 등)에 미달하면, 본 개시서에 따른 관절각 측정 방법의 수행은 단계(S200)부터 다시 진행될 수 있다. 예를 들어, 새로운 참조점 위치의 좌표들이 10개 미만으로 산정될 때에는 제대로 관절각이 측정되지 않는다고 판단하여 다시 측정하도록 할 수 있다(제2 기준 임계값).
계속해서 도 4를 참조하면, 본 발명에 따른 관절각 측정 방법은, 컴퓨팅 장치(200)에 의하여 구현되는 관절각 산출 모듈(340)이, 검출된 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출하거나 상기 타 장치로 하여금 상기 관절각을 산출하도록 지원하는 단계(S400)를 더 포함한다.
단계(S400)에서, 상기 다수의 참조점에 대한 평균 지점을 기준으로 상기 제1 골부를 대표하는 제1 대표지점 및 상기 제2 골부를 대표하는 제2 대표지점을 산출함으로써 상기 제1 대표지점에 대한 제2 대표지점의 위치 관계에 기초하여 상기 관절각이 산출될 수 있다. 여기에서 제1 골부를 특정할 영상의 영역과 제2 골부를 특정할 영상의 영역이 두 개의 영역으로 분리하여 처리될 수 있는데, 각각의 영역 내에서 추적하기 용이한 참조점이 검출된다.
사용자가 시각적으로 검출된 참조점을 파악하기에 용이하도록, 관절각의 측정이 시작되기 전에는 전술한 출력 모듈(350)을 통하여 계속적으로 지정된 영역 내에 검출되는 참조점들이 사용자에게 보일 수 있다.
구체적으로, 추적된 참조점들에 대하여 구해진 평균 지점(예컨대, 참조점들의 좌표의 평균값, 중앙값 등)을 기준으로 관절이 잇는 제1 골부(예컨대, 발의 뒷부분)와 제2 골부(예컨대, 발의 앞부분)를 각각 대표하는 점을 지정할 수 있는바, 후술하는 바와 같이 상하 또는 좌우 회전에 대한 각도를 산출할 수 있다.
도 9는 본 개시서의 일 실시 예에 따른 관절각 측정 방법에 따라 추출된 코너(corner)들이 예시적으로 표시된 도면이며, 도 10은 도 9의 코너들을 추적함으로써 관절각을 계산한 예시를 나타낸 도면이다.
도 9를 참조하면, 사각형이 두 개로 나뉜 것을 확인할 수 있는데, 궁극적으로는 도 10에서와 같이 각 사각형 별로 하나의 점과 하나의 원을 유지하는 것이다. 도 9에서의 왼쪽 사각형(910), 오른쪽 사각형(920), 도 10에서의 왼쪽 원(1010) 및 오른쪽 원(1020)에 대하여 설명하면, 왼쪽 사각형(910)에서 검출된 참조점들의 좌표 값의 평균이 왼쪽 원(1010)의 중점, 즉, 제1 대표지점이 되고, 오른쪽 사각형(920)에서 검출된 참조점들의 좌표 값의 평균이 오른쪽 원(1020)의 중점, 즉, 제2 대표지점이 된다.
도 10에 예시된 것과 아래 도 11 및 도 12를 참조하여 설명할 바와 같이, 측정을 시작한 프레임에서 두 점을 이은 선분을 기준으로, 그 프레임에 후행하는 프레임에서 추적된 두 점을 이은 선분과의 각도 차를 계산하는 것으로 관절각이 구해질 수 있다.
도 11은 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 좌우 각도가 산출되는 과정을 예시한 도면이다.
도 11을 참조하면, 제1 프레임에서의 제1 골부의 대표지점인 제1 대표지점의 좌표는 (x1, y1, 0)으로 나타나고, 제2 골부의 대표지점인 제2 대표지점의 좌표는 (x2, y2, 0)으로 나타난다. 또한 제2 프레임에서의 제1 대표지점의 좌표는 (x1', y1', 0)으로 나타나고, 제2 대표지점의 좌표는 (x2', y2', 0)으로 나타난다.
이 때, 관절각으로서의 발목의 좌우 각도(θ)는 다음과 같이 산출될 수 있는바 두 개의 벡터 사이의 각도를 산출하는 것이다.
여기에서 θ의 단위가 라디안(radian)이기 때문에 도(degree) 단위로 변환할 수도 있다(angle=θ×180/π).
도 12는 본 개시서의 일 실시 예에 따른 관절각 측정 방법이 적용된 예시로서 발목의 상하 각도가 산출되는 과정을 예시한 도면이다.
도 12를 참조하면, 제1 프레임에서의 제1 골부의 대표지점인 제1 대표지점의 좌표는 (x1, 0, 0)으로 나타나고, 제2 골부의 대표지점인 제2 대표지점의 좌표는 (x2, y2, 0)으로 나타난다. 또한 제2 프레임에서의 제1 대표지점의 좌표는 (x1', 0, 0)으로 나타나고, 제2 대표지점의 좌표는 (x2', y2', 0)으로 나타난다.
이 때, 관절각으로서의 발목의 상하 각도(θ)는 다음과 같이 산출될 수 있는바 두 점의 길이 차이를 이용하여 각도를 산출하는 것이다.
단, 여기에서 distance1 ≠ 0, 그리고 distance1 > distance2, 그리고 -1<distance2/distance1<1의 조건이 만족되어야 한다. 여기에서 θ의 단위가 라디안(radian)이기 때문에 도(degree) 단위로 변환할 수도 있다(angle=θ×180/π).
단계(S400)에서 관절각이 산출된 후, 본 발명에 따른 관절각 측정 방법은, 컴퓨팅 장치(200)에 의하여 구현되는 출력 모듈(350)이, 산출된 상기 관절각 또는 상기 관절각 및 이를 뒷받침하는 표시를 외부 엔티티에 제공하거나 상기 타 장치로 하여금 제공하도록 지원하는 단계(S500; 미도시)를 더 포함할 수 있다.
앞서 설명된 단계들(혹은 이에 대응되는 프로세스들)은 논리적으로 모순되거나 맥락상 달리 명시되어 있지 않는 한 기재된 순서대로 수행되어야 함을 의미하는 것이 아니며, 각각의 단계들(혹은 대응되는 프로세스들)은 동시에 또는 이시(異時)에 수행될 수 있다는 점을 통상의 기술자는 이해할 수 있을 것이다.
이처럼 본 개시서의 전술한 단계들의 수행에 의하여 관절각의 측정이 자동적으로 수행될 수 있다. 단계들은 1회 수행될 여지도 있으나, 바람직하게는, 연속적으로 획득되는 영상 프레임을 획득하고 이에 기초하여 관절각의 측정이 이루어질 수 있도록, 전술한 바와 같이 단계들은 실시간(real-time)으로, 그리고/또는 반복적으로(iteratively) 수행될 수 있다. 다시 말하자면, 상기 관절각의 측정 행위가 종료될 때까지 단계(S100) 내지 단계(S300)가 연속적으로 반복 수행될 수 있으며, 더 바람직하게는, 상기 관절각의 측정 행위가 종료될 때까지 단계(S100) 내지 단계(S400)가 연속적으로 반복 수행될 수 있다. 즉, 관절각을 산출하는 단계(S400)는 필요에 따라 실시간으로 반복 수행되거나 한번만 수행될 수 있다.
도 2 내지 도 4를 참조하여 설명된 여러 구성요소들은 설명의 편의상 하나의 컴퓨팅 장치, 예컨대, 서버에서 실현되는 것으로 예시되었으나, 본 개시서의 방법을 수행하는 컴퓨팅 장치(200)가 복수개의 장치들이 서로 연동된 것으로 구성될 수도 있다는 점이 이해될 것이다. 따라서 전술한 본 개시서의 방법의 각 단계는, 하나의 컴퓨팅 장치가 직접 수행하거나 상기 하나의 컴퓨팅 장치가 상기 하나의 컴퓨팅 장치에 연동되는 타 컴퓨팅 장치로 하여금 수행하도록 지원(support)함으로써 수행될 수 있음이 자명하다.
지금까지 설명된 바와 같이 본 개시서의 방법 및 장치는 그 모든 실시 예 및 변형례에 걸쳐, 관절각을 측정할 때 이용되는 참조점이 자동으로 지정되고, 각도기 등을 이용하여 물리적으로 각도를 측정하지 않아도 되는 편의적 효과가 있으며, 단일 영상이 아닌 실시간 영상 프레임에 관하여 추적이 수행됨으로써 다양한 조명 환경 및 색 변화에 강건(robust)한 추적이 가능해지는 효과가 있다.
이상, 본 개시서의 다양한 실시 예들에 관한 설명에 기초하여 해당 기술분야의 통상의 기술자는, 본 발명의 방법 및/또는 프로세스들, 그리고 그 단계들이 하드웨어, 소프트웨어 또는 특정 용례에 적합한 하드웨어 및 소프트웨어의 임의의 조합으로 실현될 수 있다는 점을 명확하게 이해할 수 있다. 상기 하드웨어는 범용 컴퓨터 및/또는 전용 컴퓨팅 장치 또는 특정 컴퓨팅 장치 또는 특정 컴퓨팅 장치의 특별한 모습 또는 구성요소를 포함할 수 있다. 상기 프로세스들은 내부 및/또는 외부 메모리를 가지는, 하나 이상의 프로세서, 예컨대, 마이크로프로세서, 컨트롤러, 예컨대, 마이크로컨트롤러, 임베디드 마이크로컨트롤러, 마이크로컴퓨터, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 예컨대, 프로그래머블 디지털 신호 프로세서 또는 기타 프로그래머블 장치에 의하여 실현될 수 있다. 게다가, 혹은 대안으로서, 상기 프로세스들은 주문형 집적회로(application specific integrated circuit; ASIC), 프로그래머블 게이트 어레이(programmable gate array), 예컨대, FPGA(field programmable gate array), PLU(programmable logic unit) 혹은 프로그래머블 어레이 로직(Programmable Array Logic; PAL) 또는 기타 인스트럭션(instruction)을 실행하고 응답할 수 있는 임의의 다른 장치, 전자 신호들을 처리하기 위해 구성될 수 있는 임의의 다른 장치 또는 장치들의 조합으로 실시될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 인스트럭션(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치에 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 인스트럭션 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 기계 판독 가능 기록 매체에 저장될 수 있다.
더욱이 본 발명의 기술적 해법의 대상물 또는 선행 기술들에 기여하는 부분들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 인스트럭션의 형태로 구현되어 기계 판독 가능 매체에 기록될 수 있다. 기계 판독 가능 매체는 프로그램 인스트럭션, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기계 판독 가능한 기록 매체에 기록되는 프로그램 인스트럭션은 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 기계 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD, Blu-ray와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 인스트럭션을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 인스트럭션의 예에는, 전술한 장치들 중 어느 하나뿐만 아니라 프로세서, 프로세서 아키텍처 또는 상이한 하드웨어 및 소프트웨어의 조합들의 이종 조합, 또는 다른 어떤 프로그램 인스트럭션들을 실행할 수 있는 기계 상에서 실행되기 위하여 저장 및 컴파일 또는 인터프리트될 수 있는, C와 같은 구조적 프로그래밍 언어, C++ 같은 객체지향적 프로그래밍 언어 또는 고급 또는 저급 프로그래밍 언어(어셈블리어, 하드웨어 기술 언어들 및 데이터베이스 프로그래밍 언어 및 기술들)를 사용하여 만들어질 수 있는 바, 기계어 코드, 바이트코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 이에 포함된다.
따라서 본 발명에 따른 일 태양에서는, 앞서 설명된 방법 및 그 조합들이 하나 이상의 컴퓨팅 장치들에 의하여 수행될 때, 그 방법 및 방법의 조합들이 각 단계들을 수행하는 실행 가능한 코드로서 실시될 수 있다. 다른 일 태양에서는, 상기 방법은 상기 단계들을 수행하는 시스템들로서 실시될 수 있고, 방법들은 장치들에 걸쳐 여러 가지 방법으로 분산되거나 모든 기능들이 하나의 전용, 독립형 장치 또는 다른 하드웨어에 통합될 수 있다. 또 다른 일 태양에서는, 위에서 설명한 프로세스들과 연관된 단계들을 수행하는 수단들은 앞서 설명한 임의의 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 그러한 모든 순차 결합 및 조합들은 본 개시서의 범위 내에 속하도록 의도된 것이다.
예를 들어, 상기된 하드웨어 장치는 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. 상기 하드웨어 장치는, 프로그램 인스트럭션을 저장하기 위한 ROM/RAM 등과 같은 메모리와 결합되고 상기 메모리에 저장된 인스트럭션들을 실행하도록 구성되는 MPU, CPU, GPU, TPU와 같은 프로세서를 포함할 수 있으며, 외부 장치와 신호를 주고받을 수 있는 통신부를 포함할 수 있다. 덧붙여, 상기 하드웨어 장치는 개발자들에 의하여 작성된 인스트럭션들을 전달받기 위한 키보드, 마우스, 기타 외부 입력 장치를 포함할 수 있다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시 예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시 예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 사람이라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니되며, 본 개시서에 첨부된 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그와 같이 균등하게 또는 등가적으로 변형된 것에는, 예컨대 본 발명에 따른 방법을 실시한 것과 동일한 결과를 낼 수 있는, 논리적으로 동치(logically equivalent)인 방법이 포함될 것인 바, 본 발명의 진의 및 범위는 전술한 예시들에 의하여 제한되어서는 아니되며, 법률에 의하여 허용 가능한 가장 넓은 의미로 이해되어야 한다.
Claims (10)
- 피검체(subject)의 제1 골부와 제2 골부를 잇는 관절의 관절각을 측정하는 방법에 있어서,
(a) 컴퓨팅 장치가, 상기 관절이 촬영된 영상을 획득하거나 상기 컴퓨팅 장치에 연동되는 타 장치로 하여금 상기 관절이 촬영된 영상을 획득하도록 지원하는 단계;
(b) 상기 컴퓨팅 장치가, 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점(reference point)을 검출하거나 상기 타 장치로 하여금 상기 다수의 참조점을 검출하도록 지원하는 단계;
(c) 상기 컴퓨팅 장치가, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하거나 상기 타 장치로 하여금 상기 이동된 위치를 도출하도록 지원하는 단계; 및
(d) 상기 컴퓨팅 장치가, 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출하거나 상기 타 장치로 하여금 상기 관절각을 산출하도록 지원하는 단계;
를 포함하고,
상기 (d) 단계에서,
상기 다수의 참조점에 대한 평균 지점을 기준으로 상기 제1 골부를 대표하는 제1 대표지점 및 상기 제2 골부를 대표하는 제2 대표지점을 산출함으로써 상기 제1 대표지점에 대한 제2 대표지점의 위치 관계에 기초하여 상기 관절각이 산출되고,
상기 (d) 단계에서,
상기 제1 대표지점이 상기 제1 프레임 내의 좌표 (x1, y1, 0) 및 상기 제2 프레임 내의 좌표 (x1', y1', 0)로 산출되고, 상기 제2 대표지점이 상기 제1 프레임 내의 좌표 (x2, y2, 0) 및 상기 제2 프레임 내의 좌표 (x2', y2', 0)로 산출되는 경우, 상기 관절각에 대응되는 는 수학식 1 내지 수학식 3에 기초하여 산출되고, 상기 수학식 1은 이고, 수학식 2는 이고, 상기 수학식 3은 인 것을 특징으로 하는 관절각 측정 방법. - 제1항에 있어서,
상기 관절각의 측정 행위가 종료될 때까지 상기 (a) 단계 내지 상기 (c) 단계가 연속적으로 반복 수행되는 것을 특징으로 하는 관절각 측정 방법. - 제1항에 있어서,
상기 참조점은 코너(corner)인 것을 특징으로 하는 관절각 측정 방법. - 제3항에 있어서,
상기 (b) 단계는,
해리스 코너 검출(Harris corner detection) 방식이 적용되는 것을 특징으로 하는 관절각 측정 방법. - 제1항에 있어서,
상기 (c) 단계는,
피라미드 루카스-카나데(Pyramid Lucas-Kanade) 방식으로 희소(sparse) 광학 흐름을 추적하는 것을 특징으로 하는 관절각 측정 방법. - 제1항에 있어서,
상기 (c)단계는,
상기 제2 프레임 내에서 검출된 참조점들의 위치의 평균 값에 기초하여 결정된 중점과, 상기 검출된 참조점들 사이의 거리가 소정의 임계값을 초과하는 참조점을 제거함으로써 상기 검출된 참조점들을 정제하는 단계
를 포함하고,
상기 제1 대표지점 및 상기 제2 대표지점은,
상기 정제 결과에 기초하여 결정되는 것을 특징으로하는, 관절각 측정 방법. - 제1항에 있어서,
상기 (a) 단계는,
(a1) 상기 컴퓨팅 장치가, 획득된 상기 영상을 전처리하거나 상기 타 장치로 하여금 상기 영상을 전처리하도록 지원하는 단계
를 포함하는 관절각 측정 방법. - 컴퓨팅 장치로 하여금, 제1항 내지 제7항 중 어느 한 항의 방법을 수행하도록 구현된 명령어(instructions)를 포함하는, 기계 판독 가능한 기록 매체에 저장된, 컴퓨터 프로그램.
- 피검체(subject)의 제1 골부와 제2 골부를 잇는 관절의 관절각을 측정하는 컴퓨팅 장치에 있어서,
상기 관절이 촬영된 영상을 획득하는 통신부; 및
참조점 검출 모듈을 통하여 상기 영상 내에서 상기 피검체의 신체를 인식하기 위한 다수의 참조점을 검출하는 제1 프로세스, 검출된 상기 참조점의 상기 영상의 프레임 간의 광학 흐름(optical flow)을 광학 흐름 추적 모듈을 통하여 추적함으로써 제1 프레임 내에서의 상기 참조점의 원위치로부터 상기 제1 프레임보다 후행하는 제2 프레임 내에서의 상기 참조점의 이동된 위치를 도출하는 제2 프로세스, 및 관절각 산출 모듈을 통하여 상기 다수의 참조점의 원위치 및 상기 다수의 참조점의 이동된 위치에 기초하여 상기 관절각을 산출하는 제3 프로세스를 수행하거나 상기 통신부를 통하여 연동되는 타 장치로 하여금 수행하도록 지원하는 프로세서
를 포함하고,
상기 프로세서는,
상기 제3 프로세스에서,
상기 다수의 참조점에 대한 평균 지점을 기준으로 상기 제1 골부를 대표하는 제1 대표지점 및 상기 제2 골부를 대표하는 제2 대표지점을 산출함으로써 상기 제1 대표지점에 대한 제2 대표지점의 위치 관계에 기초하여 상기 관절각을 산출하고,
상기 제1 대표지점이 상기 제1 프레임 내의 좌표 (x1, y1, 0) 및 상기 제2 프레임 내의 좌표 (x1', y1', 0)로 산출되고, 상기 제2 대표지점이 상기 제1 프레임 내의 좌표 (x2, y2, 0) 및 상기 제2 프레임 내의 좌표 (x2', y2', 0)로 산출되는 경우, 상기 관절각에 대응되는 를 수학식 1 내지 수학식 3에 기초하여 산출하고, 상기 수학식 1은 이고, 수학식 2는 이고, 상기 수학식 3은 인 것을 특징으로하는 관절각 측정 장치. - 제9항에 있어서,
상기 영상의 획득, 상기 제1 프로세스 및 상기 제2 프로세스는 연속적으로 반복 수행되는 것을 특징으로 하는 관절각 측정 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190035514A KR102204582B1 (ko) | 2019-03-28 | 2019-03-28 | 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190035514A KR102204582B1 (ko) | 2019-03-28 | 2019-03-28 | 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200114204A KR20200114204A (ko) | 2020-10-07 |
KR102204582B1 true KR102204582B1 (ko) | 2021-01-19 |
Family
ID=72884418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190035514A KR102204582B1 (ko) | 2019-03-28 | 2019-03-28 | 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102204582B1 (ko) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101665386B1 (ko) * | 2010-11-15 | 2016-10-12 | 한화테크윈 주식회사 | 로봇 위치 추정 장치 및 방법 |
KR20130088104A (ko) * | 2013-04-09 | 2013-08-07 | 삼성전자주식회사 | 비접촉 방식의 인터페이스를 제공하기 위한 휴대 장치 및 방법 |
-
2019
- 2019-03-28 KR KR1020190035514A patent/KR102204582B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20200114204A (ko) | 2020-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Maiseli et al. | Recent developments and trends in point set registration methods | |
JP6942488B2 (ja) | 画像処理装置、画像処理システム、画像処理方法、及びプログラム | |
Baak et al. | A data-driven approach for real-time full body pose reconstruction from a depth camera | |
US8994652B2 (en) | Model-based multi-hypothesis target tracker | |
Ni et al. | Visual tracking using neuromorphic asynchronous event-based cameras | |
JP5587137B2 (ja) | 測定装置及び測定方法 | |
JP2016099982A (ja) | 行動認識装置、行動学習装置、方法、及びプログラム | |
US20220262093A1 (en) | Object detection method and system, and non-transitory computer-readable medium | |
Bergou et al. | 3D reconstruction of bat flight kinematics from sparse multiple views | |
CN107949851B (zh) | 在场景内的物体的端点的快速和鲁棒识别 | |
KR102186875B1 (ko) | 움직임 추적 시스템 및 방법 | |
Tzionas et al. | Reconstructing articulated rigged models from rgb-d videos | |
Abed et al. | Python-based Raspberry Pi for hand gesture recognition | |
Basori et al. | Fast markerless tracking for augmented reality in planar environment | |
Hsu | A hybrid approach for brain image registration with local constraints | |
KR102204582B1 (ko) | 피검체의 관절의 관절각을 측정하는 방법 및 이를 이용한 장치 | |
JP6806160B2 (ja) | 3次元運動評価装置、3次元運動評価方法、及びプログラム | |
JP5767078B2 (ja) | 姿勢推定装置、姿勢推定方法及び姿勢推定プログラム | |
KR102364728B1 (ko) | 피사체의 프레임 데이터로부터 캐릭터 모션을 생성하는 방법 및 이를 이용한 장치 | |
KR20220093871A (ko) | 도메인 전이학습을 통한 적외선 카메라 기반의 손 자세 추정 방법 및 시스템 | |
CN113936038B (zh) | 骨骼检测装置及其使用方法、训练方法和训练装置 | |
JP6045178B2 (ja) | 計測装置、計測方法及びプログラム | |
Ravichandar et al. | Gyro-aided image-based tracking using mutual information optimization and user inputs | |
US20220398772A1 (en) | Object and feature detection in images | |
Nguyen et al. | Vehicle type recognition using multiple-feature combinations |
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 |