KR20150114364A - 터치 콘트롤러의 터치 데이터 세그먼테이션 방법 - Google Patents

터치 콘트롤러의 터치 데이터 세그먼테이션 방법 Download PDF

Info

Publication number
KR20150114364A
KR20150114364A KR1020140118963A KR20140118963A KR20150114364A KR 20150114364 A KR20150114364 A KR 20150114364A KR 1020140118963 A KR1020140118963 A KR 1020140118963A KR 20140118963 A KR20140118963 A KR 20140118963A KR 20150114364 A KR20150114364 A KR 20150114364A
Authority
KR
South Korea
Prior art keywords
node
touch
peak
unlabeled
labeled
Prior art date
Application number
KR1020140118963A
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 삼성전자주식회사
Priority to US14/644,963 priority Critical patent/US20150277609A1/en
Priority to CN201510151712.8A priority patent/CN104978063A/zh
Priority to TW104110599A priority patent/TW201543301A/zh
Publication of KR20150114364A publication Critical patent/KR20150114364A/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

Abstract

본 발명은 터치 콘트롤러의 터치 데이터 세그먼테이션 방법에 대하여 개시된다. 터치 콘트롤러는 터치 패널의 터치 신호를 수신하여 터치 데이터를 발생하고, 터치 데이터의 피크 노드를 중심으로 세그먼테이션을 수행하여 주변 노드들에 라벨을 부여한다. 터치 데이터 세그먼테이션 방법은, 터치 데이터의 에너지 변화를 이용하여 터치 상태인지 아닌지를 판별하고, 터치 데이터의 피크 노드를 선택하고, 피크 노드를 추적하여 피크 노드의 상태를 판별하고, 피크 노드를 중심으로 세그먼테이션을 수행한다.

Description

