KR100984402B1 - 2차원 배열에서의 디코딩 및 에러 교정 - Google Patents

2차원 배열에서의 디코딩 및 에러 교정 Download PDF

Info

Publication number
KR100984402B1
KR100984402B1 KR1020030067329A KR20030067329A KR100984402B1 KR 100984402 B1 KR100984402 B1 KR 100984402B1 KR 1020030067329 A KR1020030067329 A KR 1020030067329A KR 20030067329 A KR20030067329 A KR 20030067329A KR 100984402 B1 KR100984402 B1 KR 100984402B1
Authority
KR
South Korea
Prior art keywords
image
array
sequence
dimensional
computer
Prior art date
Application number
KR1020030067329A
Other languages
English (en)
Other versions
KR20040038644A (ko
Inventor
왕지안
린즈호우첸
리유에
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20040038644A publication Critical patent/KR20040038644A/ko
Application granted granted Critical
Publication of KR100984402B1 publication Critical patent/KR100984402B1/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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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
    • 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/0304Detection arrangements using opto-electronic means
    • G06F3/0317Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
    • G06F3/0321Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface by optically sensing the absolute position with respect to a regularly patterned surface forming a passive digitiser, e.g. pen optically detecting position indicative tags printed on a paper sheet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

더 큰 이미지로부터 포착된 이미지의 위치를 결정하는 시스템 및 프로세스를 설명한다. 비 반복 시퀀스는 주어진 크기의 모든 서브 윈도우에 대하여 단일한 비 반복 배열로 폴딩될 수 있다. 서브 윈도우의 이미지가 포착될 수 있고 그 위치는 상기 비 반복 배열 내에서 결정될 수 있다.
포착된 이미지, 비 반복 시퀀스, 비 반복 배열

Description

2차원 배열에서의 디코딩 및 에러 교정{Decoding and Error Correction in 2-D Arrays}
도 1은 본 발명의 실시예와 관련하여 사용될 수 있는 컴퓨터의 일반적인 사항을 도시한 도면.
도 2a 및 도 2b는 본 발명의 실시예에 따른 이미지 포착 시스템 및 대응 포착 이미지를 도시한 도면.
도 3a 내지 도 3f는 본 발명의 실시예에 따른 다양한 시퀀스 및 폴딩 기술을 도시한 도면.
도 4a 내지 4e는 본 발명의 실시예에 따른 다양한 인코딩 시스템을 도시한 도면.
도 5a 내지 5d는 도 4a 및 4b에 따른 인코딩 시스템과 관련된 가능한 4개의 합성 코너를 도시한 도면.
도 6은 본 발명의 실시예에 따른 포착된 이미지 부분의 회전을 도시한 도면.
도 7은 도 4a 내지 4e의 코딩 시스템과 함께 사용된 다양한 회전각을 도시한 도면.
도 8은 본 발명의 실시예에 따라 포착된 배열의 위치를 결정하는 프로세스를 도시한 도면.
도 9는 본 발명의 실시예에 따른 포착된 이미지의 위치를 결정하는 방법을 도시한 도면.
도 10은 본 발명의 실시예에 따른 포착된 이미지의 위치를 결정하는 또다른 방법을 도시한 도면.
도 11은 문서에서 인코딩 공간의 종래의 표현을 도시한 도면.
<도면의 주요 부분에 대한 부호의 설명>
107 : 모니터
108 : 비디오 어댑터
110 : 처리부
114 : 네트워크 인터페이스
130 : 시스템 버스
160 : BIOS
본 발명은 디지털 펜을 사용한 매체와의 상호작용에 관한 것이다. 더욱 구체적으로는, 본 발명은 하나 이상의 표면과 상호 작용하는 동안 디지털 펜의 위치를 결정하는 것에 관한 것이다.
컴퓨터 사용자는 퍼스널 컴퓨터와 상호 작용하는 방법으로서 마우스 및 키보드를 사용하는 것에 익숙하다. 퍼스널 컴퓨터는 서면 문서(written document)보다 많은 장점을 제공하지만, 대부분의 사용자는 계속해서 어떤 작업을 수행할 때에는 인쇄된 종이를 사용한다. 이러한 작업 중에는 서면 문서의 읽기 및 주석 달기가 있다. 주석 달기의 경우에 있어서, 인쇄된 문서는 사용자에 의하여 그 위에 주석을 달기 때문에 더욱 중요하다. 그러나, 인쇄된 문서에 주석을 달 경우의 한가지 어려운 점은 나중에 다시 전자적 형태의 문서로 주석이 입력되어야 한다는 점이다. 이 경우 본래 사용자 또는 다른 사용자는 힘들여 주석을 달고 이를 퍼스널 컴퓨터로 입력하여야 한다. 어떤 경우에는 사용자는 주석 및 원본 텍스트를 스캐닝하여 새로운 문서를 만들기도 한다. 이러한 여러 단계로 인해 인쇄된 문서와 그 문서의 전자적 버전의 상호 작용을 반복되는 원리로 다루는 것이 어렵게 된다. 또한, 스캐닝하여 입력된 이미지는 수정할 수 없는 경우가 종종 있다. 원본 텍스트에서 주석을 분리하는 방법도 없을 것이다. 이로써 주석을 사용하는 것이 어려워진다. 따라서 주석을 다루는 개선된 방법이 요구된다.
손으로 쓰여진 정보를 포착하는 하나의 기술은 쓰는 동안 위치가 결정될 수 있는 펜을 사용하여 이루어진다. 이러한 기능을 제공하는 펜으로 Anoto Inc.의 아노토 펜(Anoto pen)이 있다. 이 펜은 미리 정해진 패턴으로 인코딩된 종이의 이미지를 포착하는 카메라를 사용하여 작동한다. 이미지 패턴의 실시예가 도 11에 도시되어 있다. 이 패턴은 종이에서 펜의 위치를 결정하기 위하여 아노토 펜(Anoto Inc. 제품)에 의해 사용되는 것이다. 그러나 아노토 펜에 의하여 사용된 시스템으로 어떻게 효율적으로 위치 결정을 하는지는 불명확하다. 포착된 이미지의 위치의 효율적인 결정을 제공하기 위하여, 포착된 이미지의 효율적 디코딩을 제공하는 시 스템이 필요하다.
본 발명의 형태는 상술한 문제점의 적어도 하나에 대한 해결책을 제공하며, 보여진 이미지에서 위치를 정할 수 있게 한다. 보여진 이미지는 인쇄된 종이 또는 디스플레이된 컴퓨터 이미지에 있을 수 있다. 본 발명의 형태는 이미지의 위치의 효율적 결정을 제공하여, 포착된 이미지의 효율적인 디코딩을 허용하는 디코딩 프로세스를 포함한다. 본 발명의 이러한 측면 및 다른 측면은 다음의 도면 및 관련 설명을 통하여 알려질 것이다.
상기의 발명의 상세한 설명과 후술하는 바람직한 실시예에 대한 상세한 설명은 첨부된 도면과 관련하여 읽을 때 더 이해하기 좋을 것이며, 도면은 예시로서 포함되는 것이지 청구된 발명과 관련한 제한을 위한 것은 아니다.
본 발명의 형태는 더 큰 이미지와 관련하여 포착된 이미지의 위치를 결정하는 것과 관련된다. 여기서 설명하는 위치 결정 방법 및 시스템은 다기능 펜(multi-function pen)과 결합하여 사용될 수 있다.
다음은 독자의 편의를 위하여 서브 표제로 나누어져 있다. 서브 표제는 다음을 포함한다: 용어, 범용 컴퓨터(general-purpose computer), 이미지 포착 펜, 배열의 인코딩, 디코딩, 에러 교정 및 위치결정.
용어
펜 - 잉크를 저장할 수 있는 기능을 포함하거나 포함하지 않는 임의의 필기 도구. 어떤 예에서는 잉크 성능(ink capability)이 없는 스타일러스가 본 발명의 실시예에 따라 펜으로서 사용될 수 있다.
카메라 - 종이 또는 다른 매체로부터 이미지를 포착할 수 있는 이미지 포착 시스템.
범용 컴퓨터(General Purpose Computer)
도 1은 본 발명의 다양한 형태를 구현하기 위하여 사용될 수 있는 범용 디지털 컴퓨터 환경의 예의 기능 블록도이다. 도 1에 있어서, 컴퓨터(100)는 처리부(110), 시스템 메모리(120) 및 시스템 메모리를 포함한 많은 시스템 구성요소를 처리부(110)로 연결하는 시스템 버스(130)를 포함한다. 시스템 버스(130)는 임의의 다양한 버스 아키텍처를 사용하는 로컬 버스(local bus), 주변 버스(peripheral bus), 메모리 버스 또는 메모리 컨트롤러를 포함하는 임의의 여러 유형의 버스 구조일 수 있다. 시스템 메모리(120)는 리드 온리 메모리(read only memory; ROM)(140) 및 랜덤 액세스 메모리(random access memory; RAM)(150)를 포함한다.
스타트업 동안과 같이 컴퓨터(100) 내의 엘리먼트간의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입력/출력 시스템(160)(BIOS)이 ROM(140)에 저장되어 있다. 컴퓨터는 하드디스크(도시하지 않음)의 판독 및 기록을 위한 하드디스크 드라이브(170), 분리형 자기 디스크(190)의 판독 기록을 위한 자기 디스크 드라이브(180) 및 CD ROM이나 다른 광 매체와 같은 분리형 광 디스크(192)의 판독 기록을 위한 광 디스크 드라이브(191)도 포함한다. 하드디스크 드라이브(170), 자 기 디스크 드라이브(180), 및 광 디스크 드라이브(191)는 각각 하드디스크 드라이브 인터페이스(192), 자기 디스크 드라이브 인터페이스(193), 및 광 디스크 드라이브 인터페이스(194)를 통하여 시스템 버스(130)로 접속된다. 드라이브와 이와 관련된 컴퓨터 판독 가능한 매체는 퍼스널 컴퓨터(110)의 컴퓨터 판독 가능한 명령, 데이터 구조, 프로그램 모듈 및 다른 데이터의 비휘발성 저장을 제공한다. 본 기술분야에서 능통한 자라면, 자기 카세트, 플래시 메모리 카드, 디지털 비디오 디스크, 베르누이 카트리지, 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM) 등의 컴퓨터가 액세스 할 수 있는 데이터를 저장할 수 있는 다른 유형의 컴퓨터 판독 가능한 매체가 예시적인 동작 환경에서 사용될 수 있음을 이해할 것이다.
운영 체제(195), 하나 이상의 응용 프로그램(196), 다른 프로그램 모듈(197) 및 프로그램 데이터(198)를 포함하는 많은 프로그램 모듈이 하드디스크 드라이브(170), 자기 디스크(190), 광 디스크(192), ROM(14) 또는 RAM(150)에 저장될 수 있다. 사용자는 키보드(101)와 위치 지정 장치(pointing device)(102)와 같은 입력 장치를 통하여 컴퓨터로 명령 및 정보를 입력할 수 있다. 다른 입력 장치(도시하지 않음)는 마이크로폰, 조이스틱, 게임패드, 위성 안테나, 스캐너 등을 포함한다. 이러한 입력 장치나 다른 입력 장치는 종종 시스템 버스에 연결된 직렬 포트 인터페이스(106)를 통하여 처리부(110)로 접속되는데, 병렬 포트, 게임 포트 또는 범용 직렬 버스(USB)에 의하여 접속될 수도 있다. 또한, 이러한 장치는 적절한 인터페이스(도시하지 않음)를 통하여 시스템 버스(130)로 직접 연결될 수 있다. 모니터(107) 또는 다른 유형의 디스플레이 장치도 비디오 어댑터(108)와 같 은 인터페이스를 통하여 시스템 버스(130)로 접속될 수 있다. 모니터 외에, 퍼스널 컴퓨터는 전형적으로 스피커 및 프린터와 같은 다른 주변 출력 장치(도시하지 않음)를 포함한다. 바람직한 실시예에 있어서, 손으로 그린 입력을 디지털로 포착하기 위하여 펜 디지타이저(165) 및 부속 펜 또는 스타일러스(166)가 제공될 수 있다. 펜 디지타이저(165)와 직렬 포트간의 직접 접속이 도시되어 있지만, 실제로 펜 디지타이저(165)는 기술분야에서 알려져 있는 시스템 버스(130) 및 병렬 포트나 다른 인터페이스를 통하여 직접 처리부(110)로 연결될 수 있다. 또한, 디지타이저(165)는 모니터(107)와는 별도로 도시되어 있으나, 디지타이저(165)의 사용 가능한 입력 영역은 모니터의 디스플레이 영역과 동일한 것이 바람직하다. 또한 디지타이저(165)는 모니터(107)에 통합되거나, 모니터(107)를 덮거나 다르게 부착된 별도의 장치로서 존재할 수 있다.
컴퓨터(100)는 원격 컴퓨터(109)와 같은 하나 이상의 원격 컴퓨터로의 논리적인 접속을 사용하여 네트워크 환경에서 동작할 수 있다. 원격 컴퓨터(109)는 서버, 라우터, 네트워크 PC, 동등 장치(peer device) 또는 다른 일반적인 네트워크 노드(network node)일 수 있으며, 도 1에는 메모리 저장 장치(111)만이 도시되어 있지만, 전형적으로는 컴퓨터(100)와 관련하여 상술한 엘리먼트를 전부 또는 많이 포함할 수 있다. 도 1에 도시한 논리적 접속은 근거리 통신망(local area network; LAN)(112) 및 광역 통신망(wide area network; WAN)(113)을 포함한다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷 및 인터넷에서 흔한 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(100)는 네트워크 인터페이스 또는 어댑터(114)를 통하여 근거리 통신망(112)으로 접속된다. WAN 네트워킹 환경에서 사용될 때, 퍼스널 컴퓨터(100)는 전형적으로 인터넷과 같은 광역 통신망(113)을 통하여 통신을 설정하는, 모뎀(115) 또는 다른 수단을 포함한다. 내장 또는 외장 모뎀(115)은 직렬 포트 인터페이스(106)를 통하여 시스템 버스(130)로 접속된다. 네트워크 환경에 있어서, 퍼스널 컴퓨터(100) 또는 그 일부와 관련하여 도시한 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다.
도시한 네트워크 접속은 예시적인 것이며 컴퓨터간의 통신 연결을 설정하기 위한 다른 기술이 사용될 수 있다는 것을 이해할 것이다. TCP/IP, 이더넷(Ethernet), FTP, HTTP, 블루투스, IEEE 802.11x 등과 같은 임의의 다양한 널리 알려진 프로토콜이 존재하고, 시스템은 사용자로 하여금 웹 기반 서버로부터 웹 페이지를 검색하도록 하는 클라이언트 서버 구조에서 동작할 수 있다. 임의의 다양한 종래의 웹 브라우저를 사용하여 웹 페이지에 데이터를 디스플레이하거나 조작할 수 있다.
화상 포착 펜(Image Capturing Pen)
본 발명의 형태는 표시된 형태에서 인코딩된 데이터 스트림의 위치를 파악하는 것을 포함한다. 표시된 형태는 인쇄된 종이(또는 다른 물리적 매체) 또는 다른 이미지나 이미지의 세트와 관련하여 인코딩된 데이터 스트림을 투사하는 표시일 수 있다. 예를 들어, 인코딩된 데이터 스트림은 표시된 그래픽 이미지 위에 있는 이미지 또는 종이 위의 물리적인 그래픽 이미지로서 나타내어지거나, 표시 스크린 위 에 있는 물리적인(변형 불가능한 패턴) 그래픽 이미지일 수 있다(따라서, 펜에 의하여 포착된 임의의 이미지 부분은 표시 스크린에 위치할 수 있다).
이 포착된 이미지의 위치 결정은 사용자와 종이, 매체 또는 표시 스크린과의 사용자의 상호 작용의 위치를 결정하기 위하여 사용될 수 있다. 본 발명의 어떤 형태에 있어서는, 펜은 종이에 기록하는 잉크 펜일 수 있다. 다른 형태로, 펜은 사용자가 컴퓨터 디스플레이의 표면에 기록하는 스타일러스일 수 있다. 문서에서의 인코딩된 이미지를 인식하거나 또는 컴퓨터 스크린에 표시된 문서를 지원하는 시스템으로 임의의 상호작용이 도로 제공될 수 있다. 카메라의 위치를 반복적으로 포착함으로써, 시스템은 사용자에 의하여 컨트롤되는 스타일러스의 움직임을 추적할 수 있다. 표시된 또는 인쇄된 이미지는 빈 종이 또는 컨텐츠가 많은 종이와 관계된 워터마크이거나 또는 표시된 이미지 또는 스크린에 내장되거나 스크린 상에 배치된 고정된 코딩과 관련된 워터마크일 수 있다.
도 2a 및 2b는 카메라(203)와 함께 펜(201)을 도시한 예를 보여준다. 펜(201)은 잉크통을 포함하거나 포함하지 않는 팁(202)을 포함한다. 카메라(203)는 표면(207)으로부터 이미지(204)를 포착한다. 펜(201)은 점선 박스(206)로 나타낸 추가적인 센서 및/또는 프로세서(206)를 더 포함할 수 있다. 이러한 센서 및/또는 프로세서(206)는 다른 펜(201) 및/또는 퍼스널 컴퓨터(예를 들어, 블루투스 또는 다른 무선 프로토콜을 통하여)로 정보를 전송할 수도 있다.
도 2b는 카메라(203)로 보여지는 이미지를 나타낸다. 일 예에 있어서, 카메 라(203)의 시야는 32x32 픽셀(여기서 N=32)이다. 따라서, 도 2b는 32픽셀 길이, 32픽셀 폭의 시야를 도시한다. N의 크기는 요구되는 이미지 해상도의 정도에 기초하여 조절할 수 있다. 또한, 카메라(203)의 시야는 여기서 예를 위하여 정사각형으로 도시한 것이며, 이 시야는 본 기술분야에서 알려진 바와 같이 다른 형태를 포함할 수 있다.
카메라(203)로부터 펜(201)으로의 입력은 일련의 이미지 프레임{Ii}, i=1,2,...,A로 정의될 수 있는데, Ii는 샘플링 시간 ti에 펜(201)에 의하여 포착된다. 샘플링 레이트는 고정되거나, 문서의 사이즈에 기초하여 변할 수 있다. 포착된 이미지 프레임의 크기는 요구되는 정확성의 정도나 문서의 크기에 따라 크거나 작을 수 있다. 또한, 카메라 이미지 크기는 탐색되는 문서의 크기에 기초하여 결정될 수 있다.
카메라(203)에 의하여 포착된 이미지는 바로 처리 시스템에 의하여 사용되거나, 사전 필터링을 거칠 수 있다. 이 사전 필터링은 펜(201)에서 발생하거나 펜(201) 밖(예를 들어 퍼스널 컴퓨터)에서 발생할 수 있다.
도 2b의 이미지 크기는 32x32 픽셀이다. 각 인코딩 유닛 크기가 3x3 픽셀이라면 포착된 인코딩된 유닛의 수는 약 100 유닛일 것이다. 인코딩 유닛 크기가 5x5이면, 포착된 인코딩된 유닛은 대략 36이다.
도 2a는 또한 이미지 면(209)을 도시하는데, 위치(204)로부터 패턴의 이미지(210)가 여기에 형성된다. 물체 면(207)의 패턴으로부터 수신된 빛은 렌즈(208)에 의하여 포커싱된다. 렌즈(208)는 하나의 렌즈 또는 멀티 파트 렌즈 시스템일 수 있지만, 여기서는 단순화를 위하여 하나의 렌즈로 나타내었다. 이미지 포착 센서(211)는 이미지(210)를 포착한다.
이미지 센서(211)는 이미지(210)를 포착하기에 충분할 만큼 클 수 있다. 또한, 이미지 센서(211)는 위치(212)에서 펜 팁(202)의 이미지를 포착하기 위하여 충분히 클 수 있다. 참고로 위치(212)에서의 이미지를 가상 펜 팁이라 한다. 펜 팁, 렌즈(208) 및 이미지 센서(211) 간의 일정한 관계 때문에, 이미지 센서(211)와 관련된 가상 펜 팁 위치는 일정하다는 것을 알아야 한다. 가상 펜 팁(212)의 위치(Lvirtual-pentip으로 나타냄)로부터 실제 펜 팁(202)의 위치(Lpentip으로 나타냄)로의 변환 때문에, 포착된 이미지(210)와 관련된 실제 펜 팁의 위치를 결정할 수 있다.
다음의 변환 FS→P은 카메라에 의하여 포착된 이미지를 종이 상의 실제 이미지로 변환한다.
Figure 112003036077796-pat00001
기록 중에, 펜 팁 및 종이는 동일한 면에 있다. 따라서 가상 펜 팁으로부터 실제 펜 팁으로의 변환도 FS→P이다.
Figure 112003036077796-pat00002
FS→P 변환은 투시 변환(perspective transformation)이라 할 수 있다. 이는 FS→P의 추정으로 다음과 같이 단순화된다.
Figure 112003036077796-pat00003
여기서 θ, sx 및 sy는 위치(204)에서 포착된 패턴의 회전 및 2가지 오리엔테이션의 스케일이다. 또한, 포착된 이미지를 종이에서의 대응하는 배경 이미지와 매칭시킴으로써 F'S→P를 FS→P로 개량(refine)할 수 있다. "개량(refine)"은 반복 방법(recursive method)이라고 하는 일종의 최적화 알고리즘에 의하여 보다 정확한 투영 행렬 FS→P(8개 파라미터)를 얻는 것을 의미한다. 반복 방법은 F'S→P을 초기값으로 취급한다. FS→P는 F'S→P보다 S 및 P 간의 변환을 더욱 정교하게 설명한다.
다음으로, 보정(calibration)에 의하여 가상 펜 팁의 위치를 결정할 수 있다.
펜 팁(202)을 종이 위의 알고 있는 위치 Lpentip에 위치시킨다. 다음으로, 펜을 기울여서, 카메라(203)가 다른 펜 자세를 갖는 일련의 이미지를 포착할 수 있다. 포착된 각 이미지에 있어서, FS→P 변환을 수신할 수 있다. 이 변환으로부터 펜 팁의 가상 이미지의 위치 Lvirtual-pentip을 얻을 수 있다.
Figure 112003036077796-pat00004
그리고,
FP→S = 1 / FS→P
각 이미지로부터 수신된 Lvirtual-pentip을 평균함으로써, 가상 펜 팁의 정확한 위치 Lvirtual-pentip이 결정될 수 있다.
가상 펜 팁의 위치 Lvirtual-pentip은 현재 알지 못한다. 포착된 이미지로부터 FS→P 변환을 얻을 수 있다. 마지막으로, 이 정보를 사용하여 실제 펜 팁의 위치 Lpentip을 결정할 수 있다.
Lpentip=FS→P(Lvirtual-pentip)
배열의 인코딩(Encoding of Array)
2차원 배열은 1차원 시퀀스를 폴딩함으로써 구축될 수 있다. 2차원 배열의 어떤 부분은 완전한 2차원 배열에서 그 위치를 결정하기 위하여 사용될 수 있다. 한 가지 관심사는 카메라에 의하여 포착된 이미지가 크기에서 제한된다는 점이다. 따라서, 포착된 이미지 또는 몇 개의 포착된 이미지로부터 위치를 결정할 필요가 있다. 포착된 이미지에 존재하는 에러가 상기 포착된 이미지내의 일부 점들의 이용가능성을 손상시킬 수 있다는 점에서 추가적인 문제가 발생한다. 포착된 이미지 부분이 2차원 배열에서 둘 이상의 위치와 관련될 가능성을 최소화하기 위하여, 비반복적 시퀀스가 사용되어 배열을 생성할 수 있다. 생성된 시퀀스의 한 가지 특징은 시퀀스는 길이(또는 윈도우 n)에 대해 반복하지 않는다는 것이다. 다음은 일차원 시퀀스를 생성한 다음 시퀀스를 배열로 폴딩하는 것을 설명한다.
시퀀스 구축(Sequence Construction)
숫자의 시퀀스는 인코딩 시스템의 시작점으로 사용될 수 있다. 예를 들어, 시퀀스(m-시퀀스라고도 함)는 Fq 필드에서 q-요소 집합으로 표시될 수 있다. 여기에서 q=pn , n ≥1 이고 p는 주요한 숫자이다. 시퀀스 또는 m-시퀀스는 다항식 제법(여기에 한정되는 것은 아님)을 포함하는 다양한 다른 기술들에 의하여 생성될 수 있다. 다항식 제법을 사용하여, 시퀀스는 다음과 같이 정의될 수 있다.
Figure 112003036077796-pat00005
여기서 Pn(x)는 Fq[x] 필드(q 요소를 갖는)에서 n차의 원시 다항식이다. Rl(x)는 Fq[x] 필드에서 l차(l<n 이다)의 0이 아닌 다항식이다. 시퀀스는 2 단계를 사용하는 순환적 프로시저를 사용하여 생성될 수 있다. 첫째, 두 다항식을 나누고(Fq 필드의 요소로 된다) 둘째 x로 나머지를 곱한다. 출력이 반복되기 시작할 때 계산은 멈춘다. 이 프로세스는 더글러스(Douglas)와 리저웽(Lih Jyh Weng)이 발표한 "최대 및 최대에 가까운 시프트 레지스터 시퀀스 : 효율적인 이벤트 카운터 및 쉽고 견고한 로그", IEEE 컴퓨터 43.5 상의 트랜잭션(1994년 5월, pp 560-568)의 논문에 제시된 선형 피드백 시프트 레지스터를 사용하여 구현될 수 있다. 이러한 환경에서 시퀀스의 순환적인 시프팅과 다항식 Rl(x)간에 관계가 설정된다. 즉, Rl(x)를 순환적으로만 변화시키는 것은 시퀀스를 시프트시키고 매 순환적 시프팅은 하나의 다항식 Rl(x)에 대응한다. 결과적 시퀀스의 하나의 특징은 너비(길이) n에 대하여 넘는 어떠한 부분이 시퀀스에 한 번 존재한다는 것이다.
상술한 프로세스는 비 반복 시퀀스를 생성하기 위하여 사용될 수 있는 다양한 프로세스 중 하나일 뿐이다.
배열 구축(Array Construction)
이미지(일부가 카메라에 의하여 포착될 수 있는)를 생성하기 위하여 사용될 수 있는 배열(또는 m-배열)은 일차원 시퀀스 또는 m-시퀀스의 확장이다. A가 피리어드(m1,m2)의 배열, 즉 A(k+m1,l)=A(k,l+m2)=A(k,l)이라고 해보자. n1 x n2 윈도우가 A의 피리어드를 통하여 시프트할 때, Fq 상의 모든 0이 아닌 n1 x n2 행렬은 단지 한번만 나타난다. 이 특징은 각 윈도우가 고유하다는 점에서 "윈도우 특징"이라고 말할 수 있다. A는 피리어드(m1,m2)의 배열(배열에서 존재하는 비트의 수평 및 수직 비트수인 m1 및 m2를 갖는) 및 오더(n1,n2)로 표현될 수 있다.
2진 배열(또는 m-배열)은 시퀀스를 폴딩함으로써 구축될 수 있다. 한 가지 접근 방식은 시퀀스를 획득하고 그것을 m1 x m2 크기로 폴딩하는 것인데, 여기에서 배열의 길이는 L=m1 x m2 = 2n-1이다. 대안으로, 다루기를 원하는 공간의 미리 정해 진 크기에서 시작하여(예를 들어, 종이 한 장, 종이 30장 또는 컴퓨터 모니터의 크기), 영역(m1 x m2)를 결정하고, 맡은 크기를 사용하는데, 여기에서 L≥m1m 2 (L=2n-1)이다.
다양한 다른 폴딩 기술이 사용될 수 있다. 예를 들어, 도 3a 내지 3c는 세가지 다른 시퀀스를 보여준다. 이들 각각은 도 3d에 도시된 배열로 폴딩될 수 있다. 3개의 다른 폴딩 방법은 도 3d에서의 오버레이 및 도 3e 와 3f의 래스터 패스(raster path)로 도시되어 있다. 도 3d에서 도시된 폴딩 방법은 gcd(m1,m2)=1(L=2n-1)일 때로 표시될 수 있다.
도 3d에서처럼 폴딩 방법을 생성하기 위하여, 길이 L의 시퀀스 {ai} 및 오더 n을 생성할 수 있다. 다음으로, m1 x m2 크기의 배열 {bkl}은 배열의 각 비트를 식 1처럼 계산되도록 하는 것에 의하여 시퀀스 {ai}로부터 생성될 수 있다.
Figure 112003036077796-pat00006
이 폴딩 접근은 대안적으로 배열의 대각선상의 시퀀스를 놓음으로써 표현될 수 있고 모서리에 도달할 경우 반대편으로부터 계속할 수 있다.
도 4a는 도 3d의 배열과 함께 사용될 수 있는 제1 비트 및 제2 비트용 샘플 인코딩을 도시한다. 다른 인코딩 기술도 사용될 수 있다. 예를 들어, 대안적 코딩 기술이 도 11에서 도시되어 있다.
도 4a에서, 제1 비트(예를 들어, "1")(202)는 검은 잉크의 열(column)로 나 타내었다. 제2 비트(예를 들어, "0")(202)는 검은 잉크의 행(row)으로 나타내었다. 다양한 비트를 표현하기 위하여 임의의 색의 잉크가 사용될 수 있다. 선택되는 잉크의 색깔에 있어서 유일하게 요구되는 것은, 이미지 포착 시스템에 의하여 차별화될 수 있도록 매체의 배경과 충분히 대조적일 것이다. 도 4a의 비트는 셀의 3x3 행렬로 표현되었다. 행렬의 크기는 이미지 포착 시스템의 크기 및 해상도에 기초하여 임의의 크기로 변형될 수 있다. 비트 0 및 1의 다른 표현이 도 4c-4e에 도시되어 있다. 도 4a-4e의 샘플 인코딩을 위한 1 또는 0의 표현은 다른 영향을 주지 않고 서로 바뀔 수 있다. 도 4c는 2개의 행 또는 열을 차지하며 서로 교차하여 위치한 비트 표현을 도시한다. 도 4d는 점선 형태의 행 및 열의 픽셀 배열을 도시한다. 마지막으로, 도 4e는 불규칙한 형태의 행 및 열의 픽셀 표현을 도시한다(예를 들어, 하나의 밝은 블록 다음에 2개의 검은 블록)
다시 도 4a를 참조하면, 한 비트가 3x3 행렬로 표현되고, 이미징 시스템(imaging system)이 3x3 영역에서 하나의 검은 행과 2개의 흰 행을 검출한다면, 0(또는 1)이 표현된다. 이미지가 하나의 검은 열과 2개의 흰 열로 검출되었다면, 1(또는 0)이 표현된다.
여기서, 비트를 표현하기 위해서 하나 이상의 블록 또는 픽셀 또는 점이 사용된다. 하나의 비트를 표현하기 위해서 하나의 픽셀(또는 블록 또는 비트)을 사용하는 것은 깨지기 쉽다. 먼지, 종이의 자국, 비평면 표면 등은 데이터 유닛의 단일 비트 표현 판독을 곤란하게 한다. 그러나 표면상의 배열을 그래픽적으로 나타내기 위하여 다른 접근이 사용될 수 있다. 일부 접근 방식이 도 4c 내지 4e에 도시되어 있다. 다른 접근 또한 사용될 수 있다. 도 10에 공간 시프트된 도트만을 사용하는 한 접근 방식이 나타나 있다.
비트 스트림은 도 4b의 그래픽 패턴(403)을 생성하기 위하여 사용된다. 그래픽 패턴(403)은 12개의 행과 18개의 열을 포함한다. 행 및 열은 비트 스트림을 비트 표현(201 및 202)을 사용하여 그래픽 표현으로 변환함으로써 형성된다. 도 4b는 아래의 비트 표현을 갖는다고 볼 수 있다.
Figure 112003036077796-pat00007
디코딩(Decoding)
도 2a의 펜으로 쓰거나 인코딩된 패턴에 가깝도록 펜을 이동시킬 때, 카메라는 이미지를 포착한다. 그러면 이미지는, 인코딩된 이미지의 완전한 표현에 관하여 포착된 이미지의 오리엔테이션을 결정하고 인코딩된 이미지를 구성하는 비트를 추출하도록 처리된다.
도 4b는 이미지(403)로부터의 픽셀 블록의 표현을 포함한다. 표시된 이미지(404-411)는 5 X 5 픽셀 블록을 도시한다. 픽셀 블록(404)은 흰 행 사이의 검은 행을 도시한다. 픽셀 블록(405)은 흰 열 사이의 검은 열을 도시한다. 픽셀 블록(406)은 좌측 하단 코너를 도시한다. 픽셀 블록(407)은 우측 상단 코너를 도시한다. 픽셀 블록(408)은 좌측에 검은 반 열(half a dark row)을 가지는 검은 열을 도시한다. 픽셀 블록(409)은 행 위의 검은 반 열을 갖는 검은 열을 도시한다. 픽셀 블록(410)은 검은 반 열을 도시한다. 픽셀 블록(411)은 검은 반 열을 도시한다. 픽셀 블록의 조합을 분석하면, 픽셀의 모든 조합은 픽셀 블록(404-411)에서 찾아지는 이미지 세그먼트에 의하여 형성될 수 있다는 것을 이해할 수 있다.
또한, 픽셀 블록의 더 작은 집합을 갖는 모든 가능한 픽셀 조합을 표시하는 것을 시도할 수 있다. 더 이상의 것은 필요없이, 도 5a-5d에 도시된 4개의 블록의 각각이 이미지(403)에서 찾아지도록 기대할 수 있다. 그러나, 단지 코너의 3종류만이 8개의 픽셀 블록(404-411)에서 존재한다. 이 예에서, 도 5a로 표현되는 어떠한 픽셀 블록도 존재하지 않는다. 이미지 세그먼트(401 및 402)가 일종의 코너를 제거하도록 선택될 수 있다는 사실에 의하여, 이것은 코너의 잃어버린 종류에 기초한 포착된 이미지의 오리엔테이션을 결정하는 기회를 제공한다.
도 6으로 계속하면, 카메라(601)에 의하여 포착된 상기 이미지가 분석될 수 있고 이미지(601)에 의하여 실제로 표현된 위치에 관하여 해석 가능하도록 오리엔테이션이 결정될 수 있다. 첫째로, 이미지(601)는, 픽셀이 수평 및 수직으로 정렬되도록 이미지를 회전하기 위하여 필요한 각 θ를 결정하기 위하여 검토된다. 비 수평 및 수직 정렬(예를 들어, 45도)로 아래에 있는 그리드를 회전하는 것을 포함하여 다른 그리드 정렬 또한 가능하다. 비 수평 및 수직 정렬을 사용하는 것은 사용자로부터 시각적 산만함을 없애는 장점을 가져 사용자들이 다른 것에 앞서 수직 및 수평 패턴에 주목하게 되는 경향이 있다. 간단하게 하기 위하여, 그리드의 오리엔테이션(수평 및 수직과, 아래에 있는 그리드의 임의의 다른 회전)은 집합적으로 미리 정해진 그리드 오리엔테이션이라고 언급된다.
다음으로, 이미지(601)는 어떤 코너가 사라지는지 결정하기 위하여 분석된다. 이미지(601)를 디코딩(603)을 위하여 준비된 이미지로 회전시키기 위하여 필요한 회전 합 o는 o=( θ + 회전 합{어떤 상실 코너에 의하여 정의됨})으로 도시된다. 회전 합은 도 7의 식에 의하여 도시된다. 도 6으로 돌아가서, 각 θ는 픽셀의 수평 및 수직(또는 다른 미리 정해진 그리드 오리엔테이션) 정렬에 도달하기 위하여 픽셀의 레이아웃에 의하여 우선 결정되고, 이미지는 602에 도시된 것처럼 회전된다. 그러면 분석이 수행되어, 디코딩을 위한 이미지를 설정하기 위하여 603으로 이미지를 제공하기 위하여 회전된 이미지(602) 및 상실 코너를 결정한다. 여기서, 이미지는 반시계 방향으로 90도로 회전되어 이미지(603)의 위치가 회복될 수 있다.
회전 각 θ는 상실 코너를 설명하기 위하여 이미지(601)의 회전 전 또는 후에 적용될 수 있다.
최종적으로, 이미지(603)에서의 코드가 판독되고 이미지(403)을 생성하기 위하여 사용되는 원시 비트 스트림과 상호 연관된다. 상기 상호 연관은 여러 가지 방식으로 수행될 수 있다. 예를 들어, 원시 비트 스트림 내에서 모든 다른 비트 스트림 조각과 회복된 비트 스트림이 비교되는 재귀적인 접근에 의하여 이것이 수행될 수 있다. 둘째로, 통계적 분석이 회복된 비트 스트림 및 원시 비트 스트림 사이에서 수행될 수 있는데, 예를 들어, 두 비트 스트림 사이의 해밍 거리(hamming distance)를 사용함으로써 수행될 수 있다. 원시 비트스트림 내에서 회복된 비트 스트림의 위치를 결정하기 위하여 다양한 접근 방식이 사용될 수 있다.
일단 회복된 비트를 가지면, 원시 배열(예를 들어, 도 4b에 도시된 것) 내의 포착된 이미지를 위치시킬 필요가 있다. 전체 배열내의 비트의 세그먼트의 위치를 결정하는 프로세스는 다수의 아이템에 의하여 복잡하게 된다. 첫째로, 포착되는 실제 비트는 카메라에 의하여 이상적 포착으로부터 가려진다(예를 들어, 카메라는 원시 코드를 가리는 수기(handwriting)로 이미지를 포착할 수 있다). 둘째로, 먼지, 자국, 반사 등은 포착된 이미지에 에러를 생성할 수 있다. 상기 에러는 국부화 프로세스를 보다 어렵게 만든다. 이러한 점에서 이미지 포착 시스템은 이미지로부터 추출된 비 시퀀셜 비트(non-sequential bits)로 작동할 필요가 있다. 다음은 이미지로부터 비 시퀀셜 비트로 동작하기 위한 방법을 나타낸다.
첫째로, 시퀀스만 보면서, 시퀀스(또는 m-시퀀스) I가 멱급수 I(x)= 1 / Pn(x)에 대응하도록 하자. 또 R(x)=r0+r1x+r2x2+...+r n-1xn-1은 n 보다 적은 차수의 0아닌 다항식이다. 시퀀스 R은 R(x)/Pn(x)에 대응한다. 위에서 언급된 것처럼, R은 I의 시프트된 버전이다. 거리 D는 I 및 R 사이의 거리로 정의된다. 만약 R이 I의 s번째 시프트라면, 이것은 D(R)=s로 표현된다. 이 거리 D는 다수의 다른 기술을 사용하여 계산될 수 있다. 그 중 한 가지 기술은 둘간의 해밍 거리를 결정하는 것에 의한 것이다. 다른 방법은 더글러스에 의하여 공지된 폴리히 헬만 실버(Pohlig Hellman Silver) 알고리즘을 사용하는 것에 의한 것이다. 더글러스 더블유 클락 및 리저웽의, "최대 및 최대에 가까운 시프트 레지스터 시퀀스 : 효율적인 이벤트 카운터 및 쉽고 견고한 로그", IEEE 컴퓨터 43.5 상의 트랜잭션(1994년 5월, pp 560-568). 선행 기술에 알려진 다른 거리 결정 기술 또한 사용될 수 있다. 폴리히 헬만 실버 알고리즘을 사용하면, R(x)≡xs mod ((pn(x)) 이다.
그러나, 폴딩된 시퀀스를 사용하는 거리를 계산하려고 시도하는 것은, 추출된 코드가 연속적이지 않고 또한 에러를 포함할 수 있는 만큼 더 복잡하다. 상기 시퀀스 분석으로 시작하면서 이미지로부터 위치를 결정할 수 있다. 다음의 관계식으로 시작할 수 있다.
R=rtA (2)
여기에서, r=(r0 r1 r2 ... rn-1)t 이고 A=(I T(I) ... Tn-1(I))t 는 I의 주기적 시프트로 구성된다. 따라서, I의 어떠한 주기적 시프트도 rt 및 A의 곱이 된다. 만약 펜이 k 비트(b = (b0 b1 b2 ... bk-1)t, I에서 k ≥n)를 판독하는 경우, R(x)는 b0를 시퀀스(또는 m-시퀀스)의 시작으로 주기적으로 시프트하기 위하여 사용될 수 있다. 그 후 이 시프트는 A의 n x k 부행렬 M을 생성하기 위하여 A의 열을 조정한다. 따라서,
Figure 112003036077796-pat00008
여기에서 T는 행렬 또는 벡터의 변환을 나타낸다.
만약 M의 모든 행이 독립적이라면, r이 결정될 수 있고 식(1)의 1차원 위치 를 변조함으로써 D(R)은 I에서의 b0의 절대 위치로 된다. 이것은 b0 비트의 2차원 위치가 결정될 수 있다는 것을 의미한다. 이 위치 정보는 펜팁의 위치가 결정되도록 한다.
다음으로, A의 모든 변조가 결정되고 검사된다.
선택적으로, 행렬 A가 크기 때문에 A의 모든 변조가 유지될 필요는 없다. 사실, 소정의 구현예에서, 열간의 상대적 위치만이 관련된다. 따라서, 절약 될 수 있는 열(b0를 시퀀스(또는 m-시퀀스)의 시작으로 시프팅한 후)은 펜( 및 카메라)이 회전할 때 카메라의 수신 필드 내에 대응하는 2차원 위치가 있는 것이다. 열은 2차원 위치 정보를 갖는 배열(예를 들어, 행렬)로 저장될 수 있다. 예는 다음을 포함한다.
"element-type CoreVector[rowsize][column-size]."
이러한 열의 총 수는 L보다 훨씬 작다(여기에서 L=2n-1). 만약 b가 에러가 없다면, r의 솔루션은 다음과 같이 표현된다.
Figure 112003036077796-pat00009
여기서
Figure 112003036077796-pat00010
은 임의의 축중하지 않은(non-degenerate) n x n 인 M의 부행렬이고
Figure 112003036077796-pat00011
은 b의 대응하는 부벡터이다.
에러 교정(Error Correction)
만약 b에 에러가 존재한다면, r의 솔루션은 보다 복잡해진다. b에서의 에러 수(ne로 표현된다)가 d/2 보다 적다면, b는 교정될 수 있다(여기에서 d는 M에 의해 생성된 코드의 최소 해밍 거리이다). 불운하게도, 다른 펜의 포즈(pose)들에 대하여 행렬 M이 변화하고 행렬 M의 구조는 규칙적이지 않으므로, 에러를 교정하는 종래의 디코딩 방법은 쉽게 적용할 수 없다. 몇몇 예제에서, 에러가 존재할 때 d를 정확히 결정하는 것은 불가능하다고 제안되어 왔다. 일리야 두머, 다니엘 미치안치오 및 마드흐 수단(Ilya Dumer, Daniele Micciancio, and Madhu Sudan)의 "선형 코드의 최소 거리에 접근시키는 경도", IEEE 컴퓨터 과학 파운데이션의 심포지움. 1999년 pp 475-485를 보라.
그러나, 확률론적인 접근을 사용하여 긍정적 결과가 달성되었다. ne가 k에 비교하여 비교적 작다고 가정하면, b의 k비트로부터 바른 n 비트를 선택할 가능성은, M에서의 대응하는 열의 랜덤하게 선택된 n 비트가 독립일 때 크다.
시스템은 이미지에서 랜덤 비트를 반복적으로 선택할 수 있다. 만약 시스템이 이 선택 및 분석을 여러 번 반복한다면, 그것은 일반적으로 시퀀스에서 적당한 거리를 분리시킬 수 있다. 다르게 표현하면, 바른 비트가 선택될 때, bt및 rtM간의 해밍 거리는 최소일 것이다(여기에서 r은 식(4)로 계산된다). 수차례 반복하면, 바른 r은 다른 거리 보다 여러번 발생하여 쉽게 인식될 수 있다. 이 결과는 혼자 사용되거나 이전의 위치 정보와 조합될 수 있다. 예를 들어, 만약 카메라가 페이지의 상단에 가까운 라인에 위치할 수 있는 이미지의 문자열을 포착하고 카메라로부터의 현재 이미지는 예를 들어 하나는 매우 가깝고 하나는 매우 먼 이전 문자열 로부터의 거리를 제공한다면, 사용자는 단지 짧은 동안 많은 합보다 훨씬 적은 합으로 펜을 이동시킬 것 같다. 이전 이미지 포착 및 현재 이미지 포착간의 분석에 대해다른 종류가 사용될 수 있다.
만약 bt 및 rtM간의 해밍 거리가 모두 최소가 되도록 다른 r이 있다면, ne가 M에 의해 생성된 코드의 에러 교정 능력을 초과할 가능성이 크고 디코딩 프로세스는 실패한다. 그러면 시스템은 카메라로부터 다음 포착 이미지로 이동한다.
마침내, 바른 b가 결정될 수 있고 시퀀스(또는 m-시퀀스) I에서의 r의 위치는 다양한 기술에 의하여 계산될 수 있다(폴리히 헬만 실버 알고리즘을 포함하나 이에 한정되는 것은 아님). 그러면 펜 팁의 위치를 설정할 수 있다.
도 8은 포착된 이미지의 시퀀스(또는 m-시퀀스)에서 위치를 결정하기 위하여 사용될 수 있는 프로세스를 반영한다. 첫째로, 단계(801)에서, 포착된 이미지와 관련된 데이터 스트림이 수신된다. 단계(802)에서 열은 포착된 이미지 및 포착된 이미지에서의 정보로 구축된 행렬로부터 추출된다. 단계(803)에서, 코드는 거리에 따라 소트된다. 코드는 선행기술에서 알려진 다양한 소팅 알고리즘을 사용하여 소트될 수 있다. 예를 들어, 선택 소팅 알고리즘이 사용될 수 있다. 선택 소팅 알고리즘은 m이 크지 않을 경우 유리하다. 그러나 만약 m이 커지면, 더 많은 수의 아이템을 더 효율적으로 다루는 다른 소팅 알고리즘(예를 들어, 머지 소트)이 사용될 수 있다.
단계(804)에서, M 행 벡터는 단계(802)에서 구축된 행렬로부터 선택되고 거 리 벡터 r은 802의 행렬로부터 배열(또는 m-배열)의 요청으로 결정된다.
포착된 이미지는 행렬 M의 위치를 결정하기 위하여 필요한 것보다 더 많은 정보를 포함한다. 예를 들어, 각 비트가 9 픽셀에 의하여 표현되고 카메라 이미징 시스템은 32x32 비트 행렬을 포함한다면, 대략 100 비트가 (10x10)으로 획득될 수 있다. 이 이미지화된 비트에서, n은 위치를 결정하기 위하여 사용된다. 그리고, 예를 들어 배열 m1, m2 크기가 255x255(65,025)라면 포착된 이미지를 위치시키기 위하여 필요한 비트 수는 n일 것이다(m1 x m2<= L=2n - 1인 경우). 여기에서 n=16이다. 따라서, 이미지를 위치시킬 수 있도록, 포착된 이미지가 생성하는데 필요한 비트 수는 n이다. 에러를 설명하는 다양한 다른 선택을 제공하기 위하여, n 비트 이상이 이미지로부터 추출될 필요가 있다. 예를 들어, 만약 필요한 n 값이 16이라면, 카메라는 18 또는 그 이상의 비트를 생성하기 위하여 필요할 수 있다.
이 분석은 단계(805)에서 K번(예를 들어 10까지 100까지 또는 500번까지) 수행된다. 이 방법은 반복된 결과의 최대 수 및 에러 비트 수가 어떤 값(예를 들어, 3)보다 작은 위치를 결정하려고 시도한다. 그러면 시스템은 단계(806)에서 에러 교정이 성공적으로 수행되는지 여부를 결정한다. 성공적으로 수행되지 않는다면, 단계(809)에서 에러가 리턴된다. 만약 성공적으로 수행된다면, 추출된 코드의 위치는 단계(807)에서의 시퀀스(또는 m-시퀀스)에서 계산된다(예를 들어, 폴리히-헬만-실버 알고리즘에 의하여). 이 단계는 또한 yi=yn/ml을 계산하고 Ri 의 나머지 값을 가지기 위하여 그룹 테이블에서의 요소를 찾는 서브 단계를 포함한다. 이것은 다음과 같이 표현된다.
Figure 112003036077796-pat00012
L은 시퀀스에서의 위치를 표시한다. 다음으로, 배열에서의 (X,Y) 위치는 x = L mod n1 및 y = L mod n2이고 결과는 단계(808)에서 리턴된다.
위치 결정(Location Determination)
도 9는 펜 팁의 위치를 결정하기 위한 처리를 나타낸다. 입력은 카메라에 의하여 포착된 이미지이며, 출력은 총 이미지와 비교되는 이미지의 위치 좌표일 수 있다. 또한, 출력은 포착된 이미지의 로테이션 각을 포함하거나 포함하지 않을 수 있다.
단계(901)에 있어서, 이미지는 카메라로부터 수신된다. 다음으로, 포착된 이미지의 로테이션 각 등을 결정하기 위하여, 수신된 이미지는 선택적으로 단계(902)에서 프리프로세싱 되어(단계(902)의 점선으로 도시함), 밝은 픽셀과 어두운 픽셀간의 대조를 조절할 수 있다.
다음으로, 단계(903)에서 이미지는 이미지 안의 비트스트림을 결정하기 위하여 분석된다.
다음으로 단계(904)에서 비트 스트림은 원시 비트 스트림과 비교되고 원시 비트 스트림 내의 수신 비트 스트림의 위치가 결정된다. 이 비교는 이미지(403)을 생성하기 위하여 원시 비트 스트림이 어떻게 랩핑되는지 시스템이 알고 있을 때 이루어진다. 마지막으로, 포착된 이미지의 위치가 단계(904)에서 결정되면 펜 팁의 위치가 단계(905)에서 결정될 수 있다.
도 10은 펜 팁의 위치 결정에 대한 선택적 접근을 도시한다. 우선, 단계(1001)에서 카메라로부터 이미지가 수신된다. 그 후 이미지는 선택적으로 단계(1002)에서 이미지 전처리를 거친다(단계(1002)의 점선으로 도시함). 패턴은 단계(1003)에서 추출된다. 여기서 다양한 선에서의 픽셀이 패턴의 오리엔테이션을 알아내고, 각 θ를 결정하기 위하여 추출될 수 있다.
다음으로, 수신된 이미지는 단계(1004)에서 분석되어 픽셀 및 그리드 선의 기초가 되는 분포를 결정한다. 그리드 선이 단계(1005)에서 발견되면, 단계(1006)에서 코드가 패턴으로부터 추출된다. 그리고 코드는 단계(1007)에서 디코딩되고, 단계(1008)에서 펜 팁의 위치가 결정된다. 단계(1005)에서 그리드 선이 발견되지 않았다면, 단계(1009)에서 에러가 반환된다.
첨부된 청구항을 사용하여 본 발명이 정의되지만 이 청구항은 예시적인 것이고, 본 발명은 여기에 설명한 요소 및 단계의 어떤 조합도 포함하도록 의도되었다. 따라서, 본 발명을 정의하기 위하여 다수의 선택적 조합이 있고, 다양한 조합으로 상세한 설명, 특허청구 범위 및 도면을 포함하여 명세서로부터 하나 이상의 요소를 통합할 수 있다. 본 발명의 명세서에 비추어 여기에 정의된 하나 이상의 요소 또는 단계와 조합하여 발명의 선택적인 조합 또는 하나의 발명이 발명의 일부 또는 발명의 대체 또는 수정으로 사용될 수 있다는 것은 당업자에게 명백하다. 여기에 포함된 본 발명의 설명은 그러한 수정 및 대체를 모두 다루도록 의도되었다.
본 발명의 실시에 의하여 보여진 이미지에서 위치를 정할 수 있다. 보여진 이미지는 인쇄된 종이 또는 디스플레이된 컴퓨터 이미지에 있을 수 있다. 본 발명은 이미지의 위치를 효율적으로 결정할 수 있도록 하고, 포착된 이미지의 효율적인 디코딩을 허용하는 디코딩 프로세스를 포함한다.

Claims (19)

  1. 이미지에 대한 객체의 위치를 식별하기 위한 이미지를 생성하는 방법으로서,
    숫자들의 비 반복 1차원 시퀀스를 생성하는 단계;
    상기 비 반복 1차원 시퀀스를 2차원 배열(array)로 랩핑(wrapping)하는 단계; 및
    상기 2차원 배열에 기초하여 이미지를 생성하는 단계
    를 포함하고,
    적어도 n 개의 요소를 갖는 상기 2차원 배열의 각각의 서브 윈도우가 상기 배열에서 단일(unique)하며, 상기 배열의 크기는 2n-1보다 작거나 같고,
    상기 생성된 이미지에 대한 객체의 위치를 디코딩하기 위해 상기 생성된 이미지의 일부가 캡처되는, 이미지 생성 방법.
  2. 제1항에 있어서, 상기 랩핑하는 단계는 상기 2차원 배열의 대각선(diagonal)에 따라 상기 비 반복 1차원 시퀀스를 랩핑하는 것을 포함하는, 이미지 생성 방법.
  3. 제2항에 있어서, 상기 랩핑하는 단계는 크기가 m1 x m2 인 상기 2차원 배열의 각각의 비트 bkl를 복수의 상기 1차원 시퀀스에 의해 표현하는 것을 포함하고, 상기 2차원 배열의 각각의 비트 bkl는 k= i mod(m1) 및 l= i mod(m2)에 기초하여 계산되며, 여기에서, i= 0, ... ,L-1 및 L = m1 x m2인, 이미지 생성 방법.
  4. 제1항에 있어서, 상기 2차원 배열은 바이너리 배열인, 이미지 생성 방법.
  5. 제1항에 있어서, 상기 숫자들의 1차원 시퀀스는 단지 1 및 0만을 포함하는, 이미지 생성 방법.
  6. 제1항에 있어서, 상기 생성하는 단계는 상기 이미지를 표시된 형태로 위치시키는 것을 포함하는, 이미지 생성 방법.
  7. 제6항에 있어서, 상기 표시된 형태는 물리적 매체를 포함하는, 이미지 생성 방법.
  8. 제7항에 있어서, 상기 물리적 매체는 인쇄된 종이 위의 워터마크를 포함하는, 이미지 생성 방법.
  9. 제6항에 있어서, 상기 표시된 형태는 투사된 이미지(projected image)를 포함하는, 이미지 생성 방법.
  10. 이미지에 대한 객체의 위치를 식별하기 위한 이미지를 생성하는 방법을 수행하는 실행가능한 명령어들을 저장하는 하나 이상의 컴퓨터 판독가능 기록 매체로서, 상기 방법은,
    비 반복 시퀀스를 생성하는 단계; 및
    상기 비 반복 시퀀스를 배열로 랩핑하는 단계
    를 포함하고,
    적어도 n 개의 요소를 갖는 상기 배열의 각각의 서브 윈도우가 상기 배열에서 단일하며, 상기 배열의 크기는 2n-1보다 작거나 같은, 하나 이상의 컴퓨터 판독가능 기록 매체.
  11. 제10항에 있어서, 상기 랩핑하는 단계는 상기 배열의 대각선에 따라 상기 비 반복 시퀀스를 랩핑하는 것을 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  12. 제11항에 있어서, 상기 랩핑하는 단계는 크기가 m1 x m2 인 상기 배열의 각각의 비트 bkl를 복수의 상기 시퀀스에 의해 표현하는 것을 포함하고, 상기 배열의 각각의 비트 bkl는 k= i mod(m1) 및 l= i mod(m2)에 기초하여 계산되며, 여기에서, i= 0, ... ,L-1 및 L = m1 x m2인, 하나 이상의 컴퓨터 판독가능 기록 매체.
  13. 제10항에 있어서, 상기 배열은 바이너리 배열인, 하나 이상의 컴퓨터 판독가능 기록 매체.
  14. 제10항에 있어서, 상기 시퀀스는 단지 1 및 0만을 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  15. 제10항에 있어서, 상기 배열에 기초하여 이미지를 생성하는 단계 및 상기 생성된 이미지를 표시된 형태로 위치시키는 단계를 더 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  16. 제15항에 있어서, 상기 표시된 형태는 물리적 매체를 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  17. 제16항에 있어서, 상기 물리적 매체는 인쇄된 종이 위의 워터마크를 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  18. 제15항에 있어서, 상기 표시된 형태는 투사된 이미지를 포함하는, 하나 이상의 컴퓨터 판독가능 기록 매체.
  19. 이미지에 대한 객체의 위치를 식별하기 위한 이미지를 표시하는 방법을 수행하는 실행가능한 명령어들을 저장하는 하나 이상의 컴퓨터 판독가능 기록 매체로서, 상기 방법은,
    숫자들의 비 반복 1차원 시퀀스를 생성하는 단계;
    상기 비 반복 1차원 시퀀스를 2차원 배열로 랩핑하는 단계; 및
    상기 2차원 배열에 기초한 이미지를 컴퓨터의 디스플레이 상에 표시하는 단계
    를 포함하고,
    적어도 n 개의 요소를 갖는 상기 2차원 배열의 각각의 서브 윈도우가 상기 배열에서 단일하며, 상기 배열의 크기는 2n-1보다 작거나 같은, 하나 이상의 컴퓨터 판독가능 기록 매체.
KR1020030067329A 2002-10-31 2003-09-29 2차원 배열에서의 디코딩 및 에러 교정 KR100984402B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/284,422 US7116840B2 (en) 2002-10-31 2002-10-31 Decoding and error correction in 2-D arrays
US10/284,422 2002-10-31

Publications (2)

Publication Number Publication Date
KR20040038644A KR20040038644A (ko) 2004-05-08
KR100984402B1 true KR100984402B1 (ko) 2010-09-29

Family

ID=32093523

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030067329A KR100984402B1 (ko) 2002-10-31 2003-09-29 2차원 배열에서의 디코딩 및 에러 교정

Country Status (6)

Country Link
US (4) US7116840B2 (ko)
EP (1) EP1416435A3 (ko)
JP (2) JP2004152273A (ko)
KR (1) KR100984402B1 (ko)
CN (4) CN1499440B (ko)
BR (1) BR0304268A (ko)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060082557A1 (en) * 2000-04-05 2006-04-20 Anoto Ip Lic Hb Combined detection of position-coding pattern and bar codes
US7385595B2 (en) * 2001-11-30 2008-06-10 Anoto Ab Electronic pen and method for recording of handwritten information
EP1359672A1 (en) * 2002-05-03 2003-11-05 Siemens Aktiengesellschaft Method for improving the performance of concatenated codes
US7009594B2 (en) * 2002-10-31 2006-03-07 Microsoft Corporation Universal computing device
US7133563B2 (en) 2002-10-31 2006-11-07 Microsoft Corporation Passive embedded interaction code
US7583842B2 (en) * 2004-01-06 2009-09-01 Microsoft Corporation Enhanced approach of m-array decoding and error correction
US7263224B2 (en) * 2004-01-16 2007-08-28 Microsoft Corporation Strokes localization by m-array decoding and fast image matching
SE0401647D0 (sv) * 2004-06-28 2004-06-28 Anoto Ab Coding and decoding of data
SE0401812D0 (sv) * 2004-07-08 2004-07-08 Anoto Ab Method in creating a symbol pattern, symbol pattern obtained thereby method and system for finding a position in such symbol pattern and computer program product for performing the method
KR20070085366A (ko) * 2004-10-12 2007-08-27 아노토 아베 전자펜으로부터의 정보의 보안 관리 방법 및 시스템
US7505982B2 (en) * 2004-12-03 2009-03-17 Microsoft Corporation Local metadata embedding solution
US7536051B2 (en) * 2005-02-17 2009-05-19 Microsoft Corporation Digital pen calibration by local linearization
US7607076B2 (en) * 2005-02-18 2009-10-20 Microsoft Corporation Embedded interaction code document
CN100557557C (zh) 2005-02-23 2009-11-04 阿诺托股份公司 电子笔中的方法、计算机程序产品以及电子笔
US7532366B1 (en) 2005-02-25 2009-05-12 Microsoft Corporation Embedded interaction code printing with Microsoft Office documents
US7826074B1 (en) 2005-02-25 2010-11-02 Microsoft Corporation Fast embedded interaction code printing with custom postscript commands
US20060215913A1 (en) * 2005-03-24 2006-09-28 Microsoft Corporation Maze pattern analysis with image matching
US20060242562A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation Embedded method for embedded interaction code array
US7421439B2 (en) * 2005-04-22 2008-09-02 Microsoft Corporation Global metadata embedding and decoding
US7400777B2 (en) 2005-05-25 2008-07-15 Microsoft Corporation Preprocessing for information pattern analysis
US7729539B2 (en) 2005-05-31 2010-06-01 Microsoft Corporation Fast error-correcting of embedded interaction codes
US7580576B2 (en) * 2005-06-02 2009-08-25 Microsoft Corporation Stroke localization and binding to electronic document
US7619607B2 (en) * 2005-06-30 2009-11-17 Microsoft Corporation Embedding a pattern design onto a liquid crystal display
US7528848B2 (en) * 2005-06-30 2009-05-05 Microsoft Corporation Embedded interaction code decoding for a liquid crystal display
US7817816B2 (en) * 2005-08-17 2010-10-19 Microsoft Corporation Embedded interaction code enabled surface type identification
US7622182B2 (en) * 2005-08-17 2009-11-24 Microsoft Corporation Embedded interaction code enabled display
JP4289350B2 (ja) 2005-12-26 2009-07-01 富士ゼロックス株式会社 画像処理装置及び画像処理方法
JP4207049B2 (ja) 2006-02-24 2009-01-14 富士ゼロックス株式会社 同定機能付き印刷物、画像生成装置、画像処理装置及びその方法
US20090204821A1 (en) * 2006-04-12 2009-08-13 Bjoern Fransson Data protection mechanism
JP2008113258A (ja) * 2006-10-30 2008-05-15 Fuji Xerox Co Ltd 画像生成装置、画像処理装置、及びプログラム
JP5439358B2 (ja) * 2007-03-23 2014-03-12 アノト アクティエボラーク 位置符号化パターンの印刷
US8358964B2 (en) 2007-04-25 2013-01-22 Scantron Corporation Methods and systems for collecting responses
JP2008293405A (ja) 2007-05-28 2008-12-04 Fuji Xerox Co Ltd データ入力システム
US20090309854A1 (en) * 2008-06-13 2009-12-17 Polyvision Corporation Input devices with multiple operating modes
US8592697B2 (en) * 2008-09-10 2013-11-26 Apple Inc. Single-chip multi-stimulus sensor controller
EP2226704B1 (en) 2009-03-02 2012-05-16 Anoto AB A digital pen
US20100325490A1 (en) * 2009-06-22 2010-12-23 Anvin H Peter System and method to view crash dump information using a 2-d barcode
US8248372B2 (en) * 2009-06-26 2012-08-21 Nokia Corporation Method and apparatus for activating one or more remote features
KR101058726B1 (ko) * 2009-11-11 2011-08-22 삼성전자주식회사 조명 성분을 제거하기 위한 이미지 보정 장치 및 방법
GB2475273B (en) * 2009-11-12 2011-09-28 Liberation Consulting Ltd Toy systems and position systems
WO2011094214A1 (en) * 2010-01-29 2011-08-04 Scantron Corporation Data collection and transfer techniques for scannable forms
CN102012770B (zh) * 2010-11-22 2013-01-09 广东威创视讯科技股份有限公司 基于图像校正的摄像头定位方法
WO2013090494A1 (en) 2011-12-16 2013-06-20 3M Innovative Properties Company Optical digitizer system with position-unique photoluminescent indicia
JP5962056B2 (ja) 2012-02-27 2016-08-03 富士ゼロックス株式会社 画像判定装置及び画像形成装置
US8692212B1 (en) 2012-10-29 2014-04-08 3M Innovative Properties Company Optical digitizer system with position-unique photoluminescent indicia
US10753746B2 (en) 2012-11-29 2020-08-25 3M Innovative Properties, Inc. Multi-mode stylus and digitizer system
US9958954B2 (en) 2012-12-13 2018-05-01 3M Innovative Properties Company System and methods for calibrating a digitizer system
US10546210B2 (en) 2014-02-17 2020-01-28 Mobileye Vision Technologies Ltd. Topology preserving intensity binning on reduced resolution grid of adaptive weighted cells
US9615050B2 (en) 2014-02-17 2017-04-04 Mobileye Vision Technologies Ltd. Topology preserving intensity binning on reduced resolution grid of adaptive weighted cells
WO2015141260A1 (ja) * 2014-03-17 2015-09-24 株式会社河合楽器製作所 手書き音楽記号認識装置およびプログラム
US20160308744A1 (en) * 2015-04-16 2016-10-20 Super Analytics Oy Method and system for collecting information about usage of a web property
US10796016B2 (en) * 2018-03-28 2020-10-06 Visa International Service Association Untethered resource distribution and management

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0439682A2 (en) 1990-01-05 1991-08-07 Symbol Technologies, Inc. High density two dimensional symbology
US5937110A (en) 1996-12-20 1999-08-10 Xerox Corporation Parallel propagating embedded binary sequences for characterizing objects in N-dimensional address space
KR100263734B1 (ko) 1992-04-06 2000-08-01 키시다 요 2차원 코드 기호 마크의 디코딩 방법
KR100359671B1 (ko) 1992-10-15 2003-01-14 소니 가부시끼 가이샤 인코더및디코더

Family Cites Families (152)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPQ055999A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (npage01)
US4941124A (en) 1982-01-25 1990-07-10 Skinner Jr James T Text comparator with counter shift register
JPS59205874A (ja) * 1983-05-10 1984-11-21 Canon Inc 画像デ−タ圧縮装置
US4742558A (en) 1984-02-14 1988-05-03 Nippon Telegraph & Telephone Public Corporation Image information retrieval/display apparatus
NL8501460A (nl) 1985-05-22 1986-12-16 Philips Nv Werkwijze voor het identificeren van voorwerpen die voorzien zijn van een kodeveld met stipkode, inrichting voor het identificeren van zo een stipkode, en produkt voorzien van zo een stipkode.
US4829583A (en) 1985-06-03 1989-05-09 Sino Business Machines, Inc. Method and apparatus for processing ideographic characters
US4686329A (en) 1985-06-21 1987-08-11 Advanced Robotic Technology, Inc. Absolute position mouse
US4972496A (en) * 1986-07-25 1990-11-20 Grid Systems Corporation Handwritten keyboardless entry computer system
US4924078A (en) 1987-11-25 1990-05-08 Sant Anselmo Carl Identification symbol, system and method
US5001766A (en) * 1988-05-16 1991-03-19 At&T Bell Laboratories Apparatus and method for skew control of document images
DE3826442A1 (de) 1988-08-03 1990-02-08 Royocad Ges Fuer Hard Und Soft Projektionskopf
CA1329263C (en) * 1989-03-01 1994-05-03 Mark Krichever Bar code scanner
US5635697A (en) 1989-03-01 1997-06-03 Symbol Technologies, Inc. Method and apparatus for decoding two-dimensional bar code
US5032924A (en) 1989-04-10 1991-07-16 Nilford Laboratories, Inc. System for producing an image from a sequence of pixels
KR930002339B1 (ko) 1989-04-20 1993-03-29 가부시기가이샤 도시바 짧은 직선 벡터의 곡선 세그멘트에 3차 베지어(Bzxier)곡선을 정합시키는 방법
US5153928A (en) 1989-06-09 1992-10-06 Casio Computer Co., Ltd. Method and apparatus for recording/reproducing mesh pattern data
US5051736A (en) 1989-06-28 1991-09-24 International Business Machines Corporation Optical stylus and passive digitizing tablet data input system
US5337361C1 (en) 1990-01-05 2001-05-15 Symbol Technologies Inc Record with encoded data
US5146552A (en) 1990-02-28 1992-09-08 International Business Machines Corporation Method for associating annotation with electronically published material
US5333246A (en) 1990-04-05 1994-07-26 Seiko Epson Corporation Page-description language interpreter for a parallel-processing system
DE4012608A1 (de) 1990-04-20 1991-10-24 Roland Man Druckmasch Verfahren und vorrichtung zur bestimmung von passerdifferenzen an druckbildstellen eines mehrfarbenoffsetdruckes
JPH06506080A (ja) 1991-04-03 1994-07-07 ヒューレット・パッカード・カンパニー 位置検知装置
CA2045907C (en) 1991-06-28 1998-12-15 Gerald B. Anderson A method for storing and retrieving annotations and redactions in final form documents
US5247137A (en) 1991-10-25 1993-09-21 Mark Epperson Autonomous computer input device and marking instrument
US5448372A (en) 1991-12-18 1995-09-05 Eastman Kodak Company Storage and retrieval of digitized photographic images
US5294792A (en) 1991-12-31 1994-03-15 Texas Instruments Incorporated Writing tip position sensing and processing apparatus
JP2664112B2 (ja) * 1992-01-17 1997-10-15 シャープ株式会社 映像信号のディジタル記録及び再生装置
JPH0644005A (ja) 1992-01-24 1994-02-18 Seiko Instr Inc 座標入力装置
US5756981A (en) 1992-02-27 1998-05-26 Symbol Technologies, Inc. Optical scanner for reading and decoding one- and-two-dimensional symbologies at variable depths of field including memory efficient high speed image processing means and high accuracy image analysis means
US5477012A (en) 1992-04-03 1995-12-19 Sekendur; Oral F. Optical position determination
US5852434A (en) * 1992-04-03 1998-12-22 Sekendur; Oral F. Absolute optical position determination
US5243149A (en) 1992-04-10 1993-09-07 International Business Machines Corp. Method and apparatus for improving the paper interface to computing systems
US5235654A (en) 1992-04-30 1993-08-10 International Business Machines Corporation Advanced data capture architecture data processing system and method for scanned images of document forms
JP2861647B2 (ja) 1992-07-08 1999-02-24 松下電器産業株式会社 画像生成装置
CA2143633A1 (en) 1992-09-01 1994-03-17 James Oliver Normile Improved vector quantization
US5288986A (en) 1992-09-17 1994-02-22 Motorola, Inc. Binary code matrix having data and parity bits
GB9223226D0 (en) 1992-11-05 1992-12-16 Algotronix Ltd Improved configurable cellular array (cal ii)
US5450603A (en) 1992-12-18 1995-09-12 Xerox Corporation SIMD architecture with transfer register or value source circuitry connected to bus
JP3526067B2 (ja) 1993-03-15 2004-05-10 株式会社東芝 再生装置及び再生方法
US5502568A (en) * 1993-03-23 1996-03-26 Wacom Co., Ltd. Optical position detecting unit, optical coordinate input unit and optical position detecting method employing a pattern having a sequence of 1's and 0's
US5414227A (en) 1993-04-29 1995-05-09 International Business Machines Corporation Stylus tilt detection apparatus for communication with a remote digitizing display
US5398082A (en) 1993-05-20 1995-03-14 Hughes-Jvc Technology Corporation Scanned illumination for light valve video projectors
US5335150A (en) 1993-08-31 1994-08-02 Huang Chao C Laser pointer with a constant power output control
US5394487A (en) 1993-10-27 1995-02-28 International Business Machines Corporation Forms recognition management system and method
US6243071B1 (en) 1993-11-03 2001-06-05 Apple Computer, Inc. Tool set for navigating through an electronic book
US5822436A (en) 1996-04-25 1998-10-13 Digimarc Corporation Photographic products and methods employing embedded information
EP0654755B1 (en) 1993-11-23 2000-08-02 International Business Machines Corporation A system and method for automatic handwriting recognition with a writer-independent chirographic label alphabet
EP0654746B1 (en) 1993-11-24 2003-02-12 Canon Kabushiki Kaisha Form identification and processing system
EP0655674B1 (en) 1993-11-30 2000-03-08 Hewlett-Packard Company Data input apparatus
CA2153684C (en) 1993-12-01 2000-03-21 John L. C. Seybold Combined dictionary based and likely character string method of handwriting recognition
US5875264A (en) 1993-12-03 1999-02-23 Kaman Sciences Corporation Pixel hashing image recognition system
US5726435A (en) 1994-03-14 1998-03-10 Nippondenso Co., Ltd. Optically readable two-dimensional code and method and apparatus using the same
US5640468A (en) 1994-04-28 1997-06-17 Hsu; Shin-Yi Method for identifying objects and features in an image
GB9408626D0 (en) 1994-04-29 1994-06-22 Electronic Automation Ltd Machine readable binary code
US5897648A (en) 1994-06-27 1999-04-27 Numonics Corporation Apparatus and method for editing electronic documents
US5652412A (en) * 1994-07-11 1997-07-29 Sia Technology Corp. Pen and paper information recording system
EP0693739A3 (en) 1994-07-13 1997-06-11 Yashima Denki Kk Method and apparatus capable of storing and reproducing handwriting
US5774602A (en) 1994-07-13 1998-06-30 Yashima Electric Co., Ltd. Writing device for storing handwriting
US5748808A (en) 1994-07-13 1998-05-05 Yashima Electric Co., Ltd. Image reproducing method and apparatus capable of storing and reproducing handwriting
US5718457A (en) 1994-07-29 1998-02-17 Elpatronic Ag Method of marking objects with code symbols
US6052481A (en) 1994-09-02 2000-04-18 Apple Computers, Inc. Automatic method for scoring and clustering prototypes of handwritten stroke-based data
US5727098A (en) 1994-09-07 1998-03-10 Jacobson; Joseph M. Oscillating fiber optic display and imager
US5517587A (en) * 1994-09-23 1996-05-14 International Business Machines Corporation Positioning method and apparatus for line scanned images
US5661506A (en) 1994-11-10 1997-08-26 Sia Technology Corporation Pen and paper information recording system using an imaging pen
CA2163316A1 (en) 1994-11-21 1996-05-22 Roger L. Collins Interactive play with a computer
JPH08237407A (ja) 1994-12-09 1996-09-13 Xerox Corp 画像タイルの相対的なアラインメントを見当合わせすると共に透視歪みを修正するための方法
US5961571A (en) 1994-12-27 1999-10-05 Siemens Corporated Research, Inc Method and apparatus for automatically tracking the location of vehicles
US5939703A (en) 1995-01-03 1999-08-17 Xerox Corporation Distributed dimensional labeling for dimensional characterization of embedded data blocks
US5626620A (en) 1995-02-21 1997-05-06 Medtronic, Inc. Dual chamber pacing system and method with continual adjustment of the AV escape interval so as to maintain optimized ventricular pacing for treating cardiomyopathy
JP3668275B2 (ja) 1995-03-15 2005-07-06 シャープ株式会社 デジタル情報記録方法、解読方法および解読装置
JPH08255233A (ja) 1995-03-16 1996-10-01 Toshiba Corp バーコード符号化システム
HUP9801931A3 (en) 1995-03-31 1999-04-28 Kiwisoft Programs Ltd Te Atatu Machine-readable label
JP3474022B2 (ja) 1995-04-20 2003-12-08 株式会社日立製作所 地図表示装置、地図表示方法、地図表示装置用演算処理部およびナビゲーションシステム
JPH0944592A (ja) 1995-05-23 1997-02-14 Olympus Optical Co Ltd 情報再生システム
JPH08313215A (ja) 1995-05-23 1996-11-29 Olympus Optical Co Ltd 2次元距離センサ
US5661291A (en) 1995-06-07 1997-08-26 Hand Held Products, Inc. Audio proof of delivery system and method
US6044165A (en) 1995-06-15 2000-03-28 California Institute Of Technology Apparatus and method for tracking handwriting from visual input
US5719884A (en) 1995-07-27 1998-02-17 Hewlett-Packard Company Error correction method and apparatus based on two-dimensional code array with reduced redundancy
US5778191A (en) * 1995-10-26 1998-07-07 Motorola, Inc. Method and device for error control of a macroblock-based video compression technique
US6081261A (en) 1995-11-01 2000-06-27 Ricoh Corporation Manual entry interactive paper and electronic document handling and processing system
JPH09146691A (ja) 1995-11-17 1997-06-06 Hitachi Ltd 情報処理装置
US6000621A (en) 1995-12-21 1999-12-14 Xerox Corporation Tilings of mono-code and dual-code embedded data pattern strips for robust asynchronous capture
US5902968A (en) 1996-02-20 1999-05-11 Ricoh Company, Ltd. Pen-shaped handwriting input apparatus using accelerometers and gyroscopes and an associated operational device for determining pen movement
US5890177A (en) 1996-04-24 1999-03-30 International Business Machines Corporation Method and apparatus for consolidating edits made by multiple editors working on multiple document copies
US5692073A (en) 1996-05-03 1997-11-25 Xerox Corporation Formless forms and paper web using a reference-based mark extraction technique
US6054990A (en) 1996-07-05 2000-04-25 Tran; Bao Q. Computer system with handwriting annotation
US6104834A (en) * 1996-08-01 2000-08-15 Ricoh Company Limited Matching CCITT compressed document images
US5765176A (en) 1996-09-06 1998-06-09 Xerox Corporation Performing document image management tasks using an iconic image having embedded encoded information
US5855718A (en) * 1996-10-07 1999-01-05 3D Systems, Inc. Method of and apparatus for making partially solidified three-dimensional objects on a layer-by-layer basis from a solidifiable medium
US5933135A (en) * 1996-10-24 1999-08-03 Xerox Corporation Pen input device for high resolution displays
US5825892A (en) 1996-10-28 1998-10-20 International Business Machines Corporation Protecting images with an image watermark
US6202060B1 (en) 1996-10-29 2001-03-13 Bao Q. Tran Data management system
US6157935A (en) 1996-12-17 2000-12-05 Tran; Bao Q. Remote data access and management system
US6000614A (en) 1996-12-20 1999-12-14 Denso Corporation Two-dimensional code reading apparatus
US5995084A (en) 1997-01-17 1999-11-30 Tritech Microelectronics, Ltd. Touchpad pen-input and mouse controller
US6041335A (en) 1997-02-10 2000-03-21 Merritt; Charles R. Method of annotating a primary image with an image and for transmitting the annotated primary image
US6208894B1 (en) 1997-02-26 2001-03-27 Alfred E. Mann Foundation For Scientific Research And Advanced Bionics System of implantable devices for monitoring and/or affecting body parameters
US5817992A (en) * 1997-03-05 1998-10-06 Rpg Diffusor Systems, Inc. Planar binary amplitude diffusor
JPH10256921A (ja) 1997-03-13 1998-09-25 Olympus Optical Co Ltd ディジタルデータの変調及び復調方法並びにディジタルデータの変調及び復調装置
JPH10326331A (ja) 1997-03-24 1998-12-08 Olympus Optical Co Ltd ドットコードを有する記録媒体及びコード読取装置
US6219149B1 (en) 1997-04-01 2001-04-17 Fuji Xerox Co., Ltd. Print processing apparatus
US6188392B1 (en) 1997-06-30 2001-02-13 Intel Corporation Electronic pen device
US5855594A (en) 1997-08-08 1999-01-05 Cardiac Pacemakers, Inc. Self-calibration system for capture verification in pacing devices
US6518950B1 (en) * 1997-10-07 2003-02-11 Interval Research Corporation Methods and systems for providing human/computer interfaces
JPH11187348A (ja) * 1997-12-22 1999-07-09 Matsushita Electric Ind Co Ltd 記録再生装置および再生装置
US6181329B1 (en) 1997-12-23 2001-01-30 Ricoh Company, Ltd. Method and apparatus for tracking a hand-held writing instrument with multiple sensors that are calibrated by placing the writing instrument in predetermined positions with respect to the writing surface
US6230304B1 (en) 1997-12-24 2001-05-08 Magma Design Automation, Inc. Method of designing a constraint-driven integrated circuit layout
GB9800900D0 (en) * 1998-01-17 1998-03-11 Philips Electronics Nv Graphic image generation and coding
US6249614B1 (en) * 1998-03-06 2001-06-19 Alaris, Inc. Video compression and decompression using dynamic quantization and/or encoding
US6000946A (en) 1998-03-09 1999-12-14 Hewlett-Packard Company Collaborative drawing device
US6192380B1 (en) 1998-03-31 2001-02-20 Intel Corporation Automatic web based form fill-in
US6330976B1 (en) 1998-04-01 2001-12-18 Xerox Corporation Marking medium area with encoded identifier for producing action through network
US6070102A (en) 1998-04-29 2000-05-30 Medtronic, Inc. Audible sound confirmation of programming an implantable medical device
JP2000137569A (ja) * 1998-10-30 2000-05-16 Sega Enterp Ltd ページ検出方法及びそれを適用した装置
WO2000011596A1 (en) 1998-08-18 2000-03-02 Digital Ink, Inc. Handwriting device with detection sensors for absolute and relative positioning
US6256398B1 (en) * 1998-08-22 2001-07-03 Kenneth H. P. Chang Encoding and decoding a message within an image
US6108453A (en) 1998-09-16 2000-08-22 Intel Corporation General image enhancement framework
US6088482A (en) * 1998-10-22 2000-07-11 Symbol Technologies, Inc. Techniques for reading two dimensional code, including maxicode
WO2000025293A1 (en) 1998-10-23 2000-05-04 Raphael Cohen Pen-input device
US6226636B1 (en) 1998-11-20 2001-05-01 Philips Electronics North America Corp. System for retrieving images using a database
JP4068747B2 (ja) * 1999-01-06 2008-03-26 アルプス電気株式会社 レンズ及びそれを用いた光学装置
JP2000222116A (ja) * 1999-01-29 2000-08-11 Sony Corp 表示画像の位置認識方法とその位置認識装置および仮想画像立体合成装置
US6278968B1 (en) 1999-01-29 2001-08-21 Sony Corporation Method and apparatus for adaptive speech recognition hypothesis construction and selection in a spoken language translation system
US7062651B1 (en) 1999-05-25 2006-06-13 Silverbrook Research Pty Ltd Network printer registration protocol
ATE469390T1 (de) 1999-05-28 2010-06-15 Anoto Ab Positionsbestimmung
SE517445C2 (sv) * 1999-10-01 2002-06-04 Anoto Ab Positionsbestämning på en yta försedd med ett positionskodningsmönster
US6935562B2 (en) * 1999-12-06 2005-08-30 Xerox Corporation Operations on images having glyph carpets
US6880755B2 (en) * 1999-12-06 2005-04-19 Xerox Coporation Method and apparatus for display of spatially registered information using embedded data
JP4822645B2 (ja) 1999-12-23 2011-11-24 アノト アクティエボラーク ユーザ・ユニットおよびグローバル情報取り扱いシステム
WO2001050411A1 (en) 2000-01-06 2001-07-12 Zen Optical Technology Llc Pen-based handwritten character recognition and storage system
US6864880B2 (en) 2000-03-21 2005-03-08 Anoto Ab Device and method for communication
SE0000940L (sv) * 2000-03-21 2001-09-22 Anoto Ab Anordning och förfarande för kommunikation
SE0000951L (sv) 2000-03-21 2001-09-22 Anoto Ab Anordning och förfarande för rumslig förhållandebestämning
WO2001076120A2 (en) 2000-04-04 2001-10-11 Stick Networks, Inc. Personal communication device for scheduling presentation of digital content
US6479768B1 (en) 2000-05-17 2002-11-12 Hoton How Precision data acquisition using magnetomechanical transducer
US6751352B1 (en) 2000-05-25 2004-06-15 Hewlett-Packard Development Company, L.P. Method and apparatus for generating and decoding a visually significant barcode
US6585154B1 (en) 2000-08-03 2003-07-01 Yaakov Ostrover System, method and devices for documents with electronic copies attached thereto
US6650320B1 (en) * 2000-08-16 2003-11-18 International Business Machines Corporation Digital pen using visible image and autocorrelation of substrate pattern
US6592039B1 (en) * 2000-08-23 2003-07-15 International Business Machines Corporation Digital pen using interferometry for relative and absolute pen position
CA2359260C (en) * 2000-10-20 2004-07-20 Samsung Electronics Co., Ltd. Coding apparatus and method for orientation interpolator node
US20020163511A1 (en) 2000-11-29 2002-11-07 Sekendur Oral Faith Optical position determination on any surface
US20020118181A1 (en) * 2000-11-29 2002-08-29 Oral Sekendur Absolute optical position determination
US6538187B2 (en) * 2001-01-05 2003-03-25 International Business Machines Corporation Method and system for writing common music notation (CMN) using a digital pen
CN1157650C (zh) * 2001-01-16 2004-07-14 郭方红 用于计算机坐标与控制信息输入的系统及方法
US6681060B2 (en) 2001-03-23 2004-01-20 Intel Corporation Image retrieval using distance measure
US20040032393A1 (en) 2001-04-04 2004-02-19 Brandenberg Carl Brock Method and apparatus for scheduling presentation of digital content on a personal communication device
KR100408518B1 (ko) 2001-04-12 2003-12-06 삼성전자주식회사 컴퓨터용 전자펜 데이타 입력장치 및 좌표 측정 방법
US7176906B2 (en) 2001-05-04 2007-02-13 Microsoft Corporation Method of generating digital ink thickness information
US7110604B2 (en) * 2001-06-26 2006-09-19 Anoto Ab Processing of digital images
US6933933B2 (en) 2001-10-02 2005-08-23 Harris Corporation Pen cartridge that transmits acceleration signal for recreating handwritten signatures and communications
US6744967B2 (en) 2001-12-20 2004-06-01 Scientific-Atlanta, Inc. Program position user interface for personal video recording time shift buffer
US7123742B2 (en) * 2002-04-06 2006-10-17 Chang Kenneth H P Print user interface system and its applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0439682A2 (en) 1990-01-05 1991-08-07 Symbol Technologies, Inc. High density two dimensional symbology
KR100263734B1 (ko) 1992-04-06 2000-08-01 키시다 요 2차원 코드 기호 마크의 디코딩 방법
KR100359671B1 (ko) 1992-10-15 2003-01-14 소니 가부시끼 가이샤 인코더및디코더
US5937110A (en) 1996-12-20 1999-08-10 Xerox Corporation Parallel propagating embedded binary sequences for characterizing objects in N-dimensional address space

Also Published As

Publication number Publication date
EP1416435A3 (en) 2005-11-02
CN1499440B (zh) 2013-02-13
JP5009326B2 (ja) 2012-08-22
CN100442215C (zh) 2008-12-10
BR0304268A (pt) 2004-08-31
CN1866184A (zh) 2006-11-22
US20070025641A1 (en) 2007-02-01
KR20040038644A (ko) 2004-05-08
CN1499440A (zh) 2004-05-26
US20090110308A1 (en) 2009-04-30
US20040085287A1 (en) 2004-05-06
CN100442216C (zh) 2008-12-10
US7386191B2 (en) 2008-06-10
US7116840B2 (en) 2006-10-03
US7330605B2 (en) 2008-02-12
CN1866183A (zh) 2006-11-22
CN1866185A (zh) 2006-11-22
CN100442214C (zh) 2008-12-10
JP2009116912A (ja) 2009-05-28
US20070003169A1 (en) 2007-01-04
JP2004152273A (ja) 2004-05-27
US7639885B2 (en) 2009-12-29
EP1416435A2 (en) 2004-05-06

Similar Documents

Publication Publication Date Title
KR100984402B1 (ko) 2차원 배열에서의 디코딩 및 에러 교정
US8156153B2 (en) Global metadata embedding and decoding
KR101037232B1 (ko) 카메라와 펜촉의 맵핑 및 캘리브레이션
JP5036857B2 (ja) m配列のデコーディングおよびエラー訂正の強化された手法
KR101037238B1 (ko) m-어레이 디코딩 및 고속 이미지 매칭에 의한 스트로크로컬리제이션
US7581171B2 (en) Positionally encoded document image analysis and labeling
US7536051B2 (en) Digital pen calibration by local linearization
US7505982B2 (en) Local metadata embedding solution
JP4822775B2 (ja) 迷路パターン分析方法及びその装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130813

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140814

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150819

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 9