KR20230003202A - 터치 입력 보정 - Google Patents

터치 입력 보정 Download PDF

Info

Publication number
KR20230003202A
KR20230003202A KR1020227041963A KR20227041963A KR20230003202A KR 20230003202 A KR20230003202 A KR 20230003202A KR 1020227041963 A KR1020227041963 A KR 1020227041963A KR 20227041963 A KR20227041963 A KR 20227041963A KR 20230003202 A KR20230003202 A KR 20230003202A
Authority
KR
South Korea
Prior art keywords
touch
value
measured
location
touch input
Prior art date
Application number
KR1020227041963A
Other languages
English (en)
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 KR20230003202A publication Critical patent/KR20230003202A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/046Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by electromagnetic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04104Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컴퓨팅 장치는 제1 측정된 터치 값을 수신하고 -제1 측정된 터치 값은 컴퓨팅 장치에 포함된 카메라 근처의 제1 위치에서의 제1 터치 입력을 나타내고-, 제2 측정된 터치 값을 수신하고 -상기 제2 측정된 터치 값은 상기 제1 위치보다 카메라로부터 더 먼 제2 위치에서의 제2 터치 입력을 나타내고, 제2 위치의 터치 센서의 밀도는 제1 위치의 터치 센서의 밀도보다 크고 -, 제1 측정된 터치 값 및 제1 스케일링 값에 기초하여 제1 보상된 터치 값을 생성하고, 제2 측정된 터치 값 및 제2 스케일링 값에 기초하여 제2 보상된 터치 값을 생성하고 -제2 스케일링 값은 제1 스케일링 값보다 작고-, 상기 제1 보상된 터치 값 및 상기 제2 보상된 터치 값에 기초하여 상기 제1 터치 입력 및 제2 터치 입력을 프로세싱할 수 있다.

Description

