KR102416985B1 - 가상 비전 시스템 - Google Patents

가상 비전 시스템 Download PDF

Info

Publication number
KR102416985B1
KR102416985B1 KR1020217020077A KR20217020077A KR102416985B1 KR 102416985 B1 KR102416985 B1 KR 102416985B1 KR 1020217020077 A KR1020217020077 A KR 1020217020077A KR 20217020077 A KR20217020077 A KR 20217020077A KR 102416985 B1 KR102416985 B1 KR 102416985B1
Authority
KR
South Korea
Prior art keywords
client device
lens virtual
virtual object
lens
display elements
Prior art date
Application number
KR1020217020077A
Other languages
English (en)
Other versions
KR20210084658A (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 KR1020227022465A priority Critical patent/KR102614536B1/ko
Publication of KR20210084658A publication Critical patent/KR20210084658A/ko
Application granted granted Critical
Publication of KR102416985B1 publication Critical patent/KR102416985B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/10Multimedia information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • 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/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services

Abstract

컨텍스트 기반 증강 현실 시스템을 사용하여, 클라이언트 디바이스 상의 라이브 비디오 피드 위에 증강 현실 요소들을 디스플레이할 수 있다. 증강 현실 요소들은 클라이언트 디바이스에 의해 생성된 다수의 컨텍스트 입력들에 기초하여 선택될 수 있다. 컨텍스트 입력들은 클라이언트 디바이스의 로케이션 데이터 및 미리 구성된 증강 요소들을 갖는 근처의 물리적 장소들의 로케이션 데이터를 포함할 수 있다. 미리 구성된 증강 요소들은 대응하는 물리적 장소의 디자인 스킴을 나타내도록 미리 구성될 수 있다.

Description

가상 비전 시스템{VIRTUAL VISION SYSTEM}
관련 출원들
본 출원은, 2017년 3월 6일자로 출원된 발명의 명칭이 "Context Based Augmented Reality System"인 미국 가출원 번호 제62/467,693호의 우선권 이득을 주장하는, 2017년 7월 19일자로 출원된 발명의 명칭이 "Virtual Vision System"인 미국 특허 출원 제15/654,429호의 계속 출원이고, 그의 우선권의 이득을 주장하며, 이들 출원은 그 전체가 참조로 본 명세서에 포함된다.
기술분야
본 개시내용의 실시예들은 일반적으로 상호작용 콘텐츠(interactive content)를 생성하는 것에 관한 것이고, 더욱 구체적으로는, 컨텍스트 기반 컴퓨터 비전 시스템(context based computer vision system)에 관한 것이며, 이에 제한되는 것은 아니다.
디지털 디바이스들(예를 들어, 스마트폰들, 태블릿들, 랩톱들)은 물리적 장소들(예를 들어, 식당들, 상점들)의 로케이션들을 디스플레이하기 위해 내비게이션 디바이스들로서 사용될 수 있다. 그러나, 이러한 디스플레이들은 종종 상호작용성(interactivity) 및 맞춤화(customization)가 결여되어 있으며, 이는 불량한 사용자 경험을 초래한다.
임의의 특정 요소 또는 행위의 논의를 용이하게 식별하기 위해, 참조 번호에서 최상위 숫자 또는 숫자들은 그 요소 또는 행위가 처음 도입되는 도면("도") 번호를 지칭한다.
도 1은 네트워크를 통해 데이터(예를 들어, 메시지들 및 연관된 콘텐츠)를 교환하기 위한 예시적인 메시징 시스템을 도시하는 블록도이다.
도 2는, 예시적인 실시예들에 따른, 통합된 가상 객체 머신 학습 시스템(integrated virtual object machine learning system)을 갖는 메시징 시스템에 관한 추가 세부사항들을 예시하는 블록도이다.
도 3은, 특정 예시적인 실시예들에 따른, 메시징 서버 시스템의 데이터베이스에 저장될 수 있는 데이터를 예시하는 개략도이다.
도 4는, 통신을 위해 메시징 클라이언트 애플리케이션에 의해 생성된, 일부 실시예들에 따른, 메시지의 구조를 예시하는 개략도이다.
도 5는, 콘텐츠(예를 들어, 단기적 메시지, 및 데이터의 연관된 멀티미디어 페이로드) 또는 콘텐츠 컬렉션(예를 들어, 단기적 메시지 스토리)에의 액세스가 시간-제한될(예를 들어, 단기적으로 될) 수 있는, 예시적인 액세스-제한 프로세스를 예시하는 개략도이다.
도 6은, 일부 예시적인 실시예들에 따른, 도 1의 시스템 내에 제공되는 예시적인 컴포넌트들을 도시하는 블록도이다.
도 7은, 일부 예시적인 실시예들에 따른, 가상 비전 시스템을 구현하기 위한 방법의 흐름도를 도시한다.
도 8은, 일부 예시적인 실시예들에 따른, 렌즈 객체(lens object)를 선택하기 위한 방법의 흐름도를 도시한다.
도 9는, 일부 예시적인 실시예들에 따른, 지리 데이터를 결정하기 위한 방법의 흐름도를 도시한다.
도 10은, 일부 예시적인 실시예들에 따른, 컨텍스트 데이터를 결정하기 위한 방법의 흐름도를 도시한다.
도 11은, 일부 예시적인 실시예들에 따른, 렌즈 객체를 결정하기 위한 방법의 흐름도를 도시한다.
도 12a-12b는, 일부 예시적인 실시예들에 따른, 헤딩 관련 렌즈 객체(heading related lens object)를 구현하기 위한 예시적인 사용자 인터페이스들을 도시한다.
도 13은, 일부 예시적인 실시예들에 따른, 실외 관련 렌즈 객체(outdoors related lens object)를 구현하기 위한 예시적인 사용자 인터페이스를 도시한다.
도 14는, 일부 예시적인 실시예들에 따른, 물리적 장소 관련 렌즈 객체(physical place related lens object)의 변형을 구현하기 위한 예시적인 사용자 인터페이스를 도시한다.
도 15는, 일부 예시적인 실시예들에 따른, 물리적 장소 관련 렌즈 객체의 변형을 구현하기 위한 예시적인 사용자 인터페이스를 도시한다.
도 16은, 일부 예시적인 실시예들에 따른, 도시된 아이템 관련 렌즈 객체의 변형을 구현하기 위한 예시적인 사용자 인터페이스를 도시한다.
도 17은 본 명세서에 설명된 다양한 하드웨어 아키텍처들과 함께 이용될 수 있는 대표적인 소프트웨어 아키텍처를 예시하는 블록도이다.
도 18은, 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터의 명령어들을 판독하고 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행할 수 있는, 일부 예시적인 실시예들에 따른, 머신의 컴포넌트들을 예시하는 블록도이다.
이하의 설명은 본 개시내용의 예시적인 실시예들을 구현하는 시스템들, 방법들, 기법들, 명령어 시퀀스들, 및 컴퓨팅 머신 프로그램 제품들을 포함한다. 다음의 설명에서는, 설명의 목적들을 위하여, 수많은 특정 세부사항들이 발명 요지의 다양한 실시예들의 이해를 제공하기 위하여 기재되어 있다. 그러나, 발명 요지의 실시예들은 이 특정 세부사항들 없이 실시될 수 있다는 것이 본 기술분야의 통상의 기술자들에게 분명할 것이다. 일반적으로, 잘 알려진 명령어 인스턴스들(instruction instances), 프로토콜들, 구조들, 및 기법들은 반드시 상세하게 도시되지는 않는다.
디지털 디바이스들(예를 들어, 스마트폰들, 태블릿들, 랩톱들)은 물리적 장소들(예를 들어, 식당들, 경기장들)의 로케이션들을 디스플레이하기 위해 내비게이션 디바이스들로서 사용될 수 있지만, 이러한 디스플레이들은 종종 상호작용성 및 맞춤화가 결여되어 있으며, 이는 불량한 사용자 경험을 초래한다. 사용자 경험을 개선하기 위해, 주어진 사용자의 상황 및 지리적 로케이션의 컨텍스트에 기초하는 라이브 피드(예를 들어, 비디오 스트림) 상에 커스텀 디스플레이 요소들을 디스플레이하기 위해 컨텍스트 기반 증강 현실(AR) 시스템이 사용될 수 있다. 라이브 비디오 피드(live video feed)가 아래에서 논의되지만, 렌즈 데이터는 유사한 방식으로 단일 이미지들 위의 오버레이를 위해 선택될 수 있다는 것이 인식될 것이다.
일부 예시적인 실시예들에 따르면, 사용자는 자신의 전화 클라이언트 디바이스 상의 애플리케이션을 사용하여, 전화기의 후면 카메라에 의해 캡처되는 라이브 비디오를 볼 수 있다. 비디오는 동적으로 캡처되어 전화기의 스크린 상에 디스플레이된다. 이어서 애플리케이션은 현재 시각, 사용자의 지리적 로케이션, 라이브 피드에서 디스플레이되는 인식된 아이템들, 사용자의 환경의 오디오 데이터, 및/또는 다른 데이터(예를 들어, WiFi 액세스, 블루투스® 비컨 데이터)를 분석함으로써 사용자의 컨텍스트를 결정하여, 라이브 피드 상에 디스플레이를 위한 렌즈를 선택한다. 렌즈는 라이브 피드 상에 디스플레이 요소들을 오버레이하는 비디오 필터이다. 디스플레이 요소들은 사용자가 위치하는 일반적인 영역(예를 들어, 도시, 많은 상점이 있는 쇼핑몰), 사용자의 서브 영역 로케이션(예를 들어, 쇼핑몰 내의 특정 상점)에 대한 맞춤(custom), 또는 근처 로케이션들에 대한 맞춤일 수 있다. 근처 로케이션들은 아래에 더 상세히 논의되는 바와 같이 렌즈가 생성되어 연관된 물리적 장소들이다. 이러한 방식으로, 사용자는 자신의 전화기를 사용하여 라이브 피드를 통해 세계를 보고 사용자 입력이 거의 없거나 전혀 없는 사용자의 컨텍스트에 기초하여 로케이션 특정 또는 물리적 장소 특정 렌즈들을 로딩할 수 있다.
용어 렌즈 객체(예를 들어, 렌즈 가상 객체)는 주어진 렌즈 객체에 특정한 데이터를 포함하거나 참조하는 데이터 또는 가상 객체의 패키지(예를 들어, 클래스의 인스턴스화)를 지칭한다. 데이터는 그것이 렌즈 객체와 함께 저장될 때 포함되는 반면, 데이터는 데이터가 검색될 수 있는 어드레스를 제공함으로써 (예를 들어, 네트워크를 통해, 클라이언트 디바이스에서 국지적으로) 참조된다. 포함되거나 참조되는 데이터는 미리 구성된 요소들(예를 들어, 텍스트, 아바타, 카툰, 화살표), 특정 컨텍스트 파라미터들(예를 들어, 시간, 인식된 아이템들, 일반적인 영역들, 그것의 서브 영역들)과의 연관성들을 포함할 수 있다. 특정 컨텍스트 파라미터들과의 연관성들은 주어진 렌즈 객체를 선택하는 데 사용될 수 있다. 예를 들어, 렌즈 객체는 그것이 주어진 도시에 대한 렌즈 객체인 것을 특정할 수 있고, 클라이언트 디바이스(102)가 그 주어진 도시 내에 있을 때 사용을 위해 선택될 수 있다(예를 들어, GPS 데이터는 클라이언트 디바이스(102)가 그 주어진 도시 내에 있음을 나타낸다). 미리 구성된 디스플레이 요소들의 추가 예들은 아래에서 사용자 인터페이스들을 참조하여 도시된다.
도 1은 네트워크를 통해 데이터(예를 들어, 메시지들 및 연관된 콘텐츠)를 교환하기 위한 예시적인 메시징 시스템(100)을 도시하는 블록도이다. 메시징 시스템(100)은 다수의 클라이언트 디바이스(102)를 포함하고, 이들 각각은 메시징 클라이언트 애플리케이션(104)을 포함하는 다수의 애플리케이션을 호스팅한다. 각각의 메시징 클라이언트 애플리케이션(104)은 네트워크(106)(예를 들어, 인터넷)를 통해 메시징 클라이언트 애플리케이션(104) 및 메시징 서버 시스템(108)의 다른 인스턴스들에 통신가능하게 결합된다.
따라서, 각각의 메시징 클라이언트 애플리케이션(104)은 네트워크(106)를 통해 다른 메시징 클라이언트 애플리케이션(104)과 그리고 메시징 서버 시스템(108)과 데이터를 통신 및 교환할 수 있다. 메시징 클라이언트 애플리케이션들(104) 사이에 그리고 메시징 클라이언트 애플리케이션(104)과 메시징 서버 시스템(108) 사이에 교환되는 데이터는, 기능들(예를 들어, 기능들을 인보크하는 커맨드들)뿐만 아니라, 페이로드 데이터(예를 들어, 텍스트, 오디오, 비디오, 또는 다른 멀티미디어 데이터)를 포함한다.
메시징 서버 시스템(108)은 네트워크(106)를 통해 특정 메시징 클라이언트 애플리케이션(104)에 서버측 기능성을 제공한다. 메시징 시스템(100)의 특정 기능들이 메시징 클라이언트 애플리케이션(104)에 의해 또는 메시징 서버 시스템(108)에 의해 수행되는 것으로서 본 명세서에 설명되지만, 메시징 클라이언트 애플리케이션(104) 또는 메시징 서버 시스템(108) 내의 특정 기능성의 로케이션은 설계 선택사항이라는 것을 인식할 것이다. 예를 들어, 처음에는 특정 기술 및 기능성을 메시징 서버 시스템(108) 내에 배치하지만, 나중에는 클라이언트 디바이스(102)가 충분한 처리 용량을 갖는 경우 이 기술 및 기능성을 메시징 클라이언트 애플리케이션(104)으로 이전(migrate)시키는 것이 기술적으로 바람직할 수 있다.
메시징 서버 시스템(108)은 메시징 클라이언트 애플리케이션(104)에 제공되는 다양한 서비스들 및 동작들을 지원한다. 그러한 동작들은 메시징 클라이언트 애플리케이션(104)에 데이터를 송신하고, 그로부터 데이터를 수신하고, 그에 의해 생성된 데이터를 처리하는 것을 포함한다. 이 데이터는, 예로서, 메시지 콘텐츠, 클라이언트 디바이스 정보, 지오로케이션 정보, 미디어 주석 및 오버레이들(media annotation and overlays), 메시지 콘텐츠 지속 조건들(message content persistence conditions), 소셜 네트워크 정보, 및 라이브 이벤트 정보를 포함할 수 있다. 메시징 시스템(100) 내의 데이터 교환들은 메시징 클라이언트 애플리케이션(104)의 사용자 인터페이스(UI)들을 통해 이용 가능한 기능들을 통해 인보크되고 제어된다.
이제 구체적으로 메시징 서버 시스템(108)을 참조하면, 애플리케이션 프로그래밍 인터페이스(API) 서버(110)가 애플리케이션 서버(112)에 결합되어 프로그램 방식의 인터페이스(programmatic interface)를 제공한다. 애플리케이션 서버(112)는 데이터베이스 서버(118)에 통신가능하게 결합되고, 이는 애플리케이션 서버(112)에 의해 처리되는 메시지들과 연관된 데이터가 저장되는 데이터베이스(120)로의 액세스를 용이하게 한다.
API 서버(110)는 클라이언트 디바이스들(102)과 애플리케이션 서버(112) 사이에서 메시지 데이터(예를 들어, 커맨드들 및 메시지 페이로드들)를 수신하고 송신한다. 특히, API 서버(110)는, 애플리케이션 서버(112)의 기능성을 인보크하기 위해 메시징 클라이언트 애플리케이션(104)에 의해 호출되거나 질의될 수 있는 한 세트의 인터페이스들(예를 들어, 루틴들 및 프로토콜들)을 제공한다. API 서버(110)는, 계정 등록; 로그인 기능성; 애플리케이션 서버(112)를 통한, 특정 메시징 클라이언트 애플리케이션(104)으로부터 다른 메시징 클라이언트 애플리케이션(104)으로의 메시지들의 송신; 메시징 클라이언트 애플리케이션(104)으로부터 다른 메시징 클라이언트 애플리케이션(104)에 의한 가능한 액세스를 위한 메시징 서버 애플리케이션(114)으로의 미디어 파일들(예를 들어, 이미지들 또는 비디오)의 송신; 미디어 데이터의 컬렉션(예를 들어, 스토리)의 설정; 이러한 컬렉션들의 검색; 클라이언트 디바이스(102)의 사용자의 친구들의 목록 검색; 메시지들 및 콘텐츠의 검색; 소셜 그래프로의 그리고 그로부터의 친구들의 추가 및 삭제; 소셜 그래프 내의 친구들의 로케이션; 및 애플리케이션 이벤트들(예를 들어, 메시징 클라이언트 애플리케이션(104)에 관련됨)의 오픈을 포함하는, 애플리케이션 서버(112)에 의해 지원되는 다양한 기능을 노출시킨다.
애플리케이션 서버(112)는 메시징 서버 애플리케이션(114), 이미지 처리 시스템(116), 및 소셜 네트워크 시스템(122)을 포함하는 다수의 애플리케이션 및 서브시스템들을 호스팅한다. 메시징 서버 애플리케이션(114)은, 특히 메시징 클라이언트 애플리케이션(104)의 다수의 인스턴스로부터 수신된 메시지들에 포함된 콘텐츠(예를 들어, 텍스트 및 멀티미디어 콘텐츠)의 집성(aggregation) 및 다른 처리에 관련된, 다수의 메시지 처리 기술들 및 기능들을 구현한다. 더 상세히 설명되는 바와 같이, 다수의 소스로부터의 텍스트 및 미디어 콘텐츠는, 콘텐츠의 컬렉션들(예를 들어, 스토리들 또는 갤러리들이라고 불림)로 집성될 수 있다. 그 후, 이러한 컬렉션들은, 메시징 서버 애플리케이션(114)에 의해, 메시징 클라이언트 애플리케이션(104)에 이용 가능하게 된다. 다른 프로세서 및 메모리 집약적인 데이터의 처리는 또한, 그러한 처리를 위한 하드웨어 요건을 고려하여, 메시징 서버 애플리케이션(114)에 의해 서버 측에서 수행될 수 있다.
애플리케이션 서버(112)는, 통상적으로 메시징 서버 애플리케이션(114)에서 메시지의 페이로드 내에서 수신된 이미지들 또는 비디오에 관하여, 다양한 이미지 처리 동작들을 수행하는 데 전용되는 이미지 처리 시스템(116)을 또한 포함한다.
소셜 네트워크 시스템(122)은 다양한 소셜 네트워킹 기능 및 서비스를 지원하고, 이들 기능 및 서비스를 메시징 서버 애플리케이션(114)에 이용 가능하게 한다. 이를 위해, 소셜 네트워크 시스템(122)은 데이터베이스(120) 내의 엔티티 그래프(예를 들어, 도 11의 엔티티 그래프(304))를 유지하고 액세스한다. 소셜 네트워크 시스템(122)에 의해 지원되는 기능 및 서비스의 예는, 특정 사용자가 관계를 가지거나 그 특정 사용자가 "팔로우하는(following)" 메시징 시스템(100)의 다른 사용자들의 식별, 및 또한 특정 사용자의 다른 엔티티들 및 관심사항들의 식별을 포함한다.
애플리케이션 서버(112)는 데이터베이스 서버(118)에 통신가능하게 결합되고, 이는 메시징 서버 애플리케이션(114)에 의해 처리되는 메시지들과 연관된 데이터가 저장되는 데이터베이스(120)에 대한 액세스를 용이하게 한다.
도 2는, 예시적인 실시예들에 따른, 메시징 시스템(100)에 관한 추가 세부사항들을 예시하는 블록도이다. 구체적으로, 메시징 시스템(100)은 메시징 클라이언트 애플리케이션(104) 및 애플리케이션 서버(112)를 포함하는 것으로 도시되며, 이는 결국 다수의 일부 서브시스템, 즉, 단기적 타이머 시스템(ephemeral timer system)(202), 컬렉션 관리 시스템(204), 주석 시스템(206), 및 가상 비전 시스템(210)을 구현한다.
단기적 타이머 시스템(202)은 메시징 클라이언트 애플리케이션(104) 및 메시징 서버 애플리케이션(114)에 의해 허용되는 콘텐츠에 대한 일시적인 액세스를 시행하는 것을 담당한다. 이를 위해, 단기적 타이머 시스템(202)은 메시지 또는 메시지들의 컬렉션과 연관된 지속기간 및 디스플레이 파라미터들에 기초하여, 메시징 클라이언트 애플리케이션(104)을 통해 메시지들 및 연관된 콘텐츠를 선택적으로 디스플레이하고 그에 대한 액세스를 가능하게 하는 다수의 타이머를 포함한다. 단기적 타이머 시스템(202)의 동작에 관한 추가 세부사항들이 이하에 제공된다.
컬렉션 관리 시스템(204)은 미디어의 컬렉션들(예를 들어, 텍스트, 이미지, 비디오, 및 오디오 데이터의 컬렉션들)을 관리하는 것을 담당한다. 일부 예들에서, 콘텐츠의 컬렉션(예를 들어, 이미지들, 비디오, 텍스트, 및 오디오를 포함하는 메시지들)은 "이벤트 갤러리" 또는 "이벤트 스토리"로 조직될 수 있다. 그러한 컬렉션은 콘텐츠에 관련되는 이벤트의 지속기간과 같은 특정된 기간 동안 이용 가능하게 될 수 있다. 예를 들어, 음악 콘서트와 관련된 콘텐츠는 그 음악 콘서트의 지속기간 동안 "스토리"로서 이용 가능하게 될 수 있다. 컬렉션 관리 시스템(204)은 또한 메시징 클라이언트 애플리케이션(104)의 사용자 인터페이스에 특정 컬렉션의 존재의 통지를 제공하는 아이콘을 게시(publishing)하는 것을 담당할 수 있다.
컬렉션 관리 시스템(204)은 더욱이 컬렉션 관리자가 특정 콘텐츠의 컬렉션을 관리 및 큐레이팅하는 것을 허용하는 큐레이션 인터페이스(curation interface)(208)를 포함한다. 예를 들어, 큐레이션 인터페이스(208)는 이벤트 조직자(event organizer)가 특정 이벤트에 관련된 콘텐츠의 컬렉션을 큐레이팅(예를 들어, 부적절한 콘텐츠 또는 중복 메시지들을 삭제)하는 것을 가능하게 한다. 추가적으로, 컬렉션 관리 시스템(204)은 머신 비전(또는 이미지 인식 기술) 및 콘텐츠 규칙들을 이용하여 콘텐츠 컬렉션을 자동으로 큐레이팅한다. 특정 실시예들에서, 사용자-생성 콘텐츠(user-generated content)를 컬렉션에 포함시키는 것에 대한 보상이 사용자에게 지불될 수 있다. 그러한 경우들에서, 큐레이션 인터페이스(208)는 그러한 사용자들에게 그들의 콘텐츠를 사용하는 것에 대해 자동으로 지불하도록 동작한다.
주석 시스템(206)은 사용자가 메시지와 연관된 미디어 콘텐츠를 주석하거나 다른 방식으로 수정하거나 편집하는 것을 가능하게 하는 다양한 기능들을 제공한다. 예를 들어, 주석 시스템(206)은 메시징 시스템(100)에 의해 처리된 메시지들에 대한 미디어 오버레이들의 생성 및 게시와 관련된 기능들을 제공한다. 주석 시스템(206)은 클라이언트 디바이스(102)의 지오로케이션에 기초하여 미디어 오버레이를 메시징 클라이언트 애플리케이션(104)에 제공한다. 다른 예에서, 주석 시스템(206)은 클라이언트 디바이스(102)의 사용자의 소셜 네트워크 정보와 같은 다른 정보에 기초하여 메시징 클라이언트 애플리케이션(104)에 미디어 오버레이를 동작적으로 공급한다. 미디어 오버레이는 오디오 및 시각적 콘텐츠 및 시각적 효과들을 포함할 수 있다. 오디오 및 시각적 콘텐츠의 예들은 픽처들, 텍스트, 로고들, 애니메이션들, 및 사운드 효과들을 포함한다. 시각적 효과의 예는 컬러 오버레잉(color overlaying)을 포함한다. 오디오 및 시각적 콘텐츠 또는 시각적 효과들은 클라이언트 디바이스(102)에서 미디어 콘텐츠 아이템(예를 들어, 사진)에 적용될 수 있다. 예를 들어, 미디어 오버레이는 클라이언트 디바이스(102)에 의해 생성된 사진의 위에 오버레이될 수 있는 텍스트를 포함한다. 다른 예에서, 미디어 오버레이는 로케이션의 식별(예를 들어, 베니스 해변), 라이브 이벤트의 이름, 또는 머천트의 이름(예를 들어, Beach Coffee House)을 포함한다. 다른 예에서, 주석 시스템(206)은 클라이언트 디바이스(102)의 지오로케이션을 이용하여, 클라이언트 디바이스(102)의 지오로케이션에서의 머천트의 이름을 포함하는 미디어 오버레이를 식별한다. 미디어 오버레이는 머천트와 연관된 다른 표시들을 포함할 수 있다. 미디어 오버레이들은 데이터베이스(120)에 저장되고 데이터베이스 서버(118)를 통해 액세스될 수 있다.
하나의 예시적인 실시예에서, 주석 시스템(206)은 사용자들이 지도 상에서 지오로케이션을 선택하고, 선택된 지오로케이션과 연관된 콘텐츠를 업로드하는 것을 가능하게 하는 사용자 기반 게시 플랫폼(user-based publication platform)을 제공한다. 사용자는 또한 특정 콘텐츠가 다른 사용자들에게 제공되어야 하는 상황들을 특정할 수 있다. 주석 시스템(206)은 업로드된 콘텐츠를 포함하고 업로드된 콘텐츠를 선택된 지오로케이션과 연관시키는 미디어 오버레이를 생성한다.
다른 예시적인 실시예에서, 주석 시스템(206)은 머천트들이 입찰 프로세스(bidding process)를 통해 지오로케이션과 연관된 특정 미디어 오버레이를 선택하는 것을 가능하게 하는 머천트 기반 게시 플랫폼(merchant-based publication platform)을 제공한다. 예를 들어, 주석 시스템(206)은 최고 입찰 머천트(highest-bidding merchant)의 미디어 오버레이를 미리 정의된 양의 시간 동안 대응하는 지오로케이션과 연관시킨다.
가상 비전 시스템(210)은, 일부 예시적인 실시예들에 따라, 상이한 이미지들에서 객체를 추적하는 것을 관리한다. 가상 비전 시스템(210)의 추가 세부사항은 도 6 내지 도 16을 참조하여 아래에서 논의된다. 가상 비전 시스템(210)이 메시징 클라이언트 애플리케이션(104)에 통합된 것으로서 도 2에 예시되어 있지만, 일부 예시적인 실시예들에서, 가상 비전 시스템(210)은 애플리케이션 서버(112)와 같은 다른 시스템들에 통합된다는 것이 인식될 것이다. 또한, 일부 예시적인 실시예들에서, 가상 비전 시스템(210)의 일부 엔진들은 (예를 들어, 클라이언트측 요청들을 위한 서버측 지원을 제공하기 위해) 애플리케이션 서버(112) 내에 통합될 수 있고, 엔진들 중 일부는 (예를 들어, 클라이언트측 요청들을 생성하기 위해) 클라이언트 디바이스(102)에 통합될 수 있다.
도 3은, 특정 예시적인 실시예들에 따른, 메시징 서버 시스템(108)의 데이터베이스(120)에 저장될 수 있는 데이터를 예시하는 개략도(300)이다. 데이터베이스(120)의 콘텐츠가 다수의 테이블을 포함하는 것으로 도시되어 있지만, 데이터는 다른 타입들의 데이터 구조들에(예를 들어, 객체-지향형 데이터베이스로서) 저장될 수 있다는 것이 인식될 것이다.
데이터베이스(120)는 메시지 테이블(314) 내에 저장된 메시지 데이터를 포함한다. 엔티티 테이블(302)은 엔티티 그래프(304)를 포함하는 엔티티 데이터를 저장한다. 그에 대해 레코드들이 엔티티 테이블(302) 내에 유지되는 엔티티들은, 개인, 법인 엔티티, 조직, 객체, 장소, 이벤트 등을 포함할 수 있다. 타입에 관계없이, 메시징 서버 시스템(108)이 그에 관한 데이터를 저장하는 임의의 엔티티가 인식된 엔티티(recognized entity)일 수 있다. 각각의 엔티티에는 고유 식별자뿐만 아니라 엔티티 타입 식별자(도시되지 않음)가 제공된다.
엔티티 그래프(304)는 또한 엔티티들 사이의 또는 그 중의 관계들 및 연관들에 관한 정보를 저장한다. 이러한 관계들은, 예를 들어, 사회적, 전문적(예를 들어, 일반 법인 또는 조직에서의 일), 관심 기반, 또는 활동 기반일 수 있다.
데이터베이스(120)는 또한 주석 테이블(312)에, 필터들의 예시적인 형태로, 주석 데이터를 저장한다. 그에 대해 데이터가 주석 테이블(312) 내에 저장되는 필터들은, 비디오들(그에 대해 데이터가 비디오 테이블(310)에 저장됨) 및/또는 이미지들(그에 대해 데이터가 이미지 테이블(308)에 저장됨)과 연관되고 이들에 적용된다. 일 예에서, 필터들은, 수신 사용자로의 프레젠테이션 동안 이미지 또는 비디오 상에 오버레이되어 디스플레이되는 오버레이들이다. 필터들은, 송신측 사용자가 메시지를 작성하고 있을 때 메시징 클라이언트 애플리케이션(104)에 의해 송신측 사용자에게 제시되는 필터들의 갤러리로부터의 사용자-선택된 필터들을 포함하여, 다양한 타입들로 될 수 있다. 다른 타입들의 필터들은, 지리적 로케이션에 기초하여 송신측 사용자에게 프레젠테이션될 수 있는 지오로케이션 필터들(지오-필터들이라고도 알려짐)을 포함한다. 예를 들어, 이웃 또는 특수한 로케이션에 특정한 지오로케이션 필터들이 클라이언트 디바이스(102)의 글로벌 포지셔닝 시스템(GPS) 유닛에 의해 결정된 지오로케이션 정보에 기초하여 메시징 클라이언트 애플리케이션(104)에 의해 사용자 인터페이스 내에 제시될 수 있다. 다른 타입의 필터는, 메시지 생성 프로세스 동안 클라이언트 디바이스(102)에 의해 수집된 다른 입력들 또는 정보에 기초하여, 메시징 클라이언트 애플리케이션(104)에 의해 송신측 사용자에게 선택적으로 제시될 수 있는 데이터 필터이다. 데이터 필터들의 예들은, 특정 로케이션에서의 현재 온도, 송신측 사용자가 이동(traveling)하고 있는 현재 속도, 클라이언트 디바이스(102)에 대한 배터리 수명, 또는 현재 시간을 포함한다.
이미지 테이블(308) 내에 저장될 수 있는 다른 주석 데이터는 소위 "렌즈" 데이터이다. "렌즈"는 이미지 또는 비디오에 추가될 수 있는 실시간 특수 효과 및 음향일 수 있다.
위에 언급된 바와 같이, 비디오 테이블(310)은, 일 실시예에서, 그에 대해 레코드들이 메시지 테이블(314) 내에 유지되는 메시지들과 연관되는 비디오 데이터를 저장한다. 유사하게, 이미지 테이블(308)은 그에 대해 메시지 데이터가 메시지 테이블(314)에 저장되는 메시지들과 연관된 이미지 데이터를 저장한다. 엔티티 테이블(302)은 주석 테이블(312)로부터의 다양한 주석들을 이미지 테이블(308) 및 비디오 테이블(310)에 저장된 다양한 이미지들 및 비디오들과 연관시킬 수 있다.
스토리 테이블(306)은, 컬렉션으로 컴파일되는, 메시지들 및 연관된 이미지, 비디오, 또는 오디오 데이터의 컬렉션들에 관한 데이터를 저장한다. 특정 컬렉션의 생성은 특정 사용자(예를 들어, 레코드가 엔티티 테이블(302)에 유지되는 각각의 사용자)에 의해 개시될 수 있다. 사용자는 그 사용자에 의해 생성되어 전송/브로드캐스트된 콘텐츠의 컬렉션의 형태로 "개인 스토리(personal story)"를 생성할 수 있다. 이를 위해, 메시징 클라이언트 애플리케이션(104)의 사용자 인터페이스는, 송신측 사용자가 자신의 개인 스토리에 특정 콘텐츠를 추가하는 것을 가능하게 하기 위해 사용자-선택가능한 아이콘을 포함할 수 있다.
컬렉션은, 수동으로, 자동으로, 또는 수동 및 자동 기법들의 조합을 사용하여 생성되는 다수의 사용자로부터의 콘텐츠의 컬렉션인 "라이브 스토리(live story)"를 또한 구성할 수 있다. 예를 들어, "라이브 스토리"는 다양한 로케이션들 및 이벤트들로부터의 사용자-제출 콘텐츠(user-submitted content)의 큐레이팅된 스트림(curated stream)을 구성할 수 있다. 로케이션 서비스 가능한(location services enabled) 클라이언트 디바이스들(102)을 갖고 특정 시간에 공통 로케이션 또는 이벤트에 있는 사용자들에게는, 예를 들어, 메시징 클라이언트 애플리케이션(104)의 사용자 인터페이스를 통해, 특정 라이브 스토리에 콘텐츠를 기여하는 옵션이 제시될 수 있다. 라이브 스토리는 자신의 로케이션에 기초하여 메시징 클라이언트 애플리케이션(104)에 의해 사용자에게 식별될 수 있다. 최종 결과는 커뮤니티 관점에서 말한 "라이브 스토리"이다.
추가적인 타입의 콘텐츠 컬렉션은, 특정 지리적 로케이션 내에(예를 들어, 단과대학 또는 대학 캠퍼스에) 로케이트(locate)되는 클라이언트 디바이스(102)를 갖는 사용자가 특정 컬렉션에 기여하는 것을 가능하게 하는 "로케이션 스토리(location story)"라고 알려져 있다. 일부 실시예들에서, 로케이션 스토리에 대한 기여는 최종 사용자가 특정 조직 또는 다른 엔티티에 속하는지(예를 들어, 대학 캠퍼스의 학생인지)를 검증하기 위해 제2 인증 정도(second degree of authentication)를 요구할 수 있다.
도 4는 추가 메시징 클라이언트 애플리케이션(104) 또는 메시징 서버 애플리케이션(114)으로의 통신을 위해 메시징 클라이언트 애플리케이션(104)에 의해 생성된, 일부 실시예들에 따른, 메시지(400)의 구조를 예시하는 개략도이다. 특정 메시지(400)의 콘텐츠는 메시징 서버 애플리케이션(114)에 의해 액세스 가능한, 데이터베이스(120) 내에 저장된 메시지 테이블(314)을 채우는 데 사용된다. 유사하게, 메시지(400)의 콘텐츠는 클라이언트 디바이스(102) 또는 애플리케이션 서버(112)의 "수송중(in-transit)" 또는 "비행중(in-flight)" 데이터로서 메모리에 저장된다. 메시지(400)는 다음의 컴포넌트들을 포함하는 것으로 도시된다:
● 메시지 식별자(402): 메시지(400)를 식별하는 고유 식별자.
● 메시지 텍스트 페이로드(404): 클라이언트 디바이스(102)의 사용자 인터페이스를 통해 사용자에 의해 생성되고 메시지(400)에 포함되는 텍스트.
● 메시지 이미지 페이로드(406): 클라이언트 디바이스(102)의 카메라 컴포넌트에 의해 캡처되거나 클라이언트 디바이스(102)의 메모리로부터 검색되고, 메시지(400)에 포함되는 이미지 데이터.
● 메시지 비디오 페이로드(408): 카메라 컴포넌트에 의해 캡처되거나 클라이언트 디바이스(102)의 메모리 컴포넌트로부터 검색되고, 메시지(400)에 포함되는 비디오 데이터.
● 메시지 오디오 페이로드(410): 마이크로폰에 의해 캡처되거나 클라이언트 디바이스(102)의 메모리 컴포넌트로부터 검색되고, 메시지(400)에 포함되는 오디오 데이터.
● 메시지 주석들(412): 메시지(400)의 메시지 이미지 페이로드(406), 메시지 비디오 페이로드(408), 또는 메시지 오디오 페이로드(410)에 적용될 주석들을 나타내는 주석 데이터(예를 들어, 필터들, 스티커들, 또는 다른 개선들).
● 메시지 지속기간 파라미터(414): 메시지(400)의 내용(예를 들어, 메시지 이미지 페이로드(406), 메시지 비디오 페이로드(408), 및 메시지 오디오 페이로드(410))이 메시징 클라이언트 애플리케이션(104)을 통해 사용자에게 제시되거나 액세스 가능하게 되는 시간의 양을 초 단위로 표시하는 파라미터 값.
● 메시지 지오로케이션 파라미터(416): 메시지(400)의 콘텐츠 페이로드와 연관된 지오로케이션 데이터(예를 들어, 위도 및 경도 좌표들). 다수의 메시지 지오로케이션 파라미터(416) 값들이 페이로드에 포함될 수 있으며, 이들 파라미터 값들 각각은 콘텐츠(예를 들어, 메시지 이미지 페이로드(406) 내의 특정 이미지, 또는 메시지 비디오 페이로드(408) 내의 특정 비디오)에 포함된 각자의 콘텐츠 아이템들과 연관된다.
● 메시지 스토리 식별자(418): 메시지(400)의 메시지 이미지 페이로드(406) 내의 특정 콘텐츠 아이템이 연관되어 있는 하나 이상의 콘텐츠 컬렉션(예를 들어, "스토리")을 식별하는 식별자 값들. 예를 들어, 메시지 이미지 페이로드(406) 내의 다수의 이미지는 각각 식별자 값들을 이용하여 다수의 콘텐츠 컬렉션과 연관될 수 있다.
● 메시지 태그(420): 각각이 메시지 페이로드에 포함된 콘텐츠의 주제를 나타내는 하나 이상의 태그. 예를 들어, 메시지 이미지 페이로드(406)에 포함된 특정 이미지가 동물(예를 들어, 사자)을 묘사하는 경우, 관련 동물을 나타내는 태그 값이 메시지 태그(420) 내에 포함될 수 있다. 태그 값들은, 사용자 입력에 기초하여 수동으로 생성될 수 있거나, 또는 예를 들어, 이미지 인식을 사용하여 자동으로 생성될 수 있다.
● 메시지 전송자 식별자(422): 메시지(400)가 생성되었고 메시지(400)가 전송된 클라이언트 디바이스(102)의 사용자를 나타내는 식별자(예를 들어, 메시징 시스템 식별자, 이메일 어드레스, 또는 디바이스 식별자).
● 메시지 수신자 식별자(424): 메시지(400)가 어드레싱되는 클라이언트 디바이스(102)의 사용자를 나타내는 식별자(예를 들어, 메시징 시스템 식별자, 이메일 어드레스, 또는 디바이스 식별자).
메시지(400)의 다양한 컴포넌트들의 콘텐츠(예를 들어, 값들)는 그 안에 콘텐츠 데이터 값들이 저장되어 있는 테이블들 내의 로케이션들에 대한 포인터들일 수 있다. 예를 들어, 메시지 이미지 페이로드(406) 내의 이미지 값은 이미지 테이블(308) 내의 로케이션에 대한 포인터(또는 그의 어드레스)일 수 있다. 유사하게, 메시지 비디오 페이로드(408) 내의 값들은 비디오 테이블(310) 내에 저장된 데이터를 가리킬 수 있고, 메시지 주석들(412) 내에 저장된 값들은 주석 테이블(312)에 저장된 데이터를 가리킬 수 있고, 메시지 스토리 식별자(418) 내에 저장된 값들은 스토리 테이블(306)에 저장된 데이터를 가리킬 수 있고, 메시지 전송자 식별자(422) 및 메시지 수신자 식별자(424) 내에 저장된 값들은 엔티티 테이블(302) 내에 저장된 사용자 레코드들을 가리킬 수 있다.
도 5는 그에 관하여 콘텐츠(예를 들어, 단기적 메시지(502), 및 데이터의 연관된 멀티미디어 페이로드) 또는 콘텐츠 컬렉션(예를 들어, 단기적 메시지 스토리(504))에의 액세스가 시간-제한될(예를 들어, 단기적으로 될) 수 있는, 액세스-제한 프로세스(500)를 예시하는 개략도이다.
단기적 메시지(502)는 메시지 지속기간 파라미터(506)와 연관되는 것으로 도시되어 있고, 그 값은 단기적 메시지(502)가 메시징 클라이언트 애플리케이션(104)에 의해 단기적 메시지(502)의 수신측 사용자에게 디스플레이될 시간의 양을 결정한다. 일 실시예에서, 메시징 클라이언트 애플리케이션(104)이 애플리케이션 클라이언트인 경우, 전송측 사용자가 메시지 지속기간 파라미터(506)를 사용하여 특정하는 시간의 양에 따라, 최대 10초 동안 수신측 사용자가 단기적 메시지(502)를 볼 수 있다.
메시지 지속기간 파라미터(506) 및 메시지 수신자 식별자(424)는 메시지 타이머(512)에 대한 입력들인 것으로 도시되어 있고, 메시지 타이머(512)는 단기적 메시지(502)가 메시지 수신자 식별자(424)에 의해 식별된 특정 수신측 사용자에게 보여지는 시간의 양을 결정하는 것을 담당한다. 특히, 단기적 메시지(502)는 메시지 지속기간 파라미터(506)의 값에 의해 결정된 기간 동안 관련 수신측 사용자에게만 보여질 것이다. 메시지 타이머(512)는 수신측 사용자에게 콘텐츠(예를 들어, 단기적 메시지(502))의 디스플레이의 전체 타이밍을 담당하는 더 일반화된 단기적 타이머 시스템(202)에 출력을 제공하는 것으로 도시된다.
단기적 메시지(502)는 단기적 메시지 스토리(504)(예를 들어, 개인 SNAPCHAT 스토리, 또는 이벤트 스토리) 내에 포함되는 것으로 도 5에 도시되어 있다. 단기적 메시지 스토리(504)는 연관된 스토리 지속기간 파라미터(508)를 가지며, 그 값은 단기적 메시지 스토리(504)가 메시징 시스템(100)의 사용자들에게 제시되고 액세스 가능한 시간 지속기간(time duration)을 결정한다. 예를 들어, 스토리 지속기간 파라미터(508)는 음악 콘서트의 지속기간일 수 있고, 여기서 단기적 메시지 스토리(504)는 그 콘서트에 관련된 콘텐츠의 컬렉션이다. 대안적으로, 사용자(소유 사용자 또는 큐레이터 사용자)는 단기적 메시지 스토리(504)의 셋업 및 생성을 수행할 때 스토리 지속기간 파라미터(508)에 대한 값을 특정할 수 있다.
추가적으로, 단기적 메시지 스토리(504) 내의 각각의 단기적 메시지(502)는 연관된 스토리 참가 파라미터(story participation parameter)(510)를 갖고, 그 값은 단기적 메시지(502)가 단기적 메시지 스토리(504)의 컨텍스트 내에서 액세스 가능할 시간의 지속기간을 결정한다. 따라서, 특정 단기적 메시지(502)는, 단기적 메시지 스토리(504) 자체가 스토리 지속기간 파라미터(508)에 관하여 만료되기 전에, 단기적 메시지 스토리(504)의 컨텍스트 내에서 "만료"되고 액세스 불가능해질 수 있다. 스토리 지속기간 파라미터(508), 스토리 참가 파라미터(510), 및 메시지 수신자 식별자(424)는 각각 스토리 타이머(514)에 대한 입력을 제공하며, 스토리 타이머(514)는, 단기적 메시지 스토리(504)의 특정 단기적 메시지(502)가 특정 수신측 사용자에게 디스플레이될 것인지, 그리고, 그렇다면, 얼마나 오랫동안 디스플레이될 것인지를 동작적으로 결정한다. 단기적 메시지 스토리(504)는 또한 메시지 수신자 식별자(424)의 결과로서 특정 수신측 사용자의 아이덴티티(identity)를 인식한다는 점에 유의한다.
따라서, 스토리 타이머(514)는 연관된 단기적 메시지 스토리(504)뿐만 아니라, 단기적 메시지 스토리(504)에 포함된 개별 단기적 메시지(502)의 전체 수명을 동작적으로 제어한다. 일 실시예에서, 단기적 메시지 스토리(504) 내의 각각의 그리고 모든 단기적 메시지(502)는 스토리 지속기간 파라미터(508)에 의해 특정된 기간(time period) 동안 볼 수 있고 액세스 가능하게 유지된다. 추가 실시예에서, 특정 단기적 메시지(502)는, 스토리 참가 파라미터(510)에 기초하여, 단기적 메시지 스토리(504)의 컨텍스트 내에서 만료될 수 있다. 메시지 지속기간 파라미터(506)는 단기적 메시지 스토리(504)의 컨텍스트 내에서도, 특정 단기적 메시지(502)가 수신측 사용자에게 디스플레이되는 시간의 지속기간을 여전히 결정할 수 있다는 점에 유의한다. 따라서, 메시지 지속기간 파라미터(506)는, 수신측 사용자가 단기적 메시지 스토리(504)의 컨텍스트 내부 또는 외부에서 그 단기적 메시지(502)를 보고 있는지에 관계없이, 특정 단기적 메시지(502)가 수신측 사용자에게 디스플레이되는 시간의 지속기간을 결정한다.
단기적 타이머 시스템(202)은 또한 그것이 연관된 스토리 참가 파라미터(510)를 초과했다는 결정에 기초하여 단기적 메시지 스토리(504)로부터 특정 단기적 메시지(502)를 동작적으로 제거할 수 있다. 예를 들어, 송신측 사용자가 포스팅으로부터 24시간의 스토리 참가 파라미터(510)를 확립했을 때, 단기적 타이머 시스템(202)은 특정된 24시간 후에 단기적 메시지 스토리(504)로부터 관련 단기적 메시지(502)를 제거할 것이다. 단기적 타이머 시스템(202)은 또한 단기적 메시지 스토리(504) 내의 각각의 그리고 모든 단기적 메시지(502)에 대한 스토리 참가 파라미터(510)가 만료되었을 때, 또는 단기적 메시지 스토리(504) 자체가 스토리 지속기간 파라미터(508)에 관하여 만료되었을 때 단기적 메시지 스토리(504)를 제거하도록 동작한다.
특정 사용 경우들에서, 특정 단기적 메시지 스토리(504)의 작성자는 부정(indefinite) 스토리 지속기간 파라미터(508)를 특정할 수 있다. 이 경우, 단기적 메시지 스토리(504) 내의 마지막 잔여 단기적 메시지(502)에 대한 스토리 참가 파라미터(510)의 만료는 단기적 메시지 스토리(504) 자체가 만료될 때를 결정할 것이다. 이 경우, 새로운 스토리 참가 파라미터(510)로, 단기적 메시지 스토리(504)에 추가된, 새로운 단기적 메시지(502)가 단기적 메시지 스토리(504)의 수명을 스토리 참가 파라미터(510)의 값과 같도록 효과적으로 연장한다.
단기적 타이머 시스템(202)이 단기적 메시지 스토리(504)가 만료된 것으로(예를 들어, 더 이상 액세스 가능하지 않은 것으로) 결정하는 것에 응답하여, 단기적 타이머 시스템(202)은 메시징 시스템(100)(예를 들어, 구체적으로, 메시징 클라이언트 애플리케이션(104))과 통신하여, 관련된 단기적 메시지 스토리(504)와 연관된 표시(예를 들어, 아이콘)가 더 이상 메시징 클라이언트 애플리케이션(104)의 사용자 인터페이스 내에 디스플레이되지 않게 한다. 유사하게, 단기적 타이머 시스템(202)이 특정 단기적 메시지(502)에 대한 메시지 지속기간 파라미터(506)가 만료되었다고 결정할 때, 단기적 타이머 시스템(202)은 메시징 클라이언트 애플리케이션(104)이 단기적 메시지(502)와 연관된 표시(예를 들어, 아이콘 또는 텍스트 식별)를 더 이상 디스플레이하지 않게 한다.
도 6은, 일부 실시예들에 따른, 가상 비전 시스템(210) 내에 제공된 컴포넌트들을 도시하는 블록도를 예시한다. 컴포넌트들 자체는 서로에 그리고 다양한 데이터 소스들에 (예를 들어, 적절한 인터페이스들을 통해) 통신가능하게 결합되어, 애플리케이션들 사이에서 정보가 전달될 수 있게 하거나 또는 애플리케이션들이 공통 데이터를 공유하고 그 공통 데이터에 액세스할 수 있게 한다. 또한, 컴포넌트들은 데이터베이스 서버(124)를 통해 데이터베이스(126)에 액세스한다. 도 6에 도시된 바와 같이, 가상 비전 시스템(210)은 인터페이스 엔진(605), 렌즈 컨텍스트 엔진(610), 렌즈 디스플레이 엔진(615), 및 센서 엔진(620)을 포함한다. 간략하게는, 인터페이스 엔진(605)은 일부 예시적인 실시예들에 따라, 새로운 로케이션들에 대한 렌즈 객체 데이터를 검색하기 위해 서버와 상호작용하는 것을 관리한다. 또한, 인터페이스 엔진(605)은, 일부 예시적인 실시예들에 따라, 서버 상에서 실행되는 렌즈 컨텍스트 엔진(610)에 의해 선택되는 렌즈 객체를 수신하기 위해 서버와 상호작용하도록 구성된다.
렌즈 컨텍스트 엔진(610)은 입력 파라미터들을 수신하고 그 파라미터들에 기초하여 렌즈 객체를 선택한다. 파라미터들은, 아래에 더 상세히 설명되는 바와 같이, 이미지들에서 인식되는 아이템들 또는 하루 중 시간과 같은, 컨텍스트적 데이터(contextual data) 및 로케이션 데이터를 포함한다. 일부 예시적인 실시예들에 따라, 렌즈 디스플레이 엔진(615)은 클라이언트 디바이스(102) 상에 디스플레이되고 있는 라이브 비디오 피드 위에 디스플레이 요소들을 디스플레이함으로써 선택된 렌즈 객체들의 실행을 관리하도록 구성된다.
센서 엔진(620)은 클라이언트 디바이스(102)의 하나 이상의 센서에 대한 액세스를 관리하도록 구성된다. 예를 들어, 센서 엔진(620)은 일부 예시적인 실시예들에 따라, 클라이언트 디바이스(102)의 후면 카메라를 활성화하기 위한 제어에 액세스할 수 있고, 클라이언트 디바이스(102)에 통합된 GPS 센서를 통해 GPS 데이터에 액세스할 수 있고, 클라이언트 디바이스(102)의 가속도계 및 자이로 센서들의 사용을 통해 나침반 데이터에 액세스할 수 있고, 클라이언트 디바이스(102)의 마이크로폰 센서에 액세스함으로써 오디오 데이터를 생성할 수 있고, 클라이언트 디바이스(102)의 스크린 상에 디스플레이되고 있는 객체들의 시각적 데이터에 대한 사용자 인터페이스 제어에 액세스할 수 있다.
일부 실시예들에 따르면, 가상 비전 시스템(210) 내의 엔진들 중 하나 이상은 클라이언트 측 상의 가상 비전 시스템(210) 대신에 서버측 컨텍스트 기반 증강 현실 시스템(150)에 통합될 수 있다. 예를 들어, 렌즈 컨텍스트 엔진(610)이 서버측으로부터 실행되면, 클라이언트 디바이스(102)는 컨텍스트 데이터(도 10에서 논의됨)를 생성하고, 컨텍스트 데이터를 서버측의 렌즈 컨텍스트 엔진(610)에 전송하고, 그 다음에 렌즈 컨텍스트 엔진(610)은 도 11에서 더 논의되는 바와 같이, 수신된 컨텍스트 데이터에 기초하여 렌즈 객체를 선택한다.
도 7은, 일부 예시적인 실시예들에 따른, 가상 비전 시스템(210)을 구현하기 위한 방법(700)의 흐름도를 도시한다. 동작 705에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)로부터 제공된 적어도 로케이션 데이터를 이용하여 렌즈 객체를 식별한다. 예를 들어, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 운영 체제(OS)에 통합된 GPS 서비스를 호출함으로써 현재 로케이션 데이터(예를 들어, 위도/경도)를 요청한다. 렌즈 컨텍스트 엔진(610)은 그 후 검색된 현재 로케이션 데이터와 연관된 임의의 렌즈들이 있는지를 결정한다. 일부 실시예들에서, 렌즈 데이터는 클라이언트 디바이스(102)에 국지적으로 저장된다. 그 실시예들에서, 렌즈 컨텍스트 엔진(610)은 그 다음에 현재 로케이션을 대응하는 국지적으로 저장된 렌즈 객체와 매칭시킨다. 일부 실시예들에서, 렌즈 컨텍스트 엔진(610)은 렌즈를 식별하기 위해 서버측 가상 비전 시스템(210)과 접촉한다. 예를 들어, 사용자가 새로운 지리적 영역(예를 들어, 새로운 도시)에 있는 경우, 클라이언트 디바이스(102)는 임의의 국지적으로 저장된 렌즈 객체들을 갖지 않을 수 있다. 이와 같이, 인터페이스 엔진(605)은 현재 로케이션을 서버(140)에 제출하고, 응답으로서 서버측 가상 비전 시스템(210)으로부터 렌즈 객체를 수신할 수 있다.
동작 710에서, 렌즈 디스플레이 엔진(615)은 렌즈 객체를 활성화시킨다. 일부 실시예들에서, 객체의 활성화는 근처의 물리적 장소 또는 목적지에 대해 객체에 저장된 지리적 좌표들을 식별하는 것을 포함한다. 동작 715에서, 센서 엔진(620)은 렌즈 객체에 대한 헤딩 데이터(heading data)를 생성한다. 일부 예시적인 실시예들에 따르면, 헤딩 데이터는 클라이언트 디바이스(102)가 북쪽으로부터 어느 각도로 어느 방향을 향하고 있는지 및 위도/경도 데이터를 포함한다. 물리적 장소의 지리적 좌표들을 클라이언트 디바이스(102)의 헤딩 데이터와 비교하여, 사용자를 물리적 장소로 지향시키는 방법을 결정한다. 예를 들어, 물리적 장소가 북쪽으로부터 30도 방위(bearing)로 0.3 마일인 경우, 방향 데이터는 다음의 동작에서 렌즈 객체의 미리 구성된 디스플레이 요소들 중 하나 이상을 선택하는 데 사용될 수 있다.
동작 720에서, 렌즈 디스플레이 엔진(615)은 선택된 렌즈 객체의 디스플레이 요소들을 헤딩 데이터를 이용하여 디스플레이한다. 위의 예를 계속하면, 렌즈 디스플레이 엔진(615)은 좌측 화살표를 선택하고 그것을 클라이언트 디바이스(102)의 라이브 피드 상에 디스플레이한다. 좌측 화살표의 디스플레이에 응답하여, 사용자는 그의 클라이언트 디바이스(102)를 돌려서 그것의 방위가 물리적 장소의 방위(예를 들어, 북쪽으로부터 30도)와 매칭되게 할 수 있다. 물리적 장소가 라이브 피드에 디스플레이될 때, 추가적인 디스플레이 요소들이 라이브 피드 상에 오버레이될 수 있다. 일부 예시적인 실시예들에서, 렌즈 디스플레이 엔진(615)은 클라이언트 디바이스(102)의 방위가 물리적 장소의 방위와 매칭되는 때를 결정함으로써 물리적 장소가 라이브 피드에 도시된다고 결정한다. 또한, 렌즈 디스플레이 엔진(615)은 컴퓨터 비전 알고리즘들을 사용하여, 물리적 장소 이미지 특징 데이터와 매칭되는 이미지 특징 데이터에 대해 라이브 피드를 능동적으로 스캔할 수 있다. 물리적 장소에 대한 이미지 특징 데이터는 렌즈 객체 데이터에 포함되고, 동작 705에서 렌즈 객체가 선택될 때, 물리적 장소의 이미지 특징 데이터는 렌즈 디스플레이 엔진(615)의 컴퓨터 비전 알고리즘들에 로딩된다.
도 12a-12b는, 일부 예시적인 실시예들에 따른, 방법(700)의 예를 구현하기 위한 예시적인 사용자 인터페이스들(1200)을 도시한다. 도 12a에서, 클라이언트 디바이스(102)는 스마트폰(1205)의 후면 카메라(도시되지 않음)에 의해 캡처된 비디오의 라이브 피드(1210)를 디스플레이하고 있는 애플리케이션(예를 들어, 메시징 클라이언트 애플리케이션(104))을 실행하고 있는 스마트폰(1205)이다. 전술한 바와 같이, 애플리케이션은 스마트폰(1205)의 현재 로케이션을 결정하고, 디스플레이 요소들을 갖는 렌즈 객체가 미리 구성된 근처의 물리적 장소(1215)가 있다고 결정한다. 애플리케이션은 물리적 장소(1215)의 방위를 스마트폰(1205)의 방위와 비교하고, 2개의 방위 사이의 차이를 최소화할 미리 구성된 디스플레이 요소(1220)를 선택한다. 미리 구성된 디스플레이 요소(1220)는, 그것이 물리적 장소(1215)와 연관된 디자인 스킴(design scheme)(예를 들어, 상표, 컬러 스킴, 설명 텍스트)을 나타낸다는 점에서 미리 구성된다.
사용자가 자신의 스마트폰(1205)을 디스플레이 요소(1220)의 방향으로 돌리는 것에 응답하여, 결국 물리적 장소(1215)는 라이브 피드(1210)에 나타날 것이다. 물리적 장소(1215)가 라이브 피드(1210)에 있을 때, 만화 버거들의 흔적과 같은 추가적인 미리 구성된 디스플레이 요소들(1225)이 사용자에게 물리적 장소(1215)로의 경로를 보여줄 수 있다. 사용자 인터페이스(1210)는 사용자 인터페이스(1210)의 하부 중앙에 백색 원으로서 디스플레이되는 캡처 이미지 버튼을 추가로 포함한다. 캡처 이미지 버튼을 선택하는 것은, 캡처된 이미지 상의 공유 버튼(도시되지 않음)을 사용하는 것을 통해 애플리케이션 서버(112)로부터 관리되는 소셜 미디어 플랫폼에 게시(post)될 수 있는 이미지를 생성한다. 이미지는, 미리 구성된 디스플레이 요소들(예를 들어, 디스플레이 요소(1220))이 현실 세계 배경(예를 들어, 버거 식당, 해변)의 앞에 오버레이되어 있는 물리적 장소(1215)를 묘사할 수 있다. 이러한 방식으로, 사용자는 자신의 소셜 미디어 친구들과 이미지를 공유하여 사용자가 물리적 장소(1215)로 가고 있다는 것을 나타낼 수 있고, 그에 의해 물리적 장소(1215)에 대해 미리 구성된 디스플레이 요소들을 사용하여 내비게이션하기 위한 상호작용 및 공유 가능 접근법을 허용한다. 다른 사용자 인터페이스들(예를 들어, 도 13-11에 도시된 것들)이 마찬가지로 동일한 접근법을 사용하여 이미지화되어 공유될 수 있다.
일부 예시적인 실시예들에서, 미리 구성된 디스플레이 요소들(1220)은 물리적 장소(1215)가 다른 객체들에 의해 덮이거나 다른 방식으로 난독화(obfuscated)되더라도 라이브 피드(1210) 상에 오버레이된다. 예를 들어, 클라이언트 디바이스(102)의 사용자와 물리적 장소(1215) 사이에 건물이 있는 경우, 사용자가 클라이언트 디바이스(102)를 위로 홀드하여 라이브 피드(1210)가 건물의 뷰를 보여줄 때, 디스플레이 요소들(1220 및 1225)은 물리적 장소(1215)가 건물 뒤에 있다는 것을 사용자에게 나타내기 위해 여전히 보여질 수 있다.
또한, 예시된 바와 같이, 미리 구성된 디스플레이 요소(1220)는 스마트폰(1205)의 방위가 물리적 장소(1215)의 방위와 매칭될 때 물리적 장소(1215)까지의 거리를 나타내도록 업데이트될 수 있다. 이러한 방식으로, 미리 구성된 디스플레이 요소들(1220, 1225)을 심리스하게(seamlessly) 선택하여 디스플레이하는 것을 통해, 사용자 경험은 사용자 액션이 거의 없거나 전혀 없이 더욱 상호작용적이고 맞춤형으로 된다.
도 8은, 일부 예시적인 실시예들에 따른, 렌즈 객체를 선택하기 위한 방법(800)의 흐름도를 도시한다. 방법(800)은 렌즈 객체를 선택하는 더 상세한 접근법을 포함한다. 동작 805에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 헤딩을 결정한다. 클라이언트 디바이스(102)의 헤딩은 클라이언트 디바이스(102)가 북쪽에 대해 각도를 이루어(예를 들어, 북쪽으로부터 270도) 향하고 있는 방향을 포함할 수 있다. 또한, 일부 예시적인 실시예들에서, 클라이언트 디바이스(102)의 헤딩은 클라이언트 디바이스(102)의 현재 위도 및 경도와 같은 지리적 로케이션 데이터를 포함할 수 있다. 동작 810에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 컨텍스트를 상세히 설명하는 컨텍스트 파라미터들을 생성한다. 컨텍스트는 클라이언트 디바이스(102)로부터의 감각 입력들 및 시간 입력들을 포함할 수 있다. 동작 815에서, 렌즈 컨텍스트 엔진(610)은 로케이션 데이터 및 컨텍스트 파라미터들을 사용하여 렌즈 객체를 식별한다. 렌즈 객체들 각각은 클라이언트 디바이스(102)의 주어진 현재 로케이션 및 하나 이상의 컨텍스트 파라미터들의 특정된 세트와 연관될 수 있다. 동작 815 후에, 방법은, 앞서 논의된 바와 같이, 식별된 렌즈 객체의 디스플레이 요소들이 디스플레이되는 도 7의 동작 720으로 리턴할 수 있다.
도 9는, 일부 예시적인 실시예들에 따른, 지리 데이터를 결정하기 위한 방법(900)의 흐름도를 도시한다. 방법(900)은 동작 805의 예시적인 실시예이다. 예를 들어, 방법(900)은 동작 805를 완료하기 위한 서브 루틴으로서 지칭될 수 있다. 시작 바는 방법의 호출을 지칭한다. 종료 또는 리턴 바는 이전의 동작들로부터 생성된 데이터를 출력하거나 다른 방식으로 메모리에 저장한다. 방법(900)은 클라이언트 디바이스(102)에 저장되거나 센서 엔진(620) 내에 저장될 수 있는 래퍼 기능(wrapper function)을 이용하여 참조될 수 있다. 래퍼 기능을 호출하는 것은, 방법(900)에 도시된 것과 같은 다수의 동작을 실행한다. 동작 905에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 지리적 로케이션 및 클라이언트 디바이스(102)의 방위를 포함하는, 클라이언트 디바이스(102)에 대한 헤딩 데이터를 결정한다. 일부 예시적인 실시예들에서, 클라이언트 디바이스(102)의 GPS 센서는 클라이언트 디바이스(102)의 위도 및 경도 데이터를 생성하기 위해 이용된다. 또한, 클라이언트 디바이스(102)가 북쪽에 대해 어느 각도로 어느 방향을 향하고 있는지를 결정하기 위해 클라이언트 디바이스(102)의 나침반 센서가 이용된다.
동작 910에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 일반적인 로케이션 또는 현재 영역을 결정한다. 예를 들어, 현재 로케이션에 대한 위도 및 경도가 주어지면, 클라이언트 디바이스(102)는 클라이언트 디바이스(102)가 캘리포니아 베니스의 일반적인 영역에 있다고 결정할 수 있다. 일부 예시적인 실시예들에서, 위도 및 경도는 서버에 송신되고, 서버는 클라이언트 디바이스(102)에 대한 일반적인 영역이 무엇인지를 결정하고, 클라이언트 디바이스(102)에 대한 응답으로서 정보를 리턴한다. 또한, 일부 예시적인 실시예들에 따르면, 일반적인 영역은 도시일 필요는 없고, 하나보다 많은 물리적 장소(1215)를 포함하는 일반적인 영역이다. 예를 들어, 일반적인 영역은 다수의 상점을 갖는 쇼핑몰을 지칭할 수 있다.
동작 915에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 서브 영역 로케이션을 결정한다. 서브 영역은 일반적인 영역 내의 영역이다. 예를 들어, 일반적인 영역이 도시(예를 들어, 샌프란시스코)인 경우, 서브 영역은 그 도시의 이웃(예를 들어, 포트레로 힐)일 수 있다. 추가적인 예로서, 그 영역이 쇼핑몰이면, 서브 영역은 쇼핑몰 내의 특정 상점일 수 있다. 일부 예시적인 실시예들에서, 서브 영역들은 일반적인 영역을 결정하기 위해 사용되는 동일한 메커니즘들을 사용하여 결정된다(예를 들어, 클라이언트 디바이스(102) 상에서 국지적으로 데이터를 탐색하거나, 로케이션 데이터를 서버에 송신하고 응답으로서 서브 영역을 수신함). 또한, 일부 예시적인 실시예들에 따르면, 센서 엔진(620)은 쇼핑몰 내의 주어진 상점으로서 서브 영역을 정확히 찾아내기 위해, Foursquare™과 같은, 향상된 로케이션 서비스로부터의 로케이션 데이터를 사용하여 서브 영역을 결정할 수 있다. 간략하게, Foursquare™은 현재 로케이션, 접속된 WiFi 네트워크들, 근처/이용가능한 셀 타워들, 근처/이용가능한 WiFi 네트워크들, 및 다른 정보와 같은, 클라이언트 디바이스(102)에 이용가능한 정보를 분석함으로써 디바이스의 로케이션을 정확히 찾아낼 수 있는 서비스이다. 향상된 로케이션 서비스는 제3자 서버로부터 제공될 수 있다. 센서 엔진(620)은 요청을 서버에 전송하고, 그 서버는 이어서 API 서버(110)를 통해 제3자 서버로부터 서브 영역 데이터를 검색한다. 서브 영역 데이터는 이어서 추가 처리를 위해 센서 엔진(620)으로 다시 전송된다.
도 10은, 일부 예시적인 실시예들에 따른, 컨텍스트 데이터를 결정하기 위한 방법(1000)의 흐름도를 도시한다. 방법(1000)은 동작 810의 예시적인 실시예이다. 예를 들어, 방법(1000)은 동작 810을 완료하기 위한 서브 루틴으로서 지칭될 수 있다. 시작 바는 방법의 호출을 지칭한다. 종료 또는 리턴 바는 이전의 동작들로부터 생성된 데이터를 출력하거나 다른 방식으로 메모리에 저장한다. 방법(1000)은 클라이언트 디바이스(102)에 저장되거나 센서 엔진(620) 내에 저장될 수 있는 래퍼 기능을 사용하여 참조될 수 있다. 래퍼 기능을 호출하는 것은, 방법(1000)에 도시된 것들과 같은 다수의 동작을 실행한다. 동작 1005에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 스크린 상에 디스플레이된 라이브 피드(1210)의 컴퓨터 비전 분석에 기초하여 클라이언트 디바이스(102)가 실내 또는 실외인지를 결정한다. 예를 들어, 센서 엔진(620)은 라이브 피드(1210) 내의 프레임들의 픽셀 값들을 분석함으로써 주변 환경의 광 레벨을 결정할 수 있다. 픽셀 레벨들이 높은 레벨들의 광을 나타내는 경우, 센서 엔진(620)은 클라이언트 디바이스(102)가 외부에 있다고 결정한다. 반면에 픽셀 레벨들이 중간 내지 낮은 레벨들의 광을 나타내는 경우, 센서 엔진(620)은 클라이언트 디바이스(102)가 내부에 있다고 결정한다. 동작 1010에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 마이크로폰으로부터 생성된 오디오 데이터를 사용하여 환경(예를 들어, 식당, 해변, 화장실)을 결정한다. 예를 들어, 센서 엔진(620)은 컴퓨터 비전 알고리즘들을 사용하여 라이브 피드(1210)에 디스플레이되는 아이템들을 인식할 수 있다. 인식된 아이템들(예를 들어, 당구대, 바스툴, 네온 조명)은 환경의 타입(예를 들어, 다이브 바(dive bar))을 나타내고, 나중에 인식된 아이템들에 기초하여 렌즈 객체를 선택하는 데 사용될 수 있다. 또한, 동작 1010에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 마이크로폰에 액세스하여 주변 환경으로부터의 오디오 데이터를 분석할 수 있다. 예를 들어, 센서 엔진(620)이 쨍그랑거리는 소리(clanking sounds)가 접시들이 서로 부딪치고 있고, 주변 사운드 레벨이 크다고 결정하면, 센서 엔진(620)은 사용자가 식당과 같은 공공 장소(public setting)에 있다고 결정할 수 있다. 동작 1015에서, 센서 엔진(620)은 아래에서 더 상세히 논의되는 바와 같이, 주변 환경을 결정하지 않고 컨텍스트를 제공하기 위해 아이템 인식을 추가로 사용할 수 있다. 동작 1020에서, 센서 엔진(620)은 클라이언트 디바이스(102)의 로컬 시간(local time)을 요청할 수 있다. 로컬 시간은 시간 기반 렌즈 객체들(예를 들어, 아침 지향 렌즈 객체(morning oriented lens object), 해피 아워 렌즈 객체(happy-hour lens object), 심야 렌즈 객체(late-night lens object))을 선택하기 위한 추가적인 컨텍스트 정보를 제공하기 위해 사용될 수 있다.
도 11은, 일부 예시적인 실시예들에 따른, 렌즈 객체를 결정하기 위한 방법(1100)의 흐름도를 도시한다. 방법(1100)은 동작 815의 예시적인 실시예이다. 예를 들어, 방법(1100)은 동작 815를 완료하기 위한 서브 루틴으로서 지칭될 수 있다. 시작 바는 방법의 호출을 지칭한다. 종료 또는 리턴 바는 이전의 동작들로부터 생성된 데이터를 출력하거나 다른 방식으로 메모리에 저장한다. 방법(1100)은 클라이언트 디바이스(102)에 저장되거나 센서 엔진(620) 내에 저장될 수 있는 래퍼 기능을 사용하여 참조될 수 있다. 래퍼 기능을 호출하는 것은, 방법(1100)에 도시된 것들과 같은 다수의 동작을 실행한다. 동작 1105에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)가 내부 또는 외부에 있는지를 결정한다. 예를 들어, 렌즈 컨텍스트 엔진(610)은 라이브 피드(1210)로부터 이미지 또는 픽셀 데이터를 분석할 수 있고, 픽셀들이 청색이거나 조명이 밝은 경우, 클라이언트 디바이스(102)가 외부에 있는 것으로 결정한다. 렌즈 컨텍스트 엔진(610)이 클라이언트 디바이스(102)가 외부에 있다고 결정하면, 동작 1110에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 현재 로케이션의 일반적인 영역에 대한 외부 렌즈 객체를 선택한다.
일부 예시적인 실시예들에서, 렌즈 컨텍스트 엔진(610)이 클라이언트 디바이스(102)가 외부에 있지만 일반화된 영역에 대한 렌즈 객체들이 없다고 결정하면, 렌즈 컨텍스트 엔진(610)은 동작 1115에서 클라이언트 디바이스(102)의 현재 로케이션에 가까운 로케이션들과 연관된 렌즈 객체들에 대한 (서버(150)를 통한) 검색을 수행한다. 일단 근처 로케이션에 대한 렌즈 객체가 식별되면, 그것은 앞서 도 12a 및 도 12b를 참조하여 논의된 바와 같이 미리 구성된 디스플레이 요소들(1220, 1225)을 사용하여 디스플레이될 수 있다.
결정 동작 1105로부터 계속하여, 렌즈 컨텍스트 엔진(610)이 클라이언트 디바이스(102)가 내부에 있다고 결정하면, 렌즈 컨텍스트 엔진(610)은 결정 동작 1120을 계속하고, 여기서 렌즈 컨텍스트 엔진(610)은 (예를 들어, API를 통해 향상된 로케이션 서비스에 프로그램적으로 액세스함으로써) 클라이언트 디바이스(102)가 전술한 바와 같은 일반적인 영역의 서브 영역 내에 위치하는지를 분석한다. 클라이언트 디바이스(102)가 일반적인 영역의 서브 영역 내부에 있다고 가정하면, 방법은 동작 1125를 계속하며, 여기서 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 서브 영역을 결정한다. 동작 1130에서, 렌즈 컨텍스트 엔진(610)은 라이브 피드(1210) 또는 이미지에 도시된 아이템들을 결정한다. 동작 1135에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 로컬 시간을 결정한다. 동작 1140에서, 렌즈 컨텍스트 엔진(610)은 서브 영역, 아이템들, 및/또는 시간을 사용하여 렌즈 객체를 선택한다.
결정 동작 1120으로부터 계속하여, 클라이언트 디바이스(102)가 서브 영역에 있지 않다고 가정하면, 동작 1145에서, 렌즈 컨텍스트 엔진(610)은 라이브 피드(1210) 또는 이미지에 도시된 아이템들을 결정한다. 동작 1150에서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)의 로컬 시간을 결정한다. 동작 1155에서, 렌즈 컨텍스트 엔진(610)은 도시된 아이템들 및 또는 시간을 사용하여 렌즈 객체를 선택한다.
도 13은, 일부 예시적인 실시예들에 따른, 실외 관련 렌즈 객체를 구현하기 위한 예시적인 사용자 인터페이스(1300)를 도시한다. 도 13의 렌즈 객체는 동작 1110에서 선택되며, 여기서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(120)가 베니스 해변의 일반적 영역 외부에 있다고 결정한다. 선택된 렌즈 객체에 대한 미리 구성된 디스플레이 요소들은 "베니스"를 나타내는 도시 관련 디스플레이 요소(1305), 및 클라이언트 디바이스(102)의 사용자에 대한 아바타(1310)를 포함하고, 이는 일반적인 영역(예를 들어, 베니스 보드워크(Venice Boardwalk))의 주요 거리에서 신나게 쇼핑하는 아바타(1310)를 보여주도록 미리 구성되었다.
도 14는, 일부 예시적인 실시예들에 따른, 물리적 장소(1215) 관련 렌즈 객체의 변형을 구현하기 위한 예시적인 사용자 인터페이스(1400)를 도시한다. 도 14의 렌즈 객체는 동작 1140에서 선택되고, 여기서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)가 서브 영역(커피숍)에 있고, 추가로 시간이 이른 아침인 것을 나타낸다고 결정한다. 미리 구성된 디스플레이 요소들(1220, 1225)은 서브 영역의 이름("Mennoti's Coffee Shop")을 인용하는 서브 영역 기술자(sub-area descriptor)(1405)를 포함하고 커피숍 아바타를 도시한다. 또한, 미리 구성된 디스플레이 요소들은 아바타(1410)를 졸린 상태로 보여주도록 미리 구성되는 아바타(1410)를 포함하고, "Good Morning"과 같은 시간 관련 문구를 추가로 포함한다.
도 15는, 일부 예시적인 실시예들에 따른, 물리적 장소(1215) 관련 렌즈 객체의 변형을 구현하기 위한 예시적인 사용자 인터페이스(1500)를 도시한다. 도 15의 렌즈 객체는 동작 1140에서 선택되고, 여기서, 렌즈 컨텍스트 엔진(610)은 클라이언트 디바이스(102)가 서브 영역("Townhouse")에 있고, 추가로 시간이 해피 아워(예를 들어, 5PM 내지 8PM)인 것을 나타낸다고 결정한다. 미리 구성된 디스플레이 요소들은 서브 영역의 명칭(양식화된 폰트의 "Townhouse")을 인용하는 서브 영역 기술자(1505)를 포함한다. 또한, 미리 구성된 디스플레이 요소들은 잘 차려 입고 열대 칵테일을 들고 있는 아바타를 보여주도록 미리 구성되고 "Happy Hour"와 같은 시간 기반 문구를 추가로 포함하는 디스플레이 요소(1510)를 포함한다.
상기한 것은 단지 예시적인 문구들이고, 아바타, 폰트 등은 단지 컨텍스트를 사용하여 선택된 미리 구성된 요소들의 예들일 뿐이고, 다른 변형들이 구현될 수 있다는 것이 인식될 것이다. 예를 들어, 시간 관련된 "Happy Hour" 대신에, 이 문구는 서브 영역의 다른 특징들과 관련될 수 있다. 예를 들어, Townhouse가 고품질 마르가리타로 잘 알려져 있는 경우, 디스플레이 요소(1510)의 문구는 "Worlds Best Margarita"를 인용할 수 있다. 또한, Townhouse가 현재 아이템들에 대한 프로모션을 하고 있다면, 문구는 일부 예시적인 실시예들에 따라, "Margaritas only $1 during happy hour!"를 인용할 수 있다. 다른 변형들도 마찬가지로 구현될 수 있다.
도 16은, 일부 예시적인 실시예들에 따른, 도시된 아이템 관련 렌즈 객체의 변형을 구현하기 위한 예시적인 사용자 인터페이스(1600)를 도시한다. 도 16의 렌즈 객체는 도 11의 동작 1155을 통해 선택되며, 여기서 렌즈 컨텍스트 엔진(610)은 도시된 아이템들(1605) 및 시간을 사용하여 렌즈 객체를 선택한다. 도 16에서, 클라이언트 디바이스(102)의 스크린 상에 디스플레이된 라이브 피드(1210)는 팬케이크들을 도시한다. 동작 1015에서 센서 엔진(620)은 국지적으로 실행된 컴퓨터 비전 알고리즘들을 사용하여 도시된 아이템들(1605)을 계란들 및 팬케이크들로서 식별하거나, 또는 대안적으로 아이템들의 하나 이상의 이미지를 서버(112)에 전송하고, 서버(112)가 이어서 더욱 엄격한 컴퓨터 비전 분석 알고리즘들을 실행하여, 도시된 아이템들(1605)을 계란들 및 팬케이크들로서 식별할 수 있다. 아이템들이 계란들 및 팬케이크들로서 식별된 후에, 동작 1150으로부터 검색된 로컬 시간을 추가로 사용하여 하루 중 시간이 아침인 것을 확인할 수 있다. 도 16의 미리 구성된 디스플레이 요소들(1610)은 깨어나서 스트레칭하는 것처럼 보이는 사용자의 아바타 및 문구 "Mornin'"를 포함한다. 다른 아바타들 및 문구들이 마찬가지로 구현될 수 있다. 이러한 방식으로, 미리 구성된 디스플레이 요소들(1610)은 일반적인 영역도 서브 영역 데이터도 이용가능하지 않을 때 객체를 선택하는데 사용될 수 있다.
도 17은 본 명세서에 설명된 다양한 하드웨어 아키텍처들과 함께 사용될 수 있는 예시적인 소프트웨어 아키텍처(1706)를 예시하는 블록도이다. 도 17은 소프트웨어 아키텍처의 비제한적인 예이며, 본 명세서에 설명된 기능성을 용이하게 하기 위해 많은 다른 아키텍처들이 구현될 수 있다는 것이 인식될 것이다. 소프트웨어 아키텍처(1706)는, 특히, 프로세서들, 메모리, 및 I/O 컴포넌트들을 포함하는, 도 18의 머신(1800)과 같은 하드웨어 상에서 실행될 수 있다. 대표적인 하드웨어 계층(1752)이 예시되어 있으며, 예를 들어, 도 18의 머신(1800)을 나타낼 수 있다. 대표적인 하드웨어 계층(1752)은 연관된 실행가능 명령어들(1704)을 갖는 처리 유닛(1754)을 포함한다. 실행가능 명령어들(1704)은 본 명세서에 설명된 방법들, 컴포넌트들 등의 구현을 포함하는, 소프트웨어 아키텍처(1706)의 실행가능 명령어들을 나타낸다. 하드웨어 계층(1752)은 또한 메모리/스토리지(1756)를 포함하며, 이것은 또한 실행가능 명령어들(1704)을 갖는다. 하드웨어 계층(1752)은 또한 다른 하드웨어(1758)를 포함할 수 있다.
도 17의 예시적인 아키텍처에서, 소프트웨어 아키텍처(1706)는 각각의 계층이 특정 기능성을 제공하는 계층들의 스택으로서 개념화될 수 있다. 예를 들어, 소프트웨어 아키텍처(1706)는 운영 체제(1702), 라이브러리들(1720), 프레임워크들/미들웨어(1718), 애플리케이션들(1716), 및 프레젠테이션 계층(1714)과 같은 계층들을 포함할 수 있다. 동작적으로, 애플리케이션들(1716) 및/또는 계층들 내의 다른 컴포넌트들은 소프트웨어 스택을 통해 애플리케이션 프로그래밍 인터페이스(API) 호출들(1708)을 인보크하고 메시지들(1712)의 형태로 응답을 수신할 수 있다. 예시된 계층들은 본질적으로 대표적인 것이며 소프트웨어 아키텍처들 모두가 모든 계층들을 갖는 것은 아니다. 예를 들어, 일부 모바일 또는 특수 목적 운영 체제들은 프레임워크들/미들웨어(1718)를 제공하지 않을 수 있지만, 다른 것들은 그러한 계층을 제공할 수도 있다. 다른 소프트웨어 아키텍처들은 추가의 또는 상이한 계층들을 포함할 수 있다.
운영 체제(1702)는 하드웨어 리소스들을 관리하고 공통 서비스들을 제공할 수도 있다. 운영 체제(1702)는, 예를 들어, 커널(1722), 서비스들(1724), 및 드라이버들(1726)을 포함할 수 있다. 커널(1722)은 하드웨어와 다른 소프트웨어 계층들 사이에서 추상화 계층(abstraction layer)으로서 작용할 수 있다. 예를 들어, 커널(1722)은 메모리 관리, 프로세서 관리(예를 들어, 스케줄링), 컴포넌트 관리, 네트워킹, 보안 설정 등을 담당할 수 있다. 서비스들(1724)은 다른 소프트웨어 계층들을 위한 다른 공통 서비스들을 제공할 수 있다. 드라이버들(1726)은 기저 하드웨어(underlying hardware)를 제어하거나 그와 인터페이싱하는 것을 담당한다. 예를 들어, 드라이버들(1726)은 하드웨어 구성에 따라 디스플레이 드라이버, 카메라 드라이버, 블루투스® 드라이버, 플래시 메모리 드라이버, 직렬 통신 드라이버(예를 들어, 범용 직렬 버스(USB) 드라이버), Wi-Fi® 드라이버, 오디오 드라이버, 전력 관리 드라이버 등을 포함한다.
라이브러리들(1720)은 애플리케이션들(1716) 및/또는 다른 컴포넌트들 및/또는 계층들에 의해 사용되는 공통 인프라스트럭처를 제공한다. 라이브러리들(1720)은, 다른 소프트웨어 컴포넌트들이 기저 운영 체제(1702) 기능성(예를 들어, 커널(1722), 서비스들(1724), 및/또는 드라이버들(1726))과 직접 인터페이스하는 것보다 더 쉬운 방식으로 작업들을 수행할 수 있게 하는 기능성을 제공한다. 라이브러리들(1720)은 메모리 할당 기능들, 문자열 조작 기능들, 수학 기능들 등과 같은 기능들을 제공할 수 있는 시스템 라이브러리들(1744)(예를 들어, C 표준 라이브러리)을 포함할 수 있다. 게다가, 라이브러리들(1720)은 미디어 라이브러리들(예를 들어, MPEG4, H.264, MP3, AAC, AMR, JPG, 또는 PNG와 같은 다양한 미디어 포맷의 제시 및 조작을 지원하는 라이브러리들), 그래픽 라이브러리들(예를 들어, 디스플레이 상에 2D 및 3D 그래픽 콘텐츠를 렌더링하는 데 사용될 수 있는 OpenGL 프레임워크), 데이터베이스 라이브러리들(예를 들어, 다양한 관계형 데이터베이스 기능들을 제공할 수 있는 SQLite), 웹 라이브러리들(예를 들어, 웹 브라우징 기능성을 제공할 수 있는 WebKit) 등과 같은 API 라이브러리들(1746)을 포함할 수 있다. 라이브러리들(1720)은 또한 많은 다른 API들을 애플리케이션들(1716) 및 다른 소프트웨어 컴포넌트들/모듈들에 제공하는 매우 다양한 다른 라이브러리들(1748)을 포함할 수 있다.
프레임워크들/미들웨어(1718)는 애플리케이션들(1716) 및/또는 다른 소프트웨어 컴포넌트들/모듈들에 의해 사용될 수 있는 더 하이-레벨의 공통 인프라스트럭처를 제공한다. 예를 들어, 프레임워크들/미들웨어(1718)는 다양한 그래픽 사용자 인터페이스(GUI) 기능들, 하이-레벨 리소스 관리, 하이-레벨 로케이션 서비스들 등을 제공할 수 있다. 프레임워크들/미들웨어(1718)는 애플리케이션들(1716) 및/또는 다른 소프트웨어 컴포넌트들/모듈들에 의해 이용될 수 있는 광범위한 다른 API들을 제공할 수 있으며, 그 중 일부는 특정 운영 체제(1702) 또는 플랫폼에 특정할 수 있다.
애플리케이션들(1716)은 빌트인 애플리케이션들(1738) 및/또는 제3자 애플리케이션들(1740)을 포함한다. 대표적인 빌트인 애플리케이션들(1738)의 예들은, 연락처 애플리케이션, 브라우저 애플리케이션, 북 리더 애플리케이션, 로케이션 애플리케이션, 미디어 애플리케이션, 메시징 애플리케이션, 및/또는 게임 애플리케이션을 포함할 수 있고, 이에 제한되지 않는다. 제3자 애플리케이션들(1740)은 특정 플랫폼의 벤더 이외의 엔티티에 의해 ANDROID™ 또는 IOS™ 소프트웨어 개발 키트(SDK)를 이용하여 개발된 애플리케이션을 포함할 수 있고, IOS™, ANDROID™, WINDOWS® Phone, 또는 다른 모바일 운영 체제들과 같은 모바일 운영 체제 상에서 실행되는 모바일 소프트웨어일 수 있다. 제3자 애플리케이션들(1740)은 본 명세서에 설명된 기능성을 용이하게 하기 위해 모바일 운영 체제(예컨대, 운영 체제(1702))에 의해 제공되는 API 호출들(1708)을 인보크할 수 있다.
애플리케이션들(1716)은 시스템의 사용자들과 상호작용하기 위한 사용자 인터페이스들을 생성하기 위해 빌트인 운영 체제 기능들(예를 들어, 커널(1722), 서비스들(1724), 및/또는 드라이버들(1726)), 라이브러리들(1720), 및 프레임워크들/미들웨어(1718)를 사용할 수 있다. 대안적으로, 또는 추가적으로, 일부 시스템들에서, 사용자와의 상호작용들은 프레젠테이션 계층(1714)과 같은 프레젠테이션 계층을 통해 발생할 수 있다. 이러한 시스템들에서, 애플리케이션/컴포넌트 "로직"은 사용자와 상호작용하는 애플리케이션/컴포넌트의 양태들로부터 분리될 수 있다.
도 18은, 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어들을 판독하여 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행할 수 있는, 일부 예시적인 실시예들에 따른, 머신(1800)의 컴포넌트들을 예시하는 블록도이다. 구체적으로, 도 18은 머신(1800)으로 하여금 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행하게 하기 위한 명령어들(1816)(예를 들어, 소프트웨어, 프로그램, 애플리케이션, 애플릿(applet), 앱, 또는 다른 실행가능 코드)이 실행될 수 있는 컴퓨터 시스템의 예시적인 형태로 머신(1800)의 도식적 표현을 도시한다. 이와 같이, 명령어들(1816)은 본 명세서에 설명된 모듈들 또는 컴포넌트들을 구현하기 위해 사용될 수 있다. 명령어들(1816)은, 일반적인 비-프로그래밍된 머신(1800)을, 설명되고 예시된 기능들을 설명된 방식으로 수행하도록 프로그래밍된 특정한 머신(1800)으로 변환한다. 대안적인 실시예들에서, 머신(1800)은 독립형 디바이스로서 동작하거나 다른 머신들에 결합(예를 들어, 네트워크화)될 수 있다. 네트워크화된 배치에서, 머신(1800)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 자격으로 동작하거나, 피어-투-피어(또는 분산형) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(1800)은, 서버 컴퓨터, 클라이언트 컴퓨터, 개인용 컴퓨터(PC), 태블릿 컴퓨터, 랩톱 컴퓨터, 넷북, 셋톱박스(STB), 개인용 디지털 보조기기(PDA), 엔터테인먼트 미디어 시스템, 셀룰러 전화기, 스마트폰(1205), 모바일 디바이스, 웨어러블 디바이스(예를 들어, 스마트 시계), 스마트 홈 디바이스(예를 들어, 스마트 어플라이언스), 다른 스마트 디바이스들, 웹 어플라이언스, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 또는 머신(1800)에 의해 취해질 액션들을 특정하는 명령어들(1816)을 순차적으로 또는 다른 방식으로 실행할 수 있는 임의의 머신을 포함할 수 있고, 이에 제한되지 않는다. 게다가, 단일 머신(1800)만이 예시되어 있지만, "머신"이라는 용어는 또한 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행하기 위해 명령어들(1816)을 개별적으로 또는 공동으로 실행하는 머신들의 컬렉션을 포함하는 것으로 간주되어야 한다.
머신(1800)은, 예컨대 버스(1802)를 통해 서로 통신하도록 구성될 수 있는, 프로세서들(1810), 메모리/스토리지(1830), 및 I/O 컴포넌트들(1850)을 포함할 수 있다. 메모리/스토리지(1830)는 메인 메모리, 또는 다른 메모리 스토리지와 같은 메모리(1832), 및 스토리지 유닛(1836)을 포함할 수 있으며, 둘 다 예컨대 버스(1802)를 통해 프로세서들(1810)에 액세스 가능하다. 스토리지 유닛(1836) 및 메모리(1832)는 본 명세서에 설명된 방법론들 또는 기능들 중 임의의 하나 이상을 구현하는 명령어들(1816)을 저장한다. 명령어들(1816)은 또한, 머신(1800)에 의한 그의 실행 동안, 완전히 또는 부분적으로, 메모리(1832) 내에, 스토리지 유닛(1836) 내에, 프로세서들(1810) 중 적어도 하나 내에(예를 들어, 프로세서의 캐시 메모리 내에), 또는 이들의 임의의 적합한 조합으로 존재할 수 있다. 따라서, 메모리(1832), 스토리지 유닛(1836), 및 프로세서들(1810)의 메모리는 머신 판독가능 매체의 예들이다.
I/O 컴포넌트들(1850)은, 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 송신하고, 정보를 교환하고, 측정들을 캡처하는 등을 수행하기 위한 매우 다양한 컴포넌트들을 포함할 수 있다. 특정한 머신(1800)에 포함되는 특정 I/O 컴포넌트들(1850)은 머신의 타입에 의존할 것이다. 예를 들어, 모바일 폰과 같은 휴대용 머신은 아마 터치 입력 디바이스 또는 다른 그러한 입력 메커니즘을 포함할 것인 반면, 헤드리스 서버 머신(headless server machine)은 아마 그러한 터치 입력 디바이스를 포함하지 않을 것이다. I/O 컴포넌트들(1850)은 도 18에 도시되지 않은 많은 다른 컴포넌트를 포함할 수 있다는 것이 인식될 것이다. I/O 컴포넌트들(1850)은 단지 이하의 논의를 간소화하기 위해 기능성에 따라 그룹화되어 있고, 이러한 그룹화는 결코 제한적인 것이 아니다. 다양한 예시적인 실시예들에서, I/O 컴포넌트들(1850)은 출력 컴포넌트들(1852) 및 입력 컴포넌트들(1854)을 포함할 수 있다. 출력 컴포넌트들(1852)은, 시각적 컴포넌트들(예를 들어, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT)과 같은 디스플레이), 음향 컴포넌트들(예를 들어, 스피커), 햅틱 컴포넌트들(예를 들어, 진동 모터, 저항 메커니즘), 다른 신호 생성기 등을 포함할 수 있다. 입력 컴포넌트들(1854)은, 영숫자 입력 컴포넌트들(예를 들어, 키보드, 영숫자 입력을 수신하도록 구성된 터치 스크린, 포토-광학 키보드, 또는 다른 영숫자 입력 컴포넌트), 포인트 기반 입력 컴포넌트들(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 기구들), 촉각 입력 컴포넌트들(예를 들어, 물리적 버튼, 터치 또는 터치 제스처의 로케이션 및/또는 힘을 제공하는 터치 스크린, 또는 다른 촉각 입력 컴포넌트), 오디오 입력 컴포넌트들(예를 들어, 마이크로폰) 등을 포함할 수 있다.
추가의 예시적인 실시예들에서, I/O 컴포넌트들(1850)은 광범위한 다른 컴포넌트들 중에서 바이오메트릭 컴포넌트들(1856), 모션 컴포넌트들(1858), 환경 컴포넌트들(1860), 또는 위치 컴포넌트들(1862)을 포함할 수 있다. 예를 들어, 바이오메트릭 컴포넌트들(1856)은, 표현들(예를 들어, 손 표현, 얼굴 표정, 음성 표현, 신체 제스처, 또는 시선 추적)을 검출하고, 생체신호들(예를 들어, 혈압, 심박수, 체온, 땀, 또는 뇌파)을 측정하고, 사람을 식별(예를 들어, 음성 식별, 망막 식별, 얼굴 식별, 지문 식별, 또는 뇌파계 기반 식별)하고, 이와 유사한 것을 하는 컴포넌트들을 포함할 수 있다. 모션 컴포넌트들(1858)은 가속도 센서 컴포넌트들(예를 들어, 가속도계), 중력 센서 컴포넌트들, 회전 센서 컴포넌트들(예를 들어, 자이로스코프) 등을 포함할 수 있다. 환경 컴포넌트들(1860)은, 예를 들어, 조명 센서 컴포넌트들(예를 들어, 광도계), 온도 센서 컴포넌트들(예를 들어, 주위 온도를 검출하는 하나 이상의 온도계), 습도 센서 컴포넌트들, 압력 센서 컴포넌트들(예를 들어, 기압계), 음향 센서 컴포넌트들(예를 들어, 배경 노이즈를 검출하는 하나 이상의 마이크로폰), 근접 센서 컴포넌트들(예를 들어, 근처의 객체들을 검출하는 적외선 센서들), 가스 센서들(예를 들어, 안전을 위해 유해성 가스들의 농도들을 검출하거나 대기 중의 오염물질들을 측정하는 가스 센서들), 또는 주변 물리적 환경에 대응하는 표시들, 측정들, 또는 신호들을 제공할 수 있는 다른 컴포넌트들을 포함할 수 있다. 위치 컴포넌트들(1862)은, 로케이션 센서 컴포넌트들(예를 들어, GPS 수신기 컴포넌트), 고도 센서 컴포넌트들(예를 들어, 고도계 또는 고도가 도출될 수 있는 기압을 검출하는 기압계), 배향 센서 컴포넌트들(예를 들어, 자력계) 등을 포함할 수 있다.
통신은 매우 다양한 기술들을 사용하여 구현될 수 있다. I/O 컴포넌트들(1850)은 머신(1800)을 결합(1882) 및 결합(1872)을 통해 각각 네트워크(1880) 또는 디바이스들(1870)에 결합하도록 동작가능한 통신 컴포넌트들(1864)을 포함할 수 있다. 예를 들어, 통신 컴포넌트들(1864)은, 네트워크 인터페이스 컴포넌트, 또는 네트워크(1880)와 인터페이스하기 위한 다른 적합한 디바이스를 포함할 수 있다. 추가 예들에서, 통신 컴포넌트들(1864)은 유선 통신 컴포넌트들, 무선 통신 컴포넌트들, 셀룰러 통신 컴포넌트들, 근접장 통신(NFC) 컴포넌트들, 블루투스® 컴포넌트들(예를 들어, 블루투스® 로우 에너지), Wi-Fi® 컴포넌트들, 및 다른 모달리티들을 통해 통신을 제공하는 다른 통신 컴포넌트들을 포함할 수 있다. 디바이스들(1870)은 다른 머신 또는 매우 다양한 주변 디바이스들 중 임의의 것(예를 들어, 범용 직렬 버스(USB)를 통해 결합된 주변 디바이스)일 수 있다.
더욱이, 통신 컴포넌트들(1864)은 식별자들을 검출할 수 있거나 식별자들을 검출하도록 동작가능한 컴포넌트들을 포함할 수 있다. 예를 들어, 통신 컴포넌트들(1864)은 무선 주파수 식별(RFID) 태그 판독기 컴포넌트들, NFC 스마트 태그 검출 컴포넌트들, 광학 판독기 컴포넌트들(예를 들어, UPC(Universal Product Code) 바코드와 같은 1차원 바코드들, QR(Quick Response) 코드와 같은 다차원 바코드들, Aztec 코드, 데이터 매트릭스(Data Matrix), Dataglyph, MaxiCode, PDF418, 울트라 코드(Ultra Code), UCC RSS-2D 바코드, 및 다른 광학 코드들을 검출하는 광학 센서), 또는 음향 검출 컴포넌트들(예를 들어, 태깅된 오디오 신호들을 식별하는 마이크로폰들)을 포함할 수 있다. 게다가, 인터넷 프로토콜(IP) 지오로케이션을 통한 로케이션, Wi-Fi® 신호 삼각측량을 통한 로케이션, 특정 로케이션을 나타낼 수 있는 NFC 비컨 신호의 검출을 통한 로케이션 등과 같은, 다양한 정보가 통신 컴포넌트들(1864)을 통해 도출될 수 있다.
용어집
이러한 컨텍스트에서 "캐리어 신호(CARRIER SIGNAL)"는 머신(1800)에 의한 실행을 위한 명령어들(1816)을 저장, 인코딩, 또는 운반할 수 있는 임의의 무형 매체를 지칭하고, 그러한 명령어들(1816)의 통신을 용이하게 하기 위한 디지털 또는 아날로그 통신 신호들 또는 다른 무형 매체를 포함한다. 명령어들(1816)은 네트워크 인터페이스 디바이스를 통해 전송 매체를 사용하여 그리고 다수의 잘 알려진 전송 프로토콜들 중 임의의 하나를 사용하여 네트워크(1880)를 통해 송신 또는 수신될 수 있다.
이러한 컨텍스트에서 "클라이언트 디바이스(CLIENT DEVICE)"는 하나 이상의 서버 시스템 또는 다른 클라이언트 디바이스들(102)로부터 리소스들을 획득하기 위해 통신 네트워크(1880)에 인터페이스하는 임의의 머신(1800)을 지칭한다. 클라이언트 디바이스(102)는, 모바일폰, 데스크톱 컴퓨터, 랩톱, PDA, 스마트폰(1205), 태블릿, 울트라북, 넷북, 멀티-프로세서 시스템, 마이크로프로세서-기반 또는 프로그램가능 소비자 전자 시스템, 게임 콘솔, 셋톱박스, 또는 사용자가 네트워크(1880)에 액세스하기 위해 사용할 수 있는 임의의 다른 통신 디바이스일 수 있고, 이에 제한되지 않는다.
이러한 컨텍스트에서 "통신 네트워크(COMMUNICATIONS NETWORK)"는 애드 혹 네트워크, 인트라넷, 엑스트라넷, VPN(virtual private network), LAN(local area network), 무선 LAN(WLAN), WAN(wide area network), 무선 WAN(WWAN), MAN(metropolitan area network), 인터넷, 인터넷의 일부, PSTN(Public Switched Telephone Network)의 일부, POTS(plain old telephone service) 네트워크, 셀룰러 전화 네트워크, 무선 네트워크, Wi-Fi® 네트워크, 다른 타입의 네트워크, 또는 2개 이상의 이러한 네트워크의 조합일 수 있는, 네트워크(1880)의 하나 이상의 부분을 지칭한다. 예를 들어, 네트워크 또는 네트워크(1880)의 일부는 무선 또는 셀룰러 네트워크를 포함할 수 있고, 결합(coupling)은 코드 분할 다중 액세스(Code Division Multiple Access)(CDMA) 접속, 이동 통신 세계화 시스템(Global System for Mobile communications)(GSM) 접속, 또는 다른 타입의 셀룰러 또는 무선 결합일 수 있다. 이 예에서, 결합은 1xRTT(Single Carrier Radio Transmission Technology), EVDO(Evolution-Data Optimized) 기술, GPRS(General Packet Radio Service) 기술, EDGE(Enhanced Data rates for GSM Evolution) 기술, 3G를 포함한 3GPP(third Generation Partnership Project), 4세대 무선(4G) 네트워크, UMTS(Universal Mobile Telecommunications System), HSPA(High-Speed Packet Access), WiMAX(Worldwide Interoperability for Microwave Access), LTE(Long-Term Evolution) 표준, 다양한 표준 설정 기구에 의해 정의된 다른 것들, 다른 장거리 프로토콜들, 또는 다른 데이터 전송 기술과 같은, 다양한 타입의 데이터 전송 기술들 중 임의의 것을 구현할 수 있다.
이러한 컨텍스트에서 "단기적 메시지(EMPHEMERAL MESSAGE)"는 시간-제한된 지속기간 동안 액세스 가능한 메시지(400)를 지칭한다. 단기적 메시지(502)는 텍스트, 이미지, 비디오 등일 수 있다. 단기적 메시지(502)에 대한 액세스 시간은 메시지 전송자에 의해 설정될 수 있다. 대안적으로, 액세스 시간은 디폴트 설정 또는 수신자에 의해 특정된 설정일 수 있다. 설정 기법에 관계없이, 메시지(400)는 일시적이다.
이러한 컨텍스트에서 "머신 판독가능 매체(MACHINE-READABLE MEDIUM)"는 명령어들(1816) 및 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 컴포넌트, 디바이스, 또는 다른 유형 매체를 지칭하며, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리, 광학 매체, 자기 매체, 캐시 메모리, 다른 타입들의 스토리지(예를 들어, 소거가능하고 프로그래밍가능한 판독 전용 메모리(EPROM)) 및/또는 이들의 임의의 적절한 조합을 포함할 수 있고, 이에 제한되지 않는다. "머신 판독가능 매체"라는 용어는, 명령어들(1816)을 저장할 수 있는 단일의 매체 또는 다수의 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 또는 연관된 캐시들 및 서버들)를 포함하는 것으로 간주되어야 한다. "머신 판독가능 매체"라는 용어는 또한, 명령어들(1816)이, 머신(1800)의 하나 이상의 프로세서(1810)에 의해 실행될 때, 머신(1800)으로 하여금 본 명세서에 설명된 방법론들 중 임의의 하나 이상을 수행하게 하도록, 머신(1800)에 의한 실행을 위한 명령어들(1816)(예를 들어, 코드)을 저장할 수 있는 임의의 매체, 또는 다수의 매체의 조합을 포함하는 것으로 간주되어야 한다. 따라서, "머신 판독가능 매체"는 단일 스토리지 장치 또는 디바이스뿐만 아니라, 다수의 스토리지 장치 또는 디바이스를 포함하는 "클라우드-기반" 스토리지 시스템들 또는 스토리지 네트워크들을 지칭한다. "머신 판독가능 매체"라는 용어는 신호 그 자체를 제외한다.
이러한 컨텍스트에서 "컴포넌트(COMPONENT)"는 함수 또는 서브루틴 호출들, 분기 포인트들, API들, 또는 특정한 처리 또는 제어 기능들의 분할 또는 모듈화를 제공하는 다른 기술들에 의해 정의된 경계들을 갖는 디바이스, 물리적 엔티티, 또는 로직을 지칭한다. 컴포넌트들은 그들의 인터페이스들을 통해 다른 컴포넌트들과 결합되어 머신 프로세스를 실행할 수 있다. 컴포넌트는, 보통 관련된 기능들 중 특정한 기능을 수행하는 프로그램의 일부 및 다른 컴포넌트들과 함께 사용되도록 설계된 패키징된 기능 하드웨어 유닛일 수 있다. 컴포넌트들은 소프트웨어 컴포넌트들(예를 들어, 머신 판독가능 매체 상에 구현된 코드) 또는 하드웨어 컴포넌트들 중 어느 하나를 구성할 수 있다. "하드웨어 컴포넌트"는 특정 동작들을 수행할 수 있는 유형의 유닛(tangible unit)이고, 특정 물리적 방식으로 구성되거나 배열될 수 있다. 다양한 예시적인 실시예들에서, 하나 이상의 컴퓨터 시스템(예를 들어, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 컴포넌트(예를 들어, 프로세서(1812) 또는 프로세서들(1810)의 그룹)는 본 명세서에 설명된 바와 같이 특정 동작들을 수행하도록 동작하는 하드웨어 컴포넌트로서 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)에 의해 구성될 수 있다. 하드웨어 컴포넌트는 또한, 기계적으로, 전자적으로, 또는 이들의 임의의 적합한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 컴포넌트는 특정 동작들을 수행하도록 영구적으로 구성되는 전용 회로 또는 로직을 포함할 수 있다. 하드웨어 컴포넌트는, FPGA(field-programmable gate array) 또는 ASIC(application-specific integrated circuit)와 같은 특수 목적 프로세서일 수 있다. 하드웨어 컴포넌트는 또한 특정 동작들을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그램가능 로직 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 컴포넌트는 범용 프로세서 또는 다른 프로그램가능 프로세서에 의해 실행되는 소프트웨어를 포함할 수 있다. 일단 그러한 소프트웨어에 의해 구성되면, 하드웨어 컴포넌트들은 구성된 기능들을 수행하도록 고유하게 맞춤화된 특정 머신들(또는 머신(1800)의 특정 컴포넌트들)이 되고 더 이상 범용 프로세서들(1810)이 아니다. 하드웨어 컴포넌트를 기계적으로, 전용의 영구적으로 구성된 회로에, 또는 일시적으로 구성된 회로(예를 들어, 소프트웨어에 의해 구성됨)에 구현하기로 하는 결정은 비용 및 시간 고려사항들에 의해 주도될 수 있다는 것이 인식될 것이다. 따라서, "하드웨어 컴포넌트"(또는 "하드웨어에 의해 구현되는 컴포넌트(hardware-implemented component)")라는 구문은, 유형 엔티티, 즉, 특정 방식으로 동작하거나 본 명세서에 설명된 특정 동작들을 수행하도록 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들어, 하드와이어드) 또는 일시적으로 구성되는(예를 들어, 프로그램되는) 엔티티를 포괄하는 것으로 이해해야 한다.
하드웨어 컴포넌트들이 일시적으로 구성되는(예를 들어, 프로그램되는) 실시예들을 고려할 때, 하드웨어 컴포넌트들 각각이 임의의 하나의 시간 인스턴스에서 구성 또는 인스턴스화될 필요는 없다. 예를 들어, 하드웨어 컴포넌트가 특수 목적 프로세서가 되도록 소프트웨어에 의해 구성된 범용 프로세서(1812)를 포함하는 경우에, 범용 프로세서(1812)는 상이한 시간들에서 (예를 들어, 상이한 하드웨어 컴포넌트들을 포함하는) 각자 상이한 특수 목적 프로세서들로서 구성될 수 있다. 따라서 소프트웨어는 예를 들어, 하나의 시간 인스턴스에서는 특정한 하드웨어 컴포넌트를 구성하고 상이한 시간 인스턴스에서는 상이한 하드웨어 컴포넌트를 구성하도록 특정한 프로세서(1812) 또는 프로세서들(1810)을 구성한다.
하드웨어 컴포넌트들은 다른 하드웨어 컴포넌트들에 정보를 제공하고 그들로부터 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 컴포넌트들은 통신가능하게 결합되어 있는 것으로 간주될 수 있다. 다수의 하드웨어 컴포넌트들이 동시에 존재하는 경우에, 하드웨어 컴포넌트들 중 둘 이상 사이의 또는 그들 중의 (예를 들어, 적절한 회로들 및 버스들을 통한) 신호 송신을 통해 통신이 달성될 수 있다. 다수의 하드웨어 컴포넌트들이 상이한 시간들에서 구성되거나 인스턴스화되는 실시예들에서, 그러한 하드웨어 컴포넌트들 사이의 또는 그 중의 통신들은, 예를 들어, 다수의 하드웨어 컴포넌트들이 액세스하는 메모리 구조들 내의 정보의 저장 및 검색을 통해 달성될 수 있다. 예를 들어, 하나의 하드웨어 컴포넌트는 동작을 수행하고, 그에 통신가능하게 결합되는 메모리 디바이스에 그 동작의 출력을 저장할 수 있다. 그 다음, 추가의 하드웨어 컴포넌트가, 나중에, 저장된 출력을 검색 및 처리하기 위해 메모리 디바이스에 액세스할 수 있다. 하드웨어 컴포넌트들은 또한 입력 또는 출력 디바이스들과의 통신들을 개시할 수 있고, 리소스(예를 들어, 정보의 컬렉션)에서 동작할 수 있다.
본 명세서에 설명된 예시적인 방법들의 다양한 동작은 관련 동작들을 수행하도록 일시적으로 구성되거나(예를 들어, 소프트웨어에 의해) 영구적으로 구성되는 하나 이상의 프로세서(1810)에 의해 적어도 부분적으로 수행될 수 있다. 일시적으로 구성되든 영구적으로 구성되든 간에, 그러한 프로세서들(1810)은 본 명세서에 설명된 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서에 의해 구현되는 컴포넌트들(processor-implemented components)을 구성할 수 있다. 본 명세서에 사용된 바와 같이, "프로세서에 의해 구현되는 컴포넌트(processor-implemented component)"는 하나 이상의 프로세서(1810)를 사용하여 구현되는 하드웨어 컴포넌트를 지칭한다. 유사하게, 본 명세서에 설명된 방법들은 적어도 부분적으로 프로세서에 의해 구현될 수 있고, 특정한 프로세서(1812) 또는 프로세서들(1810)은 하드웨어의 예이다. 예를 들어, 방법의 동작들 중 적어도 일부가 하나 이상의 프로세서(1810) 또는 프로세서에 의해 구현되는 컴포넌트에 의해 수행될 수 있다. 더욱이, 하나 이상의 프로세서(1810)는 또한 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어(software as a service)"(SaaS)로서 관련 동작들의 수행을 지원하도록 동작할 수 있다. 예를 들어, 동작들 중 적어도 일부는 (프로세서들(1810)을 포함하는 머신들(1800)의 예들로서) 컴퓨터들의 그룹에 의해 수행될 수 있고, 이러한 동작들은 네트워크(1880)(예를 들어, 인터넷)를 통해 그리고 하나 이상의 적절한 인터페이스(예를 들어, API)를 통해 액세스 가능하다. 동작들 중 특정한 것의 수행은 단일 머신(1800) 내에 존재할 뿐만 아니라, 다수의 머신(1800)에 걸쳐 배치되는, 프로세서들(1810) 사이에 분산될 수 있다. 일부 예시적인 실시예들에서, 프로세서들(1810) 또는 프로세서에 의해 구현되는 컴포넌트들은 단일의 지리적 로케이션에(예를 들어, 가정 환경, 사무실 환경, 또는 서버 팜(server farm) 내에) 위치할 수 있다. 다른 예시적인 실시예들에서, 프로세서들(1810) 또는 프로세서에 의해 구현되는 컴포넌트들은 다수의 지리적 로케이션에 걸쳐 분산될 수 있다.
이러한 컨텍스트에서 "프로세서(PROCESSOR)"는 제어 신호들(예를 들어, "커맨드들", "op 코드들", "머신 코드" 등)에 따라 데이터 값들을 조작하고 머신(1800)을 동작시키기 위해 인가되는 대응하는 출력 신호들을 생성하는 임의의 회로 또는 가상 회로(실제 프로세서(1812) 상에서 실행되는 로직에 의해 에뮬레이트되는 물리 회로)를 지칭한다. 프로세서는, 예를 들어, 중앙 처리 유닛(CPU), RISC(reduced instruction set computing) 프로세서, CISC(complex instruction set computing) 프로세서, GPU(graphics processing unit), DSP(digital signal processor), ASIC, 무선 주파수 집적 회로(RFIC), 또는 이들의 임의의 조합일 수 있다. 프로세서(1810)는 또한, 명령어들(1816)을 동시에 실행할 수 있는 둘 이상의 독립 프로세서(1812, 1814)(때때로 "코어"라고도 함)를 갖는 멀티-코어 프로세서(1810)일 수 있다.
이러한 컨텍스트에서 "타임스탬프(TIMESTAMP)"는 특정 이벤트가 언제 발생했는지를 식별하는, 예를 들어, 때때로 1초의 소수까지 정확한, 날짜 및 시각(time of day)을 제공하는, 문자들 또는 인코딩된 정보의 시퀀스를 지칭한다.
본 특허 문서의 개시내용의 일부는 저작권 보호를 받은 자료를 포함한다. 저작권 소유자는 특허 문서 또는 특허 개시내용을 특허상표청 특허 파일들 또는 레코드들에 나타나 있는 대로 누군가가 팩시밀리 복사하는 것에는 이의가 없지만, 그렇지 않은 경우에는 모든 저작권 권리 일체를 보유한다.
다음의 넘버링된 예들은 실시예들이다:
1. 시스템으로서,
머신의 하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의해 실행될 때, 상기 머신으로 하여금, 동작들을 수행하게 하는 명령어들을 저장하는 메모리
를 포함하고, 상기 동작들은:
클라이언트 디바이스 상에서, 상기 클라이언트 디바이스의 현재 지리적 로케이션에 적어도 부분적으로 기초하여 렌즈 가상 객체를 결정하는 동작 - 상기 렌즈 가상 객체는 상기 클라이언트 디바이스의 상기 현재 지리적 로케이션 근처의 물리적 장소에 대해 미리 구성된 하나 이상의 디스플레이 요소를 특정함 - ;
적어도 상기 클라이언트 디바이스의 상기 현재 지리적 로케이션 및 상기 식별된 렌즈 가상 객체에 특정된 상기 물리적 장소의 목적지 지리적 로케이션을 사용하여 헤딩 데이터를 결정하는 동작 - 상기 현재 지리적 로케이션은, 상기 클라이언트 디바이스의 하나 이상의 로케이션 서비스를 호출함으로써 적어도 부분적으로 생성되고, 상기 헤딩 데이터는 상기 클라이언트 디바이스의 현재 배향에 대한 상기 목적지 지리적 로케이션의 방향을 특정함 - ; 및
상기 클라이언트 디바이스 상에 디스플레이된 하나 이상의 이미지 상에서, 상기 하나 이상의 미리 구성된 디스플레이 요소로부터의 방향 디스플레이 요소를 제시하게 하는 동작 - 상기 방향 디스플레이 요소는 상기 클라이언트 디바이스의 상기 현재 배향에 대한 상기 목적지 지리적 로케이션의 방향을 표시함 -
을 포함하는, 시스템.
2. 예 1에 있어서, 상기 동작들은:
상기 물리적 장소가 상기 하나 이상의 이미지의 시야 내에 있음을 나타내는 상기 헤딩 데이터에 대한 업데이트를 식별하는 동작 - 상기 헤딩 데이터에 대한 업데이트는 상기 클라이언트 디바이스의 물리적 움직임에 응답하여 야기됨 - ; 및
상기 물리적 장소가 상기 하나 이상의 이미지의 시야 내에 있다는 것에 응답하여, 상기 하나 이상의 이미지 내의 상기 물리적 장소의 로케이션을 나타내는 상기 미리 구성된 디스플레이 요소들로부터의 하나 이상의 물리적 장소 디스플레이 요소를 디스플레이하는 동작
을 추가로 포함하는, 시스템.
3. 예 1에 있어서, 상기 동작들은: 추가적인 클라이언트 디바이스로부터, 상기 물리적 장소의 상기 목적지 지리적 로케이션에 대한 상기 미리 구성된 디스플레이 요소들을 수신하는 동작을 추가로 포함하는, 시스템.
4. 예 1에 있어서, 상기 미리 구성된 디스플레이 요소들은 상기 물리적 장소와 연관된 비즈니스의 디자인 스킴을 디스플레이하도록 미리 구성되는, 시스템.
5. 예 4에 있어서, 상기 디자인 스킴은 컬러 스킴들, 하나 이상의 로고, 및 하나 이상의 단어 중 적어도 하나를 포함하는 상기 비즈니스의 하나 이상의 상표 등록된 디자인 스킴을 포함하는, 시스템.
6. 예 2에 있어서, 상기 물리적 장소는 하나 이상의 물리적 객체에 의해 상기 시야 내에서 난독화되고, 상기 물리적 장소 디스플레이 요소들은 상기 하나 이상의 물리적 객체 위에 오버레이되는, 시스템.
7. 예 1에 있어서, 상기 렌즈 가상 객체들 각각은 상기 클라이언트 디바이스 상에서 실행되는 운영 체제의 복수의 로케이션 서비스들을 특정하는 래퍼 기능을 사용하여 상기 클라이언트 디바이스의 하나 이상의 로케이션 서비스를 호출하도록 구성되는, 시스템.
8. 예 1에 있어서, 상기 현재 지리적 로케이션은 상기 클라이언트 디바이스의 GPS 센서에 의해 생성된 위도 및 경도 데이터를 포함하고, 상기 목적지 지리적 로케이션은 상기 물리적 로케이션의 위도 및 경도 데이터를 포함하는, 시스템.
9. 예 1에 있어서, 상기 방향 디스플레이 요소는 포인터 디스플레이 요소를 사용하여 상기 방향을 표시하는, 시스템.
10. 예 1에 있어서, 상기 헤딩 데이터를 결정하는 동작들은:
상기 하나 이상의 로케이션 서비스를 사용하여, 상기 물리적 장소의 절대적 방위를 식별하는 동작; 및
상기 클라이언트 디바이스가 물리적으로 이동될 때 상기 클라이언트 디바이스 상의 배향 센서를 사용하여 상기 헤딩 데이터를 동적으로 업데이트하는 동작
을 포함하는 동작들을 사용하는, 시스템.
11. 예 2에 있어서, 상기 물리적 장소가 하나 이상의 이미지 피드에 있음을 나타내는 동작들은: 상기 클라이언트 디바이스의 현재 배향이 상기 물리적 장소의 방위와 일치한다고 결정하는 동작을 포함하는 동작들을 사용하는, 시스템.
12. 예 2에 있어서, 상기 물리적 장소가 상기 하나 이상의 이미지 피드에 있음을 나타내는 동작들은:
상기 클라이언트 디바이스의 현재 배향과 상기 물리적 장소의 방위 사이의 차이를 결정하는 동작
을 포함하는 동작들을 사용하는, 시스템.
13. 예 1에 있어서, 상기 하나 이상의 이미지는 비디오 피드의 프레임들이 생성될 때 상기 디스플레이 디바이스 상에 디스플레이되는 비디오 피드이고, 상기 물리적 장소 디스플레이 요소들은 상기 비디오 피드의 프레임들 상에 동적으로 디스플레이되는, 시스템.
14. 방법으로서,
적어도 하나의 프로세서를 사용하여 클라이언트 디바이스 상에서, 상기 클라이언트 디바이스의 현재 지리적 로케이션에 적어도 부분적으로 기초하여 렌즈 가상 객체를 결정하는 동작 - 상기 렌즈 가상 객체는 상기 클라이언트 디바이스의 상기 현재 지리적 로케이션 근처의 물리적 장소에 대해 미리 구성된 하나 이상의 디스플레이 요소를 특정함 - ;
상기 클라이언트 디바이스의 상기 현재 지리적 로케이션 및 상기 식별된 렌즈 가상 객체에 특정된 상기 물리적 장소의 목적지 지리적 로케이션을 적어도 사용하여 헤딩 데이터를 결정하는 동작 - 상기 현재 지리적 로케이션은, 상기 클라이언트 디바이스의 하나 이상의 로케이션 서비스를 호출함으로써 적어도 부분적으로 생성되고, 상기 헤딩 데이터는 상기 클라이언트 디바이스의 현재 배향에 대한 상기 목적지 지리적 로케이션의 방향을 특정함 - ; 및
상기 클라이언트 디바이스 상에 디스플레이된 하나 이상의 이미지 상에서, 상기 하나 이상의 미리 구성된 디스플레이 요소로부터의 방향 디스플레이 요소를 제시하게 하는 동작 - 상기 방향 디스플레이 요소는 상기 클라이언트 디바이스의 상기 현재 배향에 대한 상기 목적지 지리적 로케이션의 방향을 표시함 -
을 포함하는 방법.
15. 예 14에 있어서, 상기 동작들은:
상기 물리적 장소가 상기 하나 이상의 이미지의 시야 내에 있음을 나타내는 상기 헤딩 데이터에 대한 업데이트를 식별하는 동작 - 상기 헤딩 데이터에 대한 업데이트는 상기 클라이언트 디바이스의 물리적 움직임에 응답하여 야기됨 - ; 및
상기 물리적 장소가 상기 하나 이상의 이미지의 시야 내에 있다는 것에 응답하여, 상기 하나 이상의 이미지 피드 내의 상기 물리적 장소의 로케이션을 나타내는 상기 미리 구성된 디스플레이 요소들로부터의 하나 이상의 물리적 장소 디스플레이 요소를 디스플레이하는 동작
을 추가로 포함하는, 방법.
16. 예 14에 있어서, 상기 동작들은:
추가적인 클라이언트 디바이스로부터, 상기 물리적 장소의 상기 목적지 지리적 로케이션에 대한 상기 미리 구성된 디스플레이 요소들을 수신하는 동작
을 추가로 포함하는, 방법.
17. 예 14에 있어서, 상기 미리 구성된 디스플레이 요소들은 상기 물리적 장소와 연관된 비즈니스의 디자인 스킴을 디스플레이하도록 미리 구성되는, 방법.
18. 예 17에 있어서, 상기 디자인 스킴은 컬러 스킴들, 하나 이상의 로고, 및 하나 이상의 단어 중 적어도 하나를 포함하는 상기 비즈니스의 하나 이상의 상표 등록된 디자인 스킴을 포함하는, 방법.
19. 머신에 의해 실행될 때, 상기 머신으로 하여금, 예 14 내지 예 18 중 어느 하나의 방법의 동작들을 수행하게 하는 명령어들을 포함하는 머신 판독가능 저장 디바이스.