터치 콘트롤러의 터치 데이터 세그먼테이션 방법{Touch data segmentation method of touch controller}
본 발명은 터치 데이터 세그먼테이션 방법에 관한 것으로서, 더욱 상세하게는 터치 콘트롤러에 의해 터치 패널의 터치 데이터를 구분하는 방법에 관한 것이다.
개인용 컴퓨터, 휴대용 통신 장치, 개인 전용 정보 처리 장치 등은 키보드, 마우스, 디지타이저(digitizer) 등의 다양한 입력 장치(input device)를 이용하여 사용자와의 인터페이스를 구성한다. 휴대 가능하고 사용 용이한 입력 장치에 대한 요구에 따라, 사용자가 손이나 펜 등으로 화면을 직접 접촉하여 정보를 입력하는 터치 패널(touch panel)이 이용되고 있다. 터치 패널에 터치된 부분을 감지하여 터치 영역을 구분하는 세그먼테이션 방법은, 터치 노드를 탐색하는(search) 데에 많은 연산 시간과 연산량을 필요로 하기 때문에 메모리 사용량이 커질 수 있다.
본 발명이 이루고자 하는 기술적 과제는, 메모리 사용량, 연산 시간 및 연산량을 감소시킬 수 있는 터치 데이터 세그먼테이션 방법과 터치 센서 시스템을 제공하는 데 있다.
상기 기술적 과제를 달성하기 위하여, 본 발명의 일면에 따른 터치 데이터 세그먼테이션 방법은, 터치 패널의 터치 데이터에서 피크 값을 갖는 피크 노드를 선택하고 라벨을 부여하는 단계와, 피크 노드를 중심으로 세그먼테이션을 수행하는 단계를 포함한다.
본 발명의 실시예들에 따라, 피크 노드를 중심으로 세그먼테이션을 수행하는 단계는, 피크 노드를 제1 중심 노드로 하고 제1 중심 노드의 주변 노드들 중 가장 작은 노드 값을 갖는 노드부터 탐색하는 (a) 단계, 가장 작은 노드 값을 갖는 노드를 제2 중심 노드로 하고 제2 중심 노드의 주변 유효 노드들에서 라벨링되지 않은 노드들 중 가장 큰 노드 값을 갖는 노드를 선택하여 메모리에 저장하는 (b) 단계, 그리고 가장 큰 노드 값을 갖는 노드를 제3 중심 노드로 하고 제3 중심 노드의 주변 유효 노드들의 라벨링되지 않은 노드들에서 제3 중심 노드 값보다 큰 노드들 중 가장 큰 노드 값을 갖는 노드를 선택하여 메모리에 저장하는 (c) 단계를 포함할 수 있다. (c) 단계는 제3 중심 노드의 주변 노드들에 제3 중심 노드 값보다 큰 노드가 없는 경우, 메모리에 저장된 노드들에 피크 노드와 동일한 라벨을 부여할 수 있다. 제2 중심 노드의 주변에 라벨링되지 않은 유효 노드들이 존재하는 경우, (a)-(c) 단계들을 수행할 수 있다.
본 발명의 실시예들에 따라, 터치 데이터 세그먼테이션 방법은 터치 데이터의 수평 방향의 에너지 변화와 터치 데이터의 수직 방향의 에너지 변화를 바탕으로 터치 데이터에서 터치 상태를 판별하는 단계를 더 포함할 수 있다. 터치 데이터의 에너지 변화가 증가하다가 감소하는 경우, 에너지 변화가 증가하는 경우 또는 에너지 변화가 감소하는 경우, 터치 상태로 판별될 수 있다.
본 발명의 실시예들에 따라, 터치 데이터 세그먼테이션 방법은 터치 데이터의 이전 프레임 피크 노드들의 상태 정보를 기초로 피크 노드를 추적하는 단계와, 피크 노드의 상태를 판별하는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따라, 피크 노드를 추적하는 단계는 이전 프레임 피크 노드들과 피크 노드 사이의 거리를 측정하는 단계, 측정된 거리들 중 가장 가까운 거리의 이전 프레임 피크 노드와 피크 노드를 연결하는 단계, 그리고 피크 노드는 해당 피크 노드와 연결된 이전 프레임 피크 노드의 상태 정보로 설정되는 단계를 포함할 수 있다.
본 발명의 실시예들에 따라, 피크 노드의 상태를 판별하는 단계는 피크 노드의 상태는 제1 및 제2 임계치들을 이용하고 피크 노드 값에 따라 노-터치 상태, 노이즈 상태, 터치 상태 또는 보류 상태로 구분될 수 있다. 제1 임계치는 터치 여부를 판별하는 기준으로 설정되고, 제2 임계치는 충분히 터치되었음을 나타내도록 제1 임계치 보다 큰 값으로 설정될 수 있다. 보류 상태는 피크 노드와 연결된 이전 프레임 피크 노드가 터치 상태이고, 피크 노드 값이 제2 임계치와 제1 임계치 사이에 있을 경우로 설정되고, 피크 노드의 상태 판별을 다음 프레임에서 수행하도록 할 수 있다.
본 발명의 다른 면에 따른 터치 센서 시스템은 터치 패널과 터치 콘트롤러를 포함한다. 터치 콘트롤러는 터치 패널로부터 전송되는 터치 신호를 수신하여 터치 데이터를 발생하고, 터치 데이터에서 피크 값을 갖는 피크 노드를 선택하고 라벨을 부여하여, 피크 노드를 중심으로 세그먼테이션을 수행할 수 있다.
본 발명의 실시예들에 따라, 터치 콘트롤러는 터치 데이터의 수평 방향의 에너지 변화와 터치 데이터의 수직 방향의 에너지 변화를 바탕으로 터치 데이터에서 터치 상태를 판별할 수 있다.
본 발명의 실시예들에 따라, 터치 콘트롤러는 터치 데이터의 이전 프레임 피크 노드들의 상태 정보를 기초로 하여 피크 노드를 추적하고, 피크 노드의 상태를 판별할 수 있다.
본 발명의 실시예들에 따라, 터치 콘트롤러는 피크 노드를 제1 중심 노드로 하고 제1 중심 노드의 주변 노드들 중 가장 작은 노드 값을 갖는 노드부터 탐색하고, 가장 작은 노드 값을 갖는 노드를 제2 중심 노드로 하고 제2 중심 노드의 주변 유효 노드들에서 라벨링되지 않은 노드들 중 가장 큰 노드 값을 갖는 노드를 선택하고, 가장 큰 노드 값을 갖는 노드를 제3 중심 노드로 하고 제3 중심 노드의 주변 유효 노드들의 라벨링되지 않은 노드들에서 제3 중심 노드 값보다 큰 노드들 중 가장 큰 노드 값을 갖는 노드를 선택할 수 있다. 제3 중심 노드의 주변 노드들에 제3 중심 노드 값보다 큰 노드가 없는 경우, 선택된 노드들에 피크 노드와 동일한 라벨을 부여할 수 있다.
본 발명의 실시예들에 따라, 터치 데이터의 세그먼테이션 방법은 터치 패널의 터치 데이터에서 제 1 피크 노드 값을 갖는 제 1 피크 노드를 선택하는 단계, 상기 제 1 피크 노드에 제 1 라벨을 부여하는 단계, 상기 라벨링된 제 1 피크 노드 및 상기 라벨링된 제 1 피크 노드의 주변의 라벨링되지 않은 적어도 하나의 노드를 포함하는 제 1 영역을 탐색하는 단계, 및 상기 제 1 영역에 속한 상기 라벨링된 되지 않은 적어도 하나의 노드를 라벨링하는 단계를 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 제 1 영역은 상기 제 1 피크 노드를 중심으로 하고 상기 제 1 피크 노드의 라벨링되지 않은 적어도 하나의 주변 노드를 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 라벨링되지 않은 적어도 하나의 주변 노드를 라벨링하는 단계는, 중심 노드를 업데이트 하는 단계, 상기 중심 노드의 노드 정보를 메모리에 저장하는 단계, 상기 중심 노드의 가장 높은 노드 값을 갖는 라벨링된 주변 노드를 선택하는 단계, 및 상기 메모리에 저장된 노드 정보에 기초하여 상기 중심 노드에 상기 제 1 레벨을 할당하는 단계를 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 라벨링되지 않은 적어도 하나의 주변 노드를 라벨링하는 단계는, 상기 노드 정보가 상기 메모리에 저장될 때 메모리 오버플로우(memory overflow)가 발생하면 상기 메모리에 저장된 노드 정보에 기초하여 하나 이상의 라벨링되지 않은 노드를 무효화하는 단계, 및 상기 메모리로부터 상기 노드 정보를 비우는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 제 1 영역에 속한 중심 노드를 업데이트하는 단계는, 상기 제 1 피크 노드의 라벨링되지 않은 최하위 주변 노드를 선택하는 단계 및 상기 선택된 라벨링되지 않은 최하위 주변 노드를 상기 중심 노드로 설정하는 단계를 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 제 1 영역에 속한 중심 노드를 업데이트하는 단계는, 상기 중심 노드의 라벨링되지 않은 최상위 주변 노드를 선택하는 단계 및 상기 선택된 라벨링되지 않은 최상위 주변 노드를 중심 노드로 설정하는 단계를 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 터치 데이터 세그먼테이션 방법은 상기 제 1 영역에 속한 상기 적어도 하나의 라벨링되지 않은 노드를 라벨링한 후에 상기 메모리에 저장된 노드 정보를 비우는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 터치 데이터 세그먼테이션 방법은 상기 제 1 레벨로 라벨링된 적어도 하나의 노드와 적어도 하나의 라벨링되지 않은 노드를 포함하도록 상기 제 1 영역의 크기를 변화시키거나 상기 제 1 영역의 위치를 이동시키는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따라, 상기 터치 데이터 세그먼테이션 방법은 상기 터치 데이터에 속한 제 2 피크 노드 값을 갖는 제 2 피크 노드를 선택하는 단계, 상기 제 2 피크 노드에 제 2 라벨을 부여하는 단계, 상기 라벨링된 제 2 피크 노드 및 상기 라벨링된 제 2 피크 노드의 주변의 라벨링되지 않은 적어도 하나의 노드를 포함하는 제 2 영역을 탐색하는 단계 및 상기 제 2 영역에 속한 상기 라벨링되지 않은 적어도 하나의 노드를 라벨링하는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따라, 터치 센서 시스템은 터치 패널, 및 상기 터치 패널로부터 전송되는 터치 신호를 수신하고, 상기 터치 신호들에 기초하여 터치 데이터를 발생하고, 상기 터치 데이터에서 피크 값을 갖는 피크 노드에 라벨을 부여하고, 상기 라벨링된 피크 노드와 상기 라벨링된 피크 노드의 적어도 하나의 라벨링되지 않은 주변 노드를 포함하는 제 1 영역에서 라벨링되지 않은 노드를 선택하고, 상기 선택된 라벨링되지 않은 노드의 노드 정보를 저장하고, 상기 저장된 노드 정보를 기초로하여 상기 제 1 영역에 속한 상기 선택된 라벨링되지 않은 노드를 라벨링하여 상기 터치 데이터의 세그먼테이션을 수행하는 터치 콘트롤러를 포함할 수 있다.
상술한 본 발명의 터치 데이터 세그먼테이션 방법은 이미 선택된 피크 노드에서 시작하여 주변 노드들을 탐색하면서 선택된 주변 노드들의 노드 정보를 메모리에 저장하고 라벨링하는 과정을 반복함으로써 매우 넓은 터치 영역에서도 작은 크기의 메모리 영역만을 사용하여 세그먼테이션을 효과적으로 수행할 수 있다.
본 발명의 터치 데이터 세그먼테이션 방법은 먼저 피크 노드를 찾고 피크 정보를 이용해서 노이즈 영역을 구분하고 그 구분된 영역에 대해서는 세그먼테이션을 수행하지 않음으로써 불필요한 연산을 막아 연산 시간 및 연산량을 줄일 수 있다.
도 1은 본 발명의 다양한 실시예들에 따른 터치 데이터 세그먼테이션 방법을 이용하는 터치 콘트롤러의 구성을 보여주는 도면이다.
도 2a 내지 도 2c는 도 1의 터치 패널을 설명하는 도면이다.
도 3은 본 발명의 다양한 실시예들에 따른 터치 데이터 세그먼테이션 방법을 설명하는 플로우챠트이다.
도 4와 도 5a 내지 도 5c는 본 발명의 다양한 실시예들에 따른 터치 상태를 판별하는 방법을 설명하는 도면이다.
도 6a 및 도 6b는 본 발명의 다양한 실시예들에 따른 터치 데이터의 피크 노드를 판별하는 방법을 설명하는 도면들이다.
도 7은 본 발명은 다양한 실시예들에 따른 터치 데이터의 피크 추적 방법을 설명하는 도면이다.
도 8 및 도 9은 본 발명의 다양한 실시예들에 따른 터치 데이터의 피크 노드의 상태를 판별하는 방법을 설명하는 도면들이다.
도 10a 내지 도 10g는 본 발명의 다양한 실시예들에 따른 터치 데이터의 세그먼테이션 방법을 설명하는 도면들이다.
도 11은 본 발명의 다양한 실시예들에 따른 터치 콘트롤러가 장착된 터치 디스플레이 장치를 설명하는 도면이다.
도 12는 본 발명의 다양한 실시예들에 따른 터치 콘트롤러를 포함하는 터치 센서 시스템이 탑재되는 다양한 제품들의 응용 예를 나타낸다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
전자 장치는 점점 소형화, 슬림화되면서 입력을 위한 키보드를 비롯한 버튼형 인터페이스 방식을 벗어나 터치 스크린 방식을 사용하고 있다. 터치 스크린은 동작 원리에 따라 저항막 방식(Resistive type), 표면 초음파 방식(Surface Acoustic Wave type), 적외선 방식(Infrared Beam type), 정전용량 방식(Capacitive type) 등이 있다.
정전용량 방식의 터치 스크린은 터치 센서를 포함한 회로의 정전용량 변화를 감지한 후, 감지된 데이터를 읽어들여 터치 좌표를 직접 출력하거나 터치 좌표의 일정한 데이터를 출력하여 터치 좌표를 계산한다. 정전용량 방식의 터치 스크린은 두 전극 사이에 형성되는 정전 용량의 변화를 감지하여 터치 발생을 인식한다. 터치 발생을 인식하기 위해 2차원의 터치 데이터를 분할(Segmentation, 이하 세그먼테이션이라 칭함)한다.
도 1은 본 발명의 다양한 실시예들에 따른 터치 데이터 세그먼테이션 방법을 이용하는 터치 콘트롤러의 구성을 보여주는 도면이다.
도 1을 참조하면, 터치 콘트롤러(100)는 터치 패널(200)과 호스트(300) 사이에 연결된다. 터치 콘트롤러(100)는 터치 패널(200)로부터 터치의 발생을 인식하고, 터치가 일어난 지점의 좌표를 산출하여 호스트(300)로 전달한다. 터치 패널(200)은 터치가 발생된 경우, 터치가 일어난 지점의 물리적 특성 변화를 터치 콘트롤러(100)로 전달한다. 터치 패널(200)이 정전 용량 방식의 터치 패널인 경우, 터치가 일어난 지점의 상호 용량(mutual capacitance)이 변화되었음을 나타내는 터치 신호(TS)를 터치 콘트롤러(100)로 전송한다.
터치 콘트롤러(100)는 터치 데이터 발생부(110), 마이크로 프로세서(120) 및 메모리(130)를 포함한다. 터치 데이터 발생부(110)는 터치 패널(200)로부터 전송된 터치 신호(TS)를 수신하여 터치 데이터(TD)를 생성한다. 터치 신호(TS)는 터치 패널(200)의 터치에 의해 변동하는 상호 용량의 측정값으로 출력되는 아날로그 신호일 수 있다. 터치 데이터 발생부(110)는 터치 신호(TS)를 증폭하고 변환하는 과정을 수행하여 디지털 신호인 터치 데이터(TD)를 생성할 수 있다.
마이크로 프로세서(120)는 터치 데이터 생성부(110)에서 생성된 터치 데이터(TD)를 수신하고, 터치 데이터(TD)를 탐색하여 유효한 터치가 발생하였는지 또는 멀티 터치가 발생하였는지 여부를 판별한다. 마이크로 프로세서(120)는 유효한 터치가 발생된 지점의 좌표를 계산하여 호스트(300)로 전달한다. 마이크로 프로세서(120)는 멀티 터치가 발생된 경우 멀티 터치 좌표들을 계산할 수 있다. 마이크로 프로세서(120)는 멀티 터치 알고리즘을 이용하여 터치 데이터를 라벨링하고 소정의 라벨 그룹들로 구분할 수 있다. 라벨 그룹이란 터치 데이터가 멀티 터치로 구분되는 여러 그룹들 중 어느 그룹에 속하는지를 구분하기 위해 부여되는 식별자를 말한다.
마이크로 프로세서(120)는 터치 데이터 세그먼테이션 방법을 수행할 수 있다. 터치 데이터 세그먼테이션 방법은 터치 데이터(TD)의 피크 노드를 중심으로 세그먼테이션을 수행하여 주변 노드들에 라벨을 부여한다. 터치 데이터 세그먼테이션 방법은 터치 데이터(TD)에서 터치 상태인지 아닌지를 판별한다. 터치 상태가 판별되면, 터치 데이터(TD)의 모든 노드들을 탐색하여 피크 값을 갖는 피크 노드를 선택한다. 피크 노드가 판별되면, 판별된 피크 노드의 상태 정보는 이전 프레임 피크 노드들의 상태 정보를 기초로 추적된다. 피크 노드 추적 후, 피크 노드의 상태를 판별하고, 터치 데이터의 세그먼테이션을 수행한다.
메모리(130)는 마이크로 프로세서(120)에서 수행되는 멀티 터치 알고리즘 또는 터치 데이터 세그먼테이션 방법을 실행하는 프로그램을 저장할 수 있다. 메모리(130)는 멀티 터치 알고리즘 또는 터치 데이터 세그먼테이션 방법의 실행 중에 생성되는 데이터 (또는 중심 노드들의 정보)를 저장할 수 있다. 메모리(130)에 저장되는 중심 노드들의 정보는 마이크로 프로세서(120)에 의해 터치 좌표를 계산하는 데 이용될 수 있다.
호스트(300)는 터치 패널(200)과 터치 콘트롤러(100)가 장착된 터치 센서 시스템의 어플리케이션 프로세서일 수 있다. 터치 센서 시스템은 개인용 컴퓨터, 휴대용 통신 장치, 개인 전용 정보 처리 장치 등에 포함될 수 있다.
도 2a 내지 도 2c는 도 1의 터치 패널을 설명하는 도면이다.
도 2a를 참조하면, 터치 패널(100)에 손가락(210)을 접촉시킨 상태를 나타낸다. 손가락(210)은 좌표 지시기로 작용한다. 실시예에 따라, 손가락(210) 대신에 스타일러스 펜(stylus pen)이 이용될 수 있다. 본 실시예에서는 손가락(210)이 X축 방향으로 X축 원점으로부터 11번째 노드에, 그리고 Y 축 방향으로 Y축 원점으로부터 4 번째 노드에 접촉하고 있는 상태를 보여준다.
도 2b를 참조하면, 터치 패널(200)은 상호 용량 방식(Mutual Capacitive method)의 터치 패널일 수 있다. 터치 패널(100)은 구동 전극들(TY1~TY14)과 수신 전극들(RX1~RX14)을 포함한다. 본 실시예에서는 14개의 구동 전극들과 14개의 수신 전극들을 포함하는 경우에 대하여 예시적으로 설명될 것이다. 실시예에 따라, 터치 패널(200)에 포함되는 구동 전극들과 수신 전극들의 수는 다양하게 구성될 수 있다. 또한, 실시예에 따라, 구동 전극과 수신 전극의 모양은 다양한 형태로 구성될 수 있다.
터치 패널(200)에서, 행 방향으로 구동 전극(TY1~TY14)이 배열되고, 열 방향으로 수신 전극(RX1~RX14)이 배열된다. 구동 전극(TY1~TY14)과 수신 전극(RX1~RX14)은 서로 교차하여 배치된다. 교차 배치되는 구동 전극(TY1~TY14)과 수신 전극(RX1~RX14) 사이에 상호 커패시턴스가 형성된다. 구동 전극(TY1~TY14)과 수신 전극(RX1~RX14)에 의해 상호 커패시턴스가 형성되는 지점 각각을 하나의 노드로 정의할 수 있다.
터치 패널(200) 상의 각 노드는, 도 2c와 같이, 매트릭스 형태로 나타낼 수 있다. 각 노드는 행과 열의 조합으로 구분할 수 있다. 예를 들어, 터치 패널(200) 상의 4행 3열에 위치하는 노드는 노드(4,3)으로 표시할 수 있다. 각 노드 마다 하나 이상의 주변 노드들(neighboring nodes)이 있을 수 있다. 예를 들면, 각 노드를 중심으로 주변의 8개의 노드가 주변 노드들일 수 있다.
터치 패널(200)에서, 구동 전극(TY1~TY14)으로 일정한 전압 펄스를 인가하고, 수신 전극(RX1~RX14)에서 전압 펄스에 대응되는 전하를 수집(collect)하여, 구동 전극(TY1~TY14)과 수신 전극(RX1~RX14)이 교차하는 노드의 커패시턴스를 측정할 수 있다. 터치 패널(200)의 노드에 손가락 또는 스타일러스 펜 등의 도전체가 접근하면, 전기장이 발생하여 커패시턴스가 감소할 수 있다. 감소되는 커패시턴스를 측정하여, 도 2c에 도시된 바와 같이, 각 노드에 대한 터치 데이터를 획득할 수 있다. 예를 들어, 노드(2,2)의 터치 데이터는 21이고, 노드(11,11)의 터치 데이터는 200이다. 터치 패널(200)은 터치된 복수의 터치 영역(220, 230 및 400)을 포함할 수 있다.
본 발명은 터치 데이터의 세그먼테이션 이전 단계에서 터치 영역만을 식별하고(identify) 터치 영역의 정보를 추출한 후, 세그먼테이션을 수행하는 터치 데이터 세그먼테이션 방법들에 대하여 기술된다. 본 발명은 도 1의 터치 콘트롤러(100)에 의하여 터치 데이터 세그먼테이션 방법을 실행하는 프로그램 또는 그 프로그램이 기록된 펌웨어(Firmware; F/W)를 통해 구현될 수 있다.
도 3은 본 발명의 다양한 실시예들에 따른 터치 데이터 세그먼테이션 방법을 설명하는 플로우챠트이다.
터치 데이터(TD)에서 터치 상태인지 아닌지를 판별한다(decide)(S310). 터치 데이터(TD)는 터치 패널(200, 도 1) 각 노드의 터치 신호(TS)를 수신하는 터치 데이터 발생부(120, 도 1)로부터 발생된다. 터치 패널(200)에서 실제 터치가 발생하면, 상호 커패시턴스의 변화가 크게 나타나서 터치 신호(TS) 및 터치 데이터(TD)는 큰 값일 것이다. 터치 패널(200)에서 터치가 발생하지 않은 경우, 상호 커패시턴스의 변화가 일어나지 않아 터치 신호(TS) 및 터치 데이터(TD)는 매우 작은 값일 것이다. 터치 패널(200)에서 실제 터치가 발생하지 않았지만 노이즈 성분에 의해 상호 커패시턴스가 변화될 수 있다. 이 경우, 상호 커패시턴스의 변화량이 미미하게 나타나서 터치 신호(TS) 및 터치 데이터(TD)는 작은 값일 것이다. 터치 데이터 값이 소정의 제1 임계치(THRESHOLD1) 이하인 경우, 해당 터치 데이터는 노이즈 성분으로 판단될 수 있다.
하나의 프레임 터치 데이터에서, 수평 방향의 에너지와 수직 방향의 에너지를 구할 수 있다. 수평 방향의 에너지는 수평 방향의 터치 데이터들의 합을 말하고, 수직 방향의 에너지는 수직 방향의 터치 데이터들의 합을 말한다. 터치 데이터의 에너지 변화를 감지하여 터치 상태를 판별할 수 있다. 도 4 및 도 5a 내지 도 5c에서 설명되는 수평 방향의 에너지와 수직 방향의 에너지 변화를 이용하여 터치 상태인지 아닌지를 판별한다.
터치 데이터의 모든 노드들을 탐색하여 터치 데이터의 피크 값을 갖는 노드를 선택한다(S320). 각 노드의 터치 데이터는 해당 노드의 노드 값으로 지칭될 수 있다. 선택된 노드의 노드 값이 주변 노드들의 노드 값들보다 큰 값이면, 선택된 노드는 피크 노드로 설정된다. 피크 노드의 위치와 노드 값은 메모리(130, 도 1)에 저장된다. 선택된 피크 노드의 노드 값이 주변 노드의 노드 값보다 큰 값이라 하더라도, 주변 노드 값들이 유효 값 (예컨대, 제1 임계치(THRESHOLD1)) 미만인 경우, 선택된 피크 노드는 유효한 피크 노드가 아닌 것으로 무시 될 수 있다. 유효한 피크 노드 판별은 도 6a 및 도6b에서 자세히 설명될 것이다.
판별된 피크 노드와 연관된 이전 프레임의 피크 노드를 추적할 수 있다(S330). 피크 노드 추적을 위하여, 이전 프레임의 피크 노드들의 위치와 현재 프레임의 피크 노드들의 위치 사이의 거리가 측정된다. 측정된 거리 값들 중에서 가장 작은 값에 해당하는 이전 프레임의 피크 노드와 현재 프레임의 피크 노드가 연결된다. 즉, 현재 프레임의 피크 노드는 가장 가까운 이전 프레임의 피크 노드와 연결된다. 상기 연결관계를 참조하여 현재 프레임의 피크 노드와 연관된 이전 프레임의 피크 노드를 추적한다. 피크 노드의 추적 방법은 도 7에서 자세히 설명될 것이다.
현재 프레임의 피크 노드의 상태를 판별한다(S340). 터치 데이터(TD)에 포함된 피크 노드의 상태는 이전 프레임의 피크 노드의 상태 및 현재 프레임의 피크 노드 값을 참조하여 결정될 수 있다. 피크 노드의 상태는 노이즈 상태, 터치 상태 또는 보류 상태 중 하나일 수 있다. 피크 노드의 상태를 판별하는 방법은 도 8에서 자세히 설명될 것이다. 터치 상태인 피크 노드의 위치, 노드 값 그리고 상기 판별된 상태는 터치 데이터 세그먼테이션을 위하여 파라미터(parameter)로 제공될 수 있다.
터치 데이터의 세그먼테이션을 수행한다(S350). 세그먼테이션 방법은 피크 노드의 상태를 참조하여 피크 노드를 라벨링하고, 피크 노드를 제1 중심 노드로 하고, 제1 중심 노드의 주변 노드들 중 가장 작은 노드 값을 갖는 노드부터 탐색한다. 가장 작은 노드 값을 갖는 노드를 제2 중심 노드로 하고, 제 2 중심 노드를 메모리(130)에 저장할 수 있다. 제2 중심 노드 주변의 유효 노드들에서 가장 큰 노드 값을 갖는 노드를 선택하고 해당 노드의 노드 정보를 메모리(130, 도 1)에 저장한다. 노드 정보는 선택된 노드의 노드 좌표 및 노드 값을 포함할 수 있다. 선택된 가장 큰 노드 값을 갖는 노드를 제3 중심 노드로 하고, 제3 중심 노드 주변의 라벨링되지 않은 노드들에서 제3 중심 노드 값보다 큰 노드들 중 가장 큰 노드 값을 갖는 노드를 다음 중심 노드로 선택하고 상기 다음 중심 노드의 노드 정보를 메모리(130)에 저장하는 과정을 수행한다. 선택된 중심 노드의 주변 노드중 가장 높은 노드 값을 갖는 노드를 다음 중심 노드로 선택하고, 선택된 다음 중심 노드의 정보를 메모리에 저장하는 과정을 반복한다. 이 때, 상기 메모리에 저장하는 과정을 피크 노드를 제외하면 더 이상 다음 중심 노드를 찾을 수 없을 때까지 반복한다. 이렇게 메모리(130)에 저장된 중심 노들들에 대해서 피크 노드와 동일한 라벨을 부여하고 메모리(130)에서 중심 노드들을 삭제할 수 있다.
본 발명의 실시예에 따른 세그먼테이션 방법은 이미 선택된 피크 노드에서 시작하여 주변 노드들을 탐색하면서 선택된 주변 노드들의 노드 정보를 메모리에 저장하고 라벨링하는 과정을 반복함으로써 매우 넓은 터치 영역에서도 작은 크기의 메모리 영역만을 사용하여 세그먼테이션을 효과적으로 수행할 수 있다.
본 실시예의 터치 데이터 세그먼테이션 방법은 먼저 피크 노드를 찾고 피크 정보를 이용해서 노이즈 영역을 구분하고 그 구분된 영역에 대해서는 세그먼테이션을 수행하지 않음으로써 불필요한 연산을 막아 연산 시간 및 연산량을 줄일 수 있다.
본 실시예의 터치 데이터 세그먼테이션 방법은 터치 데이터의 피크 노드를 중심으로 세그먼테이션을 수행하여 주변 노드들에 라벨을 부여하기 때문에, 메모리(130)에 저장되는 노드들의 수를 줄일 수 있다.
도 4, 도 5a 내지 도 5c는 본 발명의 다양한 실시예에 따른 터치 상태를 판별하는 방법을 설명하는 도면이다.
도 4를 참조하면, 터치 패널(200, 도2c) 일부분(400)의 각 노드의 터치 데이터를 예시적으로 보여준다. 수평 방향의 터치 데이터들의 합을 살펴보면, 1행은540, 2행은 743, 3행은 737, 4행은 479 그리고 5행은 304 로 나타난다. 수평 방향의 터치 데이터들의 합은 수평 방향의 에너지를 말한다. 수평 방향의 에너지는 540-743-737-479-304 로서, 540에서 743으로 증가하다가 737-479-304로 감소하는 경향을 보인다. 수직 방향의 터치 데이터들의 합을 살펴보면, 1열은541, 2열은 748, 3열은 786, 4열은 628 그리고 5열은 0으로 나타난다. 수직 방향의 터치 데이터들의 합은 수직 방향의 에너지를 말한다. 수직 방향의 에너지는 541-748-786-628-0 로서, 541에서 748-786으로 증가하다가 628-0으로 감소하는 경향을 보인다.
도 4의 수평 방향과 수직 방향의 에너지 변화는 증가하다가 감소하는 경향을 나타낸다. 이에 따라, 도 4의 터치 데이터는 터치 상태인 것으로 판별된다. 즉, 도 5a에 도시된 바와 같이, 터치 데이터의 에너지 변화가 증가하다가 감소하는 경우, 터치 상태로 판별된다. 실시예에 따라, 도 5b에 도시된 바와 같이, 터치 데이터의 에너지 변화가 증가하는 경우, 터치 상태로 판별될 수 있다. 또한, 실시예에 따라, 도 5c에 도시된 바와 같이, 터치 데이터의 에너지 변화가 감소하는 경우, 터치 상태로 판별될 수 있다.
도 6a 및 도 6b는 본 발명의 다양한 실시예에 따른 터치 데이터의 유효한 피크 노드를 판별하는 방법을 설명하는 도면들이다.
도 6a를 참조하면, 터치 패널(200, 도1)의 제1 부분의 각 노드의 터치 데이터를 예시적으로 보여준다. 터치 데이터의 피크 값은 100으로 선택된다. 선택된 노드의 주변 노드들의 값들은 소정의 제1 임계치(THRESHOLD1), 예컨대 15 이상임을 볼 수 있다. 15 이상의 터치 데이터를 갖는 노드는 유효 노드로 판별된다. 주변 노드들이 유효 노드들이므로, 선택된 노드는 피크 노드로 판별된다.
도 6b를 참조하면, 터치 패널(200, 도1)의 제2 부분의 각 노드의 터치 데이터를 예시적으로 보여준다. 터치 데이터의 피크 값은 100으로 선택된다. 선택된 노드의 주변 노드들의 값들은 제1 임계치(THRESHOLD2) 15 미만임을 볼 수 있다. 15 미만의 터치 데이터를 갖는 노드는 무효 노드로 판별된다. 모든 주변 노드들이 무효 노드들이므로, 선택된 노드는 노이즈로 판별될 수 있다. 예컨대, 도 2c의 터치 데이터에서, 제1 영역(220)의 피크 노드 100과 제2 영역(230)의 피크 노드 110은 주변 노드들이 무효 노드들이므로, 노이즈로인한 무효 노드로 판별된다.
도 7은 본 발명은 다양한 실시예에 따른 터치 데이터의 피크 추적 방법을 설명하는 도면이다.
도 7을 참조하면, 터치 패널(200, 도1)의 제3 부분의 이전 프레임의 터치 데이터와 현재 프레임의 터치 데이터를 예시적으로 보여준다. 이전 프레임에서 피크 노드는 A, B로 나타나고, 현재 프레임의 피크 노드는 C로 나타난다. 이전 프레임의 A 노드와 현재 프레임의 C 노드 사이의 거리(a)가 측정되고, 이전 프레임의 B 노드와 현재 프레임의 C 노드 사이의 거리(b)가 측정된다. 측정된 거리 값들(a, b) 중 B 노드와 C 노드 사이의 거리 값(b)이 작기 때문에, 이전 프레임의 B 노드와 현재 프레임의 C 노드가 연결된다. 현재 프레임의 C 노드는 이전 프레임의 B 노드의 상태 정보로 설정된다. 이전 프레임의 B 노드의 상태는 노이즈 상태, 터치 상태 또는 보류(Keep) 상태를 포함하고, 멀티 터치 데이터인 경우 라벨링 정보를 더 포함할 수 있다.
도 8및 도 9는 본 발명의 다양한 실시예에 따른 터치 데이터의 피크 노드의 상태를 판별하는 방법을 설명하는 도면이다.
도 8및 도 9를 참조하면, 터치 데이터의 피크 노드의 상태는 피크 노드 값을 이용하여 판별된다. 피크 노드의 상태는 이전 프레임에서의 상태와 피크 노드 값에 따라 노-터치 상태(810), 노이즈 상태(820), 터치 상태(830) 그리고 보류 상태(840)로 구분될 수 있다. 피크 노드의 상태는, 도 9에 도시된 2개의 임계치들(THRESHOLD1, THRESHOLD2)을 이용하여 판별될 수 있다. 제1 임계치(THRESHOLD1)는 노이즈이상의 터치가 발생했는지 아닌지 판별하는 기준이 된다. 제2 임계치(THRESHOLD2)는 제1 임계치(THRESHOLD1) 보다 큰 값으로 설정되고, 유효하게 터치되었음을 나타내는 기준이 된다.
노-터치 상태(810)는 피크 노드 값이 제1 임계치(THRESHOLD1) 이하인 경우로 설정된다. 이전 프레임의 노-터치 상태(810)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 이하인 경우, 현재 프레임의 피크 노드는 노-터치 상태(810)로 판별된다. 이전 프레임의 노-터치 상태(810)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 크고 제2 임계치(THRESHOLD2) 이하인 경우, 현재 프레임의 피크 노드는 노이즈 상태(820)로 판별된다. 이전 프레임의 노-터치 상태(810)에서 현재 프레임의 피크 노드 값이 제2 임계치(THRESHOLD2) 보다 크면, 현재 프레임의 피크 노드는 터치 상태(830)로 판별된다.
노이즈 상태(820)는 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 크고 제2 임계치(THRESHOLD2) 이하인 경우로 설정된다. 이전 프레임의 노-터치 상태(810)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 크고 제2 임계치(THRESHOLD2) 이하인 경우, 현재 프레임의 피크 노드는 노이즈 상태(820)로 판별된다. 이전 프레임의 노이즈 상태(820)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 이하인 경우, 현재 프레임의 피크 노드는 노-터치 상태(810)로 판별된다. 이전 프레임의 노이즈 상태(820)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 클 경우, 현재 프레임의 피크 노드는 터치 상태(830)로 판별된다.
터치 상태(830)는 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 큰 경우로 설정된다. 이전 프레임의 터치 상태(830)에서 현재 프레임의 피크 노드값이 제1 임계치(THRESHOLD1) 이하이면, 현재 프레임의 피크 노드는 보류 상태(840)로 판별된다.
보류 상태(840)는 피크 노드의 상태 판별을 다음 프레임에서 수행하도록 보류하는 상태를 말한다. 보류 상태(840)는 이전 프레임의 보류 상태(840)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 보다 크고 제2 임계치(THRESHOLD2) 이하인 경우로 설정된다. 이전 프레임의 보류 상태(840)에서 현재 프레임의 피크 노드 값이 제2 임계치(THRESHOLD2) 보다 크면, 현재 프레임의 피크 노드는 터치 상태(830)로 판별된다. 이전 프레임의 보류 상태(840)에서 현재 프레임의 피크 노드 값이 제1 임계치(THRESHOLD1) 이하인 경우, 현재 프레임의 피크 노드는 노-터치 상태(810)로 판별된다.
도 10a 내지 도 10g는 본 발명의 다양한 실시예에 따른 터치 데이터의 세그먼테이션 방법을 설명하는 도면들이다.
본 발명의 실시예들에서 가장 높은 노드(최상위 노드)는 가장 높은 노드 값을 갖는 노드이고, 가장 낮은 노드(최하위 노드)는 가장 낮은 노드 값을 갖는 노드를 의미한다. 상위 노드는 더 높은 노드 값을 갖는 노드이며, 하위 노드는 더 낮은 노드 값을 갖는 노드를 의미한다. 피크 노드는 피크 노드값을 갖는 노드를 의미한다. 또한, 유효하지 않은 노드라는 언급이 없는한 해당 노드는 유효노드를 의미할 수 있다. 주변 노드는 하나의 노드로부터 하나 이상의 노드만큼 떨어져 있는 노드를 의미하거나 하나의 중심 노드로 부터 일정 거리안에 있는 노드일 수 있다.
도 10a및 도10b의 세그먼테이션 방법의 플로우챠트는 도 10c및 도10e의 프레임 터치 데이터와 도 10d의 메모리와 연계하여 설명된다. 도 10d는 도 2c와 동일한 프레임의 터치 데이터를 보여준다. 도 10e는 복수개의 피크 노드를 포함하는 터치 데이터를 보여준다.
도 10a 내지 도 10e를 참조하면, 프레임 터치 데이터에서 터치 상태에 있는 하나의 라벨링되지 않은 피크 노드를 제 1 중심 노드로 선택하고 제1 중심 노드를 라벨링한다(S1010). 예를 들면, 선택된 피크 노드는 I 노드(도 10b의 I, 도 10d의 I1및 I2)로 나타나고, I 노드는 피크 노드 값 200을 갖고 I1 및 I2 노드는 피크 노드 값 107 및 105를 각각 갖는다. I 피크 노드에 라벨이 할당된다.
제1 중심 노드는 주변 노드를 검색하기 위해 사용되는 격자(도 10b의 M, 도 10d의 M1 및 M2)의 중심이 된다. 예를 들면, 도 10b의 200 노드값을 갖는 노드를 제1 중심노드로 하여 주변의 3x3 크기의 격자(M) 또는 도 10d의 107 및 106 노드값을 갖는 노드를 각각 제1 중심 노드로 하여 주변의 3x3 크기의 격자(M1및 M2) 가 정의될 수 있다.
제1 중심 노드를 중심으로 상기 격자내에 존재하는 라벨링 되지 않은 주변 노드들 중 하나의 노드를 현재 중심 노드로 선택하고 메모리(130)에 저장한다 (S1020). 현재 중심 노드는 제1 중심 노드의 주변 노드들 중 라벨링 되지 않은 가장 낮은 노드값을 가지는 노드일 수 있으나 이에 한정되지는 않으며 상기 격자의 좌측 최상단부터 시계 방향 또는 반시계 방향으로 순차적으로 선택되거나 미리 정해진 순서에 따라 선택된 라벨링되지 않은 노드일 수 있다. 예를 들면, 도 10c의 I 피크 노드를 중심으로 3x3의 격자(M) 내부의 주변 노드들이 탐색된다. I 피크 노드 주변의 8개 노드들 각각은 176-184-180-189-186-191-185-180 노드 값을 갖는다. 8개 주변 노드들은 제1 임계치 (예컨대, 15) 이상의 노드 값을 갖는 유효 노드들이다. 주변 유효 노드 값들에서 상기 격자의 좌측 상단에 위치한 또는 가장 작은 노드 값 176이 선택될 수 있다. 선택된 노드 값 176을 갖는 노드의 노드 정보가 도 10c의 메모리(130)에 저장될 수 있다. 노드 정보는 선택된 노드의 노드 좌표 및 노드 값을 포함할 수 있다.
메모리(130)에 노드 정보가 저장될 때마다 메모리 오버플로우(memory overflow)가 판별될 수 있다(S1022). 만약 메모리 오버플로우가 발생하면 메모리(130)에 저장된 노드 정보를 비우고 저장된 노드 정보에 상응하는 노드들을 유효하지 않은 노드로 처리한다(S1024). 만약 메모리 오버플로우가 발생하지 않으면 S1030 단계를 수행한다. 예를 들면, 터치 데이터의 노이즈에 의하여 현재 중심 노드를 탐색하는 과정에서 피크 노드와 멀어지는 방향으로 계속해서 탐색이 진행될 경우 메모리 오버플로우가 발생할 수 있으며, 이 경우 노이즈에 의한 비정상 패스로 간주하여 메모리(130)에 저장된 노드 정보에 기초하여 비정상 패스에 있는 노드들을 유효하지 않은 노드로 처리할 수 있다.
현재 중심 노드의 주변 노드 중 현재 중심 노드보다 큰 노드 값을 갖는 라벨링되지 않은 노드가 있는지 판별한다(S1030). 만일 라벨링되지 않은 더 큰 노드가 있다면 현재 중심 노드의 라벨링되지 않은 주변 노드중 제일 큰 노드 값을 갖는 노드를 선택하고 선택된 노드의 노드 정보를 메모리(130)에 저장하고, 선택된 노드를 현재 중심 노드로 업데이트한다(S1040). 만약 현재 중심 노드의 주변 노드들 중 상위노드가 모두 라벨링이 되었으면 S1060 단계를 수행한다. 예를 들어, 도 10c의 현재 중심 노드가 노드 값 176을 갖는 노드일 때, 현재 중심 노드 주변의 8개 노드들은 160-165-0-184-200(라벨링)-180-175-169 노드값을 갖는다. 주변 노드 값들 중 라벨링되지 않은 노드 값들에서 가장 큰 노드 값 184가 현재 중심 노드로 업데이트될 수 있다. 선택된 노드 값 184를 갖는 노드의 노드 정보가 도 10c의 메모리(130)에 저장될 수 있다. S1030 및 S1040 단계는 현재 중심 노드 주변에 라벨링된 상위 노드가 없을 때까지 계속된다. 따라서, 도 10c에 도시된 것과 같이 노드값 176-184-189-191을 갖는 노드들 순으로 노드 정보가 메모리(130)에 저장되고 S1060 단계로 이동한다.
현재 중심 노드 주변에 라벨링되지 않은 상위 노드가 없으므로, 주변 노드 중 가장 큰 노드값을 갖는 라벨링된 노드의 라벨로 현재 메모리에 저장된 노드 정보를 참조하여 라벨링되지 않은 노드을 라벨링한다(S1060). 이와 같이 하여 터치 영역 일부가 라벨링된다. 예를 들면, 도 10c의 현재 중심 노드가 노드값 191을 갖는 노드의 경우 더이상 선택할 라벨링 되지 않은 상위 노드가 없으므로 도 10c의 메모리(130)에 저장되어 있는 가장 큰 노드 값들인 191-189-184-176 와 상응하는 노드들은 주변의 라벨링된 가장 높은 값인 200을 갖는 피크 노드의 라벨에 따라 라벨링될 수 있다. 라벨링 후 메모리(130)의 내용은 비워질 수 있다.
제1 중심 노드를 포함하는 격자내의 주변 노드들 중에서 라벨링되지 않은 노드가 존재하는지 판별한다 (S1070). 만약 라벨링되지 않은 노드가 남아 있으면 S1020단계로 가서 제 1 중심 노드의 주변 노드들 중 라벨링되지 않은 하나의 노드를 현재 중심 노드로 선택한다, 만약 제1 중심 노드의 모든 주면 노드가 라벨링되었다면 상기 격자 내의 노드들에 대한 라벨링을 완료한다. 예를 들면, 도 10c의 제1 중심 노드 주변의 노드값 180, 185, 180, 및 186을 갖는 노드들이 라벨링되지 않은 노드로 존재하므로 S1020 내지 S1040 단계에서 설명한 바와 같이 라벨링될 수 있다. 이와 같이 제1 중심 노드의 모든 주변 노드가 라벨링되었을 경우 상기 격자내 라벨링이 완료된다.
선택된 제1 중심 노드의 주변 노드들이 모두 라벨링이 되었다면 터치 데이터(TD) 내에 라벨링되지 않은 다른 피크 노드가 더 존재하는지 판별한다(S1080). 예를 들면, 도 10e와 같이 터치 데이터(TD) 내에 복수의 피크 노드(I1및 I2)가 존재할 경우, 제 1피크 노드(I1) 및 제 1 피크 노드의 주변 노드가 라벨링되었을 경우, 라벨링되지 않은 제 2 피크 노드(I2)가 존재하면 S1010 단계로 이동하여 제 2 피크 노드를 새로운 제 1 중심 노드로 하여 S1010 내지 S1070 과정을 수행한다. 복수개의 피크 노드(노드값 107 및 105)를 갖는 터치 영역에서 세그먼테이션을 수행할 경우, 상기 복수개의 피크 노드에 서로 다른 라벨을 할당할 수 있다. 예를 들면, 노드값 107을 갖는 피크 노드는 라벨 A가 할당되고, 노드값 105을 갖는 피크 노드는 라벨 B가 할당 될 수 있다.
터치 데이터(TD) 내에 더이상 라벨링되지 않은 피크 노드가 없다면 상기 격자(M, M1 또는 M2)의 크기를 증가시키거나 상기 격자(M, M1 또는 M2)를 이동시키되 이동된 격자내에 적어도 하나의 라벨링되지 않은 노드와 적어도 하나의 라벨링된 노드를 포함하도록 이동시킨다(S1090). 예를 들면, 도 10c의 상기 3x3 크기의 격자(M)는 그 중심 노드가 노드값 176 혹은 186을 갖는 노드로 이동하도록 이동될 수 있다. 혹은 상기 3x3의 격자(M, M1 또는 M2)는 격자의 중심 노드는 같고 크기가 5x5로 증가될 수 있다.
터치 데이터에 라벨링되지 않은 노드가 있는지 판별한다(S2000). 판별결과, 라벨링되지 않은 노드가 있다면 S1020 단계를 수행하고, 모든 노드가 라벨링되었다면 세그먼테이션이 완료된다. 예를 들면, 도 10c의 중심노드가 176을 갖도록 상기 3x3 격자가 이동되었다면 상기 격자내 라벨링되지 않은 노드 160, 165, 169, 및 175에 대하여 상술한 바와같이 S1020 내지 S1080 단계를 수행하여 라벨링을 수행할 수 있다. 나머지 라벨링되지 않은 영역에 대해서도 마찬가지로 라벨링을 수행하여 터치 데이터(TD) 내에 더이상 라벨링되지 않은 노드가 없다면 세그먼테이션을 완료한다.
상술한 바와 같이 본 발명의 실시예들에 따른 터치 데이터의 세그멘테이션 방법은 피크 노드를 검색한 후에 검색된 피크노드를 중심으로 주변노드를 라벨링함으로써 작은 용량의 메모리로도 메모리 스택 오버플로우(overflow)없이 넓은 터치영역을 포함하는 터치 데이터의 세그멘테이션을 수행할 수 있다.
본 실시예의 터치 데이터 세그먼테이션 방법은 먼저 피크 노드를 찾고 피크 정보를 이용해서 노이즈 영역을 구분하고 그 구분된 영역에 대해서는 세그먼테이션을 수행하지 않음으로써 불필요한 연산을 막아 연산 시간 및 연산량을 줄일 수 있다.
도 10f 및 도 10g는 본 발명의 다른 실시예에 따른 터치 데이터의 세그먼테이션 방법을 설명하는 도면이다. 도 10f 및 도 10g에서는 도 10a 및 도 10b의 세그멘테이션의 단계와 같은 단계의 설명은 생략되고 차이점에 대하여 설명되도록 한다. 도 10f 및 도 10g의 세그멘테이션 방법은 도 e와 연계되어 설명된다.
도 10f 및 도 10g의 세그멘테이션 방법은 도 10a및 도 10b 에서 설명된 세그멘테이션 방법과 달리 현재 중심 노드의 주변 노드들 중 가장 큰 노드값을 갖는 노드를 선택할 때 라벨링 여부에 상관없이 가장 큰 노드값을 갖는 선택할 수 있다(S1032). 예를 들면, 도 10e의 제 1 격자(M1)의 제1 피크 노드(I1)의 좌측 상단에 있는 노드(노드값 76)이 현재 중심 노드인 경우 주변의 노드중 제1 피크 노드(I1)가 가장 높은 노드값을 가지므로 제1 피크 노드(I1)를 선택한다(S1032).
선택된 노드가 라벨링된 노드인지 판별한다(S1042). 만약 선택된 노드가 라벨링된 노드이면 선택된 노드의 라벨에 따라 메모리에 저장된 노드 정보를 참조하여 주변 노드를 라벨링한다(S1060). 만약, 선택된 노드가 라벨링되지 않은 노드이면 선택된 노드를 현재 중심 노드로 업데이트하고 메모리(130)에 해당 노드 정보를 저장한다(S1052). 예를 들면, 도 10e의 노드값 40을 갖는 노드가 현재 노드이고 노드값 101을 갖는 주변 노드가 라벨링되어 있지 않을 경우 노드값 101을 갖는 주변 노드가 현재 중심 노드로 업데이트되고 메모리(130)에 저장된다. 도 10e의 노드값 38을 갖는 노드가 현재 중심 노드이고, 주변의 선택된 가장 높은 노드 값을 갖는 노드는 이미 S1010 내지 S1080 단계를 통하여 라벨링된 102의 노드값을 갖는 노드일 수 있다. 따라서, 노드값 38을 갖는 현재 중심 노드는 노드값 102의 레벨을 따라서 라벨링될 수 있다.
상술한 바와 같이 본 발명의 실시예들에 따른 터치 데이터의 세그멘테이션 방법은 라벨링된 피크 노드 및 상기 피크 노드의 주변에 라벨링되지 않은 노드를 포함하는 제 1 영역을 설정하고 상기 설정된 제 1 영역 내의 라벨링되지 않은 노드들을 상기 피크 노드의 라벨에 따라 라벨링한다. 상기 제 1 영역에 포함된 모든 노드들이 라벨링이 되면 상기 제 1 영역은 라벨링되지 않은 제 1 영역의 주변 노드들을 포함하도록 더 변경될 수 있다.
상기 제 1 영역은 격자로 정의된 영역일 수 있으며, 상기 제 1 영역은 세그멘테이션이 수행되는 동안 적어도 하나의 라벨링된 노드와 적어도 하나의 라벨링되지 않은 노드를 포함하도록 그 위치가 이동하거나 그 크기가 변경될 수 있다. 상기 제 1 영역은 피크 노드를 중심으로 같은 라벨로 라벨링된 노드들을 포함하도록 정의될 수도 있다. 이때, 상기 제 1 영역은 세그먼테이션이 수행되는 동안 상기 제 1 영역의 주변에 라벨링되지 않은 노드를 포함하도록 확장될 수 있다. 확장된 제 1 영역에 속한 라벨링되지 않은 노드들은 도 10a 내지 도10g에서 설명한바와 같이 라벨링될 수 있다.
이와같이 피크 노드를 중심으로 점진적으로 피크노드의 주변 노드를 라벨링함으로써 적은 메모리를 사용하여 많은 노드를 포함하는 대용량의 터치 데이터의 세그먼테이션이 가능하다.
도 11은 본 발명의 다양한 실시예에 따른 터치 콘트롤러가 장착된 터치 디스플레이 장치를 설명하는 도면이다.
도 11을 참조하면, 터치 디스플레이 장치(1100)는 윈도우 글라스(1110), 터치 패널(200) 및 디스플레이 패널(1130)을 포함할 수 있다. 터치 패널(200)과 디스플레이 패널(1130) 사이에는 광학적 특성을 위해 편광판(1120)이 배치될 수 있다. 윈도우 글라스(1110)는 아크릴이나 강화 유리 등의 소재로 제작되어, 외부 충격이나 반복적인 터치에 의한 긁힘으로부터 터치 디스플레이 장치(1100)를 보호할 수 있다.
터치 패널(200)은 유리 기판이나 PET(Polyethylene Terephthlate) 필름 위에 ITO(Indium Thin Oxide)와 같은 투명 전극을 이용하고 전극을 패터닝하여 형성될 수 있다. 터치 패널(200)은 정전 용량 방식의 터치 패널로 구성될 수 있고, 터치가 일어난 지점의 상호 커패시턴스가 변화되었음을 나타내는 터치 신호를 터치 콘트롤러(100)로 전송할 수 있다.
터치 콘트롤러(100)는 터치 패널(200)의 터치 신호를 수신하여 터치 데이터를 발생하고, 터치 데이터의 피크 노드를 중심으로 세그먼테이션을 수행하여 주변 노드들에 라벨을 부여할 수 있다. 터치 콘트롤러(100)는 터치 데이터의 에너지 변화를 이용하여 터치 상태인지 아닌지를 판별할 수 있다. 터치 콘트롤러(100)는 터치 상태가 판별되면, 터치 데이터의 모든 노드들을 탐색하여 피크 값을 갖는 피크 노드를 선택할 수 있다. 터치 콘트롤러(100)는 이전 프레임 피크 노드들의 상태 정보를 기초로 피크 노드를 추적하고, 피크 노드의 상태를 판별하고, 터치 데이터의 세그먼테이션을 수행할 수 있다.
터치 콘트롤러(100)는 피크 노드를 중심으로 세그먼테이션을 수행할 수 있다. 터치 콘트롤러(100)는 피크 노드를 제1 중심 노드로 하고 제1 중심 노드의 주변 노드들 중 가장 작은 노드 값을 갖는 노드부터 탐색하고, 가장 작은 노드 값을 갖는 노드를 제2 중심 노드로 하고 제2 중심 노드의 주변 유효 노드들에서 라벨링되지 않은 노드들 중 가장 큰 노드 값을 갖는 노드를 선택할 수 있다. 이 후, 가장 큰 노드 값을 갖는 노드를 제3 중심 노드로 하고 제3 중심 노드의 주변 유효 노드들의 라벨링되지 않은 노드들에서 제3 중심 노드 값보다 큰 노드들 중 가장 큰 노드 값을 갖는 노드를 선택할 수 있다. 제3 중심 노드의 주변 노드들에 제3 중심 노드 값보다 큰 노드가 없는 경우, 선택된 노드들에 피크 노드와 동일한 라벨을 부여할 수 있다.
터치 콘트롤러(100)는 터치 패널(200)에서 메인 보드로 연결되는 FPCB(Flexible Printed Circuit Board)에 COB(chip on board) 형태로 실장될 수 있다. 실시예에 따라, 터치 콘트롤러(100)는 그래픽 시스템의 메인 보드 상에 실장될 수도 있다.
디스플레이 패널(1130)은 상판과 하판으로 이루어진 두 장의 유리가 접합되어 형성될 수 있다. 디스플레이 패널(1130)에는 디스플레이 구동 장치(1140)가 COG(Chip on Glass) 형태로 부착될 수 있다. 실시예에 따라, 터치 콘트롤러(100)와 디스플레이 구동 장치(1140)가 하나의 반도체 칩에 집적화 될 수 있다.
도 12는 본 발명의 다양한 실시예들에 따른 터치 콘트롤러를 포함하는 터치 센서 시스템이 탑재되는 다양한 제품들의 응용 예를 나타낸다.
도 12를 참조하면, 터치 스크린 방식의 제품들은 터치 콘트롤러(100)를 포함하는 터치 센서 시스템(1200)을 포함할 수 있다. 터치 스크린 방식의 제품은 스마트폰이 주도하고 있는 휴대폰 분야에서 각광 받고 있다. 터치 센서 시스템(1200)은 터치 패널(200)과 터치 콘트롤러(100)를 포함할 수 있다. 터치 콘트롤러(100)는 터치 패널(200)로부터 전송되는 터치 신호를 수신하여 터치 데이터를 발생하고, 터치 데이터에서 피크 값을 갖는 피크 노드를 선택하고 라벨을 부여하여, 피크 노드를 중심으로 세그먼테이션을 수행할 수 있다.
터치 센서 시스템(1200)은 사용자 인터페이스가 필요한 다양한 분야에서 터치 디스플레이 장치로 이용될 수 있다. 터치 센서 시스템(1200)은 휴대폰(1210)에 채용할 수 있음을 물론이고, 터치 스크린을 채용한 TV(1220), 은행의 현금 입출납을 자동적으로 대행하는 ATM기(1230), 엘리베이터(1240), 지하철 등에서 사용되는 티켓 발급기(1250), PMP(1260), e-book(1270), 네비게이션(1280) 등에 폭넓게 사용될 수 있다.
터치 센서 시스템(1200)은 터치 디스플레이 장치의 사용자 터치를 정확하게 인식하기 위하여, 터치 데이터 세그먼테이션 방법을 이용할 수 있다. 터치 데이터 세그먼테이션 방법은, 터치 데이터의 에너지 변화를 이용하여 터치 상태인지 아닌지를 판별하고, 터치 데이터 노드들을 탐색하여 피크 값을 갖는 피크 노드를 선택할 수 있다. 피크 노드의 상태 정보는 이전 프레임 피크 노드들의 상태 정보를 기초로 추적되고, 피크 노드의 상태가 판별되고, 터치 데이터의 세그먼테이션이 수행될 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

