KR102352680B1 - 촬영 디바이스 및 그 제어 방법 - Google Patents

촬영 디바이스 및 그 제어 방법 Download PDF

Info

Publication number
KR102352680B1
KR102352680B1 KR1020150105300A KR20150105300A KR102352680B1 KR 102352680 B1 KR102352680 B1 KR 102352680B1 KR 1020150105300 A KR1020150105300 A KR 1020150105300A KR 20150105300 A KR20150105300 A KR 20150105300A KR 102352680 B1 KR102352680 B1 KR 102352680B1
Authority
KR
South Korea
Prior art keywords
swing
photographing
angle
photographing device
input
Prior art date
Application number
KR1020150105300A
Other languages
English (en)
Other versions
KR20170011873A (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 KR1020150105300A priority Critical patent/KR102352680B1/ko
Priority to US15/165,243 priority patent/US9979872B2/en
Publication of KR20170011873A publication Critical patent/KR20170011873A/ko
Application granted granted Critical
Publication of KR102352680B1 publication Critical patent/KR102352680B1/ko

Links

Images

Classifications

    • H04N5/23296
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/53Control of the integration time
    • H04N25/531Control of the integration time by controlling rolling shutters in CMOS SSIS
    • H04N5/225
    • H04N5/23293
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image

Abstract

본 개시는 골프 스윙, 야구 스윙 등 고속의 움직임이 있는 스윙 동작에서 임팩트 순간과 같이 아주 짧은 순간에 일어나는 장면을 촬영하기 위한 촬영 디바이스 및 그 제어 방법을 제공하기 위한 것으로, 스윙 동작 중 관심 영역에 대한 입력을 수신하는 단계, 라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 화면의 일 영역에 입력되는 스윙 동작의 일부를 수신하는 단계, 수신된 스윙 동작의 일부를 기초로 스윙 객체의 회전 각도를 결정하는 단계 및 결정된 회전 각도를 기초로 관심 영역에 대한 촬영 시점을 결정하여 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법 등이 제공될 수 있다.

Description

촬영 디바이스 및 그 제어 방법{PHOTOGRAPHING APPARATUS AND METHOD FOR CONTROLLING THE SAME}
본 개시의 실시예들은 촬영 디바이스 및 그 제어 방법에 관한 것이다.
스윙 자세 교정, 스윙 궤도 분석 등을 위하여 스윙 동작을 촬영하고자 하는수요는 꾸준히 있어왔다.
그러나 기존의 스윙 동작 촬영은 사람의 눈이 특정 순간을 발견한 후 셔터를 누르는 데 반응하는 시간, 고해상도의 고속 촬영 지속에 필요한 메모리 용량 부족 등의 문제가 있어왔다.
본 실시예들은 골프 스윙, 야구 스윙 등 고속의 움직임이 있는 스윙 동작에서 임팩트 순간과 같이 아주 짧은 순간에 일어나는 장면을 촬영하기 위한 촬영 디바이스 및 그 제어 방법을 제공하고자 한다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예에 따르면, 스윙 동작을 촬영하는 촬영 디바이스를 제어하는 방법에 있어서, 상기 스윙 동작 중 관심 영역에 대한 입력을 수신하는 단계, 라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 상기 화면의 일 영역에 입력되는 상기 스윙 동작의 일부를 수신하는 단계, 상기 수신된 스윙 동작의 일부를 기초로 스윙 객체의 회전 각도를 결정하는 단계 및 상기 결정된 회전 각도를 기초로 상기 관심 영역에 대한 촬영 시점을 결정하고, 상기 결정된 촬영 시점에 피사체를 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법이 제공될 수 있다.
상기 스윙 객체의 회전 각도를 결정하는 단계는, 상기 수신된 스윙 동작의 일부를 기초로 스윙 궤도를 생성하고, 상기 스윙 동작의 기준면과 상기 스윙 객체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 및 상기 촬영 디바이스와 상기 피사체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 중 적어도 하나를 보정하는 단계를 포함할 수 있다.
상기 보정하는 단계는 소정의 방정식 및 학습에 의해 얻은 데이터 중 적어도 하나에 의해 상기 기준면과 상기 스윙 객체 사이의 각도 및 상기 촬영 디바이스와 상기 피사체 사이의 각도 중 적어도 하나를 계산하는 단계를 포함할 수 있다.
상기 관심 영역에 대한 입력을 수신하는 단계는 자동으로 소정의 영역에 대한 입력을 수신하거나 수동으로 입력을 수신할 수 있다.
상기 스윙 객체의 회전 각도를 결정하는 단계는 영상을 획득하는 이미지 센서가 롤링 셔터(rolling shutter)로 동작하는 경우, 상기 이미지 센서의 수평 방향으로 이동하는 물체에 대한 판독 각도 오차를 보정하는 단계를 포함할 수 있다.
촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격을 계산하여 결정될 수 있다.
상기 촬영하는 단계는 상기 관심 영역의 전부 또는 일부에 대하여 스틸 이미지 및 동영상 중 적어도 하나의 형태로 촬영하는 단계를 포함할 수 있다.
상기 촬영하는 단계는 상기 관심 영역의 전부 또는 일부에 대하여 초당 프레임 수(FPS) 또는 해상도를 변경하여 촬영하는 단계를 포함할 수 있다.
상기 생성된 스윙 궤도를 메타데이터로 저장하여, 상기 촬영된 영상을 디스플레이할 때 상기 메타데이터로 저장된 스윙 궤도를 상기 촬영된 영상과 함께 디스플레이하는 단계를 더 포함할 수 있다.
본 발명 일 실시예의 또 다른 측면에 따르면, 스윙 동작을 촬영하는 촬영 디바이스에 있어서, 상기 스윙 동작 중 관심 영역에 대한 입력을 수신하는 입력부
라이브 뷰(live view) 영상을 디스플레이하는 표시부 및 상기 표시부에 디스플레이된 스윙 동작의 일부를 기초로 스윙 객체의 회전 각도를 결정하고, 상기 결정된 회전 각도를 기초로 상기 관심 영역에 대한 촬영 시점을 결정하여 상기 결정된 촬영 시점에 피사체를 촬영하도록 제어하는 프로세서를 포함하는 촬영 디바이스가 제공될 수 있다.
상기 프로세서는 상기 수신된 스윙 동작의 일부를 기초로 스윙 궤도를 생성하고, 상기 스윙 동작의 기준면과 상기 스윙 객체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 및 촬영 디바이스와 피사체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 중 적어도 하나를 보정할 수 있다.
상기 프로세서는 소정의 방정식 및 학습에 의해 얻은 데이터 중 적어도 하나에 의해 상기 기준면과 스윙 객체 사이의 각도 및 상기 촬영 디바이스와 피사체 사이의 각도 중 적어도 하나를 계산하여 상기 기준면과 스윙 객체 사이의 각도에 의한 왜곡 및 상기 촬영 디바이스와 피사체 사이의 각도에 의한 왜곡 중 적어도 하나를 보정할 수 있다.
상기 입력부는 자동으로 소정의 영역에 대한 입력을 수신하거나 수동으로 입력을 수신할 수 있다.
상기 프로세서는 영상을 획득하는 이미지 센서가 롤링 셔터(rolling shutter)로 동작하는 경우, 상기 이미지 센서의 수평 방향으로 이동하는 물체에 대한 판독 각도 오차를 보정하여 스윙 궤도를 보정할 수 있다.
상기 프로세서는 촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격을 계산하여 상기 촬영 시점을 결정할 수 있다.
상기 프로세서는 상기 관심 영역의 전부 또는 일부에 대하여 스틸 이미지 및 동영상 중 적어도 하나의 형태로 촬영하도록 제어할 수 있다.
상기 프로세서는 상기 관심 영역의 전부 또는 일부에 대하여 초당 프레임 수(FPS) 또는 해상도를 변경하여 촬영하도록 제어할 수 있다.
상기 표시부는 상기 생성된 스윙 궤도를 메타데이터로 저장하여, 상기 촬영된 영상을 디스플레이할 때 상기 촬영된 영상과 함께 상기 메타데이터로 저장된 스윙 궤도를 디스플레이할 수 있다.
본 개시 일 실시예의 또 다른 측면에 따르면, 프로세서에 의해 독출되어 수행되었을 때, 컨텐츠 재생 방법을 수행하는 컴퓨터 프로그램 코드들을 저장하는 컴퓨터 판독가능 기록매체에 있어서, 스윙 동작을 촬영하는 촬영 디바이스를 제어하는 방법에 있어서, 상기 스윙 동작 중 관심 영역에 대한 입력을 수신하는 단계, 라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 상기 화면의 일 영역에 입력되는 상기 스윙 동작의 일부를 수신하는 단계, 상기 수신된 스윙 동작의 일부를 기초로 스윙 객체의 회전 각도를 결정하는 단계 및 상기 결정된 회전 각도를 기초로 상기 관심 영역에 대한 촬영 시점을 결정하고, 상기 결정된 촬영 시점에 피사체를 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법을 포함하는 컴퓨터 판독 가능 기록매체가 제공될 수 있다.
도 1은 다양한 실시예에 따른 네트워크 환경 내에서의 촬영 디바이스에 대한 개략적인 블록도이다.
도 2는 다양한 실시예에 따른 촬영 디바이스의 개략적인 블록도이다.
도 3은 다양한 실시예에 따른 프로그램 모듈의 개략적인 블록도이다.
도 4A는 일 실시예에 따라 촬영 객체가 되는 골프 스윙 동작의 예시이다.
도 4B는 일 실시예에 따라 촬영 객체가 되는 야구 스윙 동작의 예시이다.
도 5는 일 실시예에 따른 촬영 디바이스의 개략적인 블록도이다.
도 6은 일 실시예에 따른 촬영 디바이스 제어 방법의 흐름도이다.
도 7은 일 실시예에 따라 촬영 디바이스가 관심 대상에 대한 입력을 수신하는 예시이다.
도 8A는 일 실시예에 따라 스윙 동작을 촬영할 때 기준면과 스윙 객체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
도 8B는 일 실시예에 따라 스윙 동작을 촬영할 때 기준면과 스윙 객체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
도 9A는 일 실시예에 따라 스윙 동작을 촬영할 때 촬영 디바이스와 피사체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
도 9B는 일 실시예에 따라 스윙 동작을 촬영할 때 촬영 디바이스와 피사체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
도 10은 일 실시예에 따라 스윙 동작을 촬영할 때 왜곡된 회전 각도와 보정된 회전 각도를 나타내는 예시이다.
도 11은 일 실시예에 따라 스윙 동작을 촬영할 때 스윙 객체의 회전 각도를 결정하는 방법의 흐름도이다.
도 12는 일 실시예에 따라 스윙 객체의 회전 각도를 결정하는 방법의 예시이다.
도 13은 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터(rolling shutter) 동작에 따른 왜곡의 예시이다.
도 14A는 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터(rolling shutter) 동작에 따른 왜곡의 예시이다.
도 14B는 일 실시예에 따라 스윙 동작을 촬영할 때 글로벌 셔터(global shutter) 동작에 따른 촬영의 예시이다.
도 15는 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터 동작에 따라 왜곡된 스윙 객체를 보정하는 방법에 대한 예시이다.
도 16은 일 실시예에 따라 촬영된 영상을 디스플레이하는 방법에 대한 예시이다.
이하, 본 명세서는 다양한 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 명세서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 명세서의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)도 본 명세서의 내용에 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 명세서에서 사용되는 용어는 본 명세서에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 실시예들에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 명세서의 전반에 걸친 내용을 토대로 정의되어야 한다.
또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
본 명세서에서 모바일 디바이스는 사용자가 휴대 가능한 비교적 작은 크기의 컴퓨터 장치를 의미하는 것으로, 예로는 휴대 전화, PDA, 노트북 등이 있을 수 있다.
본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 명세서에서, "A 또는 B" "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 명세서에서 사용된 "제 1" "제 2" "첫째" 또는 "둘째"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 명세서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 명세서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 명세서에서 스윙 궤도는 스윙 객체의 좌표나 각도 등에 대한 정보의 시간에 따른 연속적인 값을 의미할 수 있다.
본 명세서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 명세서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 명세서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 명세서에서 정의된 용어일지라도 본 명세서의 실시예들을 배제하도록 해석될 수 없다.
본 명세서의 다양한 실시예들에 따른 촬영 디바이스는, 예를 들면, 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에 따르면, 웨어러블 장치는 액세서리 형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에서, 촬영 디바이스는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 촬영 디바이스는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시예에 따르면, 촬영 디바이스는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 촬영 디바이스는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시예에 따른 촬영 디바이스는 플렉서블 전자 장치일 수 있다. 또한, 본 명세서의 실시예에 따른 촬영 디바이스는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
이하, 첨부 도면을 참조하여, 다양한 실시예에 따른 촬영 디바이스가 설명된다. 본 명세서에서, 사용자라는 용어는 촬영 디바이스를 사용하는 사람 또는 촬영 디바이스를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은 다양한 실시예에 따른 네트워크 환경 내에서의 촬영 디바이스에 대한 개략적인 블록도이다. 촬영 디바이스(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시예에서는, 촬영 디바이스(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다.
버스(110)는, 예를 들면, 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 및/또는 데이터)을 전달하는 회로를 포함할 수 있다.
프로세서(120)는, 중앙처리장치(central processing unit(CPU)), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 촬영 디바이스(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다.
메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, 촬영 디바이스(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다.
프로그램(140)은, 예를 들면, 커널(141), 미들웨어(143), 어플리케이션 프로그래밍 인터페이스(application programming interface(API))(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템(operating system(OS))으로 지칭될 수 있다.
입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 촬영 디바이스(101)의 다른 구성요소(들)에 전달할 수 있는 인터페이스의 역할을 할 수 있다. 또한, 입출력 인터페이스(150)는 촬영 디바이스(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다.
디스플레이(160)는, 예를 들면, 액정 디스플레이(liquid crystal display(LCD)), 발광 다이오드(light-emitting diode(LED)) 디스플레이, 유기 발광 다이오드(organic light-emitting diode(OLED)) 디스플레이, 또는 마이크로 전자기계 시스템(microelectromechanical systems(MEMS)) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다.
통신 인터페이스(170)는, 예를 들면, 촬영 디바이스(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다.
무선 통신은, 예를 들면, 셀룰러 통신 프로토콜로서, 예를 들면, LTE(long-term evolution), LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용할 수 있다. 또한, 무선 통신은, 예를 들면, 근거리 통신(164)을 포함할 수 있다. 근거리 통신(164)은, 예를 들면, WiFi(wireless fidelity), 블루투스(Bluetooth), NFC(near field communication), 또는 GNSS(global navigation satellite system) 등 중 적어도 하나를 포함할 수 있다. GNSS는 사용 지역 또는 대역폭 등에 따라, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 "Beidou") 또는 Galileo, the European global satellite-based navigation system 중 적어도 하나를 포함할 수 있다. 이하, 본 명세서에서는, "GPS"는 "GNSS"와 혼용되어 사용(interchangeably used)될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 통신 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷, 또는 전화 망(telephone network) 중 적어도 하나를 포함할 수 있다.
제 1 및 제 2 외부 전자 장치(102, 104) 각각은 촬영 디바이스(101)와 동일한 또는 다른 종류의 장치일 수 있다. 한 실시예에 따르면, 서버(106)는 하나 또는 그 이상의 서버들의 그룹을 포함할 수 있다. 다양한 실시예에 따르면, 촬영 디바이스(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 촬영 디바이스(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 촬영 디바이스(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 촬영 디바이스(101)로 전달할 수 있다. 촬영 디바이스(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 다양한 실시예에 따른 촬영 디바이스(201)의 블록도이다. 촬영 디바이스(201)는, 예를 들면, 도 1에 도시된 촬영 디바이스(101)의 전체 또는 일부를 포함할 수 있다. 촬영 디바이스(201)는 하나 이상의 프로세서(예: AP(application processor))(210), 통신 모듈(220), 가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다.
프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210) 는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
통신 모듈(220)은, 도 1의 통신 인터페이스(170)와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227)(예: GPS 모듈, Glonass 모듈, Beidou 모듈, 또는 Galileo 모듈), NFC 모듈(228) 및 RF(radio frequency) 모듈(229)를 포함할 수 있다.
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나를 포함할 수 있다.
외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 촬영 디바이스(201)와 기능적으로 및/또는 물리적으로 연결될 수 있다.
센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 촬영 디바이스(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), 컬러(color) 센서(240H)(예: RGB(red, green, blue) 센서), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 촬영 디바이스(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.
입력 장치(250)는, 예를 들면, 터치 패널(touch panel)(252), (디지털) 펜 센서(pen sensor)(254), 키(key)(256), 또는 초음파(ultrasonic) 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.
(디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트(sheet)를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 또는 프로젝터(266)를 포함할 수 있다. 패널(262)은, 도 1의 디스플레이(160)와 동일 또는 유사한 구성을 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게(flexible), 투명하게(transparent), 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나의 모듈로 구성될 수도 있다.
인터페이스(270)는, 예를 들면, HDMI(high-definition multimedia interface)(272), USB(universal serial bus)(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다.
오디오 모듈(280)은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래시(flash)(예: LED 또는 xenon lamp 등)를 포함할 수 있다.
전력 관리 모듈(295)은, 예를 들면, 촬영 디바이스(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다.
인디케이터(297)는 촬영 디바이스(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다.
본 명세서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치는 본 명세서에서 기술된 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시예에 따른 전자 장치의 구성요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
도 3은 다양한 실시예에 따른 프로그램 모듈의 블록도이다. 한 실시예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 촬영 디바이스(101))에 관련된 자원을 제어하는 운영 체제(operating system(OS)) 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, 안드로이드(android), iOS, 윈도우즈(windows), 심비안(symbian), 타이젠(tizen), 또는 바다(bada) 등이 될 수 있다.
프로그램 모듈(310)은 커널(320), 미들웨어(330), 어플리케이션 프로그래밍 인터페이스(application programming interface (API))(360), 및/또는 어플리케이션(370)을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 외부 전자 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드(download) 가능하다.
커널(320)(예: 커널(141))은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330)(예: 미들웨어(143))는 런타임 라이브러리(335), 어플리케이션 매니저(application manager)(341), 윈도우 매니저(window manager)(342), 멀티미디어 매니저(multimedia manager)(343), 리소스 매니저(resource manager)(344), 파워 매니저(power manager)(345), 데이터베이스 매니저(database manager)(346), 패키지 매니저(package manager)(347), 연결 매니저(connectivity manager)(348), 통지 매니저(notification manager)(349), 위치 매니저(location manager)(350), 그래픽 매니저(graphic manager)(351), 또는 보안 매니저(security manager)(352) 중 적어도 하나를 포함할 수 있다.
미들웨어(330)는 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 미들웨어(330)는 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
API(360)(예: API(145))는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizen)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(370)(예: 어플리케이션 프로그램(147))은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 또는 시계(384), 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 수행할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.
다양한 실시예에 따르면, 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 프로그램 모듈(310)의 적어도 일부는, 예를 들면, 프로세서(예: 프로세서(210))에 의해 구현(implement)(예: 실행)될 수 있다. 프로그램 모듈(310)의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.
다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리(130)가 될 수 있다.
다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다. 그리고 본 명세서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 명세서에서 기재된 기술의 범위를 한정하는 것은 아니다. 따라서, 본 명세서의 범위는, 본 명세서의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.
도 4A는 일 실시예에 따라 촬영 객체가 되는 골프 스윙 동작의 예시이다. 골프 스윙 동작은 골프 클럽이 경추 등을 회전 축으로 하여 휘둘러지는 원심력을 이용하여 골프 공을 치는 일련의 움직임을 의미할 수 있다.
골프 스윙 동작에서 클럽 헤드(410)가 지나간 흔적에 따라 그려지는 원 또는 타원을 스윙 궤도라고 할 수 있다.
스윙 동작의 시작부터 피니쉬까지는 아주 짧은 시간 동안 행해지므로 일련의 스윙 동작 중 하나 또는 그 이상의 관심 영역을 포착하여 촬영하는 것은 쉽지 않을 수 있다.
관심 영역은 일련의 스윙 동작 중 사용자가 촬영 디바이스(101)를 통하여 촬영하고자 하는 일부분을 의미할 수 있다. 예를 들어, 관심 영역은 백 스윙 탑(back swing top) 순간, 골프 클럽 헤드(410)가 공을 타격하는 임팩트 순간, 타격된 공이 앞으로 진행되는 순간, 릴리즈 순간, 피니쉬 순간, 팔로 스루 순간(follow through) 등을 포함할 수 있다. 또한 관심 영역은 일 순간 아니라, 임팩트 순간을 포함하여 골프 클럽 헤드(410)가 임팩트 전후 30 센티미터 사이에 움직이는 동안의 영역, 골프 클럽 헤드(410)가 백 스윙 탑 전후 30 센티미터 사이를 움직이는 영역 등과 같이 일정한 구간을 포함할 수도 있다.
일부 실시예에서 관심 영역으로 선택되는 빈도가 높은 일 스윙 순간은, 골프 클럽의 위치 또는 회전 각도 등에 의하여 미리 정의될 수 있다. 예를 들어, 클럽의 위치 또는 손의 위치가 사용자의 배꼽 정면에 위치하면 임팩트 순간으로 정의할 수 있다.
본 명세서에서 회전 각도란 스윙 시작 부분의 스윙 객체를 기준으로 회전이 진행된 정도를 나타낼 수 있다. 다른 실시예에서 회전 각도는 지면에 평행한 수평면 등과 같은 다른 기준점을 가질 수도 있다.
도 4B는 일 실시예에 따라 촬영 객체가 되는 야구 스윙 동작의 예시이다. 야구 스윙 동작은 타자가 투구를 치기 위해서 배트를 휘두르는 일련의 움직임을 가리킨다.
야구 스윙 동작에서 사용자로부터 먼 배트의 끝(430)이 지나간 흔적에 따라 그려지는 원을 스윙 궤도라고 할 수 있다.
스윙 동작의 시작부터 피니쉬까지는 아주 짧은 시간 동안 행해지므로 일련의 스윙 동작 중 하나 또는 그 이상의 관심 영역을 포착하여 촬영하는 것은 쉽지 않을 수 있다.
관심 영역은 일련의 스윙 동작 중 사용자가 촬영 디바이스(101)를 통하여 촬영하고자 하는 일부분을 의미할 수 있다. 예를 들어, 관심 영역은 배트가 공을 타격하는 순간, 타격된 공이 앞으로 진행되는 순간, 백 스윙 탑의 순간 등을 포함할 수 있다. 또한 관심 영역은 일 순간 아니라, 타격 순간을 포함하여 배트(430)가 타격 전후 30 센티미터 사이에 움직이는 동안의 영역, 배트(430)가 백 스윙 탑 전후 30 센티미터 사이를 움직이는 영역 등과 같이 일정한 구간을 포함할 수도 있다.
일부 실시예에서 관심 영역으로 선택되는 빈도가 높은 일 스윙 순간은, 배트의 위치 또는 회전 각도 등에 의하여 미리 정의될 수 있다.
본 명세서에서 스윙 동작이라는 용어는 도 4A의 골프 스윙 동작, 도 4B의 야구 스윙 동작만을 의미하는 것은 아니고, 다양한 형태를 포함할 수 있다. 예를 들어, 야구에서 투수나 야수가 공을 던질 때의 팔 운동, 낚시를 하기 위하여 낚싯줄을 던지는 동작, 테니스 또는 배드민턴에서 공을 타격하기위하여 라켓을 휘두르는 동작 등도 스윙 동작에 해당할 수 있다.
일 실시예에 따른 촬영 디바이스(101)는 짧은 순간 동안 행해지는 스윙 동작 중 하나 또는 그 이상의 관심 영역을 효율적으로 포착하여 촬영하도록 할 수 있다. 촬영은 자동 또는 수동으로 이루어질 수 있다.
도 5는 일 실시예에 따른 촬영 디바이스의 개략적인 블록도이다. 촬영 디바이스(501)는 입력부(510), 프로세서(530), 표시부(550)를 포함할 수 있다.
입력부(510)는 사용자 또는 다른 외부 기기로부터 스윙 동작 중 어떤 동작이 관심 영역인지에 대한 입력을 수신하여 프로세서(530)에 전송할 수 있다. 입력부(510)가 관심 영역을 수신하는 다양한 방법에 대하여는 도7에서 후술한다.
프로세서(530)는 표시부(550)에 디스플레이된 스윙 동작의 일부를 기초로 스윙 궤도를 예측하고, 예측된 스윙 궤도를 보정하며, 보정된 스윙궤도를 기초로 관심 영역에 대한 촬영 시점을 결정하여 결정된 촬영 시점에 피사체를 촬영하도록 촬영 디바이스(501)를 제어할 수 있다.
프로세서(530)는 수신된 영상에서 스윙 객체를 추출할 수 있다.
프로세서(530)는 표시부에 디스플레이된 라이브 뷰 영상의 일부를 기초로 전체 스윙 궤도를 예측할 수 있다. 예를 들어, 골프 스윙을 어드레스(address), 백 스윙(back swing), 백 스윙 탑(back swing top), 다운 스윙(down swing), 임팩트(impact), 팔로 스루(follow through), 피니쉬(finish)로 구분할 때, 어드레스 및 백 스윙까지만 이루어진 시점에서 프로세서(530)는 어드레스 및 백 스윙까지의 궤도를 기초로 피니쉬까지 이루어지는 경우의 전체 스윙 궤도를 예측할 수 있다.
예측된 스윙 궤도를 보정하는 자세한 방법에 대하여는 후술한다.
프로세서(530)는 촬영 명령이 내려진 순간부터 이미지 센서가 해당 라이브 뷰를 종료하고 스틸 이미지를 준비하는데 필요한 시간, 셔터가 실제로 릴리즈되는 데 필요한 시간 등을 자동으로 고려하여 촬영 시점을 결정할 수 있다.
프로세서(530)는 결정된 촬영 시점에 촬영이 수행되도록 촬영 디바이스(101)를 제어할 수 있다.
표시부(550)는 센서를 통하여 입력된 이미지 신호를 라이브 뷰(live view) 영상으로 디스플레이할 수 있다. 또한 표시부(550)는 이미 촬영된 영상을 메모리로부터 수신하여 디스플레이할 수도 있다.
본 실시예에서 입력부(510), 프로세서(530) 및 표시부(550)는 별도의 구성 단위로 표현되어 있으나, 일부 실시예에서는 입력부(510), 프로세서(530) 및 표시부(550)가 합쳐져 동일한 구성 단위로 구현될 수도 있다.
또한 본 실시예에서 입력부(510), 프로세서(530) 및 표시부(550)는 촬영 디바이스(501) 내부에 인접하여 위치한 구성 단위로 표현되었지만, 입력부(510), 프로세서(530) 및 표시부(550)의 각 기능을 담당하는 장치는 반드시 물리적으로 인접할 필요는 없으므로, 실시 예에 따라 입력부(510), 프로세서(530) 및 표시부(550)가 분산되어 있을 수 있다.
또한, 촬영 디바이스(501)는 물리적 장치에 한정되지 않으므로, 촬영 디바이스(501)의 기능 중 일부는 하드웨어가 아닌 소프트웨어로 구현될 수도 있다.
일부 실시예에 따르면 촬영 디바이스(501)는 촬영부를 더 포함할 수 있다. 촬영부는 구비된 렌즈를 통하여 입력된 빛을 촬상 센서에 의해 이미지 신호로 변환할 수 있다.
도 6은 일 실시예에 따른 촬영 디바이스 제어 방법의 흐름도이다.
단계 610에서 촬영 디바이스(501)는 관심 영역에 대한 입력을 수신할 수 있다. 일부 실시예에서 촬영 디바이스(501)는 스윙의 종류를 선택할 수 있다. 일부 실시예에서 촬영 디바이스(501)는 일련의 스윙 동작 중에서 특별히 관심을 가지고 촬영하고자 하는 일 순간 또는 일정 구간 즉, 관심 영역에 대한 입력을 수신할 수 있다. 관심 영역은 특별히 관심을 가지고 촬영하고자 하는 일 순간 또는 일정 구간 의 전체 영상 중 손목 부분, 어깨 부분, 타격 부분 등과 같은 일부 영역일 수도 있다.
일부 실시예에서 촬영 디바이스(501)는 관심 영역에 대한 촬영 방법을 선택할 수도 있다. 예를 들어, 촬영 디바이스(501)는 관심 영역을 스틸 이미지로 촬영하거나, 관심 영역을 확대하여 촬영하거나, 관심 영역의 전부 또는 일부에 대하여 초당 프레임 수(FPS) 또는 해상도와 같은 촬영 환경에 대한 설정을 변경하여 촬영할 수 있다.
단계 630에서 촬영 디바이스(501)는 라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 화면의 일 영역에 입력되는 스윙 동작의 일부를 수신할 수 있다.
스윙 동작의 일부는 스윙 시작부터 다른 일 순간까지 일 수도 있고, 스윙 동작 진행 중간 동작부터 다른 일 순간까지일 수도 있다.
단계 650에서 촬영 디바이스(501)는 수신된 스윙 동작의 일부를 기초로 스윙 객체의 회전 각도를 결정할 수 있다. 스윙 객체의 회전 각도는 현재 스윙 객체의 위치일 수 있다.
일 실시예에서 촬영 디바이스(501)는 수신된 스윙 동작의 일부를 기초로 스윙 궤도를 예측할 수 있다. 일 실시예에서 촬영 디바이스(501)는 스윙 동작의 진행 정도에 따라 예측된 스윙 궤도를 업데이트할 수 있다. 예를 들어, 스윙 동작의 20퍼센트가 수신된 상태에서 예측한 스윙 궤도와 스윙 동작의 50퍼센트가 수신된 상태에서 예측한 스윙 궤도가 일치하지 않는 경우, 예측한 스윙 궤도를 스윙 동작의 50퍼센트가 수신된 상태에서 예측한 스윙 궤도로 업데이트할 수 있다.
일부 실시예에서 촬영 디바이스(501)는 미리 수신된 연습 스윙 동작을 기초로 스윙 궤적의 타입이 원인지 타원인지 타원이라면 어떤 형태의 타원인지 등을 결정하여 각각의 경우에 적합한 방식으로 스윙 궤도를 예측할 수 있다. 본 명세서에서 연습 스윙은 골프, 야구 등의 스윙 동작에서 실제로 공을 타격하는 스윙 동작 전에 공을 타격하지 않고 허공에 해 보는 것을 의미할 수 있다.
촬영 디바이스(501)는 예측된 스윙 궤도를 보정할 수 있다. 일 실시예에서 촬영 디바이스(501)는 기준면과 스윙 객체 사이의 각도에 의한 왜곡, 촬영 디바이스와 피사체 사이의 각도에 의한 왜곡 및 롤링 셔터(rolling shutter) 동작 시 센서의 수평 방향으로 이동하는 물체에 대한 판독 각도 오차 중 적어도 하나를 보정할 수 있다. 구체적인 보정 방법에 대하여는 후술한다.
일 실시예에서 촬영 디바이스(501)는 라이브 뷰 상에 나타난 스윙 객체의 회전 각도를 기초로 실제 스윙 객체의 회전 각도를 검색할 수 있다. 이 경우, 라이브 뷰 상에 나타난 스윙 객체의 회전 각도와 실제 스윙 객체의 회전 각도 사이의 관계는 미리 학습된 데이터에 의해 정의되었을 수 있다.
단계 670에서 촬영 디바이스(501)는 결정된 스윙 객체의 회전 각도를 기초로 임의의 시간 후의 회전 각도를 예측하고, 관심 영역에 대한 촬영 시점을 결정하여 촬영할 수 있다.
촬영 시점은 스윙 속도를 고려하여 결정될 수 있다.
촬영 시점은, 단계 650에서 보정된 스윙 궤도 상에서, 촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 시간 간격을 고려하여, 해당 시간 간격 이후에 예측되는 스윙 객체의 위치를 고려하여 결정될 수 있다.
일 실시예에서 촬영 디바이스(501)는 촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격을 계산하여 촬영 시점을 결정할 수 있다. 촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격은 셔터 렉(Shutter Lag) 및 센서의 노광 시간 등에 의해 결정될 수 있다.
도 7은 일 실시예에 따라 촬영 디바이스가 관심 대상에 대한 입력을 수신하는 예시이다. 본 실시예에서 촬영 디바이스(701)는 표시부(710)에 스윙 동작 샘플을 디스플레이하여 사용자가 관심 영역을 입력하도록 할 수 있다.
표시부(710)에 디스플레이 된 스윙 동작 샘플은 임팩트 순간(730), 백 스윙 탑 순간(750), 피니쉬 순간(770) 등과 같은 중요 포인트를 디스플레이할 수 있다. 사용자는 디스플레이된 포인트 중 적어도 하나를 관심 영역으로 선택할 수 있다.
일부 실시예에서, 사용자는 백 스윙 탑 순간(750)부터 임팩트 순간(730)까지의 구간과 같이 일정한 구간을 관심 영역으로 선택할 수도 있다. 관심 영역에 대한 선택은 터치 스크린, 마우스, 터치 패드, 키보드 등의 다양한 입력 장치를 통하여 드래그, 터치, 클릭 등의 다양한 방법으로 이루어질 수 있다. 일부 실시예에서 관심 영역에 대한 입력의 수신은 자동으로 소정의 영역에 대한 입력을 수신하거나, 수동으로 입력을 수신할 수 있다. 예를 들어, 촬영 디바이스(701)는 임팩트 순간이 관심 영역으로 입력되도록 자동 설정할 수 있고, 촬영 시마다 수동으로 관심 영역에 대한 입력을 수신하도록 할 수도 있다.
일부 실시예에서, 촬영 디바이스(701)는 사용자로부터 어떤 종류의 스윙 동작에 대하여 촬영할 것인지에 대한 입력을 미리 수신할 수 있다. 스윙 동작의 종류로는 골프 스윙 동작, 야구 배트 스윙 동작, 야구 투구 스윙 동작, 테니스 스윙 동작 등이 있을 수 있다.
다른 일부 실시예에서 촬영 디바이스(701)는 관심 영역에 대한 촬영 방법에 대한 입력을 수신할 수 있다. 촬영 방법에 대한 입력은 스틸 이미지 촬영, 고해상도 촬영, 특정 부분 확대 촬영, 동영상 촬영, 연속 촬영, FPS 설정을 변경한 촬영 등 중에 하나 이상의 촬영 방법에 대한 선택을 의미할 수 있다.
일부 실시예에서, 촬영 디바이스(701)가 복수 개의 관심 영역에 대한 입력을 수신한 경우, 촬영 디바이스(701)는 수신한 관심 영역의 수 만큼 촬영을 수행할 수 있다.
일부 실시예에서는 촬영 시에 해상도를 변경하지 않고, 촬영된 영상에서 관심 영역에 대한 해상도를 변경할 수 있다. 일부 실시예에서 촬영 디바이스(701)는 스윙 속도를 라이브 뷰에 디스플레이하거나, 촬영된 영상과 함께 저장하여, 촬영된 영상과 함께 디스플레이할 수 있다. 스윙 속도는 숫자, 색상 및 그래프 중 적어도 하나의 형태로 디스플레이될 수 있다.
도 8A 및 도8B는 일 실시예에 따라 스윙 동작을 촬영할 때 기준면과 스윙 객체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
스윙 궤도는 스윙 중심 축을 기준으로하는 원 또는 타원의 수식으로 모델링될 수 있다. 그러나, 스윙 동작은 3차원 공간에서 수행되므로, 촬영 디바이스(701)의 라이브 뷰를 통하여 수신된 스윙 궤도는 기준면과 스윙 객체 사이의 각도에 따라 왜곡될 수 있다.
도8A의 실시예에서 기준면은 지면이고, 스윙 객체는 골프 클럽이 될 수 있다. 지면과 스윙 객체는 각도 A 만큼 기울어져 있다.
따라서, 2차원 상의 스윙 궤도는 도8B의 510과 같은 원형이지만, 촬영 디바이스의 라이브 뷰를 통하여 수신된 스윙 궤도는 도8B의 530과 같은 타원형일 수 있다.
촬영 디바이스의 라이브 뷰를 통하여 수신된 스윙 궤도(530)는 기울기 A에 의하여 왜곡된 궤도이므로 관심 영역에 대하여 정확한 시점에 촬영을 수행하기 위하여는 왜곡된 궤도의 보정이 필요하다. 구체적인 보정 방법에 대하여는 후술하기로 한다.
도 9A 및 9B는 일 실시예에 따라 스윙 동작을 촬영할 때 촬영 디바이스와 피사체 사이의 각도에 따라 발생하는 스윙 궤도 왜곡의 예시이다.
스윙 궤도는 스윙 중심 축을 기준으로하는 원 또는 타원의 수식으로 모델링될 수 있다. 그러나, 스윙 동작을 촬영하는 촬영 디바이스의 위치에 따라, 촬영 디바이스(701)의 라이브 뷰를 통하여 수신된 스윙 궤도는 왜곡될 수 있다.
촬영 디바이스(701)가 피사체를 정면(910)에서 촬영하는 경우에는 촬영 디바이스(701)의 위치에 따른 왜곡이 없을 수도 있다.
하지만 예를 들어, 촬영 디바이스(701)가 피사체의 왼쪽(930) 또는 오른쪽(950)에서 스윙 동작을 촬영 한다면, 촬영 디바이스(701)의 라이브 뷰를 통하여 수신된 스윙 궤도는 촬영 디바이스(701)와 피사체 사이의 각도(B)에 의해 왜곡될 수 있다.
피사체는 골프 스윙 동작을 수행하는 사람, 야구 스윙 동작을 수행하는 사람 등과 같이 다양한 스윙 동작을 수행하는 대상일 수 있다.
도9A의 실시예에서 촬영 디바이스(701)가 피사체의 왼쪽(930) 에서 촬영하고, 촬영 디바이스(701)와 피사체가 각도 B 만큼 떨어져 있는 경우, 회전 평면 상의 실제 스윙 궤도는 도9B의 990과 같은 형태이지만, 촬영 디바이스의 라이브 뷰를 통하여 수신된 스윙 궤도는 도9B의 970과 같이 왜곡된 형태일 수 있다.
촬영 디바이스의 라이브 뷰를 통하여 수신된 스윙 궤도(970)는 각도 B에 의하여 왜곡된 궤도이므로 관심 영역에 대하여 정확한 시점에 촬영을 수행하기 위하여는 왜곡된 궤도의 보정이 필요하다. 도9B의 970은 촬영 디바이스와 피사체 사이의 각도에 의하여뿐 아니라, 기준면과 스윙 객체 사이의 각도에 의하여 더 왜곡되었을 수도 있다. 구체적인 보정 방법에 대하여는 후술하기로 한다.
도 10은 일 실시예에 따라 스윙 동작을 촬영할 때 왜곡된 회전 각도와 보정된 회전 각도를 나타내는 예시이다.
바깥 쪽의 스윙 궤도(1030)는 촬영 디바이스(701)를 스윙 궤도의 회전 평면에 수직으로 두고 촬영한 경우의 궤도이고, 안 쪽의 스윙 궤도(1010)는 수신된 일부 스윙 동작을 기초로 예측한 스윙 궤도 즉, 기준면과 스윙 객체 사이의 각도 α 및 촬영 디바이스(701)와 피사체 사이의 각도 β에 의해 왜곡된 스윙 궤도일 수 있다.
스윙 궤도의 왜곡에 따라 스윙 객체의 회전 각도도 실제로는 A인데 B인 것처럼 왜곡될 수 있다. 따라서 정확하게 관심 영역을 촬영할 시점을 결정하기 위하여는 스윙 객체의 실제 회전 각도를 검출할 수 있어야 한다.
원래의 스윙 궤도(1030)는 스윙 주체에 따라 차이가 있을 수 있으므로, 촬영 디바이스(701)는 스윙 주체의 연습 스윙을 참조하여 원래 스윙 궤도(1030)의 형태가 원형인지 타원형인지를 결정하고, 그에 따라 다른 방식으로 원래의 회전 각도를 결정할 수 있다.
도 11은 일 실시예에 따라 스윙 동작을 촬영할 때 스윙 객체의 회전 각도를 결정하는 방법의 흐름도이다. 촬영 디바이스(701)는 스윙 동작을 촬영할 때 스윙 궤도 왜곡을 보정하여 스윙 객체의 실제 회전 각도를 결정할 수 있다.
촬영 디바이스(701)는 라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 화면의 일 영역에 입력되는 상기 스윙 동작의 일부를 수신하여 수신된 스윙 동작의 일부를 기초로 스윙 궤도를 예측할 수 있다. 예측된 스윙 궤도는 도8B, 도9B에 기재한 바와 같이 기준면과 스윙 객체 사이의 각도 및 촬영 디바이스(701)와 피사체 사이의 각도에 의한 왜곡을 포함할 수 있다.
단계 1110에서 촬영 디바이스(701)는 기준면과 스윙 객체 사이의 각도 및 촬영 디바이스(701)와 피사체 사이의 각도를 검출할 수 있다. 촬영 디바이스(701)는 원 또는 타원의 표준 방정식을 통하여 기준면과 스윙 객체 사이의 각도 및 촬영 디바이스(701)와 피사체 사이의 각도를 검출할 수 있다.
예를 들어, 원래의 스윙 궤도가 타원인 경우 다음과 같이 기준면과 스윙 객체 사이의 각도 및 촬영 디바이스(701)와 피사체 사이의 각도를 검출할 수 있다.
Figure 112015072311767-pat00001
수학식 1은 A', B', C'를 타원의 형태를 결정하는 계수로 가지는 타원 방정식이다. 수학식 1은 수신된 일부 스윙 동작을 기초로 예측한 스윙 궤도 즉, 왜곡을 내포하고 있는 스윙 궤도를 의미할 수 있다. A', B', C'는 상수일 수 있다.
Figure 112015072311767-pat00002
수학식 2는 특정 스윙 궤도 즉 타원이 기준면과 스윙 객체 사이의 각도 α 및 촬영 디바이스(701)와 피사체 사이의 각도 β에 의하여 어떻게 왜곡되어 보일지를 나타내는 타원 방정식일 수 있다. 특정 스윙 궤도는 스윙 동작이 왜곡되지 않은 원래의 스윙 궤도를 의미할 수 있다.
수학식 2에서 A(α, β)는 각도 α, β를 포함하는 특정한 수학식일 수 있다. 수학식 2는 사용자의 설정, 새로운 수학식의 발견 등에 따라 변경될 수도 있다.
기준면과 스윙 객체 사이의 각도 α 및 촬영 디바이스(701)와 피사체 사이의 각도 β 만큼 기울어진 상태에서 보이는 스윙 궤도를 나타내는 수학식 2가, 수학식 1과 일치한다고 가정하면, A(α, β)와 A', B(α, β)와 B', C (α, β)와 C'의 관계를 통하여 α, β를 각각 계산해 낼 수 있다.
스윙 궤도는 스윙 주체에 따라 모양의 차이가 있을 수 있다. 예를 들어, 한 사람은 원형의 스윙 궤도를 가질 수 있고, 다른 사람은 원형에 비해 세로로 긴 타원형의 스윙 궤도를 가질 수 있으며, 또 다른 사람은 원형에 비해 가로로 긴 타원형의 스윙 궤도를 가질 수 있다. 이 경우 궤도의 찌그러짐의 정도를 표현하는 파라미터 a를 포함하는 수학식을 만들 수 있다.
Figure 112015072311767-pat00003
수학식 3에서 α는 기준면과 스윙 객체 사이의 각도이고, acos는 cos 함수의 역함수이며, sqrt는 제곱근을 의미하고, cos_sq는 중간 변수인데 다음과 같이 구할 수 있다.
Figure 112015072311767-pat00004
만일, cos_sq가 1보다 크거나, -1 보다 작은 경우,
Figure 112015072311767-pat00005
와 같이 구해질 수도 있다.
수학식 4 및 수학식 5에서 b 및 ac는 중간 변수인데 각각 다음과 같이 구할 수 있다.
Figure 112015072311767-pat00006
Figure 112015072311767-pat00007
또한, 촬영 디바이스(701)와 피사체 사이의 각도 β는 다음과 같이 구할 수 있다.
만약, α 의 절대값이 0 보다 크면, s = B' (2 * A'* tan(α))이고 β = asin(s)가 된다.
만약, α 의 절대값이 0 이하이면 c = sqrt(C'/ (a * A')이고, β = acos(c)가 된다.
이 때, s 및 c는 중간 변수이다.
일부 실시예에서는 카메라의 초점 거리 등을 포함하는 촬영 디바이스의 다양한 파라미터가 α 및 β를 결정하는 데 활용될 수 있다.
단계 1130에서 촬영 디바이스(701)는 스윙 궤도의 왜곡을 보정할 수 있다. 촬영 디바이스(701)는 단계 1010에서 구한 기준면과 스윙 객체 사이의 각도 α 및 촬영 디바이스(701)와 피사체 사이의 각도 β를 기초로 스윙 궤도의 왜곡을 보정하여 원래의 스윙 궤도를 찾을 수 있다.
본 실시예와 같은 방정식을 통한 계산 방법은 스윙 궤도를 보정하는 하나의 예시일 뿐이고 기타 다양한 방법을 통하여 스윙 궤도는 보정될 수 있다.
단계 1150에서 촬영 디바이스(701)는 스윙 객체의 회전 각도를 결정할 수 있다.
촬영 디바이스(701)는 보정된 스윙 궤도를 기초로 현재 스윙 객체의 실제 회전 각도를 결정할 수 있다. 촬영 디바이스(701)는 결정된 회전 각도를 기초로 관심 영역을 촬영해야 할 촬영 시점을 결정할 수 있다.
도 12는 일 실시예에 따라 스윙 객체의 회전 각도를 결정하는 방법의 예시이다.
촬영 디바이스(701)는 도10의 방법에 의한 반복 학습을 통해 미리 검출된 회전 각도와 보정 후의 실제 회전 각도에 대한 데이터를 저장할 수 있다. 학습 데이터는 촬영 디바이스(701) 내부 메모리나 저장부 또는 외부 저장 장치에 테이블의 형태로 저장될 수 있다.
촬영 디바이스(701)는 저장된 데이터를 이용하여 라이브 뷰를 통하여 스윙의 일부가 수신되었을 때 수신된 스윙 객체의 최종 회전 각도를 측정할 수 있다. 도12의 측정각(1230)은 촬영 디바이스(701)가 수신한 그대로를 측정한 회전 각도를 의미한다. 도12의 표를 기초로 각 측정각에 대응하는 정규화된 회전 각도(1210)를 검출할 수 있다. 정규화된 회전 각도는 기준면과 스윙 객체 사이의 각도 및 촬영 디바이스(701)와 피사체 사이의 각도 등에 의한 왜곡을 고려하여 보정된 실제 스윙 궤도에 따른 회전 각도를 의미한다.
이렇게 학습에 의해 미리 정의된 표를 기준으로 실제 회전 각도를 구하는 방법은 도10에서와 같은 계산 과정을 각 실행마다 거치는 것을 생략하게 해 주어 프로세서의 효율 및 처리 속도를 향상시킬 수 있다.
도 13은 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터(rolling shutter) 동작에 따른 왜곡의 예시이다. 촬영 디바이스(701)는 이미지 센서를 통해 롤링 셔터 방식으로 영상을 수신할 수 있다. 롤링 셔터 방식이란 이미지 센서가 인식한 영상을 수신할 때, 센서를 비선형으로 스캔하는 방식을 의미한다.
롤링 셔터(rolling shutter)로 동작하는 경우, 센서의 행마다 이미지를 스캔하는 시간이 다르므로 센서의 수평 방향으로 이동하는 물체는 행마다 스캔되는 위치가 달라질 수 있고, 이에 따른 물체 판독 각도의 차이 때문에 직선이 곧지 못하게 인식되는 얼라이어싱 현상(aliasing effect)가 나타날 수 있다. 예를 들어, 도 13의 골프 클럽(1310)은 실제로는 곧은 형태임에도 구부러진 것처럼 촬영 디바이스(701)에 의해 인식되었다.
따라서, 촬영 디바이스(701)가 롤링 셔터 방식으로 이미지 센서를 판독한다면, 판독 각도에 따른 오차를 보정하는 절차가 선행되어야 스윙 객체의 정확한 위치 및 회전 각도를 검출할 수 있다.
도 14A는 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터(rolling shutter) 동작에 따른 왜곡의 예시이다. 곧은 스윙 객체가 회전하는 경우 스윙 객체의 수평 이동에 대하여 롤링 셔터(rolling shutter) 방식으로 촬영하면 도 14A와 같이 센서의 각 행을 판독하는 시간 차이 때문에 각 행마다 스윙 객체가 판독되는 회전 각도가 달라질 수 있다.
도 14B는 일 실시예에 따라 스윙 동작을 촬영할 때 글로벌 셔터(global shutter) 동작에 따른 촬영의 예시이다. 글로벌 셔터 방식은 이미지 센서를 판독할 때 각 행마다 시간 차를 두지 않고 모든 행을 한 번에 판독하는 방식을 의미한다. 도14A와 동일한 스윙 객체를 글로벌 셔터 방식으로 촬영하면 도14B와 같이 곧은 형태로 인식될 수 있다.
도 15는 일 실시예에 따라 스윙 동작을 촬영할 때 롤링 셔터 동작에 따라 왜곡된 스윙 객체를 보정하는 방법에 대한 예시이다. 촬영 디바이스(701)가 롤링 셔터 방식으로 동작하는 경우, 센서의 수평 방향으로 이동하는 객체에 대한 왜곡은 센서의 행 별 판독 속도와 이동하는 객체의 속도를 통하여 보정될 수 있다.
객체에 대한 왜곡은 객체의 가로 방향 이동 속도 벡터(1510)와 센서의 판독 속도 벡터(1530)의 합 벡터(1550) 방향으로 나타난다. 이 때, 객체의 가로 방향 이동 속도는 라이브 뷰를 통하여 수신된 영상을 통하여 연산할 수 있고, 센서의 판독 속도는 미리 정해진 값일 수 있다.
따라서 보정은 객체의 가로 방향 이동 속도 벡터(1510)와 센서의 판독 속도 벡터(1530)의 합 벡터(1550) 방향의 역방향으로 이루어질 수 있다. 그러나 롤링 셔터 동작에 따라 왜곡된 스윙 객체를 보정하는 방법이 이에 한정되는 것은 아니다.
도 16은 일 실시예에 따라 촬영된 영상을 디스플레이하는 방법에 대한 예시이다. 촬영 디바이스(701)는 라이브 뷰에 디스플레이된 스윙 궤도를 메타데이터로 별도 저장할 수 있다. 촬영 디바이스(701)는 촬영된 영상을 표시부에 디스플레이할 때 메타데이터로 저장된 스윙 궤도(1610)를 함께 디스플레이할 수 있다. 스윙 궤도는 사용자로부터 먼 스윙 객체 끝의 흔적을 연결한 선(1610)의 형태로 제공될 수 있다.
일부 실시예에서 스윙 궤도는 사용자로부터 먼 스윙 객체 끝의 흔적을 연결한 다양한 다른 형태로 제공될 수도 있다.
한편, 본 발명은 컴퓨터 판독가능 저장매체에 컴퓨터가 판독 가능한 코드를 저장하여 구현하는 것이 가능하다. 상기 컴퓨터 판독가능 저장매체는 컴퓨터 시스템에 의하여 판독될 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다.
상기 컴퓨터가 판독 가능한 코드는, 상기 컴퓨터 판독가능 저장매체로부터 프로세서에 의하여 독출되어 실행될 때, 본 발명에 따른 영상 처리 방법을 구현하는 단계들을 수행하도록 구성된다. 상기 컴퓨터가 판독 가능한 코드는 다양한 프로그래밍 언어들로 구현될 수 있다. 그리고 본 발명의 실시예들을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 통상의 기술자들에 의하여 용이하게 프로그래밍될 수 있다.
컴퓨터 판독가능 저장매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 반송파(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터 판독가능 저장매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행되는 것도 가능하다.
전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일 형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 위 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (19)

  1. 스윙 동작을 촬영하는 촬영 디바이스를 제어하는 방법에 있어서,
    상기 스윙 동작 중 관심 영역에 대한 입력을 수신하는 단계;
    라이브 뷰(live view) 영상이 화면에 디스플레이 된 상태에서 상기 화면의 일 영역에 입력되는 상기 스윙 동작의 일부를 수신하는 단계;
    상기 수신된 스윙 동작의 일부를 기초로 스윙 궤도를 예측하고, 상기 예측된 스윙 궤도를 기초로 스윙 객체의 회전 각도를 결정하는 단계; 및
    상기 결정된 회전 각도를 기초로 상기 관심 영역에 대한 촬영 시점을 결정하고, 상기 결정된 촬영 시점에 피사체를 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법.
  2. 제1항에 있어서,
    상기 스윙 객체의 회전 각도를 결정하는 단계는, 상기 스윙 동작의 기준면과 상기 스윙 객체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 및 상기 촬영 디바이스와 상기 피사체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 중 적어도 하나를 보정하는 단계를 포함하는 촬영 디바이스 제어 방법.
  3. 제2항에 있어서,
    상기 보정하는 단계는,
    소정의 방정식 및 학습에 의해 얻은 데이터 중 적어도 하나에 의해 상기 기준면과 상기 스윙 객체 사이의 각도 및 상기 촬영 디바이스와 상기 피사체 사이의 각도 중 적어도 하나를 계산하는 단계를 포함하는 촬영 디바이스 제어 방법.
  4. 제1항에 있어서,
    상기 관심 영역에 대한 입력을 수신하는 단계는,
    자동으로 소정의 영역에 대한 입력을 수신하거나 수동으로 입력을 수신하는 촬영 디바이스 제어 방법.
  5. 제1항에 있어서,
    상기 스윙 객체의 회전 각도를 결정하는 단계는,
    영상을 획득하는 이미지 센서가 롤링 셔터(rolling shutter)로 동작하는 경우, 상기 이미지 센서의 수평 방향으로 이동하는 물체에 대한 판독 각도 오차를 보정하는 단계를 포함하는 촬영 디바이스 제어 방법.
  6. 제1항에 있어서,
    상기 촬영 시점은,
    촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격을 계산하여 결정되는 촬영 디바이스 제어 방법.
  7. 제1항에 있어서,
    상기 촬영하는 단계는,
    상기 관심 영역의 전부 또는 일부에 대하여 스틸 이미지 및 동영상 중 적어도 하나의 형태로 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법.
  8. 제1항에 있어서,
    상기 촬영하는 단계는,
    상기 관심 영역의 전부 또는 일부에 대하여 초당 프레임 수(FPS) 또는 해상도를 변경하여 촬영하는 단계를 포함하는 촬영 디바이스 제어 방법.
  9. 제1항에 있어서,
    상기 스윙 궤도를 메타데이터로 저장하여, 상기 촬영된 영상을 디스플레이할 때 상기 메타데이터로 저장된 스윙 궤도를 상기 촬영된 영상과 함께 디스플레이하는 단계를 더 포함하는 촬영 디바이스 제어 방법.
  10. 스윙 동작을 촬영하는 촬영 디바이스에 있어서,
    상기 스윙 동작 중 관심 영역에 대한 입력을 수신하는 입력부;
    라이브 뷰(live view) 영상을 디스플레이하는 표시부; 및
    상기 표시부에 디스플레이된 스윙 동작의 일부를 기초로 스윙 궤도를 예측하고, 상기 예측된 스윙 궤도를 기초로 스윙 객체의 회전 각도를 결정하고, 상기 결정된 회전 각도를 기초로 상기 관심 영역에 대한 촬영 시점을 결정하여 상기 결정된 촬영 시점에 피사체를 촬영하도록 제어하는 프로세서를 포함하는 촬영 디바이스.
  11. 제10항에 있어서,
    상기 프로세서는,
    상기 스윙 동작의 기준면과 상기 스윙 객체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 및 촬영 디바이스와 피사체 사이의 각도에 의한 상기 스윙 궤도의 왜곡 중 적어도 하나를 보정하는 촬영 디바이스.
  12. 제11항에 있어서,
    상기 프로세서는,
    소정의 방정식 및 학습에 의해 얻은 데이터 중 적어도 하나에 의해 상기 기준면과 스윙 객체 사이의 각도 및 상기 촬영 디바이스와 피사체 사이의 각도 중 적어도 하나를 계산하여 상기 기준면과 스윙 객체 사이의 각도에 의한 왜곡 및 상기 촬영 디바이스와 피사체 사이의 각도에 의한 왜곡 중 적어도 하나를 보정하는 촬영 디바이스.
  13. 제11항에 있어서,
    상기 입력부는,
    자동으로 소정의 영역에 대한 입력을 수신하거나 수동으로 입력을 수신하는 촬영 디바이스.
  14. 제10항에 있어서,
    상기 프로세서는,
    영상을 획득하는 이미지 센서가 롤링 셔터(rolling shutter)로 동작하는 경우, 상기 이미지 센서의 수평 방향으로 이동하는 물체에 대한 판독 각도 오차를 보정하여 스윙 궤도를 보정하는 촬영 디바이스.
  15. 제10항에 있어서,
    상기 프로세서는,
    촬영 명령이 수신된 시점부터 촬영이 수행되는 시점 사이의 간격을 계산하여 상기 촬영 시점을 결정하는 촬영 디바이스.
  16. 제10항에 있어서,
    상기 프로세서는,
    상기 관심 영역의 전부 또는 일부에 대하여 스틸 이미지 및 동영상 중 적어도 하나의 형태로 촬영하도록 제어하는 촬영 디바이스.
  17. 제10항에 있어서,
    상기 프로세서는 상기 관심 영역의 전부 또는 일부에 대하여 초당 프레임 수(FPS) 또는 해상도를 변경하여 촬영하도록 제어하는 촬영 디바이스.
  18. 제10항에 있어서,
    상기 표시부는 상기 스윙 궤도를 메타데이터로 저장하여, 상기 촬영된 영상을 디스플레이할 때 상기 촬영된 영상과 함께 상기 메타데이터로 저장된 스윙 궤도를 디스플레이하는 촬영 디바이스.
  19. 제 1 항 내지 제 9 항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020150105300A 2015-07-24 2015-07-24 촬영 디바이스 및 그 제어 방법 KR102352680B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150105300A KR102352680B1 (ko) 2015-07-24 2015-07-24 촬영 디바이스 및 그 제어 방법
US15/165,243 US9979872B2 (en) 2015-07-24 2016-05-26 Photographing apparatus and method of controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150105300A KR102352680B1 (ko) 2015-07-24 2015-07-24 촬영 디바이스 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR20170011873A KR20170011873A (ko) 2017-02-02
KR102352680B1 true KR102352680B1 (ko) 2022-01-18

Family

ID=57837922

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150105300A KR102352680B1 (ko) 2015-07-24 2015-07-24 촬영 디바이스 및 그 제어 방법

Country Status (2)

Country Link
US (1) US9979872B2 (ko)
KR (1) KR102352680B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11527053B2 (en) 2018-12-12 2022-12-13 Samsung Electronics Co., Ltd. Method and apparatus of processing image

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140285718A1 (en) * 2013-03-22 2014-09-25 Casio Computer Co., Ltd. Moving image extracting apparatus extracting moving image of predetermined period from moving image
US20150085149A1 (en) * 2013-09-26 2015-03-26 Canon Kabushiki Kaisha Image capture apparatus and control method therefor
US20150111657A1 (en) * 2013-10-18 2015-04-23 Seiko Epson Corporation Movement analysis method, movement analysis apparatus, and movement analysis program

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06114139A (ja) * 1992-01-29 1994-04-26 Katayama Midori ゴルフスイングが正しく成されているか否かの見極め装置とその矯正表示方法とそのビデオテープ
KR19980026347U (ko) 1996-11-08 1998-08-05 박병재 차량의 시프트 레버 높이 조절장치
KR100620873B1 (ko) 2005-06-17 2006-09-06 주식회사 엘에스미디어 골프 스윙 동작 분석 시스템 및 방법
KR20070026282A (ko) 2006-10-13 2007-03-08 박세정 스윙순간 포착을 위한 센서 기술을 이용한 일체형 골프스윙분석기 및 스윙 센싱 및 자동재생 방법
JP2008104509A (ja) 2006-10-23 2008-05-08 Win System:Kk ゴルフスイングフォーム撮影装置
KR20100037961A (ko) * 2008-10-02 2010-04-12 신창화 골프 동영상의 동적 피사체 추출 방법과 골프 자세 교정 시스템
KR101044887B1 (ko) 2009-06-23 2011-06-28 동서대학교산학협력단 고속 씨씨디 카메라의 촬상 이미지를 이용한 골프공의 비행데이터 측정방법
EP2542855A1 (en) * 2010-03-05 2013-01-09 Interactive Sports Technologies Inc. Apparatus and method for measuring golf club shaft flex and golf simulation system incorporating the same
US9418705B2 (en) * 2010-08-26 2016-08-16 Blast Motion Inc. Sensor and media event detection system
KR101729559B1 (ko) * 2010-11-22 2017-04-24 엘지전자 주식회사 이동 단말기 및 이것의 메타데이터를 이용한 동영상 편집 방법
US10751598B2 (en) * 2011-05-11 2020-08-25 Karsten Manufacturing Corporation Systems, methods, and articles of manufacture to measure, analyze and share golf swing and ball motion characteristics
KR20110122656A (ko) 2011-09-29 2011-11-10 한준희 골프 연습 장치와 이를 이용한 방법
US9782654B2 (en) * 2011-11-04 2017-10-10 Nike, Inc. Method and apparatus for low resolution golf swing image capture analysis
JP6218351B2 (ja) * 2011-12-06 2017-10-25 ダンロップスポーツ株式会社 ゴルフスイングの診断方法
JP5874475B2 (ja) * 2012-03-21 2016-03-02 カシオ計算機株式会社 画像処理装置、画像処理方法及びプログラム
JP6439235B2 (ja) * 2012-08-10 2018-12-19 カシオ計算機株式会社 情報報知装置、情報報知方法及びプログラム
KR101358859B1 (ko) 2013-07-26 2014-02-06 몬트롤 주식회사 9축모션센서모듈을 통한 스마트기기연계형 사용자 모션 교정장치 및 방법
KR102119659B1 (ko) * 2013-09-23 2020-06-08 엘지전자 주식회사 영상표시장치 및 그것의 제어 방법
US20150285834A1 (en) * 2014-04-08 2015-10-08 Seiko Epson Corporation Sensor, computing device, and motion analyzing apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140285718A1 (en) * 2013-03-22 2014-09-25 Casio Computer Co., Ltd. Moving image extracting apparatus extracting moving image of predetermined period from moving image
US20150085149A1 (en) * 2013-09-26 2015-03-26 Canon Kabushiki Kaisha Image capture apparatus and control method therefor
US20150111657A1 (en) * 2013-10-18 2015-04-23 Seiko Epson Corporation Movement analysis method, movement analysis apparatus, and movement analysis program

Also Published As

Publication number Publication date
US20170026564A1 (en) 2017-01-26
US9979872B2 (en) 2018-05-22
KR20170011873A (ko) 2017-02-02

Similar Documents

Publication Publication Date Title
KR102529120B1 (ko) 영상을 획득하는 방법, 디바이스 및 기록매체
CN107566693B (zh) 电子设备及其图像捕获方法
KR102559625B1 (ko) 증강 현실 출력 방법 및 이를 지원하는 전자 장치
US10917552B2 (en) Photographing method using external electronic device and electronic device supporting the same
KR102449872B1 (ko) 촬영 디바이스 및 그 제어 방법
US20160349936A1 (en) Method for outputting screen and electronic device supporting the same
CN107463180A (zh) 电子设备及其操作方法
KR102328098B1 (ko) 전자장치의 초점 검출 장치 및 방법
US10304352B2 (en) Electronic device and method for sharing image
US10809710B2 (en) Method for controlling unmanned aerial vehicle and electronic device for controlling unmanned aerial vehicle
KR20180052002A (ko) 이미지 처리 방법 및 이를 지원하는 전자 장치
KR102504308B1 (ko) 디스플레이의 밝기를 제어하는 방법, 전자 장치 및 컴퓨터 판독가능 기록매체
KR20160126802A (ko) 인체 정보를 측정하는 방법 및 그 전자 장치
US10701337B2 (en) Method for controlling multi-field of view image and electronic device for supporting the same
EP3104304B1 (en) Electronic apparatus and method of extracting still images
KR20160114434A (ko) 전자 장치 및 전자 장치의 이미지 촬영 방법
KR102457247B1 (ko) 이미지를 처리하는 전자 장치 및 그 제어 방법
KR20180093558A (ko) 피사체의 이미지를 획득하기 위한 인터페이스를 제공하는 방법 및 전자 장치
KR102356599B1 (ko) 이미지의 관심 영역 결정 방법 및 관심 영역 결정 장치
KR102352680B1 (ko) 촬영 디바이스 및 그 제어 방법
KR102336879B1 (ko) 화면을 표시하는 전자 장치, 그 제어 방법
US11132574B2 (en) Method for detecting marker and electronic device thereof
KR102568387B1 (ko) 전자 장치 및 그의 데이터 처리 방법
US9871966B2 (en) Photographing apparatus and method of controlling the same

Legal Events

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