Claims (20)

  1. 클라이언트 디바이스로서,
    하나 이상의 프로세서;
    카메라;
    디스플레이 디바이스; 및
    상기 하나 이상의 프로세서에 의해 실행될 때, 상기 클라이언트 디바이스로 하여금 동작들을 수행하게 하는 명령어들을 저장하는 메모리
    를 포함하고, 상기 동작들은:
    네트워크 플랫폼으로부터, 상이한 디스플레이 요소들 및 하루 중 시간 파라미터(time of day parameter)들과 연관된 복수의 렌즈 가상 객체를 수신하고 - 상기 복수의 렌즈 가상 객체는 다른 클라이언트 디바이스들을 사용하는 사용자들에 의해 상기 네트워크 플랫폼에 업로드되고, 상기 복수의 렌즈 가상 객체 중 렌즈 가상 객체는 상기 렌즈 가상 객체 내의 하나 이상의 디스플레이 요소 및 상기 하나 이상의 디스플레이 요소와 연관된 하루 중 시간 파라미터를 포함함 -;
    상기 메모리에서, 상기 클라이언트 디바이스의 상기 카메라에 의해 생성되는 비디오 내에서 도시된 아이템을 식별하고;
    상기 렌즈 가상 객체 내의 상기 하루 중 시간 파라미터에 대응하는 상기 클라이언트 디바이스의 현재 시간에 기초하여 상기 복수의 렌즈 가상 객체 중 상기 렌즈 가상 객체를 선택하고;
    상기 디스플레이 디바이스 상에, 상기 선택된 렌즈 가상 객체와 연관된 하나 이상의 디스플레이 요소 중 디스플레이 요소를 디스플레이하는 것 - 상기 비디오가 상기 디스플레이 디바이스 상에 디스플레이되는 동안, 상기 디스플레이 요소는 상기 도시된 아이템과 함께 디스플레이됨 -
    을 포함하는, 클라이언트 디바이스.
  2. 제1항에 있어서, 상기 복수의 렌즈 가상 객체는 제1 렌즈 가상 객체 및 제2 렌즈 가상 객체를 포함하고, 상기 제1 렌즈 가상 객체는 제1 시간 파라미터 및 하나 이상의 디스플레이 요소의 제1 세트와 연관되고, 상기 제2 렌즈 가상 객체는 제2 시간 파라미터 및 하나 이상의 디스플레이 요소의 제2 세트와 연관되고, 상기 제1 시간 파라미터는 상기 제2 시간 파라미터와 상이한 시간을 특정하는, 클라이언트 디바이스.
  3. 제2항에 있어서, 상기 제1 렌즈 가상 객체는 상기 클라이언트 디바이스의 상기 현재 시간에 매칭하는 상기 제1 렌즈 가상 객체의 상기 제1 시간 파라미터에 기초하는 상기 선택된 렌즈 가상 객체이고, 상기 비디오가 디스플레이되는 동안 디스플레이되는 상기 디스플레이 요소는 상기 제1 렌즈 가상 객체의 하나 이상의 디스플레이 요소의 상기 제1 세트 내에 있는, 클라이언트 디바이스.
  4. 제2항에 있어서, 상기 제1 시간 파라미터는 하루의 일부에 대응하고, 상기 제2 시간 파라미터는 상기 하루의 다른 일부에 대응하는, 클라이언트 디바이스.
  5. 제2항에 있어서, 상기 제1 렌즈 가상 객체는 하나 이상의 디스플레이 요소의 제1 세트와 함께 상기 메모리에 저장되는, 클라이언트 디바이스.
  6. 제2항에 있어서, 상기 제2 렌즈 가상 객체는 상기 네트워크 플랫폼 상에서 디스플레이 요소들의 상기 제2 세트를 참조하는, 클라이언트 디바이스.
  7. 제6항에 있어서, 상기 동작들은:
    상기 네트워크 플랫폼으로부터, 디스플레이 요소들의 상기 제2 세트를 다운로드하는 것을 더 포함하는, 클라이언트 디바이스.
  8. 제1항에 있어서, 상기 동작들은:
    이미지 특징을 식별하도록 상기 비디오를 스캔하는 것을 더 포함하고,
    상기 디스플레이 요소는 상기 비디오 내의 상기 이미지 특징에 적용되는, 클라이언트 디바이스.
  9. 제1항에 있어서, 상기 동작들은:
    상기 클라이언트 디바이스의 상기 카메라를 사용하여 상기 클라이언트 디바이스 상에 라이브 비디오로서 상기 비디오를 생성하는 것을 더 포함하고,
    상기 디스플레이 요소는 상기 라이브 비디오가 생성되는 동안 디스플레이되는, 클라이언트 디바이스.
  10. 제9항에 있어서, 상기 라이브 비디오는 상기 카메라에 의해 생성되고, 실시간 또는 거의 실시간으로 상기 디스플레이 디바이스 상에 디스플레이되는, 클라이언트 디바이스.
  11. 방법으로서,
    클라이언트 디바이스에 의해, 상이한 디스플레이 요소들 및 하루 중 시간 파라미터들과 연관된 복수의 렌즈 가상 객체를 수신하는 단계 - 상기 복수의 렌즈 가상 객체는 네트워크 플랫폼으로부터 수신되고, 상기 복수의 렌즈 가상 객체는 다른 클라이언트 디바이스들을 사용하는 사용자들에 의해 상기 네트워크 플랫폼에 업로드되고, 상기 복수의 렌즈 가상 객체 중 렌즈 가상 객체는 상기 렌즈 가상 객체 내의 하나 이상의 디스플레이 요소 및 상기 하나 이상의 디스플레이 요소와 연관된 하루 중 시간 파라미터를 포함함 -;
    상기 클라이언트 디바이스의 카메라에 의해 생성되는 비디오 내에서 도시된 아이템을 식별하는 단계;
    상기 렌즈 가상 객체 내의 상기 하루 중 시간 파라미터에 대응하는 상기 클라이언트 디바이스의 현재 시간에 기초하여 상기 복수의 렌즈 가상 객체 중 상기 렌즈 가상 객체를 선택하는 단계; 및
    디스플레이 디바이스 상에, 상기 선택된 렌즈 가상 객체와 연관된 하나 이상의 디스플레이 요소 중 디스플레이 요소를 디스플레이하는 단계 - 상기 비디오가 상기 디스플레이 디바이스 상에 디스플레이되는 동안, 상기 디스플레이 요소는 상기 도시된 아이템과 함께 디스플레이됨 -
    를 포함하는 방법.
  12. 제11항에 있어서, 상기 복수의 렌즈 가상 객체는 제1 렌즈 가상 객체 및 제2 렌즈 가상 객체를 포함하고, 상기 제1 렌즈 가상 객체는 제1 시간 파라미터 및 하나 이상의 디스플레이 요소의 제1 세트와 연관되고, 상기 제2 렌즈 가상 객체는 제2 시간 파라미터 및 하나 이상의 디스플레이 요소의 제2 세트와 연관되고, 상기 제1 시간 파라미터는 상기 제2 시간 파라미터와 상이한 시간을 특정하는, 방법.
  13. 제12항에 있어서, 상기 제1 렌즈 가상 객체는 상기 클라이언트 디바이스의 상기 현재 시간에 매칭하는 상기 제1 렌즈 가상 객체의 상기 제1 시간 파라미터에 기초하는 상기 선택된 렌즈 가상 객체이고, 상기 비디오가 디스플레이되는 동안 디스플레이되는 상기 디스플레이 요소는 상기 제1 렌즈 가상 객체의 하나 이상의 디스플레이 요소의 상기 제1 세트 내에 있는, 방법.
  14. 제12항에 있어서, 상기 제1 시간 파라미터는 하루의 일부에 대응하고, 상기 제2 시간 파라미터는 상기 하루의 다른 일부에 대응하는, 방법.
  15. 제12항에 있어서, 상기 제1 렌즈 가상 객체는 하나 이상의 디스플레이 요소의 제1 세트와 함께 상기 클라이언트 디바이스 상에 저장되는, 방법.
  16. 제12항에 있어서, 상기 제2 렌즈 가상 객체는 상기 네트워크 플랫폼 상에서 디스플레이 요소들의 상기 제2 세트를 참조하는, 방법.
  17. 제16항에 있어서,
    상기 네트워크 플랫폼으로부터, 디스플레이 요소들의 상기 제2 세트를 다운로드하는 단계를 더 포함하는 방법.
  18. 제11항에 있어서,
    이미지 특징을 식별하도록 상기 비디오를 스캔하는 단계를 더 포함하고,
    상기 디스플레이 요소는 상기 비디오 내의 상기 이미지 특징에 적용되는, 방법.
  19. 제11항에 있어서,
    상기 클라이언트 디바이스의 상기 카메라를 사용하여 상기 클라이언트 디바이스 상에 라이브 비디오로서 상기 비디오를 생성하는 단계를 더 포함하고,
    상기 디스플레이 요소는 상기 라이브 비디오가 생성되는 동안 디스플레이되는, 방법.
  20. 클라이언트 디바이스에 의해 실행될 때, 상기 클라이언트 디바이스로 하여금 동작들을 수행하게 하는 명령어들을 구현하는 머신 판독가능 저장 디바이스로서, 상기 동작들은:
    네트워크 플랫폼으로부터, 상이한 디스플레이 요소들 및 하루 중 시간 파라미터들과 연관된 복수의 렌즈 가상 객체를 수신하고 - 상기 복수의 렌즈 가상 객체는 다른 클라이언트 디바이스들을 사용하는 사용자들에 의해 상기 네트워크 플랫폼에 업로드되고, 상기 복수의 렌즈 가상 객체 중 렌즈 가상 객체는 상기 렌즈 가상 객체 내의 하나 이상의 디스플레이 요소 및 상기 하나 이상의 디스플레이 요소와 연관된 하루 중 시간 파라미터를 포함함 -;
    상기 클라이언트 디바이스의 카메라에 의해 생성되는 비디오 내에서 도시된 아이템을 식별하고;
    상기 렌즈 가상 객체 내의 상기 하루 중 시간 파라미터에 대응하는 상기 클라이언트 디바이스의 현재 시간에 기초하여 상기 복수의 렌즈 가상 객체 중 상기 렌즈 가상 객체를 선택하고;
    디스플레이 디바이스 상에, 상기 선택된 렌즈 가상 객체와 연관된 하나 이상의 디스플레이 요소 중 디스플레이 요소를 디스플레이하는 것 - 상기 비디오가 상기 디스플레이 디바이스 상에 디스플레이되는 동안, 상기 디스플레이 요소는 상기 도시된 아이템과 함께 디스플레이됨 -
    을 포함하는, 머신 판독가능 저장 디바이스.