Claims (10)

  1. 터치 패널의 터치 데이터에서 제 1 피크 노드 값을 갖는 제 1 피크 노드를 선택하는 단계;
    상기 제 1 피크 노드에 제 1 라벨을 부여하는 단계;
    상기 라벨링된 제 1 피크 노드 및 상기 라벨링된 제 1 피크 노드의 주변의 라벨링되지 않은 적어도 하나의 노드를 포함하는 제 1 영역을 탐색하는 단계; 및
    상기 제 1 영역에 속한 상기 라벨링된 되지 않은 적어도 하나의 노드를 라벨링하는 단계를 포함하는 터치 데이터 세그먼테이션 방법.
  2. 제1 항에 있어서, 상기 제 1 영역은 상기 제 1 피크 노드를 중심으로 하고 상기 제 1 피크 노드의 라벨링되지 않은 적어도 하나의 주변 노드를 포함하는 격자인 터치 데이터 세그먼테이션 방법.
  3. 제1 항에 있어서, 상기 라벨링되지 않은 적어도 하나의 주변 노드를 라벨링하는 단계는,
    중심 노드를 업데이트 하는 단계;
    상기 중심 노드의 노드 정보를 메모리에 저장하는 단계;
    상기 중심 노드의 가장 높은 노드 값을 갖는 라벨링된 주변 노드를 선택하는 단계; 및
    상기 메모리에 저장된 노드 정보에 기초하여 상기 중심 노드에 상기 제 1 레벨을 할당하는 단계를 포함하는 터치 데이터 세그먼테이션 방법.
  4. 제3 항에 있어서, 상기 라벨링되지 않은 적어도 하나의 주변 노드를 라벨링하는 단계는,
    상기 노드 정보가 상기 메모리에 저장될 때 메모리 오버플로우(memory overflow)가 발생하면 상기 메모리에 저장된 노드 정보에 기초하여 하나 이상의 라벨링되지 않은 노드를 무효화하는 단계; 및
    상기 메모리로부터 상기 노드 정보를 비우는 단계를 더 포함하는 터치 데이터 세그먼테이션 방법.
  5. 제3항에 있어서, 상기 제 1 영역에 속한 중심 노드를 업데이트하는 단계는,
    상기 제 1 피크 노드의 라벨링되지 않은 최하위 주변 노드를 선택하는 단계; 및
    상기 선택된 라벨링되지 않은 최하위 주변 노드를 상기 중심 노드로 설정하는 단계를 포함하는 터치 데이터 세그먼테이션 방법.
  6. 제3항에 있어서, 상기 제 1 영역에 속한 중심 노드를 업데이트하는 단계는,
    상기 중심 노드의 라벨링되지 않은 최상위 주변 노드를 선택하는 단계; 및
    상기 선택된 라벨링되지 않은 최상위 주변 노드를 중심 노드로 설정하는 단계를 포함하는 터치 데이터 세그먼테이션 방법.
  7. 제1항에 있어서,
    상기 제 1 영역에 속한 상기 적어도 하나의 라벨링되지 않은 노드를 라벨링한 후에 상기 메모리에 저장된 노드 정보를 비우는 단계를 더 포함하는 터치 데이터 세그먼테이션 방법.
  8. 제1항에 있어서,
    상기 제 1 레벨로 라벨링된 적어도 하나의 노드와 적어도 하나의 라벨링되지 않은 노드를 포함하도록 상기 제 1 영역의 크기를 변화시키거나 상기 제 1 영역의 위치를 이동시키는 단계를 더 포함하는 터치 데이터 세그먼테이션 방법.
  9. 제1항에 있어서,
    상기 터치 데이터에 속한 제 2 피크 노드 값을 갖는 제 2 피크 노드를 선택하는 단계;
    상기 제 2 피크 노드에 제 2 라벨을 부여하는 단계;
    상기 라벨링된 제 2 피크 노드 및 상기 라벨링된 제 2 피크 노드의 주변의 라벨링되지 않은 적어도 하나의 노드를 포함하는 제 2 영역을 탐색하는 단계; 및
    상기 제 2 영역에 속한 상기 라벨링되지 않은 적어도 하나의 노드를 라벨링하는 단계를 더 포함하는 터치 데이터 세그먼테이션 방법.
  10. 터치 패널; 및
    상기 터치 패널로부터 전송되는 터치 신호를 수신하고, 상기 터치 신호들에 기초하여 터치 데이터를 발생하고, 상기 터치 데이터에서 피크 값을 갖는 피크 노드에 라벨을 부여하고, 상기 라벨링된 피크 노드와 상기 라벨링된 피크 노드의 적어도 하나의 라벨링되지 않은 주변 노드를 포함하는 제 1 영역에서 라벨링되지 않은 노드를 선택하고, 상기 선택된 라벨링되지 않은 노드의 노드 정보를 저장하고, 상기 저장된 노드 정보를 기초로하여 상기 제 1 영역에 속한 상기 선택된 라벨링되지 않은 노드를 라벨링하여 상기 터치 데이터의 세그먼테이션을 수행하는 터치 콘트롤러를 포함하는 터치 센서 시스템.
