KR20130033378A - 콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품 - Google Patents

콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품 Download PDF

Info

Publication number
KR20130033378A
KR20130033378A KR1020127032499A KR20127032499A KR20130033378A KR 20130033378 A KR20130033378 A KR 20130033378A KR 1020127032499 A KR1020127032499 A KR 1020127032499A KR 20127032499 A KR20127032499 A KR 20127032499A KR 20130033378 A KR20130033378 A KR 20130033378A
Authority
KR
South Korea
Prior art keywords
sensor data
physical
context
processor
context fusion
Prior art date
Application number
KR1020127032499A
Other languages
English (en)
Other versions
KR101437757B1 (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 노키아 코포레이션
Publication of KR20130033378A publication Critical patent/KR20130033378A/ko
Application granted granted Critical
Publication of KR101437757B1 publication Critical patent/KR101437757B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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/72451User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to schedules, e.g. using calendar applications
    • 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/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • 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/10Details of telephonic subscriber devices including a GPS signal receiver
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

콘텍스트 감지 및 융합을 제공하기 위한 방법은 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하고, 하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하고, 그리고 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 것을 포함할 수 있다. 또한 대응한 컴퓨터 프로그램제품 및 장치를 제공한다.

Description

콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품{METHOD AND APPARATUS FOR PROVIDING CONTEXT SENSING AND FUSION}
다양한 구현은 일반적으로 전자 통신 장치 기술에 관한 것으로, 특히 콘텍스트 감지 및 융합(context sensing and fusion)을 제공하기 위한 방법 및 장치에 관한 것이다.
현대 통신 시대는 유선 및 무선 네트워크의 엄청난 확장을 가져왔다. 컴퓨터 네트워크, 텔레비젼 네트워크 및 전화 네트워크는 소비자 요구에 힘입어 전례없는 기술적 확장을 겪고 있다. 무선 및 모바일 네트워킹 기술은 정보 전송의 더 많은 유연성 및 신속성을 제공하면서 관련된 소비자 요구를 다루어 왔다.
현재 및 장래 네트워킹 기술은 모바일 전자장치의 능력을 확장함으로써 계속해서 사용자에게 정보 전송의 가능성 및 편리성을 가능하게 해준다. 정보 전송이 더욱 더 가능하도록 요구하는 일 영역은 모바일 단말의 사용자에게 서비스를 전달하는 것과 관련있다. 서비스는 뮤직 플레이어, 게임 플레이어, 전자책, 단문 메시지, 이메일, 콘텐츠 공유(content sharing), 웹브라우징(web browsing)등과 같이 사용자가 원하는 특정한 미디어 또는 통신 애플리케이션의 형태일 수 있다. 또한 서비스는 사용자가 작업을 수행하거나 또는 목적을 달성하기 위하여 네트워크 장치에 응답할 수 있는 대화형 애플리케이션(interactive applications) 형태일 수 있다. 이 대신에, 네트워크 장치는 사용자에 의해 행해진 명령 또는 요청에 응답할 수 있다(예를 들면 콘텐츠 검색, 매핑 또는 라우팅(routing) 서비스 등). 서비스는 네트워크 서버 또는 다른 네트워크 장치, 또는 심지어 예를 들어 모바일 전화, 모바일 네비게이션 시스템, 모바일 컴퓨터, 모바일 텔레비젼, 모바일 게임 시스템 등과 같은 모바일 단말로부터 제공될 수 있다.
모바일 단말 사용자에게 다양한 서비스를 제공하는 능력은 종종 모바일 단말의 특정한 상황 또는 위치에 서비스를 맞춤화함으로써 향상될 수 있다. 따라서 다양한 센서를 모바일 단말에 병합하여 왔다. 각 센서는 전형적으로 위치, 속도, 방위 등과 같은 모바일 단말의 콘텍스트의 특정 양상에 관한 정보를 수집한다. 그 후, 다수의 센서로부터의 정보를 사용하여 사용자에게 제공되는 서비스에 영향을 줄 수 있는 장치 콘텍스트를 결정할 수 있다.
모바일 단말에 센서를 추가하는 유틸리티에도 불구하고, 일부 단점이 발생할 수 있다. 예를 들면 모든 센서로부터의 데이터를 융합하는 일은 모바일 단말의 자원을 소모시키는 일일 수 있다. 따라서 센서 통합을 향상시키는 것이 바람직할 수 있다.
따라서 콘텍스트 감지 및 융합을 제공할 수 있도록 하는 방법, 장치 및 컴퓨터 프로그램제품을 제공한다. 따라서 예를 들면 센서 데이터는 보다 효율적인 방식으로 함께 융합될 수 있다. 소정 예에서, 센서 통합은 물리적 및 가상 센서 데이터의 모두의 융합을 더 포함할 수 있다. 더욱이 소정 실시예에서, 융합은 운영체제 레벨(operating system level)에서 성취될 수 있다. 실시예에서, 융합은 사전처리된 물리적 센서 데이터를 보다 효율적으로 가상 센서 데이터와 융합시킬 수 있도록 물리적 센서 데이터의 사전처리 융합을 전담하는 코프로세서를 통해 성취될 수 있다.
일 실시예에서, 콘텍스트 감지 및 융합을 제공하는 방법을 제공한다. 방법은 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하는 단계, 하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하는 단계, 그리고 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계를 포함할 수 있다.
다른 실시예에서, 콘텍스트 감지 및 융합을 제공하기 위한 컴퓨터 프로그램제품을 제공한다. 컴퓨터 프로그램제품은 저장된 컴퓨터 실행가능 프로그램 코드 인스트럭션을 가진 적어도 하나의 컴퓨터 판독가능 저장매체를 포함한다. 컴퓨터 실행가능 프로그램 코드 인스트럭션은 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션, 하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션, 그리고 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하기 위한 프로그램 코드 인스트럭션을 포함할 수 있다.
또 다른 실시예에서, 콘텍스트 감지 및 융합을 제공하기 위한 장치를 제공한다. 장치는 적어도 하나의 프로세서, 그리고 컴퓨터 프로그램 코드를 포함한 적어도 하나의 메모리를 포함할 수 있다. 적어도 하나의 메모리 및 컴퓨터 프로그램 코드는 적어도 하나의 프로세서와 함께 장치로 하여금, 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하고, 하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하고, 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 적어도 수행하게 하도록 구성될 수 있다.
도 1은 실시예를 사용할 수 있는 모바일 단말의 개략적인 블록도.
도 2는 실시예에 따른 무선 통신 시스템의 개략적인 블록도.
도 3은 실시예에 따라서 콘텍스트 감지 및 융합을 제공하기 위한 장치의 블록도.
도 4는 실시예에 따른 분산 감지 프로세스의 개념적 블록도.
도 5는 실시예에 따라서 콘텍스트 감지 및 융합을 제공하기 위한 구현 구조를 도시하는 도면.
도 6은 실시예에 따라서 콘텍스트 감지 및 융합을 제공하기 위한 다른 구현 구조를 도시하는 도면.
도 7은 실시예에 따라서 오디오 및 가속도계 정보를 기반으로 한 사용자 활동 감지 및 장치 환경의 예를 도시하는 도면.
도 8은 실시예에 따라서 센서 프로세서를 위한 마이크로제어기 구조 예를 도시하는 도면.
도 9는 실시예에 따라서 콘텍스트 감지 및 융합을 제공하기 위한 다른 방법 예에 따른 흐름도.
따라서 다양한 실시예를 일반적인 용어로 기술하였지만, 이제 첨부 도면을 참조할 것이며, 이 도면은 반드시 스케일에 맞게 도시되지는 않는다.
이제 첨부 도면을 참조하여 이후로부터 소정 실시예를 보다 충분히 기술할 것이며, 도면에는 모든 실시예가 아닌 일부가 도시된다. 진실로, 다양한 실시예를 다수의 상이한 형태로 구현할 수 있으며, 여기에 설명된 실시예로 제한되는 것으로 구성되어서는 안되며, 오히려, 이들 실시예는 본 개시물이 적용가능한 법적 요건을 만족시키도록 제공된다. 동일 참조번호는 도면을 통해 동일 요소를 언급한다. 여기에 사용되는 바와 같이, 용어 "데이터", "콘텐츠", "정보" 및 유사 용어는 실시예에 따라서 전송, 수신 및/또는 저장될 수 있는 데이터를 언급하는데 교환가능하게 사용될 수 있다. 따라서 이러한 임의 용어의 사가능 다양한 실시예의 사상 및 범주를 제한하는 것으로 취해져서는 안된다.
또한 여기에 사용되는 바와 같이, 용어 '회로'는 (가) 하드웨어전용 회로 구현(예를 들면 아날로그 회로 및/또는 디지털 회로로 구현), (나) 장치로 하여금 여기에 기술된 하나 이상의 기능을 수행하게 하기 위해 함께 작동하는 하나 이상의 컴퓨터 판독가능 메모리에 저장된 소프트웨어 및/또는 펌웨어 인스트럭션을 구비한 컴퓨터 프로그램제품(들)과 회로의 결합, (다) 예를 들어 소프트웨어 또는 펌웨어가 물리적으로 제공되지 않을 지라도 동작을 위해 소프트웨어 또는 펌웨어를 요구하는 마이크로프로세서(들) 또는 마이크로프로세서(들)의 일부와 같은 회로를 언급한다. 이 '회로' 정의는 임의 청구항을 포함하여 여기에서 이 용어의 모든 사용에 적용된다. 또 다른 예를 들면 여기에 사용되는 바와 같이, 용어 '회로'는 또한 하나 이상의 프로세서 및/또는 이의 부분(들), 그리고 수반된 소프트웨어 및/또는 펌웨어를 구비한 구현을 포함한다. 또 다른 예를 들면 여기에 사용되는 용어 '회로'는 모바일 폰을 위한 기저대 집적회로 또는 애플리케이션 프로세서 집적회로, 또는 서버, 셀룰러 네트워크 장치, 다른 네트워크 장치 및/또는 다른 컴퓨팅 장치에서 유사한 집적회로를 포함한다.
여기에 정의되는 바와 같이, 비일시적, 물리적 저장매체(예를 들면 휘발성 또는 비휘발성 메모리 장치)를 언급하는 "컴퓨터 판독가능 저장매체"는 전자기 신호를 언급하는 "컴퓨터 판독가능 전송매체"와 구별될 수 있다.
일부 실시예는 보다 효율적으로 센서 통합을 수행하는데 사용될 수 있다. 핸드헬드 장치(예를 들면 모바일 단말)의 종래 온보드 센서는 전형적으로, I2C/SPI(inter-integrated circuit/serial peripheral interface) 인터페이스를 통해 장치의 주 프로세서로 인터페이스되므로, 원 데이터의 사전 처리 및 센서로부터의 이벤트 검출은 전형적으로 소프트웨어 구동층에서 수행된다. 따라서 예를 들면, 물리적 센서를 위한 데이터 융합은 전형적으로 주 프로세서를 사용하여 운영체제 기본 계층에서 저레벨 구동기에서 발생될 수 있다. 따라서 사전 처리 및 이벤트 검출은 전형적으로 주 프로세서에 의해 수행된다. 그러나 실시예는 센서 융합을 개선하기 위한 메카니즘을 제공할 수 있다. 예를 들어 실시예는 물리적 및 가상 센서 데이터의 모두를 사용하여 운영체제 레벨에서 콘텍스트 융합을 가능하게 할 수 있다. 더욱이 소정 경우에, 센서 코프로세서가 물리적 센서 데이터를 융합하는데 이용될 수 있다. 또한 일부 실시에는 분산 방식으로 콘텍스트 감지를 수행하는 메카니즘을 제공한다. 이와 관련하여 예를 들면, 콘텍스트 정보는 물리적 및 가상 센서로부터의 입력을 기반으로 결정될 수 있다(또는 감지될 수 있다). 물리적 및/또는 가상 센서로부터 (콘텍스트 정보를 정의 또는 암시할 수 있는) 센서 데이터의 추출 후에, 융합은 동질성(예를 들면 물리적 센서 및 운영체제 가상 센서로부터 도출된 콘텍스트 융합이며, 출력은 융합된 콘텍스트) 또는 이질성(예를 들면 입력은 보다 낮은 계층으로부터 콘텍스트 정보와 가상 센서 데이터의 결합)으로 성취될 수 있다. 따라서 실시예에 따라서 임의 특정한 운영체제 계층에서 융합된 데이터는 다른 센서 데이터와 융합되는 센서 데이터(물리적 및/또는 가상)이거나, 또는 (그자체가, 저층으로부터 콘텍스트 정보 및/또는 다른 센서 데이터와 융합된 센서 데이터를 포함할 수 있는) 저층으로부터의 콘텍스트 정보와 융합되는 센서 데이터일 수 있다.
도 1은 다양한 실시예로부터 이로울 수 있는 모바일 단말(10)의 블록도를 도시하는 일 실시예이다. 그러나 도시되고 이후로부터 기술되는 모바일 단말은 다양한 실시예로부터 이로울 수 있는 일 유형의 장치를 단지 설명하려는 것이며, 실시예의 범주를 제한하는 것으로 간주되어서는 안된다. 따라서 PDA(portable digital assistants), 모바일 전화, 페이저, 모바일 텔레비젼, 게임 장치, 랩탑 컴퓨터, 카메라, 비디오 레코더, 오디오/비디오 플레이어, 라디오, 포지셔닝 장치(예를 들면 GPS(global positioning ststem) 장치), 또는 전술한 다른 유형의 음성 및 텍스트 통신 시스템의 임의 결합과 같은 다수의 유형의 모바일 단말이 다양한 실시예를 쉽게 이용할 수 있다.
모바일 단말(10)은 송신기(14)와 수신기(16)와 동작가능하도록 통신하는 안테나(12)(또는 다중 안테나)를 포함할 수 있다. 모바일 단말(10)은 송신기(14) 및 수신기(16)로 신호를 제공하고 이로부터 신호를 수신하는 제어기(20), 또는 다른 처리 장치와 같은 장치를 더 포함할 수 있다. 신호는 적용가능한 셀룰러 시스템의 무선 인터페이스 표준에 따른 시그널링 정보, 그리고 또한 사용자 스피치, 수신 데이터 및/또는 사용자 생성 데이터를 포함한다. 이와 관련하여, 모바일 단말은 하나 이상의 무선 인터페이스 표준, 통신 프로토콜, 변조 유형 및 액세스 유형으로 동작할 수 있다. 실례로서, 모바일 단말(10)은 다수의 제1, 제2, 제3 및/또는 제4 세대 통신 프로토콜 등 중의 임의 것에 따라서 동작할 수 있다. 예를 들면 모바일 단말(10)은 2G(second-generation) 무선 통신 프로토콜 IS-136(TDMA(time division multiple access)), GSM(global system for mobile communication), 및 IS-95(CDMA(code division multiple access)), 또는 UMTS(Universal Mobile Telecommunications System), CDMA2000, WCDMA(wideband CDMA) 및 TD-SCDMA(time division-synchronous CDMA)와 같은 3G 무선 통신 프로토콜, E-UTRAN과 같은 3.9G 무선 통신 프로토콜, 4G 무선 통신 프로토콜 등에 따라서 동작할 수 있다. 대안으로서(또는 부가적으로), 모바일 단말(10)은 난셀룰러 통신 메카니즘에 따라서 동작할 수 있다. 예를 들면 모바일 단말(10)은 WLAN(wireless local area neetwork) 또는 도 2와 함께 후술되는 다른 통신 네트워크에서 통신할 수 있다.
소정 실시예에서, 제어기(20)는 모바일 단말(10)의 오디오 및 논리 기능을 구현하는데 바람직한 회로를 포함할 수 있다. 예를 들어 제어기(20)는 디지털 신호 프로세서 장치, 마이크로프로세서 장치 및 다양한 아날로그-디지털 변환기, 디지털-아날로그 변환기 및 다른 지원 회로로 구성될 수 있다. 모바일 단말(10)의 제어 및 신호 처리 기능은 그들의 각 능력에 따라서 이들 장치들 간에 할당된다. 따라서 제어기(20)는 또한 변조 및 전송에 앞서 메시지와 데이터를 콘벌루션 인코딩(convolutionally encode) 및 인터리빙(interleave)하기 위한 기능성을 포함할 수 있다. 제어기(20)는 내부 음성 코더를 추가로 포함할 수 있고, 내부 데이터 모뎀을 포함할 수 있다. 더욱이 제어기(20)는 메모리에 저장될 수 있는 하나 이상의 소프트웨어 프로그램을 동작시키기 위한 기능성을 포함할 수 있다. 예를 들어 제어기(20)는 종래 웹브라우저와 같은 연결 프로그램(connectivity program)을 동작시킬 수 있다. 그러면 모바일 단말(10)은 이 연결 프로그램으로 인하여, 예를 들어 WAP(Wireless Application Protocol), HTTP(Hypertext Transfer Protocol) 등에 따라 위치기반 콘텐츠 및/또는 다른 웹 페이지 콘텐츠와 같은 웹 콘텐츠를 송신 및 수신할 수 있다.
또한 모바일 단말(10)은 종래 이어폰 또는 스피커(24)와 같은 출력 장치, 링거(22), 마이크로폰(26), 디스플레이(28) 및 사용자 입력 인터페이스를 포함한 사용자 인터페이스를 포함할 수 있고, 이들 모두는 제어기(20)로 연결된다. 모바일 단말(10)이 데이터를 수신할 수 있게 해주는 사용자 입력 인터페이스는 키패드(30), (도시되지 않은) 터치 스크린 또는 다른 입력 장치와 같이 데이터를 수신할 수 있게 해주는 다수의 장치 중의 임의 장치를 포함할 수 있다. 키패드(30)를 포함할 실시예에서, 키패드(30)는 모바일 단말(10)을 동작시키는 데 사용되는 종래 수치(0-9) 및 관련 키(#, *), 그리고 하드 및 소프트 키를 포함할 수 있다. 이 대신에, 키패드(30)는 종래 QWERTY 키패드 배치를 포함할 수 있다. 또한 키패드(30)는 관련 기능을 가진 다양한 소프트 키를 포함할 수 있다. 부가적으로 또는 이 대신에, 모바일 단말(10)은 조이스틱과 같은 인터페이스 장치 또는 다른 사용자 입력 인터페이스를 포함할 수 있다. 모바일 단말(10)은 검출가능한 출력으로서 기계적 진동을 선택적으로 제공하는 것뿐만 아니라 모바일 단말(10)을 작동시키는데 필요한 다양한 회로에 전력공급을 위한 진동 배터리 팩과 같은 배터리(34)를 더 포함한다.
또한 모바일 단말(10)은 하나 이상의 물리적 센서(36)를 포함할 수 있다. 물리적 센서(36)는 모바일 단말(10)의 현 상황을 묘사하는 특정한 물리적 매개변수를 감지 또는 결정할 수 있는 장치일 수 있다. 예를 들어 소정 경우에, 물리적 센서(36)는 속도, 가속도, 헤딩, 방위, 시작점과 관련된 관성 위치, 다른 장치 또는 객체에 대한 근접성. 조명 조건 등과 같은 모바일 단말 환경관련 매개변수를 결정하기 위한 각 상이한 송신 장치를 포함할 수 있다.
실시예에서, 모바일 단말(10)은 코프로세서(37)를 더 포함할 수 있다. 코프로세서(37)는 모바일 단말(10)을 위한 소정 처리 작업을 다루기 위해 제어기(20)와 작업하도록 구성될 수 있다. 실시예에서, 코프로세서(37)는 예를 들어 물리적 센서(36)와 인터페이스, 그렇지 않으면 이를 제어하기 위하여, 그리고/또는 콘텍스트 정보의 추출 및 융합을 관리하기 위하여 모바일 단말(10)을 위한 콘텍스트 추출 및 융합 능력을 다루도록(또는 지원하도록) 특별히 작업화될 수 있다.
모바일 단말(10)은 UIM(user identity module)(38)을 더 포함할 수 있다. UIM(38)은 전형적으로, 내장된 프로세서를 가진 메모리 장치이다. UIM(38)은 예를 들면 SIM(subscriber identity module), UICC(universal integrated circuit card), USIM(universal subscriber identity module), R-UIM(removable user identity module) 등을 포함할 수 있다. UIM(38)은 전형적으로 모바일 가입자와 관련된 정보 요소를 저장한다. UIM(38)에 부가적으로, 모바일 단말(10)은 메모리를 구비할 수 있다. 예를 들면 모바일 단말(10)은 데이터의 임시 저장을 위한 캐시 영역을 포함한 휘발성 RAM(Random Access Memory)과 같은 휘발성 메모리(40)를 포함할 수 있다. 또한 모바일 단말(10)은 내장 및/또는 착탈될 수 있는 다른 비휘발성 메모리(42)를 포함할 수 있다. 메모리는 모바일 단말(10)의 기능을 구현하기 위하 모바일 단말(10)에 의해 사용되는 다수의 정보 피스 및 데이터 중의 임의 것을 저장할 수 있다. 예를 들면 메모리는 모바일 단말(10)을 고유하게 확인할 수 있는 IMEI(international mobile equipment identification)와 같은 식별자를 포함할 수 있다.
도 2는 실시예에 따른 무선 통신 시스템의 개략적인 블록도이다. 이제 도 2를 참조하면, 다양한 실시예로부터 이로운 일 유형의 시스템의 도시를 제공한다. 도 2에 도시된 바와 같이, 실시예에 따른 시스템은 통신 장치(예를 들면 모바일 단말 10), 소정 경우에 또한 각각이 네트워크(50)와 통신할 수 있는 추가 통신 장치를 포함한다. 시스템의 통신 장치는 네트워크(50)를 통해 서로 통신할 수 있거나, 또는 네트워크 장치와 통신할 수 있다.
실시예에서, 네트워크(50)는 대응한 유선 및/또는 무선 인터페이스를 통해 서로 통신할 수 있는 다양하고 상이한 노드, 장치 또는 기능의 집합을 포함한다. 따라서 도 2의 도시는 시스템의 소정 요소의 거시적 관점의 예이며, 네트워크(50) 또는 시스템의 상세 뷰 또는 모두를 포함하는 것이 아님을 알아야 한다. 필수는 아니지만, 소정 실시예에서, 네트워크(50)는 다수의 제1 세대(1G), 제2 세대(2G), 2.5G, 제3 세대(3G), 3.5G, 3.9G, 제4 세대(4G) 모바일 통신 프로토콜, LTE(Long Term Evolution) 등 중의 임의 하나 이상에 따라서 통신을 지원할 수 있다.
모바일 단말(10) 및 다른 통신 장치와 같은 하나 이상의 통신 단말은 네트워크(50)를 통해 서로 통신할 수 있고, 각각은 인터넷과 같이 LAN(local area network), MAN(metropolitan area network) 및/또는 WAN(wide area network)과 같은 데이터 네트워크로 연결될 수 있는 액세스 지점 또는 하나 이상의 셀룰러 또는 모바일 네트워크의 일부인 기지국일 수 있는 베이스 사이트(base site)로부터 신호를 수신하고 신호를 송신하기 위한 안테나 또는 안테나들을 포함할 수 있다. 결과적으로, 처리 장치 또는 요소(예를 들면 퍼스널 컴퓨터, 서버 컴퓨터 등)와 같은 다른 장치가 네트워크(50)를 통해 모바일 단말(10)로 연결될 수 있다. 모바일 단말(10)과 다른 장치를 네트워크(50)로 직접적으로 또는 간접적으로 연결함으로써, 모바일 단말(10)과 다른 장치는 예를 들어 HTTP(Hypertext Transfer Protocol) 등을 포함한 다수의 통신 프로토콜에 따라서 서로 및/또는 네트워크와 통신할 수 있게 됨으로써, 모바일 단말(10)과 다른 통신 장치의 다양한 통신 또는 다른 기능을 제각기 수행하게 된다.
또한 도 2에 도시되지는 않았지만, 모바일 단말(10)은 예를 들어 RF(radio frequency), BT(Bluetooth), IR(Infrared), 또는 LAN, 무선 LAN(WLAN), WiMAX(Worldwide Interoperability for Microwave Access), WiFi, UWB(ultra-wide band), 와이브리(Wibree) 기법 등을 포함한 다수의 상이한 유선 또는 무선 통신 기법 중의 임의 기법에 따라서 통신할 수 있다. 따라서 모바일 단말(10)은 다수의 상이한 액세스 메카니즘 중의 임의 메카니즘에 의해 네트워크(50) 및 다른 통신 장치와 통신하게 될 수 있다. 예를 들면 W-CDMA(wideband code division multiple access), CDMA2000, GSM(global system for mobile commuinication), GPRS(general packet radio service) 등과 같은 모바일 액세스 메카니즘뿐만 아니라 WLAN, WiMAX 등와 같은 무선 액세스 메카니즘, DSL(digital subscriber line), 캐이블 모뎀, 이더넷 등과 같은 고정 액세스 메카니즘도 지원받을 수 있다.
도 3은 실시예의 동작을 가능하게 하거나 또는 관리하기 위해 모바일 단말(10)에 사용될 수 있는 장치의 블록도를 도시한다. 이제 콘텍스트 감지 및 융합을 제공하기 위한 장치의 소정 요소가 디스플레이된 도 3을 참조하여 실시예를 기술할 것이다. 도 3의 장치는 예를 들어 모바일 단말(10) 상에 사용될 수 있다. 그러나 장치는 이 대신에 (예를 들어 앞에서 리스트된 임의 장치와 같은) 모바일 및 고정의 모두인 각종 다른 장치에서 구현될 수 있다. 더욱이 후술되는 장치 또는 요소는 의무적이 아닐 수 있으며, 따라서 일부는 소정 실시예에서 생락될 수 있다는 것을 알아야 한다.
이제 도 3을 참조하면, 콘텐스트 감지 및 융합을 제공하기 위한 장치를 제공한다. 장치는 프로세서(70), 사용자 인터페이스(72), 통신 인터페이스(74) 및 메모리 장치(76)를 포함하거나, 그렇지 않으면 이들과 통신할 수 있다. 메모리 장치(76)는 예를 들어 하나 이상의 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 환언하면, 예를 들어 메모리 장치(76)는 머신(예를 들면 컴퓨팅 장치)에 의해 검색될 수 있는 데이터(예를 들면 비트)를 저장하도록 구성된 게이트를 구비한 전자 저장장치(예를 들면 컴퓨터 판독가능 저장매체)일 수 있다. 메모리 장치(76)는 실시예에 따라서 장치로 하여금 다양한 기능을 수행하게 하기 위해 정보, 데이터, 애플리케이션, 인스트럭션 등을 저장하도록 구성될 수 있다. 예를 들면 메모리 장치(76)는 프로세서(70)에 의한 처리를 위해 입력 데이터를 버퍼링하도록 구성될 수 있다. 부가적으로 또는 이 대신에, 메모리 장치(76)는 프로세서(70)에 의한 실행을 위해 인스트럭션을 저장하도록 구성될 수 있다.
프로세서(70)는 다수의 상이한 방식으로 구현될 수 있다. 예를 들면 프로세서(70)는 마이크로프로세서, 제어기, DSP(digital signal processor), 수반한 DSP를 가진 또는 없는 처리 장치와 같은 다양한 처리 수단, 또는 예를 들어 ASIC(application specific integrated circuit), FPGA(field programmable gate array), MCU(microcontroller unit), 하드웨어 가속도기, 특정 목적 컴퓨터칩, 처리 회로 등과 같은 지적회로를 포함한 다른 다양한 처리 장치 중의 하나 이상으로 구현될 수 있다. 실시예에서, 프로세서(70)는 메모리 장치(76)에 저장되거나, 그렇지 않으면 프로세서(70)에 액세스가능한 인스트럭션을 실행하도록 구성될 수 있다. 이 대신에 또는 부가적으로, 프로세서(70)는 하드 코딩된 기능을 실행하도록 구성될 수 있다. 이와 같이 하드웨어 또는 소프트웨어 방법에 의해, 또는 이들의 결합에 의해 구성되든지 간에, 프로세서(70)는 적절히 구성되면서 실시예에 따라 동작을 수행할 수 있는 (예를 들면 회로에 물리적으로 구현된) 엔티티를 나타낼 수 있다. 따라서 예를 들어 프로세서(70)가 ASIC, FPGA 등으로 구현될 때, 프로세서(70)는 여기에 기술된 동작을 행하기 위한 하드웨어로 특별히 구성될 수 있다. 이 대신에 다른 예를 들면, 프로세서(70)가 소프트웨어 인스트럭션의 실행자로서 구현될 때, 인스트럭션은 이 인스트럭션을 실행시에 여기에 기술된 알고리즘 및/또는 동작을 수행하도록 프로세서(70)를 특별히 구성할 수 있다. 그러나 소정 경우에, 프로세서(70)는 여기에 기술된 알고리즘 및/또는 동작을 수행하기 위한 인스트럭션에 의해 프로세서(70)의 추가 구성에 의한 다양한 실시예를 사용하는데 적합한 특정 장치(예를 들면 모바일 단말 10 또는 다른 통신 장치)의 프로세서일 수 있다. 프로세서는 다른 것들 중에서 프로세서(70)의 동작을 지원하도록 구성된 클럭, ALU(arithmetic logic unit) 및 논리 게이트를 포함할 수 있다.
한편, 통신 인터페이스(74)는 네트워크로/로부터 데이터를 송신 및/또는 수신하도록 구성된 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 결합으로 구현된 장치 또는 회로와 같은 임의 수단, 그리고/또는 장치와 통신하는 임의 다른 장치 또는 모듈일 수 있다. 이와 관련하여, 통신 인터페이스(74)는 예를 들면 무선 통신 네트워크와 통신할 수 있게 하는 예를 들어 안테나(또는 다중 안테나)와 지원 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 소정 환경에서, 통신 인터페이스(74)는 이 대신에 또는 또한 유선 통신을 지원할 수 있다. 따라서 예를 들면 통신 인터페이스(74)는 케이블, DSL(digital subscriber line), USB(universal serial bus) 또는 다른 메카니즘을 통해 통신을 지원하기 위한 통신 모뎀 및/또는 다른 하드웨어/소프트웨어를 포함할 수 있다.
사용자 인터페이스(72)는 청각, 시각, 기계적 또는 다른 출력을 사용자에게 제공하기 위해, 그리고/또는 사용자 인터페이스(72)에서 사용자 입력 표시를 수신하기 위해 프로세서(70)와 통신할 수 있다. 따라서 사용자 인터페이스(72)는 예를 들면 키보드, 마우스, 조이스틱, 디스플레이, 터치 스크린, 소프트키, 마이크로폰, 스피커, 또는 다른 입력/출력 메카니즘을 포함할 수 있다. 장치가 서버 또는 소정 다른 네트워크 장치로서 구현될 수 있는 실시예에서, 사용자 인터페이스(72)를 제한하거나 제거할 수 있다. 그러나 장치가 통신 장치(예를 들면 모바일 단말 10)로서 구현되는 실시예에서, 사용자 인터페이스(72)는 다른 장치 또는 요소들 중에 스피커, 마이크로폰, 디스플레이 및 키보드 등의 모두 또는 임의 것을 포함할 수 있다. 이와 관련하여 예를 들면, 프로세서(70)는 예를 들어 스피커, 링거, 마이크로폰, 디스플레이 등과 같은 사용자 인터페이스의 하나 이상의 요소의 적어도 일부 기능을 제어하도록 구성된 사용자 인터페이스 회로를 구비할 수 있다. 프로세서(70), 및/또는 이 프로세서(70)를 구비한 사용자 인터페이스 회로는 프로세서(70)에 액세스가능한 메모리(예를 들면 메모리 장치 76 등)에 저장된 컴퓨터 프로그램 인스트럭션(예를 들면 소프트웨어 및/또는 펌웨어)을 통해 사용자 인터페이스의 하나 이상의 요소의 하나 이상의 기능을 제어하도록 구성될 수 있다.
실시예에서, 장치는 센서 프로세서(78)를 더 포함할 수 있다. 센서 프로세서(78)는 프로세서(70)의 구조와 유사한 구조(비록 아마도 의미론적 및 스케일 차이)를 가질 수 있고, 유사한 능력을 가질 수 있다. 그러나 실시예에 따라서, 센서 프로세서(78)는 예를 들면 가속도계, 자력계, 근접 센서, 주변광 센서, 그리고/또는 다수의 다른 가능한 센서와 같은 하나 이상의 물리적 센서(물리적 센서 1, 물리적 센서 2, 물리적 센서 3, ..., 물리적 센서 n, 여기서 n은 물리적 센서의 번호와 동일한 정수)와 인터페이스하도록 구성될 수 있다. 소정 실시예에서, 센서 프로세서(78)는 저장된 인스트럭션을 실행하기 위해 메모리 장치(76) 또는 소정 다른 메모리의 일부를 액세스할 수 있다. 따라서 예를 들면, 센서 프로세서(78)는 이 센서 프로세서(78)가 각 물리적 센서와 통신할 수 있도록 구성된 센서 특정 펌웨어를 통해 물리적 센서와 인터페이스하도록 구성될 수 있다. 소정 실시예에서, 센서 프로세서(78)는 (소정 경우에 아마도 버퍼에 이러한 정보를 저장하는) 물리적 센서로부터 정보를 추출하고, 물리적 센서에 대한 센서 제어 및 관리 기능을 수행하고, 그리고 센서 데이터 사전처리를 수행하도록 구성될 수 있다. 실시예에서, 센서 프로세서(78)는 추출된 물리적 센서 데이터에 관하여 센서 데이터 융합을 수행하도록 또한 구성될 수 있다. 그 후, 융합된 물리적 센서 데이터는 추가 처리를 위해 (예를 들면 보다 상세히 후술되는 융합 관리자(80)의 형태인) 프로세서(70)로 전달될 수 있다. 소정 실시예에서, 센서 프로세서(78)는 프로세서(70)와 센서 프로세스(78) 간의 인터페이스를 관리하기 위한 호스트 인터페이스 기능을 포함할 수 있다. 따라서 센서 프로세서(78)는 물리적 센서로부터의 데이터, 물리적 센서에 관한 상태 정보, 제어 정보, 질의 및 콘텍스트 정보를 프로세서(70)로 제공할 수 있게 된다.
실시예에서, 프로세서(70)는 융합 관리자(80)를 포함 또는 제어하는 것으로 구현될 수 있다. 따라서 소정 실시예에서, 프로세서(70)는 여기에 기술된 바와 같이 융합 관리자(80)로 인한 다양한 기능의 실행 또는 발생, 지시 또는 제어하는 것으로 알려져 있다. 융합 관리자(80)는 소프트웨어에 따라서 동작하거나, 그렇지 않으면 하드웨어, 또는 하드웨어와 소프트웨어의 결합(예를 들면 소프트웨어 제어 하에 동작하는 프로세서 70, 여기에 기술된 동작을 수행하도록 특별히 구성된 ASIC 또는 FPGA로서 구현된 프로세서 70, 또는 이들의 결합)된 장치 또는 회로와 같은 임의 수단일 수 있으므로, 여기에 기술된 바와 같이 융합 관리자(80)의 대응 기능을 수행하기 위해 장치 또는 회로를 구성할 수 있다. 따라서 소프트웨어를 사용하는 예에서, 소프트웨어를 실행하는 장치 또는 회로(예를 들면 일 예에서 프로세서 70)는 이러한 수단과 관련된 구조를 형성한다.
융합 관리자(80)는 사전처리된 물리적 센서 데이터 및/또는 융합된 물리적 센서 데이터를 수신하기 위해 (센서 프로세서 78를 사용하는 실시예에서) 센서 프로세서(78)와 통신하도록 구성될 수 있다. 센서 프로세서(78)를 사용하지 않는 실시예에서, 융합 관리자(80)는 물리적 센서 데이터를 사전처리 및/또는 융합하도록 더 구성될 수 있다. 실시예에서, 융합 관리자(80)는 물리적 센서 데이터와 가상 센서 데이터를 융합하기 위하여 하나 이상의 가상 센서(예를 들면 가상 센서 1, 가상 센서 2, ..., 가상 센서 m, 여기서 m은 가상 센서의 번호와 동일한 정수)와 인터페이스하도록 구성될 수 있다. 가상 센서는 물리적 매개변수를 측정하지 않는 센서를 포함할 수 있다. 따라서 예를 들면, 가상 센서는 RF 활동, 시간, 칼렌더 이벤트, 장치 상태 정보, 활성 프로파일, 알람, 배터리 상태, 애플리케이션 데이터, 웹사이트로부터의 데이터, 타이밍을 기반으로 측정한 소정 위치 정보(예를 들면 GPS 위치) 또는 다른 비물리적 매개변수(예를 들면 셀ID) 등과 같은 이러한 가상 매개변수를 모니터링할 수 있다. 가상 센서는 각 가상 센서와 관련된 대응한 비물리적 매개변수 데이터를 결정하도록 구성된 하드웨어 및 소프트웨어의 결합 또는 하드웨어로서 구현될 수 있다. 소정 실시예에서, 물리적 센서 데이터와 가상 센서 데이터의 융합은 상이한 레벨로 분류될 수 있다. 예를 들면 콘텍스트 융합은 기본 계층에서 성취될 수 있는 특징 레벨(feature level)에서, 미들웨어(middleware)에 대응할 수 있는 결정 레벨에서, 애플리케이션 계층(application layer)에 대응할 수 있는 독립 애플리케이션에서 발생할 수 있다. 융합 관리자(80)는 전술한 바와 같은 다양한 레벨 및 레벨들의 결합에서 콘텍스트 융합(예를 들면 콘텍스트 정보와 관련된 가상 및 물리적 센서 데이터의 융합)을 관리하도록 구성될 수 있다.
따라서 소정 실시예에 따라서, 콘텍스트 데이터 추출과, 추출되었던 콘텍스트 데이터의 융합은 분산 방식 또는 계층화/선형 방식으로 상이한 엔티티, 프로세서 또는 프로세스에 의해 수행될 수 있다. 따라서 물리적 센서 세트는 물리적 센서를 관리하고, 물리적 센서 데이터를 사전처리하고, 제1 레벨의 콘텍스트 데이터를 추출하도록 구성되는 센서 프로세서(78)와 인터페이스할 수 있다. 소정 실시예에서, 센서 프로세서(78)는 물리적 센서 데이터 상에 데이터 레벨 콘텍스트 융합을 수행할 수 있다. 센서 프로세서(78)는 소정 유형의 물리적 데이터 소스(예를 들면 모뎀, RF 모듈, AV 모듈, GPS 서브시스템 등)를 가질 수 있는 다른 서브시스템으로부터 사전처리된 데이터 및 콘텍스트를 사용하여 콘텍스트 융합을 수행하도록 구성될 수 있다. 소정 실시예에서, 제2 레벨이자 아마도 후속 레벨의 콘텍스트 융합은 (예를 들면 융합 관리자 80를 통해) 프로세서(70)를 사용하여 가상 센서 데이터와 물리적 센서 데이터를 융합하도록 수행될 수 있다. 따라서 융합 관리자(80)는 장치의 운영체제 계층에서 물리적 센서 데이터와 가상 센서 데이터를 융합할 수 있다.
프로세서(70) 그자체는 운영체제를 실행하는 프로세서이므로, (예를 들면 융합 관리자 80의 형태인) 프로세서(70)에서 실행중인 가상 콘텍스트 융합 프로세스는 센서 프로세서(78)로부터의 콘텍스트 및 물리적 센서 데이터에 대한 액세스를 가질 수 있다. 또한 프로세서(70)는 물리적 데이터 소스와 가상 센서를 가진 다른 서브시스템에 대한 액세스를 가질 수 있다. 따라서 계층화된 또는 분산 콘텍스트 감지 프로세스를 제공할 수 있다.
도 4는 실시예에 의해 제공되는 분산 감지 프로세스의 개념적 블록도를 도시한다. 도 4에 도시된 바와 같이, 프로세서(70)의 운영체제의 상이한 층에서 실행중인 각 콘텍스트 융합 처리는 콘텍스트로 더 많은 정보를 추가하고 콘텍스트 신뢰도(context confidence index)를 증가시킬 수 있다. 따라서 콘텍스트 신뢰도를 증가시킴으로써, 사용자에게 서비스를 제공하는 것과 함께 사용하기 위하여 결국에 보다 신뢰가능한 콘텍스트 정보를 생성할 수 있다. 이와 관련하여 예를 들면, 센서 프로세서(78)는 하드웨어 계층에서 제1 레벨의 콘텍스트 융합에서 수신된 물리적 센서 데이터 상에 콘텍스트 감지 및 융합을 수행할 수 있다. 그 후, 제2 레벨의 콘텍스트 융합은 기본 계층에 대응한 특징 레벨에서 일부 가상 센서 데이터와 물리적 센서 데이터를 융합함으로써 (예를 들면 융합 관리자 80를 통해) 프로세서(70)에서 발생할 수 있다. 그 다음, 제3 레벨의 콘텍스트 융합은 특징 레벨에서 융합된 콘텍스트 데이터와 추가 가상 센서 데이터를 융합함으로써 프로세서에 발생할 수 있다. 제3 레벨의 콘텍스트 융합은 결정 레벨에서 발생하고 콘텍스트 신뢰도를 추가할 수 있다. 따라서 콘텍스트 정보가 애플리케이션 계층에서 독립 애플리케이션으로 제공될 때, 독립 애플리케이션에 의해 사용되는 콘텍스트 데이터에 보다 높은 신뢰성을 둘 수 있다. 도 4의 예는 임의 번호의 운영체제 계층으로 스케일링될 수 있다는 것을 알아야 한다. 따라서 소정 실시예에서, 콘텍스트 융합 프로세스는 도 4에 도시된 바와 같이 콘텍스트 융합 프로세스의 번호가 3으로 제한되지 않도록 임의 운영체제 계층에서 실행될 수 있다.
또한 독립 애플리케이션은 또 다른 레벨(예를 들면 제4 레벨)의 콘텍스트 감지 및 융합을 수행할 수 있다는 것을 알아야 한다. 또한 도 4에 도시된 바와 같이, 독립 애플리케이션은 레벨 2와 레벨 3 콘텍스트 정보의 모두에 대한 액세스를 가질 수 있다. 따라서 독립 애플리케이션은 다수의 선행 레벨로부터의 콘텍스트 정보를 포함하는 콘텍스트 융합을 수행하거나, 또는 심지어 소정 실시예에서 선행 레벨 중의 특정 원하는 레벨로부터 콘텍스트 정보를 선택적으로 병합하는 것이 가능해질 수 있다.
도 5 및 도 6은 다양하고 상이한 비제한 예에 따라서 상이한 구현 구조를 도시한다. 따라서 사용되는 구현 구조는 각 상이한 실시예에서 다를 수 있다는 것을 알아야 한다. 예를 들면 (센서 프로세서 78로의 입력으로 제공되는 마이크로폰으로 도 4에 도시된) 센서 프로세서(78)로 인터페이스되는 오디오 데이터 대신에, 도 5에 도시된 바와 같이 대신에 오디오 데이터가 프로세서(70)로 직접 인터페이스될 수 있다. 이와 관련하여 도 5에서, 모든 물리적 센서와 마이크로폰은 센서 프로세서(78)로 인터페이스된다. 그 후, 레벨 1 또는 데이터 레벨 콘텍스트 추출 및 융합은 센서 프로세서(78)에서 수행될 수 있고, (예를 들면 요청시에, 또는 이벤트 변경이 발생 시에) 결과인 콘텍스트 데이터가 프로세서(70)로 전달될 수 있다. 따라서 Context1에 대응한 데이터는 물리적 센서에 의해 감지된 콘텍스트 데이터 세트로부터 도출된 융합 콘텍스트 데이터 세트로 정의될 수 있다. 그 후, 레벨 2 콘텍스트 융합이 타임 스탬프를 가진 신뢰할만한 콘텍스트 정보를 생성하기 위해 하나 이상의 가상 센서로부터 가상 센서 데이터와 레벨 1 콘텍스트 융합 동안에 생성된 기본 콘텍스트를 포함하는 기본 계층(예를 들면 특징 레벨 융합)에서 발생할 수 있다. 따라서 Context2는 오디오기반 콘텍스트 감지로부터 콘텍스트 정보와 융합된 가상 센서 데이터 또는 콘텍스트와 Context1의 융합으로부터 형성될 수 있다. 그러면 미들웨어는 레벨 2 콘텍스트 융합을 위해 기본 계층에 사용되는 콘텍스트 융합에 포함된 가상 센서 데이터와 상이할 수 있는 추가 가상 센서 데이터와 레벨 3 콘텍스트 융합을 수행할 수 있다. 이와 같이 Contex3는 가상 센서 데이터 또는 콘텍스트 정보와 Context2의 융합으로부터 형성될 수 있다. 따라서 도 5의 실시예는 프로세서(70)를 통해 오디오 기반 콘텍스트 추출을 수행하지만, 도 4의 실시예는 센서 프로세서(78)를 통해 오디오 기반 콘텍스트 추출을 수행한다는 점에서 도 4와 도 5는 다르다. 그러므로 오디오 콘텍스트 데이터의 융합은 (도 4의 경우에서와 같이) 하드웨어 계층에서 보다는 기본 계층에서 발생할 수 있다.
도 6은 센서 프로세서(78)를 배제한 다른 실시예를 도시한다. 도 6의 실시예에서, 모든 센서(가상 및 물리적)는 프로세서(70)로 인터페이스되고, 프로세서(70)가 데이터 레벨에서 레벨 1 융합을 수행할 수 있고, 이 레벨 1 융합은 오디오 콘텍스트 데이터와의 융합을 포함할 수 있다. 따라서 Context1에 대응한 데이터는 오디오 콘텍스트 데이터와 함께 융합되는 물리적 센서에 의해 감지된 콘텍스트 데이터 세트로부터 도출된 융합 콘텍스트 데이터 세트로 정의될 수 있다. 레벨 2 콘텍스트 추출 및 융합은 레벨 2 콘텍스트 데이터(예를 들면 Context2)를 제공하기 위해 레벨 1 콘텍스트 데이터(예를 들면 Context1)와 가상 센서 데이터를 융합하도록 운영체제 기본 계층에서 수행될 수 있다. 레벨 3 콘텍스트 프로세스는 추가적인 가상 센서 데이터와 레벨 2 콘텍스트 데이터의 융합을 기반으로 레벨 3 콘테스트 데이터(예를 들면 Context3)를 생성하기 위해 미들웨어에서 실행될 수 있다. 전술한 바와 같이 소정 경우에, 독립 애플리케이션은 레벨 2와 레벨 3 콘텍스트 정보의 모두를 액세스할 수 있으므로 레벨 4이 콘텍스트 융합을 수행할 수 있다. 또한 독립 애플리케이션을 애플리케이션 레벨 콘텍스트 융합을 수행하기 위해 네트워크(50)(또는 웹서비스 또는 소정 다른 네트워크 장치)와 통신할 수 있다.
알 수 있는 바와 같이, 모든 물리적 센서 데이터를 추출 및 사전처리하며, 이러한 데이터의 융합이 센서 프로세서(78)에 의해 성취되므로 도 4의 실시예의 결과로 프로세서(70)의 로딩이 적어질 수 있다. 따라서 연속적이며 적용가능한 콘텍스트 감지를 가능하게 할 수 있는 전용 저전력 장치, 즉 센서 프로세서(78)에서 예를 들면 센서 사전처리, 콘텍스트 융합, 센서 관리, 제스처/이벤트 검출, 센서 교정/보상 및 레벨 1 콘텍스트 융합이 수행된다.
이제 도 7을 참조하여 제한이 아닌 설명을 위해 특정 예를 기술할 것이다. 도 7은 장치 환경의 예를 도시한다. 도 7은 실시예에 따라서 오디오 및 가속도계 정보를 기반으로 한 사용자 활동 및 장치 환경의 예를 도시한다. 그러나 이 대신에 몇몇 다른 장치 환경을 사용할 수 있다.
도 7에 도시된 바와 같이, 오디오-콘텍스트 추출은 다양한 방법 중의 임의 방법으로써 구현될 수 있다. 센서 프로세서(78)가 사용할 수 있는 하나의 가능한 처리 동작열을 설명하기 위해 후술되는 일 예에서, 마이크로폰에 포착된 음향 신호는 아날로그-디지털 변환기에 의해 디지털화될 수 있다. 디지털 오디오 신호가 (예를 들면 8kHz 샘플링율 및 16비트 해상도로) 표현될 수 있다. 그 후, 8KH 샘플링율에서 240 샘플에 대응한 30ms의 프레임 크기로써 오디오 신호의 프레임을 추출 및 윈도우화함으로써) 오디오 신호로부터 특징을 추출할 수 있다. 인접한 프레임은 소정 경우에 겹쳐질 수 있거나, 다른 경우에 인접한 프레임들 간에 전혀 겹쳐지지 않고 대신에 갭이 있을 수 있다. 일 예에서, 프레임 시프트는 50 ms일 수 있다. 프레임은 해밍 윈도우(hamming window)로써 윈도우화될 수 있고, 소정 예에서 0이 추가될 수 있다. 제로 패딩(zero-padding) 후에, 프레임 길이는 256이 될 수 있다. FFT(Fast Fourier Transform)는 신호 프레임을 가질 수 있고, 그의 크기 제곱을 계산할 수 있다. 이 예에서 최종 특징 벡터는 신호에서 다양한 주파수 성분을 나타낸다. 오디오 환경 인식에 적당한 보다 컴팩트하고 보다 적당한 표현을 만들기 위해 이 벡터에 추가 처리를 행할 수 있다. 일 예에서, MFCC(mel-frequency cepstral coefficients)를 계산한다. MFCC 분석은 스펙트럼 파워(spectrum power)를 MF(mel-frequency) 스케일상에 균일하게 이격된 다수의 주파수 대역으로 분류(binning)하는 것을 포함한다. 일 예에서 40 대역을 사용할 수 있다. 로그는 대역 에너지를 취할 수 있고, 상호관련없는 특징 벡터 표현을 얻기 위하여 로그 대역 에너지(logarithmic band energies)의 DCT(discrete cosine transform)를 계산할 수 있다. 이 특징 벡터의 치수는 예를 들어 13일 수 있다. 또한 1차 및 2차 미분 시간(time derivatives)은 캡스트럼 계수 궤적(cepstral coefficient trajectories) 으로부터 근사화되어 특징 벡터에 첨부될 수 있다. 최종 특징 벡터의 치수는 39일 수 있다.
반면에 센서 프로세서(78)는 가속도계 신호를 위한 특징 추출을 구현할 수 있다. (예를 들면 100Hz의 샘플링율로) 원 가속도계 신호를 샘플링할 수 있고, 이는 세 직교 방향 x, y, z으로의 가속도를 나타낼 수 있다. 일 실시예에서, 특징 추출은 3차원 가속도의 크기를 가짐으로써 시작하여 결과적으로 1차원 신호를 만들어 낸다. 다른 실시예에서, 벡터 투영은 1차원 신호를 얻기 위해 가속도계 신호를 취한다. 다른 실시예에서, 특징 추출부로 주입되는 가속도계 신호의 치수는 1보다 더 클 수 있다. 예를 들면 3차원 가속도계 신호는 그와 같이 처리될 수 있거나, 또는 원 3차원 가속도계 신호의 두 상이한 프로젝션을 포함한 2차원 가속도계 신호를 사용할 수 있다.
예를 들면 특징 추출은 가속도계 신호를 윈도우화하고, 윈도우화된 신호의 DFT(Discrete Fourier Transform)를 취하고, DFT로부터 특징을 추출하는 것을 포함할 수 있다. 일 예에서, DFT로부터 추출된 특징은 예를 들면 하나 이상의 스펙트럼 파워값, 파워 스펙트럼 중심, 또는 주파수 영역 엔트로피를 포함한다. DFT를 기반으로 한 특징에 부가적으로, 센서 프로세서(78)는 시간 영역 가속도계 신호로부터 특징을 추출하도록 구성될 수 있다. 이들 시간 영역 특징은 예를 들면 평군, 표준 편차, 영교차율(zero crossing rate), 75% 퍼센트 범위, 사분위수 범위 등을 포함할 수 있다.
또한 가속도계 데이터 상에 다른 다양한 처리 동작을 수행할 수 있다. 일 예는 사람에 대한 스텝 속도 및 스텝 카운트를 추정하기 위해 스텝 카운터(step counter)를 실행하는 것을 포함한다. 다른 예는 보행자 추측항법(pedestrian dead reckonig)을 위해 사용할 스텝 길이(step length) 예측을 위한 알고리즘을 실행하는 것을 포함한다. 또 다른 예는 소정 방식으로 손을 움직이는 것과 같은 제스처 세트를 검출하는 제스처 엔진을 실행하는 것을 포함한다. 또한 이들 각 처리 동작과 관련된 입력은 소정 경우에 보다 상세히 후술되는 바와 같이 추출되어 콘텍스트 융합을 위해 처리될 수 있다.
센서 프로세서(78)에 의한 오디오 및 가속도계 특징 데이터의 추출 후에, 센서 프로세서(78)는 가상 센서 데이터를 포함한 콘텍스트 융합을 위해 프로세서로 대응한 오디오 특징 M 및 가속도계 특징 A를 전달할 수 있다. 일 실시예에 따른 기본 계층 오디오 처리는 오디오 콘텍스트 인식을 위한 확률 세트를 생성하기 위해 센서 프로세서(78)로부터 추출된 MFCC 특징 벡터를 프로세서(70)의 기본 계층으로 전달하는 것을 포함할 수 있다. 소정 경우, 프로세서(70)로 전달된 데이터율을 감소시키기 위하여, 프로세서(70)는 예를 들어 8000*2=16000 바이트/초의 데이터율에 대응하도록 8000 kHz 샘플링율 및 16비트 해상도 오디오 샘플로 실행되는 단일 채널 오디오 입력인 원 오디오 데이터를 판독할 수 있다. 50 ms의 프레임 스킵으로써 오디오 특징만을 전달시에, 데이터율은 (16비트 해상도로 표현되는 특징을 가정시) 약 1000/50*39*2=1560 바이트/초가 된다.
오디오 콘텍스트 인식은 예를 들어 오프라인 트레이닝 단에서 각 오디오 환경을 위한 모델 세트를 트레이닝시키고, 기본 계층에 트레이닝된 모델의 매개변수를 저장하고, 그리고 기본 계층에서 실행중인 소프트웨어로써 온라인 테스트 단계에서 입력 특징 시퀀스를 생성하는 각 모델의 가능성을 평가함으로서 구현될 수 있다. 예를 들면 GMM(Gaussian mixture models)을 사용할 수 있다. 성분 가중치, 평균 및 공분산 매트릭스를 포함한 GMM 매개변수는 EM(expectation maximization) 알고리즘과 레벨링된 오디오 데이터 세트를 사용하여 오프라인 트레이닝 단계에서 트레이닝될 수 있다. 기본 계층에서 오디오 콘텍스트 인식 처리는 입력으로서 MFCC 특징 벡터 시퀀스를 수신할 수 있고, 생성된 특징을 가진 각 콘텍스트 GMM의 가능성을 평가할 수 있다. 가능성 p(M│Ei)(Ei, i=1,...,N, 여기서 M은 MFCC 특징 벡터 시퀀스이고, N은 시스템에서 트레이닝된 환경 번호)이 미들웨이러 더 전달될 수 있다.
일부 선택적인 경우에, 기처층에 특징 레벨 융합 형태를 사용할 수 있다. 예를 들면 가속도계 또는 조명 센서와 같은 다른 센서에 의해 생성된 특징은 MFCC 특징에 첨부되어, 환경 확률Ei를 생성하는데 사용될 수 있다.
소정 실시예에서, 센서 프로세서(78)는 또한 오디오 콘텍스트 인식 또는 활동 인식을 수행하도록 구성될 수 있다. 예를 들어 오디오 콘텍스트 인식의 경우, 검색 동작으로써 계산상 효율적인 방식으로 분류 구현을 가능하게 하는 양자화된 매개변수를 가진 GMM을 이용할 수 있다. 이의 장점의 예는 기본 계층으로 전달할 데이터량을 더 감소시킬 수 있다는 것이다. 예를 들면 센서 프로세서는 예를 들어 매 3초와 같은 고정 간격에 환경의 가능성P(M│Ei)을 전달할 수 있다.
일 실시예에서, 기본 계층에서 가속도계 데이터의 처리는 규칙적 시간 간격(예를 들면 매 1초)에 센서 프로세서(78)로부터 특징 벡터를 수신하는 것을 포함할 수 있다. 특징 벡터를 수신시에, 기본 계층은 가속도계 특징 벡터에 분류를 수행할 수 있다. 일 실시예에서, 활동 분류는 가속도계 특징 벡터를 사용하여 수행될 수 있다. 이것은 특징을 추출하는 레벨링된 가속도계 데이터 세트를 위한, KNN(K-Nearest neighbers) 또는 임의 다른 분류자와 같은 분류자를 트레이닝함으로써 소정 예에서 구현될 수 있다. 일 실시예에서, 분류자는 러닝, 워킹, 유휴/정지, 버스/차, 자전거 및 스케이트보드 활동 간을 분류하기 위해 트레이닝된다. 활동 분류자는 활동 세트 Yj, j=1,...,M에 대한 확률 P(A│Yj)을 생성할 수 있다. A는 가속도계 신호를 기반으로 한 적어도 하나의 특징 벡터를 포함할 수 있다. KNN 분류자의 경우, 활동 Yj의 확률은 예를 들면 가장 근접한 이웃 세트(예를 들면 5 가장 근접한 이웃)들 중에 클래스 Yj로부터 샘플의 일부로서 계산될 수 있다. 다른 실시예에서, 나이브 베이즈(Naive Bayes), 가우시안 혼합 모델(Gaussian Mixture Models), SVM(Support Vector Machines), 신경망(Neural Networks) 등과 같은 다양한 다른 분류자를 적용할 수 있다.
미들웨어 상에 구현된 소프트웨어는 기본 계층으로부터 다양한 가설을 수신할 수 있고, 콘텍스트의 최종 추정하기 위해 결정 레벨 융합을 수행할 수 있다. 일 실시예에서, 미들웨어는 오디오 특징을 기반으로 한 환경 가능성 p(M│Ei), 가속도계 데이터를 기반으로 한 활동 가능성 P(A│Yj)을 수신하고, 감각 가설 및 하나 이상의 가상 센서가 주어진 가능성이 가장 높은 환경 및 활동 쌍의 최종 가설을 형성한다. 소정 실시예에서, 가상 센서 입력 예는 이전 시간(time prior)이 가능성있는 환경에 관한 결정에 포함되도록 클럭 입력 입력일 수 있다. 이전 시간은 환경, 활동 및/또는 그들의 결합에 대한 이전 가능성을 나타낼 수 있다. 이전 시간을 사용하는 방법은 예를 들면 2010년 3월 9일 출원된 노키아사의 특허출원 PCT/IB2010/051008, "Adaptable time-based priors for automatic context recognition"일 수 있으며, 이의 개시물은 참조로서 여기에 병합된다.
다른 예를 들면 사전 정보(prior information)는 가상 센서의 형태로 결정에 병합될 수 있다. 사전 정보는 예를 들면 상이한 활동 및 환경의 공통 발생에 대한 사전 지식을 나타낼 수 있다. 특히 사전 정보는 환경 Ei 및 활동 Yj의 각 결합에 대한 확률 P(Yj,Ei)을 출력할 수 있다. 확률은 환경과 활동 쌍을 포함하여 사용자세트로부터 수집된 레벨링 데이터 세트로부터 오프라인으로 추정될 수 있다. 또 다른 예를 들면, 공통 환경 및 활동에 대한 정보는 애플리케이션 계층에서 사용자로부터 수집되어 미들웨어로 전달될 수 있다. 또 다른 예를 들면, pji=P(Yj,Ei)의 값은 다음과 같이 선택될 수 있다:
Figure pct00001
여기서 환경 Ei, i=1,...,9은 차/버스, 집, 미팅/강의, 사무실, 외부, 레스토랑/펍, 가게, 거리/도로 및 기차/메트로이다. 활동 Yj, i=1,...,7은 유휴/정지, 걷기, 달리기, 기차/메트로/트램, 자동차/버스/오토바이크, 바이시클링 및 스케이트보딩이다. 다른 예를 들면 확률 대신에 pji 환경-활동쌍의 허용만을 나타내는 1 또는 0 들 일 수 있다.
일 실시예에서, 미들웨어는 수학식
Figure pct00002
(여기서
Figure pct00003
는 이전 시간으로부터의 환경과 활동 결합에 대한 확률)을 최대화하는 환경과 활동 결합을 선택함으로써 결정 레벨 데이터 융합을 수행할 수 있다. 이것은 애플리케이션 계층으로 더 전달된다. 상기 수학식을 최대화하는 일은 항의 로그의 합을 최대화함으로서, 즉
Figure pct00004
(여기서 로그는 예를 들면 자연 로그)를 최대화함으로써 행해질 수 있다는 데에 주목할 수 있다.
도 8은 실시예에 따라서 센서 프로세서(78)를 위한 마이크로제어기 구조 예를 도시한다. 도 8에 도시된 바와 같이, 센서 프로세서(78)는 프로세서(70)와의 인터페이스를 정의하는 통신 프로토콜을 포함할 수 있다. 소정 경우에, 통신 프로토콜은 프로세서(70)와 인터페이스하기 위한 직렬 또는 전송 프로토콜(100)일 수 있다. 또한 센서 프로세서(78)는 데이터 레지스터(112)(예를 들면 근접도, 광, 특징 벡터 등), 시스템 레지스터(114)(예를 들면 센서 제어, 센서 상태, 콘텍스트 제어, 콘텍스트 상태 등) 및 대응한 콘텍스트 리스트(116)(예를 들면 환경, 활동, 사용자 방위, 제스처 등)를 포함한 호스트 인터페이스(110)면 레지스터 매핑된 인터페이스)를 포함할 수 있다. 또한 센서 프로세서(78)는 이벤트 관리 및 제어를 다루기 위한 모듈(120)을, 그리고 대응한 알고리즘으로써 센서 사전처리, 다양한 하드웨어 가속화된 신호 처리 동작, 콘텍스트 감지 및/또는 센서 융합 동작을 다루기 위한 융합 코어(130)를 포함할 수 있다. 따라서 융합 코어(130)는 예를 들면 센서 융합 모듈, 콘텍스트 감지 모듈, DSP 등과 같은 서브모듈을 포함할 수 있다. 관리 모듈(120)과 융합 코어(130)의 각각은 각 물리젝 센서의 하드웨어와 통신이 전달되는 하드웨어 인터페이스(150) 및 센서 특정적 펌웨어 모듈(140)과 통신할 수 있다.
따라서 소정 실시예는 기저대 하드웨어로 센서 어레이를 연결하기 위해 단일 인터페이스를 사용할 수 있다. 레지스터 매핑 인터페이스를 가진 고속 I2C/SPI 직렬 통신 프로토콜은 INT(interrupt signal) 기반인 통신과 함께 사용될 수 있다. 또한 호스트 자원(예를 들면 주 프로세서)은 또한 필요한 범위까지 포함될 수 있다. 따라서 소정 실시에는 비교적 간단한 린 센서 커널 드라이버(lean sensor kernel drivers)를 제공할 수 있다. 예를 들면 실시에는 사전처리된 센서 데이터 및 이벤트 만을 판독할 수 있고, 보다 높은 운영체제 계층으로 센서 구조적 추상화를 제공할 수 있다. 커널 드라이버는 센서 하드웨어 변경으로 인한 변경을 필요로 하지 않을 수 있고, 미들웨어 및 보다 높은 운영체제 계층에서 최소 구조적 영향을 느낄 수 있다. 소정 실시예에서, 센서 프로세서는 호스트로 사전처리된 데이터를 전달할 수 있다. 이것은 센서 데이터의 유닛 변환, 스케일링 및 사전처리가 마이크로제어기 레벨에서 수행될 수 있는 동안에 데이터율의 감소, 그리고 호스트 엔진측에서 감소된 처리에 의해 특징지어질 수 있다. 실시간 센서 및 이벤트 처리에 근접한 지원을 위해 마이크로제어기 레벨에서 센서 데이터 상에 특수/복합 DSP 알고리즘을 수행할 수 있다. 따라서 센서 데이터는 보다 신속하고 보다 정확한 응답과 함께 보다 높은 데이터율로써 처리될 수 있다. 소정 경우, 호스트 응답 시간을 또한 더 예측할 수 있다.
소정 실시예에서, 개선된 에너지 관리가 또한 서브시스템 레벨에 제공될 수 있다. 예를 들면 센서 전력 관리는 하드웨어 레벨에서 행해질 수 있고, 센서 제어 및 관리자 모듈은 전력을 절약하면서 성능을 개선하도록 센서 온/오프 횟수를 최적화할 수 있다. 또한 연속되고 적합한 콘텍스트 감지가 가능하다. 콘텐스트 감지, 이벤트 검출, 제스처 결정 알고리즘 등은 호스트 엔진측에서 실행되기 보다는 적은 전력을 사용하여 연속으로 실행될 수 있다. 따라서 전력 절약을 위한 적응형 감지를 이용할 수 있다. 소정 실시에에서, 이벤트/제스터 검출은 마이크로제어기 레벨에서 수행될 수 있다. 소정 실시예에서, 가속도계 데이터는 경사 보상 및 범위 교정을 수행하는데 사용될 수 있다. 따라서 콘텍스트 추출 및 연속 콘텍스트 감지는 다양한 콘텍스트에 이용될 수 있다. 예를 들면 환경 콘텍스트(내부/외부, 집/사무실, 거리/도로 등), 사용자 콘텍스트(활동/유휴, 앉기/걷기/달리기/사이클링/컴퓨팅 등), 그리고 단말 콘텍스트(활동/유휴, 포켓/책상, 충전, 장착, 풍경/초상화 등)가 있다. 따라서 콘텍스트 신뢰도는 콘텍스트가 상부 운영체제 계층으로 전달됨에 따라, 그리고 가상 센서와의 추가 콘텍스트 융합이 행해질 때에 증가될 수 있다. 따라서 예를 들면, 소정 경우에 사용자에게 제공될 수 있는 서비스를 향상시키는데 사용될 수 있는 사용자 환경의 현 콘텍스트를 결정하려는 시도를 보다 정확히 결정할 수 있다. 특정 예를 들면, 사용자가 특정 패턴으로 움직이는 것을 가리키도록 물리적 센서 데이터를 추출할 수 있고, 또한 이 데이터는 모션의 방향 및 심지어 시작점과 관련된 위치를 가리킬 수 있다. 그러면 물리적 센서 데이터는 대응한 위치에서 스케줄링된 특정 미팅으로 이송 중인지를 결정하기 위해 현재 시간 및 사용자 컬렌더와 같은 가상 센서 데이터와 융합될 수 있다. 따라서 실시예에 따라 센서 데이터 융합을 수행함으로써, 주 프로세서를 과하게 로딩하지 않는 방식으로 행해질 수 있고, 사용자의 콘텍스트에 대한 보다 정확한 결정을 행할 수 있다.
기저대 하드웨어 서브시스템 레벨에서 콘텍스트 추출외에, 소정 실시예는 분산 콘텍스트 추출 및 융합을 더 가능하게 할 수 있다. 제1 레벨의 연속 콘텍스트 추출 및 융합은 연속된 센서 사전처리, 센서 관리, 콘텍스트 추출, 그리고 적절할 시에 주 프로세서와의 통신을 수행하도록 구성된 전용 저전력 센서 프로세서에서 물리적 센서 데이터에 대해 수행될 수 있다. 주 프로세서는 기본 계층, 미들웨어 및 애플리케이션 계층을 관리할 수 있고, 센서 프로세서로부터의 물리적 센서와 관련된 콘텍스트 정보는 보다 강건하고 정확하며 결정적인 콘텍스트 정보를 제공하기 위해 기본 계층, 미들웨어 및/또는 애플리케이션 계층에서 가상 센서 데이터(클록, 칼렌더, 장치 이벤트 등)와 융합될 수 있다. 모든 운영체제 계층에서, 다양한 실시예는 개선된 장치 성능을 최적화 및 전달하기 위해 콘텍스트를 기반으로 결정을 할 수 있다. 또한 소정 실시예는 장치 콘텍스트를 기반으로 직관적이며 지능적인 사용자 인터페이스로써, 사전행동적인 콘텍스트 기반 서비스를 제공하기 위해 애플리케이션 및 서비스가 콘텍스트 정보를 이용하게 할 수 있다.
도 9는 실시예에 따른 방법 및 프로그램 제품의 흐름도이다. 흐름도의 각 블록, 그리고 흐름도에서 블록 결합은 하드웨어, 펌웨어, 프로세서, 회로 및/또는 하나 이상의 컴퓨터 프로그램 인스트럭션을 포함한 소프트웨어의 실행과 관련된 다른 장치와 같은 다양한 수단으로써 구현될 수 있다는 것을 알 것이다. 예를 들면 전술한 하나 이상의 절차는 컴퓨터 프로그램 인스트럭션에 의해 구현될 수 있다. 이와 관련하여, 전술한 절차를 구현하는 컴퓨터 프로그램 인스트럭션은 실시예를 사용하는 장치의 메모리 장치에 의해 저장되며 장치에서 프로세서에 의해 실행될 수 있다. 알 수 있는 바와 같이, 이러한 임의 컴퓨터 프로그램 인스트럭션은 머신을 생성하기 위해 컴퓨터 또는 다른 프로그램가능 장치(예를 들면 하드웨어)로 로딩될 수 있어, 최종 컴퓨터 또는 다른 프로그램가능 장치는 흐름도 블록(들)에 명시된 기능을 구현한다. 또한 이들 컴퓨터 프로그램 인스트럭션은 컴퓨터 또는 다른 프로그램가능 장치가 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독가능 메모리에 저장될 수 있어, 컴퓨터 판독가능 메모리에 저장된 인스트럭션은 흐름도 블록(들)에 명시된 기능을 구현하는 실행의 제조물품을 생성한다. 또한 컴퓨터 프로그램 인스트럭션은 컴퓨터 구현 처리를 생성하기 위해 컴퓨터 또는 다른 프로그램가능 장치 상에서 일련의 동작을 수행하게 하기 위해 컴퓨터 또는 다른 프로그램가능 장치 상으로 로딩될 수 있으므로, 컴퓨터 또는 다른 프로그램가능 장치 상에서 실행되는 인스트럭션은 흐름도 블록(들)에 명시된 기능을 구현하기 위한 동작을 제공한다.
따라서 흐름도 블록은 명시된 기능을 수행하기 위한 수단의 결합, 명시된 기능을 수행하기 위한 동작의 결합, 그리고 명시된 기능을 수행하기 위한 프로그램 인스트럭션 수단을 지원한다. 또한 흐름도의 하나 이상의 블록, 흐름도에서 블록 결합은 명시된 기능을 수행하는 특정 목적 하드웨어기반 컴퓨터 시스템, 또는 특정 목적 하드웨어와 컴퓨터 인스트럭션의 결합에 의해 구현될 수 있다는 것을 알 것이다.
이와 관련하여, 일 실시예에 따른 방법은 도 9에 도시된 바와 같이 동작(200)에서 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하는 단계를 포함할 수 있다. 방법은 동작(210)에서 하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하는 단계, 동작(220)에서 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계를 더 포함할 수 있다.
소정 실시예에서, 전술한 동작의 일정 동작은 후술하는 바와 같이 변경되거나 또는 더 증폭될 수 있다. 더욱이 소정 실시예에서, 추가적으로 선택적인 동작을 또한 포함할 수 있다(도 9에 대시선으로 도시된 예). 변경, 선택적 추가 또는 증폭의 각각은 단지 전술한 동작과 함게, 또는 여기에 기술된 특징들 중에 임의 다른 것들과 결합하여 포함될 수 있다는 것을 알아야 한다. 실시예에서, 방법은 동작(230)에서 콘텍스트 융합의 결과를 기반으로 물리적 센서 데이터 및 가상 센서 데이터를 제공하는 센서와 통신하여 장치와 관련된 콘텍스트를 결정하는(또는 이에 대한 결정을 하게 하는) 단계를 더 포함할 수 있다. 소정 실시예에서, 물리적 센서 데이터를 수신하는 단계는 하나 이상의 물리적 센서와 통신하여 프로세서에서 물리적 센서 데이터를 수신하는 단계를 포함할 수 있다. 또한 프로세서는 가상 센서 데이터를 수신하고 수신된 가상 센서 데이터와 수신된 물리적 센서 데이터의 콘텍스트 융합을 수행하기 위해 하나 이상의 가상 센서와 통신할 수 있다. 소정 실시예에서, 물리적 센서 데이터를 수신하는 단계는 하나 이상의 물리적 센서와 통신하여 센서 프로세서로부터 물리적 센서 데이터를 수신하는 단계를 포함할 수 있다. 센서 프로세서는 가상 센서 데이터를 수신하고 수신된 가상 센서 데이터와 수신된 물리적 센서 데이터의 콘텍스트 융합을 수행하도록 구성된 프로세서와 통신한다. 소정 경우, 센서 프로세서는 제1 계층의 콘텍스트 융합을 수행하도록 구성될 수 있다. 이러한 경우, 물리적 센서 데이터를 수신하는 단계는 제1 계층의 콘텍스트 융합의 결과를 수신하고, 가상 센서 데이터와 함께 수신된 물리적 센서 데이터의 콘텍스트 융합을 수행하는 것을 더 포함할 수 있다. 실시예에서, 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는 제1 운영체제 계층에서 제1 계층의 가상 센서 데이터 세트와 수신된 물리적 센서 데이터의 제1 레벨 콘텍스트 융합을 수행하는 단계와, 제2 운영체제 계층에서 제2 가상 센서 데이터 세트와 제1 레벨 콘텍스트 융합 결과의 제2 레벨 콘텍스트 융합을 수행하는 단계를 포함할 수 있다. 소정 경우, 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는 하드웨어 레벨에서 콘텍스트 융합을 수행하는 단계, 특징 레벨에서 콘텍스트 융합을 수행하는 단계, 그리고 미들웨어에서 콘텍스트 융합을 수행하는 단계를 포함할 수 있다. 소정 예에서, 운영체제 레벨에서 물리적 센서 데이터와 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는 하드웨어 레벨에서 콘텍스트 융합을 수행하는 단계, 특징 레벨에서 콘텍스트 융합을 수행하는 단계, 미들웨어에서 콘텍스트 융합을 수행하는 단계, 및 애플리케이션 계층에서 콘텍스트 융합을 수행하는 단계 중의 하나 이상을 포함할 수 있다.
실시예에서, 상기 도 9의 방법을 수행하기 위한 장치는 전술한 동작(200-230)의 일부 또는 각각을 수행하도록 구성된 프로세서(예를 들면 프로세서 70)를 구비할 수 있다. 프로세서는 예를 들면 하드웨어구현 논리 기능을 수행하거나, 저장된 인스트럭션을 실행하거나, 또는 각 동작을 수행하기 위한 알고리즘을 실행함으로써 동작(200-230)을 수행하도록 구성될 수 있다. 이 대신에, 장치는 전술한 각 동작을 수행하기 위한 수단을 포함할 수 있다. 이와 관련하여, 실시예에 따라서, 동작(200-230)을 수행하기 위한 수단 예는 예를 들면 프로세서(70), 융합 관리자(80), 및/또는 전술한 바와 같이 정보를 처리하기 위한 알고리즘을 실행하거나 또는 인스트럭션을 실행하기 위한 회로 또는 장치를 구비할 수 있다.
이들 발명이 적용되는 분야에 통상의 지식을 가진 자는 여기에 설명한 다수의 변형 및 다른 실시예로 인하여 전술한 설명 및 첨부 도면에 제시된 티칭의 이점을 가진다는 것을 알 것이다. 따라서 본 발명은 개시된 특정 실시예로 제한되지 않으며, 변형 및 다른 실시예는 첨부된 청구범위의 범주 내에 포함된다는 것을 알 것이다. 또한 전술한 설명 및 관련 도면이 요소 및/또는 기능의 소정 결합 예라는 상황에서 실시예를 기술하였지만, 요소 및/또는 기능의 상이한 결합은 첨부된 청구범위의 범주로부터 벗어나지 않고서도 다른 실시에에 의해 제공될 수 있다는 것을 알아야 한다. 이와 관련하여 예를 들면, 이들과 상이한 요소 및/또는 기능의 결합이 또한 첨부된 청구범위의 일부에서 설명될 수 있는 것으로 예상된다. 여기에 특정 용어를 사용하였지만, 그들은 일반적인 설명을 위해 사용된 것으로 제한하려는 것이 아니다.

Claims (22)

  1. 하나 이상의 물리적 센서(physical sensors)로부터 추출된 물리적 센서 데이터를 수신하는 단계와,
    하나 이상의 가상 센서(virtual sensors)로부터 추출된 가상 센서 데이터를 수신하는 단계와,
    운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합(context fusion)을 수행하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 콘텍스트 융합의 결과에 기초하여 상기 물리적 센서 데이터와 상기 가상 센서 데이터를 제공하는 센서들과 통신하는 장치와 관련된 콘텍스트에 대한 결정을 할 수 있도록 하는 단계를 더 포함하는
    방법.
  3. 제1항에 있어서,
    상기 물리적 센서 데이터를 수신하는 단계는, 상기 하나 이상의 물리적 센서와 통신하는 프로세서에서 상기 물리적 센서 데이터를 수신하는 단계를 포함하고, 상기 프로세서는 또한 상기 가상 센서 데이터를 수신하고 수신된 상기 가상 센서 데이터와 수신된 상기 물리적 센서 데이터의 콘텍스트 융합을 수행하기 위해 상기 하나 이상의 가상 센서와 통신하는
    방법.
  4. 제1항에 있어서,
    상기 물리적 센서 데이터를 수신하는 단계는, 상기 하나 이상의 물리적 센서와 통신하는 센서 프로세서로부터 상기 물리적 센서 데이터를 수신하는 단계를 포함하고, 상기 센서 프로세서는 상기 가상 센서 데이터를 수신하고 수신된 상기 가상 센서 데이터와 수신된 상기 물리적 센서 데이터의 콘텍스트 융합을 수행하도록 구성된 프로세서와 통신하는
    방법.
  5. 제4항에 있어서,
    상기 센서 프로세서는 제1 계층의 콘텍스트 융합을 수행하도록 구성되고, 상기 물리적 센서 데이터를 수신하는 단계는 상기 제1 계층의 콘텍스트 융합의 결과를 수신하는 단계를 포함하고, 상기 콘텍스트 융합을 수행하는 단계는 수신된 상기 물리적 센서 데이터와 상기 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계를 포함하는
    방법.
  6. 제1항에 있어서,
    상기 운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는,
    제1 운영체제 계층에서 제1 가상 센서 데이터 세트와 수신된 상기 물리적 센서 데이터의 제1 레벨 콘텍스트 융합을 수행하는 단계와, 제2 운영체제 계층에서 제2 가상 센서 데이터 세트와 상기 제1 레벨 콘텍스트 융합 결과의 제2 레벨 콘텍스트 융합을 수행하는 단계를 포함하는
    방법.
  7. 제1항에 있어서,
    상기 운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는, 하드웨어 레벨에서 콘텍스트 융합을 수행하는 단계와, 특징 레벨(feature level)에서 콘텍스트 융합을 수행하는 단계와, 미들웨어(middleware)에서 콘텍스트 융합을 수행하는 단계를 포함하는
    방법.
  8. 제1항에 있어서,
    상기 운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하는 단계는, 하드웨어 레벨에서 콘텍스트 융합을 수행하는 단계와, 특징 레벨에서 콘텍스트 융합을 수행하는 단계와, 미들웨어에서 콘텍스트 융합을 수행하는 단계와, 애플리케이션 계층(application layer)에서 콘텍스트 융합을 수행하는 단계 중 하나 이상을 포함하는
    방법.
  9. 적어도 하나의 프로세서와,
    컴퓨터 프로그램 코드를 포함한 적어도 하나의 메모리를 포함하되,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 적어도 하나의 프로세서와 함께 상기 장치로 하여금 적어도,
    하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하고,
    하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하고,
    운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하게 하는
    장치.
  10. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 상기 콘텍스트 융합의 결과에 기초하여 상기 물리적 센서 데이터와 상기 가상 센서 데이터를 제공하는 센서와 통신하는 장치와 관련된 콘텍스트에 대한 결정을 수행하게 하도록 더 구성되는
    장치.
  11. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 상기 하나 이상의 물리적 센서와 통신하는 프로세서에서 상기 물리적 센서 데이터를 수신함으로써 상기 물리적 센서 데이터를 수신하게 하도록 구성되고, 상기 프로세서는 또한 상기 가상 센서 데이터를 수신하고, 수신된 상기 가상 센서 데이터와 수신된 상기 물리적 센서 데이터의 콘텍스트 융합을 수행하게 하기 위해 상기 하나 이상의 가상 센서와 통신하는
    장치.
  12. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 상기 하나 이상의 물리적 센서와 통신하는 센서 프로세서로부터 상기 물리적 센서 데이터를 수신함으로써 상기 물리적 센서 데이터를 수신하게 하도록 더 구성되고, 상기 센서 프로세서는 상기 프로세서와 통신하며, 상기 프로세서는 상기 가상 센서 데이터를 수신하며, 수신된 상기 가상 센서 데이터와 수신된 상기 물리적 센서 데이터의 콘텍스트 융합을 수행하도록 구성되는
    장치.
  13. 제12항에 있어서,
    상기 센서 프로세서는 제1 계층의 콘텍스트 융합을 수행하도록 구성되고, 상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 상기 제1 계층의 콘텍스트 융합의 결과를 수신하도록 더 구성되고, 상기 콘텍스트 융합을 수행하는 것은, 상기 가상 센서 데이터와 수신된 상기 물리적 센서 데이터의 콘텍스트 융합을 수행하는 것을 포함하는
    장치.
  14. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 제1 운영체제 계층에서 제1 가상 센서 데이터 세트와 수신된 상기 물리적 센서 데이터의 제1 콘텍스트 융합 레벨을 수행하고, 제2 운영체제 계층에서 제2 가상 센서 데이터 세트와 상기 제1 레벨 콘텍스트 융합 결과의 제2 레벨 콘텍스트 융합을 수행함으로써 콘텍스트 융합을 수행하도록 더 구성되는
    장치.
  15. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 하드웨어 레벨에서 콘텍스트 융합을 수행하고, 특징 레벨에서 콘텍스트 융합을 수행하고, 미들웨어에서 콘텍스트 융합을 수행함으로서 콘텍스트 융합을 수행하도록 더 구성되는
    장치.
  16. 제9항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서와 함께 상기 장치로 하여금, 하드웨어 레벨에서 콘텍스트 융합을 수행하고, 특징 레벨에서 콘텍스트 융합을 수행하고, 미들웨어에서 콘텍스트 융합을 수행하고, 그리고 애플리케이션 계층에서 콘텍스트 융합을 수행하는 것들 중 하나 이상을 포함하는 콘텍스트 융합을 수행하도록 더 구성되는
    장치.
  17. 제9항에 있어서,
    상기 장치는 모바일 단말이고, 상기 모바일 단말의 적어도 일부 기능의 사용자 제어를 가능하게 하도록 구성된 사용자 인터페이스 회로를 더 포함하는
    장치.
  18. 저장된 컴퓨터 실행가능 프로그램 코드 부분을 가진 적어도 하나의 컴퓨터 판독가능 저장매체를 구비한 컴퓨터 프로그램제품에 있어서,
    상기 컴퓨터 실행가능 프로그램 코드 부분은,
    하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션과,
    하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션과,
    운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하기 위한 프로그램 코드 인스트럭션을 포함하는
    컴퓨터 프로그램제품.
  19. 제18항에 있어서,
    콘텍스트 융합의 결과에 기초하여 상기 물리적 센서 데이터와 상기 가상 센서 데이터를 제공하는 센서와 통신하는 장치와 관련된 콘텍스트에 관한 결정을 할 수 있도록 하기 위한 프로그램 코드 인스트럭션을 더 포함하는
    컴퓨터 프로그램제품.
  20. 제18항에 있어서,
    상기 운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하기 위한 상기 프로그램 코드 인스트럭션은, 제1 운영체제 계층에서 제1 가상 센서 데이터 세트와 수신된 상기 물리적 센서 데이터의 제1 레벨 콘텍스트 융합을 수행하기 위한 인스트럭션과, 제2 운영체제 계층에서 제2 가상 센서 데이터 세트와 상기 제1 레벨 콘텍스트 융합 결과의 제2 레벨 콘텍스트 융합을 수행하기 위한 인스트럭션을 포함하는
    컴퓨터 프로그램 제품.
  21. 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션과,
    하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하기 위한 프로그램 코드 인스트럭션과,
    운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하기 위한 프로그램 코드 인스트럭션을 포함하는
    컴퓨터 프로그램.
  22. 하나 이상의 물리적 센서로부터 추출된 물리적 센서 데이터를 수신하기 위한 수단과,
    하나 이상의 가상 센서로부터 추출된 가상 센서 데이터를 수신하기 위한 수단과,
    운영체제 레벨에서 상기 물리적 센서 데이터 및 상기 가상 센서 데이터의 콘텍스트 융합을 수행하기 위한 수단을 포함하는
    장치.
KR1020127032499A 2010-05-13 2010-05-13 콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품 KR101437757B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2010/001109 WO2011141761A1 (en) 2010-05-13 2010-05-13 Method and apparatus for providing context sensing and fusion

Publications (2)

Publication Number Publication Date
KR20130033378A true KR20130033378A (ko) 2013-04-03
KR101437757B1 KR101437757B1 (ko) 2014-09-05

Family

ID=44914001

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127032499A KR101437757B1 (ko) 2010-05-13 2010-05-13 콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품

Country Status (6)

Country Link
US (1) US20130057394A1 (ko)
EP (1) EP2569924A4 (ko)
KR (1) KR101437757B1 (ko)
CN (1) CN102893589B (ko)
TW (1) TW201218736A (ko)
WO (1) WO2011141761A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103210410B (zh) 2010-09-23 2016-08-10 诺基亚技术有限公司 用于情境确定的方法和装置
CN103685714B (zh) * 2012-09-26 2016-08-03 华为技术有限公司 终端日志生成方法和终端
US9740773B2 (en) 2012-11-02 2017-08-22 Qualcomm Incorporated Context labels for data clusters
US9336295B2 (en) * 2012-12-03 2016-05-10 Qualcomm Incorporated Fusing contextual inferences semantically
JP6257756B2 (ja) 2013-06-12 2018-01-10 コンヴィーダ ワイヤレス, エルエルシー 近接サービスのためのコンテキストおよび電力制御情報管理
CN106170969B (zh) 2013-06-21 2019-12-13 康维达无线有限责任公司 上下文管理
US10791171B2 (en) 2013-07-10 2020-09-29 Convida Wireless, Llc Context-aware proximity services
US9179251B2 (en) 2013-09-13 2015-11-03 Google Inc. Systems and techniques for colocation and context determination
EP2854383B1 (en) * 2013-09-27 2016-11-30 Alcatel Lucent Method And Devices For Attention Alert Actuation
WO2015149203A1 (en) * 2014-03-31 2015-10-08 Intel Corporation Inertial measurement unit for electronic devices
US11016543B2 (en) * 2014-06-04 2021-05-25 Moduware Pty Ltd Battery-powered platform for interchangeable modules
US20170102787A1 (en) * 2014-06-28 2017-04-13 Intel Corporation Virtual sensor fusion hub for electronic devices
US10416750B2 (en) * 2014-09-26 2019-09-17 Qualcomm Incorporated Algorithm engine for ultra low-power processing of sensor data
US9928094B2 (en) * 2014-11-25 2018-03-27 Microsoft Technology Licensing, Llc Hardware accelerated virtual context switching
CN104683764B (zh) * 2015-02-03 2018-10-16 青岛大学 基于fpga图像压缩技术的3g远程传输网络摄像头
WO2016197009A1 (en) 2015-06-05 2016-12-08 Vertex Pharmaceuticals Incorporated Triazoles for the treatment of demyelinating diseases
US9877128B2 (en) 2015-10-01 2018-01-23 Motorola Mobility Llc Noise index detection system and corresponding methods and systems
US10419540B2 (en) 2015-10-05 2019-09-17 Microsoft Technology Licensing, Llc Architecture for internet of things
US10289381B2 (en) 2015-12-07 2019-05-14 Motorola Mobility Llc Methods and systems for controlling an electronic device in response to detected social cues
CN106060626B (zh) * 2016-05-19 2019-02-15 网宿科技股份有限公司 机顶盒及在机顶盒上实现虚拟传感器的方法
WO2018106641A1 (en) 2016-12-06 2018-06-14 Vertex Pharmaceuticals Incorporated Pyrazoles for the treatment of demyelinating diseases
WO2018106643A1 (en) 2016-12-06 2018-06-14 Vertex Pharmaceuticals Incorporated Heterocyclic azoles for the treatment of demyelinating diseases
WO2018106646A1 (en) 2016-12-06 2018-06-14 Vertex Pharmaceuticals Incorporated Aminotriazoles for the treatment of demyelinating diseases
CN106740874A (zh) * 2017-02-17 2017-05-31 张军 一种基于多核处理器的智能行车预警感知系统
US10395515B2 (en) * 2017-12-28 2019-08-27 Intel Corporation Sensor aggregation and virtual sensors
US11330450B2 (en) 2018-09-28 2022-05-10 Nokia Technologies Oy Associating and storing data from radio network and spatiotemporal sensors
CN109857018B (zh) * 2019-01-28 2020-09-25 中国地质大学(武汉) 一种数字传感器软模型系统
JP7225876B2 (ja) * 2019-02-08 2023-02-21 富士通株式会社 情報処理装置、演算処理装置および情報処理装置の制御方法
CN113454970B (zh) * 2019-03-21 2023-10-10 杭州飞步科技有限公司 可扩展数据融合架构及相关产品
CN113949746A (zh) * 2021-09-07 2022-01-18 捷开通讯(深圳)有限公司 物联网虚拟传感器实现方法、装置及智能终端

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7688306B2 (en) * 2000-10-02 2010-03-30 Apple Inc. Methods and apparatuses for operating a portable device based on an accelerometer
JP4838464B2 (ja) 2001-09-26 2011-12-14 東京エレクトロン株式会社 処理方法
US6772099B2 (en) * 2003-01-08 2004-08-03 Dell Products L.P. System and method for interpreting sensor data utilizing virtual sensors
US20040259536A1 (en) * 2003-06-20 2004-12-23 Keskar Dhananjay V. Method, apparatus and system for enabling context aware notification in mobile devices
US7327245B2 (en) * 2004-11-22 2008-02-05 Microsoft Corporation Sensing and analysis of ambient contextual signals for discriminating between indoor and outdoor locations
US8130193B2 (en) * 2005-03-31 2012-03-06 Microsoft Corporation System and method for eyes-free interaction with a computing device through environmental awareness
EP2127407A4 (en) * 2007-03-02 2015-03-11 Aegis Mobility Inc MANAGING MOBILE DEVICE COMMUNICATION SESSIONS TO REDUCE USER DISTRACTION
US9357052B2 (en) 2008-06-09 2016-05-31 Immersion Corporation Developing a notification framework for electronic device events

Also Published As

Publication number Publication date
WO2011141761A1 (en) 2011-11-17
KR101437757B1 (ko) 2014-09-05
TW201218736A (en) 2012-05-01
CN102893589A (zh) 2013-01-23
CN102893589B (zh) 2015-02-11
US20130057394A1 (en) 2013-03-07
EP2569924A1 (en) 2013-03-20
EP2569924A4 (en) 2014-12-24

Similar Documents

Publication Publication Date Title
KR101437757B1 (ko) 콘텍스트 감지 및 융합을 위한 방법, 장치 및 컴퓨터 프로그램제품
US9443202B2 (en) Adaptation of context models
JP7265003B2 (ja) ターゲット検出方法、モデル訓練方法、装置、機器及びコンピュータプログラム
JP6363239B2 (ja) パワー効率のよいコンテキストアウェア推定のための適応型センササンプリング
US20190230210A1 (en) Context recognition in mobile devices
US9824684B2 (en) Prediction-based sequence recognition
CN108228270B (zh) 启动资源加载方法及装置
KR20190130636A (ko) 기계번역 방법, 장치, 컴퓨터 기기 및 기억매체
US20120109862A1 (en) User device and method of recognizing user context
CN105264456B (zh) 运动围栏
CN103460221A (zh) 用于在移动装置中使用似然函数值的组合对用户活动进行分类的系统、方法和设备
CN109256147B (zh) 音频节拍检测方法、装置及存储介质
EP2795538A1 (en) A method, an apparatus and a computer software for context recognition
KR20160006236A (ko) 시간 기준 특징들의 시간적 스케일링을 이용한 활동 분류를 위한 방법들, 디바이스들 및 장치들
US20140136696A1 (en) Context Extraction
CN103189853A (zh) 用于提供高效情境分类的方法和装置
CN112673367A (zh) 用于预测用户意图的电子设备和方法
WO2024001599A1 (zh) 用于预测用户的年龄段或性别的方法、系统、装置和介质
CN112488157A (zh) 一种对话状态追踪方法、装置、电子设备及存储介质
CN112948763B (zh) 件量预测方法、装置、电子设备及存储介质
CN117115596A (zh) 对象动作分类模型的训练方法、装置、设备及介质
CN117010386A (zh) 一种对象名称的识别方法、装置以及存储介质
CN117370657A (zh) 物品推荐的方法、装置、设备及存储介质
CN115995014A (zh) 一种喇叭单体的检测方法、音频检测的方法以及相关装置
CN116959407A (zh) 一种读音预测方法、装置及相关产品

Legal Events

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