KR1020217020077A 2017-03-06 2018-03-06 가상 비전 시스템 KR102416985B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227022465A KR102614536B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201762467693P 2017-03-06 2017-03-06
US62/467,693 2017-03-06
US15/654,429 2017-07-19
US15/654,429 US10565795B2 (en) 2017-03-06 2017-07-19 Virtual vision system
KR1020197028944A KR102272256B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템
PCT/US2018/021139 WO2018165154A1 (en) 2017-03-06 2018-03-06 Virtual vision system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197028944A Division KR102272256B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227022465A Division KR102614536B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템

Publications (2)

Publication Number Publication Date
KR20210084658A KR20210084658A (ko) 2021-07-07
KR102416985B1 true KR102416985B1 (ko) 2022-07-05

Family

ID=63355780

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020197028944A KR102272256B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템
KR1020227022465A KR102614536B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템
KR1020217020077A KR102416985B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020197028944A KR102272256B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템
KR1020227022465A KR102614536B1 (ko) 2017-03-06 2018-03-06 가상 비전 시스템

Country Status (5)

Country Link
US (3) US10565795B2 (ko)
EP (1) EP3593326A4 (ko)
KR (3) KR102272256B1 (ko)
CN (1) CN110383344A (ko)
WO (1) WO2018165154A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11670057B2 (en) 2017-03-06 2023-06-06 Snap Inc. Virtual vision system
US11961196B2 (en) 2023-03-17 2024-04-16 Snap Inc. Virtual vision system

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US9015285B1 (en) 2014-11-12 2015-04-21 Snapchat, Inc. User interface for accessing media at a geographic location
KR102371138B1 (ko) 2015-03-18 2022-03-10 스냅 인코포레이티드 지오-펜스 인가 프로비저닝
US20190197312A1 (en) * 2017-09-13 2019-06-27 Edward Rashid Lahood Method, apparatus and computer-readable media for displaying augmented reality information
US10699485B2 (en) * 2018-01-04 2020-06-30 Universal City Studios Llc Systems and methods for textual overlay in an amusement park environment
US10375009B1 (en) * 2018-10-11 2019-08-06 Richard Fishman Augmented reality based social network with time limited posting
CN113168425A (zh) * 2018-12-05 2021-07-23 斯纳普公司 激励用户对社交网络内容做出贡献的ui和设备
US10699123B1 (en) * 2018-12-26 2020-06-30 Snap Inc. Dynamic contextual media filter
CN109920065B (zh) * 2019-03-18 2023-05-30 腾讯科技(深圳)有限公司 资讯的展示方法、装置、设备及存储介质
US20200349188A1 (en) * 2019-05-02 2020-11-05 Oath Inc. Tagging an object within an image and/or a video
US11134036B2 (en) 2019-07-05 2021-09-28 Snap Inc. Event planning in a content sharing platform
CN110634483B (zh) * 2019-09-03 2021-06-18 北京达佳互联信息技术有限公司 人机交互方法、装置、电子设备及存储介质
US11776253B2 (en) * 2020-03-27 2023-10-03 Snap Inc. Displaying object names in association with augmented reality content
US11335088B2 (en) 2020-03-30 2022-05-17 Snap Inc. Augmented reality item collections
US11900504B2 (en) 2020-03-31 2024-02-13 Snap Inc. Augmented reality experiences for physical products in a messaging system
US11700225B2 (en) * 2020-04-23 2023-07-11 Snap Inc. Event overlay invite messaging system
US11308327B2 (en) 2020-06-29 2022-04-19 Snap Inc. Providing travel-based augmented reality content with a captured image
US20210406965A1 (en) * 2020-06-29 2021-12-30 Snap Inc. Providing travel-based augmented reality content relating to user-submitted reviews
US11680814B2 (en) * 2020-06-30 2023-06-20 Snap Inc. Augmented reality-based translations associated with travel
US11360733B2 (en) 2020-09-10 2022-06-14 Snap Inc. Colocated shared augmented reality without shared backend
US11538225B2 (en) * 2020-09-30 2022-12-27 Snap Inc. Augmented reality content generator for suggesting activities at a destination geolocation
US11509612B2 (en) * 2020-12-15 2022-11-22 Microsoft Technology Licensing, Llc Modifying an avatar to reflect a user's expression in a messaging platform
US20220414969A1 (en) * 2021-06-28 2022-12-29 Snap Inc. Integrating augmented reality into the web view platform
US11949527B2 (en) 2022-04-25 2024-04-02 Snap Inc. Shared augmented reality experience in video chat
US11847303B1 (en) * 2022-08-22 2023-12-19 American Express Travel Related Services Company, Inc. User interface for depicting informational elements for selectable items