KR1020140118963A 2014-04-01 2014-09-05 터치 콘트롤러의 터치 데이터 세그먼테이션 방법 KR20150114364A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/644,963 US20150277609A1 (en) 2014-04-01 2015-03-11 Touch data segmentation method of touch controller
CN201510151712.8A CN104978063A (zh) 2014-04-01 2015-04-01 触摸控制器的触摸数据分割方法
TW104110599A TW201543301A (zh) 2014-04-01 2015-04-01 觸碰感測器系統與分段觸碰資料之方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20140038753 2014-04-01
KR1020140038753 2014-04-01

Publications (1)

Publication Number Publication Date
KR20150114364A true KR20150114364A (ko) 2015-10-12

Family

ID=54347095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140118963A KR20150114364A (ko) 2014-04-01 2014-09-05 터치 콘트롤러의 터치 데이터 세그먼테이션 방법

Country Status (2)

Country Link
KR (1) KR20150114364A (ko)
TW (1) TW201543301A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200076941A (ko) * 2018-12-20 2020-06-30 주식회사 실리콘웍스 고해상도 구현을 위한 터치센싱장치 및 이를 포함하는 디스플레이 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200076941A (ko) * 2018-12-20 2020-06-30 주식회사 실리콘웍스 고해상도 구현을 위한 터치센싱장치 및 이를 포함하는 디스플레이 장치