터치 입력 보정
본 명세서는 터치 입력을 수신하는 컴퓨팅 장치에 관한 것이다.
컴퓨팅 장치에는 시각적 출력을 제공하고 터치 입력을 수신하는 터치스크린 디스플레이가 포함될 수 있다. 일부 컴퓨팅 장치는 터치스크린 디스플레이 내부에 카메라를 포함할 수 있다. 카메라 근처에서 터치 입력을 정확하게 프로세싱하는 것은 어려울 수 있다.
예에 따르면, 비일시적 컴퓨터 판독 가능 저장 매체는 저장된 명령어를 포함할 수 있다. 적어도 하나의 프로세서에 의해 실행될 때, 명령어는 컴퓨팅 장치가 제1 측정된 터치 값을 수신하게 하고 -제1 측정된 터치 값은 제1 위치(컴퓨팅 장치에 포함된 카메라 근처일 수 있음)에서의 제1 터치 입력을 나타냄-, 제2 측정된 터치 값을 수신하고 -상기 제2 측정된 터치 값은 상기 제1 위치보다 카메라로부터 더 먼 제2 위치에서의 제2 터치 입력을 나타내고, 제2 위치의 터치 센서의 밀도는 제1 위치의 터치 센서의 밀도보다 큼-, 제1 측정된 터치 값 및 제1 스케일링 값에 기초하여 제1 보상된 터치 값을 생성하고, 제2 측정된 터치 값 및 제2 스케일링 값에 기초하여 제2 보상된 터치 값을 생성하고 -제2 스케일링 값은 제1 스케일링 값보다 작음-, 상기 제1 보상된 터치 값 및 상기 제2 보상된 터치 값에 기초하여 상기 제1 터치 입력 및 제2 터치 입력을 프로세싱하도록 구성될 수 있다.
예에 따르면, 비일시적 컴퓨터 판독 가능 저장 매체는 저장된 명령어를 포함할 수 있다. 적어도 하나의 프로세서에 의해 실행될 때, 명령어는 컴퓨팅 장치로 하여금 터치스크린 상의 터치 입력의 측정된 위치가 카메라에 근접한 미리정의된 영역 내에 있는지(즉, 카메라에 대한 근접성 기준을 충족함) 결정하게 하고, 터치 입력의 측정된 위치에 기초하여 터치 입력에 대한 시프트 값을 결정하게 하고, 측정된 위치 및 시프트 값에 기초하여 터치 입력을 위한 시프트된 위치를 결정하게 하고, 시프트된 위치를 기준으로 터치 입력을 프로세싱하도록 구성될 수 있다. 실제로, 스타일러스나 사용자의 손가락과 같은 물체가 터치 스크린에 접촉하는 영역은 터치 입력이 가능한 복수의 위치를 포함할 수 있다(즉, 적용된 힘의 0이 아닌 측정값). 이들 중 일부는 미리정의된 영역 내에 있을 수 있고 일부는 그렇지 않을 수 있다. 시프트 값은 영역 내에 있는 측정된 위치의 시프트 값에 적용될 수 있다. 이어서, 객체가 터치스크린을 터치한 영역의 중심 위치를 추정하는 동작이 적용될 수 있다(예: 시프트된 위치 및 미리정의된 영역 외부의 측정값 기준).
예에 따르면, 방법은 복수의 알려진 위치에서 터치스크린을 접촉하는 단계 -상기 복수의 알려진 위치는 제1 밀도의 터치 센서를 갖는 제1 위치 및 제2 밀도의 터치 센서를 갖는 제2 위치를 적어도 포함하고; 상기 터치 센서의 제2 밀도는 상기 터치 센서의 제1 밀도보다 작음-; 상기 복수의 알려진 위치에 대응하는 상기 터치스크린 상의 복수의 측정된 위치를 결정하는 단계; 그리고 맵을 생성하는 단계를 포함할 수 있으며, 상기 맵은 상기 복수의 측정된 위치를 상기 복수의 알려진 위치에 맵핑한다.
예에 따르면, 비일시적 컴퓨터 판독 가능 저장 매체는 저장된 명령어를 포함할 수 있다. 적어도 하나의 프로세서에 의해 실행될 때, 명령어는 컴퓨팅 장치로 하여금 복수의 터치 입력을 수신하도록 하고 -상기 복수의 터치 입력은 서로 다른 시간에 수신되고 그리고 단일 이동 접촉(single moving contact)에 포함됨-; 상기 복수의 터치 입력 중 적어도 하나의 측정된 위치가 스큐드(skewed)된 것으로 결정하도록 하고; 상기 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여, 상기 복수의 터치 입력 중 적어도 하나의 스큐드 위치 및 상기 복수의 터치 입력 중 적어도 다른 2개의 위치에 기초하여 상기 복수의 터치 입력 중 상기 적어도 하나의 스큐드 위치를 보정하도록 하고; 그리고 상기 보정된 위치로 상기 복수의 터치 입력을 프로세싱하도록 구성될 수 있다.
추가 예에서, 프로세서 및 상기 정의된 유형 중 임의의 유형의 컴퓨터 판독 가능 저장 매체를 포함하고 명령어를 수행하도록 배열된 컴퓨터 시스템이 제공된다. 하나 이상의 구현에 대한 세부 사항은 첨부된 도면과 아래 설명에 설명되어 있다. 다른 특징은 설명, 도면 및 청구범위로부터 명백할 것이다.
도 1a는 예시적인 구현에 따른 컴퓨팅 장치를 도시한다.
도 1b는 예시적 구현에 따른 도 1a에 도시된 컴퓨팅 장치의 부분 단면도를 도시한다.
도 2는 예시적 구현에 따른 도 1a에 도시된 컴퓨팅 장치에 포함된 터치스크린 및 카메라의 확장된 영역을 나타낸다.
도 3a는 예시적인 구현에 따라 카메라 근처의 확장된 영역의 일부에 접촉하는 손가락을 도시한다.
도 3b는 예시적인 구현에 따라 손가락에 의해 접촉된 확장된 영역 내의 위치에 대해 측정된 터치 값을 도시한다.
도 3c는 예시적인 구현에 따른 확장된 영역 내의 위치에 대한 스케일링 맵을 도시한다.
도 3d는 예시적인 구현에 따라 손가락에 의해 접촉되었던 확장된 영역 내의 위치에 대한 보상된 터치 값을 도시한다.
도 3e는 예시적인 구현에 따라 위치의 함수로서 측정된 터치 값 및 보상된 터치 값을 보여주는 그래프이다.
도 4a는 예시적인 구현에 따라 측정된 위치가 시프트될 확장된 영역 내의 미리정의된 영역을 도시한다.
도 4b는 예시적인 구현에 따라 측정된 위치를 보정하기 위한 시프트 값을 도시한다.
도 4c는 예시적인 구현에 따라 스타일러스가 확장된 영역에 접촉하게 하는 암(arm)을 도시한다.
도 5는 예시적인 구현에 따라 측정된 터치 위치 및 보정된 터치 위치를 도시한다.
도 6은 예시적인 구현에 따른 컴퓨팅 장치의 개략도이다.
도 7은 예시적인 구현에 따라 컴퓨팅 장치에 의해 수행되는 기능의 파이프라인을 도시한다.
도 8은 예시적인 구현에 따라 컴퓨팅 장치에 의해 수행되는 방법을 나타내는 흐름도이다.
도 9는 예시적인 구현에 따라 컴퓨팅 장치에 의해 수행되는 방법을 나타내는 흐름도이다.
도 10은 예시적인 구현에 따라 컴퓨팅 시스템에 의해 수행되는 방법을 나타내는 흐름도이다.
도 11은 예시적인 구현에 따라 컴퓨팅 장치에 의해 수행되는 방법을 나타내는 흐름도이다.
도 12는 여기에 기술된 기술을 구현하는데 사용될 수 있는 컴퓨터 장치 및 모바일 컴퓨터 장치의 예를 도시한다.
터치스크린은 카메라의 이미지 캡처 기능을 개선하기 위해 카메라 근처 및/또는 위에 더 낮은 밀도의 터치 센서를 가질 수 있다. 카메라 근처의 터치 센서 밀도가 낮으면 터치 센서 밀도가 높은 카메라에서 먼 위치보다 측정된 터치 값이 낮아질 수 있다. 컴퓨팅 장치는 측정된 터치 값 및 스케일링 값에 기초하여 보상된 터치 값을 생성할 수 있다. 스케일링 값은 터치 값이 측정된 터치 입력 위치와 연관될 수 있다. 터치 센서의 밀도는 터치 스크린의 단위 면적당 터치 센서의 수이다. 예를 들어, 임의의 위치에서 터치 센서의 밀도는 해당 위치를 중심으로 하는 미리결정된 크기 및/또는 방향의 원, 직사각형 또는 정사각형에 있는 터치 센서의 수로 정의될 수 있다.
센서의 낮은 밀도 및/또는 터치 센서의 밀도가 다른 위치 사이의 전이(transition)는 터치 입력의 측정된 위치가 터치 입력의 실제(actual) 위치 및/또는 트루(true) 위치에서 시프트되도록(shifted) 할 수 있다. 컴퓨팅 장치(100)는 측정된 위치 및 측정된 위치와 연관된 시프트된 위치(shifted location) 또는 시프트 값(shift value)에 기초하여 시프트된 위치를 결정할 수 있다. 일부 예에서, 상이한 컴퓨팅 시스템은 복수의 알려진 위치에서 터치스크린을 스타일러스와 접촉시키고 스타일러스가 터치스크린에 접촉한 알려진 위치를 측정된 터치 위치에 맵핑함으로써 시프트 값 또는 시프트된 위치를 결정할 수 있다.
센서의 낮은 밀도 및/또는 터치 센서의 밀도가 다른 위치 사이의 전이로 인해 터치 입력의 측정된 위치가 터치 입력의 실제 및/또는 트루 위치에서 스큐드(Skewed)될 수 있다. 컴퓨팅 장치는 측정된 위치 및/또는 시프트된 위치를 연속적인 접촉 내의 다른 측정된 위치 및/또는 시프트된 위치와 비교함으로써 측정된 위치가 스큐드(skewed)되었음을 결정할 수 있다. 컴퓨팅 장치는 여러 위치에 필터를 적용하는 것과 같이 다른 측정된 위치를 기반으로 스큐드 위치(skewed locations)를 보정할 수 있다.
도 1a는 예시적인 구현에 따른 컴퓨팅 장치(100)를 도시한다. 컴퓨팅 장치(100)는 예를 들어, 터치스크린(102)이 있는 스마트폰, 터치스크린(102)이 있는 태블릿 컴퓨팅 장치, 터치스크린(102)이 있는 노트북 또는 랩탑 컴퓨팅 장치, 또는 터치스크린(102)이 있는 개인용 컴퓨팅 장치를 포함할 수 있다.
터치스크린(102)은 사용자에게 시각적 출력을 제시할 수 있다. 터치스크린(102)은 그림, 아이콘, 문자 또는 기타 이미지를 집합적으로 표시하기 위해 유색광을 방출하는 픽셀을 포함할 수 있다.
터치스크린(102)은 또한 사용자로부터 터치 입력을 수신할 수 있다. 터치 입력은 터치스크린(102) 내에서 커패시턴스의 변화 및/또는 저항의 변화와 같은 측정 가능한 변화를 야기하는 터치스크린(102) 상의 물리적 접촉을 포함할 수 있다. 일부 예에서, 터치스크린(102)은 터치스크린(102)에 접촉하는 사용자의 손가락과 같은 인체의 일부에 의해 야기되는 커패시턴스의 변화를 측정함으로써 터치 입력을 검출하는 정전식 터치스크린을 포함할 수 있다. 일부 예에서, 터치스크린(102)에 포함된 터치 센서는 픽셀을 둘러싸는 금속 트레이스(metal traces)를 포함할 수 있다. 일부 예에서, 터치스크린(102)은 저항의 변화를 측정함으로써 터치 입력을 검출할 수 있다.
컴퓨팅 장치(100)는 터치스크린을 지지하는(supporting), 에워싸는(enclosing) 및/또는 둘러싸는(surrounding) 프레임(104)을 포함할 수 있다. 프레임(104)은 비제한적 예로서, 메모리, 프로세서, 스피커, 마이크로폰, 유선 통신 인터페이스 및/또는 무선 통신 인터페이스와 같은, 도 1a에 도시되지 않은 컴퓨팅 장치(100)의 다른 컴포넌트를 지지하거나, 에워싸거나 및/또는 둘러쌀 수 있다.
컴퓨팅 장치(100)는 카메라(106)를 포함할 수 있다. 카메라(106)는 컴퓨팅 장치(100) 외부로부터 시각적 데이터를 캡처할 수 있다. 카메라(106)는 터치스크린(102) 내부 및/또는 뒤에 포함될 수 있고, 터치스크린(102)을 통과하는 빛으로부터 시각 데이터를 캡처하도록 배열될 수 있다.
도 1a는 터치스크린(102) 및 카메라(106)를 포함하는 컴퓨팅 장치(100)의 전면부를 도시한다. 일부 예에서, 컴퓨팅 장치(100)는 앞 부분과 반대인 뒤 부분을 포함할 수 있으며, 이는 제2 카메라도 포함하지만 터치스크린 또는 다른 디스플레이는 포함하지 않는다.
터치스크린(102)이 카메라(106) 위의 영역에서 시각적 출력을 나타내도록 허용하지만 여전히 카메라(106)가 시각적 데이터를 캡처하도록 허용하기 위해, 카메라(106) 위(over the camera)의 터치스크린(102) 영역의 픽셀 밀도는 카메라(106) 위가 아닌 터치스크린(102) 영역의 픽셀 밀도보다 낮을 수 있다. 여기서 "오버 더 카메라(over the camera)"라는 용어는 법선 방향이 카메라를 가로막는 터치스크린 부분을 의미한다. 터치스크린의 일부 그러한 부분에 대해, 법선 방향은 카메라의 광 캡처 영역을 차단할 수 있다. 더 낮은 픽셀 밀도는 카메라(106)가 시각적 데이터를 충분히 정확하게 캡처할 수 있게 하고 충족스러운 품질의 시각적 출력을 제공한다. 그러나 픽셀 밀도가 낮을수록 터치 입력을 결정하기 위해 측정하는 기생 정전 용량이 터치 스크린의 다른 부분에 비해 불균일해질 수 있다. 후술하는 도 2는 카메라(106) 위 및 주변의 터치스크린(102)의 확장된 영역(108)을 도시하며, 확장된 영역(108) 내의 터치스크린(102)의 일부는 터치스크린(102)의 다른 부분보다 낮은 픽셀 밀도를 갖는다.
도 1b는 예시적 구현에 따른 도 1a에 도시된 컴퓨팅 장치(100)의 부분 단면도를 도시한다. 단면도는 도 1a에서 'A'로 표시된 점선을 따른 것이다.
터치스크린(102)은 커버(112), 터치 센서 층(114) 및/또는 디스플레이 층(116)을 포함할 수 있다. 커버(112)는 유리 또는 플라스틱과 같은 투명한 재질로 이루어질 수 있다. 커버(112)는 터치 센서 층(114) 및/또는 디스플레이 층(116)과 같은 터치스크린(102)의 다른 컴포넌트를 덮거나 및/또는 보호할 수 있다. 커버(112)는 터치 센서 층(114) 및/또는 디스플레이 층(116)과 같은 터치스크린(102)의 다른 컴포넌트 위에 중첩 및/또는 배치될 수 있다.
터치스크린(102)은 터치 센서층(114)을 포함할 수 있다. 터치 센서 층(114)은 터치 입력을 검출 및/또는 측정할 수 있다. 터치 센서 층(114)은 예를 들어 터치 입력에 응답하여 커패시턴스의 변화 및/또는 저항의 변화를 검출 및/또는 측정함으로써 터치 입력을 검출 및/또는 측정할 수 있다. 일부 예에서, 터치 센서 층(114)은 커버(112)와 디스플레이 층(116) 사이에 배치 및/또는 위치될 수 있다. 일부 예에서, 터치 센서 층(114)의 부분은 디스플레이 층(116)에 포함된 디스플레이 픽셀을 둘러싸는 터치 센서 층(114)에 포함된 금속 트레이스와 같이 디스플레이 층(116)의 부분을 둘러쌀 수 있다.
터치스크린(102)은 디스플레이 층(116)을 포함할 수 있다. 디스플레이 층(116)은 그래픽 출력과 같은 시각적 출력을 생성 및/또는 표시할 수 있다. 디스플레이 층(116)은 그림, 아이콘, 문자 또는 기타 이미지를 집합적으로 표시하기 위해 각각 색광을 생성하는 복수의 픽셀을 포함할 수 있다.
컴퓨팅 장치(100)는 카메라(106)를 포함할 수 있다. 일부 예에서, 카메라(106)는 터치스크린(102) 아래에 배치 및/또는 위치될 수 있다(즉, 디스플레이 층(116)을 향한 커버(112)에 대한 법선 방향으로). 일부 예에서, 카메라(106)는 터치스크린(102)과 프레임(104) 사이에 배치 및/또는 위치될 수 있다. 일부 예에서, 카메라(106)는 터치스크린(102)의 터치 센서 층(114) 및/또는 디스플레이 층(116) 내에 배치 및/또는 위치될 수 있다.
컴퓨팅 장치(100)는 프레임(104)을 포함할 수 있다. 프레임(104)은 터치스크린(102) 및/또는 카메라(106)와 같은 컴퓨팅 장치(100)의 컴포넌트를 지지하거나, 에워싸거나 및/또는 둘러쌀 수 있다.
도 2는 예시적 구현에 따른 도 1a에 도시된 컴퓨팅 장치(100)에 포함된 터치스크린(102) 및 카메라(106)의 확장된 영역(108)을 도시한다. 확장된 영역(108)은 복수의 위치(211-288)를 포함한다. 도 2에 나타낸 바와 같이, 위치 211-288에 대한 참조 번호의 제2 숫자는 해당 위치의 행을 나타내고 참조 번호의 세 번째 숫자는 열을 나타낸다. 도 2는 확장된 영역(108)을 64개의 위치로 나누지만, 다른 수준의 세분화가 구현될 수 있고 확장된 영역은 64개보다 많거나 적은 위치로 나눌 수 있다.
이 예에서, 음영 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)는 확장된 영역(108)의 다른 위치보다 낮은 밀도의 터치 센서를 갖는다. 터치 센서의 밀도는 터치 센서를 중첩하는 터치 스크린(102)의 단위 면적당 터치 센서의 수 및/또는 터치 스크린(102)의 주어진 영역 아래의 터치 센서의 수를 나타낼 수 있다. 일부 예에서, 터치 센서의 더 낮은 밀도는 더 낮은 밀도의 픽셀 및/또는 픽셀을 둘러싸는 더 낮은 밀도의 금속 트레이스를 포함할 수 있으며, 이들의 커패시턴스 변화가 측정된다. 일부 예에서, 더 낮은 밀도의 터치 센서를 갖는 음영 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)는 확장된 영역(108)의 다른 위치보다 카메라(106)에 더 근접(proximal)하고 및/또는 더 가까울 수 있다. "근접(proximal)"이라는 용어는 "근접 기준(proximity criterion) 충족"을 의미하는 데 사용된다. 예를 들어, 근접성 기준은 위치가 카메라의 미리 결정된 거리 내에 있거나, 카메라 위에 있다는 것(즉, 위치에서 센서 층에 대한 법선이 카메라를 인터셉트(intercept)함), 또는 위치가 카메라의 광축 상에 놓이는 센서층(114)의 부분으로부터 센서층(114)의 평면에서 미리결정된 거리 내에 있다는 것일 수 있다. 밀도의 변화는 인접 위치가 서로보다 훨씬 더 높거나 낮은 터치 센서 밀도를 갖는 갑작스러운 것일 수 있고, 또는 점진적인 위치 경로가 터치 센서 밀도가 점진적으로 증가하거나 감소하는 것일 수 있다. 일부 예에서, 더 높은 밀도의 터치 센서를 갖는 다른 위치는 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)보다 카메라(106)로부터 더 멀리 및/또는 덜 근접할 수 있다. 일부 예에서, 더 낮은 밀도의 터치 센서를 갖는 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)는 카메라(106)를 완전히 중첩할 수 있다(즉, 커버(112)를 가로지르는 방향에서 볼 때 카메라(106)를 완전히 덮음).
도 3a는 예시적인 구현에 따라 카메라(106) 근처의 확장된 영역(108)의 일부와 접촉하는 손가락(300)을 도시한다. 손가락(300)은 확장된 영역(108) 내부 또는 외부의 임의의 수의 위치(211-288)와 접촉할 수 있다.
도 3b는 예시적인 구현에 따라 손가락(300)에 의해 접촉되었던 확장된 영역(108) 내의 위치에 대해 측정된 터치 값을 도시한다. 도 3b는 도 2 및 도 3a에 도시된 위치(211-288)에 대응하는 측정된 터치 값의 맵(310)을 도시한다. 보기 쉽게 하기 위해, 측정된 터치 값이 대응하는 위치(211-288)의 참조 번호는 도 3b에 도시되지 않았다. 그러나 터치 센서의 밀도가 낮은 위치는 쉽게 참조할 수 있도록 음영처리되었다. 도 3b는 측정된 터치 값을 2차원 맵에서 그래픽으로 나타내고, 측정된 터치 값은 쉼표로 구분된 값 파일(comma-separated value file) 또는 2차원 배열과 같은 다른 형식으로 표현 및/또는 저장될 수 있다. 측정된 터치 값은 커패시턴스 변화 및/또는 저항 변화와 같이 터치 센서에서 수신한 원시 데이터를 나타낼 수 있다. 측정된 터치 값은 접촉 또는 터치가 검출되지 않았음을 나타내는 영(0)의 하한값과 최대 측정 가능한 힘 또는 커패시턴스 및/또는 저항의 변화를 나타내는 상한값과 같은 숫자 값의 범위를 포함할 수 있다. 터치 입력의 측정된 위치는 측정된 터치 값이 영(0)보다 큰 위치를 나타낼 수 있다.
도 3b에 표시된 예에서, 값이 0인 영역은 값이 0인 영역에 해당하는 위치에서 접촉 또는 터치가 측정 또는 검출되지 않았음을 나타낸다. 또한 이 예에서, 위치(232, 242, 243 및 252)에 해당하는 영역의 측정된 터치 값은 50이다. 또한 이 예에서, 위치(233, 234, 244, 253, 254)에 대응하는 영역은 50의 측정된 터치 값을 갖는다. 이러한 측정된 터치 입력 값은 예이며 컴퓨팅 장치(100)는 다른 터치 입력 값을 측정할 수 있다. 이러한 원시(raw) 터치 입력 데이터만을 기반으로, 손가락(300)에 의한 접촉은 위치(232, 242, 252)에 대해 50의 측정된 접촉 값에 의해 반영된 바와 같이, 제2 열을 따라 왼쪽을 향하여 가장 많이 배치된 것으로 나타난다. 그러나 위에서 설명한 바와 같이, 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)는 다른 위치보다 터치 센서의 밀도가 낮고, 이는 손가락(300)에 의한 실제 접촉이 반영되어야 하는 것보다 더 낮은 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에서의 측정값을 야기할 수 있다. 부정확하게 측정된 낮은 터치 값을 보정하기 위해, 컴퓨팅 장치(100)는 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에 대한 터치 값을 증가시킴으로써 터치 센서의 낮은 밀도를 보상(compensate)할 수 있다.
도 3c는 예시적인 구현에 따른 확장된 영역 내의 위치에 대한 스케일링 맵(scaling map)(320)(또는 "스케일링 값 맵")을 도시한다. 스케일링 맵은 스케일링 값을 위치와 연결할 수 있다. 위치는 터치스크린(102) 상의 지점(points)을 나타내는 x-값 및 y-값에 의해 식별될 수 있고, 및/또는 터치스크린(102) 상의 직사각형 영역을 나타내는 x-값 및 y-값의 범위에 의해 식별될 수 있다. 스케일링 맵(320)은 측정된 터치 값이 카메라(106)에 근접한 및/또는 근처에 있는 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에서 터치 센서의 낮은 밀도를 보상하기 위해 곱해질 스케일링 값을 보여준다. 스케일링 값은 터치 센서의 낮은 밀도를 정정할 위치와 관련된 값일 수 있으므로, 동일한 힘으로 같은 물체에 접촉하더라도 측정된 터치 값과 스케일링 값을 기준으로 보정한 후 서로 다른 위치에서 동일한 보상된 터치 값을 가지게 된다(위치마다 터치 센서의 밀도가 다르더라도).
이 예에서, 카메라(106)에 근접한 및/또는 가까운 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에 대한 스케일링 값은 2이고 스케일링 값은 다른 위치의 값은 1이다. 이것은 단지 예일 뿐이고, 일부 위치에서 터치 센서의 낮은 밀도를 보상하기 위해 다른 스케일링 값이 스케일링 값 맵(320)에 포함 및/또는 저장될 수 있다. 스케일링 값은 도 3c에 도시된 예에서 두 개의 값을 포함할 수 있거나, 또는 스케일링 값은 스케일링 맵에 2개 이상의 개별 값이 표시되어 더 세분화될 수 있다. 도 3c는 스케일링 값 맵(320)을 2차원 맵으로 그래픽으로 도시하지만, 스케일링 값 맵(320)은 쉼표로 구분된(쉼표로 구분된) 값 파일 또는 2차원 어레이와 같은 다른 형식으로 표현 및/또는 저장될 수 있다. 일부 예에서, 각 위치에 대한 스케일링 값은 해당 위치의 터치 센서 밀도에 반비례할 수 있으며, 및/또는 서로 다른 두 위치의 스케일링 값의 비율은 서로 다른 동일한 두 위치의 터치 센서 밀도 비율에 반비례할 수 있다.
컴퓨팅 장치(100)는 도 3c의 스케일링 값과 도 3b에 도시된 측정된 터치 값을 곱함으로써 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에서 더 낮은 밀도의 터치 센서를 보정 및/또는 보상할 수 있다. 도 3b에 도시된 측정된 터치 값에 도 3c의 스케일링 값을 곱한 값이 보상된(보정된) 터치 값이 될 수 있다.
도 3d는 예시적인 구현에 따라 손가락에 의해 접촉되었던 확장된 영역(108) 내의 위치에 대한 보상된 터치 값을 도시한다. 보상된 터치 값은 보상된 터치 값 맵(330)(또는 "보상된 값 맵") 내의 도 3d에 표시된다. 도 3d는 2차원 맵에서 그래픽으로 보상값 맵(330)을 도시하며, 보상된 값 맵(330)은 쉼표로 구분된 값 파일 또는 2차원 배열과 같은 다른 형식으로 표현 및/또는 저장될 수 있다. 보상된 터치 값은 측정된 터치 값을 스케일링 값으로 보정 및/또는 보상한 후 물체가 가한 힘을 나타내는 측정된 터치 값과 동일한 범위의 수치일 수 있다. 보상된 터치 값은 애플리케이션 및/또는 운영 체제에 의해 처리될 터치 입력으로서 애플리케이션 및/또는 운영 체제에 전달 및/또는 프로세싱될 수 있다.
컴퓨팅 장치(100)는 보상된 터치 값을 터치 입력으로서 프로세싱하여 터치 입력에 응답하는 방법을 결정할 수 있다. 위치(243)에 대한 보상된 터치 값 100 및 위치(232, 233, 234, 242, 244, 252, 253, 254)에 대한 보상된 터치 값 50은 손가락(300)에 의한 접촉이 위치(243)에서 가장 강하고 및/또는 가장 무거웠고 그리고 위치(232, 233, 234, 242, 244, 252, 253, 254)에서도 중요(significant)했음을 나타낸다.
도 3e는 예시적인 구현에 따라 위치의 함수로서 측정된 터치 값(315) 및 보상된(보정된) 터치 값(335)을 보여주는 그래프이다. 도 3e의 그래프는 수직 또는 수평과 같은 단일 방향으로만 위치의 함수로서 터치 값을 나타낸다. 도 3e에 도시된 보상된 터치 값(335)과 측정된 터치 값(315)의 스무스 곡선(smooth curves)은 이전 도면에 도시된 것보다 더 많은 위치로의 터치스크린(102) 및/또는 확장된 영역(108)의 분할 및/또는 측정된 터치 값의 더 큰 입도(granularity)를 나타낸다. 또한 이 예에서, 예를 들어 저밀도 영역(350)의 중심을 향해 상승하는 스케일링 값과 함께, 저밀도 영역 내의 서로 다른 해당 위치에 대해 서로 다른 스케일링 값이 있을 수 있다. 터치 센서의 밀도가 낮은 위치(233, 234, 235, 243, 244, 245, 253, 254, 255)에 해당할 수 있는, 저밀도 영역(350)에서 보상된 터치 값(335)과 측정된 터치 값(315)의 차이는, 측정된 터치 값에 스케일링 값을 곱한 효과를 나타낸다. 측정된 터치 값(315)의 스큐드된 곡선(skewed curve)은 접촉의 오른쪽에서 강한 터치 접촉을 잘못 표시할 것이다. 보상된 터치 값(335)의 대칭 곡선은 접촉의 중심에서 가장 강한 터치 접촉을 정확하게 나타낸다.
도 3e에 도시된 예에서, 측정된 터치 값(315)의 스큐드(Skewed) 곡선은 보상된 터치 값 곡선(335)의 피크로 표시되는 것처럼, 접촉의 실제 중심(370)의 오른쪽으로 스큐드 및/또는 시프트된, 측정된 터치 값 곡선(315)의 피크에서, 측정된 중심(360)을 보여준다. 컴퓨팅 장치(100)는 보상된 터치 값 맵(330)에 기초하여 측정된 터치 값을 보정함으로써, 실제 중심(370) 및/또는 보상된 터치 값(335) 곡선의 피크에서 접촉 중심의 정확한 위치를 결정할 수 있다.
도 4a는 예시적인 구현에 따라 측정된 위치가 시프트될 확장된 영역(108) 내의 미리정의된 영역(400)을 도시한다. 미리정의된 영역(400)은 터치 센서의 밀도 변화로 인해 측정된 위치가 시프트된 및/또는 부정확할 수 있는 터치스크린(102) 상의 영역일 수 있다. 미리정의된 영역(400)은 컴퓨팅 장치(100)의 메모리와 같은 컴퓨팅 장치(100)에 저장될 수 있다. 일부 예에서, 미리정의된 영역(400)은 터치 센서의 밀도가 낮은 위치의 가장자리(에지)에 및/또는 그 가장자리 상에 있다. 일부 예에서, 미리정의된 영역(400)은 낮은 밀도의 터치 센서를 갖는 위치와 정상 및/또는 표준 밀도의 터치 센서를 갖는 위치 사이의 인터페이스에 있다.
일부 예에서, 미리정의된 영역(400)은 환형(annulus)을 갖는 동형(homeomorphic)인 형상을 갖는다. 두 개의 형상은 각각의 부분을 끊거나 자르거나 부착하지 않고 각각의 부분을 구부리거나 늘려서 서로 모핑(morphed)할 수 있는 경우 동형으로 간주될 수 있다. 미리정의된 영역(400)은 미리정의된 영역(400)의 일부가 아닌 홀(hole)(402)을 정의할 수 있고 및/또는 홀(402)은 미리정의된 영역(400)에 의해 경계가 정해질 수 있다. 미리정의된 영역(400)은 비제한적인 예로서, 정사각형, 원형, 직사각형 또는 타원형과 같이 홀(402)을 둘러싸는 형상을 가질 수 있다. 홀(402)은 카메라(106)(도 4a에 도시되지 않음)의 적어도 일부를 중첩할 수 있다.
일부 예에서, 미리정의된 영역(400)은 비제한적 예로서 정사각형, 원형, 직사각형 또는 타원과 같은 정사각형과 동형인 형상을 갖는다. 미리정의된 영역(400)은 카메라(106)의 적어도 일부 및/또는 전부를 겹쳐(superpose) 놓을 수 있다. 일부 예에서, 미리정의된 영역(400) 내에서 터치스크린(102)의 확장된 영역 내에서 더 낮은 밀도의 터치 센서로부터 더 높은 밀도의 터치 센서로의 전환(전이)(transition)은 터치 위치가 측정되는 접촉의 실제 위치와 비교하여 측정된 터치 위치가 카메라(106)로부터 바깥쪽으로 및/또는 카메라(106)로부터 멀어지게 할 수 있다. 컴퓨팅 장치(100)는 측정된 위치를 카메라(106)를 향해 안쪽으로 시프트시킴으로써 바깥쪽으로 시프트(outward shift)하는 것을 보정할 수 있다. 컴퓨팅 장치(100)는 측정된 터치 위치에 x-값 및 y-값과 같은 벡터를 더함으로써 측정된 위치를 안쪽으로 시프트(shift)할 수 있다. 컴퓨팅 장치(100)는 측정된 터치 위치를 벡터에 맵핑함으로써 측정된 터치 위치에 더할 벡터를 결정할 수 있다. 측정된 터치 위치 및 벡터는 비제한적인 예로서 저장된 맵 및/또는 테이블, 쉼표로 구분된 값 파일(comma separated value file) 또는 2차원 배열에서 서로 연관될 수 있다.
도 4b는 예시적인 구현에 따라 측정된 위치를 보정하기 위한 시프트 값을 도시한다. 시프트 값은 측정된 터치 값이 보정 및/또는 시프트된 값에 도달하도록 변경되는 벡터일 수 있다. 이 예에서, 시프트 값은 시프트 맵(410)에 그래픽으로 표시된다. 불릿 홀(bullet hole)은 시프트가 필요하지 않은 측정된 위치를 보여준다. 화살표는 시프트 값을 그래픽으로 보여준다. 시프트 값은 가로(x) 방향과 세로(y) 방향 각각에 대해 양수 또는 음수와 같은 한 쌍의 값으로 나타낼 수도 있다.
컴퓨팅 장치(100)는 정확하고 시프트된 위치를 결정하기 위해 시프트 값을 측정된 터치 위치에 더할 수 있다. 컴퓨팅 장치(100)는 측정된 터치 값을 시프트된 위치에 맵핑하는 것과 같이 측정된 터치 위치에 기초하여 시프트 값을 결정할 수 있다. 컴퓨팅 장치(100)는 시프트된 값 및/또는 시프트된 위치에 기초하여 터치 입력을 프로세싱할 수 있다. 시프트된 값 및/또는 시프트된 위치는 터치 센서의 밀도 변화에 따른 시프트를 보정하여 터치 입력이 프로세싱될 위치가 될 수 있다. 일부 예에서, 컴퓨팅 장치(100)는 측정된 터치 위치를 보정된 위치 및/또는 시프트된 위치에 맵핑하는 것과 같이, 측정된 터치 위치에 직접 기초하여 시프트된 위치 및/또는 보정된 위치를 결정할 수 있다. 실제로, 스타일러스 또는 사용자의 손가락과 같은 물체가 있는 영역은 0이 아닌 터치 값을 갖는 복수의 위치를 포함할 수 있다. 이들 중 일부는 미리정의된 영역 내에 있을 수 있고 일부는 그렇지 않을 수 있다. 시프트 값은 영역 내에 있는 측정된 위치의 시프트 값에 적용될 수 있다. 이어서, 객체가 터치스크린을 터치한 영역의 중심 위치를 추정하는 동작이 적용될 수 있다(예: 시프트된 위치 및 미리정의된 영역 외부의 (시프트되지 않은) 측정값 기준). 예를 들어, 추정 위치는 시프트된 위치와 시프트되지 않은 위치의 가중 평균일 수 있으며, 가중치는 각각의 터치 값 또는 보상된 터치 값일 수 있다. 또는 시프트된 위치와 시프트되지 않은 위치의 터치 값(또는 보상된 터치 값)을 커브 피팅 프로세스(curve fitting process)에서 사용하여 곡선의 피크를 찾을 수 있다.
컴퓨팅 장치(100) 및/또는 다른 컴퓨팅 시스템은 시프트 값을 실험적으로 결정할 수 있다. 일부 예에서, 컴퓨팅 시스템은 스타일러스 또는 다른 물체가 터치스크린(102) 또는 터치스크린(102) 및/또는 컴퓨팅 장치(100)와 유사한 하드웨어 특징을 갖는 다른 터치스크린을 터치스크린 상의 복수의 알려진 위치에서 접촉하게 할 수 있다. 컴퓨팅 시스템은 알려진 터치 위치를 대응하는 측정된 터치 위치에 맵핑할 수 있고/있거나 알려진 터치 위치를 대응하는 측정된 터치 위치에 연관시킬 수 있다. 컴퓨팅 시스템은 알려진 터치 위치와 대응하는 측정된 터치 위치 사이의 차이를 결정할 수 있다. 컴퓨팅 시스템은 도 4b에 도시된 바와 같이 대응하는 측정된 터치 위치와 관련하여 시프트 맵으로서, 또는 비제한적 예로서 테이블, 쉼표로 구분된 값 파일 또는 2차원 어레이와 같은 다른 형식으로 시프트 값을 저장할 수 있다.
도 4c는 예시적인 구현에 따라 스타일러스(420)가 확장된 영역(108)에 접촉하게 하는 암(arm)(430)을 도시한다. 암(430) 및/또는 스타일러스는 스타일러스(420)가 복수의 알려진 위치에서 터치스크린(102) 및/또는 터치스크린(102) 내의 확장된 영역(108)에 접촉하게 하는 컴퓨팅 시스템에 의해 제어될 수 있다. 알려진 위치는 이전에 결정된 터치스크린(102) 상의 위치일 수 있거나 및/또는 스타일러스(420)가 터치스크린(102)과 접촉하도록 의도된 위치일 수 있거나, 및/또는 스타일러스(420)가 접촉하고 있는 컴퓨팅 장치(100) 및/또는 컴퓨팅 시스템 외부의 기구가 스타일러스를 접촉하는 것으로 측정하는 위치일 수 있다. 스타일러스(420)가 터치스크린(102)과 접촉하는 터치스크린(102) 상의 위치는 컴퓨팅 시스템에 알려질 수 있고 및/또는 미리 결정될 수 있다. 컴퓨팅 시스템은 접촉의 알려진 위치와 접촉의 측정된 터치 위치 사이의 차이에 기초하여 시프트 값을 결정할 수 있다. 컴퓨팅 시스템은 도 4b에 도시된 바와 같은 결정된 시프트 값을 예를 들어 시프트 맵(410), 또는 비제한적인 예로서 테이블, 쉼표로 구분된 값 파일 또는 2차원 어레이와 같은 다른 형식으로 저장할 수 있다. 일부 예에서, 컴퓨팅 시스템은 접촉의 알려진 위치 및 접촉의 측정된 터치 위치에 기초하여 시프트 맵(410)을 생성할 수 있다. 컴퓨팅 시스템 및/또는 중간(intermediary) 컴퓨팅 시스템은 저장된 시프트 값을 컴퓨팅 장치(100)에 제공할 수 있다.
일부 예에서, 측정된 터치 위치는 일부 영역에서 감소된 센서 밀도로 인해 발생하는 스큐잉(skewing)으로 인해 발생하는 도 3e에 도시된 측정된 중심(360)과 같은 접촉의 측정된 중심일 수 있다. 이러한 예에서, 컴퓨팅 장치(100)는 시프트 맵(410)에 기초하여 측정된 중심(360)의 위치를 실제 중심으로 시프트할 수 있다.
도 5는 예시적인 구현에 따라 측정된 터치 위치(502, 504, 506, 508, 510, 512) 및 보정된 터치 위치(507, 509)를 도시한다. 컴퓨팅 장치(100)는 상이한 시간에 복수의 터치 입력을 수신할 수 있다. 컴퓨팅 장치(100)는 서로 1초 이내와 같이 미리 결정된 기간 내에 복수의 터치 입력을 수신할 수 있다. 이는 측정된 터치 위치와 관련된 각각의 기록 시간을 사용하여 수행할 수 있다. 복수의 터치 입력은 터치스크린(102) 및/또는 터치스크린(102)의 확장된 영역(108)을 가로지르는 단일 이동 접촉(single moving contact)의 일부 및/또는 이에 포함될 수 있다. 측정된 터치 위치(502, 504, 506, 508, 510, 512)는 복수의 터치 입력의 측정된 위치를 나타낼 수 있다. 일부 예에서, 터치 센서의 밀도 변경으로 인해 측정된 위치 중 일부가 접촉의 실제 위치에서 스큐드될 수 있다. 일부 예에서, 터치 센서의 밀도에 대한 변화는 측정된 위치 중 일부가 도 4a, 4b 및 4c와 관련하여 위에서 설명한 시프트를 수행한 후에도 접촉의 실제 위치에서 스큐드되게 할 수 있다.
컴퓨팅 장치(100)는 복수의 측정된 터치 위치(502, 504, 506, 508, 510, 512) 중 적어도 하나의 위치가 스큐드(skewed)되어 있다고 결정할 수 있다. 도 5에 도시된 예에서, 컴퓨팅 장치(100)는 측정된 터치 위치(506, 508)가 스큐드되었다고 결정한다. 위치(506, 508)와 보정된 위치(507, 509) 사이의 거리는 설명을 위해 도 5에서 과장되어 있다. 컴퓨팅 장치(100)는 측정된 터치 위치(502, 504, 506, 508, 510, 512)의 위치 및/또는 시간을 서로 비교하는 것에 기초하여, 복수의 측정된 터치 위치(502, 504, 506, 508, 510, 512) 중 적어도 하나가 스큐드되었다고 결정할 수 있으며(여기서 "측정된 터치(접촉) 위치의 시간"은 해당 위치에서 힘이 측정된 시간을 의미하며 이 시간을 기록할 수 있음), 예를 들어 측정된 터치 위치(502, 504, 506, 508, 510, 512)의 위치 및/또는 시간을 예측된 곡선 및/또는 원호(arcs)와 비교함으로써 및/또는 측정된 터치 위치(502, 504, 506, 508, 510, 512)의 위치 및/또는 시간에 하나 이상의 필터를 적용함으로써 그리고 측정된 터치 위치(502, 504, 506, 508, 510, 512) 중 적어도 하나의 위치가 스큐드된 것으로 결정한다.
측정된 터치 위치(502, 504, 506, 508, 510, 512) 중 적어도 하나의 위치가 스큐드된다는 결정에 기초하여, 컴퓨팅 장치(100)는 터치 값의 위치 및/또는 측정된 터치 위치(506, 508) 및 측정된 터치 위치(502, 504, 510, 512)와 같은 적어도 2개의 다른 터치 값에 기초하여, 측정된 터치 위치(506, 508)와 같이 스큐드된 것으로 결정된 터치 입력의 측정된 위치를 보정할 수 있다. 일부 예에서, 컴퓨팅 장치(100)는 측정된 터치 위치(502, 504, 506, 508, 510, 512)에 필터를 적용함으로써 스큐드 위치(들)를 보정할 수 있다. 일부 예에서, 필터는 무한 임펄스 응답 필터(infinite impulse response filter), 칼만 필터(Kalman filter) 및/또는 버터워스 필터(Butterworth filter)를 포함할 수 있다.
도 5에 도시된 예에서, 벡터(530, 532)는 측정된 터치 위치(506, 508)에 대한 보정을 나타낸다. 컴퓨팅 장치(100)는 보정된 위치(507, 509) 및/또는 보정된 경로에 도달하기 위해 측정된 터치 위치(506, 508)에 벡터(530, 532)를 추가할 수 있다. 컴퓨팅 장치(100)는 스큐드되지 않은 것으로 결정된 보정된 위치(507, 509) 및/또는 보정된 경로(540) 및 측정된 터치 위치(502, 504, 510, 512)에 기초하여 터치 입력을 프로세싱할 수 있다.
도 6은 예시적인 구현에 따른 컴퓨팅 장치(100)의 개략도이다. 컴퓨팅 장치(100)는 터치 입력 프로세서(602)를 포함할 수 있다. 터치 입력 프로세서(602)는 예를 들어 터치스크린(102)에 접촉하는 물체에 의해 야기되는 터치 센서의 커패시턴스의 변화를 측정함으로써 터치 입력을 프로세싱할 수 있다.
터치 입력 프로세서(602)는 터치 값 측정기(604)를 포함할 수 있다. 터치 값 측정기(604)는 위치, 크기 및/또는 시간과 같이 터치 스크린(102)에 대한 터치 입력과 관련된 값을 측정할 수 있다.
터치 값 측정기(604)에 포함된 위치 측정기(606)는 터치 입력의 위치를 측정할 수 있다. 어떤 터치 센서가 정전 용량의 변화를 경험했는지에 따라 위치를 측정할 수 있다. 위치는 터치스크린(102)의 코너로부터의 수평 거리 및 터치스크린(102)의 동일한 코너로부터의 수직 거리를 나타낼 수 있는 x-값 및 y-값으로 표현 및/또는 저장될 수 있다. 일부 예에서, 수평 거리는 픽셀 단위로 측정될 수 있고/있거나 수직 거리는 픽셀 단위로 측정될 수 있다.
터치 값 측정기(604)에 포함된 크기 측정기(608)는 터치 입력의 크기 및/또는 힘을 측정할 수 있다. 크기는 터치 센서가 경험하는 정전용량의 변화량에 기초하여 측정될 수 있다. 크기는 절대값으로 표현 및/또는 저장될 수 있다.
터치 값 측정기(604)에 포함된 시간 측정기(609)는 터치 입력의 시간 및/또는 지속시간을 측정할 수 있다. 시간은 커패시턴스의 변화(들)를 컴퓨팅 장치(100) 내부의 클록 및/또는 컴퓨팅 장치(100)에 의해 액세스되는 클록과 비교함으로써 측정될 수 있다. 시간은 절대 날짜 및/또는 시간 또는 특정 시간에 상대적인 것으로 표현 및/또는 저장될 수 있다. 기간은 터치 입력이 시작된 시점과 터치 입력이 종료된 시점 사이의 시간일 수 있다. 기간은 초 및/또는 초 단위로 표현 및/또는 저장될 수 있다.
컴퓨팅 장치는 터치 값 보상기(610)를 포함할 수 있다. 터치 값 보상기(610)는 터치 접촉 위치에 있는 더 적은 수의 터치 센서에 기초하고 이를 보상하기 위해 선택된 스케일링 값으로 측정된 터치 값을 보상, 향상 및/또는 곱할 수 있다.
터치 값 보상기(610)는 스케일 맵퍼(scale mapper)(612)를 포함할 수 있다. 스케일 맵퍼(612)는 도 3c에 도시된 스케일링 값 맵(320)에 포함된 스케일링 값과 같은 스케일링 값에 터치 접촉의 위치를 맵핑할 수 있다. 터치 값 보정기(610)는 측정된 터치 값에 스케일링 값을 곱하여 보상된 터치 값을 생성할 수 있다.
컴퓨팅 장치(100)는 시프트 보정기(수정기)(614)를 포함할 수 있다. 시프트 보정기(614)는 도 4a와 관련하여 위에서 설명된 미리정의된 영역(400)에서의 시프트된 터치 위치 값과 같은 터치 센서 밀도의 변화에 의해 야기되는 시프트된 터치 위치 값을 보정할 수 있다.
시프트 보정기(614)는 시프트 맵퍼(616)를 포함할 수 있다. 시프트 맵퍼(616)는 검출 및/또는 측정된 터치 위치를 시프트 값에 맵핑할 수 있다. 예를 들어, 시프트 맵퍼(616)는 터치 입력의 측정된 위치가 미리정의된 영역(400) 내에 있는지 여부를 결정할 수 있다. 측정된 위치가 미리정의된 영역 내에 있으면, 시프트 맵퍼(616)는 측정된 터치 위치에 기초하여 시프트 값을 결정할 수 있다. 일부 예에서, 시프트 맵퍼(616)는 예를 들어 측정된 터치 위치를 시프트 맵(410)에 포함된 시프트 값에 맵핑함으로써 시프트 값을 결정할 수 있다. 일부 예에서, 시프트 맵퍼(616)는 측정된 터치 위치와 연관된 파일에 저장된 시프트 값을 찾아 시프트 값을 결정할 수 있다. 일부 예에서, 시프트 값 대신에, 시프트 보정기(614)는 측정된 터치 위치와 연관된 파일에 저장된 보정된 위치를 찾아 터치 입력에 대한 보정된 위치를 결정할 수 있다.
시프트 보정기(614)는 측정된 위치 및 시프트 값에 기초하여 터치 입력에 대한 보정 및/또는 시프트된 위치를 결정할 수 있다. 컴퓨팅 장치(100)는 시프트된 위치 및/또는 보정된 위치에 기초하여 터치 입력을 프로세싱할 수 있다.
컴퓨팅 장치(100)는 스큐(skew) 보정기(수정기)(618)를 포함할 수 있다. 스큐 보정기(618)는 복수의 터치 입력이 터치 입력 중 적어도 하나의 위치가 스큐드(Skewed)되었다고 표시한 스큐드 위치를 보정(수정)할 수 있다. 일부 예에서, 스큐 보정기(618)는 터치 값 보상기(610)가 측정된 터치 값을 보정(수정) 및/또는 보상하고/하거나 시프트 보정기(614)가 시프트된 위치를 보정(수정)한 후에 스큐드 위치를 보정(수정)할 수 있다.
스큐 보정기(618)는 스큐 결정기(620)를 포함할 수 있다. 스큐 결정기(620)는 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된(스큐된) 것으로 결정할 수 있다. 스큐 결정기(620)는 복수의 터치 입력의 시간 및 위치에 기초하여 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정할 수 있다. 스큐 결정기(620)는 예를 들어, 복수의 터치 입력 중 적어도 하나의 위치가 원호 또는 선과 같은 기 저장된 패턴에 맞지 않는 터치 입력에 기초하여 스큐된 것으로 결정할 수 있다.
스큐 보정기(618)는 필터(622)를 포함할 수 있다. 필터(622)는 스큐 결정기(620)가 결정한 스큐드된 터치 입력 위치를 보정할 수 있다. 필터(622)는 복수의 터치 입력에 무한 임펄스 응답 필터, 칼만 필터, 버터워스 필터 등의 필터를 적용하여 스큐드된 터치 입력 위치의 위치를 보정할 수 있다.
컴퓨팅 장치(100)는 디스플레이 프로세서(624)를 포함할 수 있다. 디스플레이 프로세서(624)는 컴퓨팅 장치(100)에서 실행되는 하나 이상의 애플리케이션 및/또는 컴퓨팅 장치(100)에서 실행되는 운영 체제로부터의 명령어에 기초하는 것과 같이 터치스크린(102)에 의해 생성된 그래픽 출력을 제어할 수 있다.
컴퓨팅 장치(100)는 카메라 프로세서(626)를 포함할 수 있다. 카메라 프로세서(626)는 카메라(106)에 의해 수신된 시각 데이터를 수신 및/또는 프로세싱할 수 있다.
컴퓨팅 장치(100)는 적어도 하나의 프로세서(628)를 포함할 수 있다. 적어도 하나의 프로세서(628)는 적어도 하나의 메모리 장치(630)에 저장된 명령어와 같은 명령어를 실행하여 컴퓨팅 장치(100)가 본 명세서에 기술된 방법, 기능 및/또는 기술의 임의의 조합을 수행하게 할 수 있다.
컴퓨팅 장치(100)는 적어도 하나의 메모리 장치(630)를 포함할 수 있다. 적어도 하나의 메모리 장치(630)는 비일시적 컴퓨터 판독 가능 저장 매체를 포함할 수 있다. 적어도 하나의 메모리 장치(630)는 프로세서(628)와 같은 적어도 하나의 프로세서에 의해 실행될 때 컴퓨팅 장치(100)가 방법, 기능 및/또는 기술의 임의의 조합을 수행하도록 구성되는 데이터 및 명령어를 저장할 수 있다. 따라서, 본 명세서에 기술된 임의의 구현에서(특정 구현과 관련하여 명시적으로 언급되지 않은 경우에도), 컴퓨팅 장치(100)와 연관되거나 이에 포함된 소프트웨어(예: 프로세싱 모듈, 저장된 명령어) 및/또는 하드웨어(예: 프로세서, 메모리 장치 등)는 단독으로 또는 컴퓨팅 장치(100)와 조합하여 본 명세서에 기술된 방법, 기능 및/또는 기술의 임의의 조합을 수행하도록 구성될 수 있다.
메모리(630)는 전술한 스케일링 맵(320) 및/또는 시프트 맵(410)과 같은 맵을 저장할 수 있다. 메모리(630)는 전술한 터치 값과 같은 터치 값(632)을 저장할 수 있다. 각각의 저장된 터치 값(632)에 대해, 메모리(630)는 위치(634), 크기(Magnitude)(636) 및/또는 시간(638) 및/또는 기간을 저장할 수 있다.
컴퓨팅 장치(100)는 적어도 하나의 입력/출력 노드(640)(즉, 인터페이스)를 포함할 수 있다. 적어도 하나의 입력/출력 노드(640)는 예를 들어, 서버로부터 및/또는 서버로 데이터를 수신 및/또는 전송할 수 있고 및/또는 입력을 수신하고 사용자로부터 출력을 사용자에게 제공할 수 있다. 입력 및 출력 기능은 단일 노드로 결합되거나 별도의 입력 및 출력 노드로 분할될 수 있다. 입력/출력 노드(640)는 예를 들어 터치스크린(102), 카메라(106), 스피커, 마이크로폰, 하나 이상의 버튼, 및/또는 다른 컴퓨팅 장치와 통신하기 위한 하나 이상의 유선 또는 무선 인터페이스를 포함할 수 있다.
도 7은 예시적인 구현에 따라 컴퓨팅 장치(100)에 의해 수행되는 기능의 파이프라인(700)을 도시한다. 컴퓨팅 장치(100)는 터치 입력을 수신할 수 있다(702). 컴퓨팅 장치(100)는 터치스크린(102)을 통해 터치 입력을 수신할 수 있다.
컴퓨팅 장치(100)는 측정된 터치 값을 프로세싱할 수 있다(704). 컴퓨팅 장치(100)는 터치 입력을 검출한 터치 센서의 커패시턴스의 변화량에 기초하여 터치 값의 크기를 결정함으로써 측정된 터치 값을 프로세싱할 수 있다.
컴퓨팅 장치(100)는 측정된 터치 값을 보상할 수 있다(706). 컴퓨팅 장치(100)는 예를 들어, 터치 입력 위치와 연관된 스케일링 값을 결정하고 측정된 터치 값에 스케일링 값을 곱함으로써 측정된 터치 값을 보상할 수 있다.
컴퓨팅 장치(100)는 터치 입력의 위치가 미리정의된 영역(400) 내에 있는지 여부를 결정할 수 있다(708). 터치 입력이 미리정의된 영역(400) 내에 위치하는 경우, 컴퓨팅 장치(100)는 예를 들어 시프트 맵(410)에 기초하여 터치 입력의 측정된 위치를 시프트함으로써, 터치 입력(710)의 측정된 위치를 시프트할 수 있다.
컴퓨팅 장치(100)는 측정된 터치 입력의 지터(jitter)를 감소시킬 수 있다(712). 컴퓨팅 장치(100)는 예를 들어 평균화 필터와 같은 복수의 터치 입력에 필터를 적용함으로써 측정된 터치 입력의 지터를 감소시킬 수 있다.
컴퓨팅 장치(100)는 710에서 시프트되었거나 시프트되지 않았을 수 있는 하나 이상의 위치가 스큐드되었는지 여부를 결정할 수 있다(714). 컴퓨팅 장치(100)는 다중 위치 및 시간에 필터를 적용하는 것과 같이 복수의 터치 입력의 위치 및 시간에 기초하여 위치가 스큐드되었는지 여부를 결정할 수 있다. 컴퓨팅 장치가 위치가 스큐드되지 않았다고 결정하면, 컴퓨팅 장치(100)는 터치 값을 프로세싱할 수 있다(716). 컴퓨팅 장치(100)가 위치가 스큐드되었다고 결정하면, 컴퓨팅 장치(100)는 스큐(skew)를 보정(수정)할 수 있고(718), 보상된 터치 값을 프로세싱할 수 있다(716).
도 8은 예시적인 구현에 따라 컴퓨팅 장치(100)에 의해 수행되는 방법을 나타내는 흐름도이다. 방법은 제1 측정된 터치 값을 수신하는 단계(802)를 포함할 수 있다. 제1 측정된 터치 값은 컴퓨팅 장치(100)에 포함된 카메라(106) 근처의 위치(243)와 같은 제1 위치에서의 제1 터치 입력을 나타낼 수 있다. 측정된 터치 값의 예는 도 3b에 도시되어 있다. 방법은 또한 제2 측정된 터치 값을 수신하는 단계(804)를 포함할 수 있다. 제2 측정된 터치 값은 제1 위치보다 카메라(106)로부터 더 먼 위치(242)와 같은 제2 위치에서의 제2 터치 입력을 나타낼 수 있다. 제2 위치의 터치 센서 밀도는 제1 위치의 터치 센서 밀도보다 클 수 있다. 방법은 또한 제1 보상된 터치 값을 생성하는 단계(806)를 포함할 수 있다. 제1 보상된 터치 값은 제1 측정된 터치 값과 제1 스케일링 값에 기초하여 생성될 수 있다. 스케일링 값의 예는 도 3c에 도시되어 있다. 방법은 또한 제2 보상된 터치 값을 생성하는 단계(808)를 포함할 수 있다. 제2 보상된 터치 값은 제2 측정된 터치 값 및 제2 스케일링 값에 기초하여 생성될 수 있다. 제2 스케일링 값은 제1 스케일링 값보다 작을 수 있다. 방법은 또한 제1 터치 입력 및 제2 터치 입력을 프로세싱하는 단계(810)를 포함할 수 있다. 제1 터치 입력 및 제2 터치 입력은 제1 보상된 터치 값 및 제2 보상된 터치 값에 기초하여 프로세싱될 수 있다.
일례에 따르면, 제1 스케일링 값과 제2 스케일링 값의 비율은 제1 위치의 터치 센서 밀도 대 제2 위치의 터치 센서 밀도의 비율에 반비례할 수 있다.
일 예에 따르면, 제1 측정된 터치 값은 제1 터치 입력에 따른 정전 용량의 변화를 나타낼 수 있다.
일 예에 따르면, 제2 측정된 터치 값은 제2 터치 입력에 따른 정전 용량의 변화를 나타낼 수 있다.
일 예에 따르면, 제1 측정된 터치 값은 터치스크린(102)과 같은 터치스크린으로부터 수신될 수 있다.
일 예에 따르면, 제1 측정된 터치 값은 정전식 터치스크린으로부터 수신될 수 있다.
도 9는 예시적인 구현에 따라 컴퓨팅 장치에 의해 수행되는 방법을 나타내는 흐름도이다. 이 방법은 터치스크린 상의 터치 입력의 측정된 위치가 미리정의된 영역 내에 있다고 결정하는 단계(902)를 포함할 수 있다. 미리정의된 영역(400)과 같은 미리정의된 영역은 카메라(106)에 근접할 수 있다. 방법은 시프트 값을 결정하는 단계(904)를 포함할 수 있다. 도 4b에 그래프로 도시된 예인 시프트 값은 터치 입력의 측정된 위치에 기초한 터치 입력을 위한 것일 수 있다. 방법은 시프트된 위치를 결정하는 단계(906)를 포함할 수 있다. 측정된 위치와 시프트 값을 기반으로 터치 입력에 대한 시프트된 위치를 결정할 수 있다. 방법은 터치 입력을 프로세싱하는 것을 포함할 수 있다(908). 시프트된 위치를 기준으로 터치 입력을 프로세싱할 수 있다.
예에 따르면, 미리정의된 영역은 환형을 갖는 동형의 형상을 가질 수 있고, 홀(402)과 같은 홀은 형상에 의해 경계가 정해질 수 있다. 홀은 카메라의 적어도 일부를 중첩(superpose)할 수 있다.
일 예에 따르면, 시프트를 결정하는 것은 터치 입력의 위치를 시프트 값에 맵핑하는 것을 포함할 수 있다.
도 10은 예시적인 구현에 따라 컴퓨팅 시스템에 의해 수행되는 방법을 나타내는 흐름도이다. 방법은 복수의 알려진 위치에서 터치스크린에 접촉하는 것을 포함할 수 있다(1002). 복수의 알려진 위치에서 터치스크린(102)을 접촉하는 예가 도 4c에 도시되어 있다. 알려진 위치를 식별하는 예가 도 2에 도시되어 있다. 복수의 알려진 위치는 적어도 터치 센서의 제1 밀도를 갖는 위치(242)와 같은 제1 위치, 및 터치 센서의 제2 밀도를 갖는 위치(243)와 같은 제2 위치를 포함할 수 있다. 제2 터치 센서 밀도는 제1 터치 센서 밀도보다 작을 수 있다. 방법은 또한 복수의 측정된 위치를 결정하는 단계(1004)를 포함할 수 있다. 복수의 측정된 위치는 터치스크린(102) 상에 있을 수 있다. 복수의 측정된 위치는 복수의 알려진 위치에 해당할 수 있다. 방법은 또한 맵를 생성하는 단계(1006)를 포함할 수 있다. 예로서, 도 4b에 도시된 시프트 맵(410) 또는 측정된 위치를 알려진 위치로 대체하는 맵은 복수의 측정된 위치를 복수의 알려진 위치로 맵핑할 수 있다.
예에 따르면, 방법은 컴퓨팅 장치(100)의 메모리(630)와 같은 모바일 컴퓨팅 장치의 메모리에 맵를 저장하는 단계를 더 포함할 수 있다.
예에 따르면, 터치스크린은 측정 및/또는 교정 장치(calibrating device) 상의 제1 터치스크린과 같은 제1 터치스크린일 수 있다. 방법은 터치스크린(102)과 같은 제2 터치스크린 상에서 터치 입력을 수신하는 단계를 더 포함할 수 있다. 이 방법은 제2 터치스크린(102) 상의 터치 입력의 위치가 카메라(106)에 근접한 미리정의된 영역(400)과 같은 미리정의된 영역 내에 있다고 결정하는 것을 더 포함할 수 있다. 방법은 터치 입력의 위치 및 생성된 맵를 기반으로 한 터치 입력에 대한, 도 4b에 도시된 시프트 값과 같은 시프트 값을 결정하는 단계를 더 포함할 수 있다. 생성된 맵의 예는 도 4b에 도시된 시프트 맵(410)일 수 있다. 방법은 또한 터치 입력의 위치 및 결정된 시프트 값에 기초하여 터치 입력을 프로세싱하는 단계를 포함할 수 있다. 터치 입력은 컴퓨팅 장치(100)와 같은 클라이언트 장치에 의해 프로세싱될 수 있다.
도 11은 예시적인 구현에 따라 컴퓨팅 장치(100)에 의해 수행되는 방법을 나타내는 흐름도이다. 방법은 복수의 터치 입력을 수신하는 것을 포함할 수 있다(1102). 복수의 터치 입력은 서로 다른 시간에 수신될 수 있으며 단일 이동 접촉에 포함될 수 있다. 복수의 터치 입력(502, 504, 506, 508, 510, 512)의 예가 도 5에 도시되어 있다. 이 방법은 복수의 터치 입력 중 적어도 하나의 측정된 위치가 스큐드된 것으로 결정하는 단계(1104)를 포함할 수 있다. 도 5의 예에서, 터치 입력(506, 508)은 스큐드된 것으로 결정된다. 이 방법은 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여, 복수의 터치 입력 중 적어도 하나의 스큐드된 위치를 보정(수정)하는 단계(1106)를 포함할 수 있다. 상기 스큐드 위치는 상기 스큐드된 복수의 터치 입력 중 적어도 하나의 위치와 상기 복수의 터치 입력 중 적어도 다른 둘 이상의 터치 입력의 위치에 기초하여 보정될 수 있다. 복수의 터치 입력 중 적어도 2개의 다른 입력의 예는 터치 입력(502, 504, 510, 512)이다. 이 방법은 또한 보정된 위치로 복수의 터치 입력을 프로세싱하는 단계(1108)를 포함할 수 있다. 보정된 위치(들)는 보정된 터치 위치(507, 509)를 포함할 수 있다.
일 예에 따르면, 스큐드 위치를 보정하는 것은 복수의 터치 입력의 위치에 필터를 적용하는 것을 포함할 수 있다.
일 예에 따르면, 스큐드 위치를 보정하는 것은 복수의 터치 입력의 위치에 무한 임펄스 응답 필터를 적용하는 것을 포함할 수 있다.
예에 따르면, 스큐드 위치를 보정하는 것은 복수의 터치 입력의 위치에 칼만 필터를 적용하는 것을 포함할 수 있다.
예에 따르면, 스큐드 위치를 보정하는 것은 복수의 터치 입력의 위치에 버터워스 필터를 적용하는 것을 포함할 수 있다.
예에 따르면, 복수의 터치 입력은 터치스크린(102)과 같은 터치스크린을 통해 수신될 수 있다.
일례에 따르면, 복수의 터치 입력은 정전식 터치스크린을 통해 수신될 수 있다.
일례에 따르면, 상기 방법은 복수의 터치 입력이 미리결정된 시간 내에 수신되었다고 결정하는 단계를 더 포함할 수 있다. 상기 스큐드 위치를 보정하는 단계는 복수의 터치 입력이 미리결정된 시간 내에 수신되었다고 결정하고 상기 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여 상기 스큐드 위치를 보정하는 단계를 포함할 수 있다.
도 12는 여기에 설명된 기술과 함께 사용될 수 있는 일반 컴퓨터 장치(1200) 및 일반 모바일 컴퓨터 장치(1250)의 예를 도시한다. 컴퓨팅 장치(1200)는 랩탑, 데스크탑, 태블릿, 워크스테이션, PDA, 텔레비전, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨팅 장치와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도된다. 컴퓨팅 장치(1250)는 PDA, 셀룰러 전화, 스마트폰 및 기타 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타내기 위한 것이다. 여기에 표시된 컴포넌트, 연결 및 관계, 기능은 예시일 뿐이며 이 문서에서 설명 및/또는 청구된 발명의 구현을 제한하지 않는다.
컴퓨팅 장치(1200)는 프로세서(1202), 메모리(1204), 저장 장치(1206), 메모리(1204)에 연결되는 고속 인터페이스(1208) 및 고속 확장 포트(1210), 저속 버스(1214) 및 저장 장치(1206)에 연결되는 저속 인터페이스(1212)를 포함한다. 프로세서(1202)는 반도체 기반 프로세서일 수 있다. 메모리(1204)는 반도체 기반 메모리일 수 있다. 컴포넌트(1202, 1204, 1206, 1208, 1210, 1212) 각각은 다양한 버스를 사용하여 상호 연결되며, 공통 마더보드 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(1202)는 메모리(1204) 또는 저장 장치(1206)에 저장된 명령어를 포함하여, 고속 인터페이스(1208)에 연결된 디스플레이(1216)와 같은 외부 입력/출력 장치를 컴퓨팅 장치(1200) 내에서 실행하기 위한 명령어를 프로세싱할 수 있다. 다른 구현에서, 다중 프로세서 및/또는 다중 버스는 다중 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 장치(1200)가 연결될 수 있으며, 각각의 장치는 필요한 동작의 일부를 제공한다(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 다중 프로세서 시스템으로서).
메모리(1204)는 컴퓨팅 장치(1200) 내에 정보를 저장한다. 일 구현에서, 메모리(1204)는 휘발성 메모리 유닛 또는 유닛들이다. 다른 구현에서, 메모리(1204)는 비휘발성 메모리 유닛 또는 유닛들이다. 메모리(1204)는 또한 자기 또는 광학 디스크와 같은 다른 형태의 컴퓨터 판독 가능 매체일 수 있다.
저장 장치(1206)는 컴퓨팅 장치(1200)를 위한 대용량 저장 장치를 제공할 수 있다. 한 구현에서, 저장 장치(1206)는 SAN(Storage Area Network) 또는 기타 구성에 있는 장치를 포함한, 플로피 디스크 장치, 하드 디스크 장치, 광학 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 기타 유사한 솔리드 스테이트 메모리 장치 또는 장치의 어레이와 같은 컴퓨터 판독 가능 매체이거나 이를 포함할 수 있다. 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현될 수 있다. 컴퓨터 프로그램 제품은 또한 실행될 때 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어를 포함할 수 있다. 정보 매체는 메모리(1204), 저장 장치(1206) 또는 프로세서(1202)의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 제어기(1208)는 컴퓨팅 장치(1200)에 대한 대역폭 집중 동작을 관리하는 반면, 저속 제어기(1212)는 낮은 대역폭 집중 동작을 관리한다. 이러한 기능의 할당은 단지 예시일 뿐이다. 한 구현에서, 고속 제어기(1208)는 메모리(1204), 디스플레이(1216)(예: 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(미도시)를 수용할 수 있는 고속 확장 포트(1210)에 결합된다. 구현에서, 저속 제어기(1212)는 저장 장치(1206) 및 저속 확장 포트(1214)에 결합된다. 다양한 통신 포트(예: USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트는 예를 들어 네트워크 어댑터를 통해 키보드, 포인팅 장치, 스캐너 또는 스위치나 라우터와 같은 네트워킹 장치와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(1200)는 도면에 도시된 바와 같이 다양한 형태로 구현될 수 있다. 예를 들어, 표준 서버(1220)로 구현되거나 이러한 서버 그룹에서 여러 번 구현될 수 있다. 랙 서버 시스템(1224)의 일부로 구현될 수도 있다. 또한, 노트북 컴퓨터(1222)와 같은 개인용 컴퓨터에서도 구현될 수 있다. 대안적으로, 컴퓨팅 장치(1200)로부터의 컴포넌트는 장치(1250)와 같은 모바일 장치(미도시)의 다른 컴포넌트와 결합될 수 있다. 그러한 장치들 각각은 하나 이상의 컴퓨팅 장치(1200, 1250)를 포함할 수 있고, 전체 시스템은 서로 통신하는 복수의 컴퓨팅 장치(1200, 1250)로 구성될 수 있다.
컴퓨팅 장치(1250)는 다른 컴포넌트 중에서 프로세서(1252), 메모리(1264), 디스플레이(1254)와 같은 입력/출력 장치, 통신 인터페이스(1266) 및 트랜시버(송수신기)(1268)를 포함한다. 장치(1250)에는 추가 저장 장치를 제공하기 위해 마이크로드라이브 또는 기타 장치와 같은 저장 장치가 제공될 수도 있다. 컴포넌트(1250, 1252, 1264, 1254, 1266, 1268) 각각은 다양한 버스를 사용하여 상호 연결되며, 여러 컴포넌트는 공통 마더보드 또는 적절한 다른 방식으로 장착될 수 있다.
프로세서(1252)는 메모리(1264)에 저장된 명령어를 포함하여 컴퓨팅 장치(1250) 내의 명령어를 실행할 수 있다. 프로세서는 별도의 다중 아날로그 및 디지털 프로세서를 포함하는 칩 세트로 구현될 수 있다. 프로세서는 예를 들어 사용자 인터페이스의 제어, 장치(1250)에 의해 실행되는 애플리케이션 및 장치(1250)에 의한 무선 통신과 같은 장치(1250)의 다른 컴포넌트의 조정(coordination)을 제공할 수 있다.
프로세서(1252)는 제어 인터페이스(1258) 및 디스플레이(1254)에 연결된 디스플레이 인터페이스(1256)를 통해 사용자와 통신할 수 있다. 디스플레이(1254)는 예를 들어 TFT LCD(Thin-Film-Transistor Liquid Crystal Display) 또는 OLED(Organic Light Emitting Diode) 디스플레이 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(1256)는 디스플레이(1254)를 구동하여 그래픽 및 기타 정보를 사용자에게 제공하기 위한 적절한 회로를 포함할 수 있다. 제어 인터페이스(1258)는 사용자로부터 명령어를 수신하고 프로세서(1252)에 제출하기 위해 명령어를 변환할 수 있다. 또한, 프로세서(1252)와 통신하는 외부 인터페이스(1262)가 제공되어 다른 장치와 장치(1250)의 근거리 통신을 가능하게 할 수 있다. 외부 인터페이스(1262)는 예를 들어 일부 구현에서 유선 통신을 위해, 또는 다른 구현에서 무선 통신을 위해 제공할 수 있고, 복수의 인터페이스가 또한 사용될 수 있다.
메모리(1264)는 컴퓨팅 장치(1250) 내에 정보를 저장한다. 메모리(1264)는 컴퓨터 판독 가능 매체 또는 미디어, 휘발성 메모리 장치 또는 비휘발성 메모리 장치 또는 장치들 중 하나 이상으로 구현될 수 있다. 확장 메모리(1274)는 또한 제공될 수 있고, 예를 들어 SIMM(Single In Line Memory Module) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(1272)를 통해 장치(1250)에 연결될 수 있다. 이러한 확장 메모리(1274)는 장치(1250)에 추가 저장 공간을 제공하거나 장치(1250)에 대한 애플리케이션 또는 기타 정보를 저장할 수도 있다. 구체적으로, 확장 메모리(1274)는 위에서 설명한 프로세스를 수행하거나 보완하기 위한 명령어를 포함할 수 있으며 보안 정보도 포함할 수 있다. 따라서, 예를 들어, 확장 메모리(1274)는 장치(1250)를 위한 보안 모듈로서 제공될 수 있고, 장치(1250)의 안전한 사용을 허용하는 명령어로 프로그램될 수 있다. 또한 보안 애플리케이션은 SIMM 카드를 통해 해킹 불가능한 방식으로 SIMM 카드에 식별 정보를 배치하는 것과 같은 추가 정보와 함께 제공될 수 있다.
메모리는 예를 들어 후술하는 바와 같이 플래시 메모리 및/또는 NVRAM 메모리를 포함할 수 있다. 한 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품은 실행될 때 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어를 포함한다. 정보 캐리어는 메모리(1264), 확장 메모리(1274) 또는 프로세서(1252)의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이며, 예를 들어 트랜시버(1268) 또는 외부 인터페이스(1262)를 통해 수신될 수 있다.
장치(디바이스)(1250)는 필요한 경우 디지털 신호 프로세싱 회로를 포함할 수 있는 통신 인터페이스(1266)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(1266)는 특히 GSM 음성 통화, SMS, EMS 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000 또는 GPRS와 같은 다양한 모드 또는 프로토콜 하에서 통신을 제공할 수 있다. 이러한 통신은 예를 들어 무선 주파수 송수신기(1268)를 통해 발생할 수 있다. 또한, 블루투스, WiFi 또는 기타 이러한 송수신기(미도시)를 사용하는 것과 같은 단거리 통신이 발생할 수 있다. 또한, GPS(Global Positioning System) 수신기 모듈(1270)은 장치(1250)에서 실행되는 애플리케이션에 의해 적절하게 사용될 수 있는 추가적인 내비게이션 및 위치 관련 무선 데이터를 장치(1250)에 제공할 수 있다.
장치(1250)는 또한 오디오 코덱(1260)을 사용하여 청각적으로 통신할 수 있으며, 이는 사용자로부터 음성 정보를 수신하고 이를 사용 가능한 디지털 정보로 변환할 수 있다. 마찬가지로 오디오 코덱(1260)은 예를 들어 장치(1250)의 핸드셋에서와 같이 스피커를 통해 사용자를 위한 가청 사운드를 생성할 수 있다. 그러한 사운드는 음성 전화 통화로부터의 사운드를 포함할 수 있고, 녹음된 사운드(예: 음성 메시지, 음악 파일 등)를 포함할 수 있으며, 또한 장치(1250)에서 작동하는 애플리케이션에 의해 생성된 사운드를 포함할 수 있다.
컴퓨팅 장치(1250)는 도면에 도시된 바와 같이 다양한 형태로 구현될 수 있다. 예를 들어, 셀룰러 전화기(1280)로 구현될 수 있다. 또한 스마트폰(1282), PDA 또는 기타 유사한 모바일 장치의 일부로 구현될 수 있다.
여기에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 회로, 집적 회로, 특별히 설계된 ASIC(application specific integrated circuits), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현은 적어도 하나의 프로그래밍 가능한 프로세서를 포함하는 프로그래밍 가능한 시스템에서 실행 가능 및/또는 해석 가능한 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있으며, 이는 스토리지(저장) 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령어를 수신하고 데이터 및 명령어를 전송하도록 결합된 특수 또는 범용일 수 있다. 이러한 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드라고도 함)은 프로그래밍 가능한 프로세서를 위한 기계 명령어를 포함하며 HI(high-level) 절차 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본원에 사용된 바와 같이, 용어 "기계 판독 가능 매체" "컴퓨터 판독 가능 매체"는 기계가 읽을 수 있는 신호(기계 판독 가능 신호)로서 기계 명령어를 수신하는 기계 판독 가능 매체를 포함하여, 프로그램 가능한 프로세서에 기계 명령어 및/또는 데이터를 제공하는 데 사용되는 모든 컴퓨터 프로그램 제품, 장치 및/또는 디바이스(예: 자기 디스크, 광 디스크, 메모리, 프로그램 가능 논리 장치(PLD: Programmable Logic Devices))를 의미한다. "기계 판독 가능 신호"라는 용어는 프로그램 가능한 프로세서에 기계 명령어 및/또는 데이터를 제공하는 데 사용되는 모든 신호를 의미한다.
사용자와의 상호작용을 제공하기 위해, 여기에 설명된 시스템 및 기술은 사용자에게 정보를 표시하기 위한 디스플레이 장치(예: CRT(음극선관) 또는 LCD(액정 디스플레이) 모니터) 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 장치(예: 마우스 또는 트랙볼)를 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 장치를 사용하여 사용자와의 상호 작용도 제공할 수 있으며; 예를 들어, 사용자에게 제공되는 피드백은 모든 형태의 감각 피드백(예: 시각적 피드백, 청각 피드백 또는 촉각 피드백)일 수 있으며; 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함한 모든 형태로 수신될 수 있다.
여기에 설명된 시스템 및 기술은 백엔드 컴포넌트(예: 데이터 서버)를 포함하거나 미들웨어 컴포넌트(예: 애플리케이션 서버)를 포함하거나 프런트 엔드 컴포넌트(예: 사용자가 여기에 설명된 시스템 및 기술의 구현과 상호 작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저가 있는 클라이언트 컴퓨터)를 포함하거나 이러한 백 엔드, 미들웨어 또는 프런트 엔드 컴포넌트의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트는 디지털 데이터 통신의 모든 형태 또는 매체(예: 통신 네트워크)로 상호 연결될 수 있다. 통신 네트워크의 예에는 LAN(Local Area Network), WAN(Wide Area Network) 및 인터넷이 포함된다.
컴퓨팅 시스템은 클라이언트와 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며 일반적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버의 관계는 각 컴퓨터에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램 덕분에 발생한다.
복수의 실시예가 설명되었다. 그럼에도 불구하고, 본 발명의 사상 및 범위를 벗어나지 않고 다양한 보정이 이루어질 수 있음을 이해할 것이다.
또한, 그림에 묘사된 논리 흐름은 원하는 결과를 얻기 위해 표시된 특정 순서나 순차적 순서를 요구하지 않는다. 또한, 설명된 흐름으로부터 다른 단계가 제공되거나 단계가 제거될 수 있으며 다른 컴포넌트가 설명된 시스템에 추가되거나 제거될 수 있다. 따라서, 다른 실시예는 다음 청구범위 내에 있다.

Claims (23)

  1. 비일시적 컴퓨터 판독 가능 저장 매체로서,
    적어도 하나의 프로세서에 의해 실행될 때 카메라를 포함하는 컴퓨팅 장치로 하여금 동작들을 수행하도록 구성된 명령어를 포함하며, 상기 동작들은,
    제1 측정된 터치 값을 수신하는 동작 -상기 제1 측정된 터치 값은 제1 위치에서의 제1 터치 입력을 나타냄-;
    제2 측정된 터치 값을 수신하는 동작 -상기 제2 측정된 터치 값은 상기 제1 위치보다 상기 카메라로부터 더 먼 제2 위치에서의 제2 터치 입력을 나타내고, 상기 제2 위치의 터치 센서의 밀도는 상기 제1 위치의 터치 센서의 밀도보다 큼-;
    상기 제1 측정된 터치 값 및 제1 스케일링 값에 기초하여 제1 보상된 터치 값을 생성하는 동작;
    상기 제2 측정된 터치 값 및 제2 스케일링 값에 기초하여 제2 보상된 터치 값을 생성하는 동작 -상기 제2 스케일링 값은 상기 제1 스케일링 값보다 작음-; 그리고
    상기 제1 보상된 터치 값 및 상기 제2 보상된 터치 값에 기초하여 상기 제1 터치 입력 및 상기 제2 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  2. 제1항에 있어서, 상기 제1 스케일링 값과 상기 제2 스케일링 값 사이의 비율은 상기 제1 위치에서의 터치 센서의 밀도 대 상기 제2 위치에서의 터치 센서의 밀도의 비율에 반비례하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  3. 제1항 또는 제2항에 있어서, 상기 제1 측정된 터치 값은 상기 제1 터치 입력에 따른 커패시턴스의 변화를 나타내는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  4. 제3항에 있어서, 상기 제2 측정된 터치 값은 상기 제2 터치 입력에 따른 커패시턴스의 변화를 나타내는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  5. 선행하는 청구항 중 어느 한 항에 있어서, 상기 제1 측정된 터치 값은 터치스크린으로부터 수신되는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  6. 제1항에 있어서, 상기 제1 측정된 터치 값은 정전식 터치스크린으로부터 수신되는 비일시적 컴퓨터 판독 가능 저장 매체.
  7. 비일시적 컴퓨터 판독 가능 저장 매체로서,
    적어도 하나의 프로세서에 의해 실행될 때 컴퓨팅 장치로 하여금 동작들을 수행하도록 구성된 명령어를 포함하며, 상기 동작들은,
    터치스크린 상의 터치 입력의 측정된 위치가 카메라에 대한 근접성 기준(proximity criterion)을 충족하는 미리정의된 영역 내에 있다고 결정하는 동작;
    상기 터치 입력의 측정된 위치에 기초하여 상기 터치 입력에 대한 시프트 값을 결정하는 동작;
    상기 측정된 위치 및 상기 시프트 값에 기초하여 상기 터치 입력에 대한 시프트된 위치를 결정하는 동작; 그리고
    상기 시프트된 위치에 기초하여 상기 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  8. 제7항에 있어서, 상기 미리정의된 영역은 환형(annulus)과 동형(homeomorphic)인 형상을 가지며; 그리고
    상기 형상으로 둘러싸인 홀은 상기 카메라의 적어도 일부를 중첩(superpose)하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  9. 제7항 또는 제8항에 있어서, 상기 시프트를 결정하는 것은 상기 터치 입력의 위치를 상기 시프트 값에 맵핑하는 것을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  10. 방법으로서,
    복수의 알려진 위치에서 터치스크린을 접촉하는 단계 -상기 복수의 알려진 위치는 제1 밀도의 터치 센서를 갖는 제1 위치 및 제2 밀도의 터치 센서를 갖는 제2 위치를 적어도 포함하고; 상기 터치 센서의 제2 밀도는 상기 터치 센서의 제1 밀도보다 작음-;
    상기 복수의 알려진 위치에 대응하는 상기 터치스크린 상의 복수의 측정된 위치를 결정하는 단계; 그리고
    맵을 생성하는 단계를 포함하며, 상기 맵은 상기 복수의 측정된 위치를 상기 복수의 알려진 위치에 맵핑하는 것을 특징으로 하는 방법.
  11. 제10항에 있어서, 상기 방법은,
    모바일 컴퓨팅 장치의 메모리에 상기 맵를 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  12. 제10항 또는 제11항에 있어서,
    상기 터치스크린은 제1 터치스크린을 포함하고; 그리고
    상기 방법은,
    제2 터치스크린에 대한 터치 입력을 수신하는 단계;
    상기 제2 터치스크린 상의 상기 터치 입력의 위치가 카메라에 근접한 미리정의된 영역 내에 있다고 결정하는 단계;
    상기 터치 입력의 위치 및 상기 생성된 맵에 기초하여 상기 터치 입력에 대한 시프트 값을 결정하는 단계; 그리고
    상기 터치 입력의 위치 및 상기 결정된 시프트 값에 기초하여 상기 터치 입력을 프로세싱하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  13. 비일시적 컴퓨터 판독 가능 저장 매체로서,
    적어도 하나의 프로세서에 의해 실행될 때 컴퓨팅 장치로 하여금 동작들을 수행하도록 구성되는 명령어를 포함하며, 상기 동작들은,
    복수의 터치 입력을 수신하는 동작 -상기 복수의 터치 입력은 서로 다른 시간에 수신되고 그리고 단일 이동 접촉(single moving contact)에 포함됨-;
    상기 복수의 터치 입력 중 적어도 하나의 측정된 위치가 스큐드(skewed)된 것으로 결정하는 동작;
    상기 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여, 상기 복수의 터치 입력 중 적어도 하나의 스큐드 위치 및 상기 복수의 터치 입력 중 적어도 다른 2개의 위치에 기초하여 상기 복수의 터치 입력 중 상기 적어도 하나의 스큐드 위치를 보정하는 동작; 그리고
    상기 보정된 위치로 상기 복수의 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  14. 제13항에 있어서, 상기 스큐드 위치를 보정하는 동작은 상기 복수의 터치 입력의 위치에 필터를 적용하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  15. 제13항에 있어서, 상기 스큐드 위치를 보정하는 동작은,
    상기 복수의 터치 입력의 위치에 무한 임펄스 응답 필터를 적용하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  16. 제13항에 있어서, 상기 스큐드 위치를 보정하는 동작은,
    상기 복수의 터치 입력의 위치에 칼만 필터를 적용하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  17. 제13항에 있어서, 상기 스큐드 위치를 보정하는 동작은,
    상기 복수의 터치 입력의 위치에 버터워스 필터를 적용하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  18. 제13항 내지 제17항 중 어느 한 항에 있어서, 상기 복수의 터치 입력은 터치스크린을 통해 수신되는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  19. 제13항 내지 제17항 중 어느 한 항에 있어서, 상기 복수의 터치 입력은 정전식 터치스크린을 통해 수신되는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  20. 제13항 내지 제19항 중 어느 한 항에 있어서, 상기 동작들은,
    상기 복수의 터치 입력이 미리결정된 시간 내에 수신된 것으로 결정하는 동작을 더 포함하며,
    상기 스큐드 위치를 보정하는 동작은,
    상기 복수의 터치 입력이 미리결정된 시간 내에 수신된 것으로 결정하고 그리고 상기 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여 상기 스큐드 위치를 보정하는 동작을 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  21. 컴퓨터 시스템으로서,
    프로세서, 카메라 및 비일시적 컴퓨터 판독 가능 저장 매체를 포함하며;
    상기 프로세서는 상기 컴퓨터 판독 가능 저장 매체에 저장된 명령어를 수행할 때 동작들 수행하도록 배열되며, 상기 동작들은,
    제1 측정된 터치 값을 수신하는 동작 -상기 제1 측정된 터치 값은 제1 위치에서의 제1 터치 입력을 나타냄-;
    제2 측정된 터치 값을 수신하는 동작 -상기 제2 측정된 터치 값은 상기 제1 위치보다 상기 카메라로부터 더 먼 제2 위치에서의 제2 터치 입력을 나타내고, 상기 제2 위치의 터치 센서의 밀도는 상기 제1 위치의 터치 센서의 밀도보다 큼-;
    상기 제1 측정된 터치 값 및 제1 스케일링 값에 기초하여 제1 보상된 터치 값을 생성하는 동작;
    상기 제2 측정된 터치 값 및 제2 스케일링 값에 기초하여 제2 보상된 터치 값을 생성하는 동작 -상기 제2 스케일링 값은 상기 제1 스케일링 값보다 작음-; 그리고
    상기 제1 보상된 터치 값 및 상기 제2 보상된 터치 값에 기초하여 상기 제1 터치 입력 및 상기 제2 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  22. 컴퓨터 시스템으로서,
    프로세서 및 비일시적 컴퓨터 판독 가능 저장 매체를 포함하며,
    상기 프로세서는 상기 컴퓨터 판독 가능 저장 매체에 저장된 명령어를 수행할 때 동작들을 수행하도록 배열되며, 상기 동작들은,
    터치스크린 상의 터치 입력의 측정된 위치가 카메라에 대한 근접성 기준(proximity criterion)을 충족하는 미리정의된 영역 내에 있다고 결정하는 동작;
    상기 터치 입력의 상기 측정된 위치에 기초하여 상기 터치 입력에 대한 시프트 값을 결정하는 동작;
    상기 측정된 위치 및 상기 시프트 값에 기초하여 상기 터치 입력에 대한 시프트된 위치를 결정하는 동작; 그리고
    상기 시프트된 위치에 기초하여 상기 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  23. 컴퓨터 시스템으로서,
    프로세서 및 비일시적 컴퓨터 판독 가능 저장 매체를 포함하며,
    상기 프로세서는 상기 컴퓨터 판독 가능 저장 매체에 저장된 명령어를 수행할 때 동작들을 수행하도록 배열되며, 상기 동작들은,
    복수의 터치 입력을 수신하는 동작 -상기 복수의 터치 입력은 서로 다른 시간에 수신되고 그리고 단일 이동 접촉(single moving contact)에 포함됨-;
    상기 복수의 터치 입력 중 적어도 하나의 측정된 위치가 스큐드(skewed)된 것으로 결정하는 동작;
    상기 복수의 터치 입력 중 적어도 하나의 위치가 스큐드된 것으로 결정하는 것에 기초하여,
    상기 복수의 터치 입력 중 적어도 하나의 스큐드 위치 및 상기 복수의 터치 입력 중 적어도 다른 2개의 위치에 기초하여 상기 복수의 터치 입력 중 상기 적어도 하나의 스큐드 위치를 보정하고; 그리고
    상기 보정된 위치로 상기 복수의 터치 입력을 프로세싱하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
KR1020227041963A 2020-06-03 2020-06-03 터치 입력 보정 KR20230003202A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/070117 WO2021247086A1 (en) 2020-06-03 2020-06-03 Correcting touch inputs

Publications (1)

Publication Number Publication Date
KR20230003202A true KR20230003202A (ko) 2023-01-05

Family

ID=71950850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227041963A KR20230003202A (ko) 2020-06-03 2020-06-03 터치 입력 보정

Country Status (6)

Country Link
US (1) US20230236698A1 (ko)
EP (1) EP4162350A1 (ko)
JP (1) JP2023528061A (ko)
KR (1) KR20230003202A (ko)
CN (1) CN115605831A (ko)
WO (1) WO2021247086A1 (ko)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201203052A (en) * 2010-05-03 2012-01-16 Flatfrog Lab Ab Touch determination by tomographic reconstruction
US9164607B2 (en) * 2012-11-30 2015-10-20 3M Innovative Properties Company Complementary touch panel electrodes
US10410037B2 (en) * 2015-06-18 2019-09-10 Shenzhen GOODIX Technology Co., Ltd. Under-screen optical sensor module for on-screen fingerprint sensing implementing imaging lens, extra illumination or optical collimator array
GB2544307B (en) * 2015-11-12 2018-02-07 Cambridge Touch Tech Ltd Processing signals from a touchscreen panel
US10025428B2 (en) * 2015-11-19 2018-07-17 Synaptics Incorporated Method and apparatus for improving capacitive sensing detection
US9874974B2 (en) * 2016-04-08 2018-01-23 Stmicroelectronics Asia Pacific Pte Ltd Dead zone compensation for touch screens
CN107450841B (zh) * 2017-08-08 2019-05-07 腾讯科技(深圳)有限公司 交互对象控制方法及装置

Also Published As

Publication number Publication date
US20230236698A1 (en) 2023-07-27
JP2023528061A (ja) 2023-07-03
WO2021247086A1 (en) 2021-12-09
EP4162350A1 (en) 2023-04-12
CN115605831A (zh) 2023-01-13

Similar Documents

Publication Publication Date Title
CN104866080B (zh) 屏幕内容显示方法和***
US9582851B2 (en) Using proximity sensing to adjust information provided on a mobile device
US10268302B2 (en) Method and apparatus for recognizing grip state in electronic device
US9922399B2 (en) User and device movement based display compensation with corrective action for displaying content on a device
US10963044B2 (en) Apparatus, system and method for dynamic modification of a graphical user interface
US9665216B2 (en) Display control device, display control method and program
US9798420B2 (en) Electronic apparatus, control method therefor, and storage medium
KR20100116326A (ko) 휴대 단말기의 캘리브레이션 방법 및 장치
TWI497390B (zh) 觸控顯示裝置及其電容値感測方法
WO2014147544A1 (en) Recalibrating an inertial navigation system
CN110460827B (zh) 振镜工作状态的确定方法、装置及计算机存储介质
US9557781B2 (en) Adjusting coordinates of touch input
KR20150011885A (ko) 디바이스의 사용자 인터페이스 제공 방법 및 그 디바이스
US20170195853A1 (en) Mobile device, method for controlling mobile device, and non-transitory storage medium
TWI485582B (zh) 修正觸碰位置的方法
KR20230003202A (ko) 터치 입력 보정
CN116594028B (zh) 对齐参数的验证方法、装置、存储介质及电子设备
CN105335118A (zh) 一种电子设备控件的显示方法和装置
CN108769529A (zh) 一种图像校正方法、电子设备及计算机可读存储介质
JP2015032261A (ja) 表示装置および制御方法
KR20180039954A (ko) 영상을 처리하는 방법, 디바이스 및 기록매체
CN113470096A (zh) 深度测量方法、装置和终端设备
KR20180091695A (ko) 기울기 도출 장치 및 기울기 도출 방법
CN113341456B (zh) 一种基于非规则网格的地震偏移方法、装置及电子设备
EP2801015A1 (en) Adjusting coordinates of touch input