KR20170097888A - 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치 - Google Patents

복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치 Download PDF

Info

Publication number
KR20170097888A
KR20170097888A KR1020160019535A KR20160019535A KR20170097888A KR 20170097888 A KR20170097888 A KR 20170097888A KR 1020160019535 A KR1020160019535 A KR 1020160019535A KR 20160019535 A KR20160019535 A KR 20160019535A KR 20170097888 A KR20170097888 A KR 20170097888A
Authority
KR
South Korea
Prior art keywords
data
processor
activity
electronic device
information
Prior art date
Application number
KR1020160019535A
Other languages
English (en)
Other versions
KR102446811B1 (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 KR1020160019535A priority Critical patent/KR102446811B1/ko
Priority to EP17753502.8A priority patent/EP3403166A4/en
Priority to PCT/KR2017/001752 priority patent/WO2017142341A1/en
Priority to MYPI2018702903A priority patent/MY193558A/en
Priority to CN201780012097.XA priority patent/CN108701495B/zh
Priority to US15/436,613 priority patent/US10796803B2/en
Publication of KR20170097888A publication Critical patent/KR20170097888A/ko
Application granted granted Critical
Publication of KR102446811B1 publication Critical patent/KR102446811B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0075Means for generating exercise programs or schemes, e.g. computerized virtual trainer, e.g. using expert databases
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C22/00Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
    • G01C22/02Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers by conversion into electric waveforms and subsequent integration, e.g. using tachometer generator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/22Social work
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/30ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to physical therapies or activities, e.g. physiotherapy, acupressure or exercising
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
    • A61B5/024Detecting, measuring or recording pulse rate or heart rate
    • A61B5/02438Detecting, measuring or recording pulse rate or heart rate with portable devices, e.g. worn by the patient
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1112Global tracking of patients, e.g. by using GPS
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1118Determining activity level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion

Abstract

다양한 실시예는 하우징, 상기 하우징의 일부를 통하여 노출된 디스플레이, 상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 제1 모션 센서, 상기 하우징 내에 배치된 무선 통신 회로, 상기 하우징 내에 배치되고, 상기 디스플레이, 상기 제1 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서, 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행시에, 상기 프로세서가, 상기 무선 통신 회로를 이용하여, 제2 모션 센서를 포함하는 외부 전자 장치와 무선 통신 채널을 생성하고, 상기 제1 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기동안 제1 데이터를 생성하고, 상기 제2 모션 센서를 이용하여, 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 채널을 통하여 수신하고, 상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고, 상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 인스트럭션들을 저장하는 전자 장치 및 방법을 제공한다. 또한, 다른 실시예도 가능하다.

Description

복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치{METHOD FOR COMBINING AND PROVIDING COLLTECTED DATA FROM PLURAL DEVICES AND ELECTRONIC DEVICE FOR THE SAME}
다양한 실시예는 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치에 관한 것이다.
최근 디지털 기술의 발달과 함께 이동통신 단말기, PDA(Personal Digital Assistant), 전자수첩, 스마트 폰, 태블릿 PC(Personal Computer), 웨어러블 디바이스(wearable device) 등과 같은 다양한 유형의 전자 장치가 널리 사용되고 있다. 이러한, 전자 장치는 음성 통화, SMS(Short Message Service)/MMS(Multimedia Message Service) 등과 같은 메시지 전송, 영상통화, 전자수첩, 촬영, 이메일 송수신, 방송재생, 인터넷, 음악재생, 일정관리, 소셜 네트워크 서비스(SNS, Social Networking Service), 메신저, 사전, 게임 등의 기능과 같이 다양한 기능들을 구비하게 되었다.
건강에 대한 관심이 증가함으로써, 사용자의 활동을 측정하는 웨어러블 디바이스나 측정된 사용자의 활동을 보여주는 어플리케이션의 개발이 활발히 진행되고 있다. 이러한 웨어러블 디바이스는 향후 의료 서비스에도 많이 활용될 수 있다.
종래의 사용자 활동 표시 기술은 보통 하나의 기기(예: 웨어러블 디바이스)를 활용하여 표시하기 때문에 사용자가 다수의 기기를 이용하는 경우, 다수의 기기들을 이용한 연속적인(seamless) 하나의 사용자 경험(user experience)을 제공하지 못하고 있다.
다양한 실시예들은 하나 이상의 전자 장치들로부터 수집된 건강 관련 데이터를 분석하여 사용자에게 의미 있는 활동 구간을 찾아내고, 활동 구간에 따른 데이터 특성을 사용자가 직관적으로 파악할 수 있도록 하는 사용자 인터페이스(user interface) 또는 사용자 경험을 제공할 수 있는 방법 및 장치를 제공할 수 있다.
다양한 실시예들에 따른 전자 장치는 하우징, 상기 하우징의 일부를 통하여 노출된 디스플레이, 상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 제1 모션 센서, 상기 하우징 내에 배치된 무선 통신 회로, 상기 하우징 내에 배치되고, 상기 디스플레이, 상기 제1 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서, 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행시에, 상기 프로세서가, 상기 무선 통신 회로를 이용하여, 제2 모션 센서를 포함하는 외부 전자 장치와 무선 통신 채널을 생성하고, 상기 제1 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기동안 제1 데이터를 생성하고, 상기 제2 모션 센서를 이용하여, 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 채널을 통하여 수신하고, 상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고, 상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시예들에 따른 전자 장치는 하우징, 상기 하우징의 일부를 통하여 노출된 디스플레이, 상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 모션 센서, 상기 하우징 내에 배치된 무선 통신 회로, 상기 하우징 내에 배치되고, 상기 디스플레이, 상기 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서, 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하며, 상기 메모리는, 실행시에, 상기 프로세서가, 상기 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기 동안 제1 데이터를 생성하고, 상기 제1 데이터 중 제1 부분을 이용하여 상기 제1 시간 주기 중 제1 세션 동안의 상기 움직임의 제1 속성을 결정하고, 상기 제1 데이터 중 제2 부분을 이용하여 상기 제1 시간 주기 중 제2 세션 동안의 상기 움직임의 제2 속성을 결정하고, 상기 제1 속성 또는 제2 속성 중 하나를 선택하고, 상기 선택된 속성을 나타내는 이미지, 텍스트, 또는 심볼 중 적어도 하나를 상기 디스플레이에 표시된 사용자 인터페이스 상에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
다양한 실시예들에 따른 전자 장치는 메모리, 디스플레이, 통신 인터페이스, 및 상기 메모리, 상기 디스플레이, 또는 상기 통신 인터페이스와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 외부 장치로부터 수집된 건강과 연관된 데이터를 상기 통신 인터페이스를 통해 획득하고, 획득한 데이터를 단위 시간으로 보정하고, 보정된 데이터를 분석하여 활동 정보를 추출하고, 추출된 활동 정보를 상기 메모리에 저장하고, 사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 상기 디스플레이에 표시하도록 설정될 수 있다.
다양한 실시예들에 따른 전자 장치의 동작 방법은 건강과 연관된 데이터를 획득하는 동작, 상기 획득한 데이터를 단위 시간으로 보정하는 동작, 상기 보정된 데이터를 분석하여 활동 정보를 추출하는 동작, 및 사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 표시하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 하나 이상의 전자 장치들로부터 수집된 건강 관련 데이터를 분석하여 사용자에게 의미 있는 활동 구간을 찾아내고, 활동 구간에 따른 데이터 특성을 사용자가 직관적으로 파악할 수 있도록 하는 사용자 인터페이스 또는 사용자 경험을 제공할 수 있다.
다양한 실시예들에 따르면, 복수의 전자 장치들로부터 수집된 건강 관련 데이터를 통합하여 사용자의 걸음수, 활동 정보 또는 비 활동 정보에 대한 연속적인 사용자 경험을 제공할 수 있다.
도 1은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치를 도시한 도면이다.
도 2는 다양한 실시예들에 따른 전자 장치의 구성을 도시한 블록도이다.
도 3은 다양한 실시예들에 따른 프로그램 모듈을 도시한 블록도이다.
도 4는 다양한 실시예들에 따른 전자 장치와 웨어러블 디바이스의 구성을 도시한 구성도이다.
도 5는 다양한 실시예들에 따른 건강 관련 데이터 흐름의 일례를 도시한 도면이다.
도 6은 다양한 실시예들에 따른 전자 장치의 동작 방법을 도시한 흐름도이다.
도 7은 다양한 실시예들에 따른 데이터를 분석하는 일례를 도시한 도면이다.
도 8은 다양한 실시예들에 따른 전자 장치의 데이터 통합 방법을 흐름도이다.
도 9는 다양한 실시예들에 따른 전자 장치의 걸음수 통합 방법을 도시한 흐름도이다.
도 10은 다양한 실시예들에 따른 걸음수를 통합하는 일례를 도시한 도면이다.
도 11은 다양한 실시예들에 따른 전자 장치의 활동 정보 통합 방법을 도시한 흐름도이다.
도 12는 다양한 실시예들에 따른 활동 정보를 통합하는 일례를 도시한 도면이다.
도 13은 다양한 실시예들에 따른 전자 장치의 비 활동 정보 통합 방법을 도시한 흐름도이다.
도 14는 다양한 실시예들에 따른 비 활동 정보를 통합하는 일례를 도시한 도면이다.
도 15는 다양한 실시예들에 따른 다양한 활동 타입의 데이터를 통합하는 일례를 도시한 도면이다.
도 16은 다양한 실시예들에 따른 활동 정보에 대한 사용자 인터페이스의 일례를 도시한 도면이다.
도 17은 다양한 실시예들에 따른 활동 정보를 공유하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 18은 다양한 실시예들에 따른 웨어러블 디바이스의 인식 우선 순위를 설정하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 19는 다양한 실시예들에 따른 위치 정보를 설정하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 20은 다양한 실시예들에 따른 전자 장치의 사용자 인터페이스 표시 방법을 도시한 흐름도이다.
도 21은 다양한 실시예들에 따른 활동 영역을 산출하는 일례를 도시한 도면이다.
도 22 내지 도 24는 다양한 실시예들에 따른 임계치에 기반하여 활동 영역 내 아이콘을 보정하는 일례를 도시한 도면들이다.
도 25 및 도 26은 다양한 실시예들에 따른 중첩된 아이콘을 처리하는 일례를 도시한 도면들이다.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 기재된다. 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.
본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM, 상점의 POS(point of sales), 또는 사물 인터넷 장치 (예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시예에 따르면, 전자 장치는 가구, 건물/구조물 또는 자동차의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터, 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 플렉서블하거나, 또는 전술한 다양한 장치들 중 둘 이상의 조합일 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은 다양한 실시예들에 따른 네트워크 환경(100) 내의 전자 장치(101)를 도시한 도면이다.
도 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), 어플리케이션 프로그래밍 인터페이스(API)(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템으로 지칭될 수 있다. 커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API(145)는 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. 입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 또는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다.
디스플레이(160)는, 예를 들면, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 또는 마이크로 전자기계 시스템 (MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다. 통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다.
무선 통신은, 예를 들면, LTE, 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) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시예에 따르면, 무선 통신은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE: bluetooth low energy), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(magnetic secure transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. 한실시예에 따르면, 무선 통신은 GNSS를 포함할 수 있다. 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”와 상호 호환적으로 사용될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다.
제1 및 제2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 다양한 실시예에 따른 전자 장치(201)의 구성을 도시한 블록도이다.
도 2를 참조하면, 전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP)(210), 통신 모듈(220), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다.
프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210) 는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드)하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
통신 모듈(220)은 도 1의 통신 인터페이스(170)와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227), NFC 모듈(228) 및 RF 모듈(229)를 포함할 수 있다. 셀룰러 모듈(221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM 카드)(224)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다.
어떤 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈(229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다. 가입자 식별 모듈(224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 또는 임베디드 SIM을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브 (SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리(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)은, 예를 들면, 후각(e-nose) 센서, 일렉트로마이오그라피(EMG) 센서, 일렉트로엔씨팔로그램(EEG) 센서, 일렉트로카디오그램(ECG) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.
입력 장치(250)는, 예를 들면, 터치 패널(252), (디지털) 펜 센서(254), 키(256), 또는 초음파 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. (디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 프로젝터(266), 및/또는 이들을 제어하기 위한 제어 회로를 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나 이상의 모듈로 구성될 수 있다. 한 실시예에 따르면, 패널(262)은 사용자의 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(또는 포스 센서)를 포함할 수 있다. 상기 압력 센서는 터치 패널(252)과 일체형으로 구현되거나, 또는 터치 패널(252)과는 별도의 하나 이상의 센서로 구현될 수 있다.
홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다. 인터페이스(270)는, 예를 들면, HDMI(272), USB(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
오디오 모듈(280)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. 카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, 이미지 시그널 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등)를 포함할 수 있다.
전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC, 또는 배터리 또는 연료 게이지를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지 및/또는 태양 전지를 포함할 수 있다.
인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동, 또는 햅틱 효과 등을 발생시킬 수 있다. 전자 장치(201)는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있는 모바일 TV 지원 장치(예: GPU)를 포함할 수 있다. 본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치(예: 전자 장치(201))는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함하거나, 또는, 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
도 3은 다양한 실시예에 따른 프로그램 모듈의 블록도이다.
한 실시예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 전자 장치(101))에 관련된 자원을 제어하는 운영 체제 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 도 3을 참조하면, 프로그램 모듈(310)은 커널(320)(예: 커널(141)), 미들웨어(330)(예: 미들웨어(143)), (API(360)(예: API(145)), 및/또는 어플리케이션(370)(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드 되거나, 외부 전자 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드 가능하다.
커널(320)은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수를 수행할 수 있다. 한 실시예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부를 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330) 는 런타임 라이브러리(335), 어플리케이션 매니저(341), 윈도우 매니저(342), 멀티미디어 매니저(343), 리소스 매니저(344), 파워 매니저(345), 데이터베이스 매니저(346), 패키지 매니저(347), 커넥티비티 매니저(348), 노티피케이션 매니저(349), 로케이션 매니저(350), 그래픽 매니저(351), 또는 시큐리티 매니저(352) 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리(335)는, 예를 들면, 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(335)는 입출력 관리, 메모리 관리, 또는 산술 함수 처리를 수행할 수 있다. 어플리케이션 매니저(341)는, 예를 들면, 어플리케이션(370)의 생명 주기를 관리할 수 있다. 윈도우 매니저(342)는 화면에서 사용되는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(343)는 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱을 이용하여 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다.
리소스 매니저(344)는 어플리케이션(370)의 소스 코드 또는 메모리의 공간을 관리할 수 있다. 파워 매니저(345)는, 예를 들면, 배터리의 용량 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보를 제공할 수 있다. 한 실시예에 따르면, 파워 매니저(345)는 바이오스(BIOS: basic input/output system)와 연동할 수 있다. 데이터베이스 매니저(346)는, 예를 들면, 어플리케이션(370)에서 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다.
커넥티비티 매니저(348)는, 예를 들면, 무선 연결을 관리할 수 있다. 노티피케이션 매니저(349)는, 예를 들면, 도착 메시지, 약속, 근접성 알림 등의 이벤트를 사용자에게 제공할 수 있다. 로케이션 매니저(350)는, 예를 들면, 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(351)는, 예를 들면, 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(352)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다.
한 실시예에 따르면, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화(telephony) 매니저 또는 전술된 구성요소들의 기능들의 조합을 형성할 수 있는 하는 미들웨어 모듈을 포함할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. API(360)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(370)은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 와치(384), 헬스 케어(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보(예: 기압, 습도, 또는 온도 정보) 제공 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 전자 장치와 외부 전자 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 노티피케이션 릴레이 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리 어플리케이션을 포함할 수 있다.
예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션에서 발생된 알림 정보를 외부 전자 장치로 전달하거나, 또는 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치의 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 또는 외부 전자 장치에서 동작하는 어플리케이션을 설치, 삭제, 또는 갱신할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치로부터 수신된 어플리케이션을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어(예: 프로세서(210)), 또는 이들 중 적어도 둘 이상의 조합으로 구현(예: 실행)될 수 있으며, 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 세트 또는 프로세스를 포함할 수 있다.
도 4는 다양한 실시예들에 따른 전자 장치와 웨어러블 디바이스의 구성을 도시한 구성도이다.
도 4를 참조하면, 전자 장치(410)는 웹 API 매니저(411), 웨어러블 매니저(412), 데이터 분석부(413), 데이터 통합부(414) 및 건강 DB(415)를 포함할 수 있다.
웹 API 매니저(411)는 웹 API(web application programming interface) 형태로 공개된 프로토콜을 이용하여 웨어러블 디바이스 3(440) 또는 웨어러블 디바이스 4(450)로부터 수집된 건강 관련 데이터를 수신할 수 있다. 웨어러블 매니저(412)는 웨어러블 디바이스 1(420) 또는 웨어러블 디바이스 2(430)에 정해진 통신 프로토콜을 이용하여 웨어러블 디바이스 1(420) 또는 웨어러블 디바이스 2(430)로부터 수집된 건강 관련 데이터를 수신할 수 있다. 여기서, 수신된 데이터는 웨어러블 디바이스 1(420) 내지 웨어러블 디바이스 4(450)에서 측정 또는 수집한 건강 관련 데이터(예: 걸음수, 사이클링, 수영, 수면 등)일 수 있다.
수신된 데이터는 건강 DB(415, health database)에 저장될 수 있다. 상기 수신된 데이터는 하나 이상의 웨어러블 디바이스에서 측정 또는 수집된 것으로 각 디바이스에 따라 데이터가 개별적으로 제공될 수도 있지만, 하나의 데이터로 통합하여 제공될 수도 있다. 건강 DB(415)는 디바이스별 수신된 데이터를 저장하거나, 복수의 디바이스에서 수신된 데이터를 통합하여 저장할 수 있다. 건강 DB(415)에 저장된 데이터는 클라우드(460)와 동기화될 수 있다.
데이터 분석부(413)는 상기 수신된 데이터를 분석할 수 있다. 예를 들면, 데이터 분석부(413)는 상기 수신된 데이터를 분석하여 활동 타입별로 분류할 수 있다. 여기서, 활동 타입은 걸음수에 대한 제1 활동 타입, 활동(예: 운동)에 대한 제2 활동 타입, 비 활동에 대한 제3 활동 타입을 포함할 수 있다. 상기 비 활동이란 걷거나, 활동(예: 사이클링, 수영 등)을 하지 않고 수면을 취하거나, 앉아 있는 등의 정지(stationary) 상태를 의미할 수 있다. 또는, 상기 비 활동이란 아무것도 검출되지 않은 것일 수도 있다.
예를 들면, 웨어러블 디바이스 1(420)에서는 걸음수와 활동에 대한 데이터를 수집하고, 웨어러블 디바이스 2(430)에서는 걸음수에 대한 데이터를 수집하고, 웨어러블 디바이스 3(440)에서는 걸음수와 활동에 대한 데이터를 수집하며, 웨어러블 디바이스 4(450)에서는 걸음수에 대한 데이터를 수집할 수 있다. 데이터 분석부(413)는 웨어러블 디바이스 1(420) 내지 웨어러블 디바이스 4(450)로부터 수신된 데이터를 하나의 데이터로 통합하기 위해 데이터를 활동 타입별로 분류할 수 있다.
데이터 통합부(414)는 활동 타입별로 분류된 데이터를 통합할 수 있다. 예를 들면, 데이터 통합부(414)는 걸음수, 활동, 비 활동에 대한 각각의 데이터를 통합 처리할 수 있다. 데이터 통합부(414)는 통합된 데이터를 건강 DB(415)에 저장할 수 있다.
다양한 실시예들에 따르면, 웨어러블 디바이스 1(420)은 걸음수를 측정하기 위한 걸음수 카운트부(421), 활동을 측정하기 위한 활동 측정부(422)를 포함할 수 있다. 웨어러블 디바이스 2(430)는 걸음수를 측정하기 위한 걸음수 카운트부(431)를 포함할 수 있다. 다양한 실시예들에 따르면, 웨어러블 디바이스 1(420) 내지 웨어러블 디바이스 4(450)는 측정된 데이터를 저장하는 단위 시간이 다를 수 있다. 예를 들어, 웨어러블 디바이스 1(420) 및 웨어러블 디바이스 3(440)은 5분 단위로 데이터를 저장하며, 웨어러블 디바이스 2(430) 및 웨어러블 디바이스 4(450)는 10분 단위로 데이터를 저장할 수 있다.
도 5는 다양한 실시예들에 따른 건강 관련 데이터 흐름의 일례를 도시한 도면이다.
도 5를 참조하면, 전자 장치(510), 웨어러블 디바이스(520), 어플리케이션(530)으로부터 각각 수집된 데이터(540)는 건강 DB(415)에 저장될 수 있다. 데이터 분석부(413)는 건강 DB(415)에 저장된 데이터 분석(550)을 수행할 수 있다. 데이터 통합부(414)는 분석 결과에 기반하여 데이터 통합을 수행할 수 있다. 데이터 통합부(414)는 통합된 데이터에 알고리즘(560)을 적용하여 데이터를 보정할 수 있다. 보정된 데이터(570)는 걸음수, 활동, 비 활동에 대한 것으로 사용자 인터페이스를 통해 제공될 수 있다.
이하에서 설명되는 전자 장치는 도 1의 전자 장치(101), 도 2의 전자 장치(201) 또는 도 4의 전자 장치(410) 중 적어도 하나일 수 있다. 다만, 설명의 편의를 위해 이하에서는 전자 장치를 도 1의 전자 장치(101)로 설명하지만, 설명에 의해 전자 장치가 한정되는 것은 아니다.
다양한 실시예들에 따른 전자 장치는 하우징, 상기 하우징의 일부를 통하여 노출된 디스플레이, 상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 제1 모션 센서, 상기 하우징 내에 배치된 무선 통신 회로, 상기 하우징 내에 배치되고, 상기 디스플레이, 상기 제1 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서, 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행시에, 상기 프로세서가, 상기 무선 통신 회로를 이용하여, 제2 모션 센서를 포함하는 외부 전자 장치와 무선 통신 채널을 생성하고, 상기 제1 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기동안 제1 데이터를 생성하고, 상기 제2 모션 센서를 이용하여, 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 채널을 통하여 수신하고, 상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고, 상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
일 실시예에 따른 상기 인스트럭션들은, 상기 프로세서가, 상기 전자 장치 및 상기 외부 전자 장치가 한 사용자에 의하여 착용되거나 운반될 때, 상기 제1 시간 주기 이후에 상기 산출된 값을 상기 사용자 인터페이스에 표시하도록 하는 것일 수 있다.
다양한 실시예들에 따른 전자 장치는 하우징, 상기 하우징의 일부를 통하여 노출된 디스플레이, 상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 모션 센서, 상기 하우징 내에 배치된 무선 통신 회로, 상기 하우징 내에 배치되고, 상기 디스플레이, 상기 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서, 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하며, 상기 메모리는, 실행시에, 상기 프로세서가, 상기 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기 동안 제1 데이터를 생성하고, 상기 제1 데이터 중 제1 부분을 이용하여 상기 제1 시간 주기 중 제1 세션 동안의 상기 움직임의 제1 속성을 결정하고, 상기 제1 데이터 중 제2 부분을 이용하여 상기 제1 시간 주기 중 제2 세션 동안의 상기 움직임의 제2 속성을 결정하고, 상기 제1 속성 또는 제2 속성 중 하나를 선택하고, 상기 선택된 속성을 나타내는 이미지, 텍스트, 또는 심볼 중 적어도 하나를 상기 디스플레이에 표시된 사용자 인터페이스 상에 표시하도록 하는 인스트럭션들을 저장할 수 있다.
일 실시예에 따른 상기 인스트럭션들은 상기 프로세서가, 상기 하우징이 상기 제1 시간 주기 동안 위치했었던 장소들과 연관된 지도를 상기 사용자 인터페이스 상에 표시하고, 상기 이미지, 텍스트, 또는 심볼 중 적어도 하나를 상기 지도에 중첩되도록 표시하도록 하는 것일 수 있다.
일 실시예에 따른 상기 인스트럭션들은 상기 프로세서가, 모션 센서를 포함하는 외부 전자 장치로부터 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 회로를 통하여 수신하고, 상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고, 상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 것일 수 있다.
다양한 실시예들에 따른 전자 장치는 메모리, 디스플레이, 통신 인터페이스, 및 상기 메모리, 상기 디스플레이, 또는 상기 통신 인터페이스와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 외부 장치로부터 수집된 건강과 연관된 데이터를 상기 통신 인터페이스를 통해 획득하고, 획득한 데이터를 단위 시간으로 보정하고, 보정된 데이터를 분석하여 활동 정보를 추출하고, 추출된 활동 정보를 상기 메모리에 저장하고, 사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 상기 디스플레이에 표시하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 상기 전자 장치의 데이터 저장을 위한 시간 단위에 기반하여 상기 획득한 데이터를 보정하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 상기 외부 장치로부터 획득한 데이터와 상기 전자 장치의 센서 모듈을 이용하여 획득한 데이터를 분석하여 활동 타입 별로 데이터를 분류하고, 활동 타입별로 데이터를 통합하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 시간, 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나의 우선 순위를 기준으로 데이터를 통합하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나에 각각 다른 가중치를 부여하고, 상기 가중치에 기반하여 상기 통합된 데이터를 보정하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 각 디바이스별 걸음수를 단위 시간으로 구분하고, 단위 시간별로 최대 걸음수를 결정하고, 결정된 최대 걸음수에 기반하여 통합 걸음수를 산출하여 걸음수에 대한 데이터를 통합하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 데이터 분석 결과에 기반하여 운동 종류를 결정하고, 운동 종류의 시작과 종료를 판단하고, 우선 순위에 기반하여 운동 종류별 활동 정보를 통합하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 시간별 비 활동 구간을 정렬하고, 활동 정보가 포함되어 있지 않은 비 활동 구간들을 하나의 세션으로 통합하여 통합된 세션을 비 활동 정보로 처리하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 상기 활동 정보에 대한 위치 정보를 추출하고, 추출된 위치 정보에 기반하여 활동 정보에 대한 활동 영역을 산출하고, 인접한 두 개의 활동 영역 간의 거리를 산출하고, 상기 산출된 거리에 기반하여 활동 영역 내 아이콘을 보정하도록 설정될 수 있다.
일 실시예에 따른 상기 프로세서는 상기 산출된 거리가 기준 거리 미만인 경우, 아이콘 중첩 조건에 만족하는 것으로 판단하고, 상기 인접한 두 개의 활동 영역 내 포함된 아이콘 중 적어도 하나를 결정하도록 설정될 수 있다.
도 6은 다양한 실시예들에 따른 전자 장치의 동작 방법을 도시한 흐름도이다.
도 6은 하나의 데이터를 이용하여 활동 정보를 추출하는 동작을 도시한 것이다. 도 6을 참조하면, 동작(601)에서, 전자 장치(101)(예: 프로세서(120))는 건강 관련 데이터를 획득할 수 있다. 프로세서(120)는 통신 인터페이스(170)를 통해 외부 장치(또는 외부 전자 장치)(예: 전자 장치(102), 전자 장치(104), 웨어러블 디바이스 1(420) 내지 웨어러블 디바이스 4(450) 중 어느 하나)로부터 건강 관련 데이터를 수신할 수 있다. 또는, 전자 장치(101)는 자체적으로 건강 관련 데이터를 획득할 수 있다. 전자 장치(101)는 다양한 센서 모듈(예: 도 2의 센서 모듈(240))을 이용하여 건강 관련 데이터를 획득할 수 있다. 건강 관련 데이터는 상기 외부 장치 또는 전자 장치(101)에서 수집한 또는 측정한 데이터로서, 예를 들면, 걸음수, 달리기, 사이클링, 수영, 수면, 휴식 등에 대한 것일 수 있다. 획득한 데이터는 메모리(130)에 저장될 수 있다. 동작(603)에서, 전자 장치(101)(예: 프로세서(120))는 상기 획득한 데이터를 보정할 수 있다. 예를 들면, 전자 장치(101)는 1분 단위로 데이터를 저장하고, 웨어러블 디바이스 1(420) 및 웨어러블 디바이스 3(440)은 5분 단위로 데이터를 저장하며, 웨어러블 디바이스 2(430) 및 웨어러블 디바이스 4(450)는 10분 단위로 데이터를 저장할 수 있다. 각 디바이스마다 데이터를 저장하는 단위 시간이 상이하기 때문에, 프로세서(120)는 전자 장치(101)의 데이터 저장을 위한 단위 시간에 맞게 상기 수신된 데이터를 나눌 수 있다. 예를 들어, 프로세서(120)는 상기 수신된 데이터를 1분 단위로 나눌 수 있다. 동작(601)이 외부 장치에서 데이터를 수신한 것이 아니라 전자 장치(101) 자체적으로 데이터를 획득한 경우에는 동작(603)을 수행하지 않을 수도 있다. 또한, 단위 시간에 대한 예시는 예시일 뿐, 전자 장치(101) 또는 외부 장치에서 데이터를 저장하는 단위 시간은 30초, 3분, 5분 등 다양할 수 있다.
동작(605)에서, 전자 장치(101)(예: 프로세서(120))는 상기 보정된 데이터를 분석할 수 있다. 예를 들어, 데이터 분석 방법에는 다양한 클러스터링 또는 패턴 인식 기술들이 활용될 수 있다. 프로세서(120)는 다양한 기술들을 활용하여 상기 보정된 데이터를 분석함으로써, 사용자에게 의미 있다고 판단되는 활동을 추출할 수 있다. 의학적 소견에 따르면, 사람은 10분 이상 평균 100보 이상의 걸음을 걸으면 건강에 도움이 될 수 있다. 프로세서(120)는 상기 의학적 소견에 기초하여 다양한 클러스터링 기술 중 DBSCAN(density-based spatial clustering of applications with noise)를 이용하여 상기 수신된 데이터를 분석할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 1분 단위로 나눈 데이터에서 DBSCAN의 minPts를 10보 이상, eps를 1분으로 하는 조건을 갖는 클러스터(cluster)를 찾고, 해당 클러스터 안의 걸음수에 기반하여 사용자의 활동이 걷기인지 달리기인지 판단할 수 있다. 참고로, DBSCAN은 두 가지 변수를 가지는데, minPts는 하나의 클러스터에 포함되기 위한 객체의 최소 개수이고, eps는 객체 간의 거리를 의미할 수 있다. 여기서, 객체는 걸음수이고, 객체 간의 거리는 전자 장치(101)의 데이터 저장 단위인 1분일 수 있다. 프로세서(120)는 1분 단위로 나눈 데이터에서 10보 이상인 객체를 하나의 클러스터에 포함시킬 수 있다. 프로세서(120)는 하나의 클러스터에 포함되는 초기 조건을 1회 달성하고, 연속적으로 데이터 발생(예: 걸음수 발생)이 유지되는 경우, 종료 조건이 발생할 때까지 데이터를 상기 클러스터에 포함시키는 상태를 유지할 수 있다. 예를 들면, 상기 초기 조건은 1분에 10보 이상이거나, 10분 동안의 평균 100보 이상인 것일 수 있다. 상기 종료 조건은 걸음수가 검출되지 않거나, 1분에 10보 미만일 수 있다. 걸음수에 대한 데이터 분석은 이하 도 7을 통해 자세히 설명하기로 한다.
동작(607)에서, 전자 장치(101)(예: 프로세서(120))는 분석 결과에 기반하여 활동 정보를 추출할 수 있다. 실시예에 따르면, 프로세서(120)는 상기 분석된 데이터가 걷기와 달리기를 구분하는 경우, 걷기의 총합과 달리기의 총합을 비교하여 큰 값을 갖는 활동을 활동 정보로서 추출할 수 있다. 예를 들면, 하나의 클러스터에 걷기의 총합이 1000이고, 달리기의 총합이 400인 경우, 프로세서(120)는 걷는 시간과 총 걸음수를 활동 정보로서 추출할 수 있다. 또는, 걷기의 총합이 500이고, 달리기의 총합이 2000인 경우, 프로세서(120)는 달린 시간과 총 달린 거리를 활동 정보로서 추출할 수 있다. 다양한 실시예들에 따르면, 사용자가 위치 정보를 획득하도록 설정(또는 허용)한 경우에는, 걸은 거리 또는 달린 거리에 대한 위치 정보도 상기 활동 정보로서 추출할 수 있다.
실시예에 따르면, 프로세서(120)는 상기 분석된 데이터가 걷기와 달리기를 구분하지 않는 경우, 단위 시간 당 걸음수를 이용하여 운동 종류를 결정할 수 있다. 예를 들면, 프로세서(120)는 1분에 150보 이상인 경우, '달리기'로 판단하고, 1분에 150보 미만인 경우 '걷기'로 판단할 수 있다. 프로세서(120)는 상기 판단된 걷기의 총합과 달리기의 총합을 비교하여 큰 값을 갖는 활동을 활동 정보로서 추출할 수 있다.
실시예에 따르면, 프로세서(120)는 단위 시간(예: 1분) 당 걸음 발생 빈도를 분석하여 활동 정보를 추출할 수 있다. 프로세서(120)는 GNSS 모듈(227)을 이용하여 속도 정보를 산출하거나, 자외선 센서를 이용하여 야외 활동인지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 10분 동안 걸음수가 기설정된 걸음수(예: 1000보) 이상으로 발생한 경우, 10분 동안 위치 정보의 변경에 기반하여 이동 속도를 산출할 수 있다. 프로세서(120)는 상기 산출된 이동 속도가 기설정된 속도(예: 20 Km/h) 이상인 경우, 사이클링, 이동 속도, 이동 거리 등을 활동 정보로서 추출할 수 있다. 또는, 프로세서(120)는 상기 산출된 이동 속도가 자전거 속도 범위(예: 20Km/h ~ 50Km/h)인 경우, 사이클링, 이동 속도, 이동 거리 등을 활동 정보로서 추출할 수 있다. 예를 들면, 프로세서(120)는 걸음수가 기설정된 걸음수(예: 100보) 이상 또는 일정 패턴으로 발생하는 경우, 자외선 센서의 센서 값이 야외에서 수집 가능한 값인 경우 야외 활동으로 인식할 수도 있다.
동작(609)에서, 전자 장치(101)(예: 프로세서(120))는 상기 추출한 활동 정보를 저장할 수 있다. 프로세서(120)는 추출한 활동 정보를 메모리(130)에 저장할 수 있다. 상기 활동 정보는 걷기인지, 달리기인지 또는 총 걸음수, 총 달린 거리 등의 정보를 나타내는 것으로 사용자가 쉽게 구별할 수 있는 사용자 인터페이스를 통해 제공될 수 있다.
도 7은 다양한 실시예들에 따른 데이터를 분석하는 일례를 도시한 도면이다.
도 7을 참조하면, 전자 장치(101)(예: 프로세서(120))는 단위 시간당 걸음수에 기반하여 활동 정보를 판단할 수 있다. 예를 들면, 프로세서(120)는 건강 관련 데이터를 1분 단위로 구분하고, 1분에 10보 이상인 걸음수가 발생한 객체를 워크아웃 1(workout 1, 710)에 포함시킬 수 있다. 워크아웃 1(710)은 10분 동안의 평균 100보 이상인 걸음수가 발생한 객체들(예: 721, 722)과 1분에 10보 이상인 걸음수가 발생한 객체(723)를 포함할 수 있다. 예를 들면, 프로세서(120)는 초기 조건을 1회 달성하고 연속적으로 걸음수가 발생하는 경우, 종료 조건이 발생할 때까지 발생한 걸음수를 클러스터 1(cluster 1, 720)에 포함시킬 수 있다. 10분 동안의 평균 100보 이상인 걸음수가 발생한 객체들(예: 721, 722)을 클러스터 1(720)에 포함시킨 경우, 프로세서(120)는 1분에 10보 이상인 걸음수가 발생한 객체(723)도 클러스터 1(720)에 포함시킬 수 있다.
실시예에 따르면, 프로세서(120)는 기설정된 시간 단위 동안(예: 1분, 5분, 10분) 걸음수가 평균 100보인 경우, 하나의 워크아웃(또는 클러스터)에 포함되는 초기 조건이라 판단할 수 있다. 여기서, 종료 조건은 걸음수가 검출되지 않거나, 1분에 10보 미만일 수 있다. 예를 들어, 프로세서(120)는 걸음수가 검출되지 않는 객체(예: 724, 725, 726) 또는 걸음수가 10보 미만인 객체(727)를 워크아웃 1(710)에 포함시키지 않을 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 건강 관련 데이터를 1분 단위로 구분하고, 1분당 걸음수가 기설정된 걸음수(예: 10보) 미만인 경우, 초기 조건에 만족하지 않는다고 판단하고, 워크아웃 2(workout 2, 750)에 포함시키지 않을 수 있다. 예를 들어, 객체들(예: 767, 768)은 1분당 걸음수가 발생하지 않은 것으로, 클러스터에 포함될 초기 조건을 만족하지 않으므로, 워크아웃 2(750)에 포함되지 않을 수 있다. 프로세서(120)는 1분당 걸음수가 기설정된 걸음수(예: 10보) 이상인 경우, 또는 10분 동안 평균 걸음수가 기설정된 걸음수(예: 평균 100보) 이상인 경우, 클러스터 2(cluster 2, 760)에 포함시킬 수 있다. 10분 동안의 평균 100보 이상인 걸음수가 발생한 객체들(예: 761, 762)을 클러스터 2(760)에 포함시킨 경우, 프로세서(120)는 1분에 10보 이상인 걸음수가 발생한 객체(예: 763, 764, 765))도 클러스터 2(760)에 포함시킬 수 있다. 프로세서(120)는 걸음수가 10보 미만인 객체(766)에 대해서는 종료 조건에 해당한다고 판단할 수 있다. 프로세서(120)는 걸음수가 10보 미만인 객체(766)에 대해서는 클러스터 2(760)에 포함시키지 않을 수 있다.
도 8은 다양한 실시예들에 따른 전자 장치의 데이터 통합 방법을 흐름도이다.
도 8은 하나 이상의 데이터를 이용하여 활동 정보를 추출하는 동작을 도시한 것이다. 도 8을 참조하면, 동작(801)에서, 전자 장치(101)(예: 프로세서(120))는 하나 이상의 디바이스들로부터 건강 관련 데이터를 수집할 수 있다. 프로세서(120)는 통신 인터페이스(170)를 통해 외부 장치(또는 외부 전자 장치)(예: 전자 장치(102), 전자 장치(104), 웨어러블 디바이스 1(420) 내지 웨어러블 디바이스 4(450) 중 어느 하나)로부터 건강 관련 데이터를 수신할 수 있다. 또는, 전자 장치(101)는 다양한 센서 모듈(예: 도 2의 센서 모듈(240))을 이용하여 건강 관련 데이터를 획득할 수 있다.
다양한 실시예들에 따르면, 전자 장치(101)는 하우징(또는 본체)에 제1 무선 센서를 포함할 수 있다. 상기 하우징은 전자 장치(101)의 부품(예: 프로세서(120), 메모리(130) 등)을 수용하는 프레임(또는 케이스)로 해석될 수 있다. 상기 제1 무선 센서는 걸음수, 활동 정보, 비 활동 정보를 측정하는 센서(예: 센서 모듈(240))일 수 있다. 프로세서(120)는 상기 제1 무선 센서를 이용하여 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기동안 제1 데이터를 생성할 수 있다. 또한, 상기 외부 장치는 제2 무선 센서를 포함할 수 있다. 상기 제2 무선 센서는 상기 외부 장치의 걸음수, 활동 정보, 비 활동 정보를 측정하는 센서(예: 걸음수 카운트부(421), 운동 측정부(422))일 수 있다. 프로세서(120)는 통신 인터페이스(170)(또는 "무선 통신 회로"라 함)를 이용하여 상기 외부 장치와 무선 통신 채널(예: 상기 외부 장치와 연관된 통신 프로토콜)을 생성할 수 있다. 프로세서(120)는 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 채널을 통하여 수신하고, 상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출할 수 있다.
동작(803)에서, 전자 장치(101)(예: 프로세서(120))는 수집된 데이터를 분석하여 활동 타입별로 분류할 수 있다. 예를 들면, 프로세서(120)는 데이터 분석 전에 도 6의 동작(603)과 같이 데이터를 보정할 수 있다. 각 디바이스마다 데이터를 저장하는 단위 시간이 상이하기 때문에, 복수의 디바이스로부터 수신된 데이터를 처리하기 위해서는 전처리 작업이 필요하다. 프로세서(120)는 전자 장치(101)의 데이터 저장을 위한 단위 시간(예: 1분)에 맞게 상기 수신된 데이터를 나눌 수 있다. 프로세서(120)는 보정된 데이터를 분석하여 활동 타입별로 분류할 수 있다. 예를 들어, 활동 타입은 걸음수(예: 제1 활동 타입), 활동 정보(예: 제2 활동 타입), 비 활동 정보(예: 제3 활동 타입) 등 3가지로 분류될 수 있다. 이하에서는, 3가지 종류의 활동 타입으로 분류하는 예를 들어 설명하지만, 활동 타입이 후술하는 3가지 종류로 한정되는 것은 아니다.
다양한 실시예들에 따르면, 데이터를 활동 타입별로 분류하는 것은 특성이 서로 다른 데이터를 용이하게 통합하기 위한 것일 수 있다. 예를 들면, 프로세서(120)는 각 디바이스별로 걸음수, 활동 정보, 비 활동 정보를 분류할 수 있다.
예를 들면, 걸음수는 지속적으로 발생되는 특징이 있고, 시작과 끝이 명확하지 않을 수 있다. 왜냐하면, 수면 중 또는 앉아 있는 중에도 움직임이 검출되면 걸음수가 발생한 것으로 판단될 수 있기 때문이다. 또한, 외부 장치의 하드웨어 제약 사항이나 데이터 정확도 등의 이슈로 저장 단위가 1일, 10분, 5분 등 매우 다양하다. 따라서, 사용자에게 보다 정확하고 의미 있는 걸음수를 제공하기 위해, 복수의 외부 장치에서 각각 검출한 걸음수에 대해 보정이 필요할 수 있다.
활동 정보는 달리기, 걷기, 수영, 자전거, 요가 등 시작과 끝이 명확한 활동 기록일 수 있다. 이러한 활동 정보는 사용자나 외부 장치 또는 전자 장치(101)에서 자동으로 인식하여 저장될 수 있다. 다만, 활동 정보는 복수의 디바이스들로부터 수집되었을 경우 중복 검출될 수도 있다.
비 활동 정보는 수면, 휴식(예: 앉아 있음) 등 사용자가 활동하지 않는 것으로 인식되는 기록일 수 있다. 이러한 비 활동 정보는 디바이스별로 인식율이 다르기 때문에 아무것도 검출되지 않는 등의 빈 공간이 발생할 수 있다. 이러한 빈 공간을 통합하면, 활동의 오인식 예를 들면, 수면 중 또는 앉아 있는 상황에서 걸음으로 오인식되는 경우를 제외할 수 있어 사용자에게 보다 정확한 정보를 제공할 수 있다.
동작(805)에서, 전자 장치(101)(예: 프로세서(120))는 활동 타입별 데이터를 통합할 수 있다. 예를 들면, 프로세서(120)는 걸음수, 활동 정보, 또는 비활동 정보를 시간순으로 나열하고, 활동 타입이 동일한 데이터를 하나로 통합할 수 있다. 다양한 실시예들에 따르면, 프로세서(120)는 시간, 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나의 우선 순위를 기준으로 데이터를 통합할 수 있다. 상기 우선 순위는 사용자에 의해 설정되거나, 전자 장치(101)에 디폴트 값(default value)으로 설정될 수 있다. 예를 들어, 프로세서(120)는 시간에 우선 순위를 두는 경우, 가장 먼저 발생한 활동 타입을 기준으로 데이터를 통합할 수 있다. 또는, 활동 타입에 우선 순위를 두는 경우, 프로세서(120)는 걸음수, 활동 정보, 또는 비 활동 정보 중 적어도 하나의 시작 및 종료를 기준으로 데이터를 통합하고, 나머지 활동 타입에 대한 데이터를 통합할 수 있다. 예를 들어, 활동 정보에 우선 순위를 두는 경우, 프로세서(120)는 활동 정보와 걸음수 또는 비 활동 정보가 중첩되는 경우, 활동 정보의 시작 및 종료를 기준으로 활동 정보에 대한 데이터를 통합하고, 걸음수 또는 비 활동 정보에 대한 데이터를 통합할 수 있다.
또는, 운동 종류에 우선 순위를 두는 경우, 프로세서(120)는 걷기, 달리기, 사이클링, 수영 중 적어도 하나의 시작 및 종료를 기준으로 데이터를 통합하고, 나머지 활동 타입에 대한 데이터를 통합할 수 있다. 예를 들어, 사이클링에 우선 순위를 두는 경우, 프로세서(120)는 사이클링의 시작 및 종료를 기준으로 사이클링에 대한 데이터를 통합하고, 나머지 활동 정보, 걸음수 또는 비 활동 정보에 대한 데이터를 통합할 수 있다. 또는, 장치에 우선 순위를 두는 경우, 프로세서(120)는 우선 순위가 높은 장치의 시작 및 종료를 기준으로 우선 순위가 낮은 장치의 걸음수, 활동 정보 또는 비 활동 정보 중 적어도 하나를 통합할 수 있다.
걸음수, 활동 정보, 비 활동 정보에 대한 데이터 통합 방법은 후술하는 도면을 통해 자세히 설명하기로 한다.
동작(807)에서, 전자 장치(101)(예: 프로세서(120))는 가중치에 기반하여 통합된 데이터를 보정할 수 있다. 다양한 실시예들에 따르면, 프로세서(120)는 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나에 각각 다른 가중치를 부여할 수 있다. 예를 들어, 활동 타입에 가중치를 부여하는 경우, 걸음수 또는 비 활동 정보보다 활동 정보가 사용자에게 더 의미 있다고 판단될 수 있기 때문에 활동 정보에 가중치를 높게 부여할 수 있다. 예를 들어, 데이터 보정 시, 활동 정보, 비 활동 정보, 걸음수 순으로 가중치를 높게 설정할 수 있다. 걸음수에 가중치를 가장 낮게 설정하는 것은 걸음수는 항상 자동으로 카운팅되는 것으로, 기술적 한계로 인해 오인식율이 높기 때문일 수 있다. 또는, 운동 종류에 가중치를 부여하는 것은 걷기나 달리기보다 시작과 종료가 더욱 명확한 사이클링, 수영 등에 가중치를 높게 부여함으로써, 사용자에게 더욱 정확한 활동 정보를 제공하기 위한 것일 수 있다. 또는, 장치에 가중치를 부여하는 경우, 외부 장치보다 전자 장치(101)에 가중치를 높게 부여함으로써, 사용자에게 더욱 정확한 활동 정보를 제공하기 위한 것일 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 활동 타입, 운동 종류, 및 디바이스에 가중치를 각각 다르게 부여하고, 각각의 가중치를 종합적으로 고려하여 데이터를 보정할 수 있다. 예를 들면, 프로세서(120)는 활동 타입에 따라 운동 종류별 또는 장치별 가중치를 다르게 설정할 수 있다. 활동 정보에 대한 제2 활동 타입이 가중치가 높은 경우, 프로세서(120)는 외부 장치의 가중치를 전자 장치(101)의 가중치보다 높게 부여할 수 있다. 또는, 프로세서(120)는 운동 종류에 따라 장치별 가중치를 다르게 설정할 수 있다. 프로세서(120)는 운동 종류가 수영인 경우, 외부 장치의 가중치를 전자 장치(101)의 가중치보다 높게 부여하고, 운동 종류가 사이클인 경우, 전자 장치(101)의 가중치를 외부 장치의 가중치보다 높게 부여할 수 있다. 이러한 방법은 사용자에게 보다 의미 있고 더욱 정확한 정보 제공을 위한 것일 수 있다.
다양한 실시예들에 따르면, 우선 순위에 기반하여 데이터를 통합할 수도 있지만, 프로세서(120)는 통합된 데이터를 가중치에 기반하여 보정할 수도 있다. 즉, 프로세서(120)는 동작(805)에서 우선 순위에 따라 데이터를 통합한 경우 동작(807)을 수행하지 않고 스킵할 수 있다. 또는, 프로세서(120)는 동작(805)에서 우선 순위에 따라 데이터를 통합한 경우에도 동작(807)을 수행할 수도 있다. 다양한 실시예들에 따르면, 상기 가중치는 사용자에 의해 설정되거나, 또는 전자 장치(101)에 디폴트 값으로 설정될 수 있다. 다양한 실시예들에 따르면, 프로세서(120)는 우선 순위별 가중치를 각각 다르게 부여하고, 각각의 가중치를 종합적으로 고려하여 데이터를 보정할 수 있다. 예를 들면, 데이터 보정에 설정되는 가중치는 데이터 통합에 설정된 우선 순위와 비례 관계이거나, 반비례 관계일 수 있다. 예를 들어, 데이터 통합에 설정된 우선 순위가 높은 경우 데이터 보정에 설정되는 가중치도 높을 수 있다. 또는, 데이터 통합에 설정된 우선 순위가 높은 경우 데이터 보정에 설정되는 가중치는 낮을 수 있다.
동작(807)에서, 전자 장치(101)(예: 프로세서(120))는 상기 보정된 데이터에 기반하여 사용자 인터페이스를 제공할 수 있다. 사용자 인터페이스는 각 디바이스별 활동 정보와 함께 보정된 데이터에 대한 활동 정보를 제공하는 것일 수 있다.
다양한 실시예들에 따른 프로세서(120)는 전자 장치(101)에 구비된 모션 센서(예: 센서 모듈(240))를 이용하여 제1 시간 주기 동안 제1 데이터(예: 걸음수, 사이클, 수영, 비활동 등)를 생성하고, 상기 제1 데이터 중 제1 부분을 이용하여 상기 제1 시간 주기 중 제1 세션 동안의 전자 장치(101)의 움직임의 제1 속성(예: 걸음수)을 결정하고, 상기 제1 데이터 중 제2 부분을 이용하여 상기 제1 시간 주기 중 제2 세션 동안의 전자 장치(101)의 움직임의 제2 속성(예: 활동 정보)을 결정하고, 상기 제1 속성 또는 제2 속성 중 하나를 선택하고, 상기 선택된 속성을 나타내는 이미지, 텍스트, 또는 심볼 중 적어도 하나를 디스플레이(160)에 표시된 사용자 인터페이스 상에 표시할 수 있다.
사용자 인터페이스는 건강 관련 데이터 보기 위해 사용자로부터 건강 관련 어플리케이션을 선택받은 경우, 프로세서(120)는 선택된 어플리케이션을 통해 상기 사용자 인터페이스를 제공할 수 있다. 또는, 전자 장치(101)에 각 디바이스를 연결(또는 페어링)하면, 프로세서(120)는 연결된 디바이스와 관련된 어플리케이션을 실행하여 상기 사용자 인터페이스를 제공할 수 있다. 프로세서(120)는 보정된 데이터에 대한 활동 정보에 대해서는 태그(예: auto tag)를 붙여 사용자가 보정된 데이터임을 쉽게 인지할 수 있도록 할 수 있다. 사용자 인터페이스에 대한 다양한 실시예는 후술하는 도면을 통해 자세히 설명하기로 한다.
도 9는 다양한 실시예들에 따른 전자 장치의 걸음수 통합 방법을 도시한 흐름도이다.
도 9는 도 8의 데이터를 통합하는 동작(805)을 구체화한 것일 수 있다. 즉, 도 9는 제1 활동 타입에 대한 걸음수를 통합하는 동작을 나타낸 것이다. 도 9를 참조하면, 동작(901)에서, 전자 장치(101)(예: 프로세서(120))는 각 디바이스별 걸음수를 단위 시간으로 구분할 수 있다. 각 디바이스는 하드웨어 또는 소프트웨어의 성능에 따라 데이터를 저장하는 단위 시간이 다를 수 있다. 예를 들면, 걸음수는 디바이스별로 저장 단위가 1분, 5분, 10분 등 다양한 크기를 가질 수 있다. 이렇게 각각 다른 저장 단위를 갖는 디바이스에서 수집된 걸음수를 통합하기 위해서는 일정한 크기로 데이터를 구분할 필요가 있다. 이를 위해, 프로세서(120)는 전자 장치(101)의 데이터 저장을 위한 단위 시간에 맞게 각 디바이스별 걸음수를 단위 시간으로 구분할 수 있다.
사용자가 걸은 걸음수의 통합은 다양한 방법으로 이루어질 수 있지만 오차를 최대한 줄이면서 사용자가 걸음수 감소를 실감하지 못하게 하는 방법이 사용될 수 있다. 예를 들어, 걸음수 통합 방법으로 max 방식이 이용될 수 있다. 걸음수 감소는 사용자의 경험을 저해하는 요인일 수 있어, 프로세서(120)는 복수의 디바이스들에서 확인한 걸음수보다 항상 큰 값을 보여주기 위해서 max 방식을 이용하여 걸음수를 통합할 수 있다. 참고로, 복수의 디바이스들의 평균값으로 걸음수를 통합하거나, 기타 다른 통합 방법을 이용할 경우 하나의 디바이스에서 측정된 숫자보다 걸음수가 작아질 가능성이 있기 때문에, max 방식이 적합할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 제1 시간 주기동안 자체적으로 생성된 제1 데이터에 기초한 제1 값과 상기 외부 장치로부터 측정된 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출할 수 있다. 즉, 이하에서는 max 방식으로 걸음수를 통합하는 실시예를 설명하고 있지만, max 방식 이외에 다른 방식을 이용하여 걸음수를 통합할 수 있다.
동작(903)에서, 전자 장치(101)(예: 프로세서(120))는 단위 시간별로 인덱스를 부여할 수 있다. 예를 들어, 1일이 24시간이므로, 1분 단위로 인덱스를 부여하는 경우 총 1440개의 인덱스를 부여할 수 있다. 수학에서 인덱스는 0부터 사용하므로, 프로세서(120)는 0 ~ 1339의 인덱스를 부여할 수 있다.
동작(905)에서, 전자 장치(101)(예: 프로세서(120))는 인덱스에 기반하여 단위 시간별 최대 걸음수를 결정할 수 있다. 예를 들면, 프로세서(120)는 수학식 1을 이용하여 단위 시간별 최대 걸음수를 결정할 수 있다.
Figure pat00001
Figure pat00002
Figure pat00003
sourcei는 걸음수를 획득한 외부 장치(예: 웨어러블 디바이스, 전자 장치(101))를 나타내고, x는 인덱스, combined[x]는 단위 시간별 최대 걸음수를 의미할 수 있다. i가 0인 경우, 걸음수를 획득한 첫번째 디바이스, i가 1인 경우, 걸음수를 획득한 두번째 디바이스, i가 i인 경우, 걸음수를 획득한 i번째 디바이스를 의미할 수 있다.
수학식 1을 참고하면, 프로세서(120)는 복수의 디바이스에서 각각 측정한 걸음수 중 단위 시간에 가장 많은 걸음수를 측정한 걸음수를 단위 시간에 해당하는 걸음수로 결정할 수 있다.
동작(907)에서, 전자 장치(101)(예: 프로세서(120))는 최대 걸음수에 기반하여 통합 걸음수를 산출할 수 있다. 예를 들면, 프로세서(120)는 단위 시간별 최대 걸음수를 모두 합한 걸음수를 최대 걸음수가 결정된 시간 동안의 통합 걸음수로 산출할 수 있다. 예를 들면, 프로세서(120)는 웨어러블 디바이스 1(420)에서 측정한 걸음수와 웨어러블 디바이스 3(440)에서 측정한 걸음수를 하나로 통합할 수 있다. 또는, 프로세서(120)는 웨어러블 디바이스 1(420)에서 측정한 걸음수, 전자 장치(101) 자체적으로 측정한 걸음수, 전자 장치(101)에 설치된 어플리케이션에서 측정한 걸음수를 하나로 통합할 수 있다.
도 10은 다양한 실시예들에 따른 걸음수를 통합하는 일례를 도시한 도면이다.
도 10을 참조하면, 참조번호 '1040'은 일정 시간 동안(예: 09:00 ~ 09:10) 각 디바이스에서 측정한 걸음수를 나타낸 것이다. 전자 장치(1010)는 1분 단위로 걸음수를 저장하여 10분 동안 총 걸음수를 443보(1016)를 획득할 수 있다. 전자 장치(1010)는 1분 단위로 걸음수를 저장하므로, 프로세서(120)는 09:01에는 100보(1011), 09:02에는 0보, 09:03에는 110보(1012), 09:04에는 120보(1013), 09:05에는 110보(1014), 09:06에는 0보, 09:07에는 3보(1015), 09:08~09:10에는 0보를 걸음수로 획득할 수 있다. 웨어러블 디바이스(1020)는 10분 단위로 걸음수를 저장하여 10분 동안 총 걸음수로 200보(1027)를 획득할 수 있다. 예를 들면, 웨어러블 디바이스(1020)는 10분 단위로 걸음수를 저장하므로, 09:00 ~ 09:10에 200보(1025)를 걸음수로 획득할 수 있다. 전자 장치(101)에 설치된 어플리케이션(1030)은 5분 단위로 걸음수를 저장하며, 10분 동안 총 걸음수로 50보(1037)를 획득할 수 있다. 어플리케이션(1030)은 5분 단위로 걸음수를 저장하므로, 09:00 ~ 09:05에는 50보(1031), 09:06 ~ 09:10에는 0보를 걸음수로 획득할 수 있다.
다양한 실시예들에 따른 프로세서(120)는 웨어러블 디바이스(1020) 또는 어플리케이션(1030)은 걸음수를 1분 단위로 구분할 경우 어느 시점에 걸음수가 발생하였는지 정확히 알 수 없기 때문에 총 걸음수를 10으로 나누어 평준화할 수 있다.
참조번호 '1050'은 일정 시간 동안(예: 09:00 ~ 09:10) 각 디바이스에서 측정한 걸음수를 1분 단위로 구분한 것이다. 웨어러블 디바이스(1020)는 10분 단위로 걸음수를 저장하므로, 1분 단위로 구분하기 위해 총 걸음수(1027)를 10으로 나눠 1분 단위의 걸음수를 산출할 수 있다. 웨어러블 디바이스(1020)의 1분 단위 걸음수는 20(1021)일 수 있다. 즉, 프로세서(120)는 09:01에는 20보(1021), 09:02에는 20보(1022), 09:03 ~ 09:10에는 각 20보로 웨어러블 디바이스(1020)의 1분 단위 걸음수를 획득할 수 있다. 또한, 어플리케이션(1060)는 5분 단위로 걸음수를 저장하므로, 1분 단위로 구분하기 위해 5분 단위(예: 09:00 ~ 09:05) 걸음수 50보(1031)를 5로 나누고, 나머지 5분 단위(예: 09:06 ~ 09:10) 걸음수 0보를 5로 나눠 1분 단위의 걸음수를 산출할 수 있다. 어플리케이션(1060)의 1분 단위 걸음수는 09:00 ~ 09:05에는 10보(1035), 09:06 ~ 09:10에는 0보(1036)일 수 있다. 즉, 프로세서(120)는 09:00 ~ 09:05에는 10보(1035), 09:06 ~ 09:10에는 0보(1036)로 어플리케이션(1030)의 1분 단위 걸음수를 획득할 수 있다.
프로세서(120)는 각 단위 시간별 걸음수 중에서 최대 걸음수를 단위 시간의 걸음수로 결정할 수 있다. 프로세서(120)는 수학식 1을 적용하여 복수의 디바이스들의 걸음수 통합(1060)을 수행할 수 있다. 예를 들어, 09:01에는 전자 장치(1010)의 걸음수는 100보(1011), 웨어러블 디바이스(1020)의 걸음수는 20보(1021), 어플리케이션(1030)의 걸음수는 10보(1035)이므로, 이 중 최대 걸음수는 전자 장치(1010)의 걸음수인 100보(1011)일 수 있다. 이 경우, 프로세서(120)는 단위 시간 09:01에 걸음수를 최대 걸음수인 100보(1061)로 결정할 수 있다.
이와 마찬가지로, 09:02에는 전자 장치(1010)의 걸음수는 0보, 웨어러블 디바이스(1020)의 걸음수는 20보(1022), 어플리케이션(1030)의 걸음수는 10보(1032)이므로, 이 중 최대 걸음수는 웨어러블 디바이스(1020)의 걸음수인 20보(1022)일 수 있다. 이 경우, 프로세서(120)는 단위 시간 09:02에 걸음수를 최대 걸음수인 20보(1062)로 결정할 수 있다. 프로세서(120)는 상기와 같이 09:03 ~ 09:10 동안의 최대 걸음수를 산출하고, 산출된 최대 걸음수를 모두 합한 통합 걸음수를 550보(1070)로 산출할 수 있다. 통합 걸음수 550보(1070)는 개별적인 소스에서 측정한 통합 걸음수(예: 1016, 1027, 1037)보다 큰 것을 알 수 있다. max 방식으로 걸음수를 통합할 경우, 걸음수 감소에 대한 사용자 경험을 줄일 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 제1 시간 주기 동안(예: 09:00 ~ 09:10) 획득한 제1 데이터(예: 전자 장치(1010)에서 측정한 걸음수)에 기초한 제1 값(예: 443(1016))과 제2 데이터(예: 웨어러블 디바이스(1020)에서 측정한 걸음수)에 기초한 제2 값(예: 200(1027))의 합보다 작은 값(예: 550(1070)을 상기 제1 시간 주기 동안의 값(예: 통합 걸음수)으로서 산출할 수 있다.
도 11은 다양한 실시예들에 따른 전자 장치의 활동 정보 통합 방법을 도시한 흐름도이다.
도 11은 도 8의 데이터를 통합하는 동작(805)을 구체화한 것일 수 있다. 즉, 도 11은 제2 활동 타입에 대한 활동 정보를 통합하는 동작을 나타낸 것이다. 도 11을 참조하면, 동작(1101)에서, 전자 장치(101)(예: 프로세서(120))는 데이터 분석 결과에 기반하여 운동 종류를 결정할 수 있다. 운동 종류는 걷기, 달리기, 사이클링, 수영, 요가 등 다양한 운동을 분류한 것일 수 있다. 다양한 실시예들에 따르면, 프로세서(120)는 상기 데이터 분석 결과에 기반하여 1분에 측정된 걸음수가 제1 설정된 걸음수(예: 150보) 이상인 경우, '달리기'로 판단하고, 1분에 측정된 걸음수가 제1 설정된 걸음수 미만인 경우 '걷기'로 판단할 수 있다. 프로세서(120)는 상기 판단된 걷기의 총합과 달리기의 총합을 비교하여 큰 값을 갖는 운동을 운동 종류로 결정할 수 있다. 예를 들면, 걷기의 총합이 1000이고, 달리기의 총합이 400인 경우, 프로세서(120)는 운동 종류를 '걷기'로 결정할 수 있다. 상기 제1 설정된 걸음수는 사용자에 의해 설정되거나, 전자 장치(101)에 디플트로 설정될 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 일정 시간 동안 발생한 걸음수가 제2 설정된 걸음수(예: 1000보) 이상인 경우, 10분 동안 위치 정보의 변경에 기반하여 이동 속도를 산출할 수 있다. 프로세서(120)는 상기 산출된 이동 속도가 기설정된 속도(예: 20 Km/h) 이상인 경우, 사이클링으로 판단하고 운동 종류를 '사이클링'으로 결정할 수 있다. 또는, 프로세서(120)는 상기 산출된 이동 속도가 기설정된 속도(예: 20 Km/h) 미만인 경우, 달리기로 판단하고 운동 종류를 '달리기'로 결정할 수 있다. 상기 기설정된 속도는 사용자에 의해 설정되거나, 전자 장치(101)에 디플트로 설정될 수 있다.
동작(1103)에서, 전자 장치(101)(예: 프로세서(120))는 운동 종류의 시작과 종료를 판단할 수 있다. 프로세서(120)는 복수의 디바이스에서 검출된 데이터를 이용하여 운동 종류를 결정하였지만, 각 디바이스별로 운동 종류의 시작 시간과 종료 시간이 다를 수 있다. 프로세서(120)는 각 디바이스에 측정한 운동 종류의 시작 시간과 종료 시간을 확인할 수 있다. 예를 들면, 사이클링에 대해 웨어러블 디바이스(1020)에서 측정한 시작 시간은 09:30인데, 전자 장치(101)에서 자체적으로 측정한 시작 시간은 09:20일 수 있다. 또는, 사이클링에 대해 웨어러블 디바이스(1020)에서 측정한 종료 시간은 10:30인데, 전자 장치(101)에서 자체적으로 측정한 종료 시간은 10:20일 수 있다. 이 경우, 하나의 운동 종류에 대해 시작 시간과 종료 시간이 다르므로, 데이터 통합을 위해 시작 시간과 종료 시간을 일치시킬 필요가 있다.동작(1105)에서, 전자 장치(101)(예: 프로세서(120))는 우선 순위를 확인할 수 있다. 상기 우선 순위는 시간, 활동 타입, 운동 종류 및 디바이스 중 적어도 하나일 수 있다. 상기 우선 순위는 사용자에 의해 설정되거나, 전자 장치(101)에 디폴트 값으로 설정되어, 메모리(130)에 저장될 수 있다. 프로세서(120)는 활동 정보와 연관된 우선 순위가 메모리(130)에 저장되어 있는지 확인할 수 있다.
동작(1107)에서, 전자 장치(101)(예: 프로세서(120))는 우선 순위에 기반하여 운동 종류별 활동 정보를 통합할 수 있다. 예를 들어, 시간에 우선 순위를 두는 경우, 프로세서(120)는 가장 먼저 발생한 운동 종류의 시작 시간과 종료 시간을 기준으로 활동 정보를 통합할 수 있다. 또는, 운동 종류 각각에 우선 순위를 두는 경우, 프로세서(120)는 우선 순위가 높은 운동 종류의 시작 시간과 종료 시간을 기준으로 활동 정보를 통합할 수 있다. 예를 들어, 사이클링, 걷기, 달리기, 수영 순으로 우선 순위가 높은 경우, 사이클링과 걷기의 운동 시간이 일부 중첩되는 경우, 프로세서(120)는 사이클링의 시작 시간과 종료 시간을 기준으로 사이클링의 활동 정보를 통합할 수 있다. 프로세서(120)는 사이클링의 운동 시간과 중첩되지 않도록 걷기의 운동 시간을 결정함으로써, 걷기의 활동 정보를 통합할 수 있다.
상기 장치에 우선 순위를 두는 경우, 외부 장치, 전자 장치(101), 어플리케이션 순으로 우선 순위가 높을 수 있다. 예를 들어, 프로세서(120)는 외부 장치에서 측정한 운동 종류의 운동 시간을 기준으로 활동 정보를 통합하고, 전자 장치(101)에서 측정한 운동 종류의 운동 시간을 이용하여 활동 정보를 통합할 수 있다.
도 12는 다양한 실시예들에 따른 활동 정보를 통합하는 일례를 도시한 도면이다.
도 12를 참조하면, 프로세서(120)는 운동 종류의 시작 시간을 기준으로 활동 정보를 통합할 수 있다. 예를 들어, 프로세서(120)는 어플리케이션(1210)에서 측정한 데이터를 분석하여 사이클링(1211)이 먼저 시작한 것으로 인식되면, 사이클링(1211)의 시작 시간(t1)을 기준으로 사이클링에 대한 활동 정보(1241)를 통합할 수 있다. 어플리케이션(1210)은 전자 장치(1220)에 설치된 어플리케이션일 수 있다. 프로세서(120)는 사이클링(1211)의 종료 시간(t3)을 확인하고, 사이클링(1211)의 종료 시간(t3)이 다른 활동 정보와 중첩되는지 여부를 판단할 수 있다.
프로세서(120)는 시간을 기준으로 활동 정보를 통합하므로, 먼저 시작한 활동 정보(예: 제1 활동 정보)가 다른 활동 정보(예: 제2 활동 정보)와 중첩되는 경우, 제1 활동 정보의 종료 시간을 기준으로 제2 활동 정보를 통합할 수 있다. 예를 들면, 사이클링(1211)의 종료 시간(t3)이 전자 장치(1220)에서 측정된 수영 1(swimming 1, 1221)의 시작 시간(t2)과 중첩되는 것을 알 수 있다. 이 경우, 프로세서(120)는 사이클링(1211)의 종료 시간(t3)까지 사이클링에 대한 활동 정보(1241)를 통합하고, 사이클링(1211)의 종료 시간(t3) 이후에 수영에 대한 활동 정보를 통합할 수 있다.
예를 들면, 사용자는 수영 시작 전에, 전자 장치(1220)에 수영 시작을 설정한 후 수영할 수 있다. 또는, 사용자는 전자 장치(1220)에 수영 예상 시간(예: 30분, 1시간 등)을 설정할 수도 있다. 이 경우, 실제 수영한 운동 시간과 전자 장치(1220)에서 수영으로 측정한 운동 시간이 다를 수 있다. 다만, 사용자는 수영 시 전자 장치(1220)를 신체에 부착하고 수영할 수 있지만, 일반적으로 사용자는 웨어러블 디바이스(1230)를 착용하고 수영할 수 있다. 예를 들면, 전자 장치(1220)에서 측정된 수영 1(1221)의 시작 시간(t2)과 웨어러블 디바이스(1230)에서 측정된 수영 2(swimming 2, 1231)에서 측정한 시간(t4)이 다를 수 있다. 또한, 전자 장치(1220)에서 측정된 수영 1(1221)의 종료 시간(t5)과 웨어러블 디바이스(1230)에서 측정된 수영 2(1231)에서 측정한 종료 시간(t6)이 다를 수 있다.
이러한 점을 고려하여 프로세서(120)는 수영에 대한 활동 정보를 통합할 때, 전자 장치(1220)에서 측정된 수영 1(1221)에 대한 데이터와 웨어러블 디바이스(1230)에서 측정된 수영 2(1231)에 대한 데이터에 기반하여 수영에 대한 활동 정보(1242)를 통합할 수 있다. 프로세서(120)는 사이클링(1211)의 종료 시간(t3) 이후에 전자 장치(1220)에서 측정된 수영 1(1221)의 운동 시간(t2 ~ t5)과, 웨어러블 디바이스(1230)에서 측정된 수영 2(1231)에서 측정한 수영 2(1231)의 운동 시간(t4 ~ t6)에 기반하여 수영에 대한 활동 정보(1242)를 통합할 수 있다. 이 경우, 서로 다른 디바이스에서 획득한 활동 정보를 연속적인 하나의 활동으로 처리함으로써, 사용자가 직관적으로 활동 정보를 파악할 수 있도록 할 수 있다.
다양한 실시예들에 따르면, 활동 정보를 통합할 때, 디바이스별로 우선 순위를 다르게 부여하여 활동 정보를 통합할 수 있다. 수영은 사이클링과 다르게, 수영을 측정한 디바이스가 두 개인 것을 알 수 있다. 프로세서(120)는 디바이스별로 우선 순위를 다르게 부여하여 활동 정보를 통합할 수 있다. 예를 들면, 도 12에서는 전자 장치(1220)보다 웨어러블 디바이스(1230)가 우선 순위가 높을 수 있다. 프로세서(120)는 전자 장치(1220)에서 측정된 수영 1(1221)의 운동 시간(t2 ~ t5)보다 웨어러블 디바이스(1230)에서 측정한 수영 2(1231)의 운동 시간(t4 ~ t6)에 우선순위를 높게 두어 수영에 대한 활동 정보(1242)를 통합할 수 있다.
도 13은 다양한 실시예들에 따른 전자 장치의 비 활동 정보 통합 방법을 도시한 흐름도이다.
도 13은 도 8의 데이터를 통합하는 동작(805)을 구체화한 것일 수 있다. 즉, 도 13은 제3 활동 타입에 대한 비 활동 정보를 통합하는 동작을 나타낸 것이다. 도 13을 참조하면, 동작(1301)에서, 전자 장치(101)(예: 프로세서(120))는 시간별 비 활동 구간을 정렬할 수 있다. 상기 비 활동 구간은 걷거나, 활동(예: 사이클링, 수영 등)을 하지 않고 수면을 취하거나, 앉아 있는 등의 정지(stationary) 상태를 의미할 수 있다. 또는, 상기 비 활동 구간이란 아무것도 검출되지 않은 것일 수도 있다. 프로세서(120)는 시간 순으로 비 활동 구간을 정렬할 수 있다.
동작(1303)에서, 전자 장치(101)(예: 프로세서(120))는 비 활동 구간들 사이에 활동 정보가 포함되어 있는지 판단할 수 있다. 예를 들면, 휴식 중에도 중간에 걸음수가 발생할 수 있다. 이 경우, 휴식 중간에 화장실을 가거나 하는 등의 이동 시 걸음수가 발생하므로, 비 활동 구간들 사이에 활동 정보가 포함되어 있을 수 있다.
상기 비 활동 구간들 사이에 활동 정보가 포함되어 있는 경우 동작(1309)을 수행하고, 활동 정보가 포함되어 있는 경우 동작(1305)을 수행할 수 있다.
동작(1305)에서, 전자 장치(101)(예: 프로세서(120))는 상기 비 활동 구간들을 하나의 세션으로 통합할 수 있다. 상기 비 활동 구간은 거리 기반 클러스트링을 통하여 통합 가능할 수 있다. 예를 들어, 상기 비 활동 구간이 연속적으로 나타나는 경우, 프로세서(120)는 연속적으로 검출된 비 활동 구간들을 하나의 세션으로 통합할 수 있다.
동작(1307)에서, 전자 장치(101)(예: 프로세서(120))는 통합된 세션을 비 활동 정보로 처리할 수 있다. 프로세서(120)는 처리된 비 활동 정보를 메모리(130)에 저장할 수 있다.
동작(1309)에서, 전자 장치(101)(예: 프로세서(120))는 상기 비 활동 구간들 사이에 포함된 활동 정보가 기준 활동 정보를 초과하는지 여부를 판단할 수 있다. 상기 기준 활동 정보는 사용자에 의해 설정되거나, 전자 장치(101)에 디폴트 값으로 설정되어, 메모리(130)에 저장될 수 있다. 상기 비 활동 구간이 연속적으로 나타나는 경우, 중간에 인식된 매우 짧은 시간의 활동 정보는 오 인식될 가능성이 높을 수 있다. 따라서, 상기 기준 활동 정보는 비 활동 구간 사이에 작은 움직임에 대하여 오류로 처리하기 위한 것으로, 예를 들면, 걸음수 10보 이하, 5분 이하 등과 같은 것일 수 있다. 프로세서(120)는 상기 비 활동 구간들 사이에 포함된 활동 정보가 기준 활동 정보 이하인 경우, 동작(1305)으로 리턴할 수 있다.
상기 비 활동 구간들 사이에 포함된 활동 정보가 기준 활동 정보를 초과하는 경우, 동작(1311)을 수행하고, 상기 비 활동 구간들 사이에 포함된 활동 정보가 기준 활동 정보 이하인 경우, 동작(1305)을 수행할 수 있다.
동작(1311)에서, 전자 장치(101)(예: 프로세서(120))는 상기 비 활동 구간들 사이에 포함된 활동 정보가 기준 활동 정보를 초과하는 경우, 활동 정보 통합 프로세스를 수행할 수 있다. 상기 활동 정보 통합 프로세스는 도 11에서 설명한 동작일 수 있다.
도 14는 다양한 실시예들에 따른 비 활동 정보를 통합하는 일례를 도시한 도면이다.
도 14를 참조하면, (a)와 같이, 비 활동 구간은 시간순으로 비 활동 구간을 정렬될 수 있다. 프로세서(120)는 데이터가 아무것도 검출되지 않은 경우, 객체(1411) 및 객체(1412)와 같이 '알 수 없는 구간'으로 처리할 수 있다. 알 수 없는 구간은 건강 관련 데이터를 측정하는 외부 장치, 전자 장치(101) 또는 어플리케이션에서 데이터가 검출되지 않은 구간을 의미할 수 있다. 프로세서(120)는 하나 이상의 디바이스에서 수집된 데이터를 분석하여 측정된 데이터가 없는 경우, '알 수 없는 구간'으로 처리할 수 있다. 프로세서(120)는 전자 장치(101)에서 측정한 데이터를 수면(sleep, 1420)으로 분석할 수 있다. 또한, 프로세서(120)는 외부 장치에서 측정된 데이터를 앉아 있음(1430)으로 분석할 수 있다. 프로세서(120)는 전자 장치(101)에서 측정한 수면(1420)을 비 활동 구간(예: 제1 비 활동 구간)으로 인식하고, 외부 장치에서 측정한 앉아 있음(1430)을 비 활동 구간(예: 제2 비 활동 구간)으로 인식할 수 있다. 프로세서(120)는 전자 장치(101)에서 측정한 데이터와 외부 장치에서 측정된 데이터 사이에 데이터가 검출되지 않는 경우, 알 수 없는 구간(1413)으로 처리할 수 있다.
프로세서(120)는 (b)와 같이, 비 활동 구간을 통합할 수 있다. 예를 들면, 프로세서(120)는 제1 비 활동 구간(예: 수면(1420))과 제2 비 활동 구간(예: 앉아있음(1430)) 사이에 알 수 없는 구간(1413)을 연속적인 비 활동 구간으로 판단할 수 있다. 프로세서(120)는 min distance 를 10분으로 하여 총 55분을 비 활동 정보로 판단할 수 있다. 프로세서(120)는 제1 비 활동 구간(예: 수면(1420))에서 제2 비 활동 구간(예: 앉아있음(1430)) 까지를 하나의 세션으로 통합할 수 있다. 프로세서(120)는 제1 비 활동 구간(예: 수면(1420)), 알 수 없는 구간(1413), 제2 비 활동 구간(예: 앉아있음(1430))을 포함하는 통합된 세션을 비 활동 정보(1440)로 처리할 수 있다.
도 15는 다양한 실시예들에 따른 다양한 활동 타입의 데이터를 통합하는 일례를 도시한 도면이다.
도 15를 참조하면, 프로세서(120)는 도 9 내지 도 14와 같이 각 활동 타입에 따라 걸음수(1510), 비 활동 정보(1520) 및 활동 정보(1530)를 통합한 후(1540), 활동 타입의 우선 순위(또는 가중치)를 고려하여 통합된 데이터를 보정할 수 있다. 또는, 프로세서(120)는 활동 타입의 우선 순위(또는 가중치)를 고려하여 걸음수(1510), 비 활동 정보(1520) 및 활동 정보(1530)를 통합할 수도 있다.
프로세서(120)는 t1 ~ t3 시간(예: 9분)에 걸음수 1(Step 1, 1511)을 통합하고, t5 ~ t8 시간(예: 9분)에 걸음수 2(Step 2, 1512)를 통합하며, t9 ~ t11 시간(예: 30분)에 걸음수 3(Step 3, 1513)을 통합할 수 있다. 또한, 프로세서(120)는 t6 ~ t10 시간에 비 활동 정보(1521)를 통합할 수 있다. 또한, 프로세서(120)는 t2 ~ t4 시간에 사이클링(1531)에 대한 활동 정보를 통합하고, t4 ~ t7 시간에 수영(1532)에 대한 활동 정보를 통합할 수 있다.
다양한 실시예들에 따르면, 활동 정보(1530), 비 활동 정보(1520), 걸음수(1510) 순으로 우선 순위가 높을 수 있다. 걸음수(1510) 또는 비 활동 정보(1520)보다 활동 정보(1530)가 사용자에게 더 의미 있다고 판단될 수 있기 때문에, 프로세서(120)는 활동 정보(1530)에 우선 순위를 높게 설정할 수 있다. 참고로, 걸음수(1510)는 오인식율이 높기 때문에 프로세서(120)는 걸음수(1510)의 우선 순위를 가장 낮게 설정할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 걸음수 1(1511)과 사이클링(1531)에 대한 활동 정보가 중첩되는 경우, 걸음수(1510)보다 활동 정보(1530)에 우선 순위게 높기 때문에, 사이클링(1531)에 대한 활동 정보를 기준으로 걸음수 1(1511)을 보정할 수 있다. 예를 들면, 걸음수 1(1511)의 시작 시간(t1)과 종료 시간(t3) 사이에 사이클링(1531)의 시작 시간(t2)이 중첩되는 경우, 프로세서(120)는 걸음수 1(1511)의 종료 시간(t3)을 사이클링(1531)의 시작 시간(t2)으로 보정할 수 있다. 즉, 보정된 걸음수(S, 1541)는 t1 ~ t2 시간 동안 발생한 것으로 보정될 수 있다. 또한, 사이클링(1531)에 대한 활동 정보(1542)는 t2 ~ t4 시간 동안 발생한 것으로 보정될 수 있다.
프로세서(120)는 동일한 활동 타입(예: 활동 정보(1530))에 대해서는 시간, 운동 종류 및 장치 중 적어도 하나에 기반하여 운동 시간을 보정할 수 있다. 예를 들면, 프로세서(120)는 시간을 기준으로 먼저 시작된 사이클링(1531)에 대한 활동 정보(1542)가 완료된 후, 수영(1532)에 대한 활동 정보(1543)를 보정할 수 있다. 수영(1532)의 종료 시간(t7), 걸음수 2(1512)의 시작 시간(t5), 비 활동 구간(1521)의 시작 시간(t6)이 중첩되는 경우, 프로세서(120)는 활동 타입의 우선 순위에 기반하여 수영(1532)에 우선 순위를 두어 수영(1532)의 종료 시간(t7) 이후에 걸음수 2(1512) 및 비 활동 구간(1521)을 보정할 수 있다. 따라서, 수영(1532)에 대한 활동 정보(1543)는 t4 ~ t7 시간 동안 발생한 것으로 보정될 수 있다.
여기서, 프로세서(120)는 걸음수(1510)의 오인식율이 높기 때문에, 걸음수 2(1512)의 시작 시간(t5), 비 활동 구간(1521)의 시작 시간(t6)이 중첩되는 경우, 비 활동 구간(1521)의 시작 시간(t6)을 기준으로 걸음수 2(1512)를 보정할 수 있다. 이 경우, 걸음수 2(1512)는 통합 데이터에 포함되지 않을 수 있다. 즉, 프로세서(120)는 비 활동 구간(1521) 중에 일시적으로 걸음수 2(1512)가 발생한 경우, 걸음수 2(1512)를 오류로 처리할 수 있다.
이를 위해, 프로세서(120)는 비 활동 구간(1521)의 시작 시간부터 발생한 걸음수 2(1512)가 기준 활동 정보를 초과하는지 여부를 판단할 수 있다. 상기 기준 활동 정보는 비 활동 구간 사이에 작은 움직임에 대하여 오류로 처리하기 위한 것으로, 예를 들면, 걸음수 10보 이하, 5분 이하 등과 같은 것일 수 있다. 프로세서(120)는 비 활동 구간(1521)에 발생한 걸음수 2(1512)가 기준 활동 정보 이하인 경우, 걸음수 2(1512)를 오류로 처리하여 통합 데이터에 포함되지 않도록 할 수 있다. 즉, 프로세서(120)는 걸음수 2(1512)를 무시하여 통합 데이터에 포함시키지 않을 수 있다.
또한, 프로세서(120)는 비 활동 구간(1521)의 종료 시간(t10)이 걸음수 3(1513)의 시작 시간(t9)과 중첩되는 경우, 비 활동 구간(1521)의 종료 시간(t10)을 기준으로 걸음수 3(1513)을 보정할 수 있다. 이 경우에도, 프로세서(120)는 걸음수 3(1513)의 시작 시간(t9)부터 비 활동 구간(1521)의 종료 시간(t10)까지 발생한 걸음수 3(1513)이 기준 활동 정보를 초과하는지 여부를 판단할 수 있다. 프로세서(120)는 비 활동 구간(1521)의 종료 시간(t10) 까지 발생한 걸음수 3(1513)이 기준 활동 정보 이하인 경우, 걸음수 3(1513)의 일부 구간을 오류로 처리할 수 있다. 따라서, 비 활동 정보(1544)는 t7 ~ t10 시간 동안 발생한 것으로 보정될 수 있다. 이 경우, 보정된 걸음수(1545)는 t10 ~ t11 시간 동안 발생한 것으로 보정될 수 있다.
이렇게, 프로세서(120)는 보정된 데이터(1540)를 메모리(130)에 저장할 수 있다.
도 16은 다양한 실시예들에 따른 활동 정보에 대한 사용자 인터페이스의 일례를 도시한 도면이다.
도 16의 사용자 인터페이스는 도 8의 동작(807)에서 제공되는 것일 수 있다. 도 16을 참조하면, 프로세서(120)는 보정된 데이터에 기반하여 제1 사용자 인터페이스(1610)를 표시할 수 있다. 일례로, 제1 사용자 인터페이스(1610)에는 걷기 및 활동 정보에 대한 활동 영역을 표시한 지도 이미지(1611), 소모 칼로리, 이동 거리, 가장 긴 기간의 활동 시간에 대한 통합 정보(1612), 시간 순서대로 달리기(1613), 걷기 1(1614), 걷기 2(1615)에 대한 활동 정보가 포함될 수 있다. 프로세서(120)는 보정된 데이터에 대해서는 달리기(1613), 걷기 1(1614), 걷기 2(1615)에 대한 활동 정보에 태그(예: auto)를 포함시킬 수 있다. 또는, 프로세서(120)는 우선 순위에 기반하여 데이터가 보정된 경우 보정된 데이터에 대한 항목 색상을 음영 처리할 수 있다. 예를 들면, 프로세서(120)는 보정된 데이터와 보정되지 않은 데이터의 항목 색상을 상이하게 표시할 수 있다.
다양한 실시예들에 따른 제1 사용자 인터페이스(1610)는 일정 시간 주기 동안 위치했었던 장소들과 연관된 지도에 상기 보정된 데이터와 연관된 이미지, 텍스트, 또는 심볼 중 적어도 하나를 중첩되도록 표시하는 것일 수 있다. 예를 들면, 제1 사용자 인터페이스(1610)는 지도 위에 상기 활동 정보와 연관된 데이터를 아이콘, 텍스트 등으로 표시하는 것일 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 보정된 데이터에 기반하여 제2 사용자 인터페이스(1620)를 표시할 수 있다. 프로세서(120)는 사용자가 제1 사용자 인터페이스(1610)에서 달리기(1613), 걷기 1(1614), 걷기 2(1615)에 대한 활동 정보 중 어느 하나를 선택한 경우, 제2 사용자 인터페이스(1620)를 표시할 수 있다. 예를 들면, 사용자가 제1 사용자 인터페이스(1610)에서 달리기(1613)에 대한 활동 정보를 선택한 경우, 프로세서(120)는 달리기에 대한 시간, 거리를 나타내는 간략 정보(1621), 지도 상에 달린 영역을 나타낸 지도 이미지(1622), 달리기 속도를 나타내는 그래프(1623)를 포함하는 제2 사용자 인터페이스(1620)를 표시할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 보정된 데이터에 기반하여 제3 사용자 인터페이스(1630)를 표시할 수 있다. 프로세서(120)는 사용자가 제1 사용자 인터페이스(1610)에서 달리기(1613), 걷기 1(1614), 걷기 2(1615)에 대한 활동 정보 중 어느 하나를 선택한 경우, 제3 사용자 인터페이스(1630)를 표시할 수 있다. 예를 들면, 사용자가 제1 사용자 인터페이스(1610)에서 달리기(1613)에 대한 활동 정보를 선택한 경우, 프로세서(120)는 달리기에 대한 지속 시간(1631), 달린 거리(1632), 달리기에 의해 소모된 칼로리량(1633), 속도 정보(1634), 보폭 정보(1635), 날씨 정보(1636), 촬영 버튼(1637)을 포함하는 제3 사용자 인터페이스(1630)를 표시할 수 있다.
속도 정보(1634)는 달리기의 시간에 따른 평균 속도 및 최대 속도를 포함할 수 있다. 보폭 정보(1635)는 달리기의 거리에 따른 평균 보폭(pace) 및 최대 보폭을 포함할 수 있다. 날씨 정보(1636)는 날씨 아이콘, 온도, 날씨 종류(예: 맑음, 흐림, 비 등), 습도, 풍향 중 적어도 하나를 포함할 수 있다. 프로세서(120)는 사용자로부터 촬영 버튼(1637)을 선택받으면, 카메라를 실행시킬 수 있다. 카메라가 실행되면, 카메라 어플리케이션이 실행되어 카메라로부터 촬영되는 프리뷰 이미지가 디스플레이(160)의 화면에 표시될 수 있다.
도 17은 다양한 실시예들에 따른 활동 정보를 공유하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 17을 참조하면, 프로세서(120)는 활동 정보를 공유하기 위한 제1 사용자 인터페이스(1710)를 표시할 수 있다. 예를 들면, 프로세서(120)는 사용자로부터 건강 관련 어플리케이션을 선택받은 경우, 선택된 어플리케이션을 통해 제1 사용자 인터페이스(1710)를 표시할 수 있다. 상기 건강 관련 어플리케이션은 사용자의 요청 없이도 전자 장치(101)에 디폴트 값으로 설치된 것일 수 있다. 또는, 상기 건강 관련 어플리케이션은 사용자의 요청에 따라 전자 장치(101)에 설치될 수도 있다. 제1 사용자 인터페이스(1710)는 어플리케이션을 실행한 후 첫 화면이거나, 활동 정보를 공유하기 위해 사용자가 '공유'를 선택하면 제공되는 것일 수 있다. 예를 들면, 프로세서(120)는 도 16의 제1 사용자 인터페이스(1610)에서 걷기 1(1614)에 대한 활동 정보를 선택한 경우, 제1 사용자 인터페이스(1710)를 표시할 수 있다.
제1 사용자 인터페이스(1710)에는 이미지(1711), 이미지 추가 버튼(1712), 사진 활영 버튼(1713), 차트 보기 버튼(1714), 및 공유 버튼(1715)을 포함할 수 있다. 이미지(1711)는 사용자에 의해 촬영된 것이거나, 어플리케이션에 이미 등록된 것일 수 있다. 이미지 추가 버튼(1712)이 선택되면, 촬영된 사진이 포함된 갤러리 어플리케이션이 실행될 수 있다. 또는, 이미지 추가 버튼(1712)이 선택되면, (1)카메라 실행, (2) 갤러리 실행, (3)취소 등의 다양한 팝업 메뉴가 표시될 수도 있다. 사진 활영 버튼(1713)이 선택되면, 카메라 어플리케이션이 실행되어, 카메라로부터 촬영되는 프리뷰 이미지가 디스플레이(160)의 화면에 표시될 수 있다. 차트 보기 버튼(1714)은 이미지(1711)에 표시된 활동 정보에 대한 지도 이미지, 이동 거리, 속도 등을 포함하는 상세 정보가 표시될 수 있다. 공유 버튼(1715)이 선택되면, 이미지(1711)에 표시된 활동 정보를 타 사용자와 공유하기 위한 메뉴가 표시될 수 있다. 공유하기 위한 메뉴는 공유하기 위한 어플리케이션(예: 메시지, 이메일 등) 리스트 또는 연락처에 포함된 상대방 정보(예: 이름, 전화번호 등) 리스트 등일 수 있다.
프로세서(120)는 활동 정보를 공유하기 위한 제2 사용자 인터페이스(1720)를 표시할 수 있다. 예를 들면, 프로세서(120)는 도 16의 제1 사용자 인터페이스(1610)에서 달리기(1613)에 대한 활동 정보를 선택한 경우, 제2 사용자 인터페이스(1720)를 표시할 수 있다. 제2 사용자 인터페이스(1720)에는 지도 이미지(1721), 활동 정보(1722), 사진 촬영, 상 주기, 지도 보기, 차트 보기 등의 다양한 메뉴 리스트(1723), 공유 버튼(1724)을 포함할 수 있다. 지도 이미지(1721)는 달리기(1613)에 대한 활동 정보를 지도 상에 활동 영역으로 표기한 지도일 수 있다. 활동 정보(1722)는 달리기(1613)에 대한 거리 및 시간을 포함할 수 있다. 메뉴 리스트(1723)에 포함된 항목을 선택하면, 해당하는 항목에 대한 화면이 표시될 수 있다. 공유 버튼(1724)은 공유 버튼(1715)과 유사하게 지도 이미지(1721)에 표시된 활동 정보를 타 사용자와 공유하기 위한 메뉴가 표시될 수 있다.
도 18은 다양한 실시예들에 따른 웨어러블 디바이스의 인식 우선 순위를 설정하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 18을 참조하면, 프로세서(120)는 현재 디바이스와 연결되어 있는 경우, 인식 우선 순위를 설정하는 제1 사용자 인터페이스(1810)를 표시할 수 있다. 제1 사용자 인터페이스(1810)는 현재 연결된 디바이스를 우선적으로 인식하도록 설정하는 인식 온/오프 항목(1811), 온/오프 항목(1811)을 온(ON)시킴에 따른 연결 안내 메시지(1812), 현재 연결된 디바이스에 대한 위치 정보를 설정하는 위치 온/오프 항목(1813)이 포함될 수 있다. 위치 온/오프 항목(1813)이 온(ON)되면, 현재 연결된 디바이스에 대한 위치 정보를 수집할 수 있다.
프로세서(120)는 현재 디바이스와 연결되어 있지 않은 경우, 인식 우선 순위를 설정하는 제2 사용자 인터페이스(1820)를 표시할 수 있다. 제2 사용자 인터페이스(1820)는 현재 연결되지 않은 디바이스 중에서 어느 하나(예: 제1 디바이스) 또는 사용자로부터 디바이스 리스트 중 선택된 디바이스(예: 제1 디바이스)에 대한 인식 온/오프 항목(1821) 및 위치 온/오프 항목(1822)이 포함될 수 있다. 제2 사용자 인터페이스(1820)는 인식 온/오프 항목(1811)은 온(ON)으로 설정되고, 위치 온/오프 항목(1822)은 오프(OFF)로 설정된 것일 수 있다. 사용자의 개인 정보 보호를 위해 일반적으로 위치 온/오프 항목(1822)은 오프(OFF)되어 있을 수 있다.
프로세서(120)는 제2 사용자 인터페이스(1820)에서 사용자로부터 인식 온/오프 항목(1821)을 오프(OFF)로 선택받은 경우 제3 사용자 인터페이스(1830)를 표시할 수 있다. 제3 사용자 인터페이스(1830)는 인식 온/오프 항목(1831)이 오프(OFF)로 설정되고, 위치 온/오프 항목(1832)은 오프(OFF)로 설정된 것일 수 있다. 예를 들면, 프로세서(120)는 사용자로부터 인식 온/오프 항목(1821)에 터치 입력이 발생하거나, 인식 온/오프 항목(1821)에 설정된 온(ON)을 오프(OFF)로 변경하려는 사용자 입력이 발생한 경우, 제3 사용자 인터페이스(1830)를 표시할 수 있다. 온(ON)을 오프(OFF)로 변경하려는 사용자 입력은 온(ON)을 터치한 후 오프(OFF) 방향으로 상기 터치된 위치가 이동하는 드래그 입력일 수 있다.
도 19는 다양한 실시예들에 따른 위치 정보를 설정하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 19를 참고하면, 프로세서(120)는 제1 사용자 인터페이스(1910)를 표시할 수 있다. 제1 사용자 인터페이스(1910)는 도 18의 제2 사용자 인터페이스(1820)와 유사할 수 있다. 예를 들면, 제1 사용자 인터페이스(1910)는 인식 온/오프 항목(1911)은 온(ON)으로 설정되고, 위치 온/오프 항목(1912)은 오프(OFF)로 설정된 것일 수 있다. 프로세서(120)는 제1 사용자 인터페이스(1910)에서 사용자로부터 위치 온/오프 항목(1912)을 온(ON)으로 선택받은 경우 제2 사용자 인터페이스(1920)를 표시할 수 있다.
제2 사용자 인터페이스(1920)는 제1 사용자 인터페이스(1910) 위에 팝업 메시지(1921)를 포함하는 것일 수 있다. 팝업 메시지(1921)에는 위치 정보를 제공하도록 설정을 바꾸려면 전자 장치(101)의 설정 메뉴로 진입하라는 알림 메시지와, 위치 설정(1922), 취소 버튼(1923), 설정 버튼(1924)을 포함할 수 있다. 위치 설정(1922)은 체크 박스 형태로 제공될 수 있다. 체크 박스에 체크되면(예: 선택), 위치 설정(1922)을 활성화하는 것이고, 체크 박스에 체크되지 않으면(예: 선택하지 않음), 위치 설정(1922)을 비활성화하는 것일 수 있다.
프로세서(120)는 위치 설정(1922)을 선택한 후 설정 버튼(1924)이 선택되면, 제3 사용자 인터페이스(1930)를 표시할 수 있다. 제3 사용자 인터페이스(1930)는 전자 장치(101)의 어플리케이션의 승인(permission) 설정을 위한 것일 수 있다. 제3 사용자 인터페이스(1930)는 어플리케이션의 승인 설정과 관련된 다양한 항목(예: 연락처, 위치, 전화 등)을 표시할 수 있다. 일반적으로, 전자 장치(101)는 사용자의 개인 정보 보호를 위해 위치 승인 설정은 오프(OFF) 상태일 수 있다. 즉, 제3 사용자 인터페이스(1930)에는 위치 설정 항목(1931)이 오프(OFF) 상태일 수 있다.
프로세서(120)는 제3 사용자 인터페이스(1930)에서 위치 설정 항목(1931)이 선택된 경우, 제4 사용자 인터페이스(1940)를 제공할 수 있다. 예를 들면, 프로세서(120)는 사용자로부터 위치 설정 항목(1931)에 터치 입력이 발생하거나, 위치 설정 항목(1931)에 설정된 오프(OFF)를 온(ON)으로 변경하려는 사용자 입력이 발생한 경우, 제4 사용자 인터페이스(1940)를 표시할 수 있다. 제4 사용자 인터페이스(1940)에는 위치 설정 항목(1941)이 온(ON) 상태일 수 있다.
사용자가 위치 설정 항목(1941)을 변경하고, 확인을 선택하면, 프로세서(120)는 제2 사용자 인터페이스(1950)를 제공할 수 있다. 제2 사용자 인터페이스(1950)는 제1 사용자 인터페이스(1910)에서 위치 온/오프 항목(1951)이 온(ON)으로 설정된 것일 수 있다. 위치 온/오프 항목(1951)이 온(ON)되면, 제2 사용자 인터페이스(1950)와 연관된 디바이스에 대한 위치 정보를 수집할 수 있다.
도 20은 다양한 실시예들에 따른 전자 장치의 사용자 인터페이스 표시 방법을 도시한 흐름도이다.
도 20을 참고하면, 동작(1201)에서, 전자 장치(101)(예: 프로세서(120))는 활동 정보 표시를 위한 이벤트를 검출할 수 있다. 상기 이벤트는 건강 관련 데이터를 표시하는 어플리케이션 실행 이벤트, 상기 어플리케이션 내 지도 이미지 선택 이벤트, 상기 어플리케이션 내 활동 정보 선택 이벤트 중 적어도 하나일 수 있다. 프로세서(120)는 상기 검출된 이벤트에 응답하여 활동 정보와 연관된 사용자 인터페이스 또는 사용자 경험을 제공할 수 있다. 예를 들면, 프로세서(120)는 상기 검출된 이벤트에 응답하여 도 16의 사용자 인터페이스(예: 1610, 1620)를 표시할 수 있다.
동작(1203)에서, 전자 장치(101)(예: 프로세서(120))는 활동 정보에 대한 위치 정보가 존재하는지 판단할 수 있다. 프로세서(120)는 상기 활동 정보와 연관된 위치 정보가 존재하는 경우, 위치 정보에 기반하여 활동 정보에 대한 활동 영역을 표시할 수 있다. 그러나, 프로세서(120)는 상기 활동 정보와 연관된 위치 정보가 존재하지 않는 경우, 지도 위에 활동 정보와 연관된 활동 영역을 표시하지 못할 수 있다.
프로세서(120)는 활동 정보에 대한 위치 정보가 존재하는 경우, 동작(2005)을 수행하고, 활동 정보에 대한 위치 정보가 존재하지 않는 경우, 동작(2015)을 수행할 수 있다.
동작(1205)에서, 전자 장치(101)(예: 프로세서(120))는 활동 정보와 연관된 활동 영역을 산출할 수 있다. 디바이스별로 위치 정보를 제공할 수도 있고, 아닐 수도 있다. 또한, 위치 정보를 제공하는 경우에도 디바이스별로 위치 정보에 대한 sampling rate이 다를 수 있다. 따라서, 프로세서(120)는 사용자 인터페이스 제공을 위해 활동 영역을 원형으로 표현할 수 있다. 예를 들어, 프로세서(120)는 하나의 활동 정보에 대한 위치 정보가 1개인 경우, 위치 정보를 중심으로 일정 반경을 가지는 활동 영역을 산출할 수 있다. 상기 일정 반경은 사용자에 의해 설정되거나, 전자 장치(101)에 디폴트 값으로 설정될 수도 있다. 프로세서(120)는 하나의 활동 정보에 대한 위치 정보가 2개 이상인 경우, 가장 끝점 2개를 이용하여 중점을 계산할 수 있다.
프로세서(120)는 수학식 2와 같이 평균 방식을 이용하여 중점을 계산할 수 있다.
Figure pat00004
center(a,b)는 중점의 좌표, ax, ay는 제1 끝점의 좌표, bx, by는 제2 끝점의 좌표일 수 있다.
프로세서(120)는 각각의 디바이스에서 추출한 활동 정보에 대한 활동 영역을 각각 산출할 수 있다.
동작(1207)에서, 전자 장치(101)(예: 프로세서(120))는 활동 영역이 복수 개인지 판단할 수 있다. 예를 들어, 프로세서(120)는 하나 이상의 디바이스에서 검출된 활동 정보를 제공하는데, 활동 영역이 복수개인 경우, 활동 영역이 서로 중첩될 수 있다.
프로세서(120)는 활동 영역이 복수개인 경우 동작(2009)을 수행하고, 활동 영역이 복수개가 아닌 경우, 동작(2015)을 수행할 수 있다.
동작(1209)에서, 전자 장치(101)(예: 프로세서(120))는 인접한 두 개의 활동 영역간의 거리를 산출할 수 있다. 예를 들면, 프로세서(120)는 각 활동 영역의 중점 간의 거리를 이용하여 활동 영역 간의 거리를 산출할 수 있다.
프로세서(120)는 수학식 3과 같이 두 개의 활동 영역간의 거리를 산출할 수 있다.
Figure pat00005
dist(a,b)는 두 활동 영역 간의 거리이고, ax, ay는 제1 활동 영역의 중점 좌표, bx, by는 제2 활동 영역의 중점 좌표일 수 있다.
프로세서(120)는 수학식 3의 유클리디안 거리를 이용하여 두 개의 활동 영역간의 거리를 산출하고, 산출된 거리를 이용하여 두 개의 활동 영역간의 중첩 여부를 판단할 수 있다.
동작(1211)에서, 전자 장치(101)(예: 프로세서(120))는 산출된 거리가 기준 거리 미만인지 판단할 수 있다. 상기 기준 거리는 사용자에 의해 설정되거나, 전자 장치(101)에 의해 설정될 수 있다.
프로세서(120)는 수학식 4와 같이 두 개의 활동 영역간의 중첩 여부를 판단할 수 있다.
Figure pat00006
dist(a,b)는 두 활동 영역 간의 거리이고, 는 기준 거리, radius of icon1은 제1 활동 영역의 중점(또는 아이콘), radius of icon2는 제2 활동 영역의 중점(또는 아이콘)일 수 있다.
예를 들면, 프로세서(120)는 상기 수학식 4에 의해 조건이 true일 경우, 중첩 제어 프로세스를 수행할 수 있다. 예를 들면, 기준 거리(예: 알파( ))가 1인 경우, 두 개의 활동 영역간의 중첩 제어 프로세스가 수행될 수 있다. 기준 거리가 1보다 큰 경우는 겹치지 않을 수 있으며, 1보다 작은 경우 어느 크기 이상 겹칠 수도 있다.
다양한 실시예들에 따르면, 프로세서(120)는 활동 영역이 표시될 지도 이미지의 지도 비율 및 활동 영역의 크기에 기반하여 상기 기준 거리를 설정할 수 있다. 예를 들면, 지도 비율이 커지거나, 작아지는 경우, 활동 영역의 크기도 커지거나, 작아질 수 있다. 또는, 지도 비율이 커지거나, 작아지는 경우, 활동 영역의 크기도 작아지거나, 커질 수 있다. 상기 지도 비율과 상기 활동 영역의 크기는 비례 관계 또는 반비례 관계일 수 있다. 다양한 실시예들에 따르면, 상기 지도 비율에 따라 상기 활동 영역의 크기가 변경되는 경우, 프로세서(120)는 상기 기준 거리로 상기 지도 비율 및 상기 활동 영역의 크기에 따라 조절할 수 있다.
프로세서(120)는 산출된 거리가 기준 거리 미만인 경우 동작(2013)을 수행하고, 산출된 거리가 기준 거리 이상인 경우, 동작(2015)을 수행할 수 있다.
동작(1213)에서, 전자 장치(101)(예: 프로세서(120))는 활동 영역 내 아이콘을 보정 처리할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 복수의 디바이스들에서 추출된 활동 정보에 대한 활동 영역이 서로 중첩되는 경우를 최대한 방지하기 위하여 우선 순위를 두어 활동 영역의 중첩을 줄일 수 있다. 우선 순위는 활동 영역의 반경, 운동 종류, 디바이스 중 적어도 하나에 설정될 수 있다. 상기 우선 순위는 사용자에 의해 설정되거나, 전자 장치(101)에 의해 설정될 수 있다. 우선 순위에 따라 중복 기능으로 처리 가능한 디바이스와 중복 처리가 불가능한 디바이스는 구별되게 표시할 수 있다. 예를 들면, 중복 처리가 불가능한 디바이스는 음영 처리하여 제공할 수 있다. 이를 위해 프로세서(120)는 아래와 같은 동작을 수행할 수 있다.
예를 들면, 활동 영역의 반경에 우선 순위가 있는 경우, 프로세서(120)는 활동 영역의 반경이 큰 순서대로 우선 순위를 높게 설정하고, 우선 순위가 높은 활동 영역 내 아이콘을 유지하고, 우선 순위가 낮은 활동 영역 내 아이콘을 삭제할 수 있다. 운동 종류에 우선 순위가 있는 경우, 프로세서(120)는 우선 순위가 높은 운동 종류를 기준으로 활동 영역 내 아이콘을 유지하고, 우선 순위가 낮은 운동 종류의 활동 영역 내 아이콘을 삭제할 수 있다. 또는, 디바이스에 우선 순위가 있는 경우, 프로세서(120)는 우선 순위가 높은 디바이스에서 추출된 활동 정보를 기준으로 활동 영역 내 아이콘을 유지하고, 우선 순위가 낮은 디바이스에서 추출된 활동 영역의 활동 영역 내 아이콘을 삭제할 수 있다.
동작(1215)에서, 전자 장치(101)(예: 프로세서(120))는 활동 정보에 대한 사용자 인터페이스를 표시할 수 있다. 프로세서(120)는 동작(2005) 및 동작(2007)에서 동작(1215)을 수행하는 경우, 활동 정보와 연관된 활동 영역 내 아이콘 보정없이 활동 정보에 대한 사용자 인터페이스를 표시할 수 있다. 프로세서(120)는 동작(2013)을 수행하고 동작(1215)을 수행하는 경우, 아이콘 보정된 활동 정보에 대한 사용자 인터페이스를 표시할 수 있다. 예를 들면, 프로세서(120)는 상기 활동 정보에 대한 사용자 인터페이스로서 도 16의 사용자 인터페이스(예: 1610, 1620)를 표시할 수 있다.
도 21은 다양한 실시예들에 따른 활동 영역을 산출하는 일례를 도시한 도면이다.
도 21를 참조하면, 프로세서(120)는 위치 정보에 기반하여 활동 영역을 산출할 수 있다. 프로세서(120)는 활동 정보에 대한 위치 정보가 복수 개 존재하는 경우(예: 2111, 2112, 2113, 2114), 가장 끝점 2개(예: 1211, 2114)를 이용하여 중점을 계산할 수 있다. 프로세서(120)는 계산된 중점을 이용하여 활동 영역(2110)을 산출할 수 있다. 또한, 프로세서(120)는 활동 정보에 대한 위치 정보가 1개인 경우(예: 2121), 위치 정보를 중심으로 일정 반경을 가지는 활동 영역(2120)을 산출할 수 있다. 또한, 프로세서(120)는 위치 정보가 2개 존재하는 경우, 2개의 위치 정보(예: 2132, 2132)를 이용하여 중점을 계산할 수 있다. 프로세서(120)는 계산된 중점을 이용하여 활동 영역(2130)을 산출할 수 있다.
도 22 내지 도 24는 다양한 실시예들에 따른 임계치에 기반하여 활동 영역 내 아이콘을 보정하는 일례를 도시한 도면들이다.
도 22는 임계치(threshold)가 작은 경우 활동 영역 내 아이콘을 보정하는 일례를 도시한 것이다.
도 22를 참조하면, (a)는 중첩된 아이콘을 보정하기 전의 활동 정보에 대한 활동 영역(예: 2211, 2213)을 표기한 것이다. (a)를 참조하면, 제1 활동 영역(2211)에는 제1 아이콘(2212)이 표시되고, 제2 활동 영역(2213)에는 제2 아이콘(2214)이 표시될 수 있다. 프로세서(120)는 (a)와 같은 활동 영역에 대해 중첩 비율을 다르게 적용하여 아이콘 중첩 처리 프로세스를 수행할 수 있다. (b)는 중첩 비율을 낮게(예: low)하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. (c)는 중첩 비율을 중간(예: medium) 비율로 하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. (d)는 중첩 비율을 높게(예: high)하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. (b) 내지 (d)를 참조하면, 제1 활동 영역(2211)에 포함된 제1 아이콘(2212)은 표시되고, 제2 활동 영역(2213)에는 표시된 제2 아이콘(2214)은 삭제된 것을 알 수 있다. 즉, 임계치가 작은 경우, 중첩 비율을 다르게 설정하더라도 제2 활동 영역(2213)에는 표시된 제2 아이콘(2214)은 삭제 처리된 것을 알 수 있다.
도 23은 임계치가 작은 경우 활동 영역 내 아이콘을 보정하는 다른 일례를 도시한 것이다.
도 23을 참조하면, (a)는 중첩된 아이콘을 보정하기 전의 활동 정보에 대한 활동 영역을 표기한 것이다. (a)를 참조하면, 제1 활동 영역(2311)에는 제1 아이콘(2312)이 표시되고, 제2 활동 영역(2313)에는 제2 아이콘(2314)이 표시될 수 있다. 제3 활동 영역(2315) 및 제4 활동 영역(2316)에도 각각 아이콘이 표시될 수 있다. 프로세서(120)는 (a)와 같은 활동 영역에 대해 중첩 비율을 다르게 적용하여 아이콘 중첩 처리 프로세스를 수행할 수 있다. (b)는 중첩 비율을 낮게(예: low)하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. 중첩 비율을 낮게 설정하면, (b)는 (a)와 같이 제1 활동 영역(2311)에는 제1 아이콘(2312)이 표시되고, 제2 활동 영역(2313)에는 제2 아이콘(2314)이 표시될 수 있다. 제3 활동 영역(2315) 및 제4 활동 영역(2316)에도 각각 아이콘이 표시될 수 있다.
(c)는 중첩 비율을 중간(예: medium) 비율로 하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. (d)는 중첩 비율을 높게(예: high)하여 아이콘 중첩 처리 프로세스를 수행한 일례이다. (c) 내지 (d)를 참조하면, 제1 활동 영역(2311)에 표시된 제1 아이콘(2312)은 삭제 처리되고, 제2 활동 영역(2313)에는 제2 아이콘(2314)이 표시되며, 제3 활동 영역(2315) 및 제4 활동 영역(2316)에도 각각 아이콘이 표시될 수 있다.
따라서, 임계치가 작은 경우 아이콘 중첩 처리 프로세스를 수행하더라도 아이콘이 삭제되지 않을 수 있다.
도 24는 임계치가 높은 경우 활동 영역 내 아이콘을 보정하는 일례를 도시한 것이다.
도 24를 참조하면, (a)는 중첩된 아이콘을 보정하기 전의 활동 정보에 대한 활동 영역을 표기한 것이다. (a)를 참조하면, 제1 활동 영역(2411)에는 제1 아이콘(2412)이 표시되고, 제2 활동 영역(2413)에는 제2 아이콘(2414)이 표시될 수 있다. 프로세서(120)는 임계치를 높게하여 아이콘 중첩 처리 프로세스를 수행할 수 있다. (b)를 참조하면, 제1 활동 영역(2411)에는 제1 아이콘(2412)이 표시되고, 제2 활동 영역(2413)에 표시된 제2 아이콘(2414)은 삭제 처리될 수 있다.
따라서, 임계치가 큰 경우 아이콘 중첩 처리 프로세스를 수행하면, 삭제되지 않아야 할 아이콘이 삭제될 수도 있다.
다양한 실시예들에 따르면, 프로세서(120)는 아이콘 중첩 처리 프로세스 수행 시, 아이콘의 중요도(예: 운동 종류의 우선 순위), 활동 정보에 대한 물리량 등에 가중치를 두어, 중요한 아이콘은 유지하고, 중요하지 않은 아이콘은 삭제할 수 있다.
도 25 및 도 26은 다양한 실시예들에 따른 중첩된 아이콘을 처리하는 일례를 도시한 도면들이다.
도 25는 greedy set cover를 이용하여 중첩된 아이콘을 처리하는 일례를 도시한 것이다. greedy set cover(Chvatal, V.: A Greedy Heuristic for the Set-Covering Problem. Math. of Oper. Res., Vol. 4, 1979, No. 3, pp. 233?235)는 중첩된 아이콘을 처리하는 방법 중 하나일 수 있다.
도 25를 참조하면, 프로세서(120)는 (a)와 같이, 제1 활동 영역(2510), 제2 활동 영역(2520), 제3 활동 영역(2530), 제4 활동 영역(2540), 제5 활동 영역(2540)에 각각의 아이콘을 표시할 수 있다. 예를 들면, 프로세서(120)는 아이콘에 우선 순위가 없는 경우 (a)와 같이, 시간 순서대로 각 활동 영역을 표시할 수 있다. 각 활동 영역에 대한 아이콘은 순서대로 1, 2, 3, 4, 5라고 정할 수 있다. 초기 set{}은 빈 상태이고, 순서대로, {1}, {1, 2}가 되는데, 아이콘 1, 2는 중첩 조건을 만족할 수 있다.
중첩 조건은 상기에서 설명한 동작(2111)에서 설명한 것으로, 프로세서(120)는 아이콘 1, 2가 포함된 제1 활동 영역(2510), 제2 활동 영역(2520) 간의 중점 거리가 기준 거리보다 작은 경우, 중첩 조건에 만족하는 것으로 판단할 수 있다. 프로세서(120)는 아이콘 1, 2가 중첩 조건에 만족하므로, 아이콘 2를 삭제 처리할 수 있다. 즉, 프로세서(120)는 (b)와 같이 제2 활동 영역(2520)에 포함된 아이콘을 삭제할 수 있다.
이어서, 프로세서(120)는 아이콘 2가 삭제되었으므로, {1}인 상태에서, 아이콘 3을 추가하면, set {1, 3}이 구성되고, 아이콘 1, 3 간의 겹침 조건을 판단할 수 있다. 아이콘 1, 3 간에는 겹침 조건이 만족하지 않으므로, 프로세서(120)는 연속해서 아이콘 4를 추가하여, set {1, 3, 4}를 구성할 수 있다. 인접한 두 개의 활동 영역인 제3 활동 영역(2530)과 제4 활동 영역(2540)에 포함된 아이콘 3, 4는 겹침 조건을 만족할 수 있다. 이 경우, 프로세서(120)는 (c)와 같이 제4 활동 영역(2540)에 포함된 아이콘을 삭제할 수 있다. 프로세서(120)는 아이콘 4가 삭제되었으므로, set {1, 3}인 상태에서, 아이콘 5를 추가하면, set {1, 3, 5}으로 구성되고, 아이콘 3, 5 간의 겹침 조건을 판단할 수 있다. 아이콘 3, 5는 겹침 조건을 만족하지 않으므로, 프로세서(120)는 아이콘 중첩 처리 프로세스를 종료할 수 있다.
아이콘 종료 처리 프로세스를 완료한 (c)는 제1 활동 영역(2510), 제3 활동 영역(2530) 및 제5 활동 영역(2550)에 대한 아이콘만 유지하고, 제2 활동 영역(2520) 및 제4 활동 영역(2540)에 대한 아이콘은 삭제될 수 있다. 프로세서(120)는 동작(1215)에서 (c)와 같은 활동 정보를 포함하는 사용자 인터페이스를 표시할 수 있다.
다양한 실시예들에 따른 프로세서(120)는 우선 순위를 활동 영역의 반경, 운동 종류, 디바이스 중 적어도 하나에 우선 순위를 지정할 수 있다.
도 26은 운동 종류에 우선 순위를 두어 중첩된 아이콘을 처리하는 일례를 도시한 것이다.
도 26을 참조하면, 프로세서(120)는 (a)와 같이, 제1 활동 영역(2611), 제2 활동 영역(2612), 제3 활동 영역(2613), 제4 활동 영역(2614)에 각각의 아이콘을 표시할 수 있다. 예를 들면, 제1 활동 영역(2611)과 제4 활동 영역(2614)은 운동 종류가 '사이클링'인 경우의 활동 정보에 해당하고, 제2 활동 영역(2612)과 제3 활동 영역(2613)은 운동 종류가 '걷기'인 경우의 활동 정보에 해당할 수 있다.
프로세서(120)는 우선 순위가 높은 순서대로 set을 구성하여 greedy set cover를 적용할 수 있다. 예를 들면, 각 활동 영역에 대한 아이콘은 순서대로 1, 2, 3, 4라고 정할 수 있다. 초기 set{}은 빈 상태이고, 우선 순위가 높은 순서대로, {1}, {1, 4}가 되는데, 아이콘 1, 4는 중첩 조건에 만족하지 않을 수 있다. 즉, 프 로세서(120)는 제1 활동 영역(2611)과 제4 활동 영역(2614)의 아이콘이 중첩되지 않으므로, 프로세서(120)는 연속해서 아이콘 2를 추가하여, set {1, 4, 2}를 구성할 수 있다. 인접한 두 개의 활동 영역인 제4 활동 영역(2614)과 제2 활동 영역(2612)에 포함된 아이콘 4, 2는 겹침 조건을 만족할 수 있다. 이 경우, 프로세서(120)는 (b)와 같이 제2 활동 영역(2612)에 포함된 아이콘을 삭제할 수 있다. 아이콘 4를 삭제하지 않고, 아이콘 2를 삭제하는 것은 우선 순위게 기반한 것이다.
프로세서(120)는 아이콘 2가 삭제되었으므로, set {1, 4}인 상태에서, 아이콘 3을 추가하면, set {1, 4, 3}으로 구성되고, 아이콘 4, 3 간의 겹침 조건을 판단할 수 있다. 아이콘 4, 3은 겹침 조건을 만족하므로, 프로세서(120)는 (c)와 같이 제3 활동 영역(2613)에 포함된 아이콘을 삭제할 수 있다. 아이콘 4를 삭제하지 않고, 아이콘 3을 삭제하는 것은 우선 순위게 기반한 것이다. 이렇게 수행한 후, set에 포함시킬 활동 영역이 더 이상 존재하지 않으므로, 프로세서(120)는 아이콘 중첩 처리 프로세스를 종료할 수 있다. 아이콘 종료 처리 프로세스를 완료한 (c)는 제1 활동 영역(2611) 및 제4 활동 영역(2614)에 대한 아이콘만 유지하고, 제2 활동 영역(2612) 및 제3 활동 영역(2613)에 대한 아이콘은 삭제될 수 있다.
이러한 방식으로, 프로세서(120)는 greedy set cover와 임계치를 이용하여 아이콘 중첩 처리 프로세스를 수행하여, 사용자에게 아이콘이 중첩되지 않은 활동 영역을 제공할 수 있다.
다양한 실시예들에 따른 전자 장치의 동작 방법은 건강과 연관된 데이터를 획득하는 동작, 상기 획득한 데이터를 단위 시간으로 보정하는 동작, 상기 보정된 데이터를 분석하여 활동 정보를 추출하는 동작, 및 사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 표시하는 동작을 포함할 수 있다.
상기 보정하는 동작은, 상기 전자 장치의 데이터 저장을 위한 시간 단위에 기반하여 상기 획득한 데이터를 보정하는 동작을 포함할 수 있다.
상기 추출하는 동작은, 외부 장치로부터 획득한 데이터와 상기 전자 장치의 센서 모듈을 이용하여 획득한 데이터를 분석하여 활동 타입 별로 데이터를 분류하는 동작, 및 활동 타입별로 데이터를 통합하는 동작을 포함할 수 있다.
상기 통합하는 동작은, 시간, 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나의 우선 순위를 기준으로 데이터를 통합하는 동작을 포함할 수 있다.
상기 동작 방법은 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나에 각각 다른 가중치를 부여하는 동작; 및 상기 가중치에 기반하여 상기 통합된 데이터를 보정하는 동작을 더 동작을 포함할 수 있다.
상기 동작 방법은 각 디바이스별 걸음수를 단위 시간으로 구분하는 동작, 상기 단위 시간별로 최대 걸음수를 결정하는 동작, 및 상기 결정된 최대 걸음수에 기반하여 통합 걸음수를 산출하는 동작을 더 포함할 수 있다.
상기 동작 방법은 데이터 분석 결과에 기반하여 운동 종류를 결정하는 동작, 상기 운동 종류의 시작과 종료를 판단하는 동작, 및 우선 순위에 기반하여 운동 종류별 활동 정보를 통합하는 동작을 더 포함할 수 있다.
상기 동작 방법은 시간별 비 활동 구간을 정렬하는 동작, 및 활동 정보가 포함되어 있지 않은 비 활동 구간들을 하나의 세션으로 통합하여 통합된 세션을 비 활동 정보로 처리하는 동작을 더 포함할 수 있다.
상기 표시하는 동작은, 상기 활동 정보에 대한 위치 정보를 추출하는 동작, 상기 추출된 위치 정보에 기반하여 활동 정보에 대한 활동 영역을 산출하는 동작, 인접한 두 개의 활동 영역 간의 거리를 산출하는 동작, 상기 산출된 거리에 기반하여 활동 영역 내 아이콘을 보정하는 동작, 및 상기 보정된 아이콘을 포함하는 사용자 인터페이스를 표시하는 동작을 포함할 수 있다.
상기 아이콘을 보정하는 동작은, 상기 산출된 거리가 기준 거리 미만인 경우, 아이콘 중첩 조건에 만족하는 것으로 판단하는 동작, 및 상기 인접한 두 개의 활동 영역 내 포함된 아이콘 중 적어도 하나를 삭제 처리하는 동작을 포함할 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예:메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다.
컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체 (예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
그리고 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
410: 전자 장치 411: 웹 API 매니저
412: 웨어러블 매니저 413: 데이터 분석부
414: 데이터 통합부 415: 건강 DB
420: 웨어러블 디바이스 1 421: 걸음수 카운트부
422: 활동 측정부 430: 웨어러블 디바이스 2
440: 웨어러블 디바이스 3 450: 웨어러블 디바이스 4
460: 클라우드

Claims (25)

  1. 전자 장치에 있어서,
    하우징;
    상기 하우징의 일부를 통하여 노출된 디스플레이;
    상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 제1 모션 센서;
    상기 하우징 내에 배치된 무선 통신 회로;
    상기 하우징 내에 배치되고, 상기 디스플레이, 상기 제1 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서; 및
    상기 프로세서와 전기적으로 연결된 메모리를 포함하고,
    상기 메모리는, 실행시에, 상기 프로세서가,
    상기 무선 통신 회로를 이용하여, 제2 모션 센서를 포함하는 외부 전자 장치와 무선 통신 채널을 생성하고,
    상기 제1 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기동안 제1 데이터를 생성하고,
    상기 제2 모션 센서를 이용하여, 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 채널을 통하여 수신하고,
    상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고,
    상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 인스트럭션들을 저장하는 것을 특징으로 하는 장치.
  2. 제1항에 있어서, 상기 인스트럭션들은, 상기 프로세서가,
    상기 전자 장치 및 상기 외부 전자 장치가 한 사용자에 의하여 착용되거나 운반될 때, 상기 제1 시간 주기 이후에 상기 산출된 값을 상기 사용자 인터페이스에 표시하도록 하는 것을 특징으로 하는 장치.
  3. 전자 장치에 있어서,
    하우징;
    상기 하우징의 일부를 통하여 노출된 디스플레이;
    상기 하우징 내부에 배치되고, 상기 하우징의 움직임을 감지하도록 구성된 모션 센서;
    상기 하우징 내에 배치된 무선 통신 회로;
    상기 하우징 내에 배치되고, 상기 디스플레이, 상기 모션 센서, 및 상기 무선 통신 회로와 전기적으로 연결된 프로세서; 및
    상기 프로세서와 전기적으로 연결된 메모리를 포함하며,
    상기 메모리는, 실행시에, 상기 프로세서가,
    상기 모션 센서를 이용하여, 상기 하우징의 움직임을 모니터링하여, 제1 시간 주기 동안 제1 데이터를 생성하고,
    상기 제1 데이터 중 제1 부분을 이용하여 상기 제1 시간 주기 중 제1 세션 동안의 상기 움직임의 제1 속성을 결정하고,
    상기 제1 데이터 중 제2 부분을 이용하여 상기 제1 시간 주기 중 제2 세션 동안의 상기 움직임의 제2 속성을 결정하고,
    상기 제1 속성 또는 제2 속성 중 하나를 선택하고,
    상기 선택된 속성을 나타내는 이미지, 텍스트, 또는 심볼 중 적어도 하나를 상기 디스플레이에 표시된 사용자 인터페이스 상에 표시하도록 하는 인스트럭션들을 저장하는 것을 특징으로 하는 장치.
  4. 제3항에 있어서, 상기 인스트럭션들은 상기 프로세서가,
    상기 하우징이 상기 제1 시간 주기 동안 위치했었던 장소들과 연관된 지도를 상기 사용자 인터페이스 상에 표시하고,
    상기 이미지, 텍스트, 또는 심볼 중 적어도 하나를 상기 지도에 중첩되도록 표시하도록 하는 것을 특징으로 하는 장치.
  5. 제3항에 있어서, 상기 인스트럭션들은 상기 프로세서가,
    모션 센서를 포함하는 외부 전자 장치로부터 상기 제1 시간 주기 동안 획득된 제2 데이터를 상기 무선 통신 회로를 통하여 수신하고,
    상기 제1 데이터에 기초한 제1 값 및 상기 제2 데이터에 기초한 제2 값의 합보다 작은 값을 상기 제1 시간 주기 동안의 값으로서 산출하고,
    상기 산출된 값을 상기 디스플레이 상에 표시된 사용자 인터페이스에 표시하도록 하는 것을 특징으로 하는 장치.
  6. 메모리;
    디스플레이;
    통신 인터페이스; 및
    상기 메모리, 상기 디스플레이, 또는 상기 통신 인터페이스와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는,
    외부 장치로부터 수집된 건강과 연관된 데이터를 상기 통신 인터페이스를 통해 획득하고, 획득한 데이터를 단위 시간으로 보정하고, 보정된 데이터를 분석하여 활동 정보를 추출하고, 추출된 활동 정보를 상기 메모리에 저장하고, 사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 상기 디스플레이에 표시하도록 설정된 전자 장치.
  7. 제6항에 있어서, 상기 프로세서는,
    상기 전자 장치의 데이터 저장을 위한 시간 단위에 기반하여 상기 획득한 데이터를 보정하도록 설정된 전자 장치.
  8. 제6항에 있어서, 상기 프로세서는,
    상기 외부 장치로부터 획득한 데이터와 상기 전자 장치의 센서 모듈을 이용하여 획득한 데이터를 분석하여 활동 타입 별로 데이터를 분류하고, 활동 타입별로 데이터를 통합하도록 설정된 전자 장치.
  9. 제8항에 있어서, 상기 프로세서는,
    시간, 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나의 우선 순위를 기준으로 데이터를 통합하도록 설정된 전자 장치.
  10. 제8항에 있어서, 상기 프로세서는,
    활동 타입, 운동 종류, 및 디바이스 중 적어도 하나에 각각 다른 가중치를 부여하고, 상기 가중치에 기반하여 상기 통합된 데이터를 보정하도록 설정된 전자 장치.
  11. 제6항에 있어서, 상기 프로세서는,
    각 디바이스별 걸음수를 단위 시간으로 구분하고, 단위 시간별로 최대 걸음수를 결정하고, 결정된 최대 걸음수에 기반하여 통합 걸음수를 산출하여 걸음수에 대한 데이터를 통합하도록 설정된 전자 장치.
  12. 제6항에 있어서, 상기 프로세서는,
    데이터 분석 결과에 기반하여 운동 종류를 결정하고, 운동 종류의 시작과 종료를 판단하고, 우선 순위에 기반하여 운동 종류별 활동 정보를 통합하도록 설정된 전자 장치.
  13. 제6항에 있어서, 상기 프로세서는,
    시간별 비 활동 구간을 정렬하고, 활동 정보가 포함되어 있지 않은 비 활동 구간들을 하나의 세션으로 통합하여 통합된 세션을 비 활동 정보로 처리하도록 설정된 전자 장치.
  14. 제6항에 있어서, 상기 프로세서는,
    상기 활동 정보에 대한 위치 정보를 추출하고, 추출된 위치 정보에 기반하여 활동 정보에 대한 활동 영역을 산출하고, 인접한 두 개의 활동 영역 간의 거리를 산출하고, 상기 산출된 거리에 기반하여 활동 영역 내 아이콘을 보정하도록 설정된 전자 장치.
  15. 제14항에 있어서, 상기 프로세서는,
    상기 산출된 거리가 기준 거리 미만인 경우, 아이콘 중첩 조건에 만족하는 것으로 판단하고, 상기 인접한 두 개의 활동 영역 내 포함된 아이콘 중 적어도 하나를 결정하도록 설정된 전자 장치.
  16. 전자 장치의 동작 방법에 있어서,
    건강과 연관된 데이터를 획득하는 동작;
    상기 획득한 데이터를 단위 시간으로 보정하는 동작;
    상기 보정된 데이터를 분석하여 활동 정보를 추출하는 동작; 및
    사용자의 요청에 응답하여 상기 활동 정보를 포함하는 사용자 인터페이스를 표시하는 동작을 포함하는 방법.
  17. 제16항에 있어서, 상기 보정하는 동작은,
    상기 전자 장치의 데이터 저장을 위한 시간 단위에 기반하여 상기 획득한 데이터를 보정하는 동작을 포함하는 방법.
  18. 제16항에 있어서, 상기 추출하는 동작은,
    외부 장치로부터 획득한 데이터와 상기 전자 장치의 센서 모듈을 이용하여 획득한 데이터를 분석하여 활동 타입 별로 데이터를 분류하는 동작; 및
    활동 타입별로 데이터를 통합하는 동작을 포함하는 방법.
  19. 제18항에 있어서, 상기 통합하는 동작은,
    시간, 활동 타입, 운동 종류, 및 디바이스 중 적어도 하나의 우선 순위를 기준으로 데이터를 통합하는 동작을 포함하는 방법.
  20. 제18항에 있어서,
    활동 타입, 운동 종류, 및 디바이스 중 적어도 하나에 각각 다른 가중치를 부여하는 동작; 및
    상기 가중치에 기반하여 상기 통합된 데이터를 보정하는 동작을 더 포함하는 방법.
  21. 제16항에 있어서,
    각 디바이스별 걸음수를 단위 시간으로 구분하는 동작;
    상기 단위 시간별로 최대 걸음수를 결정하는 동작; 및
    상기 결정된 최대 걸음수에 기반하여 통합 걸음수를 산출하는 동작을 더 포함하는 방법.
  22. 제16항에 있어서,
    데이터 분석 결과에 기반하여 운동 종류를 결정하는 동작;
    상기 운동 종류의 시작과 종료를 판단하는 동작; 및
    우선 순위에 기반하여 운동 종류별 활동 정보를 통합하는 동작을 더 포함하는 방법.
  23. 제16항에 있어서,
    시간별 비 활동 구간을 정렬하는 동작; 및
    활동 정보가 포함되어 있지 않은 비 활동 구간들을 하나의 세션으로 통합하여 통합된 세션을 비 활동 정보로 처리하는 동작을 더 포함하는 방법.
  24. 제16항에 있어서, 상기 표시하는 동작은,
    상기 활동 정보에 대한 위치 정보를 추출하는 동작;
    상기 추출된 위치 정보에 기반하여 활동 정보에 대한 활동 영역을 산출하는 동작;
    인접한 두 개의 활동 영역 간의 거리를 산출하는 동작;
    상기 산출된 거리에 기반하여 활동 영역 내 아이콘을 보정하는 동작; 및
    상기 보정된 아이콘을 포함하는 사용자 인터페이스를 표시하는 동작을 포함하는 방법.
  25. 제24항에 있어서, 상기 아이콘을 보정하는 동작은,
    상기 산출된 거리가 기준 거리 미만인 경우, 아이콘 중첩 조건에 만족하는 것으로 판단하는 동작; 및
    상기 인접한 두 개의 활동 영역 내 포함된 아이콘 중 적어도 하나를 결정하는 동작을 포함하는 방법.
KR1020160019535A 2016-02-19 2016-02-19 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치 KR102446811B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020160019535A KR102446811B1 (ko) 2016-02-19 2016-02-19 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치
EP17753502.8A EP3403166A4 (en) 2016-02-19 2017-02-17 METHOD FOR INTEGRATING AND PROVIDING COLLECTED DATA FROM MULTIPLE DEVICES AND ELECTRONIC DEVICE FOR ITS IMPLEMENTATION
PCT/KR2017/001752 WO2017142341A1 (en) 2016-02-19 2017-02-17 Method for integrating and providing collected data from multiple devices and electronic device for implementing same
MYPI2018702903A MY193558A (en) 2016-02-19 2017-02-17 Method for integrating and providing collected data from multiple devices and electronic device for implementing same
CN201780012097.XA CN108701495B (zh) 2016-02-19 2017-02-17 用于整合和提供从多个设备收集的数据的方法以及用于实现该方法的电子设备
US15/436,613 US10796803B2 (en) 2016-02-19 2017-02-17 Method for integrating and providing collected data from multiple devices and electronic device for implementing same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160019535A KR102446811B1 (ko) 2016-02-19 2016-02-19 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치

Publications (2)

Publication Number Publication Date
KR20170097888A true KR20170097888A (ko) 2017-08-29
KR102446811B1 KR102446811B1 (ko) 2022-09-23

Family

ID=59626132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160019535A KR102446811B1 (ko) 2016-02-19 2016-02-19 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치

Country Status (6)

Country Link
US (1) US10796803B2 (ko)
EP (1) EP3403166A4 (ko)
KR (1) KR102446811B1 (ko)
CN (1) CN108701495B (ko)
MY (1) MY193558A (ko)
WO (1) WO2017142341A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023018185A1 (ko) * 2021-08-10 2023-02-16 삼성전자 주식회사 측정한 데이터를 표시하는 전자 장치 및 이를 위한 방법

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126321B2 (en) 2007-09-04 2021-09-21 Apple Inc. Application menu user interface
US9459781B2 (en) 2012-05-09 2016-10-04 Apple Inc. Context-specific user interfaces for displaying animated sequences
US9026928B2 (en) * 2012-06-06 2015-05-05 Apple Inc. Graphical user interface layout
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
US10313506B2 (en) 2014-05-30 2019-06-04 Apple Inc. Wellness aggregator
EP3584671B1 (en) 2014-06-27 2022-04-27 Apple Inc. Manipulation of calendar application in device with touch screen
EP3195098A2 (en) 2014-07-21 2017-07-26 Apple Inc. Remote user interface
CN115665320A (zh) 2014-09-02 2023-01-31 苹果公司 电话用户界面
US10066959B2 (en) 2014-09-02 2018-09-04 Apple Inc. User interactions for a mapping application
AU2015312215B2 (en) 2014-09-02 2017-10-19 Apple Inc. Physical activity and workout monitor
CN107921317B (zh) 2015-08-20 2021-07-06 苹果公司 基于运动的表盘和复杂功能块
AU2017100667A4 (en) * 2016-06-11 2017-07-06 Apple Inc. Activity and workout updates
US11216119B2 (en) 2016-06-12 2022-01-04 Apple Inc. Displaying a predetermined view of an application
US10873786B2 (en) 2016-06-12 2020-12-22 Apple Inc. Recording and broadcasting application visual output
US10736543B2 (en) 2016-09-22 2020-08-11 Apple Inc. Workout monitor interface
US10845955B2 (en) * 2017-05-15 2020-11-24 Apple Inc. Displaying a scrollable list of affordances associated with physical activities
US20190130707A1 (en) * 2017-10-31 2019-05-02 Ecolink Intelligent Technology, Inc. Event notification using an intelligent digital assistant
KR102506666B1 (ko) * 2018-02-19 2023-03-07 삼성전자주식회사 전자 레인지, 디스플레이 장치 및 이를 포함하는 조리 시스템
DK179980B1 (en) 2018-03-12 2019-11-27 Apple Inc. USER INTERFACES FOR HEALTH MONITORING
DK179992B1 (en) 2018-05-07 2020-01-14 Apple Inc. DISPLAY OF USER INTERFACES ASSOCIATED WITH PHYSICAL ACTIVITIES
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
US11317833B2 (en) 2018-05-07 2022-05-03 Apple Inc. Displaying user interfaces associated with physical activities
CN109036538A (zh) * 2018-07-24 2018-12-18 上海常仁信息科技有限公司 一种基于机器人的血压检测系统
CN109213030A (zh) * 2018-08-09 2019-01-15 北京云迹科技有限公司 用于机器人的工控机集成装置
CN109256201A (zh) * 2018-08-28 2019-01-22 上海联影医疗科技有限公司 扫描监控方法、装置、计算机设备和存储介质
CN109405232B (zh) * 2018-09-04 2019-08-30 重庆工业职业技术学院 基于红外温度感测及人体动态的空调自动调节方法
US10953307B2 (en) 2018-09-28 2021-03-23 Apple Inc. Swim tracking and notifications for wearable devices
JP6888605B2 (ja) * 2018-12-19 2021-06-16 カシオ計算機株式会社 トレーニング判別装置、トレーニング判別方法及びトレーニング判別プログラム
CN111382765B (zh) * 2018-12-29 2023-07-04 中国移动通信集团四川有限公司 投诉热点区域聚类方法、装置、设备、介质
CN109725280B (zh) * 2019-01-17 2021-05-18 乐清市启程电气有限公司 电度表现场参数提取平台
US11586158B1 (en) 2019-03-05 2023-02-21 Etellimetrix, LLC Wireless sensor system and related methods
CN110263230B (zh) * 2019-04-25 2021-04-06 北京科技大学 一种基于密度聚类的数据清洗方法及装置
DK201970532A1 (en) 2019-05-06 2021-05-03 Apple Inc Activity trends and workouts
US11863700B2 (en) 2019-05-06 2024-01-02 Apple Inc. Providing user interfaces based on use contexts and managing playback of media
JP7297940B2 (ja) 2019-06-01 2023-06-26 アップル インコーポレイテッド マルチモードの活動追跡ユーザインタフェース
CN110686699A (zh) * 2019-08-19 2020-01-14 苏宁智能终端有限公司 计步方法及装置
US11639944B2 (en) * 2019-08-26 2023-05-02 Apple Inc. Methods and apparatus for detecting individual health related events
DK202070616A1 (en) 2020-02-14 2022-01-14 Apple Inc User interfaces for workout content
CN113555132A (zh) * 2020-04-24 2021-10-26 华为技术有限公司 多源数据处理方法、电子设备和计算机可读存储介质
EP4323992A1 (en) 2021-05-15 2024-02-21 Apple Inc. User interfaces for group workouts
US20230061616A1 (en) * 2021-09-02 2023-03-02 Safety Shield Products, LLC System and method for sharing health data
US11896871B2 (en) 2022-06-05 2024-02-13 Apple Inc. User interfaces for physical activity information
CN115101169B (zh) * 2022-07-29 2023-03-21 北京欧应科技有限公司 用于实现训练动作的方法、设备和介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130045382A (ko) * 2010-08-09 2013-05-03 나이키 인터내셔널 엘티디. 모바일 장치를 이용한 피트니스 모니터링
WO2014207294A1 (en) * 2013-09-13 2014-12-31 Polar Electro Oy System for monitoring physical activity
US20150042468A1 (en) * 2013-08-07 2015-02-12 Nike, Inc. Activity recognition with activity reminders
US20150100245A1 (en) * 2013-10-09 2015-04-09 LEDO Network, Inc. Systems, methods, applications for smart sensing, motion activity monitoring, and motion activity pattern recognition
KR101584458B1 (ko) * 2014-12-05 2016-01-14 경희대학교 산학협력단 혼합 센서 데이터 기반 실시간 행위인지 및 자세인지 장치 및 그 방법

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6013007A (en) * 1998-03-26 2000-01-11 Liquid Spark, Llc Athlete's GPS-based performance monitor
US6997852B2 (en) * 1999-07-08 2006-02-14 Icon Ip, Inc. Methods and systems for controlling an exercise apparatus using a portable remote device
US20020151810A1 (en) * 2001-04-16 2002-10-17 Acumen, Inc. Wrist-based fitness monitoring devices
US20040046692A1 (en) 2002-09-05 2004-03-11 Robson Jack D. Physical training system
US7489979B2 (en) * 2005-01-27 2009-02-10 Outland Research, Llc System, method and computer program product for rejecting or deferring the playing of a media file retrieved by an automated process
US8740751B2 (en) * 2005-07-25 2014-06-03 Nike, Inc. Interfaces and systems for displaying athletic performance information on electronic devices
US7698061B2 (en) * 2005-09-23 2010-04-13 Scenera Technologies, Llc System and method for selecting and presenting a route to a user
US7827000B2 (en) * 2006-03-03 2010-11-02 Garmin Switzerland Gmbh Method and apparatus for estimating a motion parameter
CA2724446C (en) * 2008-05-14 2017-04-04 Espenusa Holding, Llc Physical activity monitor and data collection unit
US9297709B2 (en) * 2013-03-15 2016-03-29 Nike, Inc. System and method for analyzing athletic activity
CN102143695A (zh) * 2008-06-13 2011-08-03 耐克国际有限公司 具有传感器系统的鞋
US9409052B2 (en) * 2008-10-03 2016-08-09 Adidas Ag Program products, methods, and systems for providing location-aware fitness monitoring services
CN101579238B (zh) * 2009-06-15 2012-12-19 吴健康 人体运动捕获三维再现系统及其方法
KR20110074024A (ko) * 2009-12-24 2011-06-30 삼성전자주식회사 멀티미디어 기기
US8615377B1 (en) * 2010-09-30 2013-12-24 Fitbit, Inc. Methods and systems for processing social interactive data and sharing of tracked activity associated with locations
US10216893B2 (en) 2010-09-30 2019-02-26 Fitbit, Inc. Multimode sensor devices
US8775120B2 (en) * 2010-09-30 2014-07-08 Fitbit, Inc. Method of data synthesis
US8762101B2 (en) 2010-09-30 2014-06-24 Fitbit, Inc. Methods and systems for identification of event data having combined activity and location information of portable monitoring devices
JP5103546B1 (ja) 2011-07-11 2012-12-19 株式会社エヌ・ティ・ティ・ドコモ 移動端末及び連続移動検知方法
CN104508669B (zh) * 2012-06-04 2019-10-01 耐克创新有限合伙公司 一种综合健身-竞技分数的系统和方法
US9500464B2 (en) * 2013-03-12 2016-11-22 Adidas Ag Methods of determining performance information for individuals and sports objects
US9125015B2 (en) 2013-06-28 2015-09-01 Facebook, Inc. User activity tracking system and device
US9723381B2 (en) * 2013-12-23 2017-08-01 Nike, Inc. Athletic monitoring system having automatic pausing of media content
US9037199B1 (en) 2014-02-13 2015-05-19 Google Inc. Detecting transitions between physical activity
US10001386B2 (en) 2014-04-03 2018-06-19 Apple Inc. Automatic track selection for calibration of pedometer devices
US9672482B2 (en) * 2014-06-11 2017-06-06 Palo Alto Research Center Incorporated System and method for automatic objective reporting via wearable sensors
KR102113201B1 (ko) * 2015-02-27 2020-05-20 삼성전자주식회사 기능 실행 방법 및 이를 지원하는 전자 장치
KR102345610B1 (ko) * 2015-02-27 2021-12-30 삼성전자주식회사 스크린 미러링 서비스 제공장치 및 방법
KR102344045B1 (ko) * 2015-04-21 2021-12-28 삼성전자주식회사 화면을 표시하는 전자 장치 및 그 제어 방법
KR20170017407A (ko) * 2015-08-06 2017-02-15 삼성전자주식회사 전자 장치 및 전자 장치의 알림 제공 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130045382A (ko) * 2010-08-09 2013-05-03 나이키 인터내셔널 엘티디. 모바일 장치를 이용한 피트니스 모니터링
US20150042468A1 (en) * 2013-08-07 2015-02-12 Nike, Inc. Activity recognition with activity reminders
US20150044648A1 (en) * 2013-08-07 2015-02-12 Nike, Inc. Activity recognition with activity reminders
WO2014207294A1 (en) * 2013-09-13 2014-12-31 Polar Electro Oy System for monitoring physical activity
US20150100245A1 (en) * 2013-10-09 2015-04-09 LEDO Network, Inc. Systems, methods, applications for smart sensing, motion activity monitoring, and motion activity pattern recognition
KR101584458B1 (ko) * 2014-12-05 2016-01-14 경희대학교 산학협력단 혼합 센서 데이터 기반 실시간 행위인지 및 자세인지 장치 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023018185A1 (ko) * 2021-08-10 2023-02-16 삼성전자 주식회사 측정한 데이터를 표시하는 전자 장치 및 이를 위한 방법

Also Published As

Publication number Publication date
KR102446811B1 (ko) 2022-09-23
US20170239524A1 (en) 2017-08-24
MY193558A (en) 2022-10-19
EP3403166A4 (en) 2019-03-27
CN108701495B (zh) 2021-11-09
EP3403166A1 (en) 2018-11-21
US10796803B2 (en) 2020-10-06
CN108701495A (zh) 2018-10-23
WO2017142341A1 (en) 2017-08-24

Similar Documents

Publication Publication Date Title
KR102446811B1 (ko) 복수의 디바이스들로부터 수집된 데이터 통합 및 제공 방법 및 이를 구현한 전자 장치
KR102457768B1 (ko) 환경 정보에 기반한 전자 장치의 동작 방법 및 장치
CN110083730B (zh) 使用语音标签管理图像的方法和装置
US9886454B2 (en) Image processing, method and electronic device for generating a highlight content
KR20170136317A (ko) 전자 장치 및 그의 동작 방법
KR20170136920A (ko) 화면 출력 방법 및 이를 지원하는 전자 장치
EP3096113B1 (en) Sensor information using method and electronic device using the same
KR20170071960A (ko) 전자 장치의 사용자 인터페이스 제공 방법 및 장치
KR20170119934A (ko) 제스처 입력을 처리하기 위한 전자 장치 및 방법
KR20180067139A (ko) 위치 데이터를 제공하는 전자 장치 및 그 방법
KR20180094290A (ko) 전자 장치 및 전자 장치의 수중 촬영 판단 방법
KR20180014632A (ko) 전자 장치 및 그의 동작 방법
KR20180129188A (ko) 생체 정보를 측정하는 전자 장치와 이의 동작 방법
KR20180073188A (ko) 전자장치 및 이를 활용한 웹 페이지 표시 방법
KR20170054746A (ko) 컨텐츠와 연관된 영역 선택 방법 및 전자장치
KR20180131863A (ko) 스마트 워치에 대한 정보를 제공하는 전자 장치와 이의 동작 방법
KR20180013156A (ko) 전자 장치 및 이를 이용하여 유사한 어플리케이션을 검출하는 방법
KR20170101710A (ko) 전자파 흡수율을 관리하기 위한 전자 장치 및 방법
KR20170030347A (ko) 전자 장치 및 그의 카메라 노출 조정 방법
KR102434754B1 (ko) 전자 장치 및 전자 장치의 컨텐츠 표시 방법
KR20180083185A (ko) 적응적인 사용자 인터페이스를 제공하기 위한 장치 및 방법
KR20170096711A (ko) 전자 장치 및 전자 장치의 사진 클러스터링 방법
KR20170046496A (ko) 카메라를 갖는 전자 장치와 그의 이미지 처리 방법
US20170185750A1 (en) Electronic device and method for linking exercise schedule thereof
KR102369319B1 (ko) 전자 장치 및 전자 장치의 핸드오프 기능 제공 방법

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