Also Published As

Publication number Publication date
TW201543301A (zh) 2015-11-16

Similar Documents

Publication Publication Date Title
US9552095B2 (en) Touch screen controller and method for controlling thereof
US9141208B2 (en) Method of segmenting multiple touches in touch sensing system
US9684409B2 (en) Hover position calculation in a touchscreen device
US8446374B2 (en) Detecting a palm touch on a surface
US9588621B2 (en) Touch screen controller and method for controlling thereof
US8902191B2 (en) Proximity sensing for capacitive touch sensors
US8797280B2 (en) Systems and methods for improved touch screen response
CN106155409B (zh) 用于模式变化的电容性度量处理
CN107741824B (zh) 对可重定位触摸表面上的姿态朝向的检测
US9122358B2 (en) Touch panel for determining real coordinates of the multiple touch points and method thereof
US9983738B2 (en) Contact detection mode switching in a touchscreen device
US20130088448A1 (en) Touch screen panel
EP2691841A1 (en) Method of identifying multi-touch scaling gesture and device using the same
CN110597414B (zh) 触摸屏的触控检测方法及相关设备
US20150277609A1 (en) Touch data segmentation method of touch controller
CN106886345B (zh) 电容式感测装置及其上的导电异物的侦测方法
WO2017172169A1 (en) Combining trans-capacitance data with absolute-capacitance data for touch force estimates
KR20150103455A (ko) 터치스크린 장치 및 터치 감지 방법
KR20150087714A (ko) 터치패널 및 이를 포함하는 터치스크린 장치
CN107272970A (zh) 电容性侧面位置外推
KR20150114364A (ko) 터치 콘트롤러의 터치 데이터 세그먼테이션 방법
JP2017021540A (ja) 検出回路およびタッチセンサシステム
US9035901B2 (en) Capacitive touch panel and recognition method and fabrication method thereof
US9086773B2 (en) Touchscreen device and method of processing touch data
US11586324B2 (en) Touch sensing method and touch sensing device

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination