KR102347398B1 - 터치스크린 상에 표시되는 조치 가능한 콘텐츠 - Google Patents

터치스크린 상에 표시되는 조치 가능한 콘텐츠 Download PDF

Info

Publication number
KR102347398B1
KR102347398B1 KR1020217010111A KR20217010111A KR102347398B1 KR 102347398 B1 KR102347398 B1 KR 102347398B1 KR 1020217010111 A KR1020217010111 A KR 1020217010111A KR 20217010111 A KR20217010111 A KR 20217010111A KR 102347398 B1 KR102347398 B1 KR 102347398B1
Authority
KR
South Korea
Prior art keywords
text
gesture
user
determining
user gesture
Prior art date
Application number
KR1020217010111A
Other languages
English (en)
Other versions
KR20210040196A (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 KR1020217042731A priority Critical patent/KR102447607B1/ko
Publication of KR20210040196A publication Critical patent/KR20210040196A/ko
Application granted granted Critical
Publication of KR102347398B1 publication Critical patent/KR102347398B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5846Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7844Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using original textual content or text extracted from visual content or transcript of audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Surgical Instruments (AREA)
  • Control And Other Processes For Unpacking Of Materials (AREA)
  • Water Treatment By Sorption (AREA)

Abstract

일부 구현은 터치스크린 디스플레이 상에 비디오를 포함하는 미디어 파일을 제공할 수 있다. 터치스크린 디스플레이 상에서 행해진 사용자 제스처가 검출될 수 있다. 사용자 제스처는 탭(tab) 제스처, 스와이프(swipe) 제스처, 또는 홀딩중의 탭-홀드-드래그(tap and hold and drag while holding) 제스처 중 하나를 포함할 수 있다. 사용자 제스처에 의해 선택된 텍스트가 결정될 수 있다. 하나 이상의 후속 조치(follow-up action)가, 사용자 제스처에 의해 선택된 텍스트에 적어도 부분적으로 기초하여 자동으로 수행될 수 있다.

Description

터치스크린 상에 표시되는 조치 가능한 콘텐츠{ACTIONABLE CONTENT DISPLAYED ON A TOUCH SCREEN}
사용자는 비디오 파일, 스트리밍 비디오, 문서, 웹 페이지 등의 미디어 파일을 보고 있을 때에, 그 미디어 파일에 의해 표시되는 텍스트에 관한 정보를 얻기를 원할 수도 있다. 예를 들어, 기술적 토픽에 대한 프레젠테이션을 보고 있는 사용자는 그 기술적 토픽의 저자들 중 한 명과 연관되거나 그 기술적 토픽과 연관되는 정보를 얻기를 원할 수 있다. 사용자는 미디어 파일 보기를 일시정지한 다음, 웹 브라우저를 열어서, 검색 엔진으로 이동하고, 그 기술적 토픽으로부터 저자명이나 키워드를 이용해 탐색하고, 결과를 보고 더 많은 정보를 얻기 위해 그 결과에 표시된 하나 이상의 링크를 선택할 수 있다. 사용자는 그 정보를 얻은 후에 그 미디어 파일 보기를 재개할 수 있다. 사용자는 미디어 파일에 의해 표시되는 텍스트에 관한 정보를 얻기를 원할 때마다 반복적으로 미디어 파일 보기를 일시정지할 수 있다. 그러나, 사용자가 미디어 파일에 의해 표시되는 텍스트에 관한 정보를 얻고자 할 때마다 반복적으로 미디어 파일 보기를 일시정지하는 것은 시간 소모적이고/이거나 그 미디어 파일을 통해 표시되는 자료의 흐름을 혼란케할 수 있다.
본 개요는 상세한 설명에서 또한 후술하는 다양한 개념들을 간략화한 형태로 소개하기 위해 제공된다. 본 개요는 청구범위의 발명의 대상의 기본적 또는 본질적 특징을 확인하기 위한 것이 아니며, 청구범위의 발명의 대상의 범위를 결정하거나 한정하는데 이용되어서도 안된다.
일부 구현은 터치스크린 디스플레이 상에 비디오를 포함하는 미디어 파일을 제공할 수 있다. 터치스크린 디스플레이 상에서 행해진 사용자 제스처가 검출될 수 있다. 사용자 제스처는 탭(tab) 제스처, 스와이프(swipe) 제스처, 또는 홀딩중의 탭-홀드-드래그(tap and hold and drag while holding) 제스처 중 하나를 포함할 수 있다. 사용자 제스처에 의해 선택된 텍스트가 결정될 수 있다. 하나 이상의 후속 조치(follow-up action)가, 사용자 제스처에 의해 선택된 텍스트에 적어도 부분적으로 기초하여 자동으로 수행될 수 있다.
첨부 도면을 참조하여, 상세하게 설명한다. 도면에 있어서, 도면부호의 최좌측 숫자는 그 도면부호가 맨처음 등장한 도면을 나타낸다. 상이한 도면에서의 동일한 도면부호는 유사하거나 동일한 아이템을 가리킨다.
도 1은 일부 구현에 따른 후속 조치 모듈을 포함하는 예시적인 아키텍처이다.
도 2는 일부 구현에 따른, 탭 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스이다.
도 3은 일부 구현에 따른, 스와이프 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스이다.
도 4는 일부 구현에 따른, 탭-홀드(tap and hold) 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스이다.
도 5는 일부 구현에 따른 탭 또는 스와이프 제스처의 검출을 포함하는 예시적인 프로세스의 흐름도이다.
도 6은 일부 구현에 따른 탭-홀드 제스처의 검출을 포함하는 예시적인 프로세스의 흐름도이다.
도 7은 일부 구현에 따른 예시적인 컴퓨팅 디바이스 및 환경의 블록도이다.
전술한 바와 같이, 사용자가 미디어 파일에 의해 표시되는 텍스트에 관한 정보를 얻고자 할 때마다 반복적으로 미디어 파일 보기를 일시정지하는 것은 시간 소모적이고/이거나 그 미디어 파일을 통해 표시되는 자료의 흐름을 혼란케할 수 있다. 본 명세서에서 설명하는 시스템 및 기술은 텍스트를 포함하는 미디어를 표시하고 있는 터치스크린 상에서의 사용자 제스처의 검출에 응답하여, 상이한 조치들이 자동으로 수행되게 할 수 있다. 사용자 제스처는, 단어가 표시되는 터치스크린의 일부를 탭핑, 2개 이상의 단어들이 표시되는 터치스크린의 일부를 스와이핑, 또는 터치스크린의 제1 부분을 탭핑하고 홀딩한 다음, (홀딩중의) 터치스크린의 제2 부분 위에서 드래깅 등의 제스처를 이용하여, 미디어에 의해 표시되는 텍스트를 선택할 수 있다. 후자의 제스처는 홀딩중의 탭-홀드-드래그라고도 칭해질 수도 있다. 본 명세서에서 설명하는 제스처는, 사용자의 부속기관(예, 손끝)의 적어도 일부를 이용, 선택 도구(예, 스타일러스)를 이용, 다중 터치(예, 손끝과 엄지나 2개의 손끝) 제스처, 비터치 제스처(non-touch gesture)(예, Microsoft사의 Kinect® 등의 카메라가 인식한 제스처), 터치 플러스 음성 커맨드(예, 단어를 터치한 후 "검색" 또는 "번역"이라고 말하기), 다른 유형의 입력 메커니즘이나, 이들의 임의의 조합을 이용하는 것을 포함하는, 다양한 기술을 이용해서 행해질 수 있다.
사용자는 터치스크린 디스플레이를 구비한 컴퓨팅 디바이스 상에서 미디어 파일을 볼 수 있다. 예를 들어, 컴퓨팅 디바이스는 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 모바일 폰, 게이밍 디바이스, 미디어 재생 디바이스, 또는 다른 유형의 컴퓨팅 디바이스를 포함할 수 있다. 미디어 파일은 비디오(예, 비디오 파일 또는 스트리밍 비디오), 오디오 파일로서 텍스트(예, 타이틀, 아티스트 정보, 가사 등의, 오디오 파일과 연관된 정보)를 표시할 수 있는 오디오 파일, 문서, 이미지 파일(예, 그림, 사진 또는 컴퓨터 작성 이미지), 웹 브라우저가 표시하는 페이지, 다른 유형의 미디어 파일, 또는 이들의 임의의 조합일 수 있다. 사용자는 미디어 파일에 의해 텍스트가 표시되는 터치스크린 상의 장소에 대략 대응하는 위치의 터치스크린 상에서 사용자 제스처를 행할 수 있다.
탭 제스처는 미리 정해진 시간(예, 200 밀리초와 800 밀리초 사이) 동안 터치스크린의 일부에 압력을 가하는 것을 나타낸다. 스와이프 제스처는 터치스크린의 시작 위치에서 종료 위치까지 압력을 가하는 것을 나타낸다. 홀딩중의 탭-홀드-드래그 제스처는 미리 정해진 시간 동안 시작 위치에서 압력을 가하고 그 압력 가하기를 그 압력의 장소를 터치스크린의 종료 위치로 이동시키는 것을 나타낸다. 다수의 프레임 또는 페이지를 표시하는 미디어 파일의 경우, 홀딩중의 탭-홀드-드래그 제스처는 다수의 프레임 또는 페이지를 담당할 수 있다. 예를 들어, 시작 위치에서의 탭-홀드는 비디오 재생을 일시정지시킬 수 있다. 압력 가하기를 계속하면서(예, 홀딩중의), 압력의 장소를 종료 위치로 드래깅하면(예, 이동하면), 일시정지된 미디어를 진행시킬 수 있다(예, 비디오라면 하나 이상의 다음 프레임으로 진행될 수 있고, 또 문서라면 하나 이상의 다음 페이지로 진행될 수 있다). 이런 식으로, 홀딩중의 탭-홀드-드래그 제스처는 다수의 비디오 프레임, 다수의 문서 페이지 등을 이용해서 미디어 파일 중에서, 표시될 수 있는 텍스트를 선택할 수 있다. 텍스트를 포함하는 비디오가 표시되고 있을 때에, 홀딩중의 탭-홀드-드래그 제스처는 복수의 비디오 프레임 중에서 텍스트를 선택하기 위해 비디오의 복수의 프레임에 확대될 수 있다. 다수 페이지의 텍스트를 포함하는 문서가 표시되고 있을 때에, 홀딩중의 탭-홀드-드래그 제스처는 그 문서의 복수의 페이지 중에서 텍스트를 선택하기 위해 문서의 복수의 페이지에 확대될 수 있다.
사용자 제스처(예, 탭, 스와이프, 또는 홀딩중의 탭-홀드-드래그)의 검출에 응답하여, 하나 이상의 스크린은 그 제스처가 행해졌을 때에 터치스크린 상에 표시되고 있던 미디어 파일의 일부를 캡처링하도록 캡처링될 수 있다. 예를 들어, 문서가 표시되는 경우에는, 사용자 제스처가 행해졌을 때에 표시된 텍스트가 캡처링될 수 있다. 다른 예로서, 비디오가 표시되는 경우에는, 프레임 그래버(grabber)를 이용해서 그 비디오의 하나 이상의 프레임이 캡처링될 수 있다.
사용자 제스처와 연관된 위치 정보가 결정될 수 있다. 예를 들어, 탭 제스처의 경우, 그 탭 제스처와 연관된 터치스크린 상의 좌표(예, x 및 y 좌표)가 결정될 수 있다. 스와이프 제스처의 경우, 그 스와이프 제스처와 연관된 시작 좌표와 종료 좌표가 결정될 수 있다. 홀딩중의 탭-홀드-드래그 제스처의 경우, 프레임, 페이지 또는 다른 유형의 디스플레이 단위마다의 시작 좌표와 종료 좌표가 결정될 수 있다. 비디오 파일, 오디오 파일, 또는 시간 정보(temporal information)를 포함하는 다른 유형의 파일이 표시되고 있을 때에 사용자 제스처가 행해지면, 그 사용자 제스처와 연관된, 타임 스탬프 또는 타임 코드 등의 시간 정보가 위치 정보와 함께 결정될 수 있다. 예를 들어, 비디오 파일이 터치스크린 디스플레이 상에 표시되고 있을 때에 탭 제스처 또는 스와이프 제스처가 행해지면, 그 사용자 제스처와 연관된 위치 정보와 시간 정보가 결정될 수 있다. 예를 들어 설명하면, 시간 정보는 사용자 제스처와 연관된 시작 시간(예, 사용자 제스처가 개시되었을 때를 식별하는 제1 타임 코드), 사용자 제스처와 연관된 종료 시간(예, 사용자 제스처가 종료되었을 때를 식별하는 제2 타임 코드), 사용자 제스처와 연관된 다른 유형의 시간 정보, 또는 이들의 조합을 포함할 수 있다.
효과적인 사용자 의도 안내 텍스트 추출 알고리즘(efficient user-intention guided text extraction algorithm)을 이용해서 사용자 제스처와 연관된 위치 정보에 기초하여 스크린 캡처로부터 텍스트 이미지 패치가 추출될 수 있다. 추출된 텍스트 이미지는 선택 텍스트를 결정하기 위해 광학 문자 인식(optical character recognition, OCR) 또는 유사한 텍스트 추출 기술을 이용할 수 있다. 예를 들어, 탭 제스처에 응답하여, 스크린 캡처로부터 단어가 추출될 수 있다. 추출된 단어는 탭 제스처가 행해진 터치스크린 상의 위치에 또는 그 부근에 표시되었던 미디어 파일로부터의 텍스트에 대응할 수 있다. 스와이프 제스처에 응답하여, 스크린 캡처로부터 하나 이상의 단어가 추출될 수 있다. 추출된 단어는 스와이프 제스처가 행해진 터치스크린 상의 위치에 또는 그 부근에 표시되었던 미디어 파일로부터의 텍스트의 부분에 대응할 수 있다. 홀딩중의 탭-홀드-드래그 제스처에 응답하여, 하나 이상의 스크린 캡처로부터 하나 이상의 단어가 추출될 수 있다. 추출된 단어는 홀딩중의 탭-홀드-드래그 제스처가 행해진 터치스크린 상의 위치에 또는 그 부근에 표시되었던 미디어 파일로부터의 텍스트의 부분에 대응할 수 있다.
스크린 캡처로부터 하나 이상의 단어가 추출된 후에, 하나 이상의 조치가 자동으로 수행될 수 있다(예, 인간의 인터랙션 없이). 자동으로 수행될 수 있는 조치는 선택 텍스트를 제1 언어에서 제2 언어로 번역, 인터넷 검색 수행, 특정 웹 어드레스의 검색 등을 포함할 수 있다. 터치스크린 상에서의 사용자 제스처에 응답하여 자동으로 수행되는 조치는, 선택된 텍스트와 연관된 콘텍스트(예, 선택 텍스트의 앞 및/또는 뒤에 위치하는 텍스트, 미디어를 취득한 웹사이트 또는 서버, 그 미디어의 저자 또는 작성자 등), 사용자의 선호, 조치의 디폴트 세트, 또는 이들의 임의의 조합에 기초하여 결정될 수 있다. 예를 들어, 조치의 디폴트 세트는 선택된 텍스트를 이용한 검색 수행을 포함할 수 있다. 다른 예로서, 사용자 선호는 선택된 텍스트를 타깃 언어로 번역, 번역된 텍스트를 표시, 번역된 텍스트를 이용해 검색 수행을 포함하는 일련의 조치를 지정할 수 있다.
자동으로 수행되는 조치의 결과는 미디어 파일이 표시되고 있는 창에 또는 제2 창에 표시될 수 있다. 제2 창은 미디어를 표시하는 창에 인접해서 또는 팝업 창으로서(예, 미디어를 표시하는 창을 덮어서) 표시될 수 있다. 예를 들어, 선택된 텍스트의 번역과, 번역된 텍스트를 이용한 인터넷 검색의 결과는 미디어를 표시하는 창을 덮는 팝업 창으로 표시될 수 있다. 다른 예로서, 선택된 텍스트의 번역은 제1 팝업 창으로 표시될 수 있고, 번역된 텍스트를 이용한 인터넷 검색의 결과는 제2 팝업 창으로 표시될 수 있다.
일부 경우에, 두가지 인터랙션 모델이 이용될 수도 있다. 제1 인터랙션 모델은 사용자가 미디어 콘텐츠(예, 비디오 파일, 오디오 파일, 문서 등)를 보고 있을 때에 사용자 제스처가 수신될 경우에 이용될 수 있다. 사용자가 미디어 콘텐츠를 보면서 사용자 제스처를 행할 경우, 하나 이상의 디폴트 조치가 수행될 수 있고, 디폴트 조치의 결과는 제2(예, 팝업)창으로 표시될 수 있다. 제2 인터랙션 모델은 제2 창으로 디폴트 조치의 결과를 보는 동안에 수신된 사용자 제스처를 위해 이용될 수 있다. 예를 들어, 제1 인터랙션 모델은 선택된 텍스트를 소스 언어에서 타깃 언어로 번역하는 것과, 번역된 텍스트를 이용해 검색을 수행하는 것을 포함할 수 있다. 제2 인터랙션 모델은 선택된 텍스트를 이용해 검색을 수행하는 것을 포함할 수 있다. 이 예에서, 선택된 텍스트의 번역이 제1 인터랙션 모델에서는 수행되지만 제2 인터랙션 모델로는 수행되지 않는다. 제1 인터랙션 모델과 제2 인터랙션 모델은 사용자 프로파일, 사용자 선호 파일, 또는 유사한 사용자 특유의 맞춤화 기술을 이용해서 지정될 수 있다.
그렇기에, 미디어 파일을 볼 때에, 사용자는 (1) 미디어 파일의 일부로부터 텍스트가 추출되게 하고 (2) 추출된 텍스트를 이용해서 하나 이상의 조치가 자동으로 수행되게 하는 제스처를 입력할 수 있다. 이 사용자 제스처는 예컨대 탭 제스처, 스와이프 제스처, 또는 홀딩중의 탭-홀드-드래그를 포함할 수 있다. 사용자 제스처에 응답하여 자동으로 수행될 수 있는 조치는 예를 들어 선택된 텍스트의 번역, 그 선택된 테스트를 이용한 검색 등을 포함할 수 있다. 예를 들어, 기술적 프레젠테이션(예, 비디오, 슬라이드 세트, 문서, 웹 페이지 등)을 보고 있는 사용자는 기술적 단어 또는 어구와 연관된 추가 정보를 얻기 위해 그 기술적 단어 또는 어구를 탭핑 또는 스와이핑할 수 있다. 다른 예로서, 기술적 프레젠테이션을 보고 있는 사용자는 저자와 연관된 추가 정보를 얻기 위해 저자 이름을 탭핑 또는 스와이핑할 수 있다.
예시적인 아키텍처
도 1은 일부 구현에 따른 후속 조치 모듈을 포함하는 예시적인 아키텍처(100)이다. 아키텍처(100)는 네트워크(106)를 이용해 하나 이상의 서버(104)에 연결된 컴퓨팅 디바이스(102)를 포함한다.
서버(104)는 인터넷을 검색하는 검색 서비스, 단어, 어구 또는 문장을 소스 언어에서 타깃 언어로 검색하는 검색 서비스 등의, 다양한 네트워크 기반 서비스를 제공할 수 있다. 네트워크(106)는 유선 및/또는 무선 네트워크를 포함할 수 있다. 유선 네트워크는 이더넷(Ethernet), DOCSIS(data over cable service interface specification), DSL(digital subscriber line) 등 중 하나 이상과 같은 각종의 프로토콜 및 표준을 이용할 수 있다. 무선 네트워크는 CDMA(code division multiple access), GSM(global system for mobile), WiFi, (예, 802.11) 등 중 하나 이상과 같은 각종의 프로토콜 및 표준을 이용할 수 있다.
컴퓨팅 디바이스(102)는 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 미디어 재생 디바이스, 모바일 전화기, 다른 유형의 컴퓨팅 디바이스, 또는 이들의 조합일 수 있다. 컴퓨팅 디바이스(102)는 하나 이상의 프로세서(108), 터치스크린 디스플레이(110), 및 메모리(112)를 포함할 수 있다. 메모리(112)는 다양한 기능을 수행하기 위해 프로세서(108)에 의해 실행 가능한 명령어를 저장하는데 이용된다. 명령어는 그 명령어가 수행하는 기능에 의해 모듈로 그룹핑될 수 있다. 예를 들어, 메모리는 미디어 재생 모듈(114), 스크린 캡처 모듈(116), 입력 핸들러 모듈(118), 문자 추출 모듈(120), 문자 인식 모듈(122), 콘텍스트 결정 모듈(124), 사용자 선호(126), 및 후속 조치 모듈(128)을 포함할 수 있다.
미디어 재생 모듈(114)은 비디오 파일, 오디오 파일, 문서(예, Microsoft® Word®, PDF(portable document format), RTF(rich text format)를 준수하는 포맷, 웹 브라우저에 의해 표시되는 페이지, 또는 기타 문서 포맷), 및 기타 유형의 미디어 파일을 포함하는 상이한 유형의 미디어를 제공(예, 재생 또는 표시)할 수 있다. 미디어 파일(130)의 재생중에, 미디어 재생 모듈(114)은 그 미디어 파일(130)에 포함되거나 그것과 연관된 텍스트를 표시할 수 있다. 예를 들어, 비디오 파일을 재생할 때에, 미디어 재생 모듈(114)은 그 비디오 파일의 타이틀 또는 그 비디오 파일의 저자 등의 텍스트를 표시할 수 있다. 다른 예로서, 오디오 파일을 재생할 때에, 미디어 재생 모듈(114)은 그 오디오 파일의 이름, 그 오디오 파일을 포함하는 앨범의 이름, 그 오디오 파일과 연관된 뮤지션의 이름, 그 오디오 파일과 연관된 가사, 그 오디오 파일과 연관된 기타 텍스트, 또는 이들의 임의의 조합 등의 텍스트를 표시할 수 있다. 표시되는 텍스트의 적어도 일부는 오디오 파일에 포함되거나, 미디어 재생 모듈(114)에 의해 서버(104) 중 하나로부터 취득될 수 있다. 미디어 파일(130)은 메모리(112) 내에 저장된 파일이거나 네트워크(106)를 통해 서버(104) 중 하나로부터 스트리밍되는 파일일 수 있다.
스크린 캡처 모듈(116)은 미디어 파일(130)을 제공할 때에 미디어 재생 모듈(114)에 의해 터치스크린 디스플레이(110) 상에 표시되는 미디어 콘텐츠의 스크린 샷을 캡처링할 수 있다. 표시되는 미디어 콘텐츠가 텍스트를 포함할 수 있다. 예를 들어, 스크린 캡처 모듈(116)은 하나 이상의 스크린 캡처(132)를 작성할 수 있다. 표시된 미디어 콘텐츠를 스크린 캡처 모듈(116)이 캡처링하는 방식은 미디어 파일(130)의 유형에 따라 다를 수 있다. 예를 들어, 미디어 파일(130)이 비디오 파일인 경우, 스크린 캡처 모듈(116)은 비디오의 하나 이상의 프레임을 캡처링하는 프레임 그래빙 기술(frame grabbing technique)을 이용할 수 있다. 다른 예로서, 미디어 파일(130)이 문서인 경우, 스크린 캡처 모듈(116)은 표시되는 문서로부터의 콘텐츠의 하나 이상의 스크린을 캡처링하는 스크린 캡처 기술을 이용할 수 있다.
입력 핸들러 모듈(118)은 터치스크린 디스플레이(110) 상에서 사용자에 의해 행해진 제스처를 포함한 사용자 입력(134)을 수신한다. 입력 핸들러 모듈(118)은 사용자 입력(134)에 포함된 제스처를 검출하여 식별할 수 있다. 예를 들어, 입력 핸들러 모듈(118)은 터치스크린 디스플레이(110)을 이용해 입력되는 사용자 제스처(136)를 검출하여 식별할 수 있다. 사용자 제스처(136)의 검출에 응답하여, 입력 핸들러 모듈(118)은 미디어 재생 모듈(114)이 터치스크린 디스플레이(110) 상에 제공하고 있는 미디어 파일(130)의 부분으로부터 스크린 캡처(132)를 캡처링하도록 스크린 캡처 모듈(116)에 명령할 수 있다.
입력 핸들러 모듈(118)은 사용자 제스처가 수신된 시간 및 수신된 사용자 제스처에 관한 정보를 포함하는 이력 파일(138)을 생성할 수 있다. 예를 들어, 입력 핸들러 모듈(118)은 각 미디어 파일과의 각각의 사용자의 인터랙션에 대한 이력 파일을 생성할 수 있다. 이력 파일(138)에 대해서는 이하에서 상세하게 설명한다.
입력 핸들러 모듈(118)은 각각의 사용자 제스처(136)와 연관된 위치 데이터(140)를 결정할 수 있다. 예를 들어, 사용자 제스처(136)가 탭 제스처인 경우, 위치 데이터(140)는 그 사용자 제스처(136)가 검출된 터치스크린 디스플레이(110) 상에서의 위치(예, x 및 y 좌표)를 식별할 수 있다. 사용자 제스처(136)가 스와이프 제스처인 경우, 위치 데이터(140)는 그 사용자 제스처(136)가 검출된 터치스크린 디스플레이(110) 상에서의 시작 위치와 종료 위치를 식별할 수 있다. 사용자 제스처(136)가 홀딩중의 탭-홀드-드래그 제스처인 경우, 위치 데이터(140)는 그 사용자 제스처(136)와 연관된 미디어 파일(130)의 각각의 프레임(또는 페이지)의 터치스크린 디스플레이(110) 상에서의 시작 위치와 종료 위치를 식별할 수 있다.
텍스트 추출 모듈(120)은 스크린 캡처(132)로부터의 텍스트를 추출 텍스트 이미지(142)로서 추출할 수 있다. 예를 들어, 텍스트 추출 모듈(120)은 스크린 캡처(132)으로부터 추출 텍스트 이미지(142)를 작성하기 위해 사용자 의도 안내 텍스트 추출 알고리즘을 이용할 수 있다. 텍스트 추출 모듈(120)은 스크린 캡처(132) 및 사용자 제스처(136)를 입력 및 출력 위치와 텍스트 영역의 경계 박스로서 이용할 수 있고, 텍스트 영역은 사용자 선택 텍스트, 의도된 텍스트(예, 사용자 제스처에 기초하여 사용자 의도를 결정하고 사용자 의도에 기초하여 텍스트를 결정), 및 문맥적 텍스트(contextual text)를 포함할 수 있다. 홀딩중의 탭-홀드-드래그 제스처의 경우, 텍스트 추출 모듈(120)은 비디오의 다수의 프레임 또는 문서의 다수의 페이지에 걸쳐 있는 텍스트를 포함하는, 다수 라인의 텍스트를 이미지로부터 추출할 수 있다.
각각의 노드가 말단 영역을 표현하는(예, 보편적인 유형의 이미지 표현 방법) 컴포넌트 트리가 자동으로 텍스트를 추출하는 효과적인 사용자 의도 안내 텍스트 추출 알고리즘을 설계하는데 이용될 수 있다. 컴포넌트 트리의 각 노드를 독립적으로 간주하는 것 대신에 또는 이에 추가하여, 트리의 구조적 정보, 텍스트 라인 정보, 및 사용자 의도 등의 추가 정보가 컴포넌트 트리의 비텍스트(non-text) 노드를 가지치기(pruning)하는데 이용될 수도 있다. 예를 들어, 사용자 제스처가 검출될 경우, 이미지의 사이즈가 조정될 수 있다. 화이트 배경 상에 블랙 텍스트를 그리고 블랙 배경 상에 화이트 텍스트를 상정하여 사이즈 조정된 이미지로부터 2개의 컴포넌트 트리가 작성될 수 있다. 2개의 컴포넌트 트리는 개별적으로 가지치기될 수 있다. 텍스트의 경계 박스는 각각의 트리 내의 잔존 노드들(예, 가지치기에 생존한 노드들)을 그룹핑하여 산출될 수 있다. 2개의 컴포넌트 트리로부터의 결과들이 비교되어 더 나은 것이 출력으로서 선택될 수 있다. 가지치기는 콘트라스트 및 지리 정보를 이용한 가지치기와 사용자 의도 및 텍스트 라인 정보를 이용한 가지치기를 포함할 수 있다. 가치치기 단계는 명백한 비텍스트 영역을 가능한 한 많이 가지치기하는데 이용될 수 있다.
텍스트 인식 모듈(122)은 추출 텍스트 이미지(142)를 입력으로 취할 수 있고, OCR를 이용하여 선택 텍스트(144)를 작성할 수 있다. 텍스트 인식 모듈(122)은 사용자에 의해 선택된 텍스트, 예컨대 선택 텍스트(144)를 식별하기 위해 위치 데이터(140)를 스크린 캡처(132)와 상관시킬 수 있다. 예를 들어, 위치 데이터(140)는 사용자 제스처(136)에 의해 선택되는 표시된 미디어 파일의 부분에 대응하는 추출 텍스트(142)의 부분을 식별하기 위해 스크린 캡처(132)와 상관될 수 있다. 예를 들어 설명하면, 스크린 캡처(132)는 비디오의 프레임 또는 문서의 페이지로부터 텍스트를 포함할 수 있다. 추출 텍스트(142)는 비디오의 프레임 또는 문서의 페이지로부터 텍스트에 대응하는 단어를 포함할 수 있다. 텍스트 인식 모듈(122)은 추출 텍스트(142)로부터 선택 텍스트(144)(예, 사용자 제스처(136)에 의해 선택되는, 터치스크린 디스플레이(110) 상에 표시된 텍스트)를 식별하기 위해 위치 데이터(140)를 이용할 수 있다.
선택 텍스트(144)는 그 선택된 텍스트(144)가 후속 조치 모듈(128)에 의해 하나 이상의 후속 조치를 수행하는데 이용될 수 있기 때문에 조치 가능한 텍스트(actionable text)라고도 칭해질 수 있다. 후속 조치 모듈(128)은 다양한 정보에 기초하여 후속 조치를 수행할 수 있다. 예를 들어, 각각의 사용자는 특정 사용자 제스처에 응답하여 수행할 일련의 특정 조치를 식별하는 사용자 선호(126)를 지정할 수 있다(예, 사용자 프로파일에서). 예를 들어 설명하면, 사용자 선호(126)는 특정 사용자의 경우, 탭 제스처에 응답하여 제1 조치 세트가 수행되고, 특정 사용자의 경우, 스와이프 제스처에 응답하여 제2 조치 세트가 수행되며, 홀딩중의 탭-홀드-드래그 제스처에 응답하여 제3 조치 세트가 수행되는 것을 지정할 수 있다.
콘텍스트 결정 모듈(124)은 선택 텍스트(144)의 근방에 있는 추출 텍스트(142)에서 단어들을 검사하여 선택 텍스트(144)의 콘텍스트(146)를 결정할 수 있다. 예를 들어, 후속 조치 모듈(128)은 선택 텍스트(144)가 일반적인 단어인 것을 결정하고, 콘텍스트 결정 모듈(124)에 사용자 의도를 결정할 것을 명령하며, 그 사용자 의도에 기초하여 콘텍스트(146)를 결정하고, 선택 텍스트(144) 및 콘텍스트(146)에 기초하여 후속 조치를 수행할 수 있다. 예를 들어 설명하면, "뉴럴 네트워크"라는 토픽에 관한 프레제네이션을 보고 있다면, 사용자는 단어 "네트워크"를 선택하기 위해 탭 제스처를 행할 수 있다. 후속 조치 모듈(128)은 선택 텍스트(144)(예, "네트워크")가 일반적인 단어인 것을 결정하고, 콘텍스트 결정 모듈(124)에 콘텍스트(146)(예, "뉴럴")를 결정할 것을 명령하며, 선택 텍스트(144) 및 콘텍스트(146)(예, "뉴럴" 및 "네트워크")에 기초하여 후속 조치를 수행할 수 있다. 다른 예로서, 그 프레젠테이션의 저자가 "제프리 힌톤(Geoffrey Hinton)"으로 표시될 수 있다. 사용자는 단어 "제프리"를 선택하기 위해 탭 제스처를 행할 수 있다. 후속 조치 모듈(128)은 선택 텍스트(144)(예, "제프리")가 일반적인 이름인 것을 결정하고, 콘텍스트 결정 모듈(124)에 콘텍스트(146)(예, "힌톤")를 결정할 것을 명령하며, 선택 텍스트(144) 및 콘텍스트(146)(예, "제프리" 및 "힌톤")에 기초하여 후속 조치를 수행할 수 있다. 일부 경우에 있어서, 후속 조치 모듈(128)은 콘텍스트(146)에 기초하여 선택 콘텍스트(144)를 변경하고 변경된 선택 텍스트(144)에 기초하여 후속 조치를 수행할 수도 있다.
사용자가 사용자 선호(126)의 연관 세트를 갖고 있지 않고 후속 조치 모듈(128)이, 선택 텍스트(144)와 연관된 콘텍스트(146)를 결정할 필요가 없다고 결정하면, 후속 조치 모듈(128)은 하나 이상의 디폴트 조치(148)를 취할 수 있다. 이에, 후속 조치 모듈(128)은 선택 텍스트(144), 콘텍스트(146), 사용자 선호(126), 또는 디폴트 조치(148) 중 하나 이상에 기초하여 행해질 후속 조치(150)를 결정할 수 있다.
후속 조치(150)를 결정한 후에, 후속 조치 모듈(128)은 후속 조치(150) 중 하나 이상을 수행하고 후속 조치(150)를 수행한 결과(152)를 표시할 수 있다. 후속 조치(150)는 컴퓨팅 디바이스(102)에 의해 수행된 조치, 서버(104)에 의해 수행된 조치, 또는 둘다를 포함할 수 있다. 예를 들어, 후속 조치는 컴퓨팅 디바이스(102)의 메모리(112)에 저장된 사전을 이용하여 선택 텍스트(144)를 번역하는 것과, 번역된 텍스트를 서버(104) 중 하나가 호스팅하는 검색 엔진에 송신하는 것을 포함할 수 있다. 결과(152)는 번역된 텍스트와, 검색 엔진으로부터의 검색 결과를 포함할 수 있다. 다른 예로서, 후속 조치는 서버(104) 중 하나가 호스팅하는 번역 서비스를 이용하여 선택 텍스트(144)를 번역하는 것과, 그 번역 서비스로부터 번역된 텍스트를 수신하는 것과, 서버(104) 중 하나가 호스팅하는 검색 엔진에 번역된 텍스트를 송신하는 것을 포함할 수 있다. 결과(152)는 번역된 텍스트와 검색 결과를 포함할 수 있다. 또 다른 예로서, 결과(152)는 선택 텍스트 중 하나 이상을 발음하기 위해 텍스트-스피치 제너레이터(text to speech generator)를 이용하는 것을 포함할 수 있다. 텍스트-스피치 제너레이터는 컴퓨팅 디바이스(102)의 모듈 또는 서버(104) 중 하나가 호스팅하는 서비스일 수 있다.
결과(152)는 다양하게 표시될 수 있다. 예를 들어, 결과(152)는 미디어 파일(130)이 제공되고 있는 창의 적어도 일부를 덮는 팝업 창으로 표시될 수도 있다. 결과(152)는 미디어 파일(130)이 제공되고 있는 창과 동일한 창으로 표시될 수도 있다. 미디어 파일(130)은 제1 창으로 제공될 수 있고 결과(152)는 제1 창에 (예, 상, 하, 좌, 우측으로)인접한 제2 창으로 표시될 수 있다. 결과(152)가 사용자에게 표시되는 방법은 사용자 선호(126)에 의해 또는 디폴트 표시 명령어의 세트에 의해 지정될 수 있다.
사용자는 미디어 파일(130)과의 인터랙션과 유사한 방식으로 결과(152) 콘텐츠와 인터랙션할 수 있다. 예를 들어, 결과(152)는 URL(universal resource locator)를 선택함으로써 볼 수 있는(예, 스트리밍될 수 있는) 비디오 파일을 포함하는 검색 결과를 포함할 수 있다. 비디오 파일의 URL을 선택하는 것에 응답하여, 미디어 재생 모듈(114)은 그 URL과 연관된 비디오 파일의 프레젠테이션을 개시할 수 있다. 사용자는 추가 텍스트를 선택하기 위한 추가 사용자 제스처를 입력하여, 추가 후속 조치가 수행되게 하고 추가 결과를 표시하게 하는 등등을 할 수 있다. 다른 예로서, 사용자는 결과(152) 내의 단어 또는 어구를 선택하기 위한 사용자 제스처를 입력하여, 추가 후속 조치가 수행되게 하고 추가 결과를 표시하게 하는 등등을 할 수 있다.
입력 핸들러 모듈(118)은 사용자 제스처(136) 및 그 사용자 제스처(136)와 연관된 정보를 이력 파일(138)에 기록할 수 있다. 예를 들어, 미디어 파일(130)이 비디오 파일 또는 오디오 파일일 경우, 입력 핸들러 모듈(118)은 사용자 제스처(136), 위치 데이터(140), 및 시간적 위치를 식별하기 위한 타임 스탬프를 그 사용자 제스처(136)가 수신된 미디어 파일(130) 내에 기록할 수 있다. 입력 핸들러 모듈(118)은 결과(152)에 대해 수행된 제1 세트의 사용자 제스처와, 그 제1 세트의 사용자 제스처를 수행한 결과에 대해 행해진 제2 세트의 사용자 제스처 등을 기록할 수 있다. 이력 파일(138)은 사용자 제스처(136)가 입력되었을 때 사용자가 미디어 파일의 재생중의 시간적 위치를 찾는 것을 도울 수 있다. 미디어 재생 모듈(114)은 사용자에 의해 입력된 각각의 사용자 제스처를 식별하는 비디오 타임라인을 표시하여, 사용자가 그 미디어 파일(130)의 프레젠테이션을 신속하게 위치 결정할 수 있게 한다. 이력 파일은 사용자마다 및/또는 매 세션마다 개별적으로 저장될 수 있다. 사용자는 각각의 미디어 파일의 선택 텍스트에 기초하여 각각의 이력 파일의 콘텐츠의 인덱스를 탐색할 수 있다. 이력 파일(138) 각각은 강조된 정보(highlighted information) 및/또는 주석을 포함할 수도 있다. 예를 들어, 사용자가 온라인 코스(예, 비디오 및/또는 문서)를 보고 있을 때에, 사용자는 미디어 파일(130) 내의 키워드를 강조하고/하거나 그 키워드에 주석을 추가할 수 있다. 사용자는 강조 및/또는 주석을 추가할 키워드를 선택하기 위한 사용자 제스처를 이용할 수 있다. 정보 강조 및/또는 주석이 이력 파일에 함께 저장되기 때문에, 사용자는 이전에 행해진 조치(예, 자동으로 수행된 후속 조치 및/또는 사용자에 의해 행해진 조치)의 정보와 함께, 강조된 텍스트 및/또는 주석을 검색하고 대응하는 비디오를 찾을 수 있다.
그렇기 때문에, 미디어 파일에 의해 표시된 텍스트의 일부를 선택하는 사용자 제스처는 하나 이상의 후속 조치가 자동으로 수행되게 할 수 있다(예, 사람의 인터랙션 없이). 예를 들어, 사용자는 미디어 재생 모듈(114)을 이용하여 미디어 파일(130)을 볼 수 있다. 사용자는 터치스크린 디스플레이(110) 상에서 사용자 제스처(136)를 행할 수 있다. 사용자 제스처(136)의 검출에 응답하여, 사용자 제스처(136)의 위치 데이터(140)가 결정될 수 있고 하나 이상의 스크린 캡처(131)가 작성될 수 있다. 추출 텍스트(142)가 스크린 캡처(132)로부터 추출될 수 있다. 스크린 캡처(132)와 위치 데이터(140)는 선택 텍스트(144)를 식별하는데 이용될 수 있다. 일부 경우에 있어서, 선택 텍스트(144)의 콘텍스트(146)가 결정될 수도 있고/있거나 그 사용자와 연관된 사용자 선호(126)가 결정될 수도 있다. 선택 텍스트(144), 콘텍스트(146), 사용자 선호(126), 또는 디폴트 조치(148) 중 하나 이상에 기초하여 후속 조치(150)가 수행될 수 있다. 후속 조치(150)의 결과(152)는 터치스크린 디스플레이(110) 상에 자동으로 표시될 수 있다. 이런 식으로, 미디어 파일을 보면서, 사용자는 터치스크린 상에서 사용자 제스처를 행하여 다양한 조치가 자동으로 수행되게 하며 자동으로 표시되는 결과를 가질 수 있다. 예를 들어, 비디오나 문서 등의 기술적 프레젠테이션을 보는 사용자는 그 기술적 프레젠테이션에 의해 표시된 상이한 단어 또는 어구를 선택하기 위한 사용자 제스처를 이용할 수 있다. 그 사용자 제스처에 응답하여, 다양한 조치가 수행될 수 있고 그 결과가 사용자에게 자동으로 표시될 수 있다. 예를 들어, 사용자는 그 사용자 제스처에 따른 번역 및/또는 검색 결과를 자동으로 얻을 수 있다.
도 2는 일부 구현에 따른, 탭 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스(200)이다. 사용자가 미디어 파일(130) 등의 미디어 파일을 볼 수 있게 하도록 미디어 플레이어 인터페이스(202)가 제공될 수 있다.
사용자가 터치스크린 디스플레이(110) 상에서 탭 제스처(204)를 행하는 것에 응답하여, 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 결정할 수 있다. 예를 들어, 도 2에서, 사용자는 단어 "제프리"의 적어도 일부에서 또는 그 근방에서 탭 제스처(204)를 행할 수 있다. 탭 제스처(204)의 검출에 응답하여, 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 식별할 수 있다. 예를 들어, 컴퓨팅 디바이스(102)는 그 탭 제스처(204)와 연관된 위치 데이터를 결정하고 스크린 캡처를 수행할 수 있다. 컴퓨팅 디바이스(102)는 그 스크린 캡처로부터 (예, OCR를 이용하여) 텍스트를 추출하고, 그 위치 데이터 및 추출 텍스트에 기초하여 선택 텍스트(144)를 결정할 수 있다.
컴퓨팅 디바이스(102)는 선택 텍스트(144)에 기초하여 하나 이상의 조치를 수행하고 그 결과(152)를 창(208)으로 제공할 수 있다. 예를 들어, 결과(152)는 선택 텍스트(144)에 대응하는 번역(210), 선택 텍스트(144) 및/또는 번역(210)에 기초한 검색 결과(212), 및/또는 기타 후속 조치로부터의 결과를 포함할 수 있다.
일부 경우에, 두가지 인터랙션 모델이 이용될 수도 있다. 제1 인터랙선 모델은 사용자가 미디어 파일(130)을 보고 있을 때에 사용자 제스처를 수신할 경우에 이용될 수 있다. 사용자가 미디어 콘텐츠(130)를 보면서 사용자 제스처를 행할 경우, 하나 이상의 디폴트 조치가 수행될 수 있고, 디폴트 조치의 결과는 창(208)으로 표시될 수 있다. 제2 인터랙션 모델은 창(208)으로 디폴트 조치의 결과를 보는 동안에 수신된 사용자 제스처를 위해 이용될 수 있다. 예를 들어, 제1 인터랙션 모델은 선택된 텍스트를 소스 언어에서 타깃 언어로 번역하는 것과, 번역된 텍스트를 이용해 검색을 수행하는 것을 포함할 수 있다. 제2 인터랙션 모델은 선택된 텍스트를 이용해 검색을 수행하는 것을 포함할 수 있다. 이 예에서, 선택된 텍스트의 번역이 제1 인터랙션 모델에서는 수행되지만 제2 인터랙션 모델로는 수행되지 않는다. 제1 인터랙션 모델과 제2 인터랙션 모델은 사용자 프로파일, 사용자 선호 파일, 또는 유사한 사용자 특유의 맞춤화 기술을 이용해서 지정될 수 있다.
이에, 탭 제스처(204)에 응답하여, 컴퓨팅 디바이스는 선택 텍스트(144)로서 단어(예, "제프리")를 자동으로 선택할 수 있다. 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 이용하여 하나 이상의 후속 조치를 자동으로 수행할 수 있다. 컴퓨팅 디바이스(102)는 자동으로 후속 조치의 결과(152)을 창(208)으로 표시할 수 있다.
도 3은 일부 구현에 따른, 스와이프 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스(300)이다. 사용자가 터치스크린 디스플레이(110) 상에서 스와이프 제스처(302)를 행하는 것에 응답하여, 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 결정할 수 있다. 예를 들어, 도 3에서, 사용자는 어구 "제프리 힌톤"의 적어도 일부에서 또는 그 근방에서 스와이프 제스처(302)를 행할 수 있다.
스와이프 제스처(302)의 검출에 응답하여, 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 식별할 수 있다. 예를 들어, 컴퓨팅 디바이스(102)는 그 스와이프 제스처(302)와 연관된 위치 데이터(예, 시작 위치와 종료 위치)를 결정하고 스크린 캡처를 수행할 수 있다. 예를 들어, 미디어 파일(130)이 비디오 데이터를 포함한다면, 비디오 그래버 모듈이 그 비디오 데이터의 하나 이상의 프레임을 캡처링할 수 있다. 컴퓨팅 디바이스(102)는 그 스크린 캡처로부터 (예, OCR를 이용하여) 텍스트를 추출하고, 그 위치 데이터 및 추출 텍스트에 기초하여 선택 텍스트(144)를 결정할 수 있다.
컴퓨팅 디바이스(102)는 선택 텍스트(144)에 기초하여 하나 이상의 조치를 수행하고 그 결과(152)를 창(208)으로 제공할 수 있다. 예를 들어, 결과(152)는 선택 텍스트(144)에 대응하는 번역, 선택 텍스트(144) 및/또는 번역에 기초한 검색 결과, 및/또는 기타 후속 조치로부터의 결과를 포함할 수 있다.
전술한 바와 같이, 두가지 인터랙션 모델이 이용될 수도 있다. 제1 인터랙선 모델은 사용자가 미디어 파일(130)을 보고 있을 때에 사용자 제스처를 수신할 경우에 이용될 수 있다. 사용자가 미디어 콘텐츠(130)를 보면서 사용자 제스처를 행할 경우, 하나 이상의 디폴트 조치가 수행될 수 있고, 디폴트 조치의 결과는 창(208)으로 표시될 수 있다. 제2 인터랙션 모델은 창(208)으로 디폴트 조치의 결과를 보는 동안에 수신된 사용자 제스처를 위해 이용될 수 있다.
이에, 스와이프 제스처(302)에 응답하여, 컴퓨팅 디바이스는 선택 텍스트(144)로서 어구(예, "제프리 힌톤")를 자동으로 선택할 수 있다. 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 이용하여 하나 이상의 후속 조치를 자동으로 수행할 수 있다. 컴퓨팅 디바이스(102)는 자동으로 후속 조치의 결과(152)을 창(208)으로 표시할 수 있다.
도 4는 일부 구현에 따른, 탭-홀드 제스처의 수신을 도시하는, 터치스크린 디스플레이 사용자 인터페이스를 구비한 예시적인 컴퓨팅 디바이스(400)이다. 사용자가 터치스크린 디스플레이(110) 상에서 탭-홀드 제스처(402)를 행하는 것에 응답하여, 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 결정할 수 있다. 예를 들어, 도 4에서, 사용자는 단어 "완전"의 적어도 일부에서 또는 그 근방에서 탭-홀드 제스처(402)를 행할 수 있다. 탭-홀드 제스처(402)의 검출에 응답하여, 컴퓨팅 디바이스(102)는 일부 경우에 있어서, 사용자가 다수의 프레임(또는 다수의 페이지)으로 표시된 텍스트를 선택하게 할 수 있도록 미디어 파일(130)의 재생(또는 표시)을 일시정지할 수 있다.
컴퓨팅 디바이스(102)는 홀딩중의 드래그 제스처(404)를 수신하기 위해 미리 정해진 시간을 대기할 수 있다. 사용자가 미리 정해진 시간 내에 홀딩중의 드래그 제스처(404)를 입력하지 않으면, 컴퓨팅 디바이스(102)는 탭-홀드 제스처(402)를 탭 제스처(204)로서 취급할 수 있다. 사용자가 미리 정해진 시간 내에 홀딩중의 드래그 제스처(404)를 입력하면, 컴퓨팅 디바이스(102)는 홀딩중의 드래그 제스처(404)가 정지할 때까지, 예컨대 사용자가 홀드를 해제할 때까지 미디어 파일(130)의 프레젠테이션을 진행시킬 수 있다(예, 추가 페이지를 표시하거나 추가 프레임을 재생시킬 수 있다).
컴퓨팅 디바이스(102)는 탭-홀드 제스처(402) 및 홀딩중의 드래그 제스처(404)와 연관된 위치 데이터(예, 하나 이상의 시작 위치 및 종료 위치)를 결정할 수 있다. 컴퓨팅 디바이스(102)는 미디어 파일(130)의 하나 이상의 스크린 캡처를 캡처링할 수 있다. 예를 들어, 컴퓨팅 디바이스(102)가 홀딩중의 드래그 제스처(404) 동안에 미디어 파일(130)의 프레젠테이션을 진행시키면, 컴퓨팅 디바이스(102)는 다수 스크린의 스크린 샷을 캡처링할 수 있다. 다수의 스크린 캡처는 탭-홀드 제스처(402)가 행해진 최초 스크린 및 추가 스크린을 포함할 수 있고, 홀딩중의 드래그 제스처(404)가 끝나는(예, 드래깅이 정지되거나 홀드가 해제되는) 최종 스크린까지도 포함할 수 있다. 컴퓨팅 디바이스(102)는 스크린 캡처로부터 (예, OCR를 이용하여) 텍스트를 추출하고, 제스처(402, 404)의 위치 데이터 및 추출 텍스트에 기초하여 선택 텍스트(144)를 결정할 수 있다.
컴퓨팅 디바이스(102)는 선택 텍스트(144)에 기초하여 하나 이상의 조치를 수행하고 그 결과(152)를 창(208)으로 제공할 수 있다. 예를 들어, 결과(152)는 선택 텍스트(144)에 대응하는 번역(210), 선택 텍스트(144) 및/또는 번역(210)에 기초한 검색 결과(212), 및/또는 기타 후속 조치로부터의 결과를 포함할 수 있다.
이에, 제스처(402, 404)에 응답하여, 컴퓨팅 디바이스는 선택 텍스트(144)로서 다수의 단어(예, "완전 순환 네트워크")를 자동으로 선택할 수 있다. 일부 경우에 있어서, 선택 텍스트(144)는 다수의 스크린, 예컨대 비디오의 다수의 프레임, 문서의 다수의 페이지 등에 걸쳐 있을 수 있다. 컴퓨팅 디바이스(102)는 선택 텍스트(144)를 이용하여 하나 이상의 후속 조치를 자동으로 수행할 수 있다. 컴퓨팅 디바이스(102)는 자동으로 후속 조치의 결과(152)를 창(208)으로 표시할 수 있다.
예시적인 프로세스
도 5, 도 6 및 도 7의 흐름도에 있어서, 각각의 블록은 하드웨어로, 소프트웨어로, 또는 이들의 조합으로 구현될 수 있는 하나 이상의 동작을 대표한다. 소프트웨어의 상황에서는, 블록들은, 하나 이상의 프로세서에 의해 실행될 때에, 프로세스로 하여금 언급한 동작을 수행하게 하는 컴퓨터 실행 가능한 명령어를 나타낸다. 일반적으로, 컴퓨터 실행 가능한 명령어는 특정 기능을 수행하거나 특정 추상 데이터 타입을 구현하는, 루틴, 프로그램, 오브젝트, 모듈, 컴포넌트, 데이터 구조 등을 포함한다. 블록들을 설명하는 순서는 제한으로 해석되는 것을 의도하지 않으며, 설명하는 임의 개의 동작들은 그 프로세스를 구현하기 위해 임의의 순서로 및/또는 병렬로 조합될 수도 있다. 설명의 목적상, 프로세스(500, 600, 700)에 대해 아키텍처(100, 200, 300, 400)를 참조하여 설명하지만, 전술한 바와 같이, 다른 모델, 프레임워크, 시스템 및 환경이 이들 프로세스를 구현할 수도 있다.
도 5는 일부 구현에 따른 탭 또는 스와이프 제스처의 검출을 포함하는 예시적인 프로세스(500)의 흐름도이다. 프로세스(500)는 반드시 그렇게 할 필요는 없지만, 도 1, 도 2, 도 3 또는 도 4의 컴퓨팅 디바이스(102)에 의해 수행될 수 있다.
502에서, 사용자 제스처(예, 탭 제스처 또는 스와이프 제스처)가 검출될 수 있다. 예를 들어, 도 1에서, 입력 핸들러 모듈(118)이 사용자 제스처(136)를 검출할 수 있다. 사용자 제스처(136)는 도 2의 탭 제스처(204) 또는 도 3의 스와이프 제스처(302)를 포함할 수 있다.
504에서, 디스플레이 상에 표시된 미디어 파일의 일부의 스크린 캡처가 작성될 수 있다. 예를 들어, 도 1에서, 사용자 제스처(136)의 검출에 응답하여, 입력 핸들러 모듈(118)은 터치스크린 디스플레이(110) 상에 표시되는 미디어 파일(130)의 적어도 일부를 캡처링한 스크린 캡처(132)를 작성할 것을 스크린 캡처 모듈(116)에 명령할 수 있다.
506에서, 탭 제스처 또는 스와이프 제스처와 연관된 위치 데이터가 결정될 수 있다. 예를 들어, 도 1에서, 입력 핸들러 모듈(118)이 사용자 제스처(136)와 연관된 위치 데이터(140)를 검출할 수 있다. 도 2의 탭 제스처(204)의 경우, 위치 데이터(140)는 그 탭 제스처(204)가 일어난 터치스크린(110) 상의 위치의 x 및 y 좌표를 포함할 수 있다. 도 3의 스와이프 제스처(302)의 경우, 위치 데이터(140)는 그 스와이프 제스처(302)가 일어난 터치스크린(110) 상의 위치의 시작 좌표 및 종료 좌표를 포함할 수 있다.
508에서, 스크린 캡처로부터 텍스트가 추출될 수 있고 위치 데이터를 이용하여 선택 텍스트가 결정될 수 있다. 예를 들어, 도 1에서, 텍스트 추출 모듈(120)이 OCR을 이용하여 스크린 캡처(132)로부터 추출 텍스트(142)를 생성할 수 있다. 텍스트 인식 모듈(122)은 위치 데이터(140)를 스크린 캡처(132) 및 추출 텍스트(142)와 상관시킴으로써 선택 텍스트(144)를 결정할 수 있다.
510에서, 사용자 선호가 결정될 수 있다. 예를 들어, 도 1에서, 후속 조치 모듈(128)이 사용자 선호(126)를 이용하여 사용자 선호를 결정할 수 있다.
512에서, 선택 텍스트와 연관된 콘텍스트가 결정될 수 있다. 예를 들어, 도 1에서, 선택 텍스트(144)와 연관된 콘텍스트(146)는 그 선택 텍스트(144)의 최근방에 있는 단어들을 검사함으로써 추출 텍스트(142)로부터 결정될 수 있다.
514에서, 하나 이상의 후속 조치가 자동으로 수행될 수 있다. 516에서, 하나 이상의 후속 조치를 수행한 결과가 표시될 수 있다. 예를 들어, 도 1에서, 후속 조치 모듈(128)이 자동으로 후속 조치(150)를 수행하고 자동으로 결과(152)를 표시할 수 있다. 후속 조치(150)는 선택 텍스트(144), 콘텍스트(146), 디폴트 조치(148), 또는 사용자 선호(126) 중 하나 이상에 기초하여 선택될 수 있다.
사용자가 결과를 볼 때에 사용자 제스처를 행하면, 프로세스는 502로 이행된다. 예를 들어, 사용자는 표시된 결과로부터 텍스트를 선택하기 위한 사용자 제스처를 행할 수 있다. 컴퓨팅 디바이스(102)는 그 사용자 제스처를 검출하고, 스크린 캡처를 수행하며, 캡처링된 스크린으로부터 텍스트를 추출하고, 사용자 제스처와 연관된 위치 데이터를 결정하며, 선택 텍스트를 결정하기 위해 위치 데이터를 추출 텍스트와 상관시킬 수 있다. 컴퓨팅 디바이스는 선택 텍스트를 이용하여 하나 이상의 추가 후속 조치를 수행하고 그 추가 조치를 수행한 추가 결과를 표시할 수 있다. 사용자는 후속 조치 및 결과의 내포된 레벨 내에서, 추가 결과를 보거나 등등을 하면서 다른 사용자 제스처를 수행할 수 있다.
이에, 미디어 파일의 프레젠테이션 동안, 사용자 제스처는 미디어 파일에 의해 표시되는, 단어 또는 어구 등의 텍스트가 선택되게 할 수 있다. 다양한 조치가 선택 텍스트를 이용해서 자동으로 수행될 수 있고 그 결과가 자동으로 사용자에게 표시될 수 있다. 이런 식으로, 사용자는 미디어 파일의 프레젠테이션중에 표시되는 단어나 어구에 관한 추가 정보를 쉽게 얻을 수 있다.
도 6은 일부 구현에 따른 탭-홀드 제스처의 검출을 포함하는 예시적인 프로세스(600)의 흐름도이다. 프로세스(600)는 반드시 그렇게 할 필요는 없지만, 도 1, 도 2, 도 3 또는 도 4의 컴퓨팅 디바이스(102)에 의해 수행될 수 있다.
602에서, 미디어 파일의 프레젠테이션중에 탭-홀드 제스처가 검출될 수 있다. 예를 들어, 도 1에서, 입력 핸들러 모듈(134)이 사용자 제스처(136)를 포함하는 사용자 입력(134)을 검출할 수 있다. 사용자 제스처(136)는 도 4의 탭-홀드 제스처(402)를 포함할 수 있다.
604에서, 미디어 파일의 프레젠테이션(예, 재생)이 일시정지될 수 있다. 606에서, 최초 스크린이 캡처링될 수 있다. 예를 들어, 도 1에서, 사용자 제스처(136)가 탭-홀드 제스처(예, 도 4의 탭-홀드 제스처(402))라는 결정에 응답하여, 입력 핸들러 모듈(118)은 미디어 파일(130)의 재생을 일시정지할 것을 미디어 재생 모듈(114)에 명령할 수 있다. 입력 핸들러 모듈(118)은 탭-홀드 제스처가 일어난 최초 스크린을 캡처링할 것을 스크린 캡처 모듈(116)에 명령할 수 있다.
608에서, 추가 사용자 입력(예, 홀딩중의 드래그 제스처)가 검출될 수 있다. 610에서, 추가 스크린이 캡처링될 수 있다. 예를 들어, 도 1에서, 입력 핸들러 모듈(118)은 사용자 제스처(136)가 홀딩중의 드래그 제스처(404)를 포함하는 것을 검출할 수 있다. 이에 따라, 입력 핸들러 모듈(118)은 홀딩중의 드래그 제스처가 완료될 때까지(예, 드래깅이 정지하거나 홀드가 해제될 때까지) 미디어 파일(130)의 추가 부분을 제공할 것을 미디어 재생 모듈(114)에 명령할 수 있다. 미디어 재생 모듈(114)이 미디어 파일(130)의 추가 부분을 제공하고 있는 동안, 입력 핸들러 모듈(118)은 홀딩중의 드래그 제스처가 완료될 때까지 추가 스크린을 캡처링할 것을 스크린 캡처 모듈(116)에 명령할 수 있다.
612에서, 스크린 캡처로부터 텍스트가 추출될 수 있고 위치 데이터가 결정될 수 있다. 614에서, 스크린 캡처 및 위치 데이터에 기초하여 선택 텍스트가 결정될 수 있다. 예를 들어, 도 1에서, 텍스트 추출 모듈(120)은 캡처링된 스크린(예, 최초 스크린 및 추가 스크린)으로부터 텍스트를 추출할 수 있다. 입력 핸들러 모듈(118)은 탭-홀드 제스처 및 홀딩중의 드래그 제스처와 연관된 위치 데이터(140)를 결정할 수 있다. 텍스트 인식 모듈(122)은 스크린 캡처(132), 위치 데이터(140), 또는 캡처링된 텍스트(142) 중 하나 이상에 기초하여 선택 텍스트(144)를 결정할 수 있다.
616에서, 선택 텍스트와 연관된 콘텍스트가 결정될 수 있다. 일부 경우에 있어서, 선택 텍스트(144)가 애매하거나 흔하게 발생하는 단어인 경우라면, 콘텍스트 결정 모듈(124)은 콘텍스트(146)를 결정할 수 있다. 콘텍스트(146)는 선택 텍스트(144) 근방의 부분과 같은, 추출 텍스트(142)의 하나 이상의 부분을 포함할 수 있다.
618에서, 하나 이상의 후속 조치가 자동으로 수행될 수 있다. 620에서, 후속 조치의 결과가 표시될 수 있다. 예를 들어, 도 1에서, 후속 조치 모듈(128)이 자동으로 후속 조치(150)를 수행하고 자동으로 결과(152)를 표시할 수 있다. 후속 조치(150)는 선택 텍스트(144), 콘텍스트(146), 디폴트 조치(148), 또는 사용자 선호(126) 중 하나 이상에 기초하여 선택될 수 있다.
사용자가 결과를 볼 때에 사용자 제스처를 행하면, 프로세스는 602로 이행될 수 있다. 예를 들어, 사용자는 표시된 결과로부터 텍스트를 선택하기 위한 사용자 제스처를 행할 수 있다. 컴퓨팅 디바이스(102)는 그 사용자 제스처를 검출하고, 스크린 캡처링을 수행하며, 캡처링된 스크린으로부터 텍스트를 추출하고, 사용자 제스처와 연관된 위치 데이터를 결정하며, 선택 텍스트를 결정하기 위해 위치 데이터를 추출 텍스트와 상관시킬 수 있다. 컴퓨팅 디바이스는 선택 텍스트를 이용하여 하나 이상의 추가 후속 조치를 수행하고 그 추가 조치를 수행한 추가 결과를 표시할 수 있다. 사용자는 후속 조치 및 결과의 내포된 레벨 내에서, 추가 결과를 보거나 등등을 하면서 다른 사용자 제스처를 수행할 수 있다.
이에, 미디어 파일의 프레젠테이션 동안, 사용자 제스처는 미디어 파일에 의해 표시되는, 어구 등의 텍스트가 선택되게 할 수 있다. 그 어구는 미이더 파일의 다수의 페이지(또는 프레임)에 걸쳐 있을 수 있다. 다양한 조치가 선택 텍스트를 이용해서 자동으로 수행될 수 있고 그 결과가 자동으로 사용자에게 표시될 수 있다. 이런 식으로, 사용자는 미디어 파일의 프레젠테이션중에 표시되는 어구에 관한 추가 정보를 쉽게 얻을 수 있다.
예시적인 컴퓨팅 디바이스 및 환경
도 7은 본 명세서에서 설명한 모듈 및 기능을 구현하기 위해 이용될 수 있는 컴퓨팅 디바이스(700) 및 환경의 예시적인 구성을 도시하고 있다. 예를 들어, 컴퓨팅 디바이스(700)는 컴퓨팅 디바이스(102), 및 서버(104) 중 하나 이상을 대표할 수 있다. 컴퓨팅 디바이스(700)는 하나 이상의 프로세서(702), 메모리(704), 하나 이상의 통신 인터페이스(706), 디스플레이 디바이스(708)(예, 도 1의 터치스크린 디스플레이(110)), 기타 입출력(I/O) 디바이스(710), 및 하나 이상의 대용량 스토리지 디바이스(712)를 포함할 수 있고, 이들은 시스템 버스(714) 또는 기타 적절한 접속을 통해 서로 통신할 수 있다.
프로세서(702)는 단일 프로세싱 유닛 또는 다수의 프로세싱 유닛을 포함할 수 있고, 이들 모두는 단일 또는 복수의 컴퓨팅 유닛 또는 복수의 코어를 포함할 수 있다. 프로세서(702)는 하나 이상의 마이크로프로세서, 마이크로컴퓨터, 마이크로컨트롤러, 디지털 신호 프로세서, 중앙 처리 장치, 상태 머신, 로직 회로, 및/또는 동작 명령어에 기초하여 신호를 조작할 수 있는 임의의 디바이스로서 구현될 수 있다. 기타 능력 중에서도, 프로세서(702)는 메모리(704), 대용량 스토리지 디바이스(712), 또는 기타 컴퓨터 판독 가능한 매체에 저장된 컴퓨터 판독 가능한 명령어를 페치(fetch)하여 실행하도록 구성될 수 있다.
메모리(704)와 대용량 스토리지 디바이스(712)는 전술한 다양한 기능을 수행하기 위해 프로세서(702)에 의해 실행되는 명령어를 저장하는 컴퓨터 저장 매체의 예이다. 예를 들어, 메모리(704)는 일반적으로 휘발성 메모리 및 비휘발성 메모리(예, RAM, ROM 등)를 둘다 포함할 수 있다. 또한, 대용량 스토리지 디바이스(712)는 일반적으로 하드 디스크 드라이브, 솔리드 스테이트 드라이브, 외부 및 분리식 드라이브를 포함하는 분리식 매체, 메모리 카드, 플래시 메모리, 플로피 디스크, 광 디스크(예, CD, DVD), 스토리지 어레이, 네트워크 부착형 스토리지, 스토리지 영역 네트워크 등을 포함할 수 있다. 메모리(704)와 대용량 스토리지 디바이스(712) 모두는 본 명세서에서 일괄적으로 메모리 또는 컴퓨터 저장 매체로서 칭해질 수 있으며, 본 명세서의 구현에서 설명한 동작 및 기능을 수행하도록 구성된 특정 머신으로서 프로세서(702)에 의해 실행될 수 있는 컴퓨터 프로그램 코드와 같은, 컴퓨터 판독 가능하고 프로세서 실행 가능한 프로그램 명령어를 저장할 수 있는 매체일 수 있다.
또한 컴퓨팅 디바이스(700)는 전술한 바와 같이, 네트워크, 직접 접속 등을 통해 기타 디바이스와 데이터를 교환하는 하나 이상의 통신 인터페이스(706)를 포함할 수 있다. 통신 인터페이스(706)는 유선 네트워크(예, LAN, 케이블 등)와 무선 네트워크(예, WLAN, 셀룰러, 위성 등), 인터넷 등을 포함한, 폭넓은 각종의 네트워크 및 프로토콜 타입 내의 통신을 용이하게 할 수 있다. 통신 인터페이스(706)는 스토리지 어레이, 네트워크 부착형 스토리지, 스토리지 영역 네트워크 등의 외부 스토리지(도시 생략)와의 통신을 제공할 수도 있다.
일부 구현에서 정보 및 이미지를 사용자에게 표시하기 위해 모니터 등의 디스플레이 디바이스(708)가 포함될 수도 있다. 기타 I/O 디바이스(710)가 사용자로부터 다양한 입력을 수신하고 사용자에게 다양한 출력을 제공하는 디바이스일 수 있고, 키보드, 리모콘, 마우스, 프린터, 오디오 입출력 디바이스 등을 포함할 수 있다.
메모리(704)는 본 명세서에서 설명한 구현에 따라 미디어 파일의 프레젠테이션중에 수신된 사용자 제스처에 응답하여 자동으로 후속 조치를 수행하는 모듈 및 컴포넌트일 수 있다. 설명한 예에 있어서, 메모리(704)는 미디어 재생 모듈(114), 스크린 캡처 모듈(116), 입력 핸들러 모듈(118), 문자 추출 모듈(120), 문자 인식 모듈(122), 콘텍스트 결정 모듈(124), 및 후속 조치 모듈(128)을 포함한다.
메모리(704)는 또한 미디어 파일(130), 사용자 입력(134), 사용자 선호(126), 및 결과(152) 등의 본 명세서에서 설명한 기타 데이터 및 데이터 구조도 포함할 수 있다. 메모리(704)는 운영 체제, 드라이버, 통신 소프트웨어 등의 하나 이상의 기타 모듈(716)도 포함할 수 있다. 메모리(704)는 전술한 기능을 수행하면서 저장된 데이터 및 기타 모듈(716)에 의해 이용된 데이터 등의 기타 데이터(718)도 포함할 수 있다.
본 명세서에서 설명한 예시적인 시스템 및 컴퓨팅 디바이스는 일부 구현에 적합한 예시일 뿐이며, 본 명세서에서 설명한 프로세스, 컴포넌트 및 특징을 구현할 수 있는 환경, 아키텍처, 및 프레임워크의 이용 범위 또는 기능에 대하여 어떤 제한을 제시하려고 의도된 것이 아니다. 이에, 본 명세서의 구현은 다수의 환경 또는 아키텍처에서 동작 가능하며, 범용 및 전문용 컴퓨팅 시스템, 또는 프로세싱 능력을 가진 기타 디바이스에서 구현될 수 있다. 일반적으로, 도면을 참조하여 설명한 기능의 일부는 소프트웨어, 하드웨어(예, 고정된 논리 회로), 또는 이들 구현의 조합을 이용해서 구현될 수 있다. 본 명세서에서 사용되는 용어 "모듈", "메커니즘", 또는 "컴포넌트"는 일반적으로 소프트웨어, 하드웨어, 또는 규정된 기능을 구현하도록 구성될 수 있는 소프트웨어와 하드웨어의 조합을 나타낸다. 예를 들어, 소프트웨어 구현의 경우, 용어 "모듈", "메커니즘", 또는 "컴포넌트"는 프로세싱 디바이스 또는 디바이스들(예, CPU들 또는 프로세서들) 상에서 실행될 때에 지정된 태스크 또는 동작을 수행하는 프로그램 코드(및/또는 선언 타입(declarative-type) 명령어)를 나타낼 수 있다. 프로그램 코드는 하나 이상의 컴퓨터 판독 가능한 디바이스 또는 기타 컴퓨터 스토리지 디바이스에 저장될 수 있다. 이에, 본 명세서에서 설명한 프로세스, 컴포넌트 및 모듈은 컴퓨터 프로그램 제품에 의해 구현될 수도 있다.
본 명세서에서 이용되는 "컴퓨터 판독 가능한 매체"는 컴퓨터 저장 매체는 포함하지만 통신 매체를 배제한다. 컴퓨터 저장 매체는 컴퓨터 판독 가능한 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등의 정보를 저장하기 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 포함한다. 컴퓨터 저장 매체는 RAM(random access memory), ROM(read only memory), EEPROM(electrically erasable programmable ROM), 플래시 메모리 또는 기타 메모리 기술, 컴팩트 디스크 ROM(CD-ROM), 디지털 다용도 디스크(digital versatile disk, DVD) 또는 기타 광학 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지 또는 기타 자기 스토리지 디바이스, 또는 컴퓨팅 디바이스에 의해 액세스하기 위한 정보를 저장하는데 이용될 수 있는 기타 비전송 매체를 포함하나, 이들에 한정되지는 않는다.
반면에, 통신 매체는 컴퓨터 판독 가능한 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파 등의 변조된 데이터 신호로 된 기타 데이터를 포함할 수 있다. 본 명세서에서 정의하는 바와 같이, 컴퓨터 저장 매체는 통신 매체를 포함하지 않는다.
더욱이, 본 개시내용은 도면에서 설명하고 예시한 바와 같이, 다양한 구현예를 제공한다. 그러나, 본 개시내용은 본 명세서에 설명하고 예시한 구현에 한정되는 것이 아니라, 당업자라면 알고 있거나 알게 되는 다른 구현까지도 확장될 수 있다. 본 명세서에서 언급된 "일 구현", "본 구현", "이들 구현" 또는 "일부 구현"은 적어도 하나의 구현에 포함되는 설명한 특정 특징, 구조 또는 특성을 의미하며, 본 명세서 내의 다양한 곳에서의 이들 어구의 등장이 반드시 동일한 구현을 칭하는 것은 아니다.
결론
구조적인 특징 및/또는 방법론적인 액트 특유의 언어로 청구 대상을 설명하였지만, 첨부하는 청구범위에서 규정되는 청구 대상은 전술한 특징 또는 액트에 한정되지 않는다. 그보다는, 전술한 특정 특징 및 액트는 청구범위를 구현하는 실시예로서 개시되어 있다. 본 개시내용은 개시하는 구현의 개조 또는 변형을 일부 그리고 전부 포함하는 것으로 의도되며, 이하의 청구범위는 명세서에 개시한 특정 구현에 한정되는 것으로 해석되어서는 안된다.

Claims (20)

  1. 컴퓨터-구현 방법에 있어서,
    터치스크린 디스플레이 상에, 사진을 포함하는 미디어를 표시하는 단계;
    상기 터치스크린 디스플레이 상에서 행해진 사용자 제스처를 검출하는 단계;
    상기 사용자 제스처에 의해 선택된 텍스트를 결정하는 단계;
    상기 사용자 제스처에 의해 선택된 텍스트에 적어도 부분적으로 기초하여 사용자 의도를 결정하는 단계;
    상기 사용자 의도에 기초하여 상기 사용자 제스처에 의해 선택된 텍스트와 연관된 콘텍스트를 결정하는 단계로서, 상기 콘텍스트는 상기 미디어에서 캡처된 추가 텍스트를 포함하고, 상기 추가 텍스트는 상기 사용자 제스처에 의해 선택된 텍스트와 연관되는 것인, 상기 콘텍스트 결정 단계; 및
    상기 사용자 제스처에 의해 선택된 텍스트에 적어도 부분적으로 기초하고 그리고 상기 콘텍스트에 적어도 부분적으로 기초하여, 자동으로 하나 이상의 후속 조치(follow-up action)를 수행하는 단계
    를 포함하는 컴퓨터-구현 방법.
  2. 제1항에 있어서,
    상기 미디어로부터 추가 텍스트를 추출하여 추출된 텍스트를 생성하는 단계;
    상기 사용자 제스처와 연관된 위치 데이터(positional data)를 결정하는 단계; 및
    상기 추출된 텍스트의 상기 위치 데이터와의 상관에 기초하여 상기 사용자 제스처에 의해 선택된 텍스트를 결정하는 단계
    를 더 포함하는 컴퓨터-구현 방법.
  3. 제1항에 있어서,
    하나 이상의 사용자 선호(preference)를 결정하는 단계; 및
    상기 하나 이상의 사용자 선호에 기초하여 상기 하나 이상의 후속 조치를 선택하는 단계를 더 포함하는 컴퓨터-구현 방법.
  4. 제1항에 있어서,
    하나 이상의 디폴트 조치를 결정하는 단계; 및
    상기 하나 이상의 디폴트 조치에 기초하여 상기 하나 이상의 후속 조치를 선택하는 단계를 더 포함하는 컴퓨터-구현 방법.
  5. 제1항에 있어서,
    상기 사용자 제스처가 탭 제스처를 포함한다고 결정하는 단계; 및
    상기 사용자 제스처에 의해 선택된 텍스트가 한 단어를 포함한다고 결정하는 단계를 더 포함하는 컴퓨터-구현 방법.
  6. 제1항에 있어서,
    상기 사용자 제스처가 스와이프(swipe) 제스처를 포함한다고 결정하는 단계; 및
    상기 사용자 제스처에 의해 선택된 텍스트가 하나 이상의 단어를 포함한다고 결정하는 단계를 더 포함하는 컴퓨터-구현 방법.
  7. 제1항에 있어서,
    상기 사용자 제스처가 홀딩중의 드래그 제스처(drag while holding gesture)를 포함하는 탭-홀드 제스처(tap and hold gesture)를 포함한다고 결정하는 단계; 및
    상기 사용자 제스처에 의해 선택된 텍스트가 복수의 단어를 포함한다고 결정하는 단계를 더 포함하는 컴퓨터-구현 방법.
  8. 컴퓨터 구현 방법(computer implemented method)에 있어서,
    터치스크린 디스플레이 상에 제1 이미지의 하나 이상의 부분을 표시하는 단계;
    상기 터치스크린 디스플레이에 의해, 사용자 제스처를 포함하는 입력을 수신하는 단계;
    상기 사용자 제스처에 기초하여 상기 제1 이미지에서 선택된 텍스트를 식별하는 단계;
    상기 사용자 제스처가,
    탭-홀드 제스처와,
    홀딩중의 드래그 제스처
    를 포함한다고 결정하는 단계와,
    상기 선택된 텍스트가, 상기 제1 이미지 및 제2 이미지에 포함된 복수의 단어를 포함한다고 결정하는 단계; 및
    상기 선택된 텍스트에 적어도 부분적으로 기초하여 자동으로 적어도 하나의 후속 조치를 수행하는 단계
    를 포함하는 컴퓨터 구현 방법.
  9. 제8항에 있어서,
    상기 터치스크린 디스플레이에 의해, 탭 제스처를 포함하는 제2 입력을 수신하는 단계; 및
    상기 제1 이미지 내의 상기 선택된 텍스트가 한 단어를 포함한다고 결정하는 단계를 더 포함하는 컴퓨터 구현 방법.
  10. 제8항에 있어서,
    상기 터치스크린 디스플레이에 의해, 스와이프 제스처를 포함하는 제3 입력을 수신하는 단계; 및
    상기 선택된 텍스트가 상기 제1 이미지 내의 2개 이상의 단어를 포함한다고 결정하는 단계를 더 포함하는 컴퓨터 구현 방법.
  11. 제8항에 있어서,
    상기 탭-홀드 제스처는 상기 제1 이미지가 선택되게 하고,
    상기 홀딩중의 드래그 제스처는 상기 제1 이미지 및 상기 제2 이미지의 텍스트의 선택이 상기 선택된 텍스트를 생성하게 하는 것인, 컴퓨터 구현 방법.
  12. 제8항에 있어서,
    상기 선택된 텍스트를 소스 언어에서 타겟 언어로 번역하여 번역된 텍스트를 생성하는 단계를 더 포함하는 컴퓨터 구현 방법.
  13. 제8항에 있어서,
    상기 선택된 텍스트를 포함하는 검색 질의(search query)를 검색 엔진에 제출하는 단계를 더 포함하는 컴퓨터 구현 방법.
  14. 제12항에 있어서,
    번역된 텍스트를 포함하는 검색 질의를 검색 엔진에 제출하는 단계를 더 포함하는 컴퓨터 구현 방법.
  15. 제8항에 있어서,
    상기 터치스크린 디스플레이 상의 상기 제1 이미지를 적어도 부분적으로 덮는 팝업 창에서, 상기 적어도 하나 이상의 후속 조치를 자동으로 수행하는 것의 결과를 표시하는 단계를 더 포함하는 컴퓨터 구현 방법.
  16. 컴퓨팅 디바이스에 있어서,
    터치스크린 디스플레이;
    하나 이상의 프로세서; 및
    명령어들을 저장한 메모리
    를 포함하고, 상기 명령어들은 동작들을 수행하도록 하나 이상의 프로세서에 의해 실행 가능하며,
    상기 동작들은,
    상기 터치스크린 디스플레이 상에 이미지를 표시하는 동작;
    상기 터치스크린 디스플레이 상에서 행해진 사용자 제스처를 검출하는 동작;
    상기 사용자 제스처에 의해 선택된 텍스트를 포함하는 선택된 텍스트를 결정하는 동작;
    상기 선택된 텍스트로부터 미리 결정된 거리 내에 있는 추가 텍스트에 기초하여 상기 선택된 텍스트와 연관된 콘텍스트를 결정하는 동작;
    상기 추가 텍스트에 적어도 부분적으로 기초해서 상기 선택된 텍스트를 수정하여 수정된 텍스트를 생성하는 동작; 및
    상기 수정된 텍스트에 기초하여 자동으로 후속 조치를 수행하는 동작
    을 포함하는 것인, 컴퓨팅 디바이스.
  17. 제16항에 있어서, 상기 동작들은, 서버로부터 상기 이미지를 수신하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  18. 제16항에 있어서, 상기 동작들은:
    상기 터치스크린 디스플레이에 대한 상기 사용자 제스처의 위치를 식별하는 위치 데이터를 결정하는 동작;
    광학 문자 인식(optical character recognition)을 사용해, 상기 이미지로부터 추가 텍스트를 추출하여 추출된 텍스트를 생성하는 동작; 및
    상기 선택된 텍스트를 식별하기 위해 상기 추출된 텍스트를 상기 위치 데이터와 상관시키는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  19. 제16항에 있어서, 상기 동작들은,
    상기 선택된 텍스트에 기초하여 후속 조치를 자동으로 수행함으로 인한 결과를 표시하는 동작;
    상기 결과의 부분을 선택하는 추가 사용자 제스처를 수신하는 동작;
    상기 결과의 부분에 기초하여 추가 후속 조치를 수행하는 동작; 및
    상기 추가 후속 조치를 수행하는 것에 기초하여 추가 결과를 표시하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  20. 제16항에 있어서, 상기 동작들은,
    상기 선택된 텍스트를 소스 언어에서 타겟 언어로 번역하여 번역된 텍스트를 생성하는 동작; 및
    상기 선택된 텍스트 또는 상기 번역된 텍스트 중 적어도 하나를 포함하는 검색 질의(search query)를 검색 엔진에 제출하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
KR1020217010111A 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠 KR102347398B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217042731A KR102447607B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US14/040,443 2013-09-27
US14/040,443 US9329692B2 (en) 2013-09-27 2013-09-27 Actionable content displayed on a touch screen
KR1020167009205A KR102238809B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠
PCT/US2014/057077 WO2015048047A1 (en) 2013-09-27 2014-09-24 Actionable content displayed on a touch screen

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020167009205A Division KR102238809B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217042731A Division KR102447607B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠

Publications (2)

Publication Number Publication Date
KR20210040196A KR20210040196A (ko) 2021-04-12
KR102347398B1 true KR102347398B1 (ko) 2022-01-04

Family

ID=51842761

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020217042731A KR102447607B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠
KR1020167009205A KR102238809B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠
KR1020217010111A KR102347398B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020217042731A KR102447607B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠
KR1020167009205A KR102238809B1 (ko) 2013-09-27 2014-09-24 터치스크린 상에 표시되는 조치 가능한 콘텐츠

Country Status (6)

Country Link
US (3) US9329692B2 (ko)
EP (1) EP3050312B1 (ko)
KR (3) KR102447607B1 (ko)
CN (1) CN105580384B (ko)
TW (1) TW201523426A (ko)
WO (1) WO2015048047A1 (ko)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9251144B2 (en) 2011-10-19 2016-02-02 Microsoft Technology Licensing, Llc Translating language characters in media content
US9329692B2 (en) 2013-09-27 2016-05-03 Microsoft Technology Licensing, Llc Actionable content displayed on a touch screen
US12008629B2 (en) 2014-03-31 2024-06-11 Monticello Enterprises LLC System and method for providing a social media shopping experience
US11004139B2 (en) 2014-03-31 2021-05-11 Monticello Enterprises LLC System and method for providing simplified in store purchases and in-app purchases using a use-interface-based payment API
US10511580B2 (en) 2014-03-31 2019-12-17 Monticello Enterprises LLC System and method for providing a social media shopping experience
US11080777B2 (en) 2014-03-31 2021-08-03 Monticello Enterprises LLC System and method for providing a social media shopping experience
US9824079B1 (en) 2014-07-11 2017-11-21 Google Llc Providing actions for mobile onscreen content
KR20160021524A (ko) * 2014-08-18 2016-02-26 엘지전자 주식회사 이동 단말기 및 이의 제어방법
US9965559B2 (en) * 2014-08-21 2018-05-08 Google Llc Providing automatic actions for mobile onscreen content
KR102411890B1 (ko) * 2014-09-02 2022-06-23 삼성전자주식회사 컨텐츠를 처리하는 방법 및 이를 위한 전자 장치
CN105786930B (zh) * 2014-12-26 2019-11-26 北京奇虎科技有限公司 基于触摸交互的搜索方法及装置
US10565993B2 (en) 2015-01-30 2020-02-18 Disney Enterprises, Inc. Enhancing group decisions within social messaging applications
US11334228B1 (en) * 2015-03-30 2022-05-17 Evernote Corporation Dynamic targeting of preferred objects in video stream of smartphone camera
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10015364B2 (en) * 2015-05-11 2018-07-03 Pictureworks Pte Ltd System and method for previewing digital content
GB2541552B (en) * 2015-05-11 2021-10-13 Pictureworks Pte Ltd System and method for previewing digital content
US20170024405A1 (en) * 2015-07-24 2017-01-26 Samsung Electronics Co., Ltd. Method for automatically generating dynamic index for content displayed on electronic device
US10739962B1 (en) * 2015-08-24 2020-08-11 Evernote Corporation Restoring full online documents from scanned paper fragments
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
TWI676931B (zh) * 2015-10-05 2019-11-11 香港商極刻科技(香港)控股有限公司 一種於透過虛擬鍵盤輸入內容至一應用程式時提供一服務的方法
US10178527B2 (en) 2015-10-22 2019-01-08 Google Llc Personalized entity repository
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text
US9913114B1 (en) * 2015-12-15 2018-03-06 Snap Inc. Simplified message grouping and display
CN108781175B (zh) 2015-12-21 2021-09-21 谷歌有限责任公司 用于消息交换题绪的自动建议的方法、介质及系统
KR20180070659A (ko) 2015-12-21 2018-06-26 구글 엘엘씨 메시징 애플리케이션들을 위한 자동적인 제안들 및 다른 콘텐츠
US20170195736A1 (en) 2015-12-31 2017-07-06 Opentv, Inc. Systems and methods for enabling transitions between items of content
KR101811719B1 (ko) * 2016-02-11 2017-12-22 삼성전자주식회사 컨텐트를 제공하는 디바이스를 제어하는 방법, 그 디바이스 및 서버
CN107224720B (zh) * 2016-03-25 2019-04-30 网易(杭州)网络有限公司 拖拽式管理队伍的方法、装置及触控设备
US11108767B2 (en) * 2016-04-21 2021-08-31 Tharmalingam Satkunarajah Apparatus and system for obtaining and encrypting documentary materials
US10229189B2 (en) 2016-05-23 2019-03-12 International Business Machines Corporation System for generation of automated response follow-up
US10229187B2 (en) 2016-05-23 2019-03-12 International Business Machines Corporation System for determination of automated response follow-up
US10254935B2 (en) * 2016-06-29 2019-04-09 Google Llc Systems and methods of providing content selection
WO2018000366A1 (en) * 2016-06-30 2018-01-04 Microsoft Technology Licensing, Llc Method and apparatus for detecting a salient point of a protuberant object
US10049087B2 (en) * 2016-07-19 2018-08-14 International Business Machines Corporation User-defined context-aware text selection for touchscreen devices
US10387461B2 (en) 2016-08-16 2019-08-20 Google Llc Techniques for suggesting electronic messages based on user activity and other context
US10409487B2 (en) 2016-08-23 2019-09-10 Microsoft Technology Licensing, Llc Application processing based on gesture input
CN106339160A (zh) * 2016-08-26 2017-01-18 北京小米移动软件有限公司 浏览交互处理方法及装置
US10547574B2 (en) 2016-09-20 2020-01-28 Google Llc Suggested responses based on message stickers
US10015124B2 (en) 2016-09-20 2018-07-03 Google Llc Automatic response suggestions based on images received in messaging applications
WO2018057536A1 (en) 2016-09-20 2018-03-29 Google Llc Bot requesting permission for accessing data
CN106484266B (zh) * 2016-10-18 2020-02-21 北京字节跳动网络技术有限公司 一种文本处理方法及装置
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
CN106569682B (zh) * 2016-10-31 2020-08-21 南京飞米农业科技有限公司 触摸屏显示内容选择装置和方法
US10416846B2 (en) 2016-11-12 2019-09-17 Google Llc Determining graphical element(s) for inclusion in an electronic communication
US11237696B2 (en) 2016-12-19 2022-02-01 Google Llc Smart assist for repeated actions
CN108279828A (zh) * 2016-12-30 2018-07-13 北京搜狗科技发展有限公司 一种启动应用程序的方法、装置和终端
US10891485B2 (en) 2017-05-16 2021-01-12 Google Llc Image archival based on image categories
CN107256109B (zh) * 2017-05-27 2021-03-16 北京小米移动软件有限公司 信息显示方法、装置及终端
US10404636B2 (en) 2017-06-15 2019-09-03 Google Llc Embedded programs and interfaces for chat conversations
US10348658B2 (en) 2017-06-15 2019-07-09 Google Llc Suggested items for use with embedded applications in chat conversations
US10936895B2 (en) 2017-07-26 2021-03-02 Vmware, Inc. Managing camera actions
CN107864273A (zh) * 2017-10-26 2018-03-30 珠海市魅族科技有限公司 一种信息获取方法、装置、计算机装置及存储介质
FR3074938B1 (fr) * 2017-12-08 2019-12-27 Sagemcom Broadband Sas Procede d'interaction avec un sous-titre affiche sur un ecran de television, dispositif, produit-programme d'ordinateur et support d'enregistrement pour la mise en œuvre d'un tel procede
CN109917988B (zh) * 2017-12-13 2021-12-21 腾讯科技(深圳)有限公司 选中内容显示方法、装置、终端及计算机可读存储介质
US10891526B2 (en) 2017-12-22 2021-01-12 Google Llc Functional image archiving
KR20190102587A (ko) * 2018-02-26 2019-09-04 엘지전자 주식회사 이동 단말기 및 그 동작방법
US11392630B2 (en) 2018-04-06 2022-07-19 Microsoft Technology Licensing, Llc Presenting a summary of components in a file
US10567436B2 (en) * 2018-04-16 2020-02-18 Honeywell International Inc. Recording remote access actions in video files
US11062100B1 (en) 2019-08-09 2021-07-13 Outlayr, Inc. Systems and methods to determine a machine-readable optical code based on screen-captured video
US11589107B2 (en) * 2019-08-09 2023-02-21 Outlayr, Inc. Systems and methods to determine a machine-readable optical code based on screen-captured video
KR20210045891A (ko) * 2019-10-17 2021-04-27 삼성전자주식회사 전자 장치 및 전자 장치의 화면 캡쳐 운용 방법
US11774940B2 (en) * 2021-03-29 2023-10-03 Rockwell Automation Technologies, Inc. Redundant touchless inputs for automation system
US11526685B1 (en) 2021-06-16 2022-12-13 Outlayr, Inc. Systems and methods to determine a machine-readable optical code based on a stored screen-captured image

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110081083A1 (en) * 2009-10-07 2011-04-07 Google Inc. Gesture-based selective text recognition
US20130103383A1 (en) * 2011-10-19 2013-04-25 Microsoft Corporation Translating language characters in media content

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6415307B2 (en) * 1994-10-24 2002-07-02 P2I Limited Publication file conversion and display
EP0720114B1 (en) 1994-12-28 2001-01-24 Siemens Corporate Research, Inc. Method and apparatus for detecting and interpreting textual captions in digital video signals
GB9711022D0 (en) 1997-05-28 1997-07-23 Rank Xerox Ltd Text/image selection from document images
US6298173B1 (en) 1997-10-03 2001-10-02 Matsushita Electric Corporation Of America Storage management system for document image database
US6256620B1 (en) * 1998-01-16 2001-07-03 Aspect Communications Method and apparatus for monitoring information access
AU756026B2 (en) * 1998-01-31 2003-01-02 Nec Corporation Communication system capable of displaying addresser information and method for displaying addresser-related information
US6731788B1 (en) 1999-01-28 2004-05-04 Koninklijke Philips Electronics N.V. Symbol Classification with shape features applied to neural network
US6640010B2 (en) 1999-11-12 2003-10-28 Xerox Corporation Word-to-word selection on images
US20010056342A1 (en) 2000-02-24 2001-12-27 Piehn Thomas Barry Voice enabled digital camera and language translator
US7043080B1 (en) 2000-11-21 2006-05-09 Sharp Laboratories Of America, Inc. Methods and systems for text detection in mixed-context documents using local geometric signatures
US20030004802A1 (en) * 2001-03-19 2003-01-02 Jeff Callegari Methods for providing a virtual coupon
US20030120478A1 (en) 2001-12-21 2003-06-26 Robert Palmquist Network-based translation system
US7272377B2 (en) 2002-02-07 2007-09-18 At&T Corp. System and method of ubiquitous language translation for wireless devices
US20030200078A1 (en) 2002-04-19 2003-10-23 Huitao Luo System and method for language translation of character strings occurring in captured image data
US8832577B2 (en) * 2010-10-01 2014-09-09 Z124 Universal clipboard
US7310605B2 (en) 2003-11-25 2007-12-18 International Business Machines Corporation Method and apparatus to transliterate text using a portable device
KR101259476B1 (ko) * 2005-01-25 2013-05-06 보다폰 그룹 피엘씨 연계 동작 방법 및 통신 단말 장치
US8643605B2 (en) 2005-11-21 2014-02-04 Core Wireless Licensing S.A.R.L Gesture based document editor
US7822596B2 (en) 2005-12-05 2010-10-26 Microsoft Corporation Flexible display translation
US8098934B2 (en) * 2006-06-29 2012-01-17 Google Inc. Using extracted image text
US7689613B2 (en) 2006-10-23 2010-03-30 Sony Corporation OCR input to search engine
US20080221862A1 (en) 2007-03-09 2008-09-11 Yahoo! Inc. Mobile language interpreter with localization
US8144990B2 (en) 2007-03-22 2012-03-27 Sony Ericsson Mobile Communications Ab Translation and display of text in picture
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
US7890493B2 (en) 2007-07-20 2011-02-15 Google Inc. Translating a search query into multiple languages
US8041555B2 (en) 2007-08-15 2011-10-18 International Business Machines Corporation Language translation based on a location of a wireless device
US8249391B2 (en) 2007-08-24 2012-08-21 Ancestry.com Operations, Inc. User interface method for skew correction
US8650507B2 (en) 2008-03-04 2014-02-11 Apple Inc. Selecting of text using gestures
US8296671B2 (en) * 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
KR101566196B1 (ko) 2009-03-02 2015-11-05 삼성전자주식회사 히스토그램 분석을 이용한 영상 분류 방법 및 장치, 이를 이용한 문자 인식 방법 및 장치
JP4749476B2 (ja) 2009-04-09 2011-08-17 シャープ株式会社 画像処理装置、画像形成装置、画像処理方法、コンピュータプログラム及び記録媒体
US20120131520A1 (en) 2009-05-14 2012-05-24 Tang ding-yuan Gesture-based Text Identification and Selection in Images
US20100289757A1 (en) 2009-05-14 2010-11-18 Budelli Joey G Scanner with gesture-based text selection capability
US7973603B2 (en) * 2009-06-26 2011-07-05 Silicon Laboratories Inc. Low-noise amplifier suitable for use in a television receiver
US8543946B2 (en) 2009-06-29 2013-09-24 Sharp Laboratories Of America, Inc. Gesture-based interface system and method
US9372614B2 (en) 2009-07-09 2016-06-21 Qualcomm Incorporated Automatic enlargement of viewing area with selectable objects
JP5310357B2 (ja) 2009-07-27 2013-10-09 株式会社リコー 画像形成装置、課金情報記録方法、及びプログラム
US8400670B2 (en) 2009-11-16 2013-03-19 Eastman Kodak Company Image down-sampling with fine detail enhancement
US8515185B2 (en) 2009-11-25 2013-08-20 Google Inc. On-screen guideline-based selective text recognition
US20110161889A1 (en) 2009-12-30 2011-06-30 Motorola, Inc. User Interface for Electronic Devices
US8707174B2 (en) 2010-02-25 2014-04-22 Microsoft Corporation Multi-screen hold and page-flip gesture
US20110238626A1 (en) * 2010-03-24 2011-09-29 Verizon Patent And Licensing, Inc. Automatic user device backup
US9003298B2 (en) * 2010-09-21 2015-04-07 Microsoft Corporation Web page application controls
US8774558B2 (en) 2010-11-29 2014-07-08 Microsoft Corporation Rectification of characters and text as transform invariant low-rank textures
EP2466492A1 (en) 2010-12-20 2012-06-20 Paul Peter Vaclik A method of making text data associated with video data searchable
KR20120082102A (ko) 2011-01-13 2012-07-23 삼성전자주식회사 터치 영역에서 타깃 선택 방법
US20120182288A1 (en) 2011-01-18 2012-07-19 Sony Corporation Method and apparatus for information presentation
WO2012099558A1 (en) 2011-01-18 2012-07-26 Thomson Licensing An apparatus and method for performing video screen scrape
US20120249595A1 (en) 2011-03-31 2012-10-04 Feinstein David Y Area selection for hand held devices with display
US8793624B2 (en) * 2011-05-18 2014-07-29 Google Inc. Control of a device using gestures
KR101838260B1 (ko) 2011-06-03 2018-03-13 구글 엘엘씨 텍스트를 선택하기 위한 제스처들
US9417754B2 (en) * 2011-08-05 2016-08-16 P4tents1, LLC User interface system, method, and computer program product
US8942484B2 (en) 2011-09-06 2015-01-27 Qualcomm Incorporated Text detection using image regions
US9053361B2 (en) 2012-01-26 2015-06-09 Qualcomm Incorporated Identifying regions of text to merge in a natural image or video frame
CN103294657B (zh) * 2012-03-02 2017-10-27 富泰华工业(深圳)有限公司 文本编辑方法及系统
KR102099995B1 (ko) 2012-03-13 2020-04-10 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 웹 페이지 애플리케이션 제어 기법
KR20140030361A (ko) * 2012-08-27 2014-03-12 삼성전자주식회사 휴대단말기의 문자 인식장치 및 방법
US9020999B2 (en) * 2012-10-01 2015-04-28 Blackberry Limited Computing device with automated conversion of units
US20140111542A1 (en) * 2012-10-20 2014-04-24 James Yoong-Siang Wan Platform for recognising text using mobile devices with a built-in device video camera and automatically retrieving associated content based on the recognised text
US9329692B2 (en) 2013-09-27 2016-05-03 Microsoft Technology Licensing, Llc Actionable content displayed on a touch screen

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110081083A1 (en) * 2009-10-07 2011-04-07 Google Inc. Gesture-based selective text recognition
US20130103383A1 (en) * 2011-10-19 2013-04-25 Microsoft Corporation Translating language characters in media content

Also Published As

Publication number Publication date
US20160210040A1 (en) 2016-07-21
US10191650B2 (en) 2019-01-29
US20150095855A1 (en) 2015-04-02
CN105580384B (zh) 2018-07-31
WO2015048047A1 (en) 2015-04-02
KR102238809B1 (ko) 2021-04-09
KR20220000953A (ko) 2022-01-04
EP3050312B1 (en) 2017-08-02
CN105580384A (zh) 2016-05-11
KR102447607B1 (ko) 2022-09-26
EP3050312A1 (en) 2016-08-03
US11003349B2 (en) 2021-05-11
US9329692B2 (en) 2016-05-03
KR20160061349A (ko) 2016-05-31
KR20210040196A (ko) 2021-04-12
US20190114072A1 (en) 2019-04-18
TW201523426A (zh) 2015-06-16

Similar Documents

Publication Publication Date Title
US11003349B2 (en) Actionable content displayed on a touch screen
US9299342B2 (en) User query history expansion for improving language model adaptation
RU2702270C2 (ru) Обнаружение выбора рукописного фрагмента
WO2016095689A1 (zh) 基于终端界面多次触控操作进行识别搜索的方法及系统
JP2018073387A (ja) オンライン会話ストリームに文書対話を持ち込むためのシステムおよび方法、コンピュータに実装された方法、プログラム、及びコンピュータ化システム
WO2015167855A1 (en) Providing search results corresponding to displayed content
WO2016091095A1 (zh) 基于终端界面触控操作进行搜索的方法及系统
JP7069802B2 (ja) ユーザ指向トピック選択及びブラウジングのためのシステム及び方法、複数のコンテンツ項目を表示する方法、プログラム、及びコンピューティングデバイス
US9280973B1 (en) Navigating content utilizing speech-based user-selectable elements
KR102353797B1 (ko) 영상 컨텐츠에 대한 합성음 실시간 생성에 기반한 컨텐츠 편집 지원 방법 및 시스템
WO2017211202A1 (zh) 数据的提取方法、装置及终端设备
US9372616B2 (en) Smart interactive bookmarks
WO2016155643A1 (zh) 一种基于输入的显示候选词的方法和装置
TW201610712A (zh) 處理影像以識別用於插入到文件的物件
US9588969B2 (en) Retargeting content segments to multiple devices
CN107168627B (zh) 用于触摸屏的文本编辑方法和装置
KR20150097250A (ko) 태그 정보를 이용한 스케치 검색 시스템, 사용자 장치, 서비스 제공 장치, 그 서비스 방법 및 컴퓨터 프로그램이 기록된 기록매체
WO2016101768A1 (zh) 终端以及基于触摸操作的搜索方法和装置
KR20120133149A (ko) 데이터 태깅 장치, 그의 데이터 태깅 방법 및 데이터 검색 방법
KR102488623B1 (ko) 영상 컨텐츠에 대한 합성음 실시간 생성에 기반한 컨텐츠 편집 지원 방법 및 시스템
US20170177179A1 (en) E-reader summarization and customized dictionary
CN115080170A (zh) 信息处理方法、信息处理装置和电子设备
KR20240133305A (ko) 챗봇 서비스 제공 방법 및 이를 수행하는 장치
US20180027143A1 (en) Method and system for generating electronic documents from paper documents while retaining information from the paper documents

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
A107 Divisional application of patent
GRNT Written decision to grant