KR20080074955A - 네트워크 및 기기 기능성으로의 액세스를 단순화하는스케일러블 시각 검색 시스템 - Google Patents

네트워크 및 기기 기능성으로의 액세스를 단순화하는스케일러블 시각 검색 시스템 Download PDF

Info

Publication number
KR20080074955A
KR20080074955A KR1020087013528A KR20087013528A KR20080074955A KR 20080074955 A KR20080074955 A KR 20080074955A KR 1020087013528 A KR1020087013528 A KR 1020087013528A KR 20087013528 A KR20087013528 A KR 20087013528A KR 20080074955 A KR20080074955 A KR 20080074955A
Authority
KR
South Korea
Prior art keywords
user
information
media content
link
links
Prior art date
Application number
KR1020087013528A
Other languages
English (en)
Other versions
KR101123217B1 (ko
Inventor
체. 필립 슐로터
Original Assignee
노키아 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 노키아 코포레이션 filed Critical 노키아 코포레이션
Publication of KR20080074955A publication Critical patent/KR20080074955A/ko
Application granted granted Critical
Publication of KR101123217B1 publication Critical patent/KR101123217B1/ko

Links

Images

Classifications

    • 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
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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
    • G06F16/951Indexing; Web crawling techniques
    • 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
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/16Communication-related supplementary services, e.g. call-transfer or call-hold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Abstract

일 실시예에서, 사용자가 원하는 정보의 표시가 수신되며, 그 원하는 정보에 대한 후보 목록이 사용자의 이동 기기 상에서 표현되기 위해 제공된다.

Description

네트워크 및 기기 기능성으로의 액세스를 단순화하는 스케일러블 시각 검색 시스템{Scalable visual search system simplifying access to network and device functionality}
본 출원은 2005.11.4.에 출원된 미국 임시 출원 일련번호 60/733,941의 출원과 관련되어 우선권을 주장한 것이며, 상기 미국 임시 출원은 참조로서 본 출원에 편입된다.
본 발명은 검색 시스템에 일반적으로 관련되며, 더 자세하게는 네트워크 및 기기 기능성으로의 액세스를 단순화하는 시각 검색 시스템에 관련된다.
현재, 개인용 컴퓨터 (PC)가 정보 검색의 최선의 형태를 제공한다. 그러나, 개인용 컴퓨터들로의 액세스는 제한되며, 개인용 컴퓨터들이 광범위하게 소유되지도 않는다. PC 기반의 정보 검색 도구들은 사용자가 PC가 있는 책상 또는 다른 영역들로 다가가서, 검색 엔진을 구동하고, 그리고, 원하는 검색을 설명하는 키워드들을 입력하는데 시간을 소비하도록 하는 것이 보통이다. 찾으려는 정보는 키워드들로 설명하기에는 때때로 어렵고 검색 결과들은 찾으려고 했던 것과 정확하게 일치하지는 않는 것이 대부분이다. 또한, 정보 검색 그 자체에 막대한 양의 시간을 잡아먹을 수 있다.
이동 전화기는 개인용 컴퓨터보다는 훨씬 더 많이 시장에 보급되어 있다. 전 세계를 통해서, 개인용 컴퓨터보다 4배나 많은 이동 전화기들이 있으며, 사람들은 하루의 대부분을 자신의 이동 전화기를 가지고 다닌다. 그러나, 그 이동 전화기의 어렵고 제한된 사용자 인터페이스, 타이핑하기에는 작은 키보드 그리고 이동 액세스를 위해 설계된 웹사이트들에 대한 인식 부족 때문에 이동 전화기는 일반적으로 정보 도구로는 사용되지 않는 것이 일반적이다.
이동 전화기들을 더 쉽게 사용하도록 제작하려는 여러 가지 접근이 있어왔다. 한 접근은 숫자 키패드로 텍스트를 타이핑하기 위한 자동 사전을 사용한다. 그러나, 웹-링크들 또는 더 긴 텍스트를 타이핑하는 것은 심지어 그 사전을 이용해도 막대한 시간을 소비하게 하며, 그 사전 단어들에 포함되지 않은 텍스트를 타이핑하는 것은 더 긴 시간을 잡아먹는다.
다른 현존하는 접근 방법은 전화 번호 다이얼 또는 애플리케이션 구동을 위한 음성 인식을 사용하는 것이다. 이 접근 방법은 간섭과 배경 소음 (예를 들면, 바람, 수다, 음악 등) 때문에 빈약한 품질을 제공하며, 단어들이나 그 철자를 말하는 것은 키보드에 텍스트를 타이핑하는 것보다 더 많은 시간이 걸린다. 게다가, 음성은 사용자 주위의 다른 대화에 훼방을 놓고 중단시킬 수 있으며 은밀함을 손상할 수 있다. 더 나아가, 계속적으로 말하는 것은 사람의 성대를 긴장시켜서 말할 수 있는 능력을 상실하게 할 수 있다.
원하는 정보를 획득하기 위해 바코드를 스캐닝하는 것을 포함하는 접근 방법은 바코드를 구비하고 있는 객체들에 관한 정보만을 제공할 수 있을 뿐이다. 이런 접근 방법 사용을 확장하는 것은 다양한 객체 위에 바코드를 설치할 것을 필요로 하며, 이는 시간을 소모하고, 비싸며, 어색하거나 심지어는 불가능할 수 있는 것이다.
손으로 쓴 것을 디지털화하는 무선 펜은 쓰기 위해서 평평한 표면을 필요로 하며, 데이터 전송에 느릴 수 있으며, 사람이 손으로 쓰는 것에 맞추어 훈련받아야만 할 수 있을 것이다. 또한, 무선 펜을 사용하는 것은 추가의 장비를 운반해야 하는 결과를 가져오며 대개는 작동하기 위해 특별한 종이를 필요로 한다.
개인용 디지털 보조기들 (personal digital assistants, PDAs) 및 다른 이동 기기들을 위한 접을 수 있고 휴대 가능한 키보드들은 평평한 표면 위에 놓여있을 때에만 작동하며 추가의 장비를 운반해야 하는 결과를 가져온다. 이동 기기에 통합되어 기기 앞에 가상 키보드를 투사하는 미니-프로젝터들 또한 자리 잡기 위해 평평한 표면을 필요로 한다. 또한, 미니-프로젝터들은 이동 기기들의 배터리 수명을 줄이며, 반사 표면에서는 작동하지 않는다.
근접-기반의 (proximity-based) 정보 태그들은 물리적인 태그들이 예를 들면 블루트스, RFID, IR 또는 가깝게 근접한 다른 엔티티(entity)들과 통신하는 다른 수단에 장착되어 전개될 것을 필요로 한다. 또한, 근접-기반 정보 태그들은 단말 기기들이 태그들과 인터페이스하기 위한 올바른 센서들로 장착될 것을 필요로 하며, 태그들이 낡거나 배터리가 나간 것을 정비할 것을 필요로 하며, 그들이 태그 가까이에 위치하지 않으면 정보를 얻을 수 없다.
전통적인 검색 엔진들은 사용자가 키워드들로 검색을 설명할 것을 필요로 하 며, 이는 종종 도전적일 수 있으며 사용자의 텍스트 입력을 용이하게 하기 위한 PC 유형의 키보드와 같은 양호한 입력 방법을 필요로 한다. 추가로, 검색 결과들을 프리젠테이션하는 것은 더 작은 스크린을 구비한 이동 기기에는 적합하지 않게 종종 설계된다.
본 발명은 이하에서 주어지는 상세한 설명 및 본 발명의 다양한 실시예들의 첨부된 도면들로부터 완전하게 이해될 것이며, 그러나 이들은 본 발명을 특정한 실시예들로 한정하는 것으로 받아들여져서는 안되며, 단지 설명과 이해를 위한 것이다.
도 1a 및 도 1b는 본 발명의 실시예들이 동작할 수 있는 두 대안의 시스템 구조의 예들을 도시하는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 인식 서버들의 분배를 제공하는 시스템을 도시한 것이다.
도 3은 본 발명의 일 실시예에 따른 클라이언트 상태 머신을 도시한 것이다.
도 4 및 도 5는 본 발명의 몇몇 실시예들에 따라 실행되는 클라이언트 기반 방법의 흐름도이다.
도 6은 프론트-엔드 모듈의 일 실시예의 블록도이다.
도 7은 본 발명의 일 실시예에 따른 포탈 서버에 의해 제공되는 예시적인 사용자 인터페이스 (UI)의 블록도이다.
도 8a 내지 도 8f는 본 발명의 몇몇 실시예들에 따른 프론트-엔드 모듈에 의 해 제공되는 예시적인 UI들을 도시한 것이다.
도 9a 내지 도 9g는 본 발명의 몇몇 실시예들에 따른 프론트-엔드 모듈에 의해 제시되는 예시적인 UI들을 도시한 것이다.
도 10은 본 발명의 일 실시예에 따라서, 사용자에게 링크 디렉토리를 제시하는 예시적인 UI를 도시한 것이다.
도 11은 본 발명의 일 실시예에 따른 서버 상태 머신을 도시한 것이다.
도 12 및 도 13은 본 발명의 몇몇 실시예들에 따라 실행되는 서버-기반의 방법들의 흐름도들이다.
도 14는 백-엔드 모듈의 일 실시예의 블록도이다.
도 15는 여기에서 설명되는 하나 또는 그 이상의 동작들을 실행하는데 사용될 수 있는 예시적인 컴퓨터 시스템의 블록도이다.
다음의 설명에서, 아무 많은 상세한 점들이 제시된다. 그러나, 본 발명은 그러한 특수한 상세한 면들이 없이도 실행될 수 있다는 것은 본 발명이 속한 기술 분야의 통상의 지식을 가진 자에게는 자명할 것이다. 어떤 예에서는, 본 발명이 불명료하게 되는 것을 피하기 위해, 잘 알려진 구조 및 기기들이 상세하게 설명되지 않고 블록도 모습으로 도시된다.
이어지는 상세한 설명들의 일부 부분들은 컴퓨터 메모리 내의 데이터 비트들 상의 동작의 알고리즘과 심볼 표현의 면으로 제시된다. 이런 알고리즘적인 설명들과 표현들은 그 작업의 본질을 그 기술 분야의 다른 당업자에게 가장 효율적으로 전달하기 위해서 데이터 처리 기술 분야의 당업자에 의해 사용되는 수단이다. 알고리즘은 여기에서, 그리고 일반적으로, 원하는 결과로 이끄는 단계들의 자체적으로 일관된 시퀀스로 인식된다. 그 단계들은 물리적인 양들을 물리적으로 조작할 것을 필요로 하는 것들이다. 보통은, 필수적이지는 않지만, 이런 양들은 저장되고, 전달되고, 결합되고, 비교되며, 그렇지 않으면 조작될 수 있는 전기적인 또는 자기적인 신호들의 모습을 가진다. 이런 신호들을 비트들, 값들, 엘리먼트들, 심볼들, 캐릭터들, 용어들, 숫자들 또는 유사한 것들로 언급하는 것은 시간 상, 주요하게는 일반적으로 사용된다는 이유로 편리하다고 입증되었다.
그러나, 이런 그리고 유사한 용어들 모두가 적절한 물리적인 양들과 연관되며 이런 양들에 적용된 편리한 라벨들일 뿐이라는 것을 명심해야 한다. 다음의 설명들에서 명백하게 다르게 언급하지 않는다면, 설명을 통해서, "처리" 또는 "컴퓨팅" 또는 "계산" 또는 "디스플레이" 또는 유사한 것들은 컴퓨터 시스템이나 유사한 전자 계산 기기의 동작이나 처리들을 언급하는 것이며, 그 컴퓨터 시스템이나 유사한 전자 계산 기기는 컴퓨터 시스템의 레지스터들과 메모리들 내의 물리적인 (전자적인) 양들로서 표현된 데이터를 조작하여 컴퓨터 시스템 메모리들 또는 레지스터 또는 그와 같은 정보 저장, 전송 또는 디스플레이 기기와 같은 다른 것들 내의 물리적인 양으로서 유사하게 표현되는 다른 데이터로 변환한다.
본 발명은 여기에서의 동작들을 수행하는 장치에도 또한 관련된다. 이 장치는 원하는 목적을 위해 특별하게 구성되었을 것이며, 또는 컴퓨터 내에 저장된 컴퓨터 프로그램에 의해 선택적으로 구동되고 재구성되는 범용 컴퓨터를 포함할 수 있을 것이다. 그런 컴퓨터 프로그램은, 각각이 컴퓨터 시스템 버스와 연결된, 플로피 디스크, 광 디스크, CD-ROM, 자기-광학 디스크를 포함하는 유형의 디스크, ROM (read-only memories), RAM (random access memories), EPROMs, EEPROMs, 자기 또는 광학 카드 또는 전자적인 명령어들을 저장하기 위한 적절한 유형의 매체와 같은 컴퓨터로 읽을 수 있는 저장 매체에 저장될 수 있을 것이며, 하지만, 본 발명은 그런 저장 매체에 한정되지는 않는다.
여기에서 제시되는 알고리즘들과 디스플레이들은 어떤 특정 컴퓨터 또는 다른 장치에 원래부터 연관되는 것은 아니다. 다양한 범용 시스템들이 여기에서의 교시에 따른 프로그램과 함께 사용될 수 있을 것이며, 또는 원하는 방법 단계들을 실행하기 위한 더 특화된 장치를 구성하는 것이 편리한 것으로 입증할 수도 있을 것이다. 이와 같은 다양한 시스템들의 필요한 구성은 이하에서의 설명으로부터 나타날 것이다. 추가로, 본 발명은 어떤 특정 프로그래밍 언어와 관련되어 설명되지 않는다. 다양한 프로그래밍 언어들이 여기에서 설명된 것과 같은 본 발명의 교시들을 구현하기 위해 사용될 수 있다는 것이 인식될 것이다.
기계로 읽을 수 있는 매체는 기계 (예를 들면, 컴퓨터)에 의해 읽을 수 있는 모습으로 정보를 저장하고 전송하기 위한 어떤 메커니즘을 포함한다. 예를 들면, 기계로 읽을 수 있는 저장 매체 (예를 들면, ROM (read-only memories), RAM (random access memories), 자기 디스크 저장 매체, 광 저장 매체, 플래시 메모리 기기들 등)를 포함하는 기계로 읽을 수 있는 매체, 기계로 읽을 수 있는 전송 매체 (전기적인, 광학적인, 음향적인 또는 전파되는 신호의 다른 모습 (예를 들면, 반송 파, 적외선 신호, 디지털 신호들 등)) 등을 포함한다.
개괄 (Overview)
본 발명의 실시예들은 사용자가 필요한 정보의 표시를 수신하고, 사용자의 이동 기기에서 제시하기 위해 그 원하는 정보의 후보 목록을 생성하는 시스템을 개시한다. 예로서, 시스템은 그 표시를 사용자의 카메라 전화에 의해 찍힌 레스토랑 외관 사진의 모습을 수신하고 사용자의 전화기의 디스플레이 위에 제시되기 위해 사용자가 잠재적으로 원하는 정보 항목들의 목록을 생성한다. 이런 정보 항목들은, 예를 들면, 그 레스토랑의 리뷰를 제공하는 웹사이트, 그 레스토랑의 전화 번호, 그 레스토랑 지역의 지도로의 링크 등을 포함할 수 있을 것이다.
일반적으로, 원하는 정보의 상기 표시는 실제 세계의 하나 이상의 객체들과 연관된 미디어 콘텐트 및/또는 상기 미디어 콘텐트, 상기 이동 기기 및 상기 사용자 중에서 적어도 하나와 연관된 하나 또는 그 이상의 특징들을 제공하는 메타-정보 (meta-information) 를 포함할 수 있을 것이다. 예를 들면, 미디어 콘텐트는 물리적인 객체 (예를 들면, 레스토랑 외관 사진, 상점 로고, 거리 이름 등), 물리적인 객체를 포함하는 이벤트 비디오, 그 이벤트 동안에 재생되는 음악 레코딩 등 일 수 있을 것이다. 메타-정보는, 예를 들면, 미디어 콘텐트의 특성 (예를 들면, 타임 스탬프, 소유자 등), 이동 기기의 지리적인 특징들 (예를 들면, 현재 위치 또는 고도), 환경적인 특징들 (예를 들면, 현재의 날씨 또는 시각), 사용자(들)의 온라인 행동의 특징들 (예를 들면, 현재 시스템에 의해 제공되는 정보의 사용자 액세스에 관한 통계) 등을 포함할 수 있을 것이다.
상기 원하는 정보의 후보 목록은 웹 사이트, 전화 번호, 황색 페이지 엔트리, 애플리케이션, 전화 기능, 키워드, 컴퓨터 기능, 애플리케이션 상태, 문서, 텔레비전 프로그램, 라디오 프로그램 또는 음악 레코딩 등과 같은 정보 항목들로의 링크들을 포함할 수 있을 것이다. 링크는 그 링크를 사용자에게 제시하기 위해 사용되는 이름 또는 제목을 구비할 수 있을 것이다. 사용자가 후보들 목록으로부터 링크를 선택하면, 사용자의 이동 기기는 그 링크와 연관된 행동 (예를 들면, 웹사이트에 웹 브라우저 전송, 전화 통화 개시, 애플리케이션 시작, 그 애플리케이션의 특정 상태 개시 등)을 실행한다. 추가로, 일 실시예에서, 링크 그 자체는 사용자가 원하는 정보의 일부를 포함한다. 예를 들면, 날씨 예보로의 링크의 제목은 현재 위치에 대한 3일의 간단한 날씨 예보를 포함할 수 있다. 이 링크를 선택하면, 그 사용자는 현재 위치에 대한 상세한 날씨 예보를 제공받는다.
일 실시예에서, 시스템은, 현재 수신된 미디어 콘텐트 및/또는 메타-정보에 대하여 데이터베이스(들)를 검색하고 연관된 링크들을 인출함으로써 후보들의 목록을 생성한다. 일 실시예에서, 시스템은 (예를 들면, 미리 정의된 로직 또는 구성 가능한 규칙들에 따라서) 자동적으로 링크들을 생성한다. 대안으로, 시스템은 최종 사용자들, 스태프, 동업자 등에 의해 제공되는 입력을 기반으로 링크들을 생성한다. 예를 들면, 최종 사용자는 특정 미디어 콘텐트 또는 메타-정보와 연관되어야 하는 링크를 특정할 수 있을 것이다. 그 시스템은 링크들을 생성하기 위해 어떤 개수의 소스들이라도 지원할 수 있으며 "폭소노미 (folksonomy)"로서 배치될 수 있 다. 본 명세서에서 사용되는 "폭소노미 (folksonomy)"라는 용어는 많은 집중 제어 없이 자발적으로 콘텐트를 생성하고 조직하는 사용자들의 그룹에 관련된다. 일 실시예에서, 시스템은 후보들에 대해 제공된 목록으로부터 사용자에 의해 어느 링크들이 선택되었는가를 모니터하고, 새로운 검색이 실행될 때에 더 나은 후보들을 제공하기 위해 이런 지식을 모은다.
일 실시예에서, 링크들은 미리 정해진 분류들에 따라 분류된다. 이런 분류들은 (특정 사용자에 의해서만 액세스 될 수 있는) 개인의 또는 비밀 링크들, (사용자들의 특정 그룹에 의해서만 액세스될 수 있는) 그룹 링크들, (모든 사용자들에 의해 액세스될 수 있는) 전역 (global) 링크들, (현재 위치, 고도, 방향, 방위, 속도, 가속도 등에 대응하는) 위치 기반 링크들 등을 포함할 수 있을 것이다. 링크들은 자신들이 제공하는 정보의 유형 (예를 들면, 전화 번호, 웹 링크들, 애플리케이션들, 애플리케이션 상태들, 전화 기능 등) 에 의해서도 또한 분류될 수 있다. 각 링크는 이름 또는 제목, 소유자, 타임 스탬프, 분류, 권한 관리 정보 등과 같은 특성들의 집합을 구비할 수 있을 것이다. 추가로, 각 링크는 관련된 링크의 사용자 액세스에 관한 통계 (예를 들면, 사용자 또는 사용자 그룹들에 의해, 시간에 의해 또는 다른 요인들에 의해 나누어질 수 있는 링크에 액세스하는 빈도) 를 포함할 수 있을 것이다. 일 실시예에서, 링크 특성들 및 링크 통계들은 적절한 링크들에 대한 검색이 있을 때에 사용될 수 있는 메타-정보의 일부이다.
일 실시예에서, 시스템은 이전의 검색들을 통해 생성된 또는 사용자 아이콘들에 의해 미리 할당된 시각적인 사진과 같은 아이콘들 ("아이콘들")을 유지한다. 하나의 아이콘은 특정 미디어 콘텐트 (예를 들면, 자신, 이미지, 비디오, 음악 등) 이나 복수의 미디어 콘텐트 항목들의 집합, 메타-정보 및 그들의 특성들에 대응하는 링크들을 나타낼 수 있을 것이다. 사용자는 지금 근접해 있지 않은 객체들을 상기 아이콘들을 사용하여 실제의 세계로부터 브라우즈 (browse) 할 수 있다. 아이콘들은 순서를 정하여 목록으로 될 수 있고, 또는 현재 위치, 시간, 특정 사용자에 의한 링크 사용 빈도, 사용자들의 세그먼트 또는 전체 사용자 공동체 (community)와 같은 요소들을 기반으로 계층적으로 유지될 수 있다. 사용자는 이동 기기 또는 어떤 다른 기기 (예를 들면, PC) 상의 아이콘들 사이를 브라우즈할 때에 한 아이콘을 선택하여 그 아이콘을 구동시킬 수 있고 또는 아이콘에 의해 대표되는 실제 세계의 객체 사진을 찍어서 그 아이콘을 구동시킬 수 있다. 아이콘들은 어떤 유형의 파라미터들 및/또는 내부나 외부의 입력을 기반으로 분류될 수 있다.
그 시스템은 프론트-엔드 (front-end) 컴포넌트와 백-엔드 (back-end) 컴포넌트를 포함한다. 프론트-엔드 컴포넌트는 이동 기기 상에 존재한다. 일 실시예에서는, 백-엔드 컴포넌트 또한 이동 기기 상에 존재한다 (통합된 클라이언트-서버 모델). 다른 실시예에서, 백-엔드 컴포넌트는 이동 기기 상에 일부가 존재하고 일부는 네트워크 서버 또는 다중 네트워크 서버들 상에 존재한다. 또 다른 실시예에서, 백-엔드 컴포넌트는 모두가 네트워크 서버 상에 존재하거나 또는 다중의 네트워크 서버들에 걸쳐서 분배된다. 데이터베이스도 또한 이동 기기 또는 하나 또는 그 이상의 서버들 상에 존재할 수 있을 것이다. 대안으로, 서버 데이터베이스의 콘텐츠는 이동 기기 상에서 적어도 일부분이 캐시 (cache)될 수 있을 것이다. 그러면 서버 또는 이동 클라이언트 (푸시 (push) 또는 풀 (pull) 모델)는 상기 데이터베이스 내에 있는 데이터를 상기 클라이언트 상으로 쫓아내고, 그 데이터를 클라이언트 변경 상의 메타-정보 콘텍스트로서 새롭게 입력되는 데이터와 교체할 것이다. 백-엔드 컴포넌트가 적어도 일부분이 하나 또는 그 이상의 네트워크 서버들 상에 존재하는, 일 실시예에서, 미디어 콘텐트 및 메타-정보는 즉시 상기 서버들로 (예를 들면, 압축된 포맷으로) 송신된다. 대안으로, 상기 클라이언트 상의 프론트-엔드 컴포넌트는 미디어 콘텐트 및 메타-정보에 대해서 부분적인 처리를 실행하고 서버(들)로 중간 표현 (intermediate representations)을 송신한다. 중간 표현은 원래의 미디어 콘텐트는 포함하고 있지 않으며, 그 미디어 콘텐트 및/또는 메타-정보를 분석함으로써 결정되는 특정한 특색만을 포함한다.
대안의 실시예에서, 서버들은 특정 클라이언트에 관련된 (예를 들면, 사용자가 현재 주재하는 영역에 관련된) 미디어 콘텐트 및 메타-정보를 그 클라이언트로 캐싱을 위하여 송신한다. 그러면, 그 클라이언트는 캐시된 데이터를 기반으로 모든 처리를 하고, (예를 들면, 다른 지리적인 지역으로 이동하면, 시간, 날씨 또는 기기들 근방의 개인들에 대한 식별이 변경되면, 환경적인 또는 사용자 특징들이 변경되면, 또는 링크 특색들이나 통계들과 같은 링크 정보가 변경되면) 그 캐시를 갱신하기 위해 서버들로부터 추가의 데이터를 요청한다. 이런 갱신은 클라이언트에 의해 (풀 (pull) 메커니즘) 그리고/또는 서버에 의해 (푸시 (push) 메커니즘) 촉발될 수 있다.
대안으로, 본 발명의 실시예들은 정보에 액세스하기 위해 필요한 시간을 가 속키는 시스템을 제공한다. 전통적인 접근 방법에 비해, 그 시스템은 수동적인 타이핑을 거의 완전하게 제거하고, 클릭들의 수를 현저하게 감소시키며, 시스템이 제공한 링크들을 통해 정보에 액세스하는 사용자들의 수를 최대화시킨다. 제공된 그 시스템은 대화에 훼방을 놓지도 않고 소리와 소음을 발생시키지도 않는다. 그 시스템은 타이핑을 사용하여 가능한 것 보다 더 빠르게 사용자들을 원하는 정보 또는 다른 기능성에 링크시킬 수 있다.
다음으로, 본 발명은 실제 세계의 어떤 것을 가상 세계의 어떤 것으로, 그 객체에 바코드로 라벨을 붙이지 않고서도, 링크시킬 수 있다. 그 시스템은 근접하게 위치한 객체들에만 동작하는 것이 아니라, 근접하지 않은 객체들에 대해서도 동작한다. 본 발명은 클라이언트 기기가 평평한 표면 위에 위치할 것을 필요로 하지 않는다. 대신 달리면서도 그 시스템을 사용할 수 있다. 그 시스템은 클라이언트 내에 완전하게 병합되며, 표면의 유형에 독립적이며, 별도의 장비 또는 특수한 종이를 필요로 하지 않는다. 그 시스템은 최소의 데이터 전송 그리고 어떤 네트워크와도 같이 동작할 수 있고 그 네트워크와 유기적으로 조절되는 능력 덕분에 데이터를 제출하는데 매우 빠르다. 그 시스템은 사람이 손으로 쓰는 것에 맞추어 훈련받을 필요도 없다.
더 나아가, 본 시스템은 기기들 내에 특별한 컴포넌트들을 필요로 하지 않으며, 줄어든 배터리 수명과 같은 부작용도 없다. 태그나 하부구조의 물리적인 설비도 필요로 하지 않으며, 클라이언트기기 상의 어떤 변경도 필요하지 않고, 필드 내에서 유지 관리를 요하는 어떤 외부의 물리적인 컴포넌트들도 가지고 있지 않다. 본 발명에 따른 시스템은 사용자가 검색을 단어들로 기술할 것을 필요로 하지 않으며, 대산, 사진을 찍고 몇 번의 클릭으로 충분히 족할 수 있다 (또는 심지어는 전혀 클릭이 필요하지 않을 수 있다). 그 시스템은 검색을 완료하기 위해 사용자가 텍스트를 거의 쓰지 않거나 전혀 쓰지 않도록 한다. 그 시스템은 더 목적으로 된 검색 결과들을 제공할 수 있으며 더 작은 스크린 사이즈도 충분하도록 구현될 수 있다.
예시적인 구조 (Exemplary Architecture)
도 1a 및 도 1b는 본 발명의 실시예들이 동작할 수 있는 두 대안적인 시스템 구조의 예를 보여주는 블록도이다. 도 1a를 참조하면, 그 구조 (100)는 미디어 콘텐트를 생성하는 이동 클라이언트 기기 (102)를 포함한다. 특히, 이동 클라이언트 (102)는 이동 전화기, PDA, 핸드-헬드 기기 또는 광 센서 (예를 들면, 카메라 또는 카메라 폰) 및/또는 디지털 오디오 재생기 (예를 들면, MP3 플레이어) 및/또는 미디어 콘텐트를 생성하거나 캡쳐하는 다른 기기를 포함하거나 그들에 연결된 다른 이동 기기를 포함할 수 있을 것이다. 이동 클라이언트 (102)는 그 이동 클라이언트 (102)의 사용자와의 상호작용 (interaction)을 처리하고 사용자의 요청을 인식 서버 (104)로 전달하는 프론트-엔드 모듈 (118)을 포함한다.
이동 클라이언트 (102)는 무선 또는 유선 네트워크 (예를 들면, LAN (local area network)과 같은 지역 네트워크 또는 인터넷과 같은 전역 네트워크)를 경유하여 콘텐트 제공자들 (106)에 연결된다. 일부 실시예들에서, 콘텐트 제공자들 (106) 은 이동 클라이언트 (102)에 의해 요청된 정보 또는 다른 콘텐트 제공자들에 의해 제공되어 모여진 정보를 제공하는 외부 엔티티들을 나타낸다. 다른 실시예들에서, 콘텐트 제공자들 (106)은 시스템 (100)의 내부 컴포넌트들이다. 제공된 정보는 모바일 클라이언트 (102)의 사용자에 의해 생성된 미디어 콘텐트 (예를 들면, 이미지들, 사진들, 비디오, 또는 음악 레코딩) 에 링크된다.
이동 클라이언트 (102)는 네트워크를 경유하여 인식 서버 (104)에 또한 연결된다. 그 네트워크는 인터넷 연결, 무선 LAN, WiMax, 셀룰러, 블루투스, 크로스 바, 또는 데이터 송수신을 위한 다른 수단일 수 있다. 인식 서버 (104)는 클라이언트 (102)의 사용자 데이터베이스 (112)를 통해서 사용자를 인증하고 클라이언트 (102)의 요청을 처리하는 백-엔드 컴포넌트 (120)를 포함한다. 특히, 백-엔드 컴포넌트 (120)는 이동 클라이언트 (102)로부터의 미디어 콘텐트, 메타 정보 및 링크들을 수신하고, 링크들을 미디어 콘텐트 및/또는 그 미디어 콘텐트의 중간 표현 및/또는 메타 정보와 연관시키고, 그 링크들, 중간 표현 및 메타-정보를 링크 데이터베이스 (110) 내에 저장하는 책임을 진다. 상기에서 설명된 것과 같이, 메타-정보는, 이동 클라이언트 (102)의 현재 특징들 및 사용자의 개인적인 특징들만이 아니라, 대응하는 미디어 콘텐트에 연관된 메타데이타도 포함할 수 있을 것이다. 링크들은 미디어 콘텐트 및/또는 메타-정보를 콘텐트 제공자들 (106)에 의해 제공될 수 있는 원하는 정보 항목들로 매핑한다. 하나의 링크는 링크 특성들 (예를 들면, 제목, 소유자, 타임스탬프, 권한 관리 정보 등) 의 집합, 통계 (예를 들면, 어떤 링크에 액세스하는 빈도) 및 미디어 콘텐트 및/또는 메타-정보 항목의 식별자와 같이 저장될 수 있을 것이다.
백-엔드 컴포넌트 (120)는 관련된 링크들에 대한 클라이언트 요청들을 수신하고 그 링크들에 대한 링크 데이터베이스 (110)를 검색하는 것에 대한 책임을 진다. 일 실시예에서, 백-엔드 컴포넌트 (120)는 미디어 콘텐트 (예를 들면, 이미지)와 함께 클라이언트 요청을 수신하고 유사한 미디어 콘텐트를 찾아 미디어 콘텐트 저장부 (108)를 검색한다. 본 발명이 속한 기술 분야에 알려진 어떤 유사한 알고리즘도 그 검색을 실행하기 위해 사용될 수 있다. 유사한 미디어 콘텐트가 찾아진다면, 인식 서버 (104)는 이 미디어 콘텐트의 식별자를 인출하고 그 인출된 식별자와 연관된 링크를 찾아서 링크 데이터베이스 (110)를 검색한다. 유사한 미디어 콘텐트가 미디어 콘텐트 저장부 (108)에서 찾아지지 않으면, 백-엔드 컴포넌트 (120)는 그 미디어 콘텐트를 미디어 콘텐트 저장부 (108)에 저장하고 이 미디어 콘텐트를 잠재적으로 원하는 정보 항목들로 매핑한다. 백-엔드 컴포넌트 (120)는 그 링크 생성을 위해 미리 정의된 로직 또는 커스텀 가능한 규칙을 사용할 수 있을 것이다. 유사하게, 백-엔드 컴포넌트 (120)가 상기 요청된 미디어 콘텐트와 연관된 어떤 링크들도 찾지 못하면, 그것은 이 미디어 콘텐트를 잠재적으로 원하는 정보 항목으로 매핑할 수 있는 링크들을, 상기에서 설명된 것과 같이, 생성한다. 백-엔드 컴포넌트 (120)는 미디어 콘텐트에 부가된 또는 그 미디어 콘텐트 대신의 메타-정보를 포함하는 클라이언트 요청을 처리할 때에 유사한 접근 방법을 사용할 수 있을 것이다. 백-엔드 컴포넌트 (120)는 상기의 기능을 실행하기 위해 규칙적인 또는 불규칙적인 간격으로 (예를 들면, 타이머를 통해서) 동작할 수 있을 것이다.
일 실시예에서, 백-엔드 컴포넌트 (120)는 수행된 검색들을 제한하기 위해 메타-정보를 사용한다. 이 메타-정보는 지리적인 정보 (예를 들면, 위도, 경도 및 고도), 환경적인 정보 (예를 들면, 하루의 시간, 계절, 날씨 상태 등), 및 사용자 특징들 (예를 들면, 나이, 모국어, 직업 등)을 포함할 수 있을 것이다. 검색 제한들은 인식 서버 (104)가 정밀도를 향상시키고 원하는 데이터를 더 제공하는 것을 가능하게 한다. 예를 들면, 사람이 (가능하다면) 수백만의 잠재적인 사람들과 사회적인 네트워킹 프로파일 가지기 위해 거리를 걸어가는 것을 인식하려고 한다면, 위치 제한들은 몇몇의 가까이에 있는 사람들을 검색하도록 제한할 수 있고 그래서 원하는 정보를 위한 가장 그럴듯한 후보들을 선택할 수 있다. 일 실시예에서, 인식 서버 (104)는 링크 데이터베이스 (110)와 사용자 데이터베이스 (112)의 콘텐츠 관리 및 광고, CRM 또는 다른 유사한 목적들 위해 사용자의 행동을 추적하는 것에 또한 책임을 진다.
일 실시예에서, 구조 (100)는 PC와 같은 클라이언트 기기 (116) 상의 웹 브라우저를 통해서 사용자에게 사용자 계좌 관리, 링크 관리 및 이미지 관리를 제공할 수 있는 포탈 서버를 포함한다. 도시되지는 않았지만, 포탈 서버 (114)의 관리 기능 역시 이동 클라이언트 (102)를 통해서 액세스될 수 있다. 특별한 사용자 계정들은 사용자들에게 (예를 들면 파트너들을 광고하기 위해) 링크들 관리, 사용자들 생성 및 삭제, 인식 파라미터 변경과 같은 추가적인 권한들을 부여할 수도 있을 것이다. 도 7은 본 발명의 일 실시예에 따른 포탈 서버에 의해 제공되는 예시적인 UI (700)를 도시한다. UI (700)는 사용자들, 사용자들의 특정 그룹 또는 모든 사용자 들이 태그했던 (즉, 그것을 위해 링크들 또는 메타-정보를 생성했던) 미디어 콘텐트 항목들을 사용자들이 브라우즈하도록 허용한다. 추가로, UI (700)는 사용자들이 그 미디어 콘텐트와 연관된 메타-데이터를 변경하도록 허용하며, 그 미디어 콘텐트 항목들과 연관된 링크들의 특성들을 변경하도록 허용한다.
본 발명이 속한 기술 분야의 통상의 기술을 가진 자는 상기 구조 (100)의 설명된 컴포넌트들 중의 어떤 것도 일반성을 잃지 않으면서 통합되거나 또는 재배열될 수 있으며, 추가적인 컴포넌트들이 더해질 수 있다는 것을 인식할 것이다. 또한, 컴포넌트들은 단일의 기기 상에서 동작할 수 있으며, 결합될 수 있으며, 어떤 방법으로 밀집되거나 분리될 수 있으며, 다중의 서버들을 가로질러 분산될 수 있다. 시스템 구조 (100)는 예를 들면, 단말 기기 및 백-엔드 서버; 단말 기기 및 하나 또는 그 이상의 서버-팜들 (server-farms); 대부분의 처리를 실행하는 단말 기기 및 백-엔드 서버나 하나 또는 그 이상의 백-엔드 서버-팜들; 처리의 전부를 실행하고, 데이터 (데이터 전부 또는 일부 데이터만, 나머지는 긱 상에서 캐시됨)를 인출하고 그리고/또는 저장하기 위해 서버에 액세스만 하거나 또는 서버들에 절대 액세스하지 않고, 기기 상에 직접적으로 이용 가능한 모든 데이터를 구비한 단말; 그리고 애드-혹 (ad-hoc) 방법으로 정보를 교환하는 몇몇의 단말 기기들을 포함하는, 다양한 상이한 방법들로 구성될 수 있다.
도 1b는 본 발명의 실시예들이 그 내부에서 동작할 수 있는 대안의 시스템 구조 (126)의 예를 도시한 블록도이다. 그 구조 (126)에 따르면, 이동 클라이언트 기기 (130)는 프론트-엔드 모듈 (118)과 백-엔드 모듈 (120) 둘 다를 호스트한다. 프론트-엔드 모듈 (118)은 이동 클라이언트 (102)의 사용자와의 상호작용을 처리하고 사용자 요청들을 백-엔드 모듈 (120)로 전달한다. 백-엔드 모듈 (120)은 상기에서 설명된 백-엔드 프로세싱의 대부분을 수행할 수 있을 것이며, 백-엔드 서버 (144)는 나머지 백-엔드 프로세싱의 나머지를 수행한다. 대안으로, 백-엔드 모듈 (120)은 모든 백-엔드 프로세싱을 수행할 수 있을 것이며, 백-엔드 서버 (144)는 데이터 (모든 데이터 혹은 일부만의 데이터, 나머지는 캐시 (132)에서 캐시되어 있음) 를 인출하고 저장하는 것만 수행할 수 있을 것이다. 그러나, 다른 구성 (도시되어 있지 않음)에서는, 백-엔드 모듈 (120)은, 이동 클라이언트 (130) 상에 직접적으로 이용 가능한 모든 데이터를 구비하면서, 서버를 전혀 액세스하지 않을 것이다.
캐시 (132)는 이동 클라이언트 (130)의 사용자에 관련된 메타-정보 컨텍스트 (context)를 저장할 수 있을 것이다. 추가로, 캐시 (132)는 메디어 콘텐트 및/또는 그 미디어 콘텐트의 중간 표현들을 포함할 수 있을 것이다. 그러면, 상기에서 더 상세하게 설명된 것과 같이, 서버 또는 클라이언트 (풀 또는 푸시)는 캐시 (132) 내에서 데이터를 쫓아내고 그 데이터를 이동 클라이언트 (130) 변경 상의 메타-정보 컨텍스트로서 새롭게 입력되는 데이터와 교체할 것이다.
일 실시예에서, 그 구조 (100 또는 126)는 수많은 사용자들 위해 최소의 추가 지연을 가지고 서버 측의 계산과 데이터 액세스를 각각 수행하기 위한 몇몇의 인식 서버들 (104) 또는 백-엔드 서버들 (144)을 포함한다. 더 나아가, 다양한 지형으로부터의 사용자들이 서비스 받기를 원한다면, 다중 서버들 (140 또는 144)은 더 나은 성능을 가지고 각 지역들에 서비스하기 위해 지리적으로 분배될 수 있다. 사용자가 서버들을 지나서 돌아다니므로, 서버들 (104 또는 144) 사이의 데이터는 성능을 최적화하기 위해, 교환되고, 교체되며 그리고 캐시될 수 있다.
도 2는 본 발명의 일 실시예에 따라서 서버들의 분배를 제공하는 시스템 (200)을 도시한 것이다. 그 시스템 (200)은 클라이언트 (202), 스위치 (204) 및 다중의 서버들 (206)을 포함한다. 스위치 (204)는 미리 정의된 메타-정보를 기반으로 클라이언트 (202)의 요청들을 처리하기 위해 서버 (204)를 선택한다. 이 메타-정보는, 예를 들면, 2D 또는 3D 위치 정보, 목적 데이터베이스, 시간, 날씨, 계절, 데이터, 사용자 정보, 다른 기기들로의 근접 등을 포함할 수 있을 것이다.
일 실시예에서, 다른 대륙 (예를 들면, 북미, 유럽, 아시아 등)으로 분기하기 위하여 허브 (hub)가 사용되고, 그런 요소들의 위치를 기반으로 또한 스위치들 (204)로 분기하기 위해 사용된다. 서버들 (206)은 필요한만큼 추가될 수 있으며, 시스템 (200)이 유기적으로 성장하도록 한다.
미디어 콘텐트 저장부 (예를 들면, 저장부 (108))는 또한 상이한 위치들 사이로 분배되고 그리고/또는 복제될 수 있다. 어떤 미디어 콘텐트는 위치에 의해 서버들 (206)과 함께 위치할 수 있으며, 그러므로 (백업 목적의 아니라면) 복제될 필요가 없을 수 있을 것이다. (예를 들면, 관리자를 통해서 정의 가능한 것과 같은) 최소 수의 사용자들에 의해 사용되는 콘텐트 미디어 항목들은 자동적으로 같이 위치할 수 있을 것이다. 다른 항목들은 사용자-위치 결정 될 수 있을 것이며 사용자들과 같이 서버들을 지나서 돌아다닐 수 있을 것이며 또는 홈-공간 내에 또는 실제 기기 상에 위치할 수 있을 것이다.
사용자 데이터베이스는 요청들을 부하-균형을 잡기 위해 예를 들면, 알파벳 문자, 사용자 위치, 홈 위치 및 어떤 다른 미리 결정된 요소들에 의해 다중 위치들 및 서버들을 지나서 분배되고 저장될 수 있다. 이하에서 더 상세하게 설명되는 디렉토리들 및 다른 데이터도 (예를 들면, 언어, 최선 네트워크 위치 등에 의해) 또한 분배될 수 있다.
일 실시예에서, 그 시스템은 상이한 지역적 서버들 사이에서 동적으로 데이터를 이동시키며 (shuffle), 사용자들을 최선의 효율적인 방법으로 서브하기 위해 필요한만큼 그 데이터를 캐시한다. 상이한 영역들에 대해 전형적인 이동 속도들을 고려하여 (고속 기차, 자동차 등) 일치하는 데이터를 전송하기 위해 필요한 최소의 시간 내에 사용자의 잠재적인 위치들을 예측할 수 있다. 그에 따라 그 시스템은 그 데이터를 주변에 이동시킬 수 있어서 모든 잠재적인 새로운 위치들이 시간 내에 전달되도록 한다. 데이터는
사용자가 데이터의 코스를 변경하여서 그 데이터가 더 이상 특정한 지역적인 서버에서 필요하지 않는다고 판별되면 그 데이터는 쫓겨날 수 있다.
프론트-엔드 기능 (Front-end Functionality)
도 3은 본 발명의 일 실시예에 따른 클라이언트 상태 머신을 도시한 것이다. 그 클라이언트 기기 또는 단말은 여러 가지 애플리케이션 상태들에 있을 수 있다. 그 시작 상태는 애플리케이션을 활성화시키는 사용자에 의해 (예를 들면, 메뉴로부 터 그 애플리케이션을 선택하여), 표시된 버튼을 누르는 사용자에 의해 또는 클라이언트 그 자체에 의해 (예를 들면, 자동적인 부트를 통해 또는 운영 시스템으로서) 도달될 수 있다. 비록 어떤 개수 및 유형의 중간 상태들이 삽입될 수는 있지만, 그 시작 상태는 애플리케이션의 상태 1로 이끌 수 있을 것이다.
참조번호 302로 라벨 붙여진, 상태 1은 초기 사용자 인터페이스를 제공한다. 도 8a 내지 도 8e는 본 발명의 몇몇 실시예들에 따라 상태 1에서 제공된 예시적인 UI들을 도시한다. 이런 UI들은 뷰-파인더 (view-finder)를 포함하는 검색 윈도우를 포함한다. 뷰-파인더는 광 센서에 의해 수집된 데이터의 시각적인 표현을 제공할 수 있을 것이다. 데이터는 데이터 대역폭 및/또는 색-교정을 제한하기 위해 압축될 수 있다. 클라이언트 기기 및/또는 광 센서가 사용자에 의해 주위에서 이동되기 때문에 데이터는 보통은 실시간으로 또는 거의 실시간으로 갱신된다. 이 뷰-파인더는 더 큰 스크린, 설계, 애니메이션, 데스크탑 또는 다른 인터페이스의 일부일 수 있으며 또는 개별적인 컴포넌트일 수 있다.
도 8a를 참조하면, UI (802)는 뷰 파인더만을 포함하는 검색 윈도우를 제공한다. 전용 버튼 혹은 버튼들을 클릭하거나 또는 입력의 어떤 다른 수단을 제공하여 그 애플리케이션을 304로 라벨 붙여진 상태 2로 이동시킬 수 있다.
도 8b를 참조하면, UI (804)는 검색 버튼을 가진 뷰 파인더를 포함하는 검색 윈도우를 제공한다. 그 검색 버튼은 스크린 상에 어느 곳에나 위치할 수 있으며 전용 버튼들에 의해, 포인트 및 클릭에 의해, 키패드나 어떤 다른 입력 수단에 의해 활성화될 수 있다. 검색 버튼의 활성화는 그 애플리케이션을 상태 2로 이동시킨다. 그 검색 버튼은 다른 단어, 그래픽 아이콘, 애니메이션 또는 어떤 다른 디자인으로 라벨이 붙여질 수 있다.
도 8c를 참조하면, UI (806)는 검색 버튼고 옵션 버튼을 가진 뷰 파인더를 포함하는 검색 윈도우를 제공한다. 그 검색 및 옵션 버튼은 스크린 상에 어느 곳에나 위치할 수 있으며 전용 버튼들에 의해, 포인트 및 클릭에 의해, 키패드나 어떤 다른 입력 수단에 의해 활성화될 수 있다. 검색 버튼의 활성화는 그 애플리케이션을 상태 2로 이동시킨다. 옵션 버튼의 활성화는 그 애플리케이션을 상태 3으로 이동시킨다. 검색 및 옵션 버튼은 다른 단어, 그래픽 아이콘, 애니메이션 또는 어떤 다른 디자인으로 라벨이 붙여질 수 있다.
도 8d를 참조하면, UI (808)는 뷰 파인더 (810) 및 실시간 검색 결과를 제공하는 결과 박스 (812)를 포함하는 검색 윈도우를 제공한다. 고성능 단말 상에서, 결과들은 실시간으로 계산되어 디스플레이될 수 있다. 그 결과 박스 (812)는 스크린 상에 어느 곳에나 디스플레이될 수 있다. 그것은 뷰 파인더 (810)로부터 분리될 수 있고 또는 뷰 파인더 이미지/비디오 또는 (예를 들면, 반투명, 엠보싱된 또는 어떤 다른 방법의) 어떤 다른 디스플레이 엘리먼트 위로 오버레이될 수 있다. 결과들은 실시간 이미지/비디오/풍경에서 객체들에 태그될 수도 있고, 어떤 태그에 속해있는가를 나타내기 위해, 이미지의 영역들은 음영으로 될 수 있고 마킹될 수 있다. 이런 태깅/음영화/마킹 유형은 사용자 경험을 개선하기 위해 선택적으로 제공될 수 있다. 상기에서 설명된 것과 같이, 결과 링크들의 제목들은 정보에 대한 미리 보기 (예를 들면, 3일간 날씨 예보 또는 빠른 교통 요약)를 포함할 수 있을 것 이며, 그래서 사용자는 자신이 더 상세한 정보를 보기를 원하는 경우에만 그 링크를 클릭할 필요가 있을 것이다. 디자인, 시스템 파라미터들 및 성능에 따라, 결과 박스 (812)는 어떤 개수의 결과들 (예를 들면, 1부터 10까지)도 표시할 수 있다. 그 결과는 어떤 입력에 의해 선택되거나 또는 활성화될 수 있으며, 그 애플리케이션을, 상태 2를 생략하고, 상태 4로 직접 가져간다.
도 8e는 결과들이 실시간 생방송 비디오의 상단에 오버레이된 것을 보여주는 예시적인 UI (816)를 도시한다. 그 비디오는 레스토랑의 외관을 디스플레이하며, 실시간으로 디스플레이되는 결과들은 사용자에게 흥미를 줄 수 있는 정보로의 링크들을 포함한다. 사용자가 이런 정보 항목들의 어떤 것을 브라우즈 하기를 원하면, 사용자는 원하는 정보에 액세스하기 위해 한번의 클릭을 할 필요가 있을 뿐이다. 이런 능력은 여기에서는 단일-클릭 정보 액세스로서 언급된다. 여기에서 사용되는 "클릭"의 용어는 정보를 요청하는 어떤 사용자 작동을 언급하는 것이다 (예를 들면, 버튼을 클릭, 링크를 클릭, 키를 푸시, 스크린 상의 객체에 펜, 손가락 또는 다른 활성화 기기로 포인팅, 스크린 상에 수동으로 정보 입력 (예를 들면, 웹 사이트 URL 입력) 등).
대안으로, 링크의 제목이 이미 정보의 미리 보기 (예를 들면, 3일간 날씨 예보 개요)를 포함하면, 사용자는 어떤 클릭을 하지 않아도 이 미리 보기를 볼 수 있다. 이 능력은 여기에서 제로-클릭 정보 액세스로서 언급된다. 예를 들면, 사용자가 자신의 카메라 폰으로 하늘을 가리키면, 3일간 날씨 예보가 링크의 제목으로서 스크린 상에 나타난다. 사용자가 그 날씨 예보에 대해 더 상세한 것을 보기를 원하 면, 그 사용자는 더 상세한 것을 보기 위해 그 링크에 단일 클릭을 하기만 할 필요가 있을 뿐이다.
일 실시예에서, 타이머가 규칙적인 또는 불규칙한 간격으로 실시간 검색을 시작하게 하도록 사용된다. 특히, 사용자가 객체를 가리키면, 실시간 검색들이 타이머를 통해서 결정된 규칙적인 또는 불규칙적인 간격을 기반으로 주기적으로 실행된다.
도 3을 다시 참조하면, 검색 버튼을 선택하거나 또는 다른 "카메라" 버튼 (예를 들면, 조이스틱)을 누르는 것은 사진을 찍거나 짧은 비디오를 레코드하고, 그 애플리케이션을 상태 2로 가져간다. 어떤 개수 및 유형의 중간 상태들이 이런 상태 변이 사이에 삽입될 수 있다는 것에 유의한다.
상태 2에서, 클라이언트는 상태 1에서 생성된 사진 또는 비디오와 연관된 링크들을 인출한다. 일단 인출이 완료되면, 그 애플리케이션은 304로 라벨이 붙여진 상태 4로 이동한다. 어떤 개수 및 유형의 중간 상태들도 이런 상태 변이 사이에 삽입될 수 있다. 예를 들면, 중간 상태들은 어떤 연령의 그룹에 사용자가 속해있는가, 어떤 추가 서비스들에 사용자가 가입했는가, 소프트웨어의 더 새로운 버전이 가능한가 등과 같은 추가적인 검사를 할 수 있다. 그 시스템은 또한 데이터를 인출하면서 사운드나 음악 트랙을 재생할 수 있으며 (선택적으로 카스텀화하는 것이 가능함) 또는 사운드를 재생하여 사용자에게 시스템이 상태 4로 전환하면서 인출이 실행되고 있다는 것을 알릴 수 있다. 그 시스템은 또한 인출하면서 이미지/비디오를 보여줄 수 있다. 그 이미지/비디오는 (예를 들면, 크기 조절, 색상 변경 또는 애니메이션 효과를 추가하여) 원래의 것으로부터 변형될 수 있다.
306으로 라벨 붙여진 상태 3에서, 다양한 옵션 다이알로그들 (dialogs)이 제공될 수 있다. 예를 들면, 사용자 이름 또는 패스워드가 입력될 수 있다 (또는 다른 ID가 SIM 카드 상의 전화 번호, SIP ID 등으로서 사용될 수 있다). 또한, 다양한 다른 옵션들이 상태 3에서 설정될 수 있다. 이런 옵션들은, 예를 들면, 사용될 위치나 센서 정보, 적용될 정밀도의 레벨, 링크될 서버들, 사용자가 속한 사용자 세그먼트 (예를 들면, 사업 사용자, 아이들, 스포츠 팬, 등), 디스플레이 할 링크 분류들 등을 지정할 수 있을 것이다. 현재의 설정들이 어느 링크들이 사용자에게 반환되어야 하는가를 제어할 수 있을 것이다. 예를 들면, 그 시스템은 (가능하다면) 스포츠 관련된 링크들을 스포츠 팬에게 반환할 것이며, 아이들이 좋아할 링크들은 아이들에게 반환할 것이다. 설정들의 어느 것은 굳게 잠겨있어서, 예를 들면 키 코드들을 통해서, 지정된 개인만에 의해 액세스될 수 있다. 그 시스템은 PC, 랩톱, PDA, 전화기 또는 어떤 다른 유사한 기기들에서 전형적으로 발견되는 다른 옵션들로의 액세스를 또한 제공할 수 있다. 이런 옵션 메뉴 내에서, 사용자는 자신의 설정들을 취소할 수 있으며 또는 그 설정들이 유효함을 확인할 수 있다. 응답에서, 그 애플리케이션은 상태 1로 돌아가도록 변이한다. 설정들은 클라이언트 자체에, 다른 클라이언트에, 서버에, 여러 서버들에 또는 다른 방법으로 어떤 다른 곳에 저장될 수 있다.
이미지/비디오가 클라이언트 및/또는 서버(들)에 의해 처리된 후에, 그 검색 결과들은, 308로 라벨 붙여진, 상태 4에서 제시된다. 서버는 클라이언트에게 정보 그 자체가 아니라 정보로의 링크들을 제공한다. 링크들은 활성화되면 클라이언트가 어떤 행동을 실행하도록 할 수 있을 것이다 (예를 들면, 브라우저 내에서 어떤 웹 사이트 오픈, 지정된 번호로 전화 걸기, 특정 애플리케이션 시작, 어떤 애플리케이션 상태에서 특정 애플리케이션 시작, 어떤 애플리케이션 상태 활성화, 이메일, SMS, 팩스, MMS 또는 다른 메시지 쓰기, 사진 전송, 리마인더 (remaimder) 생성, 달력 입력 생성, 태스크 목록 상에 항목 생성 등). 링크의 유형은 링크 앞의 키워드 (예를 들면, http://, 전화 또는 이메일)에 의해서, 적절한 그래픽 심볼/아이콘들 또는 어떤 다른 수단에 의해 표시될 수 있다.
그 결과들은 선형 목록으로, 순위가 정해진 목록으로, (중요성을 표시하기 위해) 색칠되거나 숫자가 매겨진 목록으로, (예를 들면, 분류, 다중의 사용자들에 의해 사용된 빈도, 특정 사용자에 의해 사용된 빈도, 정적인 객체 대 움직이는 객체. 글로벌 항목 대 개인적인 항목, 목적 연령 그룹, 상관 (correlation) 또는 어떤 다른 측정, 입력 또는 분류화에 의해) 어떤 정렬된 계층 구조로, 트리, 확대 가능한 지도, 그래프, 별 모습의 계층 구조, 아이콘들의 목록, 텍스트 목록 또는 당 업계에 알려진 기술에 따른 모습으로 표현될 수 있다.
그 결과들은 또한 분류될 수 있다. 가능한 분류는 개인적인 또는 (특정한 사용자만이 액세스하는) 비밀의 링크들, (사용자들의 특정 집합들이 액세스하는) 그룹 링크들, (모든 사용자들이 액세스하는) 전역 (global) 링크들, 위치 기반 링크들 (현재 위치 및 선택적인 고도에 가깝게 있는 링크들) 및 분류를 생성하는 어떤 다른 요소/입력을 포함한다. 링크들은 그들이 링크되는 정보 유형 (전화 번호, 웹 링크들, 애플리케이션들, 애플리케이션 상태들, 전화 기능 등)에 의해 또한 분류될 수 있고 합해질 수 있다.
도 8f는, 본 발명의 일 실시예에 따라, 이동 전화 상에서의 검색 결과들의 선형 목록을 제공하는 예시적인 UI (814)를 도시한다. 이 결과들은 상기에서 설명된 것과 같이 뷰-파인더 (View-Finder) 및 결과 박스 (Results Box)와 결합하여 연속적으로 갱신될 수 있다. 대안으로, 그 결과들은 통계적으로 제시될 수 있다. 실시간 시스템은, 네트워크 지연 때문에 이동 기기 상에서 직접 발생하는 인식 단계들을 포함하여, 비-실시간 시스템과 유사한 방법으로 구현될 수 있다. 이미지 인식은 이동 기기의 성능에 따라서 규칙적인 간격으로 또는 불규칙적인 간격으로 자동적으로 시작될 수 있을 것이다.
도 3으로 돌아가서, 일단 결과들이 상태 4에서 제시되면, 사용자는 주어진 링크들 중에서 어떤 것도 선택할 수 있다. 링크들은 추가의 질문 다이알로그들 (추가의 상태들)로 링크될 수 있고 또는 웹 브라우저를 어떤 사이트로 전송하고, 특정 애플리케이션이나 상기에서 설명된 어떤 다른 기능들을 시작하는 것과 같은 기능이 실행되는 것의 직접적인 원인이 될 수 있다. 일 실시예에서, 그 결과들이 사용자에게 충분하지 않으면, 그 사용자는 선택을 위해 링크들의 특별한 디렉토리를 제시받거나 또는 그 사용자는 어떤 새로운 링크를 생성하도록 허용된다. 일단 링크가 선택되거나 추가되면, 그 애플리케이션은 상태 1로 돌아간다. 어떤 개수 및 유형의 중간 상태들이 이런 상태 변이 사이에 삽입될 수 있다. 대안의 실시예에서, 그 시스템은 가장 잘 매치되는 링크를 직접 활성화시킨다. 그 시스템은 검색에 동원된 이미지/비디오가 데이터베이스 내의 현존 이미지들/비디오들의 특정 제한들 (예를 들면, 유사성, 색의 범위, 음영, 텍스쳐, 모습 등) 내에 있지 않으면 매치하는 것이 없다고 사용자에게 또한 알릴 수 있다. 그러나, 그런 접근 방법은 상기에서 설명된 것과 같은 여러 가지 링크 결과들을 표현하는 접근보다 더 나쁘게 실행하는 것 같다. 이런 빈약한 성능에 대한 이유의 일부는 객체들은 때때로 다양한 연관들을 가지며 오직 하나의 연관을 가지는 것이 아니라는 것이다. 영화 포스터는 영화 시대, 특정 영화에 대한 시도, 비디오 상점 등와 연관될 수 있다. 또한, 최선의 결과를 직접적으로 활성화시키는 접근 및/또는 사용자에게 어떤 제한들 내에서 매치되는 것이 없다고 알리는 것은 다른 것들에 대한 어떤 링크들을 사용자가 선택하는 것을 통한 강화로부터 이득을 얻지 않는다. 이런 강화의 종류는 시스템, 데이터베이스 및 그 적용 범위의 크기 조절에는 중요하다. 그러므로, 다양한 검색 결과들의 표시의 접근 방법은 일반적으로 더 우월하다.
결과들과 함께 메시지들을 송신 (예를 들면, SMS 또는 MMS)하는 시스템들과 대조적으로, 여기에서 설명된 시스템은 그 애플리케이션 내에서 그 결과들을 직접 표시할 수 있으며, 결과들에 액세스하기 위해 필요한 클릭들의 개수를 크게 줄인다.
310으로 라벨 붙여진 상태 5에서, 링크들은 사용자 입력을 기반으로 추가될 수 있다. 링크들은 상태 1에서 디스플레이된 뷰-파인더로부터 직접 언제나 추가될 수 있다. 시스템은 특별 디렉토리, 웹 링크 진입, (예를 들면, 주소책으로부터의 전화 번호를 포함하는) 전화 번호, 애플리케이션 선택 등과 같은 다양한 옵션들을 선택할 수 있다.
도 4 및 도 5는 본 발명의 몇몇 실시예들에 따라 실행되는 프론트-엔드 방법들의 흐름도이다. 그 방법들은 하드웨어 (예를 들면, 회로, 전용 로직 등), (범용 컴퓨터 시스템 또는 전용 기계에서 동작하는 것과 같은) 소프트웨어, 또는 그 둘의 조합을 포함하는 처리 로직에 의하여 실행될 수 있을 것이다. 일 실시예에서, 처리 로직은 도 6과 관련하여 이하에서 더 상세하게 설명되는 프론트-엔드 애플리케이션 (600)에 존재한다.
도 4는 이동 기기의 사용자에게 원하는 정보를 제공하는 방법 (400)의 일 실시예의 흐름도이다. 방법(400)은 사용자가 원하는 정보의 표시를 수신하는 처리 로직과 함께 시작하며, 그 표시는 미디어 콘텐트 및/또는 메타-정보의 모습일 수 있을 것이다 (402 블록). 미디어 콘텐트는, 예를 들면, 그 이동 기기에 통합된 또는 연결된 광 센서를 통해서 사용자에 의해 기록된 디지털 사진이나 비디오, 또는 이동 기기에 통합된 또는 연결된 디지털 오디오 재생기를 통해서 사용자에 의해 기록된 음악일 수 있을 것이다. 그 메타-정보는, 예를 들면, 미디어 콘텐트의 메타데이터 (예를 들면, 생성 시각, 라벨, 소유자 등), 그 이동 기기와 연관된 특징들 (예를 들면, 위치, 날씨, 고도 등), 사용자의 개인적인 특징들 (예를 들면, 나이, 직업, 모국어 등), 링크들 정보 (예를 들면, 링크 특성 및 통계) 또는 상기의 임의 조합을 포함할 수 있을 것이다.
블록 404에서, 처리 로직은 미디어 콘텐트 및/또는 메타-정보를 포함하는 요 청을 생성하고, 그 요청을 백-엔드 모듈로 송신한다. 대안으로, 처리 로직은 미디어 콘텐트의 중간 표현을 생성하고, 그것을 미디어 콘텐트 대신에 또는 미디어 콘텐트에 추가하여 송신한다.
블록 406에서, 처리 로직은 원하는 정보에 대한 후보들의 목록을 수신한다. 일 실시예에서, 아래에서 더 상세하게 설명될 것과 같이, 그 목록은 원하는 정보 항목들로의 링크들을 포함한다. 블록 408에서, 처리 로직은 이동 기기의 디스플레이 위에 원하는 정보의 후보 목록을 제시한다.
도 5는 데이터베이스에 새로운 링크들을 추가하기 위한 방법 (500)의 일 실시예의 흐름도이다. 방법 (500)은 사용자가 디스플레이된 링크의 목록으로부터 특정 링크를 선택하는가의 여부를 판별하는 처리 로직과 함께 시작한다 (502 블록). 그렇다면, 처리 로직은 이동 기기가 그 링크와 연관된 행동을 수행하도록 한다 (블록 504). 그렇지 않다면, 그 처리 로직은 사용자가 링크를 제공하는 것을 기다린다. 일 실시예에서, 처리 로직은 사용자가 링크를 수동으로 입력하도록 허용한다. 대안으로, 처리 로직은 링크들의 디렉토리를 제시하고 사용자가 그 디렉토리로부터 특정 링크를 선택하는 것을 기다린다.
도 10은 본 발명의 일 실시예에 따라서, 사용자에게 링크 디렉토리 (1004)를 제시하는 예시적인 UI (1002)를 도시한 것이다. 디렉토리 (1004)는 사용자에게 관련된 웹 사이트들, 전화 번호들, 애플리케이션 및 다른 링크들을 가리킨다. 그 디렉토리는 클라이언트에 캐시되거나 저장되어 디렉토리를 브라우즈하기 위해 사이트마다 네비게이트할 필요를 제거하며; 오히려 그 디렉토리를 브라우즈하는 것은 표 준 소프트웨어 애플리케이션의 메뉴를 통해서 브라우즈하는 것과 같아 보인다. 그 디렉토리는, 다른 리스트들이나 다른 형식으로 분기하는 선형 목록으로, 트리와 같은 방식으로 표시될 수 있다. 버전을 붙이는 방식은 그 디렉토리가 갱신되었다는 것을 확신시킬 수 있다. 이런 방식은 이전에 링크되었던 객체들이 사용자나 관리자에 의해 제어되는 외부 시스템 관리 애플리케이션을 통해서 새로운 또는 현재의 정보에 재-링크되는 것을 또한 가능하게 한다. 재-링크시키는 것은 후보 링크들을 사용자가 선택하거나 또는 다른 외부적인 요인들을 기반으로 하여 실행될 수 있다. 예를 들면, 초기에 BMW 로고는 BMW 팬 사이트에 링크될 수 있을 것이지만, 시스템 관리 애플리케이션은 관련된 새로운 사이트들과 사진들을 찾을 수 있으며 그리고 그들을 공긱 BMW 회사 웹사이트에 수동으로 연결시킬 수 있다.
도 5로 돌아가서, 블록 508에서, 처리 로직은 사용자에 의해 (수동으로 또는 디렉토리 엔트리를 선택하여) 지정된 링크를 수신한다. 블록 510에서, 처리 로직은 그 링크의 특성들(제목, 소유자, 타임 스탬프, 액세스 정보 등)을 생성한다. 블록 510에서, 처리 로직은 그 링크를 그 링크의 특성들과 함께 링크 데이터베이스에 저장시키기 위해 백-엔드 모듈로 송신한다.
도 6은 프론트-엔드 모듈 (600)의 일 실시예의 블록도이다. 프론트-엔드 모듈 (600)은 미디어 콘텐트 수집기 (608), 메타-정보 수집기 (610), 검색 요청기 (612), 결과 제공자 (614), 새로운 링크 수집기 (616), 옵션 제공자 (618) 및 UI 생성기 (620)를 포함할 수 있을 것이다.
미디어 콘텐트 수집기 (608)는 이동 기기의 사용자에 의해 생성된 미디어 콘 텐트를 이동 기기에 통합되거나 연결된 미디어 콘텐트 제공자 (602)를 통해서 수신하는 것에 책임이 있다. 그 미디어 콘텐트 제공자는, 예를 들면, 광 센서 (예를 들면, 디지털 카메라 또는 폰 카메라), 디지털 오디오 재생기 (예를 들면, MP3 재생기) 등을 포함할 수 있을 것이다.
메타-정보 수집기 (610)는 위치 데이터 제공자 (604)에 의해, 센서들 (606)에 의해 그리고/또는 사용자에 의해 수동으로 입력되어 제공된 메타-정보를 수집할 책임이 있다. 위치 데이터 제공자 (604)는 GPS 좌표 (경도, 위도), 셀 ID들, 근접한 액세스 포인트들의 MAC 주소들, 신호 강도 값, 외형들 및 어떤 다른 좌표 시스템을 제공할 수 있다. 위치 정보는 2D 위치 정보 및 높이와 고도를 또한 포함하는 3D 위치 정보를 포함할 수 있다. 3D 위치 정보는 시스템이 동굴, 다른 층 레벨 등을 구분하는 것을 가능하게 한다. 위치 데이터 제공자 (604)는 또한 방향, 속도 및 가속도를 제공할 수 있다.
일 실시예에서, 사용자들이 자신들의 기기들을 갱신하거나 또는 제한된 위치 적용 범위가 있는 경우에 앞과 뒤로 천이할 때에, 위치 정보는 사용자가 비-위치 기반 서비스와 위치 기반 서비스 간의 천이를 허용할 것을 필요로 하지 않는다. 이동 기기에 위치 데이터 제공자가 장착되지 않으면, 프론트-엔드 모듈 (600)은 링크 또는 적절한 위치를 가능하게 하는 기술을 구매하는 다른 방법 (별도의 모듈, 현존 제공자, 공급자, 파트너 또는 새로운 제공자로부터 현존 기기를 갱신 또는 다른 엔티티)을 자동적으로 제공할 수 있을 것이다. 시스템 파라미터들을 기반으로 하는 이런 유형의 통합된 광고는 시스템을 위해서 가능하게 하는 다른 것은 물론이고 위 치선정 (locationing) 및/또는 위치결정 (positioning)에 사용될 수 있다.
센서들 (606)은 검색 경험의 질을 높이고 단순화할 수 있는 입력을 제공하는 오디오 샘플들 (예를 들면, 배경 소음), RFID (예를 들면, 근접성), 블루투스, 어떤 다른 무선 인터페이스, 온도 센서들, 냄새 센서들, 신체 파라미터들을 측정하는 센서들, 동작 센서들, 가속도계, 광도 센서들, 또는 다른 센서를 포함할 수 있을 것이다.
일 실시예에서, 메타-정보 수집기 (610)는 미디어 콘텐트에 태그하는 것에 위치, 시각, 날자, 계절, 날씨 등과 같은 메타-정보를 제공한다. 태그하는 것은 사용자 입력을 기반으로 또는 센서들 (606) 및 위치 데이터 제공자 (604)에 의해 제공되는 정보를 사용하여 자동적으로 실행될 수 있을 것이다.
검색 요청기 (612)는 검색 요청들을 생성하고 그 검색 요청들을 서버에 제공하는 것에 책임이 있다. 검색 요청들은 미디어 콘텐트 및/또는 미디어 콘텐트 수집기 (608) 및 메타-정보 수집기 (610)에 의해서 획득된 메타-정보를 포함할 수 있을 것이다.
결과 제공자 (614)는 서버로부터 검색 결과들을 수신하고 그들을 UI 생성기 (620)에게 제공하여 사용자에게 제시되도록 한다. 옵션 제공자 (618)는 프론트-엔드 모듈 (600)과 연관된 설정들을 관리하고 사용자가 그런 설정들을 제공하고 변형하도록 허용하는 것에 책임이 있다.
새로운 링크 수집기 (616)는 (예를 들면, 링크 디렉토리 또는 수동 입력을 통해서) 사용자에 의해 지정된 새로운 링크들을 획득하고 그 새로운 링크를 백-엔 드 모듈로 송신할 책임이 있다. 일 실시예에서, 새로운 링크 수집기 (616)는 사용자에 의해 선택된 링크들을 생성된 후보들의 목록으로부터 또한 추적하여 그 링크들을 백-엔드 모듈들에 제공한다.
UI 생성기 (620)는 UI들을 사용자에게 제시하는 책임이 있다. 일 실시예에서, UI 생성기 (620)는 짧은 배터리 유지 시간을 늘이기 위해 뷰-파인더로 전력 절약 모드를 통합한다. 특히, 뷰-파인터는 작동을 멈추거나, 그레이-스케일로 변경하거나 또는 전력 절약 모드를 나타내기 위한 다른 효과들을 구비할 수 있다. 키 하나를 눌러서 (예를 들면, 별표 키를 눌러서, 다른 키와 같이 별표 키를 눌러서 또는 키들의 다른 조합에 의해) 클라이언트를 전력 절약 모드로부터 깨워서 뷰-파인더를 재활성화시킨다. 몇몇 실시예들에서, 지문 센서들 또는 다른 인증 방법들이 전력 절약 모드로 들어가고 전력 절약 모드에서 나오는 천이를 용이하게 하기 위해 사용된다.
일 실시예에서, 전력 절약 모드를 활성화하기 위해 (아마도 다른 레벨의 정밀도를 가지는) 타이머가 사용된다. 그 타이머는 전형적인 사용자 패턴들 (예를 들면, 이미지 날자와 상관된 사용 사이의 시간, 날의 시각, 영역 또는 다른 요소, 상관들, 문턱값들 등) 로부터 학습하여, 그에 따라서 스스로를 맞출 수 있을 것이다. 예를 들면, 걷는 동안에, 특정 사용자는 그 시스템을 더 자주 사용할 수 있을 것이며 그래서 그 시스템은 짧은 시간 구간 동안에 전력 절약 모드로 불필요하게 가는 것을 피할 수 있을 것이다. 운전 중에, 동일 사용자는 그 시스템을 거의 사용하지 않을 것이며, 그 시스템은 사용 후 거의 즉시 전력 절약 모드로 가도록 해야 한다. 이런 유형의 행동은 수집된 메타-데이터로부터, 그 메타-데이터를 기반으로 그리고 그 메타-데이터와 상관(correlated)하는 것으로부터 학습될 수 있을 것이다.
일 실시예에서, 사진 미리 보기는 카메라를 버튼을 통해서 (예를 들면, 조이스틱이나 키패드에서 위로 그리고 아래로) 줌하는 것으로써 개선될 수 있다. 카메라의 해상도는 때로는 이동 기기의 스크린의 해상도보다 아주 더 크기 때문에, 그 시스템은 카메라가 가리키는 객체의 크기와 위치를 추정하여 자동적으로 항목들로 또한 줌 할 수 있다. 카메라의 추가적인 해상도는 이동 기기 상의 목적한 객체의 가까운 모습으로 적절하게 보이는 미리 보기 사진의 결과를 가져온다.
일 실시예에서, 프론트-엔드 모듈 (600)은 제일 윗면 링크/동작 또는 세 개의 제일 윗면 또는 윗면 X 행동들을 (예를 들면, 비디오/뷰-파인더의 제일 윗면 상의 오버레이로서, 이미지 다음의 측면 상의 어딘가에, 다른 스크린 또는 다른 기기 상에 등) 연속적으로 보여준다. 일 실시예에서, 사용자가 카메라로 객체를 가리킬 때에, 프론트-엔트 모듈 (600)은 정보, 애플리케이션들, 애플리케이션들의 상태들, 또는 다른 데이터를 또한 디스플레이할 수 있을 것이다. 개요 또는 요약은 전체 확장된 콘텐트 대신에 제시될 수 있을 것이며, 또는 심지어는 전체 콘텐트가 시스템 구성과 성능에 따라서 바로 제시될 수 있을 것이다.
일 실시예에서, 프론트-엔드 모듈 (600)은 사용자가 프론트-엔드 모듈 (600)이 인접한 기기들에 (블루투스, RFID, 무선 LAN 또는 통신의 다른 수단을 통해서) 자동적으로 브로드캐스트하기 위해 버튼 또는 메뉴 항목을 활성화하는 것을 허용하는 단일 버튼 분배 기능을 또한 제공한다. 추가로, 그 애플리케이션은 어떤 메카니 즘 (이메일, SMS, MMS, ftp, http 다운로드 또는 어떤 다른 메카니즘) 을 통해서 다른 사람에게 송신될 수 있다. 일 실시예에서, 버튼 또는 메뉴 항목을 활성화시키는 것은 수신 또는 수신들의 그룹을 결정하기 위해 스크린 또는 다중 스크린을 선택하도록 이끌 수 있을 것이다.
도 9a 내지 도 9g는 본 발명의 일 실시예에 따른 프론트-엔드 모듈 (600)에 의해 제시되는 예시적인 UI들을 도시한 것이다.
도 9a를 참조하면, UI (900)은 프론트-엔드 모듈 (600)의 상태 1 동안에 제공되는 검색 윈도우를 보여준다. UI (900)는 사용자에 의해 촬영된 서가의 사진을 디스플레이한다.
도 9b를 참조하면, UI (902)는 프론트-엔드 모듈 (600)이 상태 2로 천이하는 것을 보여준다. 검색 버튼은 그 검색이 제공되었다는 것을 나타내기 위해 강조되었다.
도 9c를 참조하면, UI (904)는 정보 인출 및 상태 4로의 천이하는 것을 보여준다. 도 9d는 UI(906)가 검색들의 결과를 사용자에게 제시하는 것을 보여준다.
도 9e는 사용자가 검색 결과들을 브라우즈하는 것을 허용하는 UI (908)를 보여준다. UI(908)는 링크 디렉토리를 활성화시키는 디렉토리 버튼을 제공한다. 추가로, 디스플레이된 링크들의 어느 것도 충분하지 않으면, UI (908)는 사용자가 다른 링크를 수동으로 입력하게 하도록 한다.
도 9f는 선택된 링크의 사용자의 활성화를 설명하는 UI(910)를 보여준다. 도 9G는 웹 브라우저로 하여금 링크를 디스플레이하는 것을 시작하게 했던 활성화의 결과를 설명하는 ui (912)를 보여준다.
백-엔드 기능 (Back-end Functionality)
도 11은 본 발명의 일 실시예에 따른 서버 상태 머신을 도시한 것이다. 그 서버는 몇몇 애플리케이션 상태들에 있을 수 있다. 들어오고 나가는 트래픽은 암호화되거나 암호화되지 않거나 또는 부분적으로 암호화될 수 있다.
1102로 라벨 붙여진 리스닝 상태 1에서, 서버는 클라이언트로부터의 입력을 위해 대기한다 (이 클라이언트는 또한 동일 클라이언트 기기, 예를 들면, 통합된 클라이언트-서버 모드일 수 있다). 일단 (어떤 유형의 입력 채널, 예를 들면 네트워크로부터의) 입력이 수신되면, 입력은 처리되어 분류된다. 입력이 미리 정의된 요청 유형 (ADD, TDD, GADD 등)이면, 그 애플리케이션은 이하에서 설명되는 것과 같이 적절한 상태로 이동한다.
입력이 ADD 요청이면, 서버는 1104로 라벨 붙여진 ADD 상태 2로 진입한다. ADD 상태 (1104)는 사용자-지정된 영화, 사진 또는 다른 미디어 콘텐트 및/또는 메타-정보를 지정된 (아마도 서버들 사이로 분배되고 동기화 된) 사용자 계정을 위해 데이터베이스에 추가한다. 데이터베이스는 또한 클라이언트 상에서 캐시될 수 있고 위치, 시각 및 다른 요소들을 기반으로 동기화될 수 있다. ADD는 "전역적인 (global) 속성"이 아니며, 그러므로, 위치/고도 정보를 포함하지 않는다. 이 컨텍스트 내의 "전역적인 속성"은 추가된 "아이콘"이 (예를 들면, 임의의 사용자 또는 그 추가를 개시한 사용자 외에 다른 사용자들을 포함하는 임의의 사용자 그룹에) 전역적으로 액세스 가능하다는 것이다. 일단 ADD가 완료되면, 그 애플리케이션은 리스닝 (listening) 상태 1102로 돌아간다.
입력이 TDD 요청이며, 서버는 1106으로 라벨 붙여진 TDD 상태 3으로 진입한다. TDD 상태 (1106)는 영화, 사진 또는 다른 미디어 콘텐트 및/또는 이전의 비-전역적 질의 요청에서 특정된 메타-정보를 (아마도 서버들 사이로 분배되고 동기화 된) 특정된 사용자 계정을 찾기 위해 데이터베이스로 추가한다. TDD는 QUERY를 통해 제공되는 데이터를 수반하는 ADD와 동등하며; 그래서 TDD는 "사건 이후에" 발생한다. 데이터베이스 또한 클라이언트 상에서 캐시되고 위치, 시각 및 다른 요소들을 기반으로 동기될 수 있다. TDD는 "전역적인 속성"이 없으며 그러므로 위치/고도 정보를 포함하지 않는다.
입력이 GADD 요청이면, 서버는 1108로 라벨 붙여진 GADD 상태 4로 진입한다. GADD 상태 (1108)는 사용자 지정된 영화, 사진 또는 다른 미디어 콘텐트 및/또는 메타-정보와 위치 (GPS 좌표 및/또는 고도)를 (아마도 서버들 사이로 분배되고 동기화 된) 전역 데이터베이스 또는 지정된 서브-데이터베이스에 추가한다. 그 데이터베이스는 또한 클라이언트 상에서 캐시되고 위치, 시각 및 다른 요소를 기반으로 동기화된다. GADD는 "전역적 속성"을 가지며, 그러므로 위치/고도 정보를 포함한다. 일단 GADD가 완료되면, 그 애플리케이션은 리스닝 상태로 돌아간다.
입력이 TADD 요청이면, 서버는 1110으로 라벨 붙여진 TADD 상태 5로 진입한다. TADD 상태 (1110)는 이전의 전역 질의 요청에서 지정된 영화, 사진 또는 다른 미디어 콘텐트 및/또는 메타-정보와 위치 (GPS 좌표 및/또는 고도)를 (아마도 서버 들 사이로 분배되고 동기화 된) 전역 데이터베이스 또는 지정된 서브-데이터베이스에 추가한다. TADD는 CQUERY를 통해 제공된 데이터를 동반하는 GADD와 동등하며, 그래서, TADD는 "사건 이후에" 발생한다. 그 데이터베이스는 또한 클라이언트 상에서 캐시되고 위치, 시각 및 다른 요소를 기반으로 동기화된다. TADD는 전역적 속성을 가지며, 그러므로 위치/고도 정보를 포함한다. 일단 TADD가 완료되면, 그 애플리케이션은 리스닝 상태로 돌아간다.
입력이 DIR 요청이면, 서버는 1112로 라벨 붙여진 DIR 상태로 진입한다. DIR 상태(1112)는 클라이언트 내에 제공된 버전 번호를 조사한다. 버전 번호가 서버에 있는 것보다 오래된 것이면, 서버는 갱신된 디렉토리를 클라이언트에게 제공한다 (클라이언트와 서버가 동일 기기일 수 있다는 것을 유의한다. 디렉토리가 갱신되었는가의 여부를 판별하기 위한 다른 알고리즘이 일반성을 잃지 않고 사용될 수 있다. 디렉토리는 어떤 유형의 압축 또는 암호화를 사용하여 전체적으로 또는 부분적으로 (예를 들면 필수적으로 갱신하여) 제공될 수 있다.
입력이 QUERY 요청이면, 서버는 1114로 라벨 붙여진 QUERY 상태 7로 진입한다. QUERY 상태 (1114)는 입력되는 데이터 (예를 들면, 영화, 사진 또는 다른 미디어 콘텐트 및/또는 메타-정보)를 수집하고 (분배된 속성을 가지고 있을) 특정된 사용자 계정을 찾기 위해 데이터베이스 내에서 적절하게 매치되는 것들을 찾기 위해 그 입력되는 데이터를 사용한다. 시스템은 그런 데이터 (예를 들면, 객체 인식, 얼굴 인식, 바코드 인식, OCR 등) 를 분석하기 위해 적용되는 다른 알고리즘들을 선택하기 위해 메타-정보 및 미디어 콘텐트 사진 유형을 또한 필터할 수 있다. 그 시 스템은 또한 다른 계정들 및 사용자들의 상태를 요청받은 것으로서 또한 간주할 수 있다. 예를 들면, 검색은 특정 다른 사용자들의 상태를 고려하여, 그 사용자들에 근접하게 제한될 수 있을 것이다. 가능한 애플리케이션은 사람들을 인식하는 것이다. 어떤 장소에서 실제 사람의 사진을 찍는다면, 그 위치에 물리적으로 나타난 그 실제의 사람의 사진들만을 찍을 수 있을 것 같다. 그러므로, 시스템은 질의를 처리할 때에 그 장소에 있지 않은 모든 사람들을 자동적으로 제거하고 물리적으로 존재하는 광경에 초점을 맞출 수 있을 것이다.
입력이 CQUERY 요청이면, 서버는 1116으로 라벨 붙여진 QUERY 상태 8로 진입한다. QUERY 상태 (1116)는 유일한 전역 질의에 추가하여 표준 QUERY (상태 7)를 동작시킬 수 있다. 전역 질의는 위치 정보 (경도 및 위도와 같은 GPS 좌표)를 통하여 검색을 제한한다. 전역 질의는 전역 데이터베이스 또는 지정된 것과 같은 서브-데이터베이스를 검색한다. 2D 및 3D 위치 정보를 사용하는 것은 데이터베이스 내의 고려되어야 할 필요가 있는 엔트리들의 개수를 줄여준다. 시스템은 그런 데이터 (예를 들면, 객체 인식, 얼굴 인식, 바코드 인식, OCR 등) 를 분석하기 위해 적용되는 다른 알고리즘들을 선택하기 위해 입력되는 데이터 (예를 들면, 위치, 고도, 메타-정보, 미디어 콘텐트 유형, 미디어 콘텐트 그 자체 등)를 또한 필터할 수 있다. 그 시스템은 (상기에서 설명된 것과 같이 검색을 특정 다른 사람에 근접한 것에 의해서 제한하기 위해) 다른 계정들 및 사용자들의 상태를 요청된 것으로서 또한 간주할 수 있을 것이다.
상기에서 설명된 것과 같이, 계층적인 방식으로 동작하는 여러 인식 서버들 이 있을 수 있다. 그들은 부하-균형 잡는 것을 수행하고 그에 따라서 요청들을 차단하고 할당한다 (예를 들면, ADD/TDD는 사용자/계정 정보를 기반으로 할 것이며, 반면에, GADD/TADD는 특정 서버/서브시스템에 대한 위치/고도 정보를 기반으로 할 것이다). 차단을 위한 어떤 다른 방법/분류화가 일반성을 잃지 않고 사용될 수 있다. 각 서브-시스템/개별 서버는 서버 상태 머신의 상기 변형들 중의 하나로서 설계될 수 있을 것이다. DIR 요청들은 모든 서버들 사이에서 분배되어 서버들의 개별 집합으로 재경로 설정될 수 있을 것이다. 어떤 부하-균형 알고리즘도 채택될 수 있을 것이며, 부하 균형잡는 것은 내부의 그리고 외부의 어떤 메타-정보, 미디어 콘텐트 유형 및 다른 요소들을 기반으로 할 수 있다.
도 12 및 도 13은 본 발명의 일 실시예에 따라 수행되는 백-엔드 방법들의 흐름도이다. 그 방법들은 하드웨어 (예를 들면, 회로, 전용 로직 등), (범용 컴퓨터 시스템 또는 전용 기계에서 동작하는 것과 같은) 소프트웨어, 또는 그 둘의 조합을 포함하는 처리 로직에 의하여 실행될 수 있을 것이다. 일 실시예에서, 처리 로직은 도 14와 관련하여 이하에서 더 상세하게 설명되는 백-엔드 애플리케이션 (1400) 내에 존재한다.
도 12는 링크 데이터베이스를 생성하는 방법 (1200)의 일 실시예의 흐름도이다. 그 방법 (1200)은 링크 및 연관된 미디어 콘텐트 및/또는 메타 정보를 포함하는 클라이언트 요청을 수신하는 처리 로직과 함께 시작한다 (블록 1202).
미디어 콘텐트가 미디어 콘텐트 저장부 내에 존재하지 않으면, 처리 로직은 그 미디어 콘텐트를 미디어 콘텐트 저장부에 추가한다 (블록 1204). 그 요청이 전 역적 속성을 가지면, 처리 로직은 그 미디어 콘텐트를 전역 미디어 콘텐트 저장부에 추가한다. 그 요청이 전역적 속성을 가지고 있지 않으면, 처리 로직은 그 미디어 콘텐트를 특정된 사용자 계정을 위하여 미디어 콘텐트 저장부에 추가한다.
블록 1206에서, 처리 로직은 메타-정보 및 링크를 링크 데이터베이스에 추가하다. 그 요청이 전역적인 속성이라면, 처리 로직은 이 데이터를 전역 링크 데이터베이스에 추가한다. 그 요청이 전역적인 속성이 아니라면, 처리 로직은 그 데이터를 지정된 사용자 계정에 추가한다. 일 실시예에서, 처리 로직은 추가의 메타-정보 (예를 들면, 날씨 정보가 클라이언트에 의해 제공되지 않았다면 그 날씨 정보, 클라이언트에 의해 지정된 위치에 대한 교통 정보 등)를 자동적으로 획득하고 이 추가의 메타-정보를 링크 데이터베이스 내에 링크와 함께 저장한다.
일 실시예에서, 링크들을 생성하고 모으는 것은 내부의 노력, 최종 사용자들 및 파트너들을 통해 데이터베이스에 대해 실행된다. 예를 들면, 그 시스템은 와이드 렌즈 또는 파노라믹 (panoramic) 카메라 또는 그와 같은 카메라가 장착된 차량을 채택함으로써 회사-내부의 노력을 통해서 사진들이 데이터베이스로 영상을 추가하기 위해 더해질 수 있다. 다른 예는 (사진이 없는) 전통적인 매핑 도구들을 링크들의 기준선을 제공하기 위해 사용하는 것이다. 위치들은 지리적인 위치를 오직 기반으로 하여 정보, 전화 번호들 등에 링크될 수 있다. 사용자가 지리적인 지역에서, 어떤 다른 사용자가 그 지역에서 사진 찍기 전에, 사진을 찍으면, 그 사용자는 위치만으로-기반된 (location-only-based) 결과들을 적어도 수신할 것이다. 그 사진은 그러면 검색 결과들을 다듬기 위해 사용될 것이다. 나중에 사용자가 동일한 위치에서 사진을 찍으면 그곳에서 이전에 찍힌 사진으로부터 이득을 얻을 것이다. 이런 방식으로 생성된 링크들은 바로 이용 가능한 데이터의 유용한 첫 번째 집합일 수 있으며 위치-종속된 정보를 제공할 수 있다. 심지어 객체가 데이터베이스에 추가되지 않더라도 객체를 사진 찍은 사용자는 현재의 위치를 기반으로 관련된 정보에 빠르게 액세스할 수 있다.
높은 관련성이 있고, 유명하며, 흥미있는 지역에서는 특히 사람을 고용하여 사진을 찍어서 사진에 링크를 할당할 수 있다. 그 시스템은 파트너들이 그들의 조직 (방문자들이 풍부한 정보에 더 많이 액세스하도록 제공하기 원하는 잠재적인 어떤 조직)에 관련된 객체들의 사진에 링크를 추가하는 것을 허용한다. 예를 들면, 박물관은 예술품의 링크된 사진들을 추가할 수 있고, 레스토랑은 그 외관의 사진에 자신들의 디지털 버전의 메뉴를 링크시킬 수 있으며, 영화 극장은 영화 리뷰 및 극장의 사진에 대한 쇼 시간들에 링크를 추가할 수 있을 것이다.
결국, 최종 사용자들은 그들에게 관심이 있는 객체들의 사진들에 링크들을 추가할 수 있다. 그들은, 객체들의 사진을 찍고 그 사진에 자신의 이동 기기 또는 PC를 통해서 다중의 링크를 할당함으로써, 데이터베이스에 능동적으로 기여할 수 있으며, 또는 그 데이터베이스에 수동적으로 기여할 수 있다. 수동적인 기여는 클라이언트 애플리케이션을 동작시키면서 언제든지 사용자가 객체의 사진을 찍으면, 그 시스템 서버는 공중 데이터베이스에 기여했던 그런 사진들/이미지들에 관련된 링크들을 식별하기 위해 시도할 것이라는 것을 의미한다. 객체에 아무 링크들도 부여되지 않았다면, 그 애플리케이션은 사용자에게 사용자의 지리적인 위치 (지도, 날씨 등)를 기반으로 하는 어떤 기본적인 옵션들을 제공할 것이며 또는 사용자는 관련된 링크를 빠르게 찾기 위해 시스템의 디렉토리 네비게이션을 사용할 수 있다. 사용자가 링크를 언제든지 실행하면, 그 링크는 원래 사진 찍혔던 그 객체에 자동적으로 할당될 것이다. 그러면 그 다음에 그 객체의 사진을 찍는 사용자는 이전의 사용자에 의해 선택된 링크를 제시받을 것이다. 링크들은 겹쳐 써지지는 않을 것이며, 오히려 더욱 더 많은 링크들과 사진들이 인식 절차 내에서 고려될 수 있을 것이다.
도 13은 검색을 실행하는 방법 (1300)의 일 실시예의 흐름도이다. 그 방법 (1300)은 클라이언트로부터 질의 요청을 수신하는 처리 로직과 함께 시작한다 (블록 1302). 그 질의 요청은 미디어 콘텐트 및/또는 미디어 콘텐트의 중간 표현 및/또는 원하는 링크들이 조사되는 메타-정보를 포함할 수 있을 것이다.
블록 1304에서, 처리 로직은 유사한 미디어 콘텐트를 찾아서 미디어 콘텐트 저장부를 검색한다. 미디어 콘텐트, 메타-정보 및/또는 실제의 미디어 콘텐트 유형에 따라서, 처리 로직은 (비록 근접하게 일치하는 것이 아닐지라도) 가장 유사한 콘텐트를 찾기 위해 그런 콘텐트 (예를 들면, 객체-인식, 얼굴-인식, 바코드 인식, OCR 등)를 분석하기 위한 상이한 알고리즘들을 사용할 수 있을 것이다. 더 많은 유연성을 제공하기 위해, 그 유사성은 미리 정의된 문턱값을 기반으로 할 수도 있고 기반으로 하지 않을 수도 있을 것이다. 일 실시예에서, 질의 요청이 전역적인 속성이라면, 처리 로직은 전역적 미디어 콘텐트 저장부를 검색한다. 그 질의 요청이 전역적 속성이 아니면, 처리 로직은 특정된 사용자 계정을 찾기 위해 미디어 콘텐트 저장부를 검색한다. 일 실시예에서, 그 검색은 상기에서 상세하게 설명된 것과 같이, 메타-정보를 기반으로 하여 제한된다.
(도시되지 않은) 대안적인 실시예에서, 질의 요청은 메타-정보 (예를 들면, 위치 또는 레스토랑 이름) 및/또는 미디어 콘텐트의 중간 표현만을 포함할 수 있을 것이다. 그러면, 처리 로직은 메타-정보 및/또는 중간 표현들을 매치하기 위한 링크 데이터베이스를 저장한다. 어떤 매치라도 발견되면, 처리 로직은 블록 1310 으로 진행한다. 대안으로, 처리 로직은 클라이언트에게 어떤 검색 결과들을 반환하지 않을 수 있으며 또는 오류 메시지를 반환할 수 있을 것이다.
블록 1306에서, 처리 로직은 유사한 콘텐트가 미디어 콘텐트 저장부 내에 존재하는가 여부를 판별한다. 일 실시예에서, 유사한 콘텐트가 발견되지 않으면, 처리 로직은 미디어 콘텐트를 미디어 콘텐트 저장부에 저장하고 블록 1314로 진행하다. 다른 실시예에서 (도시되지 않음), 처리 로직은 콘텐트를 저장부 내에 저장하지 않고, 클라이언트로 어떤 검색 결과를 보내지 않을 수 있고 또는 오류 메시지를 보낼 수 있을 것이다.
유사한 콘텐트가 발견되면, 처리 로직은 유사한 미디어 콘텐트의 식별자를 획득하며 이것을 매치되는 링크들을 찾기 위해 (질의 요청의 유형에 따라서 전역적인 또는 사용자 지정된) 링크 데이터베이스를 검색하기 위해 사용한다. 매치되는 링크들이 발견되면, 처리 로직은 그 발견된 링크들을 클라이언트로 보낸다 (블록 1316). 일 실시예에서, 처리 로직은 시각, 날자, 계절, 날씨, 위치 등과 같은 관련된 메타-정보를 사용하여 그 검색을 제한한다.
일 실시예에서, 매치되는 링크들이 발견되지 않으면, 처리 로직은 블록 1314으로 진행한다. 블록 1314에서, 처리 로직은, 예를 들면, 미리 정의된 로직 및/또는 카스터마이즈 가능한 규칙들을 사용하여, 미디어 콘텐트 및/또는 메타-정보에 대한 링크들을 생성하여, 그 링크들을 클라이언트로 반환한다. 다른 실시예에서, (예를 들면, 메타-정보에 기반한 제한 때문에) 매치되는 링크들이 발견되지 않으면, 처리 로직은 클라이언트로 아무 검색 결과를 반환하지 않거나 오류 메시지를 반환하기보다는 링크들을 생성하지 않는다.
블록 1318에서, 처리 로직은 사용자에 의해 (예를 들면 프론트 엔드를 통해서) 선택된 또는 사용자에 의해 (예를 들면, 링크 디렉토리 또는 사용자 입력을 통해서) 제공된 링크를 수신한다. 블록 1320에서, 처리 로직은 링크 데이터베이스 내에 링크들을 저장한다.
일 실시예에서, 처리 로직은 또한 어떤 링크가 활성화된 회수를 세고, 이 정보를 (사용자, 그룹 등에 의한) 로그 내에 저장한다. 처리 로직은 이 로그를 나중에 또는 실시간으로 CRM, 광고 비용 그리고 또한 소스 결과들을 조절하기 위해 또는 다른 것들을 능가하는 엔트리들의 우선 순위를 부여하기 위해 분석할 수 있다.
일 실시예에서, 처리 로직은 동일 미디어 콘텐트에 대한 사용자 패턴들과 특정 링크들을 사용하는 빈도 등을 분석함으로써 분류들을 자동적으로 생성한다.
일 실시예에서, 처리 로직은 어느 검색 결과 항목이 선택되었는가를 기억하며 그 선택된 링크를 새로운 이미지에 링크시키며, 그럼으로써 다음의 질의에 대해 검색의 품질을 향상시킨다. 예를 들면, 사용자가 슈퍼마켓 앞에서 뉴욕 타임즈 신 문 가판의 사진을 찍으면, 처리 로직은 이 사진에 대해서 슈퍼마켓에 관한 정보에 대한 링크만을 검색할 수 있을 것이다. 이런 링크들은 사용자가 찾으려고 하는 것이 아니다. 그래서, 사용자는 디렉토리에서 뉴욕 타임즈를 수동으로 선택할 수 있을 것이며, 그러면 처리 로직은 그 위치에서 뉴욕 타임즈와 함께 있는 신문 가판의 사진을 링크할 것이다. 그 다음에 사용자가 슈퍼마켓 앞에서 신문 가판의 사진을 찍으면, 그 사용자는 그 결과 목록에서 뉴욕 타임즈 링크를 얻게 될 것이다. 이런 링크의 각 선택과 함께, 처리 로직은 더 학습한다. 새로운 사용자가 그 결과들로부터 뉴욕 타임즈를 선택하면, 처리 로직은 그 찍혀진 새로운 사진을 또한 뉴욕 타임즈로 링크할 것이며, 시스템의 인식의 정밀도가 향상된다.
도 14는 백-엔드 모듈 (1400)의 일 실시예의 블록도이다. 백-엔드 모듈 (1400)은 클라이언트 요청 수신기 (1402), 클라이언트 데이터 분배기 (1401), 결과 분석기 (1412), 링크 생성기 (1414), 콘텐트 감축기 (1416), 데이터 개인화기 (1418) 및 링크 데이터베이스 (1420)를 포함할 수 있을 것이다.
클라이언트 요청 수신기 (1402)는 클라이언트들로부터 요청들을 수신하고, 그들의 유형을 결정하여 이 요청들을 그 요청들의 유형에 따라서 분배하는 책임을 진다. 클라이언트 데이터 분배기 (1404)는 미디어 콘텐트, 메타-정보 및 클라이언트로부터 수신된 링크들을 (전역적인 또는 특정 사용자를 위한) 미디어 콘텐트 저장부 (1410) 및 (전역적인 또는 특정 사용자를 위한) 링크 데이터베이스 (1420)와 같은 적절한 데이터 저장부에 저장할 책임이 있다.
디렉토리 관리자 (1406)은 링크들의 디렉토리를 관리하며 디렉토리의 클라이 언트 복제들이 서버 디렉토리와 동기될 것을 책임진다.
검색 엔진 (1408)은 클라이언트들에 의해 개시된 검색을 실행할 책임을 진다. 상기에서 설명된 것과 같이, 검색들은 클라이언트에 의해 현재 제공된 것과 유사한 미디어 콘텐트를 찾는 것을 포함한다. 그 검색 엔진 (1408)은 미디어 유형에 따라 다양한 인식 알고리즘을 채택할 수 있을 것이다. 일 실시예에서, 새로운 이미지 알고리즘의 빠른 플러그-인이, 사용자가 전환이 발생한 것을 인식하지 않으면서, 제공된다. 새로운 또는 예전의 알고리즘들은 그들이 개선되거나 과잉으로 되기 때문에, 새로운 알고리즘들은 추가되고 마찬가지로 예전의 알고리즘들은 교체될 수 있다. 특히, 검색 엔진 (1408)은 (특정 객체들 또는 매우 일반적인 객체들에 대해 최적화된) 객체-인식 알고리즘들, 텍스트 인식/OCR, 핸드라이팅 인식, 바코드 인식, 얼굴 인식, 사람 인식, 심볼 인식, 색상 인식, 외형 인식, 동작 인식, 제스처 인식 등을 사용할 수 있다. 검색 엔진 (1408)은 자동적으로 사용될 최선의 알고리즘 또는 알고리즘들의 집합을 결정할 수 있거나 또는 사용자에게 선택을 제공하거나 또는 질문 (예를 들면, "이것이 사람인가 또는 건물인가?)을 하여 추가적인 입력을 하도록 요청할 수 있다.
사람 인식 또는 움직일 수 있는 특정 객체들 (예를 들면, 시계, 의류, 자동차 - 사람들이 운반하는 것 또는 가지고 다니는 것) 인식을 위해, 검색 엔진 (1408)은 다른 기기들의 근접성을 이용할 수 있을 것이다. 예를 들면, 검색 엔진 (1408)이 특정 사용자들의 기기들이 근접하게 있으며 다른 것들은 그렇지 않은 것을 알고 있다면, 근접하게 있는 사용자들과 매치하는 그들의 얼굴들이나 사람들만 을 검색하도록 그 검색을 제한하도록 시도할 수 있을 것이다. 이런 유형의 검색은 더 많은 사람들을 검색하기 전의 첫 번째 단계일 수 있다. 그러나, 이런 접근 방법은, 비록 그 시스템을 채택하는 것은 여전히 낮을지라도, 다른 기기들의 이런 근접성에 대한 지식을 전혀 편입하지 않는 것보다 더 나은 결과들을 생성하는 것 같다. 그 검색 결과들이 만족스럽지 않다면, 사용자는 대행 유형 질문에 응답하거나 기기 상에서 검색을 수동으로 다듬어서 올바른 링크들로 이끌 수 있다.
검색 엔진 (1408)은 방향과는 무관한 인식 알고리즘을 포함하는 어떤 개수의 인식 알고리즘이라도 결합할 수 있다. 바코드, 텍스트/OCR, 그림, 색상 기반 또는 어떤 다른 알고리즘도 또한 편입될 수 있다.
결과 분석기 (1412)는 링크 디렉토리를 통하여 사용자들에 의해 제공되는 링크는 물론이고 수동 입력에 의해서도 제공되는 링크인 사용자의 링크 선택을 분석하고, 이런 분석을 연속적인 질의들에 대해 더 정확한 결과를 생성하기 위해 이용하는 것에 대한 책임을 진다.
링크 생성기 (1414)는 새로운 링크들을 생성하는 책임을 진다. 링크 생성기 (1414)는 (예를 들면, 미리 정의된 로직 또는 카스텀화 할 수 있는 규칙들을 사용하여) 자동적으로 또는 (링크 디렉토리 또는 수동 입력을 통한) 사용자 입력을 기반으로 하여 새로운 링크들을 생성할 수 있을 것이다.
콘텐트 감축기 (1416)는 링크 데이터베이스 (1420) 및 미디어 콘텐트 저장부 (1410)의 콘텐트를 줄이는 책임을 진다. 특히, 콘텐트 감축기 (1416)는 오랫동안 선택되지 않았던 항목들을 공간 확보를 위해 자동적으로 제거하며, 사용자 인터페 이스 등을 깨끗하게 한다. 일 실시예에서, 콘텐트 감축기 (1416)는 (특정 항목들이 특정 사용자 세그먼트들 (예를 들면, 스프츠 팬 대 사업 여행자들)에 더 관련된 것으로 보이는가를 알기 위해 자동적으로 또는 사용자 입력을 기반으로) 항목들에 대한 클러스터 분석을 또한 수행한다. 차례로 이런 지식은 저장부, (서버들 또는 클라이언트들 상의) 캐싱 및 또한 삭제를 위한 가능한 시간을 위한 위치를 결정하는데 도움을 줄 수 있을 것이다. 예를 들면, 이미지를 유지하기 위한 비용은 분석적인 모델들을 채용하여 이미지를 유지하는 이점과 트레이드 오프 (trade off) 될 수 있다.
일 실시예에서, 알고리즘 결과들을 기반으로 위험한 것으로 보이는 특정 이미지들을 차단하기 위해 탐지 알고리즘이 사용된다. 그러면 이런 이미지들은 스태프에 의해 검토될 수 있다. 스태프는 이미지들을 개별적으로 관찰할 수 있으며 또는 동일한 이미지들에 여러 스태프의 관찰이 있을 수 있어서 최선의 설명들을 통계적으로 결정하고 (특정 이미지에 대해 스태프들이 선택한 항목들 중에서 가장 빈번하게, 두 번째로 빈번하게 등) 행동들이 어느 키워드에 링크되는가를 결정할 수 있을 것이다. 예를 들면, 포르노그래픽 콘텐트와 같은 그런 콘텐트를 막거나 그런 콘텐트를 다르게 처리하게 위해, 포르노그래픽 콘텐트를 탐지하기 위하여 피부 탐지 알고리즘 (예를 들면, 최대 유사성 추정 또는 문턱값 기반의 색상 히스토그램 알고리즘)이 사용될 수 있다.
미디어 콘텐트는 재검토를 위해 스태프에 의해 또는 지정된 알고리즘들에 의해 또한 임의로 선택될 수도 있다. 한 사용자가 특히 위험한 것으로 보인다면, 그 사용자에 의해 생성된 모든 미디어 콘텐트가 재검토될 수 있다. 결과적으로, 그 사용자의 모든 콘텐트는 삭제될 수 있거나 또는 그 사용자의 전 계정이 차단될 수 있다.
검색들이 실행되면, 저장된 미디어 콘텐트 항목들, 메타-정보 및 링크들의 개수도 증가한다. 일 실시예에서, 콘텐트 감축기 (1416)는 사용자들에 의해 인증된 데이터에 한계를 부과한다. 예를 들면, 사용자 당 최대 데이터 양 제한, 특정 데이터베이스 (예를 들면, 전역 데이터베이스)에 대한 사용자당 최대 데이터 양, 링크들의 최대 개수 또는 서로 다른 제목들, 링크들 또는 다른 태그들의 최대 개수 등을 부과할 수 있을 것이다. 제한들은, 예를 들면, 단일 사용자, 사용자들의 서브-집합에게만 적용, 또는 모든 사용자들에게 적용과 같이 선택적일 수 있다. 이런 제한들에 도달하면, 다른 퇴거 그리고 자동적인 압축 알고리즘들이 이런 제한들을 강제하기 위해 사용될 수 있을 것이다. 특히, 생성으로부터의 시간을 기반으로 하여, 최근에 사용한때부터의 시간, 또는 전제 사용자 기반에 의해, 사용자 기반의 일부 세그먼트에 의해 또는 특정 사용자 (예를 들면, 링크들, 개개인들의 링크들, 이미지들의 집합들 또는 데이터의 부분적인 집합들)에 의한 사용 빈도가 쫓아내질 수 있다. 어떤 캐시 방식 (예를 들면, FIFO, LIFO, LFU)은 이런 컨텍스트 내에 적용될 수 있을 것이다.
또한, 동일 링크에 대해 많은 미디어 콘텐트 항목이 존재하면, 시스템의 전반적인 정확성을 다치지 않으면서 일부 미디어 콘텐트 항목들을 제겅하는 것이 가능할 것이다. 예를 들면, 동일 위치에서 또는 동일 영역 내에서 동일한 링크를 가 진 사진들/영화들의 어떤 비율이 삭제를 위해 임의적으로 선택될 수 있을 것이다. 이미지들을 관찰하여 링크들과 매우 중복된 정보 (예를 들면, 동일한 각도로부터의 사진들, 유사한 날씨 환경 하에서, 동일한 계절이나 동일한 시간대)를 가진 사진들/영화들을 삭제할 수 있을 것이다.
일 실시예에서, 콘텐트 감축기 (1416)는 유사한 속성들 (예를 들면, 제목, 배색, 시간, 모습, 위치, 날씨, 사용자, 분류, 링크 유형, 권한 또는 어떤 다른 속성)을 가진 이미지들을 또한 밀집시킨다. 예를 들면, 데이터베이스 내에서 서로 다른 엔트리들로부터의 결과인 동일한 링크를 가지는 몇몇 결과들을 표현하는 것 대신에, 이런 엔트리들은 자동적으로 그런 링크와 연관된 더 작은 수의 이미지들/영화들로 자동적으로 붕괴될 수 있다. 웹사이트 또는 다른 포탈 상에서는 물론이고,클라이언트 기기 상에서의 이런 밀집화는 사용자에게 더 관리 가능한 사진들과 영화들을 만들도록 도움을 주어 그들이 생성된 이후에 링크들을 더 쉽게 편집할 수 있으며, 검색 결과들도 더 쉽게 할 수 있고 실제로 작은 크기의 스크린에도 더 편리하게 디스플레이하도록 할 수 있다. 사진들의 동일한 개수가 여전히 고려되고 있기 때문에, 이런 기술은 시스템의 인식 정확도에 충격을 주지 않으면서도 많은 라벨들을 줄인다. 같은 레빌을 가진 다른 사진들 (예를 들면, 쓰레기 캔의 서로 다른 각도들로부터 10개 사진들)은 한 객체의 가능한 변이의 범위를 설명할 수 있다. 이런 범위는 채택된 이미지/객체 인식 알고리즘에 의해 고려될 수 있다.
데이터 개인화기 (1418)는 링크 우선순위/검색 결과 디스플레이 내로 동적인 개인화를 편입한다. 예를 들면, 사용자가 다른 옵션을 통해서 링크들을 매핑하는 것을 빈번하게 선택하면, 오버 타임 매핑은 사용자에 대한 목록의 가장 위로 향해서 이동하는 경향이 있다. 사용자가 비교 가격 데이터를 빈번하게 찾으면, 그런 유형의 링크는 시간에 따라 위로 올라간다.
본 발명의 실시예들을 이용하는 예시적인 시나리오들이 이제 설명될 것이다. 예를 들면, 사용자들은 재빠르게 액세스하여 여기에서 설명된 서비스를 사용하여 자신들의 전화기 상에 지도를 디스플레이할 수 있다. 사용자의 전화기가 위치 지정이 가능하다면, 지도 서비스는 사용자의 물리적인 위치의 주위에 지도를 위치시킬 수 있다. 지도 인터페이스로부터, 사용자들은 방향, 교통 정보를 인출하는 옵션을 가질 수 있고, 수집된 추가적인 데이터 (지역 레스토랑, 상점, 인기거리 등)를 연기시킬 수 있다.
다른 예에서, 박물관 후원자는 오디오/비디오/텍스트 강의 및 역사적인 정보를 인출하기 위해 박물관 내의 예술품의 사진을 찍을 수 있다. 그것들은 또한 포스터 주문 사이트들, 우편엽서 서비스에 연결될 수 있으며, 또는 사용자의 이동 블로그로 직접 발송될 수 있다.
또 다른 예에서, 손님은 레스토랑의 외관, 메뉴 또는 장식을 사진을 찍음으로써, 메뉴, 메뉴 번역, (사용자 생성된 또는 출판된, 예를 들면, Zagat, Citysearch) 레스토랑 리뷰들, 배경 정보, 영양 데이터, 그리고 조리법을 얻을 수 있다.
또 다른 예에서, 회사들은 특정 객체들, 심볼들, 브랜드들, 로고들, 건물들, 사진들 또는 위치들에 대한 링크들을 후원할 수 있다. 후원을 받는 객체를 사용자 가 사진 찍으면, 경기 입장, 상점으로의 지도, 비디오 또는 오디오 광고, 회사 전화 번호들 또는 일반적인 제품 정보와 같은 광고자가 선택한 링크들이 제시될 것이다.
또 다른 예에서, 사용자들은 지도 경로, 스케줄, 티겟 구매 또는 다른 운송 정보로의 링크들에 액세스하기 위해 운송에 관련된 객체들, 표지들, 차량들, 티켓들 또는 건물들을 사진 찍을 수 있다.
다른 애플리케이션들은 실제-토지, 군대, 음악, 게임 (예를 들면, 증가된 현실 또는 가상 인생 게임들), 사람 찾기, 데이트, 직업적인 접촉들, 네트워크 이벤트들에서 3가지 이탈, 사람 인식, 교육 (예를 들면, 숙제를 텍스트 북들로 링크시키는 학교를 위한 플랫폼), 텍스트 인식 (예를 들면, 단어의 사진을 찍오서 그에 관한 정보에 접속시킴), 동적인 검색 알고리즘 개인화, 수학 (예를 들면, 도구/계산/개발자 도구들), 보안 애플리케이션, 생물 측정학/인간 인식/ID, 지불 및 거래 시스템 (예를 들면, 사용자가 링크를 보내는 대신에 정보 인출 버튼을 누르면 당신의 신용 카드를 사용하여 그에 대해 자동적으로 지불하는 경우의 "지불 모드" 설정), 예술품 (예를 들면, 예술 디스플레이로 귀환되는 데이터), 동적인 개인화 예술품 (예를 들면, 당신이 큰 TV 화면 옆으로 걸어가면, 당신의 이미지들이 화면에 예술적인 방법으로 표현된다 (예를 들면, 비디오, 임의로 나타남, 회전, 부양 등)), 정부 (예를 들면, FDA에 의해 강제된 음식에 대한 영향 정보, FDA에 의해 강제된 담배 경로 링크, 비행기 안전 명령에 대한 FAA 사용, 자동적으로 911, 경찰 등에 전화를 거는 주변에 붙여진 범용 심볼들), 여흥 (예를 들면, 영화 감상, 기기들 에 대한 원격 제어 등) 및 다른 많은 애플리케이션들을 포함할 수 있을 것이다.
일 실시예에서, 그 시스템은 구매에 선행되는 특성들로의 링크들을 제공한다. 그런 판매촉진은 장비의 구매나 외부 소프트웨어만이 아니라 내부 소프트웨어 컴포넌트 또는 특성들 (예를 들면, 스포츠 패키지는 스포츠에 대한 더 상세한 링크들을 제공할 수 있거나 또는 특정 프리미엄 웹 사이트들로의 자동적인 로그온과 함께 묶음이 될 수도 있다)을 구매하는 것을 포함할 수 있을 것이다. 본 발명에 따른 시스템은 사업 거래를 수행하는 새로운 방법을 또한 제공할 수도 있을 것이다. 예를 들면, 사려는 대상의 사진을 찍을 수 있을 것이며, 그러면 그 사람은 어느 곳으로 대금을 전송하는가를 등록한다. 그러면 클라이언트는 그 사용자에게 그 금액이 지불되어야 하는가를 물을 것이다. 그 금액은 그 사용자가 구매하기를 원하는 객체 또는 서비스가 어떤 것인가를 이해하는 그 시스템에 의해 결정될 수 있으며, 그 수령자는 지시된 사람 또는 대상을 이해하는 그 시스템에 의해 결정될 수 있다. 사용자는 또한 첫 번째로 수신자를 가리키고 객체 또는 어떤 조합 (예를 들면, 한번에 둘다 또는 어느 하나)을 가리킬 수 있을 것이다. 그 시스템은 순응하는 백엔드 과금 (billing) 시스템을 물론이고 보안의 교환 및 거래 메카니즘을 제공할 수 있는 것이다.
그 시스템은 또한 공개적으로 잘 알려진 초-분배 (super-distribution)의 개념의 맥락에서 사용될 수 있다. 사용자는 한 객체의 사진 (예를 들면, 음악 CD)을 찍을 수 있으며 그러면 그 콘텐트의 링크된 일부 (예를 들면, CD의 노래들)를 소유하는 (사회적인 네트워크들을 통해서 분리된 정도에서 또는 집으로부터, 이동 기기 로부터 또는 다른 참조 포인트로부터의 물리적인 거리에서의 어느 하나의 관점에서) 가장 가까운 사람을 자동적으로 찾을 수 있을 것이다. 그러면, 그 노래들은 (그 사용자의 이동 기기, 다른 기기, 집, 직장 등 상으로) 그 사용자에게 공급될 수 있으며 그러면 사용자는 선택적으로 지불할 수 있다. 얻어진 소득은 콘텐트 원작자와 미리 결정된 중개자들 또는 동적으로 정해지는 소득 분배 스케줄에 따라서 분할될 수 있다.
일 실시예에서, 그 시스템은 사용자에게 비-사용자 이미지들을 디스플레이하지 않는다. 특히, 어떤 사용자에 의해 또는 어떤 사용자 그룹 내에서 생성된 모든 사진들/영화들은, 그것들 스스로를 다른 사람들의 검색의 입력으로서 사용될 수 없도록 만들어서, 다른 사람에 볼 수 없도록 잠겨질 수 있을 것이다. 이런 접근 방법은 외부인에게는 접근 가능하지 않으므로 그 데이터베이스의 콘텐트를 복제하는 것을 어렵게 하며, 동시에 데이터베이스가 증가함에 따라 그 데이터베이스가 모든 사람에게 더 이익이 되도록 만든다. 이런 접근 방법은 적절한 권한 관리를 필요로 한다.
대안의 실시예에서, 그 시스템은 비-사용자 이미지들을 다른 사용자들에게 디스플레이하여 그 이미지들이 그들의 검색에서만 이익이 되는 것이 아니라 그런 사진/영화들을 보여주는 것이 가능한 것에서도 이익이 된다. 예를 들면, 친구와 사진들을 공유하거나 또는 복제를 위해 그들을 사진 스튜디오에 제공하는 것은 본 발명에 따른 그 시스템을 사용하는 것에 수반된 추가적인 이익이 될 수 있을 것이며, 그래서 채택되는 것을 늘일 수 있다. 이런 접근 방법은 적절한 권한 관리를 필요로 하며 가장 유연성을 제공하는 단일 시스템 내에서의 상기 접근 방법과 결합될 수 있다.
예시적인 컴퓨터 시스템 (Exemplary Computer System)
도 15는 여기에서 설명된 하나 또는 그 이상의 동작들이 실행되는데 사용될 수 있는 예시적인 컴퓨터 시스템 (1500) (예를 들면, 도 1의 클라이언트 (102, 116) 서버 (104, 114)의 블록도이다. 대안의 실시예에서, 그 기계는 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 개인용 디지털 보조기 (Personal Digital Assistant, PDA), 셀룰러 전화기, 웹 설비 또는 그 기계에 의해 취해지는 동작들을 특정하는 명령어들의 시퀀스를 실행할 수 있는 어떤 기계도 포함할 수 있을 것이다.
컴퓨터 시스템 (1500)은 프로세서 (1502), 메인 메모리 (1504) 및 정적인 메모리 (1506)를 포함하며, 이들은 버스 (1508)를 통해서 서로 통신한다. 컴퓨터 시스템 (1500)은 비디오 디스플레이 유닛 (1510) (예를 들면, 액정 디스플레이 (liquid crystal display, LCD) 또는 음극선 튜브 (cathode ray tube, CRT)를 더 포함할 수 있을 것이다. 그 컴퓨터 시스템 (1500)은 알파-뉴메릭 입력 기기 (1512) (예를 들면, 키보드), 커서 제어 기기 (1514) (예를 들면, 마우스), 디스크 드라이브 유닛 (1516), 신호 생성 기기 (1520) (예를 들면, 스피커) 및 네트워크 인터페이스 기기 (1522)를 또한 포함한다.
디스크 드라이브 유닛 (1516)은 상기에서 설명된 방법론 중의 어떤 하나 또 는 모두를 구체화시키는 명령어들 (1526) (예를 들면, 소프트웨어) 의 집합이 저장된 컴퓨터로 읽을 수 있는 기록매체를 포함한다. 소프트웨어 (1526)는 또한 메인 메모리 (1504) 내부 및/또는 프로세서 (1502) 내부에 전부가 또는 적어도 일부분이 존재하는 것으로 보여진다. 소프트웨어 (1526)는 또한 네트워크 인터페이스 기기 (1522)를 통해서 전송되거나 수신될 수 있을 것이다. 이런 규격의 목적으로, "컴퓨터로 읽을 수 있는 기록매체"의 용어는 컴퓨터에 의해 실행되는 명령어들의 시퀀스를 저장하거나 부호화할 수 있는 어떤 매체도 포함할 수 있으며, 컴퓨터가 본 발명에 따른 방법론들의 어느 하나라도 실행할 수 있도록 한다. "컴퓨터로 읽을 수 있는 기록매체"의 용어는 따라서 고체 상태 메모리들, 광학 및 자기 디스크 및 반송파 신호를 포함할 것이지만, 그것들로 한정되지는 않는다.
본 발명이 속한 기술 분야의 통상을 지식을 가진 당업자가 전술한 설명을 읽은 후에 그 당업자에게는 본 발명의 많은 대안들과 변형들이 의심할 나위 없이 명백한 것이며, 보여지고 설명된 어떤 특정 실시예도 예를 들기 위한 것이며, 제한하려고 간주될 의도는 아닌 것이 이해될 것이다. 그러므로, 다양한 실시예들의 상세한 점들을 참조한 것은, 그 자체적으로 본 발명에 본질적인 것으로 중시되는 그런 특징들만을 상술한, 청구항들의 범위를 좁히려고 의도된 것이 아니다.
본 발명은 검색 시스템에서 사용될 수 있으며, 네트워크 및 기기 기능성으로의 액세스를 단순화하는 시각 검색 시스템에서 사용된다.
그리고 본 발명은 본 발명에 따른 방법의 전부가 또는 어떤 일부라도 실행되 는 일반적인 개인용 컴퓨터를 포함하는 범용, 특수 용도의 컴퓨터, 각종의 이동 전화기, PDA를 포함하는 각종의 이동 기기, 각종의 다양한 네트워크 장치 및 장비들에서 사용될 수 있다.

Claims (24)

  1. 컴퓨터로 처리하는 방법으로서,
    사용자가 원하는 정보의 표시를 수신하는 단계; 및
    상기 원하는 정보의 후보들의 목록을 상기 사용자의 이동 기기 상에서 제시하기 위해 제공하는 단계;를 포함하는, 컴퓨터로 처리하는 방법.
  2. 제1항에 있어서,
    상기 원하는 정보 표시는 실제 세계의 하나 이상의 객체들과 연관된 미디어 콘텐트 및/또는 상기 미디어 콘텐트, 상기 이동 기기 및 상기 사용자 중에서 적어도 하나와 연관된 하나 또는 그 이상의 특징들을 제공하는 메타-정보를 포함하는, 컴퓨터로 처리하는 방법.
  3. 제2항에 있어서,
    상기 원하는 정보의 표시와 매치하는 데이터베이스를 검색하는 단계; 및
    상기 데이터베이스로부터 상기 후보 목록을 인출하는 단계;를 더 포함하는, 컴퓨터로 처리하는 방법.
  4. 제3항에 있어서,
    상기 데이터베이스를 검색하는 단계는 상기 메타-정보를 기반으로 검색의 범 위를 제한하는 단계를 포함하는, 컴퓨터로 처리하는 방법.
  5. 제2항에 있어서,
    상기 미디어 콘텐트는 상기 이동 기기에 의해 생성되며 디지털 사진, 비디오 또는 오디오 레코딩 중에서 적어도 하나를 포함하며,
    상기 메타-정보는 상기 미디어 콘텐트의 특징, 상기 이동 기기와 연관된 환경적 특성, 상기 이동 기기와 연관된 지리적 특징, 상기 이동 기기의 사용자와 연관된 개인적 특징 또는 온라인 행동 특징 중에서 적어도 하나를 포함하는, 컴퓨터로 처리하는 방법.
  6. 제2항에 있어서,
    상기 목록 내의 각 후보는 하나 이상의 객체들 및/또는 하나 이상의 특징들을 원하는 하나의 정보 항목에 매핑하는 링크인, 컴퓨터로 처리하는 방법.
  7. 제6항에 있어서,
    상기 원하는 정보 항목은 웹 사이트, 전화 번호, 메시지 템플릿, 애플리케이션, 애플리케이션 상태, 웹 페이지 엔트리, 전화 기능, 키워드, 컴퓨터 기능, 문서, 텔레비전 프로그램, 라디오 프로그램 또는 음악 레코딩 중의 어느 하나인, 컴퓨터로 처리하는 방법.
  8. 제6항에 있어서,
    복수의 링크를 자동적으로 또는 사용자 입력을 기반으로 생성하는 단계;
    상기 복수의 링크들 각각을 미디어 콘텐트 및/또는 메타-정보와 연관시키는 단계; 및
    상기 복수의 링크들을 데이터베이스에 저장하는 단계;를 포함하는, 컴퓨터로 처리하는 방법.
  9. 제3항에 있어서,
    상기 미디어 콘텐트의 중간 표현을 생성하는 단계를 더 포함하며, 상기 중간 표현은 상기 원하는 정보의 표시와 매치되는 데이터를 위해서 상기 데이터베이스를 검색하기 위해 사용되는, 컴퓨터로 처리하는 방법.
  10. 제6항에 있어서,
    사용자가 상기 이동 기기로 하나 이상의 객체들을 가리키면 상기 원하는 정보의 표시가 수신되며;
    일단 사용자가 상기 이동 기기로 객체들을 가리키면 상기 원하는 정보에 대한 후보들의 목록이 실시간으로 제공되며; 그리고
    사용자가 상기 이동 기기로 객체들을 지적할 때부터 어떤 클릭도 사용자에게 요구하지 않으면서, 후보들의 상기 목록이 선택을 위해 실시간으로 사용자에게 제시되는, 컴퓨터로 처리하는 방법.
  11. 제10항에 있어서,
    사용자가 단일 클릭을 통해서 상기 링크로부터 후보를 선택하도록 허용하는 단계를 더 포함하며, 상기 단일 클릭은 사용자에게 상기 원하는 정보에 대한 액세스를 제공하는, 컴퓨터로 처리하는 방법.
  12. 제10항에 있어서,
    상기 목록으로부터의 하나 이상의 후보는 상기 원하는 정보의 미리 보기를 포함하는 제목을 구비하며; 그리고
    상기 방법은,
    후보의 목록을 상기 사용자에게 제시할 때에 상기 원하는 정보의 미리 보기를 포함하는 제목을 디스플레이하는 단계를 더 포함하며,
    상기 디스플레이하는 단계는 사용자에게 어떤 클릭도 요청하지 않으면서 상기 원하는 정보의 미리 보기에 사용자가 액세스하는 것을 제공하는, 컴퓨터로 처리하는 방법.
  13. 제8항에 있어서,
    상기 복수의 링크들 각각은 통계 데이터 및 하나 이상의 특성들을 구비하며,
    상기 하나 이상의 특성들은 제목, 타임 스탬프, 창작자 식별자 또는 액세스 정보 중의 적어도 하나를 포함하는, 컴퓨터로 처리하는 방법.
  14. 제2항에 있어서,
    미디어 콘텐트 및/또는 메타-정보를 기반으로 부하 균형을 용이하게 하는 단계를 더 포함하는, 컴퓨터로 처리하는 방법.
  15. 제1항에 있어서,
    상기 목록으로부터 후보에 대한 사용자 선택을 수신하는 단계;
    상기 선택된 후보와 수신된 상기 원하는 정보의 표시 사이의 연관을 생성하는 단계; 및
    상기 생성된 연관을 데이터베이스에 저장하는 단계;를 더 포함하는, 컴퓨터로 처리하는 방법.
  16. 제1항에 있어서,
    사용자가 상기 목록으로부터 후보를 선택하지 않았다는 것을 결정하는 단계;
    정보 항목들의 디렉토리를 상기 사용자에게 제시하는 단계;
    상기 사용자가 상기 디렉토리로부터 하나의 정보 항목을 선택하는 것을 허용하는 단계;
    상기 선택된 정보 항목을 상기 수신된 원하는 정보의 표시로 매핑하는 링크를 생성하는 단계; 및
    상기 링크를 데이터베이스에 저장하는 단계;를 더 포함하는, 컴퓨터로 처리 하는 방법.
  17. 제6항에 있어서,
    이전에 링크된 객체들 및/또는 특징들을, 상기 사용자나 관리자에 의해서 제어되는 시스템 관리 애플리케이션을 통해, 새로운 또는 존재하고 있는 정보 항목에 재링크시켜서 링크들을 주기적으로 변경하는 단계;를 더 포함하는, 컴퓨터로 처리하는 방법.
  18. 컴퓨터 시스템으로 하여금 방법을 수행하도록 하는 실행 가능한 명령어들을 포함하는, 컴퓨터로 읽을 수 있는 기록매체로서,
    상기 방법은,
    사용자가 원하는 정보의 표시를 수신하는 단계; 및
    상기 원하는 정보의 후보들의 목록을 상기 사용자의 이동 기기 상에서 제시하기 위해 제공하는 단계;를 포함하는, 컴퓨터로 읽을 수 있는 기록매체.
  19. 사용자가 원하는 정보의 표시를 수신하고, 상기 원하는 정보의 후보들의 목록을 상기 사용자의 이동 기기 상에서 제시하기 위해 제공하는 백-엔드 모듈;을 포함하는 시스템.
  20. 제19항에 있어서,
    상기 원하는 정보의 표시를 캡쳐하며, 상기 원하는 정보의 후보의 목록을 상기 이동 기기 상에 제시하는 프론트-엔드 모듈을 더 포함하는 시스템.
  21. 제20항에 있어서,
    상기 원하는 정보의 표시는 실제 세계의 하나 이상의 객체들과 연관된 미디어 콘텐트 및/또는 상기 미디어 콘텐트, 상기 이동 기기 및 상기 사용자 중의 적어도 하나와 연관된 특징들을 제공하는 메타-정보를 포함하며; 그리고
    상기 목록 내의 각 후보는 하나 이상의 객체들 및/또는 상기 하나 이상의 특징들을 원하는 정보 항목에 매핑하는 링크인, 시스템.
  22. 제21항에 있어서,
    상기 프론트-엔드 모듈은 상기 이동 기기 상에 존재하며 상기 백-엔드 모듈의 적어도 일부는 상기 이동 기기 상에 존재하는, 시스템.
  23. 제22항에 있어서,
    상기 클라이언트 기기에 네트워크를 통해서 연결되며, 복수의 사용자들에 대한 미디어 콘텐트 및/또는 메타-정보의 저장을 관리하는 서버; 및
    상기 사용자에게 관련된 미디어 콘텐트 및/또는 메타-정보를 저장하는 상기 클라이언트 기기 상의 캐시;를 더 포함하는 시스템.
  24. 제21항에 있어서,
    상기 프론트-엔드 모듈은 상기 이동 기기 상에 존재하며 상기 백-엔드 모듈은 네트워크를 통해서 상기 이동 기기에 연결된 서버 상에 존재하며; 그리고
    상기 장치는,
    미디어 콘텐트를 저장하기 위한 미디어 콘텐트 저장부; 및
    메타-정보 및 링크들을 저장하기 위한 링크 데이터베이스를 더 포함하며,
    상기 미디어 콘텐트 저장부 및 상기 링크 데이터베이스는 상기 서버에 의해 관리되는, 장치.
KR1020087013528A 2005-11-04 2006-11-06 네트워크 및 기기 기능성으로의 액세스를 단순화하는스케일러블 시각 검색 시스템 KR101123217B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US73394105P 2005-11-04 2005-11-04
US60/733,941 2005-11-04
US11/592,460 US8849821B2 (en) 2005-11-04 2006-11-04 Scalable visual search system simplifying access to network and device functionality
US11/592,460 2006-11-04
PCT/US2006/043410 WO2007056410A2 (en) 2005-11-04 2006-11-06 Scalable visual search system simplifying access to network and device functionality

Publications (2)

Publication Number Publication Date
KR20080074955A true KR20080074955A (ko) 2008-08-13
KR101123217B1 KR101123217B1 (ko) 2012-03-19

Family

ID=38005070

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087013528A KR101123217B1 (ko) 2005-11-04 2006-11-06 네트워크 및 기기 기능성으로의 액세스를 단순화하는스케일러블 시각 검색 시스템

Country Status (4)

Country Link
US (4) US8849821B2 (ko)
EP (2) EP2535821A1 (ko)
KR (1) KR101123217B1 (ko)
WO (1) WO2007056410A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120058538A (ko) * 2009-08-07 2012-06-07 구글 인코포레이티드 시각 질의에 응답하기 위한 아키텍처
KR20130118897A (ko) * 2010-11-04 2013-10-30 디지맥 코포레이션 스마트폰 기반 방법들 및 시스템들
KR101335400B1 (ko) * 2008-12-18 2013-12-05 구글 인코포레이티드 문서와 관련하여 보여주기 위한 코멘트의 식별

Families Citing this family (146)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7123263B2 (en) * 2001-08-14 2006-10-17 Pulse Entertainment, Inc. Automatic 3D modeling system and method
US8870639B2 (en) 2004-06-28 2014-10-28 Winview, Inc. Methods and apparatus for distributed gaming over a mobile device
US8376855B2 (en) 2004-06-28 2013-02-19 Winview, Inc. Methods and apparatus for distributed gaming over a mobile device
US10226698B1 (en) 2004-07-14 2019-03-12 Winview, Inc. Game of skill played by remote participants utilizing wireless devices in connection with a common game event
US8510283B2 (en) 2006-07-31 2013-08-13 Ricoh Co., Ltd. Automatic adaption of an image recognition system to image capture devices
US8156116B2 (en) 2006-07-31 2012-04-10 Ricoh Co., Ltd Dynamic presentation of targeted information in a mixed media reality recognition system
US8856108B2 (en) 2006-07-31 2014-10-07 Ricoh Co., Ltd. Combining results of image retrieval processes
US8825682B2 (en) 2006-07-31 2014-09-02 Ricoh Co., Ltd. Architecture for mixed media reality retrieval of locations and registration of images
US8989431B1 (en) 2007-07-11 2015-03-24 Ricoh Co., Ltd. Ad hoc paper-based networking with mixed media reality
US7970171B2 (en) 2007-01-18 2011-06-28 Ricoh Co., Ltd. Synthetic image and video generation from ground truth data
US8868555B2 (en) 2006-07-31 2014-10-21 Ricoh Co., Ltd. Computation of a recongnizability score (quality predictor) for image retrieval
US8176054B2 (en) 2007-07-12 2012-05-08 Ricoh Co. Ltd Retrieving electronic documents by converting them to synthetic text
US8332401B2 (en) 2004-10-01 2012-12-11 Ricoh Co., Ltd Method and system for position-based image matching in a mixed media environment
US7702673B2 (en) 2004-10-01 2010-04-20 Ricoh Co., Ltd. System and methods for creation and use of a mixed media environment
US8838591B2 (en) 2005-08-23 2014-09-16 Ricoh Co., Ltd. Embedding hot spots in electronic documents
US8521737B2 (en) 2004-10-01 2013-08-27 Ricoh Co., Ltd. Method and system for multi-tier image matching in a mixed media environment
US8949287B2 (en) 2005-08-23 2015-02-03 Ricoh Co., Ltd. Embedding hot spots in imaged documents
US8335789B2 (en) * 2004-10-01 2012-12-18 Ricoh Co., Ltd. Method and system for document fingerprint matching in a mixed media environment
US8369655B2 (en) 2006-07-31 2013-02-05 Ricoh Co., Ltd. Mixed media reality recognition using multiple specialized indexes
US9373029B2 (en) 2007-07-11 2016-06-21 Ricoh Co., Ltd. Invisible junction feature recognition for document security or annotation
US8276088B2 (en) 2007-07-11 2012-09-25 Ricoh Co., Ltd. User interface for three-dimensional navigation
US9530050B1 (en) 2007-07-11 2016-12-27 Ricoh Co., Ltd. Document annotation sharing
US8600989B2 (en) 2004-10-01 2013-12-03 Ricoh Co., Ltd. Method and system for image matching in a mixed media environment
US9171202B2 (en) 2005-08-23 2015-10-27 Ricoh Co., Ltd. Data organization and access for mixed media document system
US8385589B2 (en) 2008-05-15 2013-02-26 Berna Erol Web-based content detection in images, extraction and recognition
US9384619B2 (en) 2006-07-31 2016-07-05 Ricoh Co., Ltd. Searching media content for objects specified using identifiers
US9405751B2 (en) 2005-08-23 2016-08-02 Ricoh Co., Ltd. Database for mixed media document system
US7720436B2 (en) 2006-01-09 2010-05-18 Nokia Corporation Displaying network objects in mobile devices based on geolocation
US8301159B2 (en) * 2004-12-31 2012-10-30 Nokia Corporation Displaying network objects in mobile devices based on geolocation
EP1904196A2 (en) 2005-06-20 2008-04-02 Airplay Network, Inc. Method of and system for managing client resources and assets for activities on computing devices
US10721543B2 (en) 2005-06-20 2020-07-21 Winview, Inc. Method of and system for managing client resources and assets for activities on computing devices
US9919210B2 (en) 2005-10-03 2018-03-20 Winview, Inc. Synchronized gaming and programming
US8705195B2 (en) 2006-04-12 2014-04-22 Winview, Inc. Synchronized gaming and programming
US8149530B1 (en) 2006-04-12 2012-04-03 Winview, Inc. Methodology for equalizing systemic latencies in television reception in connection with games of skill played in connection with live television programming
US9511287B2 (en) 2005-10-03 2016-12-06 Winview, Inc. Cellular phone games based upon television archives
US8307275B2 (en) * 2005-12-08 2012-11-06 International Business Machines Corporation Document-based information and uniform resource locator (URL) management
US10556183B2 (en) 2006-01-10 2020-02-11 Winview, Inc. Method of and system for conducting multiple contest of skill with a single performance
US8002618B1 (en) 2006-01-10 2011-08-23 Winview, Inc. Method of and system for conducting multiple contests of skill with a single performance
US9056251B2 (en) 2006-01-10 2015-06-16 Winview, Inc. Method of and system for conducting multiple contests of skill with a single performance
JP4657944B2 (ja) * 2006-02-20 2011-03-23 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 情報処理装置、情報処理方法、情報処理プログラム、及び携帯端末装置
US11082746B2 (en) 2006-04-12 2021-08-03 Winview, Inc. Synchronized gaming and programming
US20070276810A1 (en) * 2006-05-23 2007-11-29 Joshua Rosen Search Engine for Presenting User-Editable Search Listings and Ranking Search Results Based on the Same
US8495147B1 (en) * 2006-07-13 2013-07-23 Avaya Inc. Threading of mixed media
US8301728B2 (en) * 2006-07-21 2012-10-30 Yahoo! Inc. Technique for providing a reliable trust indicator to a webpage
US8112703B2 (en) * 2006-07-21 2012-02-07 Yahoo! Inc. Aggregate tag views of website information
US8489987B2 (en) * 2006-07-31 2013-07-16 Ricoh Co., Ltd. Monitoring and analyzing creation and usage of visual content using image and hotspot interaction
US8676810B2 (en) 2006-07-31 2014-03-18 Ricoh Co., Ltd. Multiple index mixed media reality recognition using unequal priority indexes
US9176984B2 (en) 2006-07-31 2015-11-03 Ricoh Co., Ltd Mixed media reality retrieval of differentially-weighted links
US9063952B2 (en) 2006-07-31 2015-06-23 Ricoh Co., Ltd. Mixed media reality recognition with image tracking
US9020966B2 (en) 2006-07-31 2015-04-28 Ricoh Co., Ltd. Client device for interacting with a mixed media reality recognition system
US8554869B2 (en) * 2006-08-02 2013-10-08 Yahoo! Inc. Providing an interface to browse links or redirects to a particular webpage
US8775452B2 (en) 2006-09-17 2014-07-08 Nokia Corporation Method, apparatus and computer program product for providing standard real world to virtual world links
JP4889445B2 (ja) * 2006-10-30 2012-03-07 株式会社ソニー・コンピュータエンタテインメント ユーザグルーピング装置およびユーザグルーピング方法
US20080147611A1 (en) * 2006-12-15 2008-06-19 Yahoo! Inc. Meal finder
KR100898456B1 (ko) * 2007-01-12 2009-05-21 엔에이치엔(주) 검색 결과를 제공하는 방법 및 상기 방법을 수행하는시스템
US20080267521A1 (en) * 2007-04-24 2008-10-30 Nokia Corporation Motion and image quality monitor
US20080268876A1 (en) * 2007-04-24 2008-10-30 Natasha Gelfand Method, Device, Mobile Terminal, and Computer Program Product for a Point of Interest Based Scheme for Improving Mobile Visual Searching Functionalities
US20080270378A1 (en) * 2007-04-24 2008-10-30 Nokia Corporation Method, Apparatus and Computer Program Product for Determining Relevance and/or Ambiguity in a Search System
US20080267504A1 (en) * 2007-04-24 2008-10-30 Nokia Corporation Method, device and computer program product for integrating code-based and optical character recognition technologies into a mobile visual search
US20090003662A1 (en) * 2007-06-27 2009-01-01 University Of Hawaii Virtual reality overlay
US8144944B2 (en) * 2007-08-14 2012-03-27 Olympus Corporation Image sharing system and method
US8180396B2 (en) * 2007-10-18 2012-05-15 Yahoo! Inc. User augmented reality for camera-enabled mobile devices
US8813112B1 (en) 2007-10-23 2014-08-19 Winview, Inc. Method of and apparatus for utilizing SMS while running an application on a mobile device controlling a viewer's participation with a broadcast
FR2929732B1 (fr) * 2008-04-02 2010-12-17 Alcatel Lucent Dispositif et procede de gestion de l'accessibilite a des objets reels ou virtuels dans des lieux differents.
US8711176B2 (en) 2008-05-22 2014-04-29 Yahoo! Inc. Virtual billboards
US20090289955A1 (en) * 2008-05-22 2009-11-26 Yahoo! Inc. Reality overlay device
US9753948B2 (en) * 2008-05-27 2017-09-05 Match.Com, L.L.C. Face search in personals
US20090307207A1 (en) * 2008-06-09 2009-12-10 Murray Thomas J Creation of a multi-media presentation
KR101063287B1 (ko) * 2008-06-10 2011-09-07 삼성전자주식회사 위치 정보를 이용한 서비스 정보 제공 방법 및 시스템
US8520979B2 (en) * 2008-08-19 2013-08-27 Digimarc Corporation Methods and systems for content processing
US8385971B2 (en) * 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
US9716918B1 (en) 2008-11-10 2017-07-25 Winview, Inc. Interactive advertising system
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US10977693B2 (en) * 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US20100153457A1 (en) * 2008-12-15 2010-06-17 Grant Isaac W Gestural Interface Device and Method
US8373724B2 (en) 2009-01-28 2013-02-12 Google Inc. Selective display of OCR'ed text and corresponding images from publications on a client device
US8442813B1 (en) 2009-02-05 2013-05-14 Google Inc. Methods and systems for assessing the quality of automatically generated text
US8385660B2 (en) 2009-06-24 2013-02-26 Ricoh Co., Ltd. Mixed media reality indexing and retrieval for repeated content
US9087059B2 (en) * 2009-08-07 2015-07-21 Google Inc. User interface for presenting search results for multiple regions of a visual query
CA2770186C (en) * 2009-08-07 2018-05-22 Google, Inc. User interface for presenting search results for multiple regions of a visual query
US8670597B2 (en) 2009-08-07 2014-03-11 Google Inc. Facial recognition with social network aiding
US8655842B2 (en) * 2009-08-17 2014-02-18 Yahoo! Inc. Push pull caching for social network information
US8175617B2 (en) * 2009-10-28 2012-05-08 Digimarc Corporation Sensor-based mobile search, related methods and systems
US8121618B2 (en) 2009-10-28 2012-02-21 Digimarc Corporation Intuitive computing methods and systems
US8805079B2 (en) 2009-12-02 2014-08-12 Google Inc. Identifying matching canonical documents in response to a visual query and in accordance with geographic information
US9405772B2 (en) * 2009-12-02 2016-08-02 Google Inc. Actionable search results for street view visual queries
US9176986B2 (en) 2009-12-02 2015-11-03 Google Inc. Generating a combination of a visual query and matching canonical document
US20110128288A1 (en) * 2009-12-02 2011-06-02 David Petrou Region of Interest Selector for Visual Queries
US8977639B2 (en) * 2009-12-02 2015-03-10 Google Inc. Actionable search results for visual queries
US8811742B2 (en) 2009-12-02 2014-08-19 Google Inc. Identifying matching canonical documents consistent with visual query structural information
US9183224B2 (en) 2009-12-02 2015-11-10 Google Inc. Identifying matching canonical documents in response to a visual query
US9852156B2 (en) 2009-12-03 2017-12-26 Google Inc. Hybrid use of location sensor data and visual query to return local listings for visual query
KR101657565B1 (ko) 2010-04-21 2016-09-19 엘지전자 주식회사 증강 원격제어장치 및 그 동작 방법
KR20110118421A (ko) * 2010-04-23 2011-10-31 엘지전자 주식회사 증강 원격제어장치, 증강 원격제어장치 제어방법 및 그 시스템
KR101694159B1 (ko) 2010-04-21 2017-01-09 엘지전자 주식회사 증강 원격제어장치 및 그 동작 방법
US10083482B2 (en) * 2010-06-29 2018-09-25 The Western Union Company Augmented reality money transfer
KR101669521B1 (ko) * 2010-08-23 2016-10-26 엘지전자 주식회사 이동 단말기 및 그 제어방법
US9484046B2 (en) 2010-11-04 2016-11-01 Digimarc Corporation Smartphone-based methods and systems
US8676623B2 (en) * 2010-11-18 2014-03-18 Navteq B.V. Building directory aided navigation
WO2012094564A1 (en) * 2011-01-06 2012-07-12 Veveo, Inc. Methods of and systems for content search based on environment sampling
US11062615B1 (en) 2011-03-01 2021-07-13 Intelligibility Training LLC Methods and systems for remote language learning in a pandemic-aware world
US10019995B1 (en) 2011-03-01 2018-07-10 Alice J. Stiebel Methods and systems for language learning based on a series of pitch patterns
CN104025017A (zh) * 2011-07-22 2014-09-03 谷歌公司 链接内容文件
US9058331B2 (en) 2011-07-27 2015-06-16 Ricoh Co., Ltd. Generating a conversation in a social network based on visual search results
US8433577B2 (en) 2011-09-27 2013-04-30 Google Inc. Detection of creative works on broadcast media
EP2820576A4 (en) 2012-02-29 2015-11-18 Nokia Technologies Oy METHOD AND DEVICE FOR PRESENTING OBJECTS AT A USER INTERFACE
CN102682091A (zh) * 2012-04-25 2012-09-19 腾讯科技(深圳)有限公司 基于云服务的视觉搜索方法和系统
US8935246B2 (en) 2012-08-08 2015-01-13 Google Inc. Identifying textual terms in response to a visual query
RU124014U1 (ru) * 2012-09-12 2013-01-10 Арташес Валерьевич Икономов Система для обеспечения персонализированного поиска информации
US20140223319A1 (en) * 2013-02-04 2014-08-07 Yuki Uchida System, apparatus and method for providing content based on visual search
US9311640B2 (en) 2014-02-11 2016-04-12 Digimarc Corporation Methods and arrangements for smartphone payments and transactions
US9553919B2 (en) * 2013-02-27 2017-01-24 Quixey, Inc. Techniques for sharing application states
CN104123286A (zh) * 2013-04-24 2014-10-29 永庆房屋仲介股份有限公司 应用于使用者的对象搜寻系统及其方法
US20150006499A1 (en) * 2013-06-28 2015-01-01 Google Inc. Systems, Methods, and Computer-Readable Media for Locating Real-World Objects Using Computer-Implemented Searching
JP6179231B2 (ja) * 2013-07-10 2017-08-16 株式会社リコー 端末装置、情報処理プログラム、情報処理方法および情報処理システム
AU2014318712B2 (en) 2013-09-11 2020-04-23 Aibuy, Inc. Dynamic binding of video content
US9354778B2 (en) 2013-12-06 2016-05-31 Digimarc Corporation Smartphone-based methods and systems
US9280560B1 (en) * 2013-12-18 2016-03-08 A9.Com, Inc. Scalable image matching
US20190188230A1 (en) * 2014-03-12 2019-06-20 Michael Bilotta Systems and methods for an information-based life view
US20150317608A1 (en) * 2014-04-30 2015-11-05 Linkedin Corporation Job recruiter and job applicant connector
US9830631B1 (en) * 2014-05-02 2017-11-28 A9.Com, Inc. Image recognition result culling
RU2635905C2 (ru) * 2015-09-23 2017-11-16 Общество С Ограниченной Ответственностью "Яндекс" Способ и сервер прогнозирования популярности элемента содержимого
EP3206142B1 (en) * 2016-02-15 2021-12-15 Ricoh Company, Ltd. Information processing system and information processing method
US10145691B2 (en) * 2016-05-18 2018-12-04 Here Global B.V. Ambiguity map match rating
US11551529B2 (en) 2016-07-20 2023-01-10 Winview, Inc. Method of generating separate contests of skill or chance from two independent events
US11076261B1 (en) 2016-09-16 2021-07-27 Apple Inc. Location systems for electronic device communications
US11047702B1 (en) 2016-09-16 2021-06-29 Apple Inc. Tracking systems for electronic devices
US11044405B1 (en) 2016-09-16 2021-06-22 Apple Inc. Location systems for electronic device interactions with environment
US11159932B1 (en) 2016-09-16 2021-10-26 Apple Inc. Electronic devices with intuitive sharing capabilities
CN110709885B (zh) * 2017-06-19 2023-11-21 株式会社而摩比特 数据结构及复合数据生成装置
JP7212966B2 (ja) * 2017-06-19 2023-01-26 株式会社アロマビット 複合データ生成方法及び複合データ生成装置
CN108391242B (zh) * 2018-02-26 2021-10-19 青岛海信移动通信技术股份有限公司 一种远程控制方法和远程控制装置
US11320509B2 (en) 2018-04-17 2022-05-03 Apple Inc. Electronic devices with motion sensing and angle of arrival detection circuitry
US11651589B2 (en) 2018-05-07 2023-05-16 Google Llc Real time object detection and tracking
US11308765B2 (en) 2018-10-08 2022-04-19 Winview, Inc. Method and systems for reducing risk in setting odds for single fixed in-play propositions utilizing real time input
CN110146657A (zh) * 2019-06-10 2019-08-20 中国烟草总公司郑州烟草研究院 一种评价卷烟落头倾向的方法

Family Cites Families (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748318B1 (en) * 1993-05-18 2004-06-08 Arrivalstar, Inc. Advanced notification systems and methods utilizing a computer network
KR0183524B1 (ko) * 1995-09-27 1999-04-15 모리 하루오 네비게이션 장치
US5940073A (en) * 1996-05-03 1999-08-17 Starsight Telecast Inc. Method and system for displaying other information in a TV program guide
US6370543B2 (en) * 1996-05-24 2002-04-09 Magnifi, Inc. Display of media previews
US6476830B1 (en) * 1996-08-02 2002-11-05 Fujitsu Software Corporation Virtual objects for building a community in a virtual world
US6208353B1 (en) * 1997-09-05 2001-03-27 ECOLE POLYTECHNIQUE FEDéRALE DE LAUSANNE Automated cartographic annotation of digital images
US6081629A (en) * 1997-09-17 2000-06-27 Browning; Denton R. Handheld scanner and accompanying remote access agent
US5991739A (en) * 1997-11-24 1999-11-23 Food.Com Internet online order method and apparatus
US6345274B1 (en) * 1998-06-29 2002-02-05 Eastman Kodak Company Method and computer program product for subjective image content similarity-based retrieval
AU1707600A (en) 1998-10-21 2000-05-08 American Calcar, Inc. Positional camera and gps data interchange device
US6952229B1 (en) * 1999-04-13 2005-10-04 Seiko Epson Corporation Digital camera having input devices and a display capable of displaying a plurality of set information items
US7154538B1 (en) * 1999-11-15 2006-12-26 Canon Kabushiki Kaisha Image processing system, image processing method, image upload system, storage medium, and image upload server
AUPQ475799A0 (en) * 1999-12-20 2000-01-20 Youramigo Pty Ltd An internet indexing system and method
AU2001247291A1 (en) * 2000-03-15 2001-09-24 Simplayer.Com Ltd. Displaying images and other information
US8352331B2 (en) * 2000-05-03 2013-01-08 Yahoo! Inc. Relationship discovery engine
US6501955B1 (en) * 2000-06-19 2002-12-31 Intel Corporation RF signal repeater, mobile unit position determination system using the RF signal repeater, and method of communication therefor
US6948135B1 (en) * 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
NO313399B1 (no) * 2000-09-14 2002-09-23 Fast Search & Transfer Asa Fremgangsmate til soking og analyse av informasjon i datanettverk
US7016532B2 (en) * 2000-11-06 2006-03-21 Evryx Technologies Image capture and identification system and process
US7680324B2 (en) * 2000-11-06 2010-03-16 Evryx Technologies, Inc. Use of image-derived information as search criteria for internet and other search engines
AUPR230700A0 (en) * 2000-12-22 2001-01-25 Canon Kabushiki Kaisha A method for facilitating access to multimedia content
US6490521B2 (en) * 2000-12-28 2002-12-03 Intel Corporation Voice-controlled navigation device utilizing wireless data transmission for obtaining maps and real-time overlay information
GB2370709A (en) * 2000-12-28 2002-07-03 Nokia Mobile Phones Ltd Displaying an image and associated visual effect
US7142883B2 (en) * 2000-12-29 2006-11-28 International Business Machines Corporation System and method for providing search capabilities and storing functions on a wireless access device
US7386875B2 (en) * 2001-03-02 2008-06-10 Jlb Ventures, Llc Freezing live video frames with interactive links
US6976016B2 (en) * 2001-04-02 2005-12-13 Vima Technologies, Inc. Maximizing expected generalization for learning complex query concepts
US7016704B2 (en) * 2001-04-02 2006-03-21 Move Mobile Systems, Inc. Coordinating images displayed on devices with two or more displays
JP4774625B2 (ja) * 2001-05-16 2011-09-14 ソニー株式会社 コンテンツ配信システム、コンテンツ配信制御サーバ、コンテンツ送信処理制御方法、コンテンツ送信処理制御プログラム及びコンテンツ送信処理制御プログラム格納媒体
US20020183047A1 (en) * 2001-06-04 2002-12-05 Inventec Appliances Corp. Sensible information inquiry system and method for mobile phones
US7082365B2 (en) * 2001-08-16 2006-07-25 Networks In Motion, Inc. Point of interest spatial rating search method and system
JP2003065783A (ja) * 2001-08-27 2003-03-05 Pioneer Electronic Corp 通信ナビゲーションシステム及び方法、地図情報提供通信センタ装置、通信ナビゲーション端末並びにコンピュータプログラム
US6757684B2 (en) * 2001-10-01 2004-06-29 Ipac Acquisition Subsidiary I, Llc Network-based photosharing architecture
DE60228744D1 (de) 2001-10-09 2008-10-16 Sirf Tech Inc Verfahren und system zum versenden von positionskodierten bildern über ein drahtloses netz
US7191146B2 (en) * 2001-10-22 2007-03-13 Eastman Kodak Company Printing and delivery of digital images and merged information from a central receiving agency
US20030095681A1 (en) 2001-11-21 2003-05-22 Bernard Burg Context-aware imaging device
US7283992B2 (en) * 2001-11-30 2007-10-16 Microsoft Corporation Media agent to suggest contextually related media content
JP4233259B2 (ja) 2002-02-08 2009-03-04 株式会社電通テック コード情報を用いた情報提供システム
US7203674B2 (en) * 2002-02-15 2007-04-10 Morgan Cohen Method and system to connect and match users in an electronic dating service
US7200597B1 (en) * 2002-04-18 2007-04-03 Bellsouth Intellectual Property Corp. Graphic search initiation
US7010542B2 (en) * 2002-07-20 2006-03-07 Microsoft Corporation Result set formatting and processing
AU2003265847A1 (en) * 2002-09-03 2004-03-29 X1 Technologies, Llc Apparatus and methods for locating data
US7092966B2 (en) * 2002-09-13 2006-08-15 Eastman Kodak Company Method software program for creating an image product having predefined criteria
US8375286B2 (en) * 2002-09-19 2013-02-12 Ancestry.com Operations, Inc. Systems and methods for displaying statistical information on a web page
US7472110B2 (en) * 2003-01-29 2008-12-30 Microsoft Corporation System and method for employing social networks for information discovery
US20040168052A1 (en) * 2003-02-25 2004-08-26 Clisham Allister B. Electronic content communication system and method
JP2004289670A (ja) 2003-03-24 2004-10-14 Nisca Corp 画像配信カメラシステム、画像配信カメラ、画像配信サーバ、及び画像配信方法
TWI254564B (en) * 2003-04-11 2006-05-01 Far Eastone Telecomm Co Ltd Multimedia message servicing method capable of inquiring downloading information and structure thereof
TW566775U (en) * 2003-04-25 2003-12-11 Hon Hai Prec Ind Co Ltd Portable electronic device
US20050027705A1 (en) * 2003-05-20 2005-02-03 Pasha Sadri Mapping method and system
US6988990B2 (en) * 2003-05-29 2006-01-24 General Electric Company Automatic annotation filler system and method for use in ultrasound imaging
KR20040105192A (ko) * 2003-06-05 2004-12-14 삼성전자주식회사 카메라를 가진 장치에서 촬영할 대상의 시선을 집중시키는방법
US7162473B2 (en) * 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
KR100565289B1 (ko) * 2003-08-30 2006-03-30 엘지전자 주식회사 이동 통신 단말기의 하이퍼링크를 이용한 정보 관리 방법
WO2005059698A2 (en) * 2003-12-15 2005-06-30 Market Valuation Institute, Llc The option value indicator
JP2007520934A (ja) * 2003-12-24 2007-07-26 ウオーカー ディジタル、エルエルシー 画像を自動的に捕捉し、管理する方法および装置
US8612359B2 (en) * 2004-01-29 2013-12-17 Yahoo! Inc. Method and system for sharing portal subscriber information in an online social network
JPWO2005076188A1 (ja) * 2004-02-05 2008-01-10 松下電器産業株式会社 コンテンツ作成装置、およびコンテンツ作成方法
US7565139B2 (en) * 2004-02-20 2009-07-21 Google Inc. Image-based search engine for mobile phones with camera
US8421872B2 (en) * 2004-02-20 2013-04-16 Google Inc. Image base inquiry system for search engines for mobile telephones with integrated camera
US20050221821A1 (en) * 2004-04-05 2005-10-06 Sokola Raymond L Selectively enabling communications at a user interface using a profile
US7707218B2 (en) 2004-04-16 2010-04-27 Mobot, Inc. Mobile query system and method based on visual cues
US7254588B2 (en) * 2004-04-26 2007-08-07 Taiwan Semiconductor Manufacturing Company, Ltd. Document management and access control by document's attributes for document query system
US20050246324A1 (en) * 2004-04-30 2005-11-03 Nokia Inc. System and associated device, method, and computer program product for performing metadata-based searches
JP2006005877A (ja) * 2004-06-21 2006-01-05 Sanyo Electric Co Ltd デジタルスチルカメラ及びデジタルスチルカメラを搭載した携帯電話機並びにデジタルスチルカメラの手振れ防止方法
US20060143016A1 (en) * 2004-07-16 2006-06-29 Blu Ventures, Llc And Iomedia Partners, Llc Method to access and use an integrated web site in a mobile environment
US20060036565A1 (en) * 2004-08-10 2006-02-16 Carl Bruecken Passive monitoring of user interaction with a browser application
US20060033809A1 (en) * 2004-08-10 2006-02-16 Mr. Jim Robinson Picture transmission and display between wireless and wireline telephone systems
JP2006109404A (ja) * 2004-09-07 2006-04-20 Matsushita Electric Ind Co Ltd アダプタ装置及びネットワークカメラシステム
US7493301B2 (en) * 2004-09-10 2009-02-17 Suggestica, Inc. Creating and sharing collections of links for conducting a search directed by a hierarchy-free set of topics, and a user interface therefor
US7480567B2 (en) * 2004-09-24 2009-01-20 Nokia Corporation Displaying a map having a close known location
US7881945B2 (en) * 2004-09-28 2011-02-01 Dell Products L.P. System and method for managing data concerning service dispatches involving geographic features
US8489583B2 (en) * 2004-10-01 2013-07-16 Ricoh Company, Ltd. Techniques for retrieving documents using an image capture device
US8150617B2 (en) * 2004-10-25 2012-04-03 A9.Com, Inc. System and method for displaying location-specific images on a mobile device
JP4041118B2 (ja) * 2004-11-24 2008-01-30 株式会社東芝 ゲートウェイ装置、ネットワークシステム、通信プログラム及び通信方法
US7720436B2 (en) * 2006-01-09 2010-05-18 Nokia Corporation Displaying network objects in mobile devices based on geolocation
US20060174203A1 (en) * 2005-01-31 2006-08-03 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Viewfinder for shared image device
US20080133392A1 (en) 2005-02-04 2008-06-05 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Security arrangements for virtual world obligations
US20060206379A1 (en) * 2005-03-14 2006-09-14 Outland Research, Llc Methods and apparatus for improving the matching of relevant advertisements with particular users over the internet
US7899583B2 (en) 2005-04-12 2011-03-01 Ehud Mendelson System and method of detecting and navigating to empty parking spaces
US20060248061A1 (en) * 2005-04-13 2006-11-02 Kulakow Arthur J Web page with tabbed display regions for displaying search results
US8668568B2 (en) * 2005-04-27 2014-03-11 Ticketmaster, L.L.C. Methods and systems for determining user location
FI119953B (fi) 2005-05-09 2009-05-15 Eija Lehmuskallio Menetelmä, järjestelmä ja palvelutuote kohteiden tunnistamiseksi
US7818336B1 (en) 2006-08-30 2010-10-19 Qurio Holdings, Inc. Methods, systems, and products for searching social networks
US20080104067A1 (en) * 2006-10-27 2008-05-01 Motorola, Inc. Location based large format document display
US20080221862A1 (en) * 2007-03-09 2008-09-11 Yahoo! Inc. Mobile language interpreter with localization

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101335400B1 (ko) * 2008-12-18 2013-12-05 구글 인코포레이티드 문서와 관련하여 보여주기 위한 코멘트의 식별
KR20120058538A (ko) * 2009-08-07 2012-06-07 구글 인코포레이티드 시각 질의에 응답하기 위한 아키텍처
US10534808B2 (en) 2009-08-07 2020-01-14 Google Llc Architecture for responding to visual query
KR20130118897A (ko) * 2010-11-04 2013-10-30 디지맥 코포레이션 스마트폰 기반 방법들 및 시스템들

Also Published As

Publication number Publication date
WO2007056410A3 (en) 2007-11-29
US20140365472A1 (en) 2014-12-11
US20070106721A1 (en) 2007-05-10
WO2007056410A2 (en) 2007-05-18
EP1946216A2 (en) 2008-07-23
KR101123217B1 (ko) 2012-03-19
EP1946216A4 (en) 2010-03-31
US20170255703A1 (en) 2017-09-07
US8849821B2 (en) 2014-09-30
US20200410022A1 (en) 2020-12-31
EP2535821A1 (en) 2012-12-19
US9600584B2 (en) 2017-03-21

Similar Documents

Publication Publication Date Title
US20200410022A1 (en) Scalable visual search system simplifying access to network and device functionality
US11055325B2 (en) System and method for context enhanced mapping
US8341185B2 (en) Method and apparatus for context-indexed network resources
US10185779B2 (en) Mechanisms for content aggregation, syndication, sharing, and updating
US9026917B2 (en) System and method for context enhanced mapping within a user interface
US8856167B2 (en) System and method for context based query augmentation
EP2380096B1 (en) Computer-implemented method for providing location related content to a mobile device
US20080268876A1 (en) Method, Device, Mobile Terminal, and Computer Program Product for a Point of Interest Based Scheme for Improving Mobile Visual Searching Functionalities
EP2676233A2 (en) Providing applications with personalized and contextually relevant content
WO2010039378A2 (en) System and method for context enhanced ad creation
US20190065603A1 (en) Physical location history with advertising
Crestani et al. Mobile information retrieval
US9558294B2 (en) Asynchronous caching to improve user experience
Tollmar et al. IDeixis–searching the web with mobile images for location-based information
CN110020106A (zh) 一种推荐方法、推荐装置和用于推荐的装置
CN114253636A (zh) 适地性数字内容的显示方法、用户接口以及系统
Henze et al. Services surround you: Physical-virtual linkage with contextual bookmarks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
E902 Notification of reason for refusal
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150130

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160127

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170201

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180201

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190129

Year of fee payment: 8