Family Cites Families (573)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US666223A (en) 1896-12-01 1901-01-15 Alfred Shedlock Refrigerating apparatus.
US4581634A (en) 1982-11-18 1986-04-08 Williams Jarvis L Security apparatus for controlling access to a predetermined area
US5072412A (en) 1987-03-25 1991-12-10 Xerox Corporation User interface with multiple workspaces for sharing display system objects
US4975690A (en) 1988-11-07 1990-12-04 Ibm Corporation Method for concurrent data entry and manipulation in multiple applications
JPH0644339A (ja) 1992-03-06 1994-02-18 Hewlett Packard Co <Hp> 図形オブジェクト操作システム及び方法
US5493692A (en) 1993-12-03 1996-02-20 Xerox Corporation Selective delivery of electronic messages in a multiple computer system based on context and environment of a user
FI98694C (fi) 1994-08-23 1997-07-25 Nokia Telecommunications Oy Sijainninpäivitys matkaviestinjärjestelmässä
US8799461B2 (en) 1994-11-29 2014-08-05 Apple Inc. System for collecting, analyzing, and transmitting information relevant to transportation networks
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
WO1996024213A1 (en) 1995-02-01 1996-08-08 Freemark Communications, Inc. System and method for providing end-user free email
US5978773A (en) 1995-06-20 1999-11-02 Neomedia Technologies, Inc. System and method for using an ordinary article of commerce to access a remote computer
US5913040A (en) 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
US6049711A (en) 1995-08-23 2000-04-11 Teletrac, Inc. Method and apparatus for providing location-based information services
US5794210A (en) 1995-12-11 1998-08-11 Cybergold, Inc. Attention brokerage
DE59708043D1 (de) 1996-06-17 2002-10-02 Siemens Ag Kommunikationssystem und Verfahren zur Aufnahme und Verwaltung digitaler Bilder
US20030164856A1 (en) 1996-06-28 2003-09-04 Randy Prager Desktop, stream-based, information management system
US6216141B1 (en) 1996-12-06 2001-04-10 Microsoft Corporation System and method for integrating a document into a desktop window on a client computer
US6456852B2 (en) 1997-01-08 2002-09-24 Trafficmaster Usa, Inc. Internet distributed real-time wireless location database
US6285987B1 (en) 1997-01-22 2001-09-04 Engage, Inc. Internet advertising system
JP3610718B2 (ja) 1997-01-31 2005-01-19 富士通株式会社 電子会議システム
JPH10268959A (ja) 1997-03-24 1998-10-09 Canon Inc 情報処理装置及びその方法
CA2202106C (en) 1997-04-08 2002-09-17 Mgi Software Corp. A non-timeline, non-linear digital multimedia composition method and system
JP3783331B2 (ja) 1997-05-14 2006-06-07 ブラザー工業株式会社 メール送信システム、メール受信システムおよび記録媒体
HUP0001042A3 (en) 1997-06-17 2000-10-30 Purdue Pharma Lp Self-destructing document and e-mail messaging system, apparatus and method
US6029141A (en) 1997-06-27 2000-02-22 Amazon.Com, Inc. Internet-based customer referral system
US6622174B1 (en) 1997-08-15 2003-09-16 Sony Corporation System for sending, converting, and adding advertisements to electronic messages sent across a network
FI973945A (fi) 1997-10-13 1999-04-14 Nokia Telecommunications Oy Lyhytsanomia välittävä tiedonsiirtojärjestelmä
JPH11120487A (ja) 1997-10-21 1999-04-30 Toyota Motor Corp 移動体端末装置、情報提供装置、情報提供システム、情報提供方法及び移動体端末装置のためのプログラムを記録した媒体
JPH11154240A (ja) 1997-11-20 1999-06-08 Nintendo Co Ltd 取込み画像を用いて画像を作成するための画像作成装置
US6014090A (en) 1997-12-22 2000-01-11 At&T Corp. Method and apparatus for delivering local information to travelers
US5999932A (en) 1998-01-13 1999-12-07 Bright Light Technologies, Inc. System and method for filtering unsolicited electronic mail messages using data matching and heuristic processing
US6012098A (en) 1998-02-23 2000-01-04 International Business Machines Corp. Servlet pairing for isolation of the retrieval and rendering of data
US6484196B1 (en) 1998-03-20 2002-11-19 Advanced Web Solutions Internet messaging system and method for use in computer networks
US20020106199A1 (en) 1998-05-27 2002-08-08 Osamu Ikeda Image signal recording/reproduction apparatus, method employed therein, and image signal recording apparatus
US7173651B1 (en) 1998-06-02 2007-02-06 Knowles Andrew T Apparatus and system for prompt digital photo delivery and archival
US6205432B1 (en) 1998-06-05 2001-03-20 Creative Internet Concepts, Llc Background advertising system
AU4549099A (en) 1998-06-05 1999-12-20 Creative Internet Concepts Llc System for inserting background advertising into web page presentation or e-mailmessages
US6698020B1 (en) 1998-06-15 2004-02-24 Webtv Networks, Inc. Techniques for intelligent video ad insertion
US6353170B1 (en) 1998-09-04 2002-03-05 Interlego Ag Method and system for composing electronic music and generating graphical information
US6757713B1 (en) 1998-09-23 2004-06-29 John W. L. Ogilvie Method for including a self-removing indicator in a self-removing message
US6643684B1 (en) 1998-10-08 2003-11-04 International Business Machines Corporation Sender- specified delivery customization
US6167435A (en) 1998-10-30 2000-12-26 Netcreations, Inc. Double opt-in™ method and system for verifying subscriptions to information distribution services
US6334149B1 (en) 1998-12-22 2001-12-25 International Business Machines Corporation Generic operating system usage in a remote initial program load environment
KR19990073076A (ko) 1999-03-30 1999-10-05 주진용 인터넷전자우편및채팅을이용한광고방법
US6832222B1 (en) 1999-06-24 2004-12-14 International Business Machines Corporation Technique for ensuring authorized access to the content of dynamic web pages stored in a system cache
US7240199B2 (en) 2000-12-06 2007-07-03 Rpost International Limited System and method for verifying delivery and integrity of electronic messages
US6449657B2 (en) 1999-08-06 2002-09-10 Namezero.Com, Inc. Internet hosting system
US6549768B1 (en) 1999-08-24 2003-04-15 Nokia Corp Mobile communications matching system
WO2001017298A1 (en) 1999-09-02 2001-03-08 Automated Business Companies Communication and proximity authorization systems
US7149893B1 (en) 1999-09-07 2006-12-12 Poofaway.Com, Inc. System and method for enabling the originator of an electronic mail message to preset an expiration time, date, and/or event, and to control processing or handling by a recipient
US6487601B1 (en) 1999-09-30 2002-11-26 International Business Machines Corporation Dynamic mac allocation and configuration
US6684257B1 (en) 1999-10-15 2004-01-27 International Business Machines Corporation Systems, methods and computer program products for validating web content tailored for display within pervasive computing devices
WO2001029642A1 (en) 1999-10-18 2001-04-26 British Telecommunications Public Limited Company Personal mobile communication device
US6724403B1 (en) 1999-10-29 2004-04-20 Surfcast, Inc. System and method for simultaneous display of multiple information sources
US6631463B1 (en) 1999-11-08 2003-10-07 International Business Machines Corporation Method and apparatus for patching problematic instructions in a microprocessor using software interrupts
US6836792B1 (en) 1999-12-03 2004-12-28 Trend Micro Incorporated Techniques for providing add-on services for an email system
US6981040B1 (en) 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
TW482987B (en) 2000-01-03 2002-04-11 Amova Company Automatic media editing system
US7237002B1 (en) 2000-01-04 2007-06-26 International Business Machines Corporation System and method for dynamic browser management of web site
US8527345B2 (en) 2000-01-06 2013-09-03 Anthony Richard Rothschild System and method for adding an advertisement to a personal communication
EP1264258A2 (en) 2000-01-06 2002-12-11 Anthony R. Rothschild System and method for adding an advertisement to a personal communication
US6636247B1 (en) 2000-01-31 2003-10-21 International Business Machines Corporation Modality advertisement viewing system and method
US6523008B1 (en) 2000-02-18 2003-02-18 Adam Avrunin Method and system for truth-enabling internet communications via computer voice stress analysis
NO314530B1 (no) 2000-02-25 2003-03-31 Ericsson Telefon Ab L M Trådlös reservering, innsjekking, tilgangskontroll, utsjekking og betaling
US6684250B2 (en) 2000-04-03 2004-01-27 Quova, Inc. Method and apparatus for estimating a geographic location of a networked entity
AU2001253161A1 (en) 2000-04-04 2001-10-15 Stick Networks, Inc. Method and apparatus for scheduling presentation of digital content on a personal communication device
US7124164B1 (en) 2001-04-17 2006-10-17 Chemtob Helen J Method and apparatus for providing group interaction via communications networks
US6684238B1 (en) 2000-04-21 2004-01-27 International Business Machines Corporation Method, system, and program for warning an email message sender that the intended recipient's mailbox is unattended
US7663652B1 (en) 2000-05-03 2010-02-16 Morris Reese Enhanced electronic mail delivery system
US6542749B2 (en) 2000-06-10 2003-04-01 Telcontar Method and system for connecting proximately located mobile users based on compatible attributes
US6720860B1 (en) 2000-06-30 2004-04-13 International Business Machines Corporation Password protection using spatial and temporal variation in a high-resolution touch sensitive display
US6505123B1 (en) 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
US6968179B1 (en) 2000-07-27 2005-11-22 Microsoft Corporation Place specific buddy list services
US6618593B1 (en) 2000-09-08 2003-09-09 Rovingradar, Inc. Location dependent user matching system
US6700506B1 (en) 2000-09-14 2004-03-02 Everyday Wireless, Inc. Bus arrival notification system and methods related thereto
US6959324B1 (en) 2000-09-28 2005-10-25 International Business Machines Corporation Method and apparatus for adding data attributes to e-mail messages to enhance the analysis of delivery failures
US8707185B2 (en) 2000-10-10 2014-04-22 Addnclick, Inc. Dynamic information management system and method for content delivery and sharing in content-, metadata- and viewer-based, live social networking among users concurrently engaged in the same and/or similar content
US6904408B1 (en) 2000-10-19 2005-06-07 Mccarthy John Bionet method, system and personalized web content manager responsive to browser viewers' psychological preferences, behavioral responses and physiological stress indicators
JP2002132647A (ja) 2000-10-19 2002-05-10 Kizna Corp 電子掲示板及び電子掲示板システム
US6970907B1 (en) 2000-11-16 2005-11-29 International Business Machines Corporation Method and system for e-mail chain group discussions
US6774919B2 (en) 2000-12-06 2004-08-10 Microsoft Corporation Interface and related methods for reducing source accesses in a development system
GB0029880D0 (en) 2000-12-07 2001-01-24 Sony Uk Ltd Video and audio information processing
US7870592B2 (en) 2000-12-14 2011-01-11 Intertainer, Inc. Method for interactive video content programming
US6668173B2 (en) 2000-12-15 2003-12-23 Motorola, Inc. Instant message user location tracking system
US20020087631A1 (en) 2001-01-03 2002-07-04 Vikrant Sharma Email-based advertising system
GB2371948B (en) 2001-02-02 2005-09-14 Nokia Mobile Phones Ltd Mobile telecommunications device
US7299416B2 (en) 2001-02-15 2007-11-20 Denny Jaeger Metro for creating and using linear time line and play rectangle
US6529136B2 (en) 2001-02-28 2003-03-04 International Business Machines Corporation Group notification system and method for implementing and indicating the proximity of individuals or groups to other individuals or groups
US6446004B1 (en) 2001-02-28 2002-09-03 International Business Machines Corporation System and method for implementing proximity or location driven activities
US7042470B2 (en) 2001-03-05 2006-05-09 Digimarc Corporation Using embedded steganographic identifiers in segmented areas of geographic images and characteristics corresponding to imagery data derived from aerial platforms
US6636855B2 (en) 2001-03-09 2003-10-21 International Business Machines Corporation Method, system, and program for accessing stored procedures in a message broker
JP2002351782A (ja) 2001-05-23 2002-12-06 Nec Corp 伝言板システム及びそれに用いる伝言情報蓄積・検索方法
US7280658B2 (en) 2001-06-01 2007-10-09 International Business Machines Corporation Systems, methods, and computer program products for accelerated dynamic protection of data
US8195745B2 (en) 2001-06-07 2012-06-05 International Business Machines Corporation Automatic download of web content in response to an embedded link in an electronic mail message
JP3672245B2 (ja) 2001-06-15 2005-07-20 インターナショナル・ビジネス・マシーンズ・コーポレーション メール発信システム、メールサーバ、メール転送システム、メール転送方法、メール発信方法、メール配信方法、プログラム
US20050064926A1 (en) 2001-06-21 2005-03-24 Walker Jay S. Methods and systems for replaying a player's experience in a casino environment
JP3994692B2 (ja) 2001-07-04 2007-10-24 ヤマハ株式会社 音楽情報提供システム及び方法
US7188143B2 (en) 2001-07-06 2007-03-06 Yahoo! Inc. Messenger-controlled applications in an instant messaging environment
US7133900B1 (en) 2001-07-06 2006-11-07 Yahoo! Inc. Sharing and implementing instant messaging environments
US7380279B2 (en) 2001-07-16 2008-05-27 Lenel Systems International, Inc. System for integrating security and access for facilities and information systems
US6965785B2 (en) 2001-07-17 2005-11-15 Wildseed Ltd. Cooperative wireless luminescent imagery
US7765490B2 (en) 2001-07-18 2010-07-27 International Business Machines Corporation Method and system for software applications using a tiled user interface
JP4440503B2 (ja) 2001-09-20 2010-03-24 富士通株式会社 情報一覧作成装置及びそのプログラム
US7363258B2 (en) 2001-10-01 2008-04-22 Qurio Holdings, Inc. Method and system for distributing affiliate images in a peer-to-peer (P2P) photosharing network through affiliate branding
US7068309B2 (en) 2001-10-09 2006-06-27 Microsoft Corp. Image exchange with image annotation
JP2005506779A (ja) 2001-10-17 2005-03-03 ノキア コーポレイション 位置情報を提供する方法
US20030110503A1 (en) 2001-10-25 2003-06-12 Perkes Ronald M. System, method and computer program product for presenting media to a user in a media on demand framework
US7203380B2 (en) 2001-11-16 2007-04-10 Fuji Xerox Co., Ltd. Video production and compaction with collage picture frame user interface
US7610358B2 (en) 2001-11-26 2009-10-27 Time Warner Cable System and method for effectively presenting multimedia information materials
US7240089B2 (en) 2001-12-10 2007-07-03 International Business Machines Corporation Message queuing method, system, and program product with reusable pooling component
US20100098702A1 (en) 2008-09-16 2010-04-22 Longgui Wang Method of treating androgen independent prostate cancer
US7426534B2 (en) 2001-12-19 2008-09-16 International Business Machines Corporation Method and system for caching message fragments using an expansion attribute in a fragment link tag
AU2002366902A1 (en) 2001-12-21 2003-07-09 Nokia Corporation Location-based novelty index value and recommendation system and method
US7356564B2 (en) 2002-01-09 2008-04-08 At&T Delaware Intellectual Property, Inc. Method, system, and apparatus for providing self-destructing electronic mail messages
US7020494B2 (en) 2002-02-07 2006-03-28 Sap Aktiengesellschaft Integrating contextual information into mobile enterprise applications
US7027124B2 (en) 2002-02-28 2006-04-11 Fuji Xerox Co., Ltd. Method for automatically producing music videos
US7227937B1 (en) 2002-03-19 2007-06-05 Nortel Networks Limited Monitoring natural interaction for presence detection
US6658095B1 (en) 2002-03-19 2003-12-02 Nortel Networks Limited Customized presence information delivery
US7512649B2 (en) 2002-03-22 2009-03-31 Sun Microsytems, Inc. Distributed identities
US7180322B1 (en) 2002-04-16 2007-02-20 Transmeta Corporation Closed loop feedback control of integrated circuits
US7305436B2 (en) 2002-05-17 2007-12-04 Sap Aktiengesellschaft User collaboration through discussion forums
US7120622B2 (en) 2002-06-10 2006-10-10 Xerox Corporation Authoring tools, including content-driven treetables, for fluid text
US20060026067A1 (en) 2002-06-14 2006-02-02 Nicholas Frank C Method and system for providing network based target advertising and encapsulation
CN1214785C (zh) 2002-08-27 2005-08-17 孙丽琴 一种用于保护眼睛的透皮控穴位贴片及其制备方法
US7349921B2 (en) 2002-09-27 2008-03-25 Walgreen Co. Information distribution system
US6970088B2 (en) 2002-10-17 2005-11-29 Compex, Inc. Method for tracking and processing passengers and their transported articles
US8423042B2 (en) 2004-02-24 2013-04-16 Invisitrack, Inc. Method and system for positional finding using RF, continuous and/or combined movement
US7787886B2 (en) 2003-02-24 2010-08-31 Invisitrack, Inc. System and method for locating a target using RFID
US7411493B2 (en) 2003-03-01 2008-08-12 User-Centric Ip, L.P. User-centric event reporting
US6978147B2 (en) 2003-03-19 2005-12-20 Motorola, Inc. Wireless messaging device with selectable scroll display and message pre-fetch
GB2399928A (en) 2003-03-24 2004-09-29 Nec Technologies Baby or child monitor incorporating mobile telephone
US7458081B2 (en) 2003-03-27 2008-11-25 Microsoft Corporation Configurable event handling for an interactive design environment
US6825764B2 (en) 2003-03-28 2004-11-30 Sony Corporation User programmable portable proximity detector
US20040243531A1 (en) 2003-04-28 2004-12-02 Dean Michael Anthony Methods and systems for representing, using and displaying time-varying information on the Semantic Web
US20040243688A1 (en) 2003-05-30 2004-12-02 Wugofski Theodore D. Inbox caching of messages on a mobile terminal
US7315832B2 (en) 2003-06-18 2008-01-01 Copart, Inc. Online bidding system
US7085571B2 (en) 2003-08-26 2006-08-01 Kyocera Wireless Corp. System and method for using geographical location to determine when to exit an existing wireless communications coverage network
KR100754704B1 (ko) 2003-08-29 2007-09-03 삼성전자주식회사 위치에 따라 설정 변경이 가능한 이동통신 단말기 및 방법
JP2005115896A (ja) 2003-10-10 2005-04-28 Nec Corp 通信装置及び通信方法
EP1683043A1 (en) 2003-10-30 2006-07-26 Koninklijke Philips Electronics N.V. Method of predicting input
US7191221B2 (en) 2003-10-30 2007-03-13 International Business Machines Corporation Method for managing electronic mail receipts using audio-visual notification enhancements
US7797529B2 (en) 2003-11-10 2010-09-14 Yahoo! Inc. Upload security scheme
US20050104976A1 (en) 2003-11-17 2005-05-19 Kevin Currans System and method for applying inference information to digital camera metadata to identify digital picture content
US7451190B2 (en) 2003-11-26 2008-11-11 Yahoo! Inc. Associating multiple visibility profiles with a user of a real-time communication system
US20050119936A1 (en) 2003-12-02 2005-06-02 Robert Buchanan Sponsored media content
US7394345B1 (en) 2003-12-08 2008-07-01 At&T Corp. Arrangement for indicating presence of individual
US20050122405A1 (en) 2003-12-09 2005-06-09 Voss James S. Digital cameras and methods using GPS/time-based and/or location data to provide scene selection, and dynamic illumination and exposure adjustment
US7535890B2 (en) 2003-12-18 2009-05-19 Ayalogic, Inc. System and method for instant VoIP messaging
CN1886753A (zh) 2003-12-19 2006-12-27 富士通株式会社 现状信息处理方法和程序、终端装置、计算机及现状信息管理服务器
US8418067B2 (en) 2004-01-15 2013-04-09 Microsoft Corporation Rich profile communication with notifications
US7904510B2 (en) 2004-02-23 2011-03-08 Microsoft Corporation Systems and methods for managing discussion threads based on ratings
US8739071B2 (en) 2004-02-27 2014-05-27 Blackberry Limited System and method for message display and management
US20050193340A1 (en) 2004-03-01 2005-09-01 Amburgey James T. Apparatus and method regarding dynamic icons on a graphical user interface
US7206568B2 (en) 2004-03-15 2007-04-17 Loc-Aid Technologies, Inc. System and method for exchange of geographic location and user profiles over a wireless network
US7546554B2 (en) 2004-03-31 2009-06-09 Fuji Xerox Co., Ltd. Systems and methods for browsing multimedia content on small mobile devices
US7912904B2 (en) 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7607096B2 (en) 2004-05-01 2009-10-20 Microsoft Corporation System and method for a user interface directed to discovering and publishing presence information on a network
US8041701B2 (en) 2004-05-04 2011-10-18 DG FastChannel, Inc Enhanced graphical interfaces for displaying visual data
US7593740B2 (en) 2004-05-12 2009-09-22 Google, Inc. Location-based social software for mobile devices
WO2006005814A1 (fr) 2004-05-27 2006-01-19 France Telecom Procede et installation de transmission d’un message a duree de validite predeterminee a destination d’un terminal d’abonne
US8287380B2 (en) 2006-09-01 2012-10-16 Igt Intelligent wireless mobile device for use with casino gaming table systems
US7519670B2 (en) 2004-08-12 2009-04-14 International Business Machines Corporation Method for disappearing ink for text messaging
WO2006028108A1 (ja) 2004-09-07 2006-03-16 Nec Corporation 画像処理システム及びその方法と、それに用いられる端末及びサーバ
US20060058953A1 (en) 2004-09-07 2006-03-16 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
US8745132B2 (en) 2004-09-10 2014-06-03 Silver State Intellectual Technologies, Inc. System and method for audio and video portable publishing system
EP1828930A1 (en) 2004-11-24 2007-09-05 Koninklijke Philips Electronics N.V. Recording and playback of video clips based on audio selections
US7456872B2 (en) 2004-11-29 2008-11-25 Rothschild Trust Holdings, Llc Device and method for embedding and retrieving information in digital images
US7522548B2 (en) 2004-12-08 2009-04-21 Motorola, Inc. Providing presence information in a communication network
US8301159B2 (en) 2004-12-31 2012-10-30 Nokia Corporation Displaying network objects in mobile devices based on geolocation
JP4333599B2 (ja) 2005-02-15 2009-09-16 ソニー株式会社 情報処理装置、情報処理方法
US7801954B2 (en) 2005-02-25 2010-09-21 Microsoft Corporation Method and system for providing expanded presence information when a user is offline
US7424267B2 (en) 2005-03-07 2008-09-09 Broadcom Corporation Automatic resource availability using Bluetooth
US7423580B2 (en) 2005-03-14 2008-09-09 Invisitrack, Inc. Method and system of three-dimensional positional finding
US7650231B2 (en) 2005-04-25 2010-01-19 The Boeing Company AGTM airborne surveillance
US7454442B2 (en) 2005-04-25 2008-11-18 The Boeing Company Data fusion for advanced ground transportation system
US7349768B2 (en) 2005-04-25 2008-03-25 The Boeing Company Evacuation route planning tool
US8204052B2 (en) 2005-05-02 2012-06-19 Tekelec, Inc. Methods, systems, and computer program products for dynamically coordinating collection and distribution of presence information
US20060252438A1 (en) 2005-05-04 2006-11-09 Ansamaa Jarkko H Determining user equipment time zones for time-based service fulfillment
US7848765B2 (en) 2005-05-27 2010-12-07 Where, Inc. Location-based services
US20060287878A1 (en) 2005-06-20 2006-12-21 Engage Corporation System and Method for Facilitating the Introduction of Compatible Individuals
US8396456B2 (en) 2005-06-28 2013-03-12 Avaya Integrated Cabinet Solutions Inc. Visual voicemail management
US20070004426A1 (en) 2005-06-30 2007-01-04 Pfleging Gerald W Location information display for cellular device
US8963926B2 (en) 2006-07-11 2015-02-24 Pandoodle Corporation User customized animated video and method for making the same
US8275397B2 (en) 2005-07-14 2012-09-25 Huston Charles D GPS based friend location and identification system and method
US8266219B2 (en) 2005-07-20 2012-09-11 Research In Motion Limited Method and system for instant messaging conversation security
US7610345B2 (en) 2005-07-28 2009-10-27 Vaporstream Incorporated Reduced traceability electronic message system and method
US8600410B2 (en) 2005-07-28 2013-12-03 Unwired Planet, Llc Wireless network with adaptive autonomous location push
CN1794708A (zh) 2005-07-29 2006-06-28 华为技术有限公司 呈现业务系统及发布呈现信息的方法
JP4492481B2 (ja) 2005-08-16 2010-06-30 株式会社ニコン カメラハウジング
WO2007023494A2 (en) 2005-08-22 2007-03-01 Triplay Communications Ltd. Messaging system and method
US8405773B2 (en) 2005-09-06 2013-03-26 Nippon Telegraph And Telephone Corporation Video communication quality estimation apparatus, method, and program
US7933632B2 (en) 2005-09-16 2011-04-26 Microsoft Corporation Tile space user interface for mobile devices
US20070073823A1 (en) 2005-09-29 2007-03-29 International Business Machines Corporation Method and apparatus to secure and retrieve instant messages
CN1863172B (zh) 2005-09-30 2010-08-25 华为技术有限公司 一种发布呈现信息的方法和系统
US8284663B2 (en) 2005-10-14 2012-10-09 Turbine, Inc. Selectively ordered protocol for unreliable channels
CN1859320A (zh) 2005-10-26 2006-11-08 华为技术有限公司 一种提供呈现信息的方法及装置
US20070243887A1 (en) 2005-11-01 2007-10-18 Fonemine, Inc. Platform for telephone-optimized data and voice services
US20070214180A1 (en) 2005-11-14 2007-09-13 Crawford C S L Social network application for processing image or video data from wireless devices of users and methods of operation
US7639943B1 (en) 2005-11-15 2009-12-29 Kalajan Kevin E Computer-implemented system and method for automated image uploading and sharing from camera-enabled mobile devices
US20070208751A1 (en) 2005-11-22 2007-09-06 David Cowan Personalized content control
ITMI20052290A1 (it) 2005-11-30 2007-06-01 Pasqua Roberto Della Servizio di messaggistica istantanea con interfaccia utente minimizzata
US8732186B2 (en) 2005-12-01 2014-05-20 Peter Warren Computer-implemented method and system for enabling communication between networked users based on common characteristics
US20070136228A1 (en) 2005-12-13 2007-06-14 Petersen Lars H Systems and methods for check-in processing
US7747598B2 (en) 2006-01-27 2010-06-29 Google Inc. Geographic coding for location search queries
WO2007090133A2 (en) 2006-01-30 2007-08-09 Kramer Jame F System for providing a service to venues where people aggregate
US20070210936A1 (en) 2006-01-31 2007-09-13 Hilton Nicholson System and method for arrival alerts
US8254537B2 (en) 2006-02-03 2012-08-28 Motorola Mobility Llc Method and apparatus for updating a presence attribute
KR101031602B1 (ko) 2006-02-10 2011-04-27 스트랜즈, 아이엔씨. 휴대용미디어플레이어 파일들에 우선순위를 설정하는시스템 및 방법
WO2007093061A1 (en) 2006-02-16 2007-08-23 Shoplogix, Inc. System and method for managing manufacturing information
US20070198921A1 (en) 2006-02-17 2007-08-23 Derek Collison Facilitating manual user selection of one or more ads for insertion into a document to be made available to another user or users
US8862572B2 (en) 2006-02-17 2014-10-14 Google Inc. Sharing user distributed search results
CN1863175B (zh) 2006-02-25 2010-08-25 华为技术有限公司 一种呈现业务接入装置,呈现业务系统及发布和获取呈现信息的方法
US8112478B2 (en) 2006-03-13 2012-02-07 Oracle International Corporation Email and discussion forum system
US20070233556A1 (en) 2006-03-31 2007-10-04 Ross Koningstein Controlling the serving, with a primary document, of ads from a first source, subject to a first compensation scheme, and ads from a second source, subject to a second compensation scheme
US8255473B2 (en) 2006-04-04 2012-08-28 International Business Machines Corporation Caching message fragments during real-time messaging conversations
GB0606977D0 (en) 2006-04-06 2006-05-17 Freemantle Media Ltd Interactive video medium
US10803468B2 (en) 2006-04-18 2020-10-13 At&T Intellectual Property I, L.P. Method and apparatus for selecting advertising
US20070281690A1 (en) 2006-06-01 2007-12-06 Flipt, Inc Displaying and tagging places of interest on location-aware mobile communication devices in a local area network
US8571580B2 (en) 2006-06-01 2013-10-29 Loopt Llc. Displaying the location of individuals on an interactive map display on a mobile communication device
US7779444B2 (en) 2006-07-23 2010-08-17 William Glad System and method for video on request
US20080032703A1 (en) 2006-08-07 2008-02-07 Microsoft Corporation Location based notification services
US20080049704A1 (en) 2006-08-25 2008-02-28 Skyclix, Inc. Phone-based broadcast audio identification
US7814160B2 (en) 2006-08-31 2010-10-12 Microsoft Corporation Unified communication escalation
US8564543B2 (en) 2006-09-11 2013-10-22 Apple Inc. Media player with imaged based browsing
TW200820067A (en) 2006-10-19 2008-05-01 Benq Corp Method for controlling power and display parameters of a monitor and monitor for the same
US8077263B2 (en) 2006-10-23 2011-12-13 Sony Corporation Decoding multiple remote control code sets
US20080104503A1 (en) 2006-10-27 2008-05-01 Qlikkit, Inc. System and Method for Creating and Transmitting Multimedia Compilation Data
US7917154B2 (en) 2006-11-01 2011-03-29 Yahoo! Inc. Determining mobile content for a social network based on location and time
US20080109844A1 (en) 2006-11-02 2008-05-08 Adbrite, Inc. Playing video content with advertisement
KR100874109B1 (ko) 2006-11-14 2008-12-15 팅크웨어(주) 친구 위치 정보 제공 시스템 및 방법
US8140566B2 (en) 2006-12-12 2012-03-20 Yahoo! Inc. Open framework for integrating, associating, and interacting with content objects including automatic feed creation
US20080147730A1 (en) 2006-12-18 2008-06-19 Motorola, Inc. Method and system for providing location-specific image information
US8032839B2 (en) 2006-12-18 2011-10-04 Sap Ag User interface experience system
FR2910143B1 (fr) 2006-12-19 2009-04-03 Eastman Kodak Co Procede pour predire automatiquement des mots dans un texte associe a un message multimedia
US7770137B2 (en) 2006-12-20 2010-08-03 Sony Ericsson Mobile Communications Ab Methods, systems and computer program products for enhancing presence services
US20080158230A1 (en) 2006-12-29 2008-07-03 Pictureal Corp. Automatic facial animation using an image of a user
US20080168033A1 (en) 2007-01-05 2008-07-10 Yahoo! Inc. Employing mobile location to refine searches
US20080222545A1 (en) 2007-01-07 2008-09-11 Lemay Stephen O Portable Electronic Device with a Global Setting User Interface
US8572642B2 (en) 2007-01-10 2013-10-29 Steven Schraga Customized program insertion system
JP2008206138A (ja) 2007-01-26 2008-09-04 Matsushita Electric Ind Co Ltd 撮像装置および画像処理装置
US8136028B1 (en) 2007-02-02 2012-03-13 Loeb Enterprises Llc System and method for providing viewers of a digital image information about identifiable objects and scenes within the image
US20080189177A1 (en) 2007-02-02 2008-08-07 Anderton Jared M Systems and methods for providing advertisements
US20080208692A1 (en) 2007-02-26 2008-08-28 Cadence Media, Inc. Sponsored content creation and distribution
US20080255976A1 (en) 2007-04-10 2008-10-16 Utbk, Inc. Systems and Methods to Present Members of a Social Network for Real Time Communications
JP2008262371A (ja) 2007-04-11 2008-10-30 Sony Ericsson Mobilecommunications Japan Inc 表示制御装置、表示制御方法、表示制御プログラム、及び携帯端末装置
JP4564512B2 (ja) 2007-04-16 2010-10-20 富士通株式会社 表示装置、表示プログラム、および表示方法
US8718333B2 (en) 2007-04-23 2014-05-06 Ramot At Tel Aviv University Ltd. System, method and a computer readable medium for providing an output image
US20080270938A1 (en) 2007-04-29 2008-10-30 Elizabeth Marie Carlson System for self-registering visitor information with geographic specificity and searchable fields
US7958188B2 (en) 2007-05-04 2011-06-07 International Business Machines Corporation Transaction-initiated batch processing
US8694379B2 (en) 2007-05-14 2014-04-08 Microsoft Corporation One-click posting
US7778973B2 (en) 2007-05-18 2010-08-17 Tat Kuen Choi System, method, and program for sharing photos via the internet
US8463253B2 (en) 2007-06-21 2013-06-11 Verizon Patent And Licensing Inc. Flexible lifestyle portable communications device
US8065628B2 (en) 2007-06-25 2011-11-22 Microsoft Corporation Dynamic user interface for previewing live content
US8661464B2 (en) 2007-06-27 2014-02-25 Google Inc. Targeting in-video advertising
US8312086B2 (en) 2007-06-29 2012-11-13 Verizon Patent And Licensing Inc. Method and apparatus for message customization
US9078529B2 (en) 2007-07-06 2015-07-14 Evan Ellsworth Collapsible child seat
KR101373333B1 (ko) 2007-07-11 2014-03-10 엘지전자 주식회사 터치인식을 통한 영상촬영 기능을 구비한 휴대 단말기 및그 촬영방법
JP5184832B2 (ja) 2007-07-17 2013-04-17 キヤノン株式会社 情報処理装置及びその制御方法、コンピュータプログラム
US20090030999A1 (en) 2007-07-27 2009-01-29 Gatzke Alan D Contact Proximity Notification
JP2009044602A (ja) 2007-08-10 2009-02-26 Olympus Imaging Corp 撮像装置、撮像システム及び撮像方法
US7970418B2 (en) 2007-08-31 2011-06-28 Verizon Patent And Licensing Inc. Method and system of providing event content sharing by mobile communication devices
US7956848B2 (en) 2007-09-04 2011-06-07 Apple Inc. Video chapter access and license renewal
CN101399998B (zh) 2007-09-24 2011-06-08 鸿富锦精密工业(深圳)有限公司 白平衡调整系统及方法
WO2009043020A2 (en) 2007-09-28 2009-04-02 The Trustees Of Dartmouth College System and method for injecting sensed presence into social networking applications
US8352549B2 (en) 2007-09-28 2013-01-08 Ebay Inc. System and method for creating topic neighborhoods in a networked system
US8004529B2 (en) 2007-10-01 2011-08-23 Apple Inc. Processing an animation file to provide an animated icon
EP3964797A1 (en) 2007-10-04 2022-03-09 Zos Communications, Llc Location-based messaging system
DE602007003853D1 (de) 2007-10-19 2010-01-28 Research In Motion Ltd Mechanismus zur Ausgabe von Präsenzinformationen innerhalb eines Präsenzdienstes und Benutzerschnittstelle zu dessen Konfiguration
US8472935B1 (en) 2007-10-29 2013-06-25 Iwao Fujisaki Communication device
TWI363993B (en) 2007-10-31 2012-05-11 Ibm Method for auto-deploying an application from a mobile device to a host in a pervasive computing environment and the mobile device implementing the method
US8385950B1 (en) 2007-11-09 2013-02-26 Google Inc. Capturing and automatically uploading media content
WO2009063441A2 (en) 2007-11-14 2009-05-22 France Telecom A system and method for managing widges
US20090291672A1 (en) 2007-11-14 2009-11-26 Ron Treves System And Method For Providing Personalized Automated And Autonomously Initiated Information Delivery And Chaperone Service
US20090132665A1 (en) 2007-11-20 2009-05-21 Evite Llc Method and system for communicating invitations and responses to an event with a mobile device
US20090132341A1 (en) 2007-11-20 2009-05-21 Theresa Klinger Method and System for Monetizing User-Generated Content
KR101387527B1 (ko) 2007-12-06 2014-04-23 엘지전자 주식회사 단말기 및 그 메뉴 아이콘 디스플레이 방법
US20090148045A1 (en) 2007-12-07 2009-06-11 Microsoft Corporation Applying image-based contextual advertisements to images
US8212784B2 (en) 2007-12-13 2012-07-03 Microsoft Corporation Selection and display of media associated with a geographic area based on gesture input
US8655718B2 (en) 2007-12-18 2014-02-18 Yahoo! Inc. Methods for augmenting user-generated content using a monetizable feature
US8412579B2 (en) 2007-12-18 2013-04-02 Carlos Gonzalez Recipes management system
US20090160970A1 (en) 2007-12-20 2009-06-25 Fredlund John R Remote determination of image-acquisition settings and opportunities
US8515397B2 (en) 2007-12-24 2013-08-20 Qualcomm Incorporation Time and location based theme of mobile telephones
US8276092B1 (en) 2008-01-31 2012-09-25 Intuit Inc. Method and system for displaying financial reports
US20090199242A1 (en) 2008-02-05 2009-08-06 Johnson Bradley G System and Method for Distributing Video Content via a Packet Based Network
US20090215469A1 (en) 2008-02-27 2009-08-27 Amit Fisher Device, System, and Method of Generating Location-Based Social Networks
US8214443B2 (en) 2008-03-05 2012-07-03 Aol Inc. Electronic mail forwarding service
US8098881B2 (en) 2008-03-11 2012-01-17 Sony Ericsson Mobile Communications Ab Advertisement insertion systems and methods for digital cameras based on object recognition
US20090239552A1 (en) 2008-03-24 2009-09-24 Yahoo! Inc. Location-based opportunistic recommendations
US20090249222A1 (en) 2008-03-25 2009-10-01 Square Products Corporation System and method for simultaneous media presentation
MX2010010620A (es) 2008-03-28 2010-12-14 Celltrust Corp Sistemas y metodos para el servicio de transmision de mensajes cortos y el servicio de transmision de mensajes multimedia seguros.
US8098904B2 (en) 2008-03-31 2012-01-17 Google Inc. Automatic face detection and identity masking in images, and applications thereof
JP2009267526A (ja) 2008-04-22 2009-11-12 Sharp Corp 大量のコンテンツの一覧表示方法及び一覧表示装置
US8645867B2 (en) 2008-04-22 2014-02-04 Apple Inc. Modifying time associated with digital media items
US20090288022A1 (en) 2008-05-15 2009-11-19 Sony Corporation Dynamically changing a user interface based on device location and/or date/time
US20090292608A1 (en) 2008-05-22 2009-11-26 Ruth Polachek Method and system for user interaction with advertisements sharing, rating of and interacting with online advertisements
US8359356B2 (en) 2008-06-20 2013-01-22 At&T Intellectual Property I, Lp Presenting calendar events with presence information
US20090327073A1 (en) 2008-06-27 2009-12-31 Microsoft Corporation Intelligent advertising display
WO2014055924A1 (en) * 2012-10-04 2014-04-10 Disney Enterprises, Inc. Interactive objects for immersive environment
US9305230B2 (en) 2008-07-14 2016-04-05 Jumio Inc. Internet payment system using credit card imaging
US10375244B2 (en) 2008-08-06 2019-08-06 Avaya Inc. Premises enabled mobile kiosk, using customers' mobile communication device
US20100082693A1 (en) 2008-09-25 2010-04-01 Ethan Hugg Organization of a contact list based on social network context
US20100082427A1 (en) 2008-09-30 2010-04-01 Yahoo! Inc. System and Method for Context Enhanced Ad Creation
US8295855B2 (en) 2008-11-04 2012-10-23 International Business Machines Corporation GPS driven architecture for delivery of location based multimedia and method of use
US8082255B1 (en) 2008-11-21 2011-12-20 eMinor Incorporated Branding digital content
US8494560B2 (en) 2008-11-25 2013-07-23 Lansing Arthur Parker System, method and program product for location based services, asset management and tracking
US8527877B2 (en) 2008-11-25 2013-09-03 At&T Intellectual Property I, L.P. Systems and methods to select media content
US20100153144A1 (en) 2008-12-09 2010-06-17 Continental Airlines, Inc. Automated Check-in for Reserved Service
KR101516850B1 (ko) 2008-12-10 2015-05-04 뮤비 테크놀로지스 피티이 엘티디. 여러 개 비디오 클립을 인터커팅하여 새로운 비디오 제작 생성기
US9336178B2 (en) 2008-12-19 2016-05-10 Velocee Ltd. Optimizing content and communication in multiaccess mobile device exhibiting communication functionalities responsive of tempo spatial parameters
US8428626B2 (en) 2008-12-23 2013-04-23 At&T Mobility Ii Llc Selective caching of real time messaging threads
US20100162149A1 (en) 2008-12-24 2010-06-24 At&T Intellectual Property I, L.P. Systems and Methods to Provide Location Information
US20100185552A1 (en) 2009-01-16 2010-07-22 International Business Machines Corporation Providing gps-based location and time information
US8719238B2 (en) 2009-01-22 2014-05-06 Sunstein Kann Murphy & Timbers LLP Office-based notification messaging system
US20100191631A1 (en) 2009-01-29 2010-07-29 Adrian Weidmann Quantitative media valuation method, system and computer program
US20100198694A1 (en) 2009-01-30 2010-08-05 Google Inc. Advertisement Slot Configuration
US8321509B2 (en) 2009-02-02 2012-11-27 Waldeck Technology, Llc Handling crowd requests for large geographic areas
US8725560B2 (en) 2009-02-02 2014-05-13 Modiface Inc. Method and system for simulated product evaluation via personalizing advertisements based on portrait images
US8791790B2 (en) 2009-02-10 2014-07-29 Yikes Llc System and method for accessing a structure using a mobile device
US20100201536A1 (en) 2009-02-10 2010-08-12 William Benjamin Robertson System and method for accessing a structure using a mobile device
KR101595254B1 (ko) 2009-02-20 2016-02-18 삼성전자주식회사 화이트 밸런스 조정 방법, 상기 방법을 기록한 기록 매체, 화이트 밸런스 조정 장치
US20100223343A1 (en) 2009-02-27 2010-09-02 Sorel Bosan System and Method for Communicating from an Electronic Device
US8860865B2 (en) 2009-03-02 2014-10-14 Burning Moon, Llc Assisted video creation utilizing a camera
US9020745B2 (en) 2009-03-30 2015-04-28 Microsoft Technology Licensing, Llc Business data display and position correction in street-side imagery
US8264352B2 (en) 2009-04-09 2012-09-11 International Business Machines Corporation System and methods for locating mobile devices using location and presence information
US8428620B2 (en) 2009-04-22 2013-04-23 Centurylink Intellectual Property Llc Mass transportation service delivery platform
JP5132629B2 (ja) 2009-05-11 2013-01-30 ソニーモバイルコミュニケーションズ, エービー 情報端末、情報端末の情報提示方法及び情報提示プログラム
US8645164B2 (en) 2009-05-28 2014-02-04 Indiana University Research And Technology Corporation Medical information visualization assistant system and method
US8214446B1 (en) 2009-06-04 2012-07-03 Imdb.Com, Inc. Segmenting access to electronic message boards
US9148510B2 (en) 2009-06-23 2015-09-29 MEA Mobile Smart phone crowd enhancement
US20110010205A1 (en) 2009-07-08 2011-01-13 American Express Travel Related Services Company, Inc. Travel fare determination and display in social networks
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US10282481B2 (en) 2009-07-31 2019-05-07 Oath Inc. Providing link to portion of media object in real time in social networking update
US9544379B2 (en) 2009-08-03 2017-01-10 Wolfram K. Gauglitz Systems and methods for event networking and media sharing
CN102439621A (zh) 2009-08-03 2012-05-02 优诺莫比公司 用于将广告添加到基于位置的广告系统的系统和方法
US8379130B2 (en) 2009-08-07 2013-02-19 Qualcomm Incorporated Apparatus and method of processing images based on an adjusted value of an image processing parameter
US8775472B2 (en) 2009-08-14 2014-07-08 Apple Inc. Dynamic presentation framework
JP5402409B2 (ja) 2009-08-31 2014-01-29 ソニー株式会社 撮影条件設定装置、撮影条件設定方法及び撮影条件設定プログラム
US8090351B2 (en) 2009-09-01 2012-01-03 Elliot Klein Geographical location authentication method
US8228413B2 (en) 2009-09-01 2012-07-24 Geovector Corp. Photographer's guidance systems
EP2476066A1 (en) 2009-09-07 2012-07-18 Nokia Corp. An apparatus
US8510383B2 (en) 2009-09-14 2013-08-13 Clixtr, Inc. Method for providing event based media streams
US8660793B2 (en) 2009-09-18 2014-02-25 Blackberry Limited Expediting reverse geocoding with a bounding region
US8306922B1 (en) 2009-10-01 2012-11-06 Google Inc. Detecting content on a social network using links
US9119027B2 (en) 2009-10-06 2015-08-25 Facebook, Inc. Sharing of location-based content item in social networking service
US9183544B2 (en) 2009-10-14 2015-11-10 Yahoo! Inc. Generating a relationship history
US20110102630A1 (en) 2009-10-30 2011-05-05 Jason Rukes Image capturing devices using device location information to adjust image data during image signal processing
US8161417B1 (en) 2009-11-04 2012-04-17 Sprint Communications Company L.P. Enhancing usability of a moving touch screen
US8396888B2 (en) 2009-12-04 2013-03-12 Google Inc. Location-based searching using a search area that corresponds to a geographical location of a computing device
KR101229078B1 (ko) * 2009-12-21 2013-02-04 한국전자통신연구원 실내외 상황인식 기반의 모바일 혼합현실 콘텐츠 운용 장치 및 방법
CN102118419B (zh) 2009-12-30 2014-07-16 华为技术有限公司 一种图片信息的传输方法、装置和通信系统
US8400548B2 (en) 2010-01-05 2013-03-19 Apple Inc. Synchronized, interactive augmented reality displays for multifunction devices
US8856349B2 (en) 2010-02-05 2014-10-07 Sling Media Inc. Connection priority services for data communication between two devices
US9443227B2 (en) 2010-02-16 2016-09-13 Tigertext, Inc. Messaging system apparatuses circuits and methods of operation thereof
US9672332B2 (en) 2010-02-18 2017-06-06 Nokia Technologies Oy Method and apparatus for preventing unauthorized use of media items
KR101232864B1 (ko) * 2010-02-25 2013-02-19 김희남 이동 단말에 대한 주변 정보 안내 서비스 제공 방법 및 시스템
US20110213845A1 (en) 2010-02-26 2011-09-01 Research In Motion Limited Automatic deletion of electronic messages
US20110238763A1 (en) 2010-02-26 2011-09-29 Momo Networks, Inc. Social Help Network
US8310394B2 (en) 2010-03-08 2012-11-13 Deutsche Telekom Ag Apparatus, method, manufacture, and system for sensing substitution for location-based applications
US10074094B2 (en) 2010-03-09 2018-09-11 Excalibur Ip, Llc Generating a user profile based on self disclosed public status information
US20110238476A1 (en) 2010-03-23 2011-09-29 Michael Carr Location-based Coupons and Mobile Devices
US20110255736A1 (en) 2010-04-15 2011-10-20 Pongr, Inc. Networked image recognition methods and systems
KR101643869B1 (ko) 2010-05-06 2016-07-29 엘지전자 주식회사 휴대 단말기 및 그 동작 방법
US8359361B2 (en) 2010-05-06 2013-01-22 Microsoft Corporation Techniques to share media files through messaging
US8990732B2 (en) 2010-05-14 2015-03-24 Sap Se Value interval selection on multi-touch devices
US8438226B2 (en) 2010-06-22 2013-05-07 International Business Machines Corporation Dynamic adjustment of user-received communications for a real-time multimedia communications event
US20110314419A1 (en) 2010-06-22 2011-12-22 Microsoft Corporation Customizing a search experience using images
US20110320373A1 (en) 2010-06-25 2011-12-29 Microsoft Corporation Product conversations among social groups
CA2745536A1 (en) 2010-07-06 2012-01-06 Omar M. Sheikh Improving the relevancy of advertising material through user-defined preference filters, location and permission information
US8233887B2 (en) 2010-07-28 2012-07-31 Sprint Communications Company L.P. Covert message redaction and recovery in a wireless communication device
US8744523B2 (en) 2010-08-02 2014-06-03 At&T Intellectual Property I, L.P. Method and system for interactive home monitoring
US8301196B2 (en) 2010-08-03 2012-10-30 Honeywell International Inc. Reconfigurable wireless modem adapter including diversity/MIMO modems
US8588739B2 (en) 2010-08-27 2013-11-19 Kyocera Corporation Mobile terminal, lock state control program for mobile terminal, and a method for controlling lock state of mobile terminal
US8326327B2 (en) 2010-08-27 2012-12-04 Research In Motion Limited System and method for determining action spot locations relative to the location of a mobile device
US8381246B2 (en) 2010-08-27 2013-02-19 Telefonaktiebolaget L M Ericsson (Publ) Methods and apparatus for providing electronic program guides
US8423409B2 (en) 2010-09-02 2013-04-16 Yahoo! Inc. System and method for monetizing user-generated web content
US8732855B2 (en) 2010-09-30 2014-05-20 Google Inc. Launching a cached web application based on authentication status
US9588992B2 (en) 2010-09-30 2017-03-07 Microsoft Technology Licensing, Llc Displaying images interesting to a user
KR101306288B1 (ko) * 2010-09-30 2013-09-09 주식회사 팬택 가상 객체를 이용한 증강 현실 제공 장치 및 방법
US20140047016A1 (en) 2010-10-21 2014-02-13 Bindu Rama Rao Server infrastructure, mobile client device and app for mobile blogging and sharing
US8660369B2 (en) 2010-10-25 2014-02-25 Disney Enterprises, Inc. Systems and methods using mobile devices for augmented reality
US10102208B2 (en) 2010-10-29 2018-10-16 Microsoft Technology Licensing, Llc Automatic multimedia slideshows for social media-enabled mobile devices
US20120109836A1 (en) 2010-11-01 2012-05-03 Google Inc. Content sharing interface for sharing content in social networks
US8195194B1 (en) 2010-11-02 2012-06-05 Google Inc. Alarm for mobile communication device
JP5733952B2 (ja) 2010-11-04 2015-06-10 キヤノン株式会社 撮像装置、撮像システム、及び撮像装置の制御方法
US9286721B2 (en) 2010-11-08 2016-03-15 Sony Corporation Augmented reality system for product identification and promotion
US9886727B2 (en) 2010-11-11 2018-02-06 Ikorongo Technology, LLC Automatic check-ins and status updates
US8548855B2 (en) 2010-11-11 2013-10-01 Teaneck Enterprises, Llc User generated ADS based on check-ins
JP5212448B2 (ja) 2010-11-15 2013-06-19 コニカミノルタビジネステクノロジーズ株式会社 画像処理システム、画像処理装置の制御方法、携帯端末、および制御プログラム
US20120124126A1 (en) 2010-11-17 2012-05-17 Microsoft Corporation Contextual and task focused computing
US20120124458A1 (en) 2010-11-17 2012-05-17 Nazareno Brier Cruzada Social networking website & web-based system for collecting & presenting real-time user generated information on parties & events.
JP5706137B2 (ja) 2010-11-22 2015-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 複数の投稿(データのグループ)を複数の軸に沿ってリアルタイムにコンピュータ画面に表示する方法およびコンピュータ・プログラム
US20120131507A1 (en) 2010-11-24 2012-05-24 General Electric Company Patient information timeline viewer
US20120165100A1 (en) 2010-12-23 2012-06-28 Alcatel-Lucent Canada Inc. Crowd mobile synchronization
US20120166971A1 (en) 2010-12-28 2012-06-28 Thomas Sachson Social Networking Timeline System And Method
US20120169855A1 (en) 2010-12-30 2012-07-05 Electronics And Telecommunications Research Institute System and method for real-sense acquisition
US8683349B2 (en) 2010-12-31 2014-03-25 Verizon Patent And Licensing Inc. Media content user interface systems and methods
US8717381B2 (en) 2011-01-11 2014-05-06 Apple Inc. Gesture mapping for image filter input parameters
US20120176525A1 (en) 2011-01-12 2012-07-12 Qualcomm Incorporated Non-map-based mobile interface
US8457668B2 (en) 2011-01-18 2013-06-04 Claremont Speede Mobile sender initiated SMS message deletion method and system
US20120197724A1 (en) 2011-02-01 2012-08-02 Timothy Kendall Ad-Based Location Ranking for Geo-Social Networking System
US8488011B2 (en) 2011-02-08 2013-07-16 Longsand Limited System to augment a visual data stream based on a combination of geographical and visual information
US20120210244A1 (en) 2011-02-10 2012-08-16 Alcatel-Lucent Usa Inc. Cross-Domain Privacy Management Service For Social Networking Sites
US10063996B2 (en) 2011-02-11 2018-08-28 Thermopylae Sciences and Technology Methods and systems for providing geospatially-aware user-customizable virtual environments
US8594680B2 (en) 2011-02-16 2013-11-26 Nokia Corporation Methods, apparatuses and computer program products for providing a private and efficient geolocation system
US8660358B1 (en) 2011-02-18 2014-02-25 Google Inc. Rank-based image piling
US8954503B2 (en) 2011-03-03 2015-02-10 Facebook, Inc. Identify experts and influencers in a social network
EP2684145A4 (en) 2011-03-07 2014-09-03 Kba2 Inc SYSTEMS AND METHOD FOR ANALYTICAL DATA ACQUISITION OF IMAGE PROVIDERS ON THE BASIS OF AN EVENT OR GEOGRAPHICAL LOCATION
US8849931B2 (en) 2011-03-15 2014-09-30 Idt Messaging, Llc Linking context-based information to text messages
JP5136669B2 (ja) 2011-03-18 2013-02-06 カシオ計算機株式会社 画像処理装置、画像処理方法及びプログラム
US9131343B2 (en) 2011-03-31 2015-09-08 Teaneck Enterprises, Llc System and method for automated proximity-based social check-ins
US9331972B2 (en) 2011-03-31 2016-05-03 Loment, Inc. Automatic expiration of messages communicated to an end user communication device
US8744143B2 (en) 2011-04-01 2014-06-03 Yahoo! Inc. Adding privacy protection to photo uploading/ tagging in social networks
US8918463B2 (en) 2011-04-29 2014-12-23 Facebook, Inc. Automated event tagging
US20120290637A1 (en) 2011-05-12 2012-11-15 Microsoft Corporation Personalized news feed based on peer and personal activity
US8676937B2 (en) * 2011-05-12 2014-03-18 Jeffrey Alan Rapaport Social-topical adaptive networking (STAN) system allowing for group based contextual transaction offers and acceptances and hot topic watchdogging
US20120304052A1 (en) 2011-05-27 2012-11-29 Wesley Tanaka Systems And Methods For Displaying An Image In A Plurality Of Designs
JP5894499B2 (ja) 2011-05-27 2016-03-30 京セラ株式会社 携帯電子機器及び入力方法
JP5806512B2 (ja) 2011-05-31 2015-11-10 オリンパス株式会社 撮像装置、撮像方法および撮像プログラム
US8854491B2 (en) 2011-06-05 2014-10-07 Apple Inc. Metadata-assisted image filters
KR101217469B1 (ko) 2011-06-16 2013-01-02 주식회사 네오펄스 다중대역 특성을 갖는 mimo 안테나
US20120324018A1 (en) 2011-06-16 2012-12-20 Yahoo! Inc. Systems and methods for location based social network
US20120323933A1 (en) 2011-06-20 2012-12-20 Microsoft Corporation Displaying notifications based on importance to the user
US20130006759A1 (en) 2011-07-01 2013-01-03 Yahoo! Inc. Monetizing user generated content with embedded advertisements
EP4009651A1 (en) 2011-07-12 2022-06-08 Snap Inc. Methods and systems of providing visual content editing functions
US20130185131A1 (en) 2011-07-18 2013-07-18 Pradeep Sinha System and method for integrating social and loyalty platforms
US9396167B2 (en) 2011-07-21 2016-07-19 Flipboard, Inc. Template-based page layout for hosted social magazines
US8849819B2 (en) 2011-08-05 2014-09-30 Deacon Johnson System and method for controlling and organizing metadata associated with on-line content
US8965974B2 (en) 2011-08-19 2015-02-24 Board Of Regents, The University Of Texas System Systems and methods for determining user attribute values by mining user network data and information
WO2013028388A1 (en) 2011-08-19 2013-02-28 30 Second Software Geo-fence entry and exit notification system
US9274595B2 (en) 2011-08-26 2016-03-01 Reincloud Corporation Coherent presentation of multiple reality and interaction models
US20130055082A1 (en) 2011-08-26 2013-02-28 Jorge Fino Device, Method, and Graphical User Interface for Navigating and Previewing Content Items
KR101837107B1 (ko) * 2011-09-01 2018-03-09 에스케이 텔레콤주식회사 증강 현실을 이용하여 실내 위치 기반 서비스를 제공하는 단말기 및 컴퓨터로 읽을 수 있는 기록매체
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US8515870B2 (en) 2011-09-06 2013-08-20 Rawllin International Inc. Electronic payment systems and supporting methods and devices
KR20130028598A (ko) 2011-09-09 2013-03-19 삼성전자주식회사 장치 및 장치의 이미지 파일의 sns 업로드방법
US20130063369A1 (en) 2011-09-14 2013-03-14 Verizon Patent And Licensing Inc. Method and apparatus for media rendering services using gesture and/or voice control
US9710821B2 (en) 2011-09-15 2017-07-18 Stephan HEATH Systems and methods for mobile and online payment systems for purchases related to mobile and online promotions or offers provided using impressions tracking and analysis, location information, 2D and 3D mapping, mobile mapping, social media, and user behavior and
US20130111514A1 (en) 2011-09-16 2013-05-02 Umami Co. Second screen interactive platform
US20130071093A1 (en) 2011-09-16 2013-03-21 William Turner Hanks Maintaining viewer activity information of a recorded program for program deletion decisions
WO2013043867A2 (en) 2011-09-21 2013-03-28 Jeff Thramann Electric vehicle charging station with connectivity to mobile devices to provide local information
US8797415B2 (en) 2011-09-26 2014-08-05 Google Inc. Device, system and method for image capture device using weather information
WO2013045753A1 (en) 2011-09-28 2013-04-04 Nokia Corporation Method and apparatus for enabling experience based route selection
US20130085790A1 (en) 2011-09-29 2013-04-04 Ebay Inc. Organization of Group Attended Ticketed Event
US20130086072A1 (en) 2011-10-03 2013-04-04 Xerox Corporation Method and system for extracting and classifying geolocation information utilizing electronic social media
US20130090171A1 (en) 2011-10-07 2013-04-11 Gregory W. HOLTON Initiating and conducting a competitive social game using a server connected to a plurality of user terminals via a computer network
US8725168B2 (en) 2011-10-17 2014-05-13 Facebook, Inc. Content surfacing based on geo-social factors
US20130110885A1 (en) 2011-10-31 2013-05-02 Vox Media, Inc. Story-based data structures
WO2013067368A1 (en) 2011-11-02 2013-05-10 Photopon, Inc. System and method for experience-sharing within a computer network
JP2015505384A (ja) 2011-11-08 2015-02-19 ヴィディノティ エスアーVidinoti Sa 画像アノテーション方法およびシステム
US9098720B2 (en) 2011-11-21 2015-08-04 Facebook, Inc. Location aware shared spaces
US20130128059A1 (en) 2011-11-22 2013-05-23 Sony Mobile Communications Ab Method for supporting a user taking a photo with a mobile device
US9361283B2 (en) * 2011-11-30 2016-06-07 Google Inc. Method and system for projecting text onto surfaces in geographic imagery
TWI557630B (zh) 2011-12-06 2016-11-11 宏碁股份有限公司 電子裝置、社群互動磚資料顯示方法及動態圖示磚連結方法
US8352546B1 (en) 2011-12-08 2013-01-08 Google Inc. Contextual and location awareness for device interaction
US20130159110A1 (en) 2011-12-14 2013-06-20 Giridhar Rajaram Targeting users of a social networking system based on interest intensity
US20130159919A1 (en) 2011-12-19 2013-06-20 Gabriel Leydon Systems and Methods for Identifying and Suggesting Emoticons
US8234350B1 (en) 2011-12-19 2012-07-31 Seachange International, Inc. Systems and methods for generating targeted manifest files
US10354750B2 (en) 2011-12-23 2019-07-16 Iconic Data Inc. System, client device, server and method for providing a cross-facility patient data management and reporting platform
US9286678B2 (en) 2011-12-28 2016-03-15 Pelco, Inc. Camera calibration using feature identification
US20130173728A1 (en) 2011-12-30 2013-07-04 Google Inc. Discovering real-time conversations
US20130267253A1 (en) 2012-01-12 2013-10-10 Environmental Systems Research Institute, Inc. Trigger zones and dwell time analytics
JP5890692B2 (ja) 2012-01-13 2016-03-22 キヤノン株式会社 撮像装置、制御方法及びプログラム
US20130191198A1 (en) 2012-01-20 2013-07-25 Visa International Service Association Systems and methods to redeem offers based on a predetermined geographic region
US9344606B2 (en) 2012-01-24 2016-05-17 Radical Switchcam Llc System and method for compiling and playing a multi-channel video
KR101303166B1 (ko) 2012-01-26 2013-09-09 엘지전자 주식회사 이동 단말기 및 그의 사진 검색방법
US8788680B1 (en) 2012-01-30 2014-07-22 Google Inc. Virtual collaboration session access
US20130194301A1 (en) 2012-01-30 2013-08-01 Burn Note, Inc. System and method for securely transmiting sensitive information
US8972357B2 (en) 2012-02-24 2015-03-03 Placed, Inc. System and method for data collection to validate location data
US8768876B2 (en) 2012-02-24 2014-07-01 Placed, Inc. Inference pipeline system and method
US20130227476A1 (en) 2012-02-24 2013-08-29 Nokia Corporation Method, apparatus and computer program product for management of information on a graphic user interface
US9778706B2 (en) 2012-02-24 2017-10-03 Blackberry Limited Peekable user interface on a portable electronic device
US20130232194A1 (en) 2012-03-05 2013-09-05 Myspace Llc Event application
US9407860B2 (en) 2012-04-06 2016-08-02 Melvin Lee Barnes, JR. System, method and computer program product for processing image data
WO2013151759A1 (en) 2012-04-06 2013-10-10 Liveone Group, Ltd. A social media application for a media content providing platform
US20140019264A1 (en) 2012-05-07 2014-01-16 Ditto Labs, Inc. Framework for product promotion and advertising using social networking services
US20130304646A1 (en) 2012-05-14 2013-11-14 Izettle Hardware Ab Method and system for identity and know your customer verification through credit card transactions in combination with internet based social data
JP6261848B2 (ja) 2012-05-17 2018-01-17 任天堂株式会社 プログラム、サーバ装置、携帯端末、情報処理方法、通信システム及び通信方法
US20130311255A1 (en) 2012-05-17 2013-11-21 Mastercard International Incorporated Method and system for displaying and updating limited redemption coupons on a mobile device
WO2013175784A1 (ja) 2012-05-22 2013-11-28 株式会社ニコン 電子カメラ、画像表示装置および画像表示プログラム
US9319470B2 (en) 2012-05-30 2016-04-19 Henry Berberat Location-based social networking system
US9374396B2 (en) 2012-06-24 2016-06-21 Google Inc. Recommended content for an endorsement user interface
US8954092B2 (en) 2012-06-25 2015-02-10 Google Inc. Pre-caching data related to a travel destination
US9563607B2 (en) 2012-06-26 2017-02-07 Google Inc. System and method for creating slideshows
US9439041B2 (en) 2012-06-29 2016-09-06 Lighthouse Signal Systems, Llc Systems and methods for calibration based indoor geolocation
TW201415027A (zh) 2012-07-05 2014-04-16 Brita Professional Gmbh & Co Kg 利用流體處理裝置決定可由流體移除之成分濃度量測値
US9560006B2 (en) 2012-07-26 2017-01-31 Google Inc. Method and apparatus for expiring messages in electronic communications
US8856924B2 (en) 2012-08-07 2014-10-07 Cloudflare, Inc. Mitigating a denial-of-service attack in a cloud-based proxy service
US9165288B2 (en) 2012-08-09 2015-10-20 Polaris Wirelesss, Inc. Inferring relationships based on geo-temporal data other than telecommunications
US9083414B2 (en) 2012-08-09 2015-07-14 GM Global Technology Operations LLC LTE MIMO-capable multi-functional vehicle antenna
US10198152B2 (en) 2012-08-10 2019-02-05 Oath Inc. Systems and methods for providing and updating live-streaming online content in an interactive web platform
US9047382B2 (en) 2012-08-13 2015-06-02 Facebook, Inc. Customized presentation of event guest lists in a social networking system
US20140052485A1 (en) 2012-08-13 2014-02-20 Rundavoo, Inc. System and method for on-line event promotion and group planning
US20140052633A1 (en) 2012-08-15 2014-02-20 Ebay Inc. Payment in a chat session
KR101977703B1 (ko) 2012-08-17 2019-05-13 삼성전자 주식회사 단말의 촬영 제어 방법 및 그 단말
WO2014031899A1 (en) 2012-08-22 2014-02-27 Goldrun Corporation Augmented reality virtual content platform apparatuses, methods and systems
US9767850B2 (en) 2012-09-08 2017-09-19 Michael Brough Method for editing multiple video files and matching them to audio files
US9661361B2 (en) 2012-09-19 2017-05-23 Google Inc. Systems and methods for live media content matching
US9420121B2 (en) 2012-09-28 2016-08-16 Interactive Memories Inc. Method for tracking theme-based digital assets for clients engaged in image-based project creation through an electronic interface
US9746990B2 (en) 2012-09-28 2017-08-29 Intel Corporation Selectively augmenting communications transmitted by a communication device
US9338622B2 (en) * 2012-10-04 2016-05-10 Bernt Erik Bjontegard Contextually intelligent communication systems and processes
US9141188B2 (en) * 2012-10-05 2015-09-22 Elwha Llc Presenting an augmented view in response to acquisition of data inferring user activity
US8887182B2 (en) * 2012-10-16 2014-11-11 Yahoo! Inc. Hybrid applications
CN103777852B (zh) 2012-10-18 2018-10-02 腾讯科技(深圳)有限公司 一种获取图像的方法、装置
US20140149305A1 (en) 2012-10-22 2014-05-29 Adnan Aziz Passenger tracking
US9453740B2 (en) * 2012-10-30 2016-09-27 Alpine Electronics, Inc. Method of displaying objects on navigation map
US9032050B2 (en) 2012-10-31 2015-05-12 Vmware, Inc. Systems and methods for accelerating remote data retrieval via peer nodes
WO2014068573A1 (en) 2012-10-31 2014-05-08 Aniways Advertising Solutions Ltd. Custom emoticon generation
US8775972B2 (en) 2012-11-08 2014-07-08 Snapchat, Inc. Apparatus and method for single action control of social network profile access
US20140143143A1 (en) 2012-11-16 2014-05-22 Jonathan David Fasoli Using card image to extract bank account information
US20140149519A1 (en) 2012-11-28 2014-05-29 Linkedln Corporation Meeting room status based on attendee position information
US9459752B2 (en) 2012-12-14 2016-10-04 Microsoft Technology Licensing, Llc Browsing electronic messages displayed as tiles
US9658742B2 (en) 2012-12-28 2017-05-23 Intel Corporation Generating and displaying supplemental information and user interactions on interface tiles of a user interface
KR20140094801A (ko) 2013-01-23 2014-07-31 주식회사 케이티 인스턴트 메신저가 탑재된 이동단말 및 이를 이용한 마일리지 거래 방법
JP6435276B2 (ja) 2013-01-28 2018-12-05 サンダーリング・マネージメント・リミテッドSanderling Management Limited 動的なプロモーションレイアウトの管理および配布ルール
US20140214471A1 (en) 2013-01-31 2014-07-31 Donald Raymond Schreiner, III System for Tracking Preparation Time and Attendance at a Meeting
US20140222564A1 (en) 2013-02-07 2014-08-07 KBR IP Holdings, LLC Geo-located social connectivity relating to events and commerce
DE112013006621T5 (de) 2013-02-08 2015-11-05 Motorola Solutions, Inc. Verfahren und Vorrichtung zur Handhabung von Anwenderschnittstellenelementen in einer Touchscreen-Vorrichtung
WO2014138175A1 (en) 2013-03-05 2014-09-12 Perkin Sean Interactive digital content sharing among users
US9450907B2 (en) 2013-03-14 2016-09-20 Facebook, Inc. Bundled event memories
US20170185715A9 (en) 2013-03-15 2017-06-29 Douglas K. Smith Federated Collaborative Medical Records System Utilizing Cloud Computing Network and Methods
US20140279061A1 (en) 2013-03-15 2014-09-18 Rapp Worldwide Inc. Social Media Branding
US20140279540A1 (en) 2013-03-15 2014-09-18 Fulcrum Ip Corporation Systems and methods for a private sector monetary authority
US9317600B2 (en) * 2013-03-15 2016-04-19 Geofeedia, Inc. View of a physical space augmented with social media content originating from a geo-location of the physical space
EP2973295A4 (en) 2013-03-15 2016-11-16 Proximity Concepts Llc SYSTEMS AND METHODS FOR PROXIMITY FUNCTIONS, MAPPING, INDEXING, MOBILITY, ADVERTISING AND / OR OTHER
US9024753B2 (en) 2013-03-15 2015-05-05 Codex Corporation Automating offender documentation with RFID
US9264463B2 (en) 2013-03-15 2016-02-16 Facebook, Inc. Method and system of managing ephemeral post in a social networking system
US9470018B1 (en) 2013-03-15 2016-10-18 August Home, Inc. Intelligent door lock system with friction detection and deformed door mode operation
US9536232B2 (en) 2013-03-15 2017-01-03 Square, Inc. Transferring money using email
US20140287779A1 (en) 2013-03-22 2014-09-25 aDesignedPath for UsabilitySolutions, LLC System, method and device for providing personalized mobile experiences at multiple locations
US10270748B2 (en) 2013-03-22 2019-04-23 Nok Nok Labs, Inc. Advanced authentication techniques and applications
US10296933B2 (en) 2013-04-12 2019-05-21 Facebook, Inc. Identifying content in electronic images
US9736218B2 (en) 2013-04-24 2017-08-15 Blackberry Limited Device, system and method for processing character data
US9742713B2 (en) 2013-05-30 2017-08-22 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9152477B1 (en) 2013-06-05 2015-10-06 Jpmorgan Chase Bank, N.A. System and method for communication among mobile applications
US8755824B1 (en) 2013-06-28 2014-06-17 Google Inc. Clustering geofence-based alerts for mobile devices
US20150020086A1 (en) 2013-07-11 2015-01-15 Samsung Electronics Co., Ltd. Systems and methods for obtaining user feedback to media content
US10445840B2 (en) 2013-08-07 2019-10-15 Microsoft Technology Licensing, Llc System and method for positioning sponsored content in a social network interface
US8825881B2 (en) 2013-09-12 2014-09-02 Bandwidth.Com, Inc. Predictive caching of IP data
US20150087263A1 (en) 2013-09-24 2015-03-26 Bennett Hill Branscomb Methods and Apparatus for Promotions and Large Scale Games in Geo-Fenced Venues
US20150096042A1 (en) 2013-10-02 2015-04-02 Innovative Venture, S.A. a Panama Corporation Method and apparatus for improved private messaging
US20150116529A1 (en) 2013-10-28 2015-04-30 Htc Corporation Automatic effect method for photography and electronic apparatus
WO2015077766A1 (en) * 2013-11-25 2015-05-28 Pcms Holdings, Inc. Systems and methods for providing augmenting reality information associated with signage
US20150178260A1 (en) 2013-12-20 2015-06-25 Avaya, Inc. Multi-layered presentation and mechanisms for collaborating with the same
CA2863124A1 (en) 2014-01-03 2015-07-03 Investel Capital Corporation User content sharing system and method with automated external content integration
US20150193982A1 (en) 2014-01-03 2015-07-09 Google Inc. Augmented reality overlays using position and orientation to facilitate interactions between electronic devices
US9628950B1 (en) 2014-01-12 2017-04-18 Investment Asset Holdings Llc Location-based messaging
KR101669926B1 (ko) * 2014-02-03 2016-11-09 (주)에프엑스기어 사용자 시점 연동형 영상 처리 장치 및 그 방법
US8909725B1 (en) 2014-03-07 2014-12-09 Snapchat, Inc. Content delivery network for ephemeral objects
JP6176541B2 (ja) * 2014-03-28 2017-08-09 パナソニックIpマネジメント株式会社 情報表示装置、情報表示方法及びプログラム
US10845982B2 (en) 2014-04-28 2020-11-24 Facebook, Inc. Providing intelligent transcriptions of sound messages in a messaging application
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
US10558338B2 (en) 2014-05-28 2020-02-11 Facebook, Inc. Systems and methods for providing responses to and drawings for media content
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
KR20200033999A (ko) 2014-10-24 2020-03-30 스냅 인코포레이티드 메시지의 우선 순위 지정
US9113301B1 (en) 2014-06-13 2015-08-18 Snapchat, Inc. Geo-location based event gallery
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US10630625B2 (en) 2014-07-13 2020-04-21 Snap Inc. Media object distribution
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US9015285B1 (en) 2014-11-12 2015-04-21 Snapchat, Inc. User interface for accessing media at a geographic location
KR101596762B1 (ko) * 2014-12-15 2016-02-23 현대자동차주식회사 스마트 안경을 이용한 차량 위치 안내 방법 및 이를 수행하는 장치
US9854219B2 (en) 2014-12-19 2017-12-26 Snap Inc. Gallery of videos set to an audio time line
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
US20160189427A1 (en) * 2014-12-31 2016-06-30 Immersion Corporation Systems and methods for generating haptically enhanced objects for augmented and virtual reality applications
KR102371138B1 (ko) 2015-03-18 2022-03-10 스냅 인코포레이티드 지오-펜스 인가 프로비저닝
FR3035523B1 (fr) * 2015-04-23 2017-04-21 Parrot Systeme de pilotage de drone en immersion
US9881094B2 (en) 2015-05-05 2018-01-30 Snap Inc. Systems and methods for automated local story generation and curation
US9954945B2 (en) 2015-06-30 2018-04-24 International Business Machines Corporation Associating contextual information with electronic communications
US10318884B2 (en) 2015-08-25 2019-06-11 Fuji Xerox Co., Ltd. Venue link detection for social media messages
US10679058B2 (en) * 2016-01-06 2020-06-09 Orcam Technologies Ltd. Wearable apparatus and methods for processing images to identify contextual situations
US11900418B2 (en) 2016-04-04 2024-02-13 Snap Inc. Mutable geo-fencing system
US10565795B2 (en) 2017-03-06 2020-02-18 Snap Inc. Virtual vision system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11670057B2 (en) 2017-03-06 2023-06-06 Snap Inc. Virtual vision system
US11961196B2 (en) 2023-03-17 2024-04-16 Snap Inc. Virtual vision system

Also Published As

Publication number Publication date
WO2018165154A1 (en) 2018-09-13
US11670057B2 (en) 2023-06-06
US20200258307A1 (en) 2020-08-13
EP3593326A1 (en) 2020-01-15
KR20210084658A (ko) 2021-07-07
KR102614536B1 (ko) 2023-12-19
US20230222745A1 (en) 2023-07-13
KR102272256B1 (ko) 2021-07-05
US10565795B2 (en) 2020-02-18
US20180253901A1 (en) 2018-09-06
KR20220098814A (ko) 2022-07-12
CN110383344A (zh) 2019-10-25
US20210375056A1 (en) 2021-12-02
EP3593326A4 (en) 2020-12-16
US11037372B2 (en) 2021-06-15
KR20190122249A (ko) 2019-10-29

Similar Documents

Publication Publication Date Title
KR102416985B1 (ko) 가상 비전 시스템
US11394676B2 (en) Media content response in a messaging system
KR102367928B1 (ko) 표면 인식 렌즈
US20200004829A1 (en) Content sharing platform profile generation
KR20220059561A (ko) 위치 기반 가상 아바타들
US11671664B2 (en) Media collection generation and privacy mechanisms
US11722442B2 (en) Event planning in a content sharing platform
KR102451508B1 (ko) 미디어 아이템 부착 시스템
US10917743B2 (en) Mapping discovery system
US10904193B1 (en) Modular chat in a content sharing platform
US11961196B2 (en) Virtual vision system

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant