KR20180097519A - 도식들에서의 필기 인식의 시스템 및 방법 - Google Patents

도식들에서의 필기 인식의 시스템 및 방법 Download PDF

Info

Publication number
KR20180097519A
KR20180097519A KR1020187014095A KR20187014095A KR20180097519A KR 20180097519 A KR20180097519 A KR 20180097519A KR 1020187014095 A KR1020187014095 A KR 1020187014095A KR 20187014095 A KR20187014095 A KR 20187014095A KR 20180097519 A KR20180097519 A KR 20180097519A
Authority
KR
South Korea
Prior art keywords
text
elements
strokes
input
digital ink
Prior art date
Application number
KR1020187014095A
Other languages
English (en)
Other versions
KR102396224B1 (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 KR20180097519A publication Critical patent/KR20180097519A/ko
Application granted granted Critical
Publication of KR102396224B1 publication Critical patent/KR102396224B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • G06F17/2705
    • G06F17/30707
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06K9/00416
    • G06K9/00436
    • G06K9/00476
    • G06K9/222
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • G06V30/1423Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • G06V30/347Sampling; Contour coding; Stroke extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • G06V30/387Matching; Classification using human interaction, e.g. selection of the best displayed recognition candidate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/422Technical drawings; Geographical maps

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 시스템이 제공되며, 컴퓨팅 디바이스는 프로세서와 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함하며, 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들의 디스플레이를 하게 하며, 각각의 도식 엘리먼트의 클래스 및 유형에 따라서 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키고, 수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 하나 이상의 연관들에 따라서 도식 엘리먼트들의 재-디스플레이를 하게 하도록 구성된다.

Description

도식들에서의 필기 인식의 시스템 및 방법
관련 출원들에 대한 상호참조들
본 출원은 2015년 10월 19일자로 출원된 유럽 출원 제15290271.4호와 이 유럽 출원 제15290271.4호를 우선권 주장한 2015년 12월 1일자로 출원된 미국 출원 제14/955,155호를 우선권 주장하며, 그 전체 내용은 참조로 본 명세서에 포함된다.
본 개시물은 대체로 다양한 그래픽 및 텍스트의 사용자 입력 필기를 인식할 수 있는 컴퓨팅 디바이스 인터페이스들의 분야에 관한 것이다. 특히, 본 개시물은 디지털 도식 (diagram) 문서들을 생성하기 위해 입력 필기 도식 엘리먼트들의 검출 및 인식을 위한 시스템들 및 방법들을 제공한다.
컴퓨팅 디바이스들이 일상 생활에서 계속하여 더욱 편재적이 되어 가고 있다. 그것들은 컴퓨터 데스크톱들, 랩톱 컴퓨터들, 태블릿 컴퓨터들, 하이브리드 컴퓨터들 (2-인-1들), e-북 리더들, 모바일 폰들, 스마트폰들, 착용가능 컴퓨터들 (스마트워치들, 스마트 안경/헤드셋들을 포함함), 글로벌 포지셔닝 시스템 (GPS) 유닛들, 회사 정보 단말기들 (enterprise digital assistants, EDA들), 개인 정보 단말기들 (PDA들), 게임 콘솔들 등의 형태를 취한다. 게다가, 컴퓨팅 디바이스들은 차량들과 장비, 이를테면 자동차들, 트럭들, 농기구, 제조 장비, 건물 환경 제어 (예컨대, 조명, HVAC), 그리고 가정 및 상업용 가전기기들에 통합되어 있다.
컴퓨팅 디바이스들은 적어도 하나의 프로세싱 엘리먼트, 이를테면 중앙 프로세싱 유닛 (CPU), 일부 형태의 메모리, 그리고 입력 및 출력 디바이스들로 일반적으로 이루어진다. 다양한 컴퓨팅 디바이스들 및 그것들의 후속하는 사용들은 다양한 인터페이스들과 입력 디바이스들을 필요로 한다. 하나의 이러한 입력 디바이스는 사용자의 손가락 또는 펜 또는 스타일러스와 같은 기구와 터치 감응 표면 사이의 접촉을 통해 사용자 입력이 수신되는 터치 스크린 또는 터치 패드와 같은 터치 감응 표면이다. 다른 입력 디바이스는 입력 표면 위에서 사용자에 의해 이루어진 제스처들을 감지하는 입력 표면이다. 추가의 입력 디바이스가 비-터치 물리적 또는 가상 표면과의 터치 상호작용 또는 비-터치 상호작용 중 어느 하나의 상호작용의 상대 포지션을 검출하는 포지션 검출 시스템이다. 이들 입력 방법들 중 임의의 것은 필기 인식 시스템 또는 방법을 사용하여 입력이 해석되는 도면들 및 텍스트의 필기되거나 또는 핸드 드로잉된 입력을 위해 일반적으로 사용될 수 있다.
컴퓨팅 디바이스들에서의 필기 인식의 하나의 응용이 조판 (typeset) 버전들로 변환될 컴퓨팅 디바이스 상의 핸드 드로잉된 도식들의 생성에 있다. 도식들은 (부분들의) 배열 및 관계들을 설명하거나 또는 도시하는 도면들이다. 도식들은 임의적 (arbitrary) 또는 특정 의미들을 갖는 형상들과 이들 형상들과 관계들을 갖는 텍스트를 일반적으로 포함한다. 흐름도들, 조직표들, 개념 맵들, 거미 맵들 (spider maps), 블록/아키텍처 도식들, 마인드 맵들, 블록도들, 벤 다이어그램들 및 피라미드들과 같은 많은 유형의 도식들이 있다. 가능한 도식들의 일부 조판 및 필기 예들의 묘사들이 도 1 내지 도 6에서 예시된다.
도 1a 및 도 1b는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 형상들과, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형 (예컨대, 직선 화살표들, 곡선 화살표들) 의 커넥터들 (14) 을 다양하게 가지는 조판 및 필기된 예시적인 개념 맵들 (10) 을 각각 도시한다. 게다가, 도 1b에서 컨테이너들 (12) 은 텍스트 (16) 를 포함한다. 일반적으로 개념 맵들에서 블록들 사이의 연결들은 그들 블록들에서의 텍스트에 의해 정의되는 개념적으로 관련되거나 또는 의존적인 엘리먼트들 또는 테마들을 정의한다. 블록들 사이의 관계는 커넥터들 상의 라벨들을 사용하여 정밀하게 이루어질 수도 있다. 블록들 자체는 개념 맵에 존재하지 않을 수도 있고 대신 텍스트 (예컨대, 연관된 형상 또는 컨테이너를 갖지 않는 텍스트 블록들에서 정의됨) 는 커넥터들에 의해 연결될 수도 있다.
도 2a 및 도 2b는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 형상들, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형 (예컨대, 직선 화살표들, 곡선 화살표들) 의 커넥터들 (14) 및 마인드 맵들의 특정한 특징들 또는 상태들로의 경로들 (18) 을 다양하게 가지는 조판 및 필기된 예시적인 마인드 맵들 (20) 을 각각 도시한다. 게다가, 도 2b에서 컨테이너들 (12) 과 경로들 (18) 은 연관된 텍스트 (16) 를 가진다. 일반적으로 마인드 맵들에서 블록들 사이의 연결들은 그들 블록들에서의 텍스트에 의해 정의되는 중앙 엘리먼트들 또는 테마들로부터의 가능한 대안적 상태들 또는 링크된 아이디어들을 정의하고, 그 경로들은 그들 경로들에 대해 텍스트에 의해 정의된 각각의 대안적 상태의 핵심 특징들을 정의한다. 블록들 자체는 마인드 맵에 존재하지 않을 수도 있고 대신 텍스트 (예컨대, 연관된 형상 또는 컨테이너를 갖지 않는 텍스트 블록들에서 정의됨) 는 커넥터들 및 경로들에 의해 연결될 수도 있다.
도 3a 및 도 3b는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 상이한 유형 (예컨대, 계란형들, 직사각형들, 다이아몬드형들) 의 형상들과, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형 (예컨대, 직선 화살표들, 굽은 화살표들, 분기된 선들) 의 커넥터들 (14) 을 다양하게 가지는 조판 및 필기된 예시적인 흐름도들 또는 다이어그램들 (30) 을 각각 도시한다. 게다가, 도 3b에서 컨테이너들 (12) 은 텍스트 (16) 를 포함하며; 텍스트는 커넥터들과 또한 연관될 수도 있다. 일반적으로 흐름도들에서 블록들 사이의 연결들은 그들 블록들에서의 텍스트에 의해 정의되는 절차적으로 관련되거나 또는 의존적인 엘리먼트들 또는 단계들을 정의한다. 블록들 자체는 흐름도에 존재하지 않을 수도 있고 대신 텍스트 (예컨대, 연관된 형상 또는 컨테이너를 갖지 않는 텍스트 블록들에서 정의됨) 는 커넥터들에 의해 연결될 수도 있다.
도 4a 및 도 4b는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 형상들과, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형 (예컨대, 직선들, 굽은 선들, 분기된 선들) 의 커넥터들 (14) 을 다양하게 가지는 조판 및 필기된 예시적인 흐름도들 또는 다이어그램들 (40) 을 각각 도시한다. 게다가, 도 4b에서 컨테이너들 (12) 은 텍스트 (16) 를 포함한다. 일반적으로 조직표들에서 블록들 사이의 연결들은 그들 블록들에서의 텍스트에 의해 정의되는 조직 또는 그룹의 멤버들 또는 함수들의 계층적 관계들을 정의한다. 블록들 자체는 조직표에 존재하지 않을 수도 있고 대신 텍스트 (예컨대, 연관된 형상 또는 컨테이너를 갖지 않는 텍스트 블록들에서 정의됨) 는 커넥터들에 의해 연결될 수도 있다.
도 5a 및 도 5b는 네스팅된 (nested) 관계들 (예컨대, 다른 컨테이너들 (12) 내의 컨테이너들 (12)) 을 가지는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 형상들과, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는, 네스팅된 블록들 사이에 포함하는 커넥터들 (14) 을 다양하게 가지는 조판 및 필기된 예시적인 블록/아키텍처 도면들 (50) 을 각각 도시한다. 게다가, 도 5b에서 컨테이너들 (12) 과 커넥터들은 연관된 텍스트 (16) 를 포함한다. 일반적으로 아키텍처 블록들에서 네스팅된 블록들은 디바이스 또는 프로세스 컴포넌트들의 배열 또는 소유를 정의하고, 블록들 사이의 연결들은 그들 블록들에서의 텍스트에 의해 정의되는 블록들 사이에 기능적 관계들을 정의한다.
도 6a 및 도 6b는 도식 블록들 또는 컨테이너들 (12) 을 정의하는 형상들과, 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 커넥터들 (14) 을 다양하게 가지는 조판 및 필기된 예시적인 거미 맵들 (60) 을 각각 도시한다. 게다가, 도 6b에서 컨테이너들 (12) 과 커넥터들은 연관된 텍스트 (16) 를 포함한다. 일반적으로 거미 맵들에서 블록들 및/또는 텍스트 사이의 연결들은 텍스트에 의해 정의된 중앙 엘리먼트 또는 테마로부터의 의존적 관계들 또는 상태들을 정의한다.
도 1 내지 도 6에 예시된 도식들은 단지 예들이고 각각의 도식 유형에 대해 묘사된 그것들과는 다른 또는 상이한 엘리먼트들, 또는 묘사된 엘리먼트들 자체의 상이한 유형들 또는 형태들이 도식들에 부가적으로 또는 대안적으로 존재할 수도 있다. 게다가, 이들 도식 유형들의 다른 정의들 뿐만 아니라 그 조합들이 가능하다. 도식들에서의 형상들의 기본 컴포넌트들 (컨테이너들이 있거나 또는 없는 연결들) 과 텍스트를 결합시키는 이들 무수한 가능한 변형들이 컴퓨팅 디바이스에 핸드 드로잉된 필기 콘텐츠로서 입력되는 이들 엘리먼트들의 정확한 인식에 대한 문제들을 야기할 수 있다. 도식들은, 예를 들어, 논의되고 있는 개념들, 문제들 또는 해법들을 캡처하기 위해 강의 또는 회의 중, 컴퓨팅 디바이스의 사용자가 도식을 생성하는 교육 및 비즈니스 설정들에서 특히 사용된다. 도식들의 다른 빈번한 사용은 프레젠테이션들 또는 참조 문서의 생성이다. 디바이스에서 국부적으로 또는 디바이스의 통신 링크를 통해 원격으로 중 어느 하나로, 터치 감응 표면 또는 상대 포지션 검출 시스템에 의해 모니터링되는 표면 상의 핸드 드로잉된 입력을 수용하고 해석하는 컴퓨팅 디바이스 상의 필기 도식 또는 스케치 애플리케이션을 실행시키는 사용자에 의해 입력이 성취될 수 있다.
기존에 이러한 필기 도식화 (diagramming) 애플리케이션들은 위에서 설명된 도식화의 복잡도를 핸들링하도록 그것들의 능력들이 제한되고, 통상적으로 사용자들이 사용자의 원래의 의도를 반영하지 않은 절충안들을 수용하거나 행동들을 채택하도록 강요한다. 그 결과 일부 기존의 필기 도식화 애플리케이션들은 사용자들이 형상들을 선택하며 드로잉하고 형상들에 관하여 텍스트를 삽입하기 위해 메뉴들을 내비게이션할 것을 강요한다. 이와 같이, 사용자들은 형상들과 커넥터들을 자연스럽게 또는 자유롭게 드로잉하는 것이 불가능하다. 일부 다른 기존의 필기 도식화 애플리케이션들은 사용자들이 상이한 스트로크들을 드로잉하는 순서에 의존하여 예상된 행동이 뒤따를 때 인식에 대한 해석을 안내한다. 예를 들어, 사용자는 두 개의 블록들/박스들을 그들 박스들 사이에 커넥터를 정의할 수 있기 전에 먼저 드로잉할 것이 필요할 수도 있거나, 또는 박스에 텍스트를 추가하기 전에 그 박스를 드로잉해야 할 수도 있다. 그러나 이는 사용자들에게는 어려운데, 애플리케이션이 자주 사용되지 않고 비-직관적이라서 도식들을 빠르게 캡처하는 능력이 지원되지 않는다면 그들이 다시 배우는 것이 필요할 수도 있는 요구되는 드로잉/기입 순서들을 학습하고 구현하는 것이 필요하여서이다. 예를 들어, 사용자가 태블릿과 같은 휴대용 컴퓨팅 디바이스로 이동 중에 프레젠테이션들을 준비하고 싶을 수도 있거나, 또는 사용자가 그들의 교사가 수업에서 그렸던 흐름도를 터치스크린을 갖는 랩톱과 같은 컴퓨팅 디바이스 상에 적어 두고 싶어할 수도 있고, 이러한 사용자들이 전용의, 다루기 힘든 소프트웨어의 전문가가 아니어도 혼합된 콘텐츠를 갖는 명확한 도식들을 그릴 수 있는 것이 필요하다.
필기 도식화 애플리케이션을 더 스마트하게 만드는 것은 사용자들을 지원하는데 도움이 된다. 다시 말하면, 애플리케이션은 상이한 형상들 사이, 이를테면 블록들과 커넥터들 사이, 그리고 형상들과 텍스트 사이를 구별함으로써, 도식들을 생성할 때 사용자들에게 더 많은 자유를 제공할 수도 있다. 예를 들어, 미국특허 제7,352,902호는 단어 그룹화, 기입/드로잉 분류 및 드로잉 그룹화를 실행하는 잉크 파서를 사용함으로써 입력 잉크에서 드로잉으로부터 쓰기를 구별하는 것을 설명한다. 단어 그룹화는 스트로크들을 단어들, 잉크들 및 블록들의 계층구조들로 그룹화함으로써 수행되고 있는 것으로 설명된다. 그러나, 그 특허에서 설명되는 바와 같이, 이러한 분류 동안 스트로크들의 단어들로의 이 그룹화는 비-텍스트 스트로크들을 포함하는 단어 그룹들로 이어지며, 이는, 예를 들어, 단어 그룹들이 텍스트 인식기에 전송될 때 잘못된 텍스트 인식을 초래한다. 단어 그룹화 후, 그 특허는 기입/드로잉 분류가 수행됨을 설명한다. 이 프로세스는 단어, 공간적 및 시간적 콘텍스트 특징들의 고려를 포함하는 것으로서 설명되지만; 스트로크들이 텍스트에 속하는지 또는 도면들에 속하는지에 대한 절대 결정들이 이루어짐을 의미하는 이들 특징들은 분류를 위한 퍼지 함수에 이 시점에 매핑되며, 이는 오분류로 이어질 수 있다. 분류 후, 그 특허는 공간적 관계들에 기초하여 드로잉 스트로크들을 독립적인 오브젝트들로 그룹화하기 위해 도면 그룹화가 차트 검출기에 의해 수행된다는 것을 설명한다. 그러나, 이 그룹화의 정확도는 분류 결과에 의해 영향을 받아서, 부정확한 오브젝트들이 형성될 수도 있다.
심지어 핸드 드로잉된 형상들 및 필기된 텍스트가 사용자들에게 제공되는 합리적인 창의적 자유로 잘 인식되는 기존의 애플리케이션들에서도, 통상적으로 엘리먼트들을 추가, 생략 또는 대체하기 위해 도식의 엘리먼트들을 편집하는 것, 도식을 관련 개념에 적응시키는 것, 도식의 유형을 변환하는 것 등과 같은 드로잉된 도식들을 변화시키는 능력이, 특정한 동작들만이 이용 가능한 경우로 제한되고 도식의 조판 버전에 대해서만, 특히, 예를 들어, 연결된 컨테이너들과 같은 인식된 관계들을 유지하면서 도식 엘리먼트들의 상대 포지션들의 조작들에 관하여 이용 가능지만, 필기된 입력, 이른바 디지털 잉크에 대해서는 이용가능하지 않으며, 그리고/또는 위에서 설명된 바와 같이, 학습될 제스처들 또는 메뉴들을 통해 이루어질 선택을 요구한다. 예를 들어, 미국특허 제8,014,607호는 특정한 편집 동작들이 디지털 잉크에 대해 직접적으로 수행되는 것을 허용하는 유추된 모드 프로토콜을 설명한다. 그러나, 설명된 동작들은 매우 제한된다. 게다가, 인식된 관계들을 유지하면서도 디지털 잉크에서의 도식 엘리먼트들의 상대 포지션을 조작하는 능력에 대한 해법이 제공되지 않는다.
미국특허 제7,394,935호는 리사이징 및 리포지셔닝 동작들에 관해 디지털 잉크에 대한 상대적 조작들을 설명한다. 그러나, 이들 동작들에서 디지털 잉크는 조작에 따라 단순히 스케일링되고, 이처럼 사용자에게는 디지털 잉크를 그것의 원래의 드로잉된 치수들로 되돌리기 위해 추가의 상호작용을 수행하는 것이 요구되며, 예컨대, 컨테이너를 그것의 연결된 컨테이너(들)로부터 멀어지게 이동시키는 것은 커넥터가 x 및 y 치수들 둘 다를 늘리게 하거나, 또는 커넥터가 리사이징되거나 또는 상이한 형태로 (예컨대, 직선형에서 굽은 형으로) 변경될 때 커넥터의 디지털 잉크에 가까운 백본 (수평 및 수직 선들) 을 재컴퓨팅함으로써 커넥터들이 '리플로우된'다. 이는 디지털 잉크의 재생을 요구하며, 이는 관련된 미국특허 제7,324,691호에서 설명된 바와 같은 높은 곡률 지점들 (커스퍼들) 에서의 세그먼트화를 통한 커넥터 잉크의 정규화를 통해 행해질 수도 있다. 따라서, 결과적인 조작된 디지털 잉크는 원래 드로잉된 잉크와 상당히 상이하여, 사용자들에 의한 개입을 요구할 수도 있다.
본 명세서의 아래에서 설명되는 본 개시물의 예들은 컴퓨팅 디바이스에의 필기 입력을 이용한 도식 (diagram) 생성에서의 사용을 위한 시스템들, 방법들 및 컴퓨터 프로그램 제품을 제공한다. 컴퓨터 프로그램 제품은 방법을 구현하기 위해 실행되도록 적응되는 컴퓨터 판독가능 프로그램 코드를 수록하고 있는 비-일시적 컴퓨터 판독가능 매체를 가진다.
컴퓨팅 디바이스는 입력 디바이스에 입력 표면의 형태로 접속된다. 사용자가 자신의 손가락 또는 스타일러스 또는 펜과 같은 기구 중 어느 하나를 사용하여 입력 표면에 압력을 가함으로써 또는 입력 표면 위에서 제스처를 행함으로써 입력을 제공할 수 있다. 본원의 시스템 및 방법은 입력 스트로크들을 모니터링한다.
컴퓨팅 디바이스는 프로세서 및, 그 프로세서의 제어 하에 필기 입력을 검출하고 인식하기 위한 적어도 하나의 애플리케이션을 가진다. 적어도 하나의 시스템 애플리케이션은 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크 (interactive digital ink) 로 복수의 입력 도식 엘리먼트들의 디스플레이를 하게 하며, 각각의 도식 엘리먼트의 클래스 및 유형에 따라서 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키고, 수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 하나 이상의 연관들에 따라서 도식 엘리먼트들의 재-디스플레이를 하게 하도록 구성된다.
개시된 시스템 및 방법의 다른 양태는 핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스의 식별을 제공한다. 스트로크들은 입력의 공간적 및 시간적 정보에 기초하여 그룹화될 수도 있고, 스트로크들은 스트로크들의 그룹들에 대한 엘리먼트 유형 확률 가설들을 구축 및 테스트함으로써 분류될 수도 있다. 식별된 유형들은 텍스트와 비-텍스트를 포함한다.
개시된 시스템 및 방법의 다른 양태는 분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 분류된 스트로크들을 필기 인식 시스템으로 파싱하는 것을 제공한다.
개시된 시스템 및 방법의 다른 양태는 인식된 도식 엘리먼트들과 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하는 것을 제공한다.
일부 구현예들에서, 본 개시물은 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 시스템을 제공한다. 컴퓨팅 디바이스는 프로세서 및, 그 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함한다. 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들의 디스플레이를 하게 하며, 각각의 도식 엘리먼트의 클래스 및 유형에 따라서 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키고, 수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 하나 이상의 연관들에 따라서 도식 엘리먼트들의 재-디스플레이를 하게 하도록 구성된다.
적어도 하나의 비-일시적 컴퓨터 판독가능 매체는 핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하도록 구성될 수도 있다.
스트로크들은 입력의 공간적 및 시간적 정보에 기초하여 그룹화될 수도 있다.
스트로크들은 스트로크들의 그룹들에 대한 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류될 수도 있다.
식별된 유형들은 텍스트와 비-텍스트를 포함할 수도 있다.
적어도 하나의 비-일시적 컴퓨터 판독가능 매체는 분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 분류된 스트로크들을 필기 인식 시스템으로 파싱하도록 구성될 수도 있다.
적어도 하나의 비-일시적 컴퓨터 판독가능 매체는 인식된 도식 엘리먼트들과 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하도록 구성될 수도 있다.
일부 구현예들에서, 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 방법이 제공된다. 컴퓨팅 디바이스는 프로세서 및, 그 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함한다. 그 방법은, 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들을 디스플레이하는 단계, 각각의 도식 엘리먼트의 클래스 및 유형에 따라서 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키는 단계, 및 수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 하나 이상의 연관들에 따라서 도식 엘리먼트들을 재디스플레이하는 단계를 포함한다.
그 방법은 핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하는 단계를 포함할 수도 있다.
스트로크들은 입력의 공간적 및 시간적 정보에 기초하여 그룹화될 수도 있다.
스트로크들은 스트로크들의 그룹들에 대한 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류될 수도 있다.
식별된 유형들은 텍스트와 비-텍스트를 포함할 수도 있다.
그 방법은 분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 분류된 스트로크들을 필기 인식 시스템으로 파싱하는 단계를 포함할 수도 있다.
그 방법은 인식된 도식 엘리먼트들과 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하는 단계를 포함할 수도 있다.
일부 구현예들에서, 컴퓨터 판독가능 프로그램 코드를 수록하고 있는 비일시적 컴퓨터 판독가능 매체가 제공된다. 상기 컴퓨터 판독가능 프로그램 코드는 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 방법을 구현하기 위해 실행되도록 적응된다. 컴퓨팅 디바이스는 프로세서 및, 그 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함한다. 그 방법은, 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들을 디스플레이하는 단계, 각각의 도식 엘리먼트의 클래스 및 유형에 따라서 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키는 단계, 및 수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 하나 이상의 연관들에 따라서 도식 엘리먼트들을 재디스플레이하는 단계를 포함한다.
그 방법은 핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하는 단계를 포함할 수도 있다.
스트로크들은 입력의 공간적 및 시간적 정보에 기초하여 그룹화될 수도 있다.
스트로크들은 스트로크들의 그룹들에 대한 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류될 수도 있다.
식별된 유형들은 텍스트와 비-텍스트를 포함할 수도 있다.
그 방법은 분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 분류된 스트로크들을 필기 인식 시스템으로 파싱하는 단계를 포함할 수도 있다.
그 방법은 인식된 도식 엘리먼트들과 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하는 단계를 포함할 수도 있다.
본원의 시스템 및 방법은 도면들과 함께 취해지는, 그 예들의 다음의 상세한 설명으로부터 더 충분히 이해될 것이다. 도면들에서 유사한 참조 번호들은 유사한 엘리먼트들을 묘사한다. 도면들 중:
도 1a 및 도 1b는 조판 및 필기된 예시적인 개념 맵들을 각각 도시하며;
도 2a 및 도 2b는 조판 및 필기된 예시적인 마인드 맵들을 각각 도시하며;
도 3a 및 도 3b는 조판 및 필기된 예시적인 마인드 플로 챠트들 또는 흐름도들을 각각 도시하며;
도 4a 및 도 4b는 조판 및 필기된 예시적인 조직 차트들 또는 조직도들을 각각 도시하며;
도 5a 및 도 5b는 조판 및 필기된 예시적인 블록/아키텍처 도면들을 각각 도시하며;
도 6a 및 도 6b는 조판 및 필기된 예시적인 거미 맵들을 각각 도시하며;
도 7은 본원의 시스템 및 방법의 일 예에 따라서 컴퓨팅 디바이스의 블록도를 도시하며;
도 8은 본원의 시스템 및 방법의 일 예에 따라서 필기 인식을 위한 시스템의 블록도를 도시하며;
도 9는 본원의 시스템 및 방법의 일 예에 따라서 도 8의 필기 인식 시스템의 세부사항을 예시하는 블록도를 도시하며;
도 10a는 예시적인 핸드 드로잉된 도식을 도시하며;
도 10b는 예시적인 비-텍스트 및 텍스트 모호성제거 시스템 및 방법의 흐름도이며;
도 11a 및 도 11b는 예시적인 필기 흐름도의 디지털 및 조판 잉크 렌더링을 각각 도시하며;
도 12는 도 11a의 예시적인 필기 흐름도의 초기 입력의 디지털 잉크 렌더링을 도시하며;
도 13a 내지 도 22a는 도 12의 입력에 후속하는 예시적인 필기 흐름도의 순차적 입력들의 디지털 잉크 렌더링을 도시하며;
도 13b 내지 도 22b는 도 12의 입력에 후속하는 예시적인 필기 흐름도의 순차적 입력들의 디지털 잉크 렌더링 및 이전의 입력들의 조판 잉크 렌더링을 도시하며;
도 23은 도 22b의 입력에 후속하는 예시적인 필기 흐름도의 이전의 입력들의 조판 잉크 렌더링을 도시하며;
도 24a 내지 도 66a는 도 22a의 입력에 후속하는 예시적인 필기 흐름도의 순차적 입력들의 디지털 잉크 렌더링을 도시하며;
도 24b 내지 도 66b는 도 23의 입력에 후속하는 예시적인 필기 흐름도의 순차적 입력들의 디지털 잉크 렌더링 및 이전의 입력들의 조판 잉크 렌더링을 도시하며;
도 67은 도 66b의 추가의 입력의 조판 잉크 렌더링을 도시하며;
도 68a 및 도 68b는 디지털 잉크 형상의 선택 및 선택 모드 디스플레이를 각각 도시하며;
도 69a 및 69b는 디지털 잉크 형상 내의 디지털 잉크 텍스트의 선택 및 선택 모드 디스플레이를 각각 도시하며;
도 70a 및 도 70b는 디지털 잉크 텍스트를 포함하는 디지털 잉크 형상의 선택 및 선택 모드 디스플레이를 각각 도시하며;
도 71a 및 도 71b는 디지털 잉크 형상 및 디지털 잉크 텍스트의 선택 및 선택 모드 디스플레이를 각각 도시하며;
도 72a 및 도 72b는 디지털 잉크 형상, 디지털 잉크 텍스트 및 디지털 잉크 낙서의 선택 및 선택 모드 디스플레이를 각각 도시하며;
도 73a는 커넥터에 의해 연결되는 박스들의 핸드 드로잉된 입력을 도시하며;
도 73b는 박스들의 각각에 대한 이동 동작들의 수행 후의 도 73a의 핸드 드로잉된 입력을 도시하며;
도 73c는 도 73a의 커넥터의 아암의 줌인된 도면이며;
도 73d는 도 73b의 커넥터의 아암의 줌인된 도면이며;
도 73e는 도 73d의 아암과 유사한 길이가 되도록 하는 도 73c의 아암의 스케일링을 도시하며;
도 74a 및 74b는 형상 엘리먼트에 대한 이동 동작 전 및 후의 예시적인 핸드 드로잉된 도식을 각각 도시하며;
도 75a 및 75b는 형상 엘리먼트에 대한 이동 동작 전 및 후의 예시적인 핸드 드로잉된 도식을 각각 도시하며;
도 76a 내지 도 76e는 커넥터 엘리먼트에 대한 일련의 이동 동작 전 및 후의 예시적인 핸드 드로잉된 도식을 각각 도시하며;
도 77a 및 77b는 형상 엘리먼트에 대한 이동 동작 전 및 후의 예시적인 핸드 드로잉된 도식을 각각 도시하며;
도 78a 및 도 78b는 예시적인 필기된 도식의 디지털 및 조판 잉크 렌더링을 각각 도시하며;
도 79는 컨테이너에 대해 너무 큰 텍스트를 갖는 예시적인 핸드 드로잉된 도식의 디지털 잉크 렌더링을 도시하며;
도 80은 텍스트를 포함하는 컨테이너의 자동 리사이징과 함께 도 79의 도식의 조판 잉크 렌더링을 도시하며;
도 81은 컨테이너에 포함될 텍스트의 자동 리플로우와 함께 도 79의 도식의 조판 잉크 렌더링을 도시하며;
도 82a는 디지털 잉크 텍스트를 포함하는 디지털 잉크 형상의 선택 모드 디스플레이를 도시하며;
도 82b는 도 82a의 선택된 디지털 잉크 형상의 리사이징 동작을 도시하며;
도 82c는 도 82b의 리사이징된 디지털 잉크 형상의 선택해제를 도시하며;
도 82d는 추가적인 디지털 잉크 텍스트를 포함하는 도 82c의 리사이징된 디지털 잉크 형상을 도시하며;
도 83a는 도 78a의 예시적인 핸드 드로잉된 도식의 선택 모드 디스플레이를 도시하며;
도 83b는 도 83a의 선택된 도식의 리사이징 동작을 도시하며;
도 83c는 도 83b의 리사이징된 도식의 선택해제를 도시하며;
도 84a 및 도 84b는 텍스트를 포함하는 컨테이너를 갖는 예시적인 필기된 도식의 디지털 및 조판 잉크 렌더링을 각각 도시하며;
도 84c 및 도 84d는 컨테이너에 추가된 텍스트를 갖는 도 84a 및 도 84b의 도식의 디지털 및 조판 잉크 렌더링을 각각 도시하며;
도 85a는 디지털 잉크 텍스트를 포함하는 디지털 잉크 셀의 선택 모드 디스플레이를 도시하며;
도 85b는 도 85a의 선택된 디지털 잉크 셀의 리사이징 동작을 도시하며;
도 86a는 두 개의 텍스트 블록들을 포함하는 컨테이너를 갖는 예시적인 핸드 드로잉된 도식의 디지털 잉크 렌더링을 도시하며;
도 86b는 제 2 텍스트 블록의 선택 모드 디스플레이와 함께 도 86a의 도식을 도시하며; 그리고
도 86c는 도 86a의 도식의 조판 잉크 렌더링을 도시한다.
다음의 상세한 설명에서, 수많은 특정 세부사항들이 관련 있는 교시들의 철저한 이해를 제공하기 위하여 예들에 의해 언급된다. 그러나, 본원의 교시들은 이들 세부사항들 없이 실용화될 수도 있다는 것이 본 기술분야의 통상의 기술자들에게 명백할 것이다. 다른 경우들에서, 널리 공지된 방법들, 절차들, 컴포넌트들, 및/또는 회로부는, 본 교시들의 양태들을 불필요하게 모호하게 하는 것을 피하기 위하여, 세부사항 없이, 비교적 고-레벨에서 설명되었다.
업, 다운, 위, 아래, 최저, 최고, 수평, 수직 등과 같은 방향성 특징들에 대한 언급 및 그것들의 논의는, 인식될 입력이 이루어지는 입력 표면에 적용되는 것으로서의 데카르트 좌표 시스템에 관하여 이루어진다. 게다가, 좌측 및 우측과 같은 용어들은 도면들을 볼 때의 독자의 기준 프레임에 관하여 이루어진다. 더욱이, 본 명세서에서의 '텍스트'라는 용어의 사용은 임의의 기입된 언어표현에서의 모든 영숫자 문자들과, 그것들의 문자열들과, 기입된 텍스트에서 사용되는 아주 흔한 비-영숫자 문자들, 예컨대, 심볼들을 포괄하는 것으로서 이해된다. 더 나아가, 본 명세서에서의 '비-텍스트'라는 용어는 콘텍스트들에서 사용되는 자유로운 형식의 필기되거나 또는 핸드 드로잉된 콘텐츠와 렌더링된 텍스트 및 이미지 데이터를, 뿐만 아니라 비-영숫자 문자들과, 그것들의 문자열들, 그리고 영숫자 문자들과, 그것들의 문자열들을 포괄하는 것으로서 이해된다. 더욱이, 이들 도면들에서 도시된 예들은 좌측에서 우측으로 기입된 언어표현 콘텍스트로 있고, 그러므로 포지션들에 대한 임의의 기준이 상이한 방향성 포맷들을 갖는 기입된 언어표현들에 적응될 수 있다.
본 명세서에서 설명되는 다양한 기술들은, 휴대용 및 비-휴대용 컴퓨팅 디바이스들 상에 핸드 드로잉된 및 필기된 콘텐츠의 입력된 스타일을 유지하면서도 그 콘텐츠의 충실한 조판 또는 미화된 버전으로의 변환을 허용하는 방식의 캡처, 프로세싱 및 관리에 일반적으로 관련한다. 본 명세서에서 설명되는 시스템들 및 방법들은 컴퓨팅 디바이스의 또는 컴퓨팅 디바이스에 접속된 터치 감응 스크린과 같은 입력 표면을 통해 또는 컴퓨팅 디바이스에 접속된 디지털 펜 또는 마우스와 같은 입력 디바이스를 통해 또는 포지션 검출 시스템에 의해 모니터링되는 물리적 또는 가상 표면을 통해 컴퓨팅 디바이스에 입력된 사용자의 자연스러운 기입 또는 드로잉 스타일들의 인식을 이용할 수도 있다. 다양한 예들이 이른바 온라인 인식 기법들을 사용한 필기 입력의 인식에 관하여 설명되지만, 인식을 위한 입력의 다른 형태들, 이를테면 디지털 잉크가 아니라 이미지들이 인식되는 오프라인 인식에 응용이 가능하다는 것이 이해된다. 핸드-드로잉과 필기라는 용어들은 디지털 또는 디지털적으로 접속된 매체 상에 직접적으로 또는 입력 도구, 이를테면 핸드헬드 스타일러스를 통해 중 어느 하나로 사용자들에 의한 그들의 손들의 사용을 통한 디지털 콘텐츠의 생성을 정의하기 위해 본 명세서에서 교환적으로 사용된다. "핸드"라는 용어는 입력 기법들의 간결한 설명을 제공하기 위해 본 명세서에서 사용되지만, 유사한 입력을 위한 사용자의 신체의 다른 부분들, 이를테면 발, 입 및 눈의 사용은 이 정의에 포함된다.
도 7은 예시적인 컴퓨팅 디바이스 (100) 의 블록도를 도시한다. 컴퓨팅 디바이스는 컴퓨터 데스크톱, 랩톱 컴퓨터, 태블릿 컴퓨터, e-북 리더, 모바일 폰, 스마트폰, 착용가능 컴퓨터, 디지털 손목시계, 상호작용형 화이트보드, 글로벌 포지셔닝 시스템 (GPS) 유닛, 회사 정보 단말기 (EDA), 개인 정보 단말기 (PDA), 게임 콘솔 등일 수도 있다. 컴퓨팅 디바이스 (100) 는 적어도 하나의 프로세싱 엘리먼트의 컴포넌트들, 일부 형태의 메모리 그리고 입력 및/또는 출력 (I/O) 디바이스들을 포함한다. 컴포넌트들은 입력들 및 출력들, 이를테면 커넥터들, 라인들, 버스들, 케이블들, 버퍼들, 전자기적 링크들, 네트워크들, 모뎀들, 트랜스듀서들, IR 포트들, 안테나들, 또는 본 기술분야의 통상의 기술자들에게 공지된 다른 것들을 통해 서로 통신한다.
컴퓨팅 디바이스 (100) 는 이미지들, 텍스트, 및 비디오와 같은 컴퓨팅 디바이스로부터의 데이터를 출력하기 위한 적어도 하나의 디스플레이 (102) 를 가진다. 디스플레이 (102) 는 본 기술분야의 통상의 기술자들에게 알려진 바와 같은 터치 감응식이거나 또는 터치 감응식이 아닌 LCD, 플라즈마, LED, iOLED, CRT, 또는 임의의 다른 적절한 기술을 사용할 수도 있다. 디스플레이 (102) 는 적어도 하나의 입력 표면 (104) 과 같은 장소에 위치되거나 또는 그것에 원격으로 접속될 수도 있다. 입력 표면 (104) 은 저항성, 표면 음파, 용량성, 적외선 그리드, 적외선 아크릴 투영, 광학적 이미징, 분산 신호 기술, 음향 펄스 인식과 같은 기술, 또는 터치 감응 또는 근접 감응 표면의 형태로 사용자 입력을 수신하기 위한 본 기술분야의 통상의 기술자들에게 공지된 바와 같은 임의의 다른 적절한 기술을 채용할 수도 있다. 입력 표면 (104) 은 자신의 경계들을 분명히 식별하는 영구적 또는 비디오 생성된 경계선에 의해 경계가 정해질 수도 있다. 입력 표면 (104) 은 포지션 검출 시스템에 의해 모니터링되는 비-터치 감응 표면일 수도 있다.
입력 표면 (104) 외에도, 컴퓨팅 디바이스 (100) 는 국부 인터페이스를 통해 통신적으로 커플링되는 하나 이상의 추가적인 I/O 디바이스들 (또는 주변기기들) 을 포함할 수도 있다. 추가적인 I/O 디바이스들은 키보드, 마우스, 스캐너, 마이크로폰, 터치패드, 바 코드 판독기들, 레이저 판독기들, 라디오-주파수 디바이스 판독기들, 또는 본 기술분야의 통상의 기술자들에게 공지된 임의의 다른 적절한 기술과 같은 입력 디바이스들을 포함할 수도 있다. 게다가, I/O 디바이스들은 프린터, 바 코드 프린터들, 또는 본 기술분야의 통상의 기술자들에게 공지된 임의의 다른 적절한 기술과 같은 출력 디바이스들을 포함할 수도 있다. 더욱이, I/O 디바이스들은 변조기/복조기 (모뎀; 다른 디바이스, 시스템, 또는 네트워크에 액세스하기 위함), 무선 주파수 (RF) 등의 트랜시버, 전화 인터페이스, 브리지, 라우터, 또는 본 기술분야의 통상의 기술자들에게 공지된 임의의 다른 적절한 기술과 같이 입력들 및 출력들 양쪽 모두를 통신하는 통신 디바이스들을 포함할 수도 있다. 국부 인터페이스는 통신들을 가능하게 하는 추가적인 엘리먼트들, 이를테면 제어기들, 버퍼들 (캐시들), 드라이버들, 리피터들, 및 수신기들을 가질 수도 있는데, 그것들은 단순화를 위해 생략되지만 본 기술분야의 숙련된 자들에게 알려져 있다. 게다가, 국부 인터페이스는 다른 컴퓨터 컴포넌트들 중에서의 적절한 통신들을 가능하게 하는 어드레스, 제어, 및/또는 데이터 접속들을 포함할 수도 있다.
컴퓨팅 디바이스 (100) 는 소프트웨어, 특히 메모리 (108) 에 저장된 소프트웨어를 실행하기 위한 하드웨어 디바이스인 프로세서 (106) 를 또한 포함한다. 그 프로세서는 임의의 고객 맞춤형 또는 상업적으로 입수 가능한 범용 프로세서, 중앙 프로세싱 유닛 (CPU), 반도체 기반 마이크로프로세서 (마이크로칩 또는 칩셋의 형태임), 마이크로제어기, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 개별 게이트 또는 트랜지스터 로직, 개별 하드웨어 컴포넌트들, 상태 머신, 또는 본 기술분야의 통상의 기술자들에게 알려진 소프트웨어 명령들을 실행하기 위해 설계된 그것들의 임의의 조합일 수도 있다. 적합한 상업적으로 입수 가능한 마이크로프로세서들의 예들은 다음과 같다: 휴렛팩커드 컴퍼니로부터의 PA-RISC 시리즈 마이크로프로세서, 인텔 코오퍼레이션으로부터의 80x86 또는 펜티엄 시리즈 마이크로프로세서, IBM으로부터의 PowerPC 마이크로프로세서, 선 마이크로시스템즈 아이엔씨.로부터의 Sparc 마이크로프로세서, 모토롤라 코오퍼레이션으로부터의 68xxx 시리즈 마이크로프로세서, DSP 마이크로프로세서들, 또는 ARM 마이크로프로세서들.
메모리 (108) 는 휘발성 메모리 엘리먼트들 (예컨대, 랜덤 액세스 메모리 (RAM, 이를테면 DRAM, SRAM, 또는 SDRAM)) 과 비휘발성 메모리 엘리먼트들 (예컨대, ROM, EPROM, 플래시 PROM, EEPROM, 하드 드라이브, 자기 또는 광 테이프, 메모리 레지스터들, CD-ROM, WORM, DVD, RAID (redundant array of inexpensive disks), 다른 직접 액세스 저장 디바이스 (direct access storage device, DASD)) 중 임의의 하나 또는 조합을 포함할 수도 있다. 더구나, 메모리 (108) 는 전기, 자기, 광, 및/또는 다른 유형들의 저장 매체들을 포함할 수도 있다. 메모리 (108) 는 다양한 컴포넌트들이 서로로부터 원격으로 위치해 있지만 프로세서 (106) 에 의해 또한 액세스될 수 있는 분산형 아키텍처를 가질 수 있다. 게다가, 메모리 (108) 는 컴퓨팅 디바이스 (100) 에 의해 원격으로 액세스 가능한 디바이스로부터 원격으로, 이를테면 서버 또는 클라우드 기반 시스템에 있을 수도 있다. 메모리 (108) 는 프로세서 (106) 에 커플링되며, 그래서 프로세서 (106) 는 정보를 메모리 (108) 로부터 판독하고 그 메모리에 정보를 기입할 수 있다. 대체예에서, 메모리 (108) 는 프로세서 (106) 에 통합될 수도 있다. 다른 예에서, 프로세서 (106) 와 메모리 (108) 는 둘 다가 단일 ASIC 또는 다른 집적 회로에 상주할 수도 있다.
메모리 (108) 에서의 소프트웨어는 운영 체제 (110) 와 애플리케이션 (112) 을 포함한다. 그 소프트웨어는 옵션적으로 하나 이상의 별개의 컴퓨터 프로그램들을 각각 포함할 수도 있는 필기 인식 (handwriting recognition, HWR) 시스템 (114) 을 추가로 포함한다. 이것들의 각각은 논리적 기능들을 구현하기 위한 실행가능 명령들의 순서화된 리스팅을 가진다. 운영 체제 (110) 는 애플리케이션 (112) (및 HWR 시스템 (114)) 의 실행을 제어한다. 운영 체제 (110) 는 임의의 사설 운영 체제 또는 상업적으로 입수 가능한 운영 체제, 이를테면 WEBOS, WINDOWS®, MAC 및 IPHONE OS®, LINUX, 그리고 ANDROID일 수도 있다. 다른 운영 체제들이 또한 이용될 수도 있다는 것이 이해된다.
애플리케이션 (112) 은 사용자에 의한 핸드 드로잉된 형상들 및 필기된 텍스트 입력의 검출, 관리 및 처리에 관련된 하나 이상의 프로세싱 엘리먼트들 (나중에 상세히 논의됨) 을 포함한다. 소프트웨어는 필기 인식, 상이한 기능들, 또는 양쪽 모두에 관련된 하나 이상의 다른 애플리케이션들을 또한 포함할 수도 있다. 다른 애플리케이션들의 일부 예들은 텍스트 편집기, 전화기 다이얼러, 연락처 디렉토리, 인스턴트 메시징 기능 (facility), 컴퓨터 지원 설계 (CAD) 프로그램, 이메일 프로그램, 워드 프로세싱 프로그램, 웹 브라우저, 및 카메라를 포함한다. 애플리케이션 (112) 과, 다른 애플리케이션들은, 컴퓨팅 디바이스 (100) 에 제조 시 제공되는 프로그램(들)을 포함하고 제조 후의 컴퓨팅 디바이스 (100) 에 업로드되거나 또는 다운로드되는 프로그램들을 추가로 포함할 수도 있다.
본원의 시스템 및 방법은 필기된 텍스트와 핸드 드로잉된 형상들, 예컨대, 비-텍스트를 포함하는 디바이스 (100) 에의 필기된 입력을 인식하기 위하여 HWR 시스템 (114) 을 이용한다. 지원 및 준수 능력들을 갖는 HWR 시스템 (114) 은, 소스 프로그램, 실행가능 프로그램 (오브젝트 코드), 스크립트, 애플리케이션, 또는 수행될 명령들의 세트를 갖는 임의의 다른 엔티티일 수도 있다. 소스 프로그램인 프로그램이 컴파일러, 어셈블러, 인터프리터 등을 통해 해석될 것이 필요할 때, 그 프로그램은 운영 체제에 관련하여 적절히 동작하기 위해서 메모리 내에 포함되거나 또는 포함되지 않을 수도 있다. 더욱이, 지원 및 준수 능력들을 갖는 필기 인식 시스템은 (a) 데이터 및 메소드들의 클래스들을 갖는 객체 지향 프로그래밍 언어; (b) 비제한적인 예를 들어 C, C++, 파스칼, 베이직, 포트란, 코볼, 펄, 자바, 오브젝트 C, 스위프트, 및 에이다 (Ada) 인 루틴들, 서브루틴들, 및/또는 함수들을 갖는 절차 프로그래밍 언어; 또는 (c) 비제한적인 예를 들어 Hope, Rex, Common Lisp, Scheme, Clojure, Racket, Erlang, OCaml, Haskell, Prolog, 및 F#인 함수형 프로그래밍 언어들로서 작성될 수 있다. 대안적으로, HWR 시스템 (114) 은 디바이스로부터 원격인 필기 인식 시스템과의 통신을 위한 방법 또는 시스템, 이를테면 서버 또는 클라우드 기반 시스템일 수도 있지만, 컴퓨팅 디바이스 (100) 의 앞에서 언급된 통신 I/O 디바이스들을 사용하여 통신 링크들을 통해 컴퓨팅 디바이스 (100) 에 의해 원격으로 액세스 가능하다. 게다가, 애플리케이션 (112) 과 HWR 시스템 (114) 은 메모리 (108) 에 프로세싱 및 저장되는 정보에, 예를 들어, 각각의 시스템에 의해, 함께 액세스하도록 동작할 수도 있거나 또는 단일 애플리케이션으로서 함께 결합될 수도 있다.
입력 표면 (104) 상에 또는 그 입력 표면을 통해 입력된 스트로크들은 프로세서 (106) 에 의해 디지털 잉크로서 프로세싱된다. 사용자가 손가락 또는 입력 표면과 함께 사용하기에 적합한 펜 또는 스타일러스와 같은 일부 기구로 스트로크를 입력할 수도 있다. 사용자는 입력 표면 (104) 의 부근에서의 모션들을 감지하는 기술이 사용되고 있다면 입력 표면 (104) 위에서 제스처를 함으로써, 또는 컴퓨팅 디바이스 (100) 의 주변 디바이스, 이를테면 마우스 또는 조이스틱으로 스트로크를 또한 입력할 수도 있다. 스트로크는 적어도 스트로크 개시 로케이션, 스트로크 종료 로케이션, 그리고 스트로크 개시 및 종료 로케이션들을 연결하는 경로에 의해 특징화된다. 상이한 사용자들이 동일한 대상, 예컨대, 글자, 형상, 심볼을 약간의 변화들과 함께 자연스럽게 기입할 수도 있기 때문에, HWR 시스템은 각각의 대상이 올바른 또는 의도된 대상으로서 인식되고 있는 동안 입력될 수도 있는 다양한 방도들을 수용한다.
도 8은 HWR 시스템 (114) 의 일 예의, 그것의 로컬 (즉, 디바이스 (100) 상에 로딩됨) 또는 원격 (즉, 디바이스 (100) 에 의해 원격으로 액세스가능) 형태들 중 어느 하나의 개략적 그림이다. HWR 시스템 (114) 은 프리프로세싱 (116), 인식 (118) 및 출력 (120) 과 같은 스테이지들을 포함한다. 프리프로세싱 스테이지 (116) 는 인식 스테이지 (118) 동안 더 높은 정확도를 성취하고 프로세싱 시간을 감소시키기 위해 디지털 잉크를 프로세싱한다. 이 프리프로세싱은 입력을 평활화하기 위해 사이즈 정규화 및/또는 B-스플라인 근사와 같은 방법들을 적용함으로써 스트로크 개시 및 종료 로케이션들을 연결하는 경로의 정규화를 포함할 수도 있다. 프리프로세싱된 스트로크들은 그 다음에 스트로크들을 프로세싱하여 형성된 대상들을 인식하는 인식 스테이지 (118) 에 전달된다. 인식된 오브젝트들은 그 다음에 필기된 엘리먼트들/문자들 및 핸드 드로잉된 형상들의 디지털 잉크 또는 조판 잉크 버전들로서 메모리 (108) 와 디스플레이 (102) 에 출력된다 (120).
인식 스테이지 (118) 는 상이한 프로세싱 엘리먼트들 또는 엑스퍼트들을 포함할 수도 있다. 도 9는 인식 스테이지 (118) 의 구체적인 세부사항을 도시하는 도 8의 예의 개략적 그림이다. 동적 프로그래밍을 통해 협력하여 출력 (120) 을 생성하는 세 개의 엑스퍼트 (expert) 들인 세그먼트화 엑스퍼트 (122), 인식 엑스퍼트 (124), 및 언어 엑스퍼트 (126) 가 예시된다.
세그먼트화 엑스퍼트 (122) 는 표현들, 예컨대, 단어들, 수학식들, 또는 형상들의 그룹들을 형성하기 위하여, 입력 스트로크들을 개개의 엘리먼트 가설들 (hypotheses), 예컨대, 영숫자 문자들 및 수학적 연산자들, 텍스트 문자들, 개별 형상들, 또는 서브 표현으로 세그먼트화하는 상이한 방도들을 정의한다. 예를 들어, 세그먼트화 엑스퍼트 (122) 는 각각의 노드가 적어도 하나의 엘리먼트 가설에 대응하는 그리고 엘리먼트들 사이의 인접 제약조건들이 노드 접속들에 의해 핸들링되는 세그먼트화 그래프를 획득하기 위해 원래의 입력의 연속적인 스트로크들을 그룹화함으로써 엘리먼트 가설들을 형성할 수도 있다. 대안적으로, 세그먼트화 엑스퍼트 (122) 는 상이한 입력 유형들, 이를테면 텍스트, 도면들, 표들, 차트들, 수식들, 및 음악 기보 (music notation) 를 위해 별도의 엑스퍼트들을 채용할 수도 있다.
인식 엑스퍼트 (124) 는 분류기 (128) 에 의해 추출된 특징들의 분류를 제공하고 세그먼트화 그래프의 각각의 노드에 대해 확률들 또는 인식 점수들과 함께 엘리먼트 후보들의 리스트를 출력한다. 이 인식 태스크를 해결하는데 사용될 수 있는 많은 유형들의 분류기들, 예컨대, 지원 벡터 머신들, 은닉 마르코프 모델들, 또는 다층 퍼셉트론즈 (Perceptrons), 디프 (Deep), 콘볼루션 또는 순환 신경망들과 같은 신경망들이 존재한다. 그 선택은 태스크에 대해 요망되는 복잡도, 정확도, 및 속력에 의존한다.
언어 엑스퍼트 (126) 는 언어 모델들 (예컨대, 문법 또는 시맨틱스) 을 사용하여 세그먼트화 그래프에서의 상이한 경로들에 대한 언어적 의미를 생성한다. 엑스퍼트 (126) 는 언어적 정보 (130) 에 따라 다른 엑스퍼트들에 의해 제안된 후보들을 체크한다. 언어 정보 (130) 는 어휘부 (lexicon)(들), 정규 표현들 등을 포함할 수 있다. 언어 엑스퍼트 (126) 는 최고의 인식 경로를 발견하는 것을 겨냥한다. 하나의 예에서, 언어 엑스퍼트 (126) 는 언어적 정보 (130) 의 콘텐츠를 표현하는 최종 상태 자동화 (final state automaton) (결정론자 (determinist) FSA) 와 같은 언어 모델을 조사함으로써 이를 행한다. 어휘부 제약조건에 더하여, 언어 엑스퍼트 (126) 는 주어진 엘리먼트들의 시퀀스가 특정된 언어에서 얼마나 빈번하게 나타나는지에 대한 통계 정보 모델링을 사용할 수도 있거나 또는 세그먼트화 그래프의 주어진 경로의 해석의 언어적 공산을 평가하기 위해 특정 사용자에 의해 사용된다.
본원의 시스템 및 방법에 의해 사용되는 애플리케이션 (112) 은 사용자들, 이를테면 학생들, 학교 및 작업 전문가들이, 필기된 도식들을 생성하고, 생성된 도식의 유형, 예컨대, 흐름도들, 조직표들, 개념 맵들, 거미 맵들, 블록/아키텍처 도식들, 마인드 맵들, 블록도들, 벤 다이어그램들 및 피라미드들과는 독립적으로 HWR 시스템 (114) 을 사용하여 충실히 인식되는 그들 도식들을 가지는 것을 허용한다. 이 리스트는 완전하지 않고 다른 유형들, 또는 비-유형들의 도식들이 가능하다. 예를 들어, 도 1b, 도 2b, 도 3b, 도 4b, 도 5b 및 도 6b에 예시된 핸드 드로잉된 도식들의 상이한 엘리먼트들은 도식 유형에 관계없이 그것들 사이의 임의의 공간적 및 맥락 관계들로 개별적으로 인식된다. 앞서 논의된 바와 같이, 이들 도식 엘리먼트들은 형상 및 텍스트 엘리먼트들을 포함한다. 형상 또는 드로잉 엘리먼트들이, 그래픽 또는 기하학적 형성들을 선형 또는 비선형 구성들로 정의하는 그리고 컨테이너들, 커넥터들 및 자유형 드로잉들을 포함하는 것들이다. 텍스트 엘리먼트들은, 텍스트 문자들을 포함하는 그리고 텍스트 블록들 및 형상 엘리먼트들을 위한 텍스트 블록들 및 라벨들을 포함하는 것들이다. 텍스트 블록들 및 라벨들 양쪽 모두는 하나 이상의 수직 선들로 그리고/또는 번호부여된/글머리기호 부여된 (bulleted) 리스트들로서 제공되는 하나 이상의 문자들, 단어들, 문장들 또는 단락들의 텍스트를 포함할 수도 있다. 텍스트 블록들은 컨테이너들에 의해 포함될 수도 있거나 (내부 텍스트 블록들) 또는 컨테이너들 외부에 제공될 수도 있다 (외부 텍스트 블록들). 외부 텍스트 블록들은 컨테이너들 또는 도식의 다른 엘리먼트들과 관련이 없을 수도 있거나 또는 특정한 다른 도식 엘리먼트들과 직접적으로 관련이 있을 수도 있다.
게다가, 본원의 시스템 및 방법에 의해 제공되는 애플리케이션 (112) 은 적절한 인식이 이루어지기 위한 드로잉의 임의의 미리 결정된 또는 요구된 순서 없이 사용자들이 이러한 형상들 및 텍스트를 핸드 드로잉하는 것을 허용한다. 본원의 시스템 및 방법의 필기 인식은 사용자들이, 디지털 도구들의 능력으로부터 이익을 얻으면서도 종이에 하는 것처럼, 마음 속에 있는 것을 (기술에 의해 느려지는 일 업이 자유롭게) 드로잉하는 것을 허용한다. 예시적인 사용들은 다음을 포함한다:
Figure pct00001
생성: 형상들 및 텍스트의 하이-레벨 식별과 그것들 사이의 구별은, 미리 배정된 도구들을 선택 또는 사용할 또는 모드들 사이에서 스위칭할 또는 특정 영역로 줌할 필요 없이, 사용자들에 의해 형상들이 스케치되고 텍스트가 기입되는 것을 허용하며,
Figure pct00002
편집: 형상 특징들 및 지점들의 식별은 형상들이 이동되는 것과 새로운 아이디어들을 위한 공간의 생성, 연결들 또는 형상 유형의 변경, 및 편집 제스처들의 핸들링을 위해 조작되는 것을 가능하게 하고, 텍스트 특징들 및 지점들의 식별은 편집 제스처들의 핸들링과 텍스트 레이아웃의 정의를 가능하게 하며,
Figure pct00003
검색: 사용자들은 문서들을 통해 검색하기 위해 그들의 도식들에 포함된 정보를 활용할 수 있으며,
Figure pct00004
조판: 도식들을 생성할 때 사용자들에게는 즉각적인 인식 피드백을 위한 옵션들이 제공되며,
Figure pct00005
들여오기 및 내보내기: 형상 특징들 및 지점들의 그리고 텍스트의 식별은, 프로세싱 및 프레젠테이션 도구들로부터의 오브젝트들의 들여오기와, 그것들로의 생성된 문서들의 내보내기에 적합한 데이터 모델들의 사용을 가능하게 한다.
본원의 시스템 및 방법의 이들 및 다른 특징들은 나중에 상세히 설명된다.
핸드 드로잉된 도식 엘리먼트들의 정확한 콘텐츠 인식은 핸드 드로잉된 형상들 및 필기된 텍스트의 정확하고 효율적인 구별을 통해 애플리케이션 (112) 에 의해 가능하게 된다. 게다가, 형상들에서의 컬러-채움과 같은 특징들의 빠르고 정확한 인식 및 준비는, 식별된 형상 유형들 (예컨대, 직사각형, 원 등) 에 대한 정보를 유지하는 애플리케이션 (112) 에 의해, 필기 인식 프로세스 동안 사용되는 형상들을 이루는 스트로크들의 세그먼트화의 정보만으로라기보다는 HWR 시스템 (114) 에 의해 인식된 것으로서 제공된다 (예를 들어, 직사각형이 네 개의 선들로 분해된 것으로서 애플리케이션 (112) 에 의해 저장되지 않는다).
게다가, 핸드 드로잉된 도식들의 충실한 렌더링이 애플리케이션 (112) 에 의해 제공된다. 이는, 디지털 잉크가 (예를 들어, 메모리 (108) 에) 유지되며, 인식된 형상들이 정규화되지 않음으로써, 핸드 드로잉된 형상들의 사용자 정의된 사이즈, 양태 및/또는 형태를 유지하고, 형상들 및 텍스트는 도식의 다른 엘리먼트들에 상관없이 식별될 수 있거나, 또는 도식의 다른 엘리먼트들에 기초하여 재식별 또는 분류될 수 있기 때문이다. 다시 말하면, 애플리케이션 (112) 은, 폐쇄 형상들 또는 다각형들 (예컨대, 원들, 타원들, 정사각형들, 직사각형들 및 마름모꼴) 로서, 그리고 개방 형상들 (예컨대, 다각형들의 드로잉에서 결합될 수도 있는 선들) 로서 단독으로 (예컨대, 연관된 커넥터들 또는 텍스트 없이) 핸드 드로잉된 형상들을 식별한다. 애플리케이션 (112) 은 (예컨대, 아웃라인들 또는 컨테이너를 생성하는) 하나 이상의 현존 비-텍스트 및/또는 텍스트 엘리먼트들 주위에 핸드 드로잉되어, 컨테이너들을 생성하고, 다른 비-텍스트 및 텍스트 엘리먼트들 사이에 커넥터들을 생성하는 형상들을 추가로 식별한다. 다른 형상들 (다른 컨테이너들을 포함함) 또는 텍스트를 (예컨대, 엘리먼트들의 자동 그룹화를 채용함으로써) 포함하는 컨테이너들이 또한 식별된다. 애플리케이션 (112) 은 단독으로 (예컨대, 아웃라인 또는 컨테이너 없이), 현존 형상들 내에 (예컨대, 컨테이너 내에), 그리고 다른 엘리먼트들 근처에 필기되는 텍스트를 추가로 식별한다. 단일 줄의 텍스트 (하나 또는 여러 단어들) 또는 다수의 줄들의 텍스트 (캐리지 리턴, 번호 부여된 리스트들, 글머리기호 점들 (bullets points) 등이 있거나 또는 없음) 을 포함하는 텍스트 엘리먼트들이 또한 식별된다. 애플리케이션 (112) 은 텍스트가 사용자로부터의 명시적 액션을 요구하는 일 없이 형상들에서 직접적으로 사용되는 것 또는 전용 입력 방법을 트리거하기 위해 특정 도구를 사용하는 것을 또한 허용한다. 텍스트는 비-필기 기법들을 사용하여, 이를테면 컴퓨팅 디바이스에 접속된 키보드로 또한 입력될 수 있다.
편집에서, 덮어쓰기 (overwrite), 소거 (erasure) 및 레이아웃 제어와 같은 필기 동작들이 디지털 및 조판 잉크 둘 다에 수행될 수 있다. 예를 들어, 덮어쓰기는 하나의 유형 또는 형태로부터 다른 유형 또는 형태로 형상을 변경하는 것 (예컨대, 직사각형 위에 타원을 핸드 드로잉함으로써 직사각형을 타원형으로 스위칭하는 것), 커넥터에 장식을 추가하는 것, 및 텍스트 주위에 형상을 생성하는 것을 포함한다. 소거는 형상들 및 텍스트에 대한 스크래치 아웃 (scratch-out) 또는 스트라이크 아웃 (strike-out) 제스처들과 같은 공지된 필기 제스처들을 사용하여 수행될 수 있다. 레이아웃 제어는 형상들을 이동시키고 리사이징하며, 형상들 및 텍스트를 서로 정렬하고 배분하도록 수행될 수 있다. 이들 동작들 중 적어도 일부 동작들, 뿐만 아니라 다른 동작들의 검출은, 본원의 시스템 및 방법에 의해 사용되는 모호성제거 프로세스에 의해 향상된다. 모호성제거 프로세스는 지금 설명된다.
본원의 시스템 및 방법은 형상들 및 텍스트의 상이한 필기 오브젝트들의 입력을 자동으로 검출하고 구별하여서, 그 입력들은 HWR 시스템 (114) 에 의해 적합한 인식 기법들로 프로세싱되며, 예컨대, 검출된 형상들의 스트로크들은 형상 언어 모델을 사용하여 프로세싱되고 검출된 텍스트의 스트로크들은 텍스트 언어 모델을 사용하여 프로세싱된다. 그러나 많은 필기된 형상들 및 텍스트 문자들이 공통 특징들 (예컨대, 원 및 글자 "o", 화살촉 및 글자 "v") 을 공유할 수 있으므로 사용자들에게는 애플리케이션 (112) 의 사용자 인터페이스 (UI) 를 사용하여 잘못된 구별 결정들을 정정하는 능력이 제공된다.
모호성제거 프로세스는 텍스트 및 비-텍스트 (즉, 형상들) 의 혼합된 콘텐츠를 포함하는 필기된 입력이 자동으로 (예컨대, 즉석에서) 또는 요구에 따라 중 어느 하나로 미화된 디지털 잉크 및 조판 잉크로 인식되고 변환되는 것을 허용한다. 디지털 잉크는 필기된 입력을 디지털 이미지 포맷으로 렌더링함으로써 형성된다. 미화된 (디지털) 잉크는 유사한 스타일링 또는 룩 앤드 필 (look-and-feel) 을 유지하면서도 원래의 필기보다 더욱 규칙적이고 정규화된 것으로 보이도록 렌더링 디지털 잉크에 의해 형성된다. 조판 잉크는 디지털 잉크를 조판 또는 폰트화된 (fontified) 이미지 포맷으로 변환함으로써 형성된다. 미화된 조판 잉크는 입력으로부터의 위치적 및 스타일링 변경들을 갖는 렌더링 조판 잉크에 의해 형성된다. HWR 시스템 (114) 의 프리프로세싱 스테이지 (116) 는 모호성제거 프로세스를 수행하도록 구성된다. 프리프로세서 (116) 는 비-텍스트 (즉, 형상), 텍스트 그리고 형상 및 텍스트의 혼합인 상이한 클래스들 또는 범주들로 디지털 잉크의 엘리먼트들을 분류함으로써 이를 행한다. 분류된 디지털 잉크는 그 다음에 분류에 의존한 적합한 인식 프로세싱을 위해 인식기 (118) 로 파싱된다.
예를 들어, 텍스트로서 분류된 디지털 잉크를 프로세싱할 때, 인식기 (118) 는 세그먼트화 그래프들을 결정하기 위해 텍스트의 개별 스트로크들을 세그먼트화는 세그먼트화 엑스퍼트 (122), 분류기 (128) 를 사용하여 그래프 노드들에 확률들을 배정하는 인식 엑스퍼트 (124), 및, 예를 들어, 언어 정보 (130) 의 텍스트 기반 어휘부를 사용하여 그래프들을 통한 최상의 경로를 찾는 언어 엑스퍼트 (126) 를 채용한다. 한편, 비-텍스트로서 분류된 디지털 잉크를 프로세싱할 때, 인식기 (118) 는 형상의 스트로크들을 세그먼트화하는 세그먼트화 엑스퍼트 (122), 분류기 (128) 를 사용하여 세그먼트화 그래프를 결정하는 인식 엑스퍼트 (124), 및 언어 정보 (130) 의 형상 기반 어휘부를 사용하여 그래프들을 통한 최상의 경로를 찾는 언어 엑스퍼트 (126) 를 채용한다. 혼합된 콘텐츠 분류는 '정크'로서 취급되고 인식기 (118) 로 파싱될 때 낮은 인식 확률을 초래할 것이다. 그 형상들은 인식기로 파싱되지만 인식되지는 않는데, 예를 들어, 그 형상들이 비인식된 콘텐츠 (나중에 설명됨) 인 낙서들로서 취급되는 어휘부가 없는 형상들이기 때문이다.
도 10a는 예시적인 핸드 드로잉된 도식 (1000) 을 도시한다. 배경에서 설명된 예시적인 도식들처럼, 도식 (1000) 은 상이한 유형들 (직사각형들 및 원) 의 도식 블록들 또는 컨테이너들과, 도식 블록들을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형들 (직선 화살표들 및 굽은 화살표) 의 커넥터들, 그리고 컨테이너들 내의 상이한 컴포넌트들 (단일 단어들, 심볼들 및 다수의 단어들을 포함함) 의 텍스트를 포함하는 형상 및 텍스트 엘리먼트들을 가진다.
도 10b는 예시적인 모호성제거 시스템 및 방법의 흐름도인데, 이는 예시적인 핸드 드로잉된 도식 (1000) 에 관해 이제 설명된다. 단계 1에서, 모호성제거기 (116) 는 도식 (1000) 의 핸드 드로잉된 입력의 스트로크들, 예를 들어, 스트로크 S1 내지 S10을 수신한다.
단계 2에서, 스트로크들은 어떤 스트로크들이 도식 (1000) 의 비-텍스트 또는 텍스트 엘리먼트들에 속할 수도 있는지의 가설들을 구축하기 위해 공간적 및 시간적 고려사항들을 사용하여 그룹화된다. 공간적 고려사항들은 스트로크들 사이의 거리, 스트로크들의 기하구조, 스트로크들의 중첩, 및 스트로크들의 상대 포지션들을 포함한다. 예를 들어, 스트로크 S1 및 S2는 서로 가깝고, 스트로크 S1 및 S2는 스트로크 S3 내지 S89를 둘러싸고 스트로크 S10은 스트로크 S9의 하나의 단부에 오버레이된다. 시간적 고려사항들은 스트로크 입력의 시간 순서를 포함한다. 예를 들어, 스트로크들은 S1, S2, S9, S10, S3, S4, S5, S7, S6 및 S8의 시간 순서를 가진다. 조합된 공간적 및 시간적 고려사항들은 확률 스코어를 스트로크들의 각각의 그루핑에 제공하는데 사용된다. 확률 스코어는 각각의 클래스, 텍스트, 비-텍스트 및 정크마다 하나씩인 세 개의 확률 스코어들의 벡터일 수도 있다. 높은 확률 스코어가 스트로크들의 그룹이 스코어에 연관된 클래스의 하나의 오브젝트에 속할 가능성이 있다는 것을 나타내며, 낮은 확률 스코어가 스트로크들의 그룹이 개별 오브젝트들에 속할 가능성이 있다는 것 또는 적어도 그 클래스가 그 스코어에 연관되지 않는다는 것을 나타내며, 그것들 간의 스코어들은 분류의 상대적 공산들을 나타낸다. 이런 식으로, 이 단계에서 낮거나 또는 매우 낮은 확률 스코어들을 성취하는 그룹들은 가설들이 다음 단계에서의 테스트를 위해 불필요하게 구축되지 않도록 버려짐으로써, 프로세싱을 최적화한다. 이 스코어링은 테스트되지 않아야 하는 것들을 걸러 내기 위한 가설들의 '조악한' 분류를 정의한다. 대안적으로, 가설들은, 최고 스코어를 성취하는 클래스에 대해 스트로크들의 분류를 하면서, 스트로크들의 각각의 체계적 그룹에 대한 각각의 분류를 위해 구축될 수도 있다.
공간적 및 시간적 정보는 가설들 자체의 구축에서 또한 사용된다. 예를 들어, 스트로크 S1 및 S2를 포함하는 제 1 그룹 및 스트로크 S3 내지 S8을 포함하는 제 2 그룹에 대해, 공간적 정보는 제 1 그룹이 제 2 그룹을 둘러싼다는 것이고 시간적 정보는 제 1 그룹의 스트로크들이 시간 순서로 입력되었고 제 2 그룹의 스트로크들이 또한 시간 순서로 입력되었다는 것이므로, 제 1 그룹이 다른 엘리먼트들을 포함할 때 하나의 오브젝트에 속한다는 제 1 가설이 구축되고, 제 2 그룹이 다른 엘리먼트에 포함될 때 하나의 오브젝트에 속한다는 제 2 가설이 구축되고, 제 1 및 제 2 그룹들이 상이한 오브젝트들에 속한다는 제 3 가설들이 구축된다. 제 3 가설은 제 1 및 제 2 가설들의 단지 조합은 아닌데, 제 3 가설이 제 1 또는 제 2 그룹이 하나를 초과하는 오브젝트 자체가 되는 것을 배제하지 않기 때문이다.
스트로크 S1 내지 S10의 예들의 경우, 다음의 추가의 그룹들이 높은 확률 스코어들을 가지고 그러므로 가설들로서 구축된다:
Figure pct00006
S3 및 S4; 그것들이 시간 순서화되고 S4는 S5보다 S3에 더 가까울 때,
Figure pct00007
S5 내지 S8; 그것들이 시간 순서화될 때,
Figure pct00008
S2 및 S9; 그것들이 시간 순서화되고 공간적으로 가까울 때,
Figure pct00009
S9 및 S10; 그것들이 시간 순서화되고 S10은 S9의 하나의 단부에 오버레이될 때.
한편, 중간 확률 스코어 (예컨대, 가능성이 높지도 않거나 또는 낮지도 않음) 를 갖고 그러므로 가설들을 구축하기 위해 사용될 가능성 있는 그룹은, 스트로크 S1 및 S9를, 그것들의 공간적 범위들이 가깝지만, 특히 가깝지는 않고, 그것들이 시간적으로 가까울 때 포함하며, 낮은 확률 스코어를 갖고 그러므로 가설들을 구축하기 위해 사용될 가능성이 낮은 그룹은, 스트로크 S1 및 S10를, 그것들 사이에 많은 다른 스트로크들을 가져 그것들이 공간적으로 멀리 떨어져 있을 때 포함하고, 매우 낮은 확률 스코어를 갖고 그러므로 가설들을 구축하기 위해 사용되지 않는 그룹은, 스트로크 S5 및 S10를, 그것들이 공간적 및 시간적 둘 다에서 멀리 떨어져 있을 때 포함한다.
단계 3에서, 구축된 가설들의 스트로크들의 각각의 그룹에 대한 특징들이 추출된다. 이들 특징들은 예를 들어, 인식기 (118) 에 의해 구현되거나 또는 메모리 (108) 에 저장된 프리-프로세서 (116) 의 일부로서 따로따로 제공되는 것들일 수도 있는 형상 및 텍스트 언어 모델들을 고려하여 추출된다. 그 특징들은 분리 거리들, 스트로크들 내의 방향에서의 변경들, 중첩, 스트로크 패턴의 방향, 상대적 기하학적 범위들, 결합된 상대 포지션들 및 시간 순서들, 곡률들, 선형성 및 루핑을 포함한다. 이 리스트는 철저하지 않고, 약 100 개의 상이한 특징들이 본원의 시스템 및 방법에 의해 추출되는데, 추출되는 특징들의 수가 더 클수록, 전체 분류의 정확도가 더 높아져서이다.
예를 들어, 위에서 설명된 제 1 그룹의 경우, 스트로크 S1의 추출된 특징들은 방향에서의 두 개의 큰 변경들, 세 개의 일반적으로 선형적인 세그먼트들 및 부분적으로 폐쇄 대형 (formation) 을 포함하며, 스트로크 S2의 추출된 특징들은 일반적으로 선형인 단일 방향을 포함하고, 스트로크 S1 및 S2의 추출된 상대적 특징들은 S1의 수평 범위 내에 있는 S2의 수평 범위와 S1의 두 개의 수직 세그먼트들의 단부들과 대체로 정렬되는 S2를 포함한다. 위에서 설명된 제 2 그룹의 경우, 모든 스트로크들의 추출된 상대적 특징들은 일부 위치적으로 지연된 스트로크들 (이는 예를 들어 "t"의 교차 또는 "i" 문자의 타점 (dotting) 을 나타낼 수도 있음) 을 갖는 일반적으로 단방향성 스트로크 패턴을 포함하며, 스트로크 S5 및 S6의 추출된 상대적 특징들은 중첩을 포함하며, 스트로크 S5 내지 S8의 추출된 상대적 특징들은 S5 및 S7와 시간 순서에서 위치적으로 벗어난 S6 및 S8을 포함하고, 스트로크 S7의 추출된 특징들은 방향에서의 많은 변화들 (이는, 예를 들어, 필기체 텍스트를 나타낼 수도 있음) 을 포함한다.
단계 4에서, 스트로크들은 그들 가설들 내의 스트로크들의 그룹들의 추출된 특징들을 포함하는 수집된 정보와 각각의 클래스, 텍스트, 비-텍스트 및 정크마다 하나씩인 세 개의 확률 스코어들의 벡터로서 각각의 가설화된 (hypothesized) 그룹에 확률 스코어들을 제공하는데 사용되는, 그들 그룹들 내의 스트로크들의 공간적 및 시간적 정보의 모두에 기초하여 가설들을 테스트함으로써 텍스트, 비-텍스트 및 정크로 분류된다. 예를 들어, 위에서 설명된 제 1 및 제 2 가설들에 대해, 전술한 추출된 특징들과 공간적 및 시간적 정보는 다른 분류들의 텍스트 및 정크보다는 비-텍스트인 것에 대해 더 높은 확률 스코어를 갖는 제 1 그룹과, 다른 분류들의 비-텍스트 및 정크보다 텍스트인 것에 대해 더 높은 확률 스코어를 갖는 제 2 그룹으로 이어진다. 확률 스코어들의 분석은 각각의 스트로크에 대해 행해질 수도 있어서, 특정한 스트로크를 포함하는 가설들/그룹들의 모두에 대한 확률 스코어 벡터들은 그 스트로크에 대한 전체 확률을 제공하도록 텍스트 또는 비-텍스트인 것으로서 결합된다. 이 스코어링은 인식을 위해 스트로크들 중 각각의 스트로크의 '미세한' 분류를 정의한다.
단계 5에서, 분류 결과들은 적절한 인식 모듈에 의한 스트로크들의 필기 인식을 위해 인식기에 파싱된다.
덧붙여, 단순 휴리스틱스를 채용하는 다른 모호성제거 기법들이 위에서 설명된 기법을 보완하고 보강하는데 사용될 수 있다. 이것들은, 예를 들어, 임계값들, 기입 속력, 및 스트로크들 사이의 시간을 포함한다. 모호성제거 시스템 및 방법은 이미 입력된 필기에 대해 또는 필기가 입력됨에 따라 점증적으로 수행될 수 있다. 점증적 수행의 경우 분류에서의 신뢰를 위해 요구된 확률 스코어들은 비-점증적 경우보다 더 높게 설정될 수 있어서, 인식이 이루어지기 전에 오브젝트들의 모든 스트로크들의 입력에 대해 시간이 제공된다. 대안적으로, 이전에 인식된 오브젝트들은 새로운 그룹화들 및 가설들을 야기하는 새로운 입력에 기초하여 재인식될 수도 있지만, 프로세싱 복잡도 및 시간 (예컨대, 모든 이전에 인식된 엘리먼트들의 재-테스팅) 을 바람직하지 않게 증가시키거나 또는 생성 또는 편집되고 있는 도식 전체에 걸친 재-인식을 혼란시키는 것을 야기하기 않도록 주의해야 한다. 예를 들어, 새로이 입력된 스트로크들 전에 입력되었던 모든 인식된 스트로크들을, 즉, 시간 순서에 의해, 테스트하는 것은 인식 속력에 영향을 미칠 수 있는 과잉 프로세싱으로 빠르게 이어져, 애플리케이션 (112) 의 사용자 경험에 악영향을 미칠 수도 있다. 이들 비-유익한 효과들은, 예를 들어, 제한된 수만의 이전에 입력된 스트로크들을, 예컨대, 하나부터 약 다섯 개 스트로크들로, 시간 순서를 기초로 테스트하는 것, 또는 잠재적인 새로운 그루핑들을 위해 새로이 입력된 스트로크들에 공간적으로 가까운 이전에 인식된 스트로크들만을 테스트하는 것, 또는 동일한 유형, 즉, 텍스트 또는 비-텍스트의 인식된 스트로크들만을, 그들 스트로크들의 분류 시 현재 입력된 스트로크들로서 테스트하는 것과 같은 특정한 스트로크들로 재-분류를 제한함으로써 (새로운 입력으로 인한) 가능성이 있는 변경된 엘리먼트들의 양호한 인식을 제공하면서도 최소화될 수도 있다.
따라서, 본원의 시스템 및 방법의 비-텍스트/텍스트 구별은 배경에서 언급된 이전의 기법들과는 상이한데, 왜냐하면, 비-텍스트 및 텍스트 스트로크들을 포함하는 임의의 그룹들은 낮은 분류 스코어가 주어지고 그러므로 인식기에 파싱되지 않으며, 절대 분류가 인식에 앞서 수행되지 않고 오히려 가설들이 구축되고 테스트되고, 세그먼트화된 스트로크들 자체는 검출가능 형상들로 재형성되기 위해서 비-텍스트에 속하는 것으로서 분류되지 않고 오히려 스트로크들의 그룹들이 형상 인식을 위해 분류되고 테스트되기 때문이다. 그 결과, 본원의 시스템 및 방법은 잘못된 텍스트 및 형상 인식과 이전의 기법들의 오분류에 대한 가능성을 겪지 않는다.
따라서, 본 시스템의 텍스트/비-텍스트 모호성제거기는 형상들 및 텍스트를, 그리고 텍스트, 텍스트 줄들, 텍스트 줄들의 코히어런트 세트로서 정의된 단락들, 초기 글머리기호 심볼들 또는 숫자들을 갖는 텍스트 줄들의 수직 세트로서 정의된 글머리기호 부여된 및 번호 부여된 리스트들, 텍스트를 포함하는 셀들의 그룹으로서 정의된 표들, 밑줄친 텍스트 등의 내에서 식별할 수 있다. 게다가, 모호성제거기 (116) 는 형상들과 형상들 내부에 위치된 텍스트, 표 셀 내부에 위치된 텍스트 및 개개의 텍스트 블록들의 정렬을 포함하는 도식의 레이아웃을 식별할 수 있다. 더욱이, 모호성제거기 (116) 는 텍스트 또는 형상의 조각에 걸쳐 이루어진 휘갈겨 쓴 선으로서 정의되는 스크래치-아웃들, 텍스트의 조각에 걸쳐 이루어진 단일 선으로서 정의되는 취소선들, 및 텍스트의 조각을 통해 이루어진 교차된 선들의 쌍으로서 정의되는 크로스 아웃 (cross-out) 들을 포함하는 정정된 텍스트를 식별할 수 있다. 더 나아가, 모호성제거기 (116) 는, 상이한 엘리먼트들의 식별된 포지션들 및 사이즈들이 인식된 디지털 잉크가 더욱 규칙적이고 정규화된 형태로 출력되는 것을 허용하도록 조정될 수 있으므로, 미화 정보를 제공할 수 있다.
본원의 시스템 및 방법에 따른 애플리케이션 (112) 의 동작들 및 특징들이 도식의 예시적인 필기된 입력에 관하여 이제 설명된다. 도 11a는 애플리케이션 (112) 을 사용하여 컴퓨팅 디바이스 (100) 의 입력 표면 (104) 상에 입력된 필기된 흐름도 (1100) 의 디지털 잉크 렌더링을 묘사하고, 도 11b는 HWR 시스템 (114) 에 의한 인식 프로세싱 후 조판 잉크에서의 흐름도 (1100) 를 묘사한다. 배경에서 설명된 예시적인 도식들처럼, 도식 (1100) 은 상이한 유형들 (계란형들, 원들 및 다이아몬드형들) 의 도식 블록들 또는 컨테이너들 (12) 과 도식 블록들 (12) 을 연결하거나 또는 그 도식 블록들 사이에 관계들을 지정하는 상이한 유형들 (직선 화살표들, 굽은 화살표들, 개방 촉 화살표들 (open-headed arrows) 및 폐쇄 촉 화살표들 (closed-headed arrows)) 의 커넥터들 (14), 및 컨테이너들 (12) 의 일부 내의, 컨테이너들 (12) 의 일부 외부 및 그 일부에 연관된, 그리고 커넥터들 (14) 의 일부에 연관된 텍스트 (16) 를 포함하는 형상 및 텍스트 엘리먼트들을 가진다.
본원의 시스템 및 방법의 애플리케이션 (112) 이 도식 (1100) 의 필기된 엘리먼트들을 검출하고 식별하며 식별되고 인식된 엘리먼트들을 디지털 및 조판 잉크로 디스플레이하는 방식은 도 12 내지 도 67에 관하여 이제 설명된다. 도 12 내지 도 67은, 사용자에 의한, 예를 들어, 그의 손가락 또는 스타일러스로 애플리케이션 (112) 에 대한 핸드 드로잉된 입력으로부터 렌더링되는 (HWR 시스템 (114) 에 의한 모호성제거 및 인식 후의) 디지털 및 조판 잉크를 갖는 컴퓨터 디바이스 (100) 의 인터페이스 (104) 를 단계마다 형태로 도시한다.
도 13 내지 도 22 및 도 24 내지 도 66의 각각은 입력이 (비-미화된 또는 미화된) 디지털 잉크로서 디스플레이되도록 핸드 드로잉된 입력에 대한 조판이 자동으로 수행되지 않는 "A" 버전 예와 입력이 디지털 잉크로서 먼저 디스플레이된 다음 조판 잉크로서 디스플레이되도록 핸드 드로잉된 입력에 대해 점증적 조판이 수행되는 "B" 버전 예로 제시된다. 다시 말하면, 본원의 시스템 및 방법의 인식 프로세싱은 필기된 입력이 수신됨에 따라 점증적 방식으로 수행될 수도 있거나 또는 이미 입력된 콘텐츠에 대한 일괄 (batch) 프로세스로서 수행될 수도 있다. 후자의 경우, 애플리케이션 (112) 은, 도 13 내지 도 22 및 도 24 내지 도 66의 "B" 버전 예들에서 묘사되는 바와 같이, 점증적 인식이 진행함에 따라 조판 (또는 미화된) 잉크를 렌더링하도록, 예를 들어, UI 메뉴들, 버튼들 또는 제스처들의 수행을 통한 사용자들에 의한 선택을 통해 구성 가능하다. 전자의 경우, 디지털 (또는 미화된) 잉크의 디스플레이는, 도 13 내지 도 22 및 도 24 내지 도 66의 "A" 버전 예들에서 묘사된 바와 같이, (미화 또는) 조판을 수행하기 위한 사용자들에 의한 선택까지 유지된다.
도 12에서, 핸드 드로잉된 형상 (1100) 이 디지털 잉크 형상 (1101a) 으로서 디스플레이된다. 형상 (1101) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 계란형 또는 타원으로서 인식된다. 폐쇄 형상으로서 인식 시, 디지털 잉크 형상 내의 컬러-채움과 같은 특정 렌더링을 통해 시각적 피드백 (이는 그렇지 않고 점증적 조판이 사용되지 않는다면 조판 시에만 확인 가능함) 이 사용자들에게 제공될 수도 있다.
도 13a에서, 디지털 잉크 계란형 (1101a) 내에 입력된 필기된 텍스트 (1102) 는 디지털 잉크 텍스트 (1102a) 로서 디스플레이된다. 도 13b에서, 도 12의 인식 결과는, 핸드 드로잉된 계란형 (1101) 의 치수들이 유지되면서, 조판 계란형 (1101b) 으로서 디스플레이되고, 계란형 (1101) 내에 입력된 필기된 텍스트 (1102) 는 조판 계란형 (1101b) 내에 디지털 잉크 텍스트 (1102a) 로서 디스플레이된다. 텍스트 (1102) 는 텍스트로서 검출되고 단어 "Ideation"으로서 인식되고, 계란형 (1101) 은 입력들 (1101 및 1102) 의 상대 포지션들 및 특성들로 인해 인식된 단어 (1102) 를 포함하는 컨테이너로서 식별된다. 컨테이너와 이로써 포함되는 텍스트는 이들 엘리먼트들 중 하나의 엘리먼트에 대해 수행되는 일부 액션들이 다른 엘리먼트에 대한 반응들을 야기하도록 서로 연관된다. 예를 들어, 컨테이너가 사용자에 의해 선택되고 이동될 때 포함된 텍스트는 컨테이너와 함께 이동되고, 텍스트가 사용자에 의해 선택되고 확대되거나 또는 추가될 때, 컨테이너는 더 큰 텍스트 사이즈 또는 블록을 수용하도록 리사이징된다. 이러한 동작들은 나중에 더 상세히 설명된다.
도 14a에서, 계란형 컨테이너 (1101a) 밑에 입력된 핸드 드로잉된 형상 (1103) 이 디지털 잉크 형상 (1103a) 으로서 디스플레이된다. 도 14b에서, 도 13b의 인식 결과는, 필기된 단어 (1102) 의 치수들 및 계란형 (1101) 으로부터의 분리가 유지되면서, 조판 계란형 컨테이너 (1102b) 내에 조판 단어 (1102b) 로서 디스플레이되고, 조판 계란형 컨테이너 (1101b) 밑에 입력된 핸드 드로잉된 형상 (1103) 은 디지털 잉크 형상 (1103a) 으로서 디스플레이된다. 형상 (1103) 은 두 개의 스트로크들로 핸드 드로잉되며, 그룹화된 스트로크들은 비-텍스트로서 검출되고 형상 (1103) 의 특성들 (즉, 자신의 단부들 중 하나의 단부에 삼각형의 대향 지점이 있고 한 변을 나누는 선) 로 인해 폐쇄 촉 화살표로서 인식된다. 화살표가 하나 또는 두 개의 개방형 (예컨대, v-자 형) 또는 폐쇄형 (예컨대, 삼각형) '화살촉들'로 끝나는 직선형 또는 굽은 '스템'에 의해 형성되어 있는 것으로서 정의된다. 이 시점에, 화살표 (1103) 는 입력들 (1101 및 1103) 의 상대 포지션들 (예컨대, 미리 설정된 공간 분리 임계값 미만의 선형 형상의 단부의 비선형 형상에 대한 분리거리가 연결 관계의 높은 공산을 나타내는 상기 미리 설정된 공간 분리 임계값이 애플리케이션 (112) 에 의해 사용되며; 공간적 임계값은, 예를 들어, 약 다섯 개 화소들 내지 약 100 개 화소들로 설정되는 스트로크들의 중앙 지점들 (mean points) 또는 무게중심들 사이의 화소 단위 거리로서 정의될 수도 있음) 및/또는 그 입력들의 특성들 (예컨대, 컨테이너에 근접하거나 또는 인접하는 하나의 단부를 갖는 화살표는 연결 관계의 높은 공산을 나타내며; 근접도는 공간적 임계값과 유사한 거리 범위에서 정의됨) 로 인해 계란형 (1101) 의 커넥터로서 식별될 수도 있다.
대안적으로, 이 식별은 다른 연결된 형상 (즉, 화살표의 다른 단부에 인접한 형상) 이 입력되기까지 연기될 수도 있다. 다른 대안적으로 또는 추가적으로, 화살표 (1103) 에는 커넥터일 특정한 확률이 배정될 수도 있어서, 연결되는 형상이 입력되고 있을 시 또는 컨테이너 (1101) 가, 예를 들어, 식별된 커넥터 (1103) 가 컨테이너 (1101) 와 함께 이동되도록 사용자에 의해 선택되고 이동되고 있을 시 식별 결정은 빠르게 이루어진다. 이러한 동작들은 나중에 더 상세히 설명된다. 커넥터로서 식별 시, 커넥터 단부들이 커넥터가 연결되는 형상들의 경계들과 '접촉'하도록 커넥터의 연결된 단부들 상의 간단한 애니메이션 또는 디지털 및 조판 잉크의 렌더링과 같은 시각적 피드백이 사용자에게 제공될 수도 있다.
도 15a에서, 커넥터 (1104a) 밑에 입력된 핸드 드로잉된 형상 (1104) 이 디지털 잉크 형상 (1104a) 으로서 디스플레이된다. 도 15b에서, 도 14b의 인식 결과는, 식별된 커넥터 스테이터스의 시각적 피드백을 제공하기 위해, 핸드 드로잉된 화살표 (1103) 의 근접 단부가 조판 계란형 (1103b) 의 경계 상에 다시 위치되면서 그리고 조판 계란형 (1101) 으로부터 핸드 드로잉된 화살표 (1103) 의 원위 단부의 범위가 유지되면서, 조판 커넥터 화살표 (1103b) 로서 디스플레이되고, 커넥터 (1103) 밑에 입력된 핸드 드로잉된 형상 (1104) 은 디지털 잉크 형상 (1104a) 으로서 디스플레이된다. 형상 (1104) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트인 것으로서 검출되며, 다이아몬드인 것으로서 인식되고 입력들 (1103 및 1104) 의 상대 포지션들 및/또는 특성들로 인해 커넥터 (1103) 에 연결되는, 자신의 지점들 중 하나의 지점을 갖는 것으로서 식별된다. 위에서 논의된 바와 같이, 이 식별은 커넥터 (1103) 의 식별을 결정하는데 사용될 수도 있다. 커넥터 (1103) 의 조판 화살촉은 핸드 드로잉된 화살촉에 유사한 사이즈로 렌더링될 수도 있거나 또는 커넥터의 치수들 (예컨대, 화소들에서 정의된 길이, 및 폭 또는 잉크 무게) 로 스케일링된 (예컨대, 상응하는) 표준화된 화살촉이 사용될 수도 있다.
도 16a에서, 다이아몬드 (1104a) 내에 입력된 필기된 텍스트 (1105) 는 디지털 잉크 텍스트 (1105a) 로서 디스플레이된다. 도 16b에서, 도 15b의 인식 결과는, 핸드 드로잉된 다이아몬드 (1104) 의 치수가 유지되고 상부 지점들이 조판 커넥터 (1103b) 의 (상대적) 근접 단부에 다시 위치되면서, 조판 다이아몬드 (1104b) 로서 디스플레이되고, 다이아몬드 (1104) 내에 입력된 필기된 텍스트 (1105) 는 조판 다이아몬드 (1104b) 내에 디지털 잉크 텍스트 (1105a) 로서 디스플레이된다. 텍스트 (1105) 는 텍스트인 것으로서 검출되고 심볼 "?"인 것으로서 인식되고, 다이아몬드 (1105) 는 입력들 (1104 및 1105) 의 상대 포지션들 및 특성들로 인해 인식된 심볼 (1105) 을 포함하는 컨테이너로서 식별된다.
도 17a에서, 다이아몬드 (1104a) 의 좌측에 입력되는 필기된 텍스트 (1106) 는 디지털 잉크 텍스트 (1106a) 로서 디스플레이된다. 도 17b에서, 도 16b의 인식 결과는, 핸드 드로잉된 심볼 (1105) 의 치수들 및 다이아몬드 (1104) 로부터의 분리거리가 유지되면서, 조판 심볼 (1105b) 로서 디스플레이되고, 조판 다이아몬드 (1104b) 의 좌측에 입력되는 필기된 텍스트 (1106) 는 디지털 잉크 텍스트 (1106a) 로서 디스플레이된다. 텍스트 (1106) 는 텍스트인 것으로서 검출되고 단어들 "No Go"인 것으로서 인식된다. 이 시점에, 텍스트 (1106) 는 컨테이너 (1104) 와는 그것들의 상대 포지션들로 인해 연관되어 있는 것으로서 식별된다 (예컨대, 미리 설정된, 및 재설정 가능한, 공간 분리 임계값 미만의, 텍스트 및 비-텍스트 블록들의 평균 중앙들 또는 무게중심들 (텍스트 및 비-텍스트의 x-공간 및 y-공간 범위에 의해 정의됨), 블록들의 인접하거나 또는 동일한 위치적 (예컨대, 상단) 경계들과 같은 검출된 텍스트 및 비-텍스트의 기하학적 특징들의 분리거리가 다수의 연관된 형상들, 다수의 연관된 텍스트 블록들, 및 연관된 형상들 및 텍스트 블록들과 같은 연관된 오브젝트들의 높은 공산을 나타내는 상기 공간 분리 임계값이 애플리케이션 (112) 에 의해 사용된다). 이 식별된 연관은 엘리먼트들 (1104 또는 1106) 중 하나의 엘리먼트가 사용자에 의해 선택되고 이동되거나 또는 편집되며, 예컨대, 리사이징된다면, 다른 엘리먼트가 상대적 이동 또는 편집을 통해 영향을 받는다는 것을 의미한다. 이러한 동작들은 나중에 더 상세히 설명된다.
도 18a에서, 단어들 (1106a) 밑에 입력된 그리고 다이아몬드 (1104a) 의 다른 지점으로부터의 핸드 드로잉된 형상 (1107) 이 디지털 잉크 형상 (1107a) 으로서 디스플레이된다. 도 18b에서, 도 17b의 인식 결과는, 핸드 드로잉된 단어들 (1106) 의 치수들 및 다이아몬드 (1104) 에 대한 상대 포지션이 유지되면서, 조판 단어들 (1106b) 로서 디스플레이되고, 조판 단어들 (1106b) 밑에 입력된 그리고 조판 다이아몬드 (1104b) 의 다른 지점으로부터의 핸드 드로잉된 형상 (1107) 은 디지털 잉크 형상 (1107a) 으로서 디스플레이된다. 형상 (1107) 은 두 개의 스트로크들로 핸드 드로잉되며, 그룹화된 스트로크들은 비-텍스트로서 검출되고 형상 (1107) 의 특성들로 인해 폐쇄 촉 화살표로서 인식된다. 이 시점에, 화살표 (1103) 처럼, 화살표 (1107) 는 다이아몬드 (1104) 의 커넥터로서 식별될 수도 있다. 게다가, 이 시점에 입력들 (1106 및 1107) 의 상대 포지션들 (위에서 설명된 미리 설정된 분리 임계값에 의해 결정됨) 및/또는 특성들 (예컨대, 단어들이 화살표 위에 위치됨) 로 인해 화살표 (1107) 는 단어들 (1106) 과 연관된 것으로서 추가로 식별될 수도 있어서, 텍스트 (1106) 는 커넥터 (1107) 의 라벨로서 정의된다.
이 식별된 연관은 컨테이너 (1104) 및 단어들 (1106) 을 연관이 없게 하기 위해 사용될 수도 있는데, 예를 들어, 텍스트 (1106) 의 커넥터 (1108) 로부터의 상대적 분리거리가 컨테이너 (1104) 로부터의 분리거리 미만이기 때문이며 그리고/또는 비-포함된 텍스트 (다시 말하면 형상에 의해 둘러싸이지 않은 텍스트) 가 다른 근접한 형상 유형들보다 근접한 커넥터와 연관될 가능성이 더 높은 것으로 간주되기 때문이다. 대안적으로 또는 추가적으로, 화살표 (1107) 와 단어들 (1106) 에는 서로 연관되어 있을 특정한 확률이 배정될 수도 있어서, 단어들 (1106) 이 화살표 (1107) 에 대한 자신들의 상대 포지션을 유지하게 이동되도록 사용자에 의해 선택되고 리사이징되어 있는 화살표에 의해 식별 결정이 빠르게 이루어진다. 이러한 동작들은 나중에 더 상세히 설명된다.
도 19a에서, 커넥터 (1107a) 의 좌측에 입력되는 핸드 드로잉된 형상 (1108) 이 디지털 잉크 형상 (1108a) 으로서 디스플레이된다. 도 19b에서, 도 18b의 인식 결과는, 핸드 드로잉된 화살표 (1107) 의 근접 단부가 조판 다이아몬드 (1104b) 의 지점 상에 다시 위치되고 핸드 드로잉된 화살표 (1107) 의 원위 단부의 다이아몬드 (1104) 로부터의 범위와 연관된 단어 (1106) 로부터의 분리거리가 유지되면서, 조판 커넥터 화살표 (1107b) 로서 디스플레이되고 조판 커넥터 (1107b) 의 좌측에 입력되는 핸드 드로잉된 형상 (1108) 은 디지털 잉크 형상 (1108a) 으로서 디스플레이된다. 형상 (1108) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트인 것으로서 검출되며, 원 (circle) 인 것으로서 인식되고 입력들 (1107 및 1108) 의 상대 포지션들 및 특성들로 인해 커넥터 (1107) 에 연결되는 자신의 경계를 갖는 것으로서 식별된다. 위에서 논의된 바와 같이, 이 식별 결과는 화살표 (1107) 의 커넥터 스테이터스를 결정하거나 또는 단정하는데 사용될 수도 있다. 원 (1108) 은 자신의 글자 "o"와의 유사도로 인해, 비-텍스트보다는 텍스트로서 쉽게 검출되고 있다는 것에 주의한다. 앞서 논의된 바와 같이, 이는 모호성제거기 (116) 에 의해 채용된 자신들의 상대 포지션들 (및 아마도 시간적 입력) 로 인한 형상들 (1107 및 1108) 의 그룹화 및 확률 스코어링, 또는 사용자들에게 제공되는 정정 메커니즘들을 통해 회피된다.
도 20a에서, 다이아몬드 (1108a) 의 좌측에 입력되는 필기된 텍스트 (1109) 는 디지털 잉크 텍스트 (1109a) 로서 디스플레이된다. 도 20b에서, 도 19b의 인식 결과는, 핸드 드로잉된 다이아몬드 (1108) 의 치수가 유지하고 근접 경계 지점이 조판 커넥터 (1107b) 의 (상대적) 근접 단부에 다시 위치되면서, 조판 원 (1108b) 으로서 디스플레이되고, 조판 원 (1108b) 좌측에 입력되는 필기된 텍스트 (1109) 는 디지털 잉크 텍스트 (1109a) 로서 디스플레이된다. 텍스트 (1109) 는 텍스트로서 검출되고 단어 "Stop"으로서 인식된다. 이 시점에, 도 17의 지점에서의 컨테이너 (1104) 및 단어들 (1106) 처럼, 텍스트 (1106) 는 형상 (1108) 과 연관된 것으로서 자신들의 상대 포지션들로 인해 식별될 가능성이 높고 그와 같이 텍스트 (1109) 는 컨테이너 (1108) 의 라벨로서 정의된다.
도 21a에서, 다이아몬드 (1104a) 의 다른 지점부터 계란형 (1101a) 의 경계 상의 다른 지점까지 형상들 (1101a 및 1104a) 우측에 입력된 핸드 드로잉된 형상 (1110) 이 디지털 잉크 형상 (1110a) 으로서 디스플레이된다. 도 21b에서, 도 20b의 인식 결과는, 핸드 드로잉된 워드 (1109) 의 치수들 및 조판 원 (1108b) 에 대한 상대 포지션이 유지되면서, 조판 워드 (1109b) 로서 디스플레이되고, 조판 다이아몬드 (1104b) 의 다른 지점으로부터 조판 계란형 (1101b) 의 경계 상의 다른 지점까지 조판 형상들 (1101b 및 1104b) 의 우측에 입력된 핸드 드로잉된 형상 (1110) 은 디지털 잉크 형상 (1110a) 으로서 디스플레이된다. 형상 (1110) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1110) 의 특성들로 인해 굽은 선으로서 인식된다. 이 시점에, 선의 단부들이 컨테이너들 (1101 및 1104) 에 각각 인접하기 때문에, 굽은 선 (1110) 은 이들 컨테이너들을 연결하는 커넥터로서 식별된다. 이 식별 결과는 화살촉과 같은 커넥터 엘리먼트의 존재 없이 이루어진다. 이는 커넥터 검출의 높은 공산에 대한 위에서 설명된 공간적 임계값이 이러한 커넥터 엘리먼트들의 존재에 상관 없이 충족되기 때문이다.
도 22a에서, 계란형 (1101a) 에 근접한 커넥터 (1110a) 의 단부 위에 입력되는 핸드 드로잉된 형상 (1111) 이 디지털 잉크 형상 (1111a) 으로서 디스플레이된다. 도 22b에서, 도 21b의 인식 결과는, 핸드 드로잉된 커넥터 (1110) 의 하나의 단부가 조판 다이아몬드 (1104b) 의 지점 상에 다시 위치되고 핸드 드로잉된 커넥터 (1110) 의 다른 단부가 조판 계란형 (1101b) 의 경계 상에 다시 위치되고, 핸드 드로잉된 선 (1110) 내의 벤드들의 치수들이 유지되면서, 조판의 굽은 커넥터 (1110b) 로서 디스플레이되고, 조판 계란형 (1101b) 에 근접한 조판 커넥터 (1110b) 의 단부 위로 입력되는 핸드 드로잉된 형상 (1111) 은 디지털 잉크 형상 (1111a) 으로서 디스플레이된다. 형상 (1111) 은 단일 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1111) 의 특성들 (즉, 삼각형이 하나의 변과 자신의 단부들 중 하나의 단부에서 선 (1110) 에 의해 교차되는 대향 지점을 가짐) 로 인해 폐쇄 화살촉으로서 인식된다. 선 (1110) 에 추가된 화살촉의 이 결정은, 예를 들어, 다음과 같이 전체 확률 스코어에서의 증가에 의해 선 (1110) 의 커넥터 스테이터스를 단언하는데 사용될 수 있다.
화살표들 (1103, 1107 및 1110) 중 각각의 화살표는 두 개의 스트로크들을 사용하여 핸드 드로잉된다. 그러나, 입력의 조판에 관한 HWR 시스템 (114) 의 반환된 인식이 상이하도록 각각의 화살표의 개개의 스트로크들의 입력 타이밍은 상이하다. 다시 말하면, 화살표들 (1103 및 1107) 의 스트로크들은 비교적 짧은 시간 간격 내에, 말하자면, 1 초 내에 드로잉되어서, 그 스트로크들은 인식기 (118) 로의 파싱을 위한 모호성제거기 (116) 에 의해 비-텍스트로서 함께 분류되고 (예컨대, 미리 설정된, 및 재설정 가능한, 시간 분리 임계값 미만의 드로잉 스트로크들 사이의 시간 분리간격이 단일 형상의 부분들일 스트로크들의 높은 공산을 나타내는, 상기 시간 분리 임계값이 애플리케이션 (112) 에 의해 사용됨), 이처럼 조판 화살표들 (1103b 및 1107b) 은 HWR 시스템 (114) 에 의해 출력된다. 한편, 화살표 (1110) 의 스트로크들 (1110 및 1111) 은 상대적으로 긴 시간 간격, 말하자면, 1을 초과하는 초 (예컨대, 시간적 분리 임계값보다 큼) 내에 드로잉되어서, 스트로크 (1110) 는 인식기 (118) 에 단독으로 파싱되고 조판 선 (1110b) 으로서 출력된다. 완전한 커넥터 화살표 (1110) 의 적절한 식별은 그러나 입력 스트로크들의 공간적 및 시간적 스코어들 및 메트릭들 또는 특성들로부터 계산된 전체 확률 스코어를 통해 제공된다. 다시 말하면, 동일한 오브젝트의 일부인 스트로크들 (1110 및 1111) 에 대한 시간적 스코어가 낮지만, 특성들 (즉, 형상 (1111) 을 나누는 선 (1110)) 에 기초한, 동일한 오브젝트의 일부인 스트로크들 (1110 및 1111) 에 대한 높은 공간적 스코어와의 결합은 하나의 형상에 속하는 스트로크들 (1110 및 1111) 의 전체 확률이 높다는 결과를 초래한다.
이는 핸드 드로잉된 화살촉 (1111) 의 지점이 조판 선 (1110b) 의 단부 상에 그리고 조판 계란형 (1101b) 의 경계 상에 다시 위치되면서, 도 22b의 인식 결과가 조판 커넥터 화살촉 (1111b) 으로서 디스플레이되어, 커넥터 화살표로서의 조판 커넥터 (1110b) 를 위에서 설명된 프로세싱의 결과로서 재형성하는 점증적 조판 예에 대해 도 23에서 예시된다.
도 24a에서, 커넥터 화살표 (1110a) 아래에 입력된 필기된 텍스트 (1112) 가 디지털 잉크 텍스트 (1112a) 로서 디스플레이된다. 도 24b에서, 도 23의 인식 결과의 조판 커넥터 화살표 (1110b) 아래에 입력된 필기된 텍스트 (1112) 는 디지털 잉크 텍스트 (1112a) 로서 디스플레이된다. 텍스트 (1112) 는 텍스트로서 검출되고 단어 "REDIRECT"로서 인식된다. 텍스트 (1112) 는 커넥터 (1110) 와는 그것들의 상대 포지션들로 인해 연관되어 있는 것으로서 식별된다.
도 25a에서, 커넥터 (1103a) 우측에 입력된 필기된 텍스트 (1113) 는 디지털 잉크 텍스트 (1113a) 로서 디스플레이된다. 도 25b에서, 도 24b의 인식 결과는, 핸드 드로잉된 단어 (1112) 의 치수들 및 조판 커넥터 (1110b) 에 대한 상대 포지션이 유지되면서, 조판 단어 (1112b) 로서 디스플레이된다. 따라서, 도 17 및 도 18과, 도 24 및 도 25의 검출된 입력들 및 연관들로부터, 커넥터들 및 연관된 텍스트 (예컨대, 커넥터 라벨들) 의 식별은 이들 엘리먼트들이 입력되는 순서에 상관 없이 본원의 시스템 및 방법에 의해 이루어진다는 것을 알 수 있다. 추가로 도 25b에서, 조판 커넥터 (1103b) 의 우측에 입력된 필기된 텍스트 (1113) 는 디지털 잉크 텍스트 (1113a) 로서 디스플레이된다. 텍스트 (1113) 는 텍스트인 것으로서 검출되고 용어 "S-Gate"인 것으로서 인식된다. 텍스트 (1113) 는 커넥터 (1103) 와는 그것들의 상대 포지션들로 인해 연관된 것으로서 식별된다 (예컨대, 텍스트 (1113) 는 형상에 포함되지 않고 도식 (1100) 의 다른 엘리먼트들 중 임의의 것보다 커넥터 (1103) 에 더 가깝다).
도 26a에서, 다이아몬드 (1104a) 밑에 입력된 그리고 다이아몬드 (1104a) 의 다른 지점으로부터의 핸드 드로잉된 형상 (1114) 이 디지털 잉크 형상 (1114a) 으로서 디스플레이된다. 도 26b에서, 도 25b의 인식 결과는, 핸드 드로잉된 용어 (1113) 의 치수들 및 조판 커넥터 (1103b) 에 대한 상대 포지션이 유지되면서, 조판 용어 (1113b) 로서 디스플레이되고, 조판 다이아몬드 (1104b) 의 다른 지점으로부터의 조판 다이아몬드 (1104b) 밑에 입력되는 핸드 드로잉된 형상 (1114) 은 디지털 잉크 형상 (1114a) 으로서 디스플레이된다. 형상 (1110) 은 두 개의 스트로크들로 핸드 드로잉되며; 그룹화된 스트로크들은 비-텍스트로서 검출되고 형상 (1114) 의 특성들로 인해 개방 촉 화살표로서 인식된다. 앞에서와 같이, 화살표 (1114) 는 이 시점에 자신의 컨테이너 (1104) 와의 관계 및 자신의 화살표 특성으로 인해 커넥터인 것으로 결정될 수도 있다.
도 27a에서, 커넥터 화살표 (1114a) 좌측에 입력되는 필기된 텍스트 (1115) 는 디지털 잉크 텍스트 (1115a) 로서 디스플레이된다. 도 27b에서, 도 26b의 인식 결과는, 핸드 드로잉된 화살표 (1114) 의 근접 단부가 조판 다이아몬드 (1104b) 의 지점 상에 다시 위치되고 핸드 드로잉된 화살표 (1114) 의 조판 다이아몬드 (1104b) 로부터의 원위 단부의 범위가 유지되면서, 조판 커넥터 화살표 (1114b) 로서 디스플레이되고, 조판 커넥터 화살표 (1114b) 좌측에 입력되는 필기된 텍스트 (1115) 는 디지털 잉크 텍스트 (1115a) 로서 디스플레이된다. 텍스트 (1115) 는 텍스트로서 검출되고 단어 "Go"로서 인식된다. 텍스트 (1115) 는 커넥터 (1114) 와는 그것들의 상대 포지션들로 인해 연관되어 있는 것으로서 식별된다.
도 28a에서, 커넥터 (1114a) 아래에 입력된 필기된 텍스트 (1116) 가 디지털 잉크 텍스트 (1116a) 로서 디스플레이된다. 도 28b에서, 도 27b의 인식 결과는, 핸드 드로잉된 단어 (1115) 의 치수들 및 조판 커넥터 (1114b) 에 대한 상대 포지션이 유지되면서, 조판 단어 (1115b) 로서 디스플레이되고, 조판 커넥터 (1114b) 아래에 입력된 필기된 텍스트 (1116) 는 디지털 잉크 텍스트 (1116a) 로서 디스플레이된다. 텍스트 (1116) 는 텍스트로서 검출되고 단어 "Initialization"으로서 인식된다. 이 시점에, 텍스트 (1116) 는 입력들 (1114 및 1116) (예컨대, 화살표의 화살촉 아래에 위치된 단어들) 의 상대 포지션들 (예컨대, 분리 임계값에 의해 결정됨) 및/또는 그 입력들의 특성들로 인해 커넥터 (1114) 와는 연관되어 있는 것으로서 식별될 수도 있다. 이 검출된 연관은 텍스트 (1116) 를 위한 컨테이너의 존재 없이 수행된다.
도 29a에서, 단어 (1116a) 주위에서 입력된 핸드 드로잉된 형상 (1117) 이 디지털 잉크 형상 (1117a) 으로서 디스플레이된다. 도 29b에서, 도 28b의 인식 결과는, 핸드 드로잉된 단어 (1116) 의 치수들 및 조판 커넥터 (1114b) 에 대한 상대 포지션이 유지되면서, 조판 단어 (1116b) 로서 디스플레이된다. 따라서, 도 12 및 도 13과, 도 28 및 도 29의 검출된 입력들 및 연관들로부터, 컨테이너들 및 포함된 텍스트의 식별은 이들 엘리먼트들이 입력되는 순서에 상관 없이 본원의 시스템 및 방법에 의해 이루어진다는 것을 알 수 있다. 게다가, 조판 단어 (1116b) 주위에서 입력된 핸드 드로잉된 형상 (1117) 은 디지털 잉크 형상 (1117a) 으로서 디스플레이된다. 형상 (1117) 은 단일의, 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되며, 입력들 (1116 및 1117) 의 상대 포지션들 및 특성들로 인해 단어 (1116) 를 포함하는 컨테이너로서 식별되고, 계란형으로서 인식된다. 컨테이너 (1117) 의 결정은, 예를 들어, 컨테이너들 (1104 및 1117) 사이에 위치된 화살표 (1114) 로 인한 전체 확률 스코어에서의 증가에 의해, 화살표 (1114) 의 커넥터 스테이터스를 단언하는데 사용될 수 있다.
도 30a에서, 컨테이너 (1117a) 밑에 입력된 핸드 드로잉된 형상 (1118) 이 디지털 잉크 형상 (1118a) 으로서 디스플레이된다. 도 30b에서, 도 29b의 인식 결과는, 핸드 드로잉된 계란형 (1117) 의 치수들과 조판 화살표 (1116) 의 화살촉으로부터의 분리가 유지되면서 (이는 상이한 유형들의 커넥터들, 예컨대, 폐쇄 촉 화살표들 대 개방 촉 화살표들의 모두의 렌더링이 커넥터로 간주하기 위하여 연결된 형상들과 실제로 '연결'하도록 조정될 필요가 없다는 것을 보여주기 위해 행해짐), 조판 계란형 (1117b) 으로서 디스플레이되고, 조판 컨테이너 (1117) 밑에 입력된 핸드 드로잉된 형상 (1118) 은 디지털 잉크 형상 (1118a) 으로서 디스플레이된다. 형상 (1118) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1118) 의 특성들로 인해 개방 촉 화살표로서 인식된다. 앞에서와 같이, 화살표 (1118) 는 이 시점에 자신의 화살표 특성과 자신의 컨테이너 (1117) 와의 관계로 인해 커넥터인 것으로 결정될 수도 있다.
도 31a에서, 화살표 (1118a) 의 일부에 오버레이하는 커넥터 (1104a) 밑에 입력된 핸드 드로잉된 형상 (1119) 이 디지털 잉크 형상 (1119a) 로서 디스플레이된다. 도 31b에서, 도 30b의 인식 결과는, 핸드 드로잉된 화살표 (1118) 의 근접 단부가 조판 계란형 (1117) 상에 다시 위치되고 조판 계란형 (1117) 으로부터 핸드 드로잉된 화살표 (1118) 의 원위 단부의 범위가 유지되면서, 조판 커넥터 화살표 (1118b) 로서 디스플레이되고 조판 화살표 (1118) 의 일부에 오버레이하는 조판 커넥터 (1104) 밑에 입력된 핸드 드로잉된 형상 (1119) 은 디지털 잉크 형상 (1119a) 으로서 디스플레이된다. 형상 (1119) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트인 것으로서 검출되며, 다이아몬드인 것으로서 인식되고 입력들 (1118 및 1119) 의 상대 포지션들 및 특성들로 인해 커넥터 (1118) 에 교차되는 자신의 상부 및 하부 지점들을 갖는 것으로서 식별된다. 이 시점에, (가능성 있는) 컨테이너로서의 다이아몬드 (1119) 와, 다이아몬드 (1119) 및 (가능성 있는) 커넥터 화살표 (1118) 사이의 연결 연관의 결정은 낮은 확률 스코어들에 배정될 수도 있는데, 다이아몬드 (1119) 가 커넥터 (1118) 의 '자유' 단부 (예컨대, 화살촉에 있음) 에 근접하여 위치되지 않을 수 있어서이다.
도 32a에서, 다이아몬드 (1119a) 내의 핸드 드로잉된 입력 (1120) 과 그 다이아몬드 내의 커넥터 (1118a) 의 부분을 오버레이하는 것이 디지털 잉크 (1120a) 로서 디스플레이된다. 도 32b에서, 도 31b의 인식 결과는, 핸드 드로잉된 다이아몬드 (1119) 의 치수들이 유지되고 상부 및 하부 지점들이 조판 커넥터 (1118) 상에 다시 위치되면서, 조판 다이아몬드 (1119b) 로서 디스플레이되고, 조판 다이아몬드 (1119) 내의 핸드 드로잉된 입력 (1120) 과 그 조판 다이아몬드 내의 조판 커넥터 (1118) 의 부분의 중첩을 오버레이하는 것이 조판 다이아몬드 (1119b) 내의 디지털 잉크 (1120a) 로서 디스플레이된다. 입력 (1120) 은 필기된 편집 제스처로서 검출되고 다이아몬드 (1119) 내의 화살표 (1118) 의 스템 부분 상의 스크래치 아웃으로서 식별된다. 이 스크래치 아웃 편집 동작은 다이아몬드 (1119b) 내의 화살표 (1118) 의 부분의 소거로서 애플리케이션 (112) 에 의해 해석된다. 그 결과, 화살표 (1118) 는, 하나가 컨테이너 (1117) 와 다이아몬드 (1119) 의 상단 지점 사이의 선이고 다른 하나가 다이아몬드 (1119) 의 하단 지점으로부터 돌출하는 화살표인 두 개의 형상들로 분리된다. 이 시점에, 선은 컨테이너 (1117) 와 다이아몬드 (1119) 사이의 커넥터로서 식별되고 화살표는 자신의 화살표 특성과 자신의 형상 (1119) 과의 관계로 인해 가능성 있는 커넥터로서 식별되고, 다이아몬드 (1119) 의 결과적인 검출이 컨테이너일 가능성이 있다.
도 33a에서, 소거 식별은 디지털 잉크 화살표 (1118a) 가 컨테이너들 (1117a 및 1119a) 사이의 디지털 잉크 선 (1121a) 으로서 디스플레이되는 선 커넥터 (1121) 와, 컨테이너 (1119a) 의 하단으로부터 돌출하는 디지털 잉크 화살표 (1122a) 로서 디스플레이되는 화살표 (1122) 로서 분리되게 한다. 게다가, 다이아몬드 (1119a) 에 근접한 커넥터 (1121a) 의 단부 위에 입력되는 핸드 드로잉된 형상 (1123) 이 디지털 잉크 형상 (1123a) 으로서 디스플레이된다. 도 33b에서, 소거 식별은 조판 화살표 (1118b) 가 조판 컨테이너들 (1117b 및 1119b) 사이의 조판 선 커넥터 (1121b) 로서 디스플레이되는 선 커넥터 (1121) 와, 조판 컨테이너 (1119b) 의 하단으로부터 돌출하는 조판 화살표 (1122b) 로서 디스플레이되는 화살표 (1122) 로 분리되게 한다. 게다가, 조판 다이아몬드 (1119b) 에 근접한 조판 커넥터 (1121) 의 단부 위에 입력되는 핸드 드로잉된 형상 (1123) 은 디지털 잉크 형상 (1123a) 으로서 디스플레이된다. 형상 (1123) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1123) 의 특성들로 인해 폐쇄 화살촉으로서 인식된다. 선 (1121) 에 추가된 화살촉의 이 결정은 선 (1121) 의 커넥터 스테이터스를 앞서 설명된 방식으로 단언하는데 사용될 수 있다. 게다가, 이 시점에 새로이 분리된 화살표 (1122) 는 자신의 컨테이너 (1119) 와의 관계와 자신의 화살표 특성으로 인해 커넥터인 것으로 결정될 수도 있다.
도 34a에서, 다이아몬드 (1119a) 내에 입력된 필기된 텍스트 (1124) 는 디지털 잉크 텍스트 (1124a) 로서 디스플레이된다. 도 34b에서, 도 33b의 인식 결과는, 핸드 드로잉된 화살촉 (1123) 의 지점을 조판 선 (1121b) 의 단부에 그리고 조판 다이아몬드 (1119b) 의 상단 지점에 다시 위치시키면서, 조판 커넥터 화살촉 (1123b) 로서 디스플레이됨으로써, 위에서 설명된 프로세싱의 결과로서 커넥터 화살표로서 조판 커넥터 (1121b) 를 재형성시킨다. 게다가, 조판 다이아몬드 (1119b) 내에 입력된 필기된 텍스트 (1124) 는 조판 다이아몬드 (1119b) 내에 디지털 잉크 텍스트 (1124a) 로서 디스플레이된다. 텍스트 (1124) 는 텍스트로서 검출되고 심볼 "?"로서 인식되고, 다이아몬드 (1119) 의 컨테이너인 것으로서의 식별은 그 다이아몬드가 인식된 심볼 (1124) 을 포함하는 것으로서 단언된다.
도 35a에서, 다이아몬드 (1119a) 의 다른 지점으로부터 입력된 핸드 드로잉된 형상 (1125) 이 디지털 잉크 형상 (1125a) 으로서 디스플레이된다. 도 35b에서, 도 34b의 인식 결과는, 핸드 드로잉된 심볼 (1124) 의 치수들 및 조판 다이아몬드 (1119b) 로부터의 분리가 유지되면서, 조판 심볼 (1124b) 로서 디스플레이되고, 조판 다이아몬드 (1119b) 의 지점으로부터 입력된 핸드 드로잉된 형상 (1125) 은 디지털 잉크 형상 (1125a) 으로서 디스플레이된다. 형상 (1125) 은 다수의 스트로크들로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1125) 의 특성들로 인해 폐쇄 촉 화살표로서 인식된다. 앞에서와 같이, 화살표 (1125) 는 이 시점에 자신의 화살표 특성과 자신의 컨테이너 (1119) 와의 관계로 인해 커넥터인 것으로 결정될 수도 있다.
도 36a에서, 커넥터 (1125a) 의 좌측에 입력되는 핸드 드로잉된 형상 (1126) 이 디지털 잉크 형상 (1126a) 으로서 디스플레이된다. 도 36b에서, 도 35b의 인식 결과는, 핸드 드로잉된 화살표 (1125) 의 근접 단부가 조판 다이아몬드 (1119b) 의 근접 지점 상에 다시 위치되고 핸드 드로잉된 화살표 (1125) 의 조판 컨테이너 (1119b) 로부터의 원위 단부의 범위가 유지되면서, 조판 커넥터 화살표 (1125b) 로서 디스플레이되고, 조판 커넥터 (1125b) 의 좌측에 입력되는 핸드 드로잉된 형상 (1126) 은 디지털 잉크 형상 (1126a) 으로서 디스플레이된다. 형상 (1126) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트인 것으로서 검출되며, 정사각형인 것으로서 인식되고 입력들 (1125 및 1126) 의 상대 포지션들 및 특성들로 인해 커넥터 (1125) 에 연결되는 자신의 경계를 갖는 것으로서 식별된다. 앞서 논의된 바와 같이, 이 식별 결과는 화살표 (1125) 의 커넥터 스테이터스를 단언하는데 사용될 수도 있다.
이전에 설명된 인식된 폐쇄 촉 화살표들은 애플리케이션 (112) 에 의해 디지털 잉크로 비-채움된 폐쇄 화살촉들과 조판 잉크로 채움된 폐쇄 화살촉들 (예를 들어, 도 14 및 도 15 참조) 로 렌더링되는 화살촉들로서 핸드 드로잉된 비-채움 또는 채우지 않은 삼각형들을 포함한다. 반면, 폐쇄 촉 화살표 (1125) 는 핸드 드로잉된, 채움된 (방향에서의 많은 변화들을 갖는 다수의 스트로크들 또는 단일의 연속적인 스트로크를 사용함) 삼각형을, 디지털 잉크로 채움된 폐쇄 화살촉 (도 35a 참조) 과 조판 잉크로 채움된 폐쇄 화살촉 (도 36b 참조) 으로 애플리케이션 (112) 에 의해 렌더링되는 화살촉으로서 포함한다. 따라서, 조판 결과는 동일하다. 대안적으로, 비-채움 화살촉들은, 애플리케이션 (112) 의 UI를 통해 사용자들에 의해 선택 가능한 바와 같이, 조판 잉크로 유지될 수 있다.
도 37a에서, 핸드 드로잉된 형상 (1127) 이 정사각형 (1126a) 에 오버레이하는 디지털 잉크 형상 (1127a) 으로서 디스플레이된다. 도 37b에서, 도 36b의 인식 결과는, 핸드 드로잉된 정사각형 (1126) 의 치수들이 유지되고 근접 경계 지점이 조판 커넥터 (1125b) 의 (상대적) 근접 단부에 다시 위치되면서, 조판 정사각형 (1126b) 으로서 디스플레이되고, 핸드 드로잉된 형상 (1127) 은 조판 정사각형 (1126b) 에 오버레이하는 디지털 잉크 형상 (1127a) 으로서 디스플레이된다. 형상 (1127) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 원으로서 인식된다. 이전에 식별된 형상에 실질적으로 오버레이하는 형상의 검출은 덮어쓰기 또는 대체 제스처로서 애플리케이션 (112) 에 의해 해석된다. 예를 들어, 미리 설정된, 및 재설정 가능한, 기하학적 임계값 미만인 오버레이된 기하학적 형상들의 선형 지점들, 경계들 또는 주변부들 사이의 애버리지 (average) 또는 평균 (mean) 거리가 덮어쓰기 제스처의 높은 공산을 나타내는 상기 임계값이 애플리케이션 (112) 에 의해 사용된다. 따라서, 덮어쓰기된 형상은 (예를 들어, 포함되는 텍스트와 함께 또는 그 텍스트 없이) 디스플레이로부터 삭제되거나 또는 생략되고 새로운 형상으로 대체된다.
도 38a에서, 검출된 덮어쓰기 제스처는 디지털 잉크 원 (1127a) 으로서 디스플레이되는 원 (1127) 을 이용한 정사각형 (1126a) 의 대체를 하게 하고, 커넥터 화살표 (1125a) 위로 입력된 필기된 텍스트 (1128) 가 디지털 잉크 텍스트 (1128a) 로서 디스플레이된다. 도 38b에서, 검출된 덮어쓰기 제스처는, 핸드 드로잉된 원 (1127) 의 치수들이 유지되고 근접 경계 지점이 조판 커넥터 (1125b) 의 (상대적) 근접 단부에 다시 위치되면서, 조판 원 (1127b) 으로서 디스플레이되는 원 (1127) 을 이용한 조판 정사각형 (1126b) 의 대체를 하게 하고, 조판 커넥터 화살표 (1125b) 위로 입력되는 필기된 텍스트 (1128) 는 디지털 잉크 텍스트 (1128a) 로서 디스플레이된다. 텍스트 (1128) 는 텍스트로서 검출되고 단어들 "No Go"로서 인식된다. 텍스트 (1128) 는 커넥터 (1125) 와는 그것들의 상대 포지션들로 인해 연관된 것으로서 식별된다.
도 39a에서, 핸드 드로잉된 입력 (1129) 이 단어들 (1128a) 에 오버레이하는 디지털 잉크 (1129a) 로서 디스플레이된다. 도 39b에서, 도 38b의 인식 결과는, 핸드 드로잉된 단어들 (1128) 의 치수들 및 조판 커넥터 (1125b) 에 대한 상대 포지션이 유지되면서, 조판 단어들 (1128b) 로서 디스플레이되고, 핸드 드로잉된 입력 (1129) 은 조판 단어들 (1128b) 에 오버레이하는 디지털 잉크 (1129a) 로서 디스플레이된다. 입력 (1129) 은 필기된 편집 제스처로서 검출되고 단어들 (1128) 상의 스크래치 아웃으로서 식별된다. 이 스크래치 아웃 편집 동작은 단어들 (1128) 의 소거로서 애플리케이션 (112) 에 의해 해석된다.
도 40a에서, 검출된 소거는 디스플레이로부터 디지털 잉크 단어들 (1128a) 의 제거를 하게 하고 도 40b에서, 검출된 소거는 디스플레이로부터 조판 단어들 (1128b) 의 제거를 하게 한다.
도 41a에서, 제스처 입력 (1130) 이 커넥터 (1107a) 의 라벨 (1106a) 의 선택으로서 검출 및 식별됨으로써, 아래에서 설명되는 선택 모드 속성들을 갖는 선택된 조판 라벨 (1106c) 의 디스플레이에 의해 대체된 라벨 (1106a) 을 둘러싸는 선택 박스 (1131) 의 디스플레이를 하게 하는 것에 의해, 사용자에게 식별된 제스처의 시각적 피드백을 제공한다. 제스처 (1130) 는, 예를 들어, 도 41에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다. 그런 제스처 및 그것의 "긴" 상대적 타이밍은 본 기술분야의 통상의 기술자에 의해 잘 이해된다.
도 41b에서, 선택 제스처의 검출은 선택된 조판 라벨 (1106c) 의 디스플레이에 의해 또한 대체되는 조판 라벨 (1106b) 을 둘러싸는 선택 박스 (1131) 의 디스플레이를 하게 한다. 선택 박스 (1131) 에는 콘텐츠에 대한 상호작용 동작들을 제공하기 위한 핸들들 (1131a) 이 디스플레이된다. 채용되는 선택 제스처에 의존하여, 상이한 선택 모드들이 개시될 수 있다. 예를 들어, 도 40에 예시되는 긴 누름 (long press) 선택 제스처는 멀티-선택 모드, 즉, 다수의 엘리먼트들의 선택을 개시하게 하는 것으로서 애플리케이션 (112) 에 의해 검출되어서, 애플리케이션 (112) 은 다른 도식 엘리먼트들의 후속하는 선택을 예상한다.
따라서 도 41a에서, 후속 제스처 입력 (1132) 이 컨테이너 (1108a) 의 라벨 (1109a) 의 선택으로서 검출 및 식별되고 도 41b에서 조판 컨테이너 (1108b) 의 조판 라벨 (1109b) 의 선택으로서 검출 및 식별된다. 제스처 (1132) 는, 예를 들어, 도 41에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 짧은 탭이다. 그런 제스처 및 그것의 "짧은" 상대적 타이밍은 본 기술분야의 통상의 기술자에 의해 잘 이해된다. 선택 모드가 액티브인 동안, 도식 (1110) 의 선택된 엘리먼트들은 선택되지 않은 조판 버전들에 대해 상이한 속성들 (예컨대, 상이한 컬러 및/또는 더 큰 잉크 무게) 을 가지는 조판 버전들로서 디스플레이된다. 게다가, 도식 (1100) 의 비-선택된 엘리먼트들은 (예컨대, 도 41에 도시된 바와 같이, 감소된 불투명도 또는 잉크 무게, 말하자면 약 20 % 내지 약 50 %로) 정상적 렌더링과는 상이하게 디스플레이될 수도 있다.
위에서 논의된 바와 같이, 컨테이너들 및 커넥터들을 포함하는 형상들의 선택 동안, 텍스트 임시 선택 모드 디스플레이가 검출된 선택의 사용자들에게 시각적 피드백을 제공하기 위해 이루어진다. 선택 모드 디스플레이는 다수의 방법들로 렌더링될 수 있다. 예를 들어, 디지털 잉크 및 조판 잉크 둘 다가 위에서 설명된 선택 모드 속성들을 갖는 선택된 조판 잉크로서 디스플레이될 수도 있다. 대안적으로, 조판 잉크는 선택된 조판 잉크로서 디스플레이될 수도 있고 디지털 잉크의 경우, 디지털 잉크 및 대응하는 조판 잉크 둘 다가, 위에서 설명된 비-선택 속성들처럼, 조판 잉크를 선택된 조판 잉크로서 디스플레이하고 디지털 잉크를 감소된 강조 (emphasis) 로 디스플레이하면서, 함께 디스플레이될 수도 있다. 이 선택 모드 렌더링의 여러 예들이 도 68 내지 도 72에서 도시된다.
도 68a에서, 핸드 드로잉된 형상이 다른 형상 또는 텍스트 콘텐츠가 없는 디지털 잉크 형상 (680) 으로서 디스플레이된다. 형상 (680) 은 비-텍스트로서 검출되고 삼각형으로서 인식된다. 게다가, 삼각형 (680) 내에 이루어진 제스처 입력 (682) 이 삼각형 (680) 의 선택으로서 검출되고 식별된다. 제스처 (682) 는, 예를 들어, 도 68a에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다.
도 68b에서, 선택 제스처의 검출은 감소된 강조 (예컨대, 회색으로 표시됨) 를 갖는 그리고 하이라이트된 강조로 (예컨대, 삼각형 내의 상이한 컬러 및 컬러-채움으로) 렌더링되고 경계 (선택) 박스 (686) 에 의한 경계가 있는 선택된 조판 잉크 삼각형 (684) 이 오버레이되는 디지털 잉크 삼각형 (680a) 의 디스플레이를 하게 한다 (컬러-채움은 경계 있는 (bounded) 형상에만이 아니라 전체 경계 박스 내에 있을 수도 있다). 이런 식으로, 사용자들에게는, 예를 들어 이동 및 리사이징 동작을 안내하면서 원래의 입력 콘텐츠의 디스플레이를 유지하기 위해, 핸드 드로잉된 형상의 조판된 범위의 선택 검출 및 감지의 피드백이 제공된다.
도 69a에서, 핸드 드로잉된 형상 및 텍스트가 각각 디지털 잉크 형상 (690) 및 디지털 잉크 텍스트 (692) 로서 디스플레이된다. 형상 (690) 은 비-텍스트로서 검출되고 원으로서 인식되며, 텍스트 (692) 는 텍스트로서 검출되고 단어 "Text"로서 인식되고, 형상 (690) 은 단어 (692) 를 포함하는 컨테이너로서 식별된다. 게다가, 단어 (692) 상에 이루어진 제스처 입력 (694) 이 단어 (692) 의 선택으로서 검출되고 식별된다. 제스처 (694) 는, 예를 들어, 도 69a에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다.
도 69b에서, 선택 제스처의 검출은 감소된 강조 (예컨대, 회색으로 표시됨) 를 갖는 그리고 (예컨대, 상이한 컬러로) 하이라이트된 강조로 렌더링되고 (컬러-채움과 함께) 경계 (선택) 박스 (698) 에 의한 경계가 있는 선택된 조판 잉크 단어 (696) 가 오버레이되는 디지털 잉크 단어 (692a) 의 디스플레이가 되게 하면서, 디지털 잉크 원 (690) 의 디스플레이가 유지되게 한다. 이런 식으로, 사용자들에게는, 예를 들어 이동 및 리사이징 동작을 안내하면서 원래의 입력 콘텐츠의 디스플레이를 유지하기 위해, 핸드 드로잉된 텍스트의 조판된 범위의 선택 검출 및 감지의 피드백이 제공된다.
도 70a에서, 핸드 드로잉된 형상 및 텍스트가 각각 디지털 잉크 형상 (700) 및 디지털 잉크 텍스트 (702) 로서 디스플레이된다. 형상 (700) 은 비-텍스트로서 검출되고 타원으로서 인식되며, 텍스트 (702) 는 텍스트로서 검출되고 단어 "Initialization"으로서 인식되고, 형상 (700) 은 단어 (702) 를 포함하는 컨테이너로서 식별된다. 게다가, 타원 (700) 의 경계 또는 주변부 상에 이루어진 제스처 입력 (704) 이 타원 (700) 의 선택으로서 검출 및 식별된다. 제스처 (704) 는, 예를 들어, 도 70a에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다.
도 70b에서, 선택 제스처의 검출은 감소된 강조 (예컨대, 회색으로 표시됨) 를 갖는 그리고 (예컨대, 상이한 컬러 및 타원 내의 컬러-채움으로) 하이라이트된 강조로 렌더링되고 경계 (선택) 박스 (708) 에 의한 경계가 있는 선택된 조판 잉크 타원 (706) 이 오버레이되는 디지털 잉크 타원 (700a) 의 디스플레이가 되게 하면서, 디지털 잉크 단어 (702) 의 디스플레이가 유지되게 한다. 이런 식으로, 사용자들에게는, 예를 들어 이동 및 리사이징 동작을 안내하면서 원래의 입력 콘텐츠의 디스플레이를 유지하기 위해, 핸드 드로잉된 형상의 조판된 범위의 선택 검출 및 감지의 피드백이 제공된다.
도 71a에서, 도 69a의 디지털 잉크 원 (690) 과 디지털 잉크 단어 (692) 가 디스플레이된다. 컨테이너 (690) 내에 이루어지지만 단어 (692) 상에서 이루어지지 않은 제스처 입력 (710) 이 전체 컨테이너, 다시 말하면, 원 (690) 및 텍스트 (692) 둘 다의 선택으로서 검출 및 식별된다. 제스처 (710) 는, 예를 들어, 도 71a에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다.
도 71b에서, 선택 제스처의 검출은 감소된 강조를 가지는 그리고 하이라이트된 강조로 렌더링되고 경계 (선택) 박스 (714) 에 의한 경계가 있는 선택된 조판 잉크 원 (712) 및 선택된 조판 잉크 단어 (696) 가 오버레이되는 디지털 잉크 원 (690a) 및 디지털 잉크 단어 (692a) 의 디스플레이를 하게 한다. 이런 식으로, 사용자들에게는, 예를 들어 이동 및 리사이징 동작을 안내하면서 원래의 입력 콘텐츠의 디스플레이를 유지하기 위해, 전체 핸드 드로잉된 컨테이너의 조판된 범위의 선택 검출 및 감지의 피드백이 제공된다.
도 72a에서, 핸드 드로잉된 형상이 디지털 잉크 형상 (720) 으로서 디스플레이되며, 필기된 텍스트가 디지털 잉크 텍스트 (721) 로서 디스플레이되고, 핸드 드로잉된 입력이 디지털 잉크 입력 (722) 으로서 디스플레이된다. 형상 (720) 은 비-텍스트로서 검출되고 타원으로서 인식되며, 텍스트 (721) 는 텍스트로서 검출되고 단어 "Idea"로서 인식되고, 입력 (722) 이 비-텍스트 또는 정크 중 어느 하나로서 검출되고, 형상 (720) 은 단어 (721) 와 입력 (722) 을 포함하는 컨테이너로서 식별된다. 컨테이너 (720) 내에 이루어지지만 단어 (722) 상에서 이루어지지 않은 제스처 입력 (723) 이 전체 컨테이너, 다시 말하면, 타원 (700), 텍스트 (721) 및 입력 (722) 의 선택으로서 검출 및 식별된다. 제스처 (723) 는, 예를 들어, 도 72a에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다.
도 72b에서, 선택 제스처의 검출은 감소된 강조를 가지는 그리고 하이라이트된 강조로 렌더링되고 경계 (선택) 박스 (726) 에 의한 경계가 있는 선택된 조판 잉크 타원 (724) 및 선택된 조판 잉크 단어 (725) 가 오버레이되는 디지털 잉크 타원 (720a) 및 디지털 잉크 단어 (721a) 의 디스플레이를 하게 한다. 그러나, 입력 (722) 은 비-텍스트로서 분류된다면 인식기 (118) 에 의해 인식 가능하지 않거나 또는 정크로서 분류된다면 인식기에 파싱되지 않는다. 따라서, 비인식된 입력 (721) 은 선택된 디지털 잉크 (727) 로서 디스플레이되는데, 이 디지털 잉크는 낙서로서 하이라이트된 강조와 함께 렌더링된 디지털 잉크 입력 (722) 이다. 이런 식으로, 사용자들에게는, 예를 들어 이동 및 리사이징 동작을 안내하면서 원래의 입력 콘텐츠의 디스플레이를 유지하기 위해, 전체 핸드 드로잉된 컨테이너의 조판된 범위의 선택 검출 및 감지의 피드백이 제공된다.
도 69 내지 도 72에서, 검출된 도식 엘리먼트들의 선택 유형은 도식 엘리먼트들에 관한 선택 제스처의 검출된 포지션에 의존한다. 다시 말하면, 이들 예들의 텍스트를 포함하는 컨테이너들의 경우, 제스처 포지션에 의존하여, 컨테이너만, 텍스트만, 또는 컨테이너 및 그것의 포함된 엘리먼트들 중 어느 하나 (비-텍스트 및 텍스트 중 어느 하나 또는 양쪽 모두) 가 선택된다. 그러나 다른 선택 행동이 가능하다. 예를 들어, 컨테이너 및 그것의 포함된 엘리먼트들 내 또는 상의 임의의 포지션에서의 선택 제스처가 전체 컨테이너의 선택을 야기할 수도 있다. 게다가, 다른 형상들을 포함할 수도 있는 컨테이너들과, 텍스트만을 포함하는 컨테이너들인 셀들 사이의 구별이 이루어질 수도 있다. 그래서 셀 및 그것의 포함된 텍스트 내 또는 그 상의 임의의 포지션에서의 선택 제스처가 전체 셀의 선택을 야기할 수도 있는 한편, 컨테이너로 이루어진 유사한 선택들이 도 69 내지 도 72에서 도시된 선택들을 야기한다.
디지털 잉크 디스플레이 위의 선택된 조판 잉크의 위에서 설명된 오버레이는 다른 선택된 도식 엘리먼트들, 특히, 커넥터들에 또한 적용 가능하다. 이들 선택 모드 예들에 대해 대안적으로 또는 추가적으로, 비록 선택 모드 렌더링이 없더라도, 사용자들이 도식 엘리먼트들 자체를 조판하는 일 없이 디지털 잉크의 조판된 버전을 미리보기하는 것을 허용하기 위해 디지털 및 조판 잉크의 유사한 오버레이된 디스플레이가 제공될 수도 있다. 미리보기 모드는, 예를 들어, 짧은 탭 또는 도식 엘리먼트 위의 사용자의 손가락 또는 스타일러스의 '호버 (hover) '와 같은 미리보기 제스처의 검출 시, 개시된다.
예시적인 입력으로 되돌아가면, 도 42a에서, 후속 선택 제스처의 검출은 선택 모드 속성들을 갖는, 선택된 조판 라벨 (1106c) 및 선택된 조판 라벨 (1109c) 의 디스플레이에 의해 대체되는 라벨 (1109a) 에 관한 선택 박스 (1131) 의 확장된 디스플레이를 하게 함으로써, 사용자에게 식별된 제스처의 시각적 피드백을 제공한다. 도 42b에서, 후속 선택 제스처의 검출은 선택된 조판 라벨 (1106c) 과 선택된 조판 라벨 (1109c) 의 디스플레이에 의해 또한 대체되는 조판 라벨 (1109b) 을 둘러싸는 선택 박스 (1131) 의 확장된 디스플레이를 하게 한다. 추가의 제스처 입력들 (1132) 이 도 42a에서의 커넥터 (1103a) 의 라벨 (1113a), 커넥터 화살표 (1110a) 의 라벨 (1112a) 및 커넥터 화살표 (1110a) 자체와, 도 42b에서의 조판 커넥터 (1103b) 의 조판 라벨 (1113b), 조판 커넥터 화살표 (1110b) 의 조판 라벨 (1112b) 및 조판 커넥터 화살표 (1110b) 자체의 선택들로서 검출 및 식별된다.
도 43a에서, 추가의 선택 제스처들의 검출은 다중 선택된 엘리먼트들 (1103a, 1106a, 1109a, 1110a, 1112a 및 1113a) 및 선택된 조판 라벨 (1112c), 선택 모드 속성들을 갖는 라벨들 (1112a 및 1113a) 및 커넥터 (1110a) 각각을 위한 선택된 조판 라벨 (1113c) 및 선택된 조판 커넥터 (1110c) 에 관한 선택 박스 (1131) 의 추가의 확장을 하게 함으로써, 사용자에게 인식의 시각적 피드백을 제공한다. 도 43b에서, 추가의 선택 제스처들의 검출은 다중 선택된 조판 엘리먼트들 (1103b, 1106b, 1109b, 1110b, 1112b 및 1113b) 과 조판 라벨들 (1112b 및 1113b) 및 조판 커넥터 (1110b) 각각을 위한 선택된 조판 라벨들 (1112c 및 1113c) 및 커넥터 (1110c) 에 관한 선택 박스 (1131) 의 추가의 확장을 하게 한다.
도 44a 및 도 44b에서, 제스처 입력 (1133) 이 선택 박스 (1131) 의 선택으로서 검출된다. 제스처 (1133) 는, 예를 들어, 도 44에 묘사된 바와 같이, 선택 박스 (1131) 내부이지만 그 속의 도식 엘리먼트들 중 임의의 도식 엘리먼트 상은 아닌 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다. 이 인식된 제스처에 응답하여, 애플리케이션 (112) 은 선택 박스 (1131) 내의 선택된 엘리먼트들 상에서 수행될 수 있는 특정한 편집 옵션들을 디스플레이하는 선택 메뉴 (1134) 를 디스플레이한다. 예를 들어, 복제 (Duplicate), 복사 (Copy) 및 붙여넣기 (Paste) 의 옵션들이 메뉴에 의해 제공된다. '팝업 (pop-up) ' 또는 주문형 메뉴의 이러한 제공은 단지 일 예이고, 제스처의 사용을 통해 선택되어 있는 디폴트 동작만 또는 상이한 동작들을 위한 상이한 제스처들과 같은 편집 동작들을 제공하는 다른 메커니즘들이 사용될 수 있다.
도 45a 및 도 45b에서, 제스처 입력 (1135) 이 메뉴 (1134) 로부터의 Duplicate 동작의 선택으로서 검출되어 도 45a에서의 라벨들 (1106a, 1109a, 1112a 및 1113a) 의 선택된 엘리먼트들과 커넥터 화살표 (1110a) 와 도 45b에서의 조판 라벨들 (1106b, 1109b, 1112b 및 1113b) 및 조판 커넥터 화살표 (1110b) 가 복제되게 한다. 복제 엘리먼트들은 선택된 모드 렌더링에서 선택 박스 (1131) 에 복제된 원래의 엘리먼트들과는 동일한 위치적 관계들로 유지되지만, 복제된 엘리먼트들의 디스플레이는 정상적 렌더링으로 복귀하거나 또는 도 47에서처럼 감소된 강조를 갖는 비-선택된 렌더링으로 되돌아간다. 제스처 (1130) 는, 예를 들어, 도 45에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 누름이다. 게다가, 복제 동작은, 예를 들어, 임의의 선택된 텍스트를 생략하도록 구성될 수 있어서 도식의 구조가 라벨들을 소거/대체하는 일 없이 복사될 수 있다.
도 46a 및 도 46b에서, 제스처 입력 (1136) 이 선택 박스 (1131) 상의 화살표 (A) 의 방향으로의 이동 동작으로서 검출된다. 제스처 (1136) 는, 예를 들어, 도 46에 묘사된 바와 같이, 선택 박스 (1131) 내부이지만 그 속의 도식 엘리먼트들 중 임의의 도식 엘리먼트 상은 아닌 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭 앤드 슬라이드 (tap-and-slide) (이를테면 드래그 또는 푸시) 이다.
도 47a 및 도 47b에서, 이동 동작의 완료가 검출되고, 컨테이너 (1129a 또는 1129b) 에 인접하게 위치된 선택된 조판 라벨 (1106c), 커넥터 (1125a 또는 1125b) 에 인접하게 위치된 선택된 조판 라벨 (1109c), 커넥터 (1103a 또는 1103b) 에 인접하게 위치된 선택된 조판 라벨 (1112c), 커넥터 화살표 (1110a 또는 1110b) 에 인접하게 위치된 선택된 조판 라벨 (1113c) 및 컨테이너들 (1117a 및 1119a 또는 1117b 및 1119b) 을 연결하도록 위치된 선택된 조판 커넥터 화살표 (1110c) 의 디스플레이가 각각 이루어진다. 따라서, 이미 드로잉되고 인식된 도식 엘리먼트들은 도식의 다른 부분들에서 재사용되거나 또는 그러한 다른 부분들로 이동될 수 있거나, 또는 도식들이 만들어지고 있을 때 다른 도식들에 대해 재사용되거나 또는 이동될 수 있다. 이 프로세스에서, 복제 화살표 (1110) 는, 앞서 설명된 방식으로, 원래의 커넥터 화살표 (1110) 의 커넥터 스테이터스, 컨테이너들 (1117 및 1119) 의 컨테이너 스테이터스, 및 아니면 이들 엘리먼트들의 상대 포지션들 및 특성들로 인해 컨테이너들 (1117 및 1119) 을 연결하는 커넥터로서 식별된다.
도 48a 및 도 48b에서, 제스처 입력 (1137) 이 선택 해제 제스처로서 검출되고 응답하여 선택 박스 (1131) 의 디스플레이가 생략되고 선택 해제된 도식 엘리먼트들의 선택 모드 조판 디스플레이가 정상적인 디지털 잉크 또는 조판 디스플레이 버전들로 되돌아가는 디스플레이에서 생략되고, 다른 비-선택된 도식 엘리먼트들의 디스플레이는, 다중-선택 모드에 대해 이용 가능하다면, 정상적 렌더링으로 복귀된다. 제스처 (1137) 는, 예를 들어, 도 48에 도시된 바와 같이, 선택 박스 (1131) 외부의 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 짧은 탭이다.
도 49a에서, 제스처 입력 (1138) 이 복제 커넥터 화살표 (1110a) 의 선택으로서 검출된다. 도 49b에서, 제스처 입력 (1138) 은 복제 조판 커넥터 화살표 (1110b) 의 선택으로서 검출된다. 제스처 (1133) 는, 예를 들어, 도 49에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 짧은 탭이다. 따라서, 짧은 탭 선택 제스처는 단일-선택 모드, 즉, 도 68의 예에서 도시된 바와 같은 단일 도식 엘리먼트의 선택을 개시하는 것으로서 애플리케이션 (112) 에 의해 식별되어서, 애플리케이션 (112) 은 선택된 엘리먼트에 대해 수행되는 후속 동작을 예상한다.
도 50a에서, 선택 검출에 따라서, 커넥터 화살표 (1110a) 는 선택 모드 속성들을 갖는 선택된 조판 화살표 (1110c) 의 디스플레이에 의해 대체됨으로써, 사용자에게 검출의 시각적 피드백을 제공한다. 도 50b에서, 선택 검출에 따라서, 조판 커넥터 화살표 (1110b) 는 선택된 조판 화살표 (1110c) 의 디스플레이에 의해 대체된다. 위에서 설명된 다중 선택 모드와는 달리, 사용자들의 동작들 동안 커넥터의 명확한 디스플레이를 제공하기 위하여 선택 박스가 커넥터 선택 모드에서 또한 사용되지 않는다.
도 51a 및 도 51b에서, 제스처 입력 (1139) 이 굽은 커넥터 화살표 (1110c) 상의 이동 동작으로서 화살표 B의 방향에서 화살촉을 갖는 커넥터 화살표 스템의 부분 및/또는 화살촉에서 검출된다. 제스처 (1139) 는, 예를 들어, 도 51에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭 앤드 슬라이드이다. 커넥터 화살표 (1110c) 가 컨테이너들 (1117 및 1119) 에 연결되는 커넥터이므로, 이동 제스처는 컨테이너 (1117) 에 연결되는 화살촉 스템 부분에만 관계된 것으로서 식별되어서, 컨테이너 (1119) 에 연결되거나 또는 앵커링되는 커넥터 화살표 (1110c) 의 단부는 이동 동작 동안 영향을 받지 않는다. 그러므로 이동 동작 동안 커넥터 화살표 (1110) 는 컨테이너 (1117) 로부터 분리되고 굽은 커넥터 화살표 (1110c) 의 특정한 부분들의 리사이징 및 재-디스플레이가 이루어지며, 주로 각각의 컨테이너들에 연결되는 수직 스템 부분들은 연결시키는 수평 스템 부분이 화살촉 스템의 움직임을 수용하도록 리사이징된다. 이러한 이동 동작들 동안, 특히, 사용자의 손가락이 사용된다면, '렌즈'와 같은 특정 시각적 피드백이 오브젝트들과의 상호작용을 안내하기 위해 디스플레이될 수도 있다.
도 52a 및 도 52b에서, 이동 동작의 완료가 검출되고, 더욱 중앙이 되도록 다시 위치되는 컨테이너 (1110) 의 경계에서의 굽은 커넥터 화살표 (1110c) 의 화살촉의 연결 또는 앵커 포인트의 디스플레이가 이루어지고, 제스처 입력 (1140) 이 선택 해제 제스처로서 검출되고 식별된다. 제스처 (1140) 는, 예를 들어, 커넥터 (1110) 로부터 원격인 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 짧은 탭이다. 이 이동 동작은 애플리케이션 (112) 에 의해 이루어지는 접속 지점들의 렌더링 및 재포지셔닝을 사용자들이 쉽게 조정할 수 있는 방법을 예시한다. 애플리케이션 (112) 은 인식된 도식을 아름답게 만들면서 사용자의 원래의 핸드 드로잉된 입력에 가능한 적은 변화로 수행함으로써 균형을 잡으려고 하여서, 그 도식은 디지털 도식들을 생성하기 위한 다수의 가용 기법들을 사용하여 생성될 수 있는 조판 형태로 문서의 궁극적으로 만들어진 일부가 될 수 있다.
도 53a에서, 선택 해제의 검출은 선택된 조판 커넥터 (1110c) 가 생략되게 하고 디지털 잉크 커넥터 (1110a') 로서 커넥터의 디스플레이를 하게 한다. 도 53b에서, 선택 해제의 검출은 선택된 조판 커넥터 (1110c) 가 생략되게 하고 조판 잉크 커넥터 (1110b') 로서 커넥터의 디스플레이를 하게 한다. 새로이 디스플레이되는 커넥터들 (1110a' 및 1110b') 은 각각 이전에 디스플레이된 디지털 잉크 커넥터 (1110a) 및 조판 잉크 커넥터 (1110b) 의 리사이징된 버전들이다. 조판 잉크 커넥터의 리사이징 동작은 간단하고 본 기술분야의 통상의 기술자에게 널리 공지된 기법들을 사용하여 성취된다. 그러나, 디지털 잉크의 리사이징 동작은 간단하지 않아 결과적인 조작된 디지털 잉크가 원래 드로잉된 잉크와 상당히 상이하게 되는 것을 피하기 위해서 기존에서와 같이 디지털 잉크의 단순한 스케일링 또는 정규화가 수행되지 않는다면, 디지털 잉크를 추가로 조작하는 불필요한 사용자 상호작용을 피한다. 커넥터의 디지털 잉크와, 다른 엘리먼트들이, 본원의 시스템 및 방법에서의 리사이징 동작으로 조작되는 방식이 도 73 내지 도 77을 참조하여 이제 설명된다.
도 73a는 굽은 또는 U자 형 커넥터 (734) 에 의해 연결되는 박스 (730) 및 박스 (732) 의 핸드 드로잉된 입력을 도시한다. 도 73b는 커넥터 (734') 로서 디스플레이되는 커넥터 (734) 의 리사이징을 야기하는 박스들 (730 및 732) 중 각각의 박스에 대한 이동 동작들의 수행 후의 도 73a의 핸드 드로잉된 입력을 도시한다. 특히, 박스 (730) 는 우측으로 이동하여 박스 (730) 에 연결된 커넥터 (734) 의 아암 (734a) 의, 커넥터 (734') 의 아암 (734a') 으로서 디스플레이되는 단축을 야기하고, 박스 (732) 는 좌측으로 이동하여 박스 (732) 에 연결된 커넥터 (734) 의 아암 (734b) 의, 커넥터 (734') 의 아암 (734b') 으로서 디스플레이되는 신장을 야기한다. 이동 동작들은 아암들 (734a 및 734b) (과 그러므로 커넥터 (734') 의 아암들 (743a' 및 743b')) 을 연결하는 것으로서 식별되는 커넥터 (734) 의 아암 (734c) 에 영향을 미치지 않는다. 다시 말하면, 본원의 시스템 및 방법은 굽은 커넥터들, 또는 다른 멀티-아암 커넥터들을, 각각의 서브-커넥터가 컨테이너와 다른 서브-커넥터와 같은 형상에, 또는 두 개의 (또는 더 많은) 다른 서브-커넥터들에 연결하는 다수의 연결 부분들 또는 서브-커넥터들로 형성된 것으로서 취급한다. 이런 식으로, 서브-커넥터들은 다른 서브-커넥터들과는 독립적으로 조작될 수 있으면서도 전체로서의 커넥터의 연결들 (예컨대, 조합된 서브-커넥터들) 이 유지된다. 알 수 있는 바와 같이 커넥터 (734) 의 디지털 잉크 렌더링된 특성들 (잉크 무게와 일반적인 형상을 포함함) 은 리사이징된 커넥터 (734') 의 디지털 잉크 렌더링에서 실질적으로 유지된다. 이를 성취하는 방식이 커넥터 (734) 의 아암 (734b) 이 본원의 시스템 및 방법의 동작을 예시하는데 사용되는 도 73c 내지 도 73e에 관하여 이제 설명된다.
도 73c는 도 73a의 커넥터 (734) 의 아암 (734b) 의 (또한 박스 (732) 및 아암 (734c) 의 일부 부분들과 함께) 줌인된 뷰이다. 도 73d는 도 73b의 커넥터 (734') 의 아암 (734b') 의 (또한 박스 (732) 및 아암 (734c) 의 동일한 부분들과 함께) 줌인된 뷰이다. 도 73c 및 도 73d의 줌인된 뷰들은 동일한 크기라서 아암들 (734b 및 734b') 의 줌인된 치수들이 동일하다. 도 73e는 도 73d의 아암 (734b') 의 더 큰 길이와 일치하기 위한 크기로, 도 73c에 묘사된 바와 같은 아암 (734b) 의 추가로 줌인된 뷰이다. 따라서, 도 73e는 아암 (734b') 의 리사이징된 길이를 제공하기 위한 아암 (734b) 의 스케일링을 예시한다. 알 수 있는 바와 같이, 아암 (734b) 의 스케일링된 디지털 잉크는 비-스케일링된 디지털 잉크와는 상당히 상이하고, 그러므로 바람직하지 않다.
기존의 정규화는 도 73e에 관련하여 이제 설명되는 두 개의 상이한 기법들로 이 문제를 다룬다. 제 1 기법에서, 스케일링된 아암 (734b) 의 수평 방향을 따르는 평균 중심 선이 취해지고 원래의 잉크 무게 (즉, 비-스케일링된 아암 (734b) 의 평균 중심 선으로부터의 수평 에지들의 평균 거리) 는 스케일링된 아암 (734b) 의 수평 에지들을 버리기 위해, 그 평균 중심 선에 관해 디지털 잉크를 재생하는데 사용된다. 이 동작은 스케일링 업 렌더링을 제거하지만, 통상적으로 원래의 디지털 잉크의 에지들보다 훨씬 더 큰 균일성을 갖는 리사이징된 디지털 잉크 엘리먼트의 에지들을 초래함으로써 외관을 상당히 변경시킨다. 제 2 기법에서, 스케일링된 아암 (734b) 의 수평 에지들이 취해지고 원래의 잉크 무게는, 스케일링된 아암 (734b) 의 중앙 잉크를 버리기 위해, 에지들로부터 디지털 잉크를 재생하는데 사용된다. 이 동작은 또한 스케일링 업 렌더링을 제거하지만, 통상적으로 원래의 디지털 잉크의 에지들보다 훨씬 더 작은 균일성을 갖는 리사이징된 디지털 잉크 엘리먼트의 에지들을 초래함으로써 외관을 상당히 변경시킨다. 이들 문제들은 리사이징 동작이 사이즈의 축소인 경우 동일하게 적용 가능하다.
본원의 시스템 및 방법에서, 디지털 잉크의 비-스케일링된 버전 및 스케일링된 버전의 양태들은 원래의 디지털 잉크 엘리먼트들의 유지된 특징들을 갖는 리사이징된 디지털 잉크 엘리먼트들을 제공하도록 결합된다. 다시 말하면, 아암 (734b) 의 단부들에서의 부분들 (A) 은, 도 73c 및 도 73d에 도시된 바와 같이, 리사이징된 아암 (734b') 에서 비-스케일링된 형태로 유지된다. 이들 부분들의 길이들은 특성 및 현저한 특징들, 이를테면 벤드 커넥터들 (도 73에서와 같음) 의 코너들, 화살표 커넥터들의 화살촉들, 및 다른 형상들에의 조인트들이 리사이징된 커넥터에서 유지되도록 정의된다. 이런 식으로, 특히 화살촉들은 리사이징되지 않는다. 단부 부분들 (A) 사이의 아암 (734b) 의 단면에서, 도 73c에서의 부분 (B) 과 같은 상대 균일성 (즉, 수평 에지들 및 중심 평균에서 수평 방향을 따르는 수직 오프셋에서의 점진적인 변화들) 의 영역들과, 도 73c에서의 부분 (C) 과 같은 상대적으로 높은 변동성 (즉, 수평 에지들 및 중심 평균 선에서 수평 방향을 따르는 수직 오프셋에서의 갑작스런 변화들) 의 영역들이 결정된다.
상대 균일성의 영역들의 경우, 비-리사이징된 잉크 무게로 조정된 잉크 무게를 갖는 스케일링된 아암의 수평 에지들이 취해지고 중앙 수평 부분은 버려지고, (도 73d에 도시된 바와 같이) 리사이징된 아암 (734b') 에서의 부분 (B') 으로서 렌더링된다. 상대 균일성으로 인해, 리사이징된 디지털 잉크의 이 부분은 원래의 비-리사이징된 디지털 잉크와 실질적으로 유사하다는 것을 알 수 있다. 높은 변동성의 영역들의 경우, 비-리사이징된 잉크 무게로 조정된 잉크 무게를 갖는 스케일링된 아암의 중심 평균 선이 취해지고 에지들은 버려지고, (도 73d) 에 도시된 바와 같이) 리사이징된 아암 (734b') 에서의 부분 (C') 으로서 렌더링된다. 일부 변동성의 유지로 인해, 리사이징된 디지털 잉크의 이 부분은, 특히 도 73a 및 도 73b의 줌되지 않은 뷰들에서 원래의 비-리사이징된 디지털 잉크와 실질적으로 유사하다는 것을 알 수 있다. 비-텍스트 및 텍스트 둘 다의 모든 도식 엘리먼트들의 디지털 잉크는, 리사이징 동작들을 위해 동일한 방식으로 취급될 수 있다. 이 취급은 양태, 방향 등에서의 변화들과 같은 다른 작업들을 위해 또한 이루어질 수 있다.
예를 들어, 도 74 및 도 75는 디지털 잉크 박스들에 대한 이동 동작들을 연관되는 디지털 잉크 커넥터들에 대한 결과적인 효과와 함께 도시한다. 도 74a에서, 박스 (740) 가 선택 제스처 (741) 의 검출에 응답하여 선택되고 화살표 (F) 의 방향으로 이동된다. 박스는 두 개의 연관된 커넥터들, 굽은 개방 촉 화살표 커넥터 (742) 및 직선형 개방 촉 화살표 커넥터 (743) 를 가진다. 이동 동작의 완료 시의 조정된 디스플레이는 도 74b에서 도시되는데, 그 도면에서 커넥터들 (742 및 743) 이 조정된 커넥터들 (742' 및 743') 로서 각각 디스플레이된다. 굽은 커넥터 (742) 는 위에서 설명된 방식으로 각각의 아암이 신장된 별개의 아암들로 조정된다. 알 수 있는 바와 같이, 커넥터 (742) 의 화살촉의 치수들은 조정된 커넥터 (742') 에서 유지된다.
도 74a에서 실질적으로 수직으로 디스플레이되는 커넥터 (743) 는 위에서 설명된 방식으로 단축되도록 조정되고 도 74b에서 조정된 커넥터 (743') 로서 수직에 대해 경사진 각도로 디스플레이된다. 알 수 있는 바와 같이, 커넥터 (743) 의 화살촉의 치수들은 조정된 커넥터 (743') 에서 유지된다. 커넥터의 각도에서의 변경은 커넥터의 기하구조를 유지하기 위해서 수행되고, 예컨대, 조정된 커넥터 (743') 는 원래의 커넥터 (743) 처럼 실질적으로 직선이 되도록 렌더링되고 박스 (740) 의 이동으로 인해 곡선이 되지 않게 한다. 이러한 만곡화 (curving) 는, 예를 들어, 커넥터 (743) 의 박스 (740) 및 다른 박스 (744) 에의 연결 또는 앵커 지점들이 조정된 커넥터 (743') 에 대해 유지되었다면 요구될 것이다. 그러나, 커넥터의 기하구조를 유지하도록 그리고 이동 동작 동안 및 후에 센시블 (sensible) 재-디스플레이를 제공하도록 연결 지점들의 조정이 이루어진다. 이는 각각의 연결된 형상의 기하구조의 중심을 고려함으로써 본원의 시스템 및 방법에서 성취된다.
도 74a에서 알 수 있는 바와 같이, 박스들 (740 및 744) 의 기하구조의 중심과, 다른 연결된 박스들 (745 및 746) 은, 교차마크 (G) 에 의해 나타내어진 바와 같이 애플리케이션 (112) 에 의해 결정된다. 기하구조의 각각의 중심과 커넥터의 기하구조를 고려한 연관된 커넥터 사이의 연결 경로는 또한 결정되어, 박스들 (740 및 745) 사이의 커넥터 (742) 에 대해, 예를 들어, 굽은 커넥터 (742) 의 '엘보우'에서 구부러진 파선 (747) 으로서 도시된다. 박스 (740) 가 이동될 때, 연결된 박스들의 기하구조의 중심들 사이의 결정된 연결 경로들은, 예를 들어, 도 74b에 도시된 바와 같이 경로 기하구조를 유지하면서 기하구조의 중심들 사이에 남아 있도록 조정되며, 연결 경로 (747) 는 자신의 굽은 기하구조를 유지하고 직선형 커넥터 (743) 의 연결 경로 (748) 는 수직에 대해 각이 지도록 박스들 (740 및 744) 의 무게 중심들 사이에 자신의 직선형 기하구조를 유지한다. 따라서, 조정된 굽은 커넥터 (742') 는 조정된 연결 경로 (747) 를 따라 렌더링되고 조정된 커넥터 (743') 는 조정된 연결 경로 (748) 를 따라 렌더링된다. 기하구조의 중심들 및 연결 경로들에 대해 묘사된 마크들은 도면들에서 예시 목적만으로 제공되고, 애플리케이션 (112) 에 의해 사용자들에게 통상적으로 디스플레이되지 않는다는 것에 주의한다. 그러나, 애플리케이션 (112) 의 UI는 이러한 마킹들을 참조를 위해, 예를 들어 편집 동작들 동안 디스플레이하는 능력을 사용자들에게 제공할 수도 있다.
도 75a에서, 박스 (750) 가 선택 제스처 (751) 의 검출에 응답하여 선택되고 화살표 (H) 의 방향으로 이동된다. 박스는 두 개의 연관된 커넥터들, 즉, 제 1 개방 촉 화살표 커넥터 (752) 와 제 2 개방 촉 화살표 커넥터 (753) 를 가지며 (하지면 본 예에서 더 많이 가질 수도 있음), 커넥터들의 둘 다는 실질적으로 직선형 기하구조를 가지고 실질적으로 서로 평행하다. 이동 동작의 완료 시의 조정된 디스플레이는 도 75b에서 도시되는데, 그 도면에서 커넥터들 (752 및 753) 이 조정된 커넥터들 (752' 및 753') 로서 디스플레이된다. 도 75a에서 실질적으로 수평으로 디스플레이되는 커넥터들 (752 및 753) 은 앞서 설명된 방식으로 신장되도록 조정되고 실질적으로 평행한 정렬을 유지하면서 조정된 커넥터들 (752' 및 753') 로서 수평에 대해 경사진 각도로 디스플레이된다. 알 수 있는 바와 같이, 커넥터들 (752 및 753) 의 화살촉의 치수들은 조정된 커넥터들 (752' 및 753') 에서 유지된다.
도 74의 예와는 달리, 박스 (750) 및 연결된 박스 (754) 의 기하구조의 중심들 (G) 로부터의 경로는 평행 정렬된 커넥터들 (752 및 753) 을 통해 유동하지 않는다. 따라서, 평행한 커넥터들에 대해 자신들 사이의 실질적으로 중앙에서 일반적으로 실질적으로 평행하게 연장하는 공통 연결 경로를 결정함으로써 커넥터들의 실질적 평행 정렬은 이동 동작에서 준수된다. 박스 (750) 가 이동될 때, 공통 연결 경로는, 예를 들어, 도 75b에 도시된 바와 같이, 경로 기하구조를 유지하면서 기하구조의 중심들 사이에 남아 있도록 조정되며, 공통 연결 경로 (755) 는 수평에 대해 각이 지도록 자신의 직선형 기하구조를 박스들 (750 및 754) 의 기하구조의 중심들 사이에 유지한다. 조정된 커넥터들 (752' 및 753') 은 원래의 커넥터들 (752 및 753) 의 평행 분리를 유지하기 위해서 조정된 공통 연결 경로 (755) 를 따라 렌더링된다.
게다가, 도 76은 연관된 디지털 잉크 커넥터 라벨에 대한 결과적인 영향을 갖는 디지털 잉크 커넥터에 대한 이동 동작을 도시한다. 도 76a는, 디지털 잉크로 렌더링되는 핸드 드로잉된 도식 (760) 을 도시한다. 도 76b에서, 커넥터 (761) 의 선택은 전술한 선택 모드 조판 디스플레이를 통해 디스플레이된다. 덧붙여서, 선택된 커넥터 (761) 의 커넥터 스테이터스는 커넥터 (761) 의 단부들에서 연결 지점들 (762 및 763) 의 디스플레이를 통해 나타내어진다. 선택된 커넥터는 단부 (763) 에서 그리고 이동 연결 구역 (764) 이 디스플레이되는 동안 화살표 (I) 의 방향으로 이동되도록 도모된다. 도 76의 예에서, 연결 구역은 커넥터들과의 상호작용이 중단되면 그 시점에 그들 엘리먼트들에의 연결을 유발하기 위해 커넥터들의 하나 이상의 단부들이 다른 도식 엘리먼트들에 대한 적합한 근접거리 (앞서 설명된 바와 같이 결정됨) 내에 있을 때를 나타내기 위해 사용자들을 커넥터들과의 상호작용 동안 안내하는 선택 모드 컬러로 컬러-채움된 원으로서 디스플레이된다. 따라서, 커넥터 (761) 의 단부 (763) 가 컨테이너들 (765 및 766) 로부터 너무 멀리 이동되면, 연결 구역 (764) 의 디스플레이는 그 단부가 다른 엘리먼트에 다시 근접하기까지 중단된다. 알 수 있는 바와 같이, 커넥터들은 컨테이너들 내에 서브-컨테이너들을 포함하는 형상들 및 텍스트에 접속될 수 있다.
도 76c에서, 단부 (763) 가 새로운 연결 지점 (763') 에서 컨테이너 (765) 에 연결되도록 커넥터 (761) 는 이동된다. 그 결과, 컨테이너 (765) 및 단부 (762) 가 연결되는 컨테이너 (767) 에 대한 커넥터 (761) 의 각도는, 앞서 설명된 방식으로, 커넥터 (761) 의 리사이징 및 재-디스플레이로 조정된 커넥터 (761') 로서 조정된다. 알 수 있는 바와 같이, 커넥터 (761) 의 포지션 및 배향의 이 조정은 커넥터 (761) 에 연관된 텍스트 라벨 (768) 의 포지션의 결과적인 조정을 하게 하는데, 그 연관은 앞서 설명된 방식으로 결정된다. 예를 들어, 텍스트 (이를테면 인식된 텍스트의 무게중심 (barycenter) 에서임) 와 커넥터 (761) 사이의 평균 거리를 유지하기 위해서 라벨 (768) 의 조정은 수행된다. 따라서, 사용자들의 커넥터 (761) 의 라벨링은 이동 동작을 통해 준수된다. 게다가, 도 76c에서, 커넥터 (761') 는 단부 (762) 에서 그리고 이동 연결 구역 (764) 이 다시 디스플레이되는 동안 화살표 (J) 의 방향으로 다시 이동되도록 도모된다.
도 76d에서, 단부 (762) 가 새로운 연결 지점 (762') 에서 컨테이너 (767) 에 연결되도록 커넥터 (761') 는 이동된다. 그 결과, 컨테이너들 (765 및 767) 에 대한 커넥터 (761') 의 각도는, 앞서 설명된 방식으로, 커넥터 (761') 의 리사이징 및 재-디스플레이로 조정된 커넥터 (761'') 로서 조정된다. 알 수 있는 바와 같이, 커넥터 (761') 의 포지션 및 배향의 이 조정은 텍스트 라벨 (768) 의 포지션의 결과적인 조정을 다시 야기한다. 제스처 (769) 가 선택 해제 제스처로서 검출되고, 그에 따라 도식 (760) 은 도 76e에서 도시된 바와 같이 이동된 커넥터 (761) 및 연관된 텍스트 라벨 (768) 과 함께 디스플레이된다.
특히 조직표들 (도 4 참조) 에서 사용되는 가지형 커넥터들과 같은 디지털 잉크에서의 복잡한 커넥터들에 대한, 또는 그러한 커넥터들에, 핸드 드로잉된 도식들의 사용자들의 의도를 유지하는 방식으로, 영향을 미치는 편집 동작들의 핸들링은 본원의 시스템 및 방법에 의해 또한 제공된다. 도 77a는 세 개의 레벨들의 계층적 구조를 갖는 차트로서 디지털 잉크로 렌더링되는 핸드 드로잉된 도식 (770) 을 도시한다. 차트의 제 2 레벨에서의 박스 (771) 가 선택 제스처 (772) 의 검출에 응답하여 선택되고 화살표 (K) 의 방향으로 이동된다. 박스는 네 개의 연관된 커넥터들, 즉, 차트의 제 1 레벨에 대한 가지형 커넥터 (773) 와 차트의 제 3 레벨에 대한 세 개의 '직선형' 커넥터들 (774) 을 가진다. 가지형 커넥터 (773) 는, 제 1 레벨에서 몸통부 (trunk) (773a) 로부터 박스 (775) 까지 수직 상향으로 연장하는 상부 가지 (773b) 와, 제 2 레벨에서 몸통부 (773a) 로부터 박스 (771) 및 두 개의 박스들 (776) 까지 수직 하향으로 연장하는 세 개의 하부 가지들 (773c) 을 가지는 수평 방향으로 배치된 몸통부 (773a) 로 형성된 서브-커넥터들을 갖는, 미리 설명된 바와 같은, 복잡한 또는 다중-커넥터인 것으로서 본원의 시스템 및 방법에 의해 검출된다. 박스 (771) 와 박스들 (776) 은 제 3 레벨에서, 각각 커넥터들 (774) 및 커넥터들 (777) 을 통해 텍스트 블록들 (778) 에 연결된다.
이동 동작의 완료 시의 조정된 디스플레이는 도 77b에서 도시되는데, 그 도면에서 커넥터들 (773 및 774) 이 조정된 커넥터들 (773' 및 774') 로서 각각 디스플레이된다. 알 수 있는 바와 같이, 직선형 커넥터들 (774) 은 위에서 설명된 방식으로 신장되도록 조정되고, 가지형 커넥터 (773) 는 가지 (773b) 가 조정된 가지 (773b') 로서 단축되도록 조정되며, 박스들 (776) 에 연결된 가지들 (773c) 은 조정된 가지들 (773c') 로서 신장되며, 이동된 박스 (771) 에 연결된 가지 (773c) 는 조정된 가지 (773c'') 로서 단축되고, 몸통부 (773a) 는 조정 없이 유지되지만, 몸통부 (773a) 의 상대 수직 포지션은 아래의 박스 (771) 의 이동을 수용하도록 상향으로 이동되고 있다. 이런 식으로, 제 1 및 제 2 레벨 박스들의 상대 포지션들이 제 3 레벨의 텍스트 블록들의 상대 포지션들과 같이 유지되므로, 핸드 드로잉된 차트의 계층적 구조는 준수된다. 대안적으로, 계층적 구조가 중요하지 않은 것으로 결정되면, 이동된 박스 (771) 에 커넥터들 (774) 을 통해 연결된 텍스트 블록들 (778) 은, 몸통부 (773a) 의 상대 포지션을 조정하지 않음으로써 가지형 커넥터의 몸통부 위로 이동되는 커넥터들 (774), 및/또는 박스 (771) 와, 자신의 연관된 커넥터들 및 텍스트 블록들을 조정하지 않음으로써, 박스 (771) 와 함께 이동될 수도 있다. 게다가, 이동 동작이 박스들을 서로 더 멀어지거나 또는 더 가까워지도록 하면, 몸통부 자체는 길이가 감소되거나 또는 증가될 수도 있다.
도식들의 형상 및 텍스트 엘리먼트들에 대한 이들 예시적인 편집 동작들로부터, 핸드 드로잉된 도식들의 디지털 잉크 엘리먼트들과의 상호작용들의 큰 범위가, 그들 상호작용들의 효과들 및 결과들이 디지털 잉크 자체에 유지되는 본원의 시스템 및 방법에 의해 제공된다는 것이 이해된다. 따라서, 편집이 수행되는 것을 허용하기 위하여 도식들의 조판 버전으로 변환할 필요 없이, 자신들의 핸드 드로잉된 콘텐츠를 통한 일관된 제어가 사용자들에게 제공된다.
예시적인 입력으로 되돌아가면, 도 53a 및 도 53b에서, 제스처 입력 (1141) 이 선택 제스처로서 검출된다. 제스처 (1141) 는, 예를 들어, 도식 엘리먼트들 중 임의의 도식 엘리먼트 상이 아닌, 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 누름이다. 따라서, 긴 누름 선택 제스처는 자유-선택 모드, 예컨대, 하나 이상의 도식 엘리먼트들의 자유형 선택 또는 이른바 "올가미 (lasso)" 제스처를 개시하는 것으로서 애플리케이션 (112) 에 의해 식별되어서, 애플리케이션 (112) 은 선택된 엘리먼트들에 대해 수행되는 후속 동작을 예상한다. 이 식별에 응답하여, 자유 선택 아이콘 (1142) 이 디스플레이됨으로써, 사용자에게 검출의 시각적 피드백을 제공할 수도 있다.
도 54a 및 도 54b에서, 제스처 입력 (1143) 이 화살표 (C) 의 방향으로의 선택 동작으로서 검출된다. 제스처 (1143) 는, 예를 들어, 도 54에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 슬라이드 (slide) 이다. 이 검출에 응답하여, 선택 구역 (1144) 이 선택 모드 렌더링과 함께 디스플레이됨으로써, 사용자에게 검출의 시각적 피드백을 제공한다.
도 55a 및 도 55b에서, 자유-선택 제스처 (1143) 의 연속은 선택 구역 (1144) 의 확장된 디스플레이로서 검출되고 인식된다.
도 56a 및 도 56b에서, 선택 동작의 완료는 도식 (1100) 의 특정한 엘리먼트들에 관해 대략 원형 (circular) 형태를 완성하는 자유-선택 제스처 (1143) 로 인해 검출되고, 완성된 선택 구역 (1144) 내에 도식 엘리먼트들에 관한 결과로서 선택 박스 (1145), 즉 복제 텍스트 (1106, 1109, 1112 및 1113), 텍스트 (1116 및 1124), 복제 형상 (1103), 그리고 형상들 (1110, 1114, 1117, 1119, 1122, 1125 및 1129) 의 각각의 디지털 및 조판 잉크 형태들이 디스플레이된다. 이들 선택된 엘리먼트들은 선택 모드 속성들을 갖는 선택된 조판 잉크 (1103c, 1106c, 1109c, 1110c, 1112c, 1113c, 1114c, 1116c, 1117c, 1119c, 1122c, 1124c, 1125c 및 1129c) 로서 디스플레이되고, 다중-선택 모드의 비-선택 속성들을 갖는 비-선택된 엘리먼트들이 디스플레이되어, 사용자에게 검출의 시각적 피드백을 제공한다. 따라서, 다수의 인식된 도식 엘리먼트들은 빠르게 선택될 수 있다.
도 56에 도시된 예에서, 자유형 선택 모드는 선택 구역에 의해 완전히 에워싸인 엘리먼트와 또한 선택 구역 내에서 단지 부분적으로 에워싸인 엘리먼트 양쪽 모두, 즉, 커넥터 화살표 (1114) 가, 선택된 것으로서 인식되도록 구성된다. 대안적으로, 자유형 선택 모드는 선택 구역에 의해 완전히 에워싸인 그들 엘리먼트들만이 선택된 것으로서 인식되도록 구성될 수도 있다. 후자의 경우, 다중-선택에서의 포함을 위해 부분적으로 에워싸인 엘리먼트들의 선택은 앞서 설명된 것들처럼, 선택 제스처들을 통해 사용자들에 의해 이루어질 수 있다. 어느 경우에나, 자유형 및 다중 선택 모드들에서, 선택된 엘리먼트들은 동일한 제스처들을 통해 선택 해제될 수 있다. 예를 들어, 도 56a 및 도 56b에서 제스처 입력 (1146) 이 검출되고 선택된 조판 커넥터 (1114c) 의 선택 해제로서 식별된다. 제스처 (1146) 는, 예를 들어, 도 56에 묘사된 바와 같이, 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상에서 커넥터 (1114) 상의 그리고 선택 박스 (1145) 내의 짧은 탭이다.
도 57a 및 도 57b에서, 검출 결과는 선택 해제된 커넥터 (1114) 의 선택 모드 조판 디스플레이가 생략되게 하여 디스플레이는 각각의 정상적 디지털 및 조판 잉크로 되돌아가고 선택 박스 (1145) 의 결과적인 수축은 선택 해제된 커넥터 (1114) 를 더 이상 둘러싸지 않도록 한다. 게다가, 제스처 입력 (1147) 이 선택 박스 (1145) 의 선택으로서 검출된다. 제스처 (1147) 는, 예를 들어, 도 57에 묘사된 바와 같이, 선택 박스 (1145) 내부이지만 그 속의 도식 엘리먼트들 중 임의의 도식 엘리먼트 상은 아닌 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭이다. 이 인식된 제스처에 응답하여, 애플리케이션 (112) 은 선택 메뉴 (1134) 를 디스플레이한다. 추가의 제스처 입력 (1148) 이 선택된 엘리먼트들이 복제되게 하는 메뉴 (1134) 로부터의 Duplicate 동작의 선택으로서 검출된다. 복제 엘리먼트들은 복제된 원래의 엘리먼트들과는 동일한 위치적 관계들로 선택된 모드 렌더링에서 선택 박스 (1145) 에 유지되지만, 복제된 엘리먼트들의 디스플레이는 정상적 렌더링으로 복귀하거나 또는 도 57에서처럼 감소된 강조를 갖는 비-선택된 렌더링으로 되돌아간다. 제스처 (1148) 는, 예를 들어, 도 57에 묘사된 바와 같은 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 누름이다.
도 58a 및 도 58b에서, 제스처 입력 (1149) 이 선택 박스 (1145) 상의 화살표 (D) 의 방향으로의 이동 동작으로서 검출되고 식별된다. 제스처 (1149) 는, 예를 들어, 도 58에 묘사된 바와 같이, 선택 박스 (1145) 내부이지만 그 속의 도식 엘리먼트들 중 임의의 도식 엘리먼트 상은 아닌 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 긴 탭 앤드 슬라이드이다.
도 59a 및 도 59b에서, 제스처 입력 (1149) 은 선택 박스 (1145) 의 디스플레이를 이동시키는 것과 선택 박스 (1145) 의 좌측 및 우측 경계들을 따르는 그리고 위 및 아래로 연장하는 수직 파선들로서의 정렬 가이드들 (1150) 의 디스플레이와 함께 복제 엘리먼트들이 그 속에 포함되는 것으로서 검출되고 식별되도록 계속된다. 이러한 정렬 엘리먼트들의 디스플레이의 사용, 렌더링 및 타이밍은 본 기술분야의 통상의 기술자에 의해 이해되고, 도 59에 도시된 바와 같이, 그리드가 선택 박스의 하나 이상의 범위들을 정의하는데 또한 사용될 수도 있는 디스플레이 인터페이스 아래에 있는 정렬 그리드에 관해 이루어질 수도 있다. 정렬 가이드들 (1150) 은 도식 (1100) 의 비-이동 엘리먼트들에 관한 이동 엘리먼트들의 배치에서 사용자들을 안내하도록 제공된다. 예를 들어, 도 59에서 슬라이딩 제스처 입력 (1149) 에 의한 선택 박스 (1145) 상의 이동 동작은 화살표 (E) 방향으로 인식됨으로써 사용자는 비-선택된 엘리먼트들에 관해 복제된 엘리먼트들을 위치시키려고 도모한다. 이동 동작의 완료 시 제스처 입력 (1151) 이 선택 해제 제스처로서 검출된다. 제스처 (1151) 는, 예를 들어, 도 59에 도시된 바와 같이, 선택 박스 외부의 컴퓨팅 디바이스 (100) 의 인터페이스 표면 (104) 상의 짧은 탭이다.
도 60a 및 도 60b에서, 이동 동작의 완료에 응답하여, 선택 박스 (1145) 의 디스플레이는 생략되고 선택 해제된 도식 엘리먼트들의 선택 모드 조판 디스플레이는 생략되어서 디스플레이를 각각의 정상적 디지털 및 조판 잉크로 되돌아가게 하고, 다른 비-선택된 도식 엘리먼트들의 디스플레이는 각각의 정상적 디지털 및 조판 잉크로 복귀된다. 완료된 이동 동작으로 인해 디스플레이는 도 60a에서 원래의 화살표 (1122) 에 인접하게 위치된 복제 컨테이너 (1117a) 와 도 60b에서 원래의 조판 화살표 (1122b) 에 인접하게 위치된 복제 조판 잉크 컨테이너 (1117b) 로 이루어진다. 이 프로세스에서, 원래의 화살표 (1122) 의 커넥터 스테이터스는 원래의 컨테이너 (1119) 와 복제 컨테이너 (1117) 사이의 화살표의 연결로 인해 단언된다.
게다가, 도 60a에서, 복제 화살표 (1122a) 의 개방형-화살촉을 통해 입력되는 핸드 드로잉된 형상 (1152) 이 디지털 잉크 형상 (1152a) 으로서 디스플레이된다. 도 60b에서, 복제 조판 화살표 (1122b) 의 개방형-화살촉을 통해 입력되는 핸드 드로잉된 형상 (1152) 은 디지털 잉크 형상 (1152a) 으로서 디스플레이된다. 형상 (1152) 은 단일의 연속적인 스트로크로 핸드 드로잉되며, 비-텍스트로서 검출되고 형상 (1152) 의 특성들로 인해 폐쇄 화살촉으로서 식별된다. 앞서 설명된 바와 같이, 이전에 인식된 형상에 실질적으로 오버레이하는 형상의 이 검출은 덮어쓰기 제스처로서 애플리케이션 (112) 에 의해 해석된다. 따라서, 덮어쓰기된 형상은 디스플레이로부터 삭제되거나 또는 생략되고 새로운 형상으로 대체된다.
도 61a에서, 덮어쓰기는, 핸드 드로잉된 화살촉 (1152) 의 지점이 복제 화살표 (1122a) 의 '스템'의 단부 상에 다시 위치되게 하면서, 개방 촉 복제 화살표 (1122a) 가 디스플레이로부터 제거되게 하고 디지털 잉크 폐쇄 촉 화살표 (1153a) 로서의 폐쇄 촉 화살표 (1153) 의 디스플레이를 하게 함으로써, 개방 촉 복제 화살표 (1122a) 를 폐쇄 촉 화살표로서 실질적으로 재형성하게 한다. 도 61b에서, 덮어쓰기는, 핸드 드로잉된 화살촉 (1152) 의 지점이 복제 조판 화살표 (1122b) 의 '스템'의 단부 상에 다시 위치되게 하면서, 조판 개방 촉 복제 화살표 (1122b) 가 디스플레이로부터 제거되게 하고 조판 폐쇄 촉 화살표 (1153b) 로서의 폐쇄 촉 화살표 (1153) 의 디스플레이를 하게 함으로써, 복제 개방 촉 조판 화살표 (1122b) 를 폐쇄 촉 화살표로서 실질적으로 재형성하게 한다.
게다가, 도 61a에서, 핸드 드로잉된 입력 (1154) 이 복제 단어들 (1116a) 에 오버레이하는 디지털 잉크 (1154a) 로서 디스플레이된다. 도 61b에서, 핸드 드로잉된 입력 (1154) 이 복제 조판 단어들 (1128a) 에 오버레이하는 디지털 잉크 (1154a) 로서 디스플레이된다. 입력 (1154) 은 필기 편집 제스처로서 검출되고 복제 컨테이너 (1117) 내에 포함되는 단어들 (1116) 상의 스크래치 아웃 (소거 마크) 으로서 식별된다. 이 스크래치 아웃 편집 동작은 단어들 (1116) 의 소거로서 애플리케이션 (112) 에 의해 해석된다.
도 62a에서, 식별된 편집 동작은 복제 컨테이너 (1117a) 가 비워지도록 복제 단어들 (1116a) 이 디스플레이로부터 제거되게 한다. 도 62b에서, 식별된 편집 동작은 복제 조판 컨테이너 (1117b) 가 비워지도록 복제 조판 단어들 (1116b) 이 디스플레이로부터 제거되게 한다.
도 63a에서, 복제 계란형 (1117a) 내에 입력된 필기된 텍스트 (1155) 는 디지털 잉크 텍스트 (1155a) 로서 디스플레이된다. 도 63b에서, 복제 조판 계란형 (1117b) 내에 입력된 필기된 텍스트 (1155) 는 복제 조판 계란형 (1117b) 내에 디지털 잉크 텍스트 (1155a) 로서 디스플레이된다. 텍스트 (1155) 는 텍스트로서 검출되고 문구 "Planning & Spec"으로서 인식되고, 복제 계란형 (1117) 은 엘리먼트들 (1117 및 1155) 의 상대 포지션들 및 특성들로 인해 인식된 문구 (1155) 를 포함하는 컨테이너로서 단언된다. 도 63b에서, 필기된 텍스트 (1155a) 는 컨테이너의 조판 사이즈로 인해 조판 컨테이너 (1117b) 에 충분히 포함되지 않음을 알 수 있다. 본원의 시스템 및 방법의 애플리케이션 (112) 은, 예를 들어, 컨테이너의 경계들에 겹치는 필기된 입력의 일부에도 불구하고, 텍스트 (1155) 가 포함된 텍스트 또는 컨테이너 라벨로서 의도됨을 검출한다. 이 상황은 텍스트 또는 형상들이 디지털 잉크 컨테이너 내에 완전히 맞지 않도록 기록되거나, 또는 그렇게 완전히 맞지 않도록 기록되기를 원하는 경우 또한 발생할 수도 있다. 이들 상황들은 그러나 도 78 내지 도 83의 예들에서 설명된 바와 같이 핸들링된다.
도 78은 텍스트가 컨테이너 내에 필기되었지만 그 박스에 맞지 않는 일 예를 도시한다. 도 78a에서, 형상 (780) 및 텍스트 (781) 의 필기된 입력은 디지털 잉크 텍스트 (781a) 가 대부분 포함되는 디지털 잉크 박스 (780a) 로서 디스플레이된다. 텍스트 (781) 는 텍스트로서 검출되고 문구 "This is a too long text"로서 인식된다. 박스 (780) 는 비-텍스트로서 검출되고 직사각형으로서 인식된다. 직사각형 (780) 을 인식된 문구 (781) 를 포함하는 컨테이너로서 식별하기 위하여, 입력들 (780 및 781) 의 상대 포지션들 및 특성들이 고려된다. 예를 들어, 미리 설정된, 및 재설정 가능한, 공간적 임계값에 비한 직사각형 (780) 및 텍스트 블록 (781) 의 기하학적 특징들의 비교 메트릭들이 직사각형에 포함되어 있는 텍스트 블록의 공산을 나타내는, 상기 임계값이 애플리케이션 (112) 에 의해 사용된다. 예를 들어, 직사각형 (780) 및 텍스트 블록 (781) 의 평균 중심들 또는 무게중심들 (위에서 설명된 바와 같음) 사이의 거리는 거리 임계값 (앞서 설명된 바와 같음) 과 비교되거나, 또는 없는 것보다 더 많은 텍스트가 잠재적 컨테이너 내에 기입될 때 격납 (containment) 의 높은 공산이 표시되는 경우 직사각형 (780) 및 텍스트 블록 (781) 의 영역들의 중첩의 비율이 중첩 임계값과 비교된다.
컨테이너 스테이터스의 결정은 하나의 고려사항이고 상이한 도식 엘리먼트들의 신뢰성 있고 직관적인 연관을 제공한다. 다른 고려사항은 핸드 드로잉된 도식의 렌더링된 디스플레이이다. 앞서 설명된 바와 같이, 본원의 시스템 및 방법은 가능한 한 사용자의 입력의 최소량의 자동 조작을 수행하는 것을 도모한다. 그러나, 디지털 및 조판 잉크 둘 다에서의 입력의 가독성 및 센시블 디스플레이가 특정한 정도의 리파인먼트, 이른바 미화를 구현함으로써 지원된다. 도 63에서, 디지털 잉크 풋프린트를 (약간) 축소시키는 점증적 조판 동안 애플리케이션 (112) 에 의해 채용된 조판으로 인해, 디지털 잉크 컨테이너 (1117a) 가 아닌 조판 컨테이너 (1117b) 를 통한 텍스트 (1155) 의 입력으로 문제가 발생되었으며, 예컨대, 조판 또는 폰트화는 디지털 잉크보다 (약간) 더 작은 치수들의 조판 잉크를 초래한다는 것을 알 수 있었다. 그러나 조판이 디지털 잉크 풋프린트를 확대시킨다면, 예컨대, 조판이 디지털 잉크보다 (약간) 더 큰 치수들의 조판 잉크를 초래한다면 유사한 문제가 발생할 수 있다. 이 방식에서의 조판의 효과는 그러나 다른 상황들에서 유익할 수도 있다. 예를 들어, 도 78b에서는, 도 78a에서의 디지털 잉크 버전들과는 달리, 조판 문구 (781b) 가 조판 컨테이너 (780b) 내에 완전히 포함됨에 따라 도 78a의 인식 결과는 디스플레이된다.
미화는 조판 잉크에 대해 또한 수행될 수 있다. 예를 들어, 도 79에서, 형상 (790), 텍스트 (791) 및 추가적인 형상들 (792 및 793) 의 필기된 입력은 디지털 잉크 텍스트 (791a) 가 대부분 포함되는 디지털 잉크 박스 (790a) 와, 박스들 (790 및 792) 사이에 디지털 잉크 화살표 (793a) 를 갖는 디지털 잉크 박스 (792a) 로서 디스플레이된다. 텍스트 (791) 는 텍스트로서 검출되고 문구 "This is a way too too too too too long text"로서 인식된다. 박스들 (790 및 792) 과 화살표 (793) 는 비-텍스트로서 검출되고 각각 직사각형들 및 화살표로서 인식된다. 게다가, 박스 (790) 는 인식된 문구 (791) 를 포함하는 컨테이너 (790) 로서 식별되고, 화살표 (793) 는 컨테이너 (790) 와 직사각형 (792) 을 연결하는 커넥터로서 식별된다. 그러나 애플리케이션 (112) 은, 컨테이너 (790) 의 사이즈와 비교되는 텍스트 (791) 의 텍스트 블록의 사이즈로 인해, 예컨대, 각각의 기하학적 영역들의 비교를 통해, 조판 시 조판 텍스트는 조판 컨테이너 내에 맞지 않을 것이며, 이는 바람직하지 않은 렌더링으로 이어질 것임을 추가로 검출한다. 이는, 예를 들어, 조판 텍스트의 폰트의 사이즈를 감소시키거나 또는 그 폰트의 유형을 변경시킴으로써 핸들링되지만, 이는 도식의 상이한 부분들에서의 텍스트가 바람직하지 않은 상이한 폰트 사이즈 또는 유형으로 되는 것을 초래할 수도 있다 (예컨대, 본원의 시스템 및 방법은 텍스트에 대한 디폴트, 사용자 설정가능, 폰트 스타일을 구현할 수도 있다). 도 80 및 도 81은 이 상황을 자동으로 핸들링하는 상이한 메커니즘들을 예시하고, 도 82 및 도 83은 수동 메커니즘들을 예시한다.
도 80에서, 컨테이너 (790) 의 수직 범위 (즉, 높이) 는 애플리케이션 (112) 에 의해 화살표들 (L) 을 따라 확장되어, 조판 문구 (791b) 가 완전히 그 속에 있는 문구 (791) 의 디스플레이를 포함하는 조판 컨테이너 (790b) 로서 디스플레이된다. 이는 조판 컨테이너의 요구된 범위를 텍스트의 조판된 치수들을 포함하도록 결정하는 애플리케이션 (112) 에 의해 성취된다. 알 수 있는 바와 같이, 직사각형 (792) 및 커넥터 (793) 의 조판 직사각형 (792b) 및 커넥터 (793b) 로서의 디스플레이는 결과적으로 확대된 컨테이너 (790b) 를 수용하도록 하향으로 이동된다. 조판 잉크의 이 미화는 그러므로 도식 엘리먼트들의 깨끗한 디스플레이를 제공하면서도 그 관계들을 유지한다.
대안적으로, 도 81에서, 컨테이너 (790) 는 도 80의 확장 없이 조판 컨테이너 (790b') 로서 디스플레이되고, 오히려 문구 (791) 는 화살표 (M) 에 의해 도시된 바와 같이 조판 잉크를 리플로우함으로써 비-리사이징된 컨테이너 (790) 내에서 완전히 조판 문구 (791b') 로서 디스플레이된다. 이는 컨테이너의 조판된 치수들에 대해 이러한 리플로우된 텍스트의 상대적 범위를 결정하는 애플리케이션 (112) 에 의해 성취된다. 따라서, 조판 직사각형 (792b) 및 커넥터 (793b) 의 디스플레이는 이동되지 않는다. 조판 잉크의 이 미화는 그러므로 도식 엘리먼트들의 깨끗한 디스플레이를 제공하면서도 그 절대 포지션들을 유지한다.
조판 잉크의 리사이징 및 리플로잉을 통한 위에서 설명된 자동 미화에 대안적으로, 또는 추가적으로, 입력되는 핸드 드로잉된 도식들을 수동으로 미화하는 능력이 본원의 시스템 및 방법에 의해 또한 제공된다. 도 82a에서, 텍스트 (1116) 를 포함하는 컨테이너 (1117) 는, 컨테이너 (1117) 의 선택 모드에서 디스플레이될 때, 다시 말하면 선택된 조판 컨테이너 (1117c) 가 디지털 잉크 단어 (1116a) 를 포함하고 그것에 관한 선택 박스 (820) 를 가질 때, 도식 (1100) 으로부터 분리하여 도시된다. 도 82b에서, 선택 박스 (820) 의 리사이즈 핸들 (820a) 상의 제스처 입력 (821) 이 화살표 (N) 방향에서 핸들 (820a) 을 리사이징하는 이동 동작으로서 검출된다. 이 동작은 리사이징된 선택된 조판 컨테이너 (1117c') 가 도 82b에서 묘사된 바와 같을 때 선택된 조판 컨테이너 (1117c) 의 디스플레이의 리사이징을 야기한다. 그러나, 알 수 있는 바와 같이, 비-선택된 텍스트 (1116) 는 컨테이너 (1117) 의 리사이징 동안 이동되지 않는다. 이는 컨테이너 및 그것의 포함된 콘텐츠들이 독립적으로 취급될 수 있으면서도 컨테이너/포함된 관계를 유지하는 방식으로 애플리케이션 (112) 이 컨테이너들을 정의하기 때문이다.
도 82c에서, 선택 해제 제스처 (822) 의 검출은 디지털 잉크 컨테이너 (1117a) 의 리사이징된 버전인 디지털 잉크 컨테이너 (1117a') 로서의 컨테이너 (1117) 의 디스플레이를 하게 한다. 도 82d에서, 컨테이너 (1117a') 내에서 텍스트 (1116a) 아래에 입력된 필기된 텍스트 (823) 는 디지털 잉크 텍스트 (823a) 로서 디스플레이된다. 애플리케이션 (112) 은 텍스트 (1116 및 823) 가 입력들 (1116, 1117 및 823) 의 상대 포지션들 및 특성들로 인해 관련됨을 검출한다 (예를 들어, 애플리케이션 (112) 은 임계값 미만의 서로에 대한 텍스트 (1116 및 823) 의 근접이 텍스트의 텍스트 블록에 속할 높은 공산을 제공하는 미리 설정, 및 설정 가능한 공간적 임계값을 사용한다).
대안적으로, 도 83a에서, 도 78a의 컨테이너 (780) 와 텍스트 (781) 는 선택 모드에서 디스플레이되는 것으로서, 다시 말하면 선택된 조판 문구 (781c) 를 포함하는 선택된 조판 직사각형 (780c) 으로서 도시된다. 컨테이너 (780c) 가 직사각형이므로 그것은 선택 박스 핸들들 (830) 과 함께 디스플레이된다. 게다가, 리사이즈 핸들들 (830) 중 하나의 리사이즈 핸들 상의 제스처 입력 (831) 은 화살표 (O) 방향에서 그 리사이즈 핸들 (830) 상의 이동 동작으로서 검출된다.
도 83b에서, 리사이징 동작은 컨테이너 및 그것의 콘텐츠의 리사이징과 선택된 조판 직사각형 (780c') 및 텍스트 (781) 의 리플로우 텍스트 블록인 선택된 조판 문구 (781c') 의 디스플레이를 하게 한다. 따라서, 컨테이너 및 텍스트 둘 다가 선택되었을 때, 텍스트는 컨테이너의 리사이징 동안 이동된다. 도 83c에서, 선택 해제된 리사이징된 엘리먼트들은 디지털 잉크 컨테이너 (780a') 및 디지털 잉크 텍스트 (781a') 로서 디스플레이된다.
도 82의 예에서 필기된 텍스트는 컨테이너의 리사이징 후에 디지털 잉크 텍스트를 포함하는 컨테이너에 추가되었다. 텍스트를 컨테이너에 추가하는 능력은, 컨테이너의 리사이징과 함께 또는 그러한 리사이징 없이, 이미 포함된 텍스트의 조판 후에 또한 수행될 수 있다. 이는 조판을 한 이미 생성된 도식들에서 또는 예시적인 도식 (1100) 에 대해 묘사된 바와 같은 도식 생성에서의 점증적 조판 동안 행해질 수 있다. 점증적 조판의 일 예는 도 84에서 도시된다. 도 84a에서, 형상 (841) 내에 입력된 필기된 텍스트 (840) 는 디지털 잉크 텍스트 (840a) 및 디지털 잉크 형상 (841a) 으로서 각각 디스플레이된다. 텍스트 (840) 는 텍스트로서 검출되고 단어들 "This is"로서 인식되고 형상 (841) 은 비-텍스트로서 검출되고 직사각형으로서 인식된다. 도 84b에서, 인식 결과는, 상대 포지션들 및 치수들이 실질적으로 유지되면서, 조판 단어들 (840b) 을 포함하는 조판 직사각형 (841b) 으로서 디스플레이된다. 도 84c에서, 조판 직사각형 (841b) 내에서 조판 단어들 (840b) 우측에 입력된 필기된 텍스트 (842) 는 디지털 잉크 텍스트 (842a) 로서 디스플레이된다. 추가적인 텍스트 (842) 는 텍스트로서 검출되고 단어들 "a cell"로서 인식된다. 도 84d에서, 인식 결과는, 모든 엘리먼트들의 상대 포지션들 및 치수들이 실질적으로 유지되면서, 조판 단어들 (842b) 로서 디스플레이된다. 도 82의 예에서처럼, 애플리케이션 (112) 은 텍스트 (840 및 842) 가 입력들 (840, 841 및 842) 의 상대 포지션들 및 특성들로 인해 관련됨을 검출하고, 그러므로 그것들을 텍스트 (843) 로서 그룹화하고 결합된 텍스트 (840 및 842) 가 문구 "This is a cell"로서 인식되게 한다.
도 84에서, 컨테이너 내의 조판 텍스트는 디지털 잉크 텍스트로서 컨테이너 내의 동일한 상대 포지션에서, 컨테이너 내의 텍스트 우측의 공간 가용성에도 불구하고, 좌측 또는 왼쪽 정렬로 유지되고, 그러므로 사용자의 필기된 입력이 존중된다. 대안적으로, 본원의 시스템 및 방법은 컨테이너 내에 공간이 있을 때, 예를 들어, 도 78b에 도시된 바와 같은 텍스트를 중앙에 두는 것과 같이 텍스트 포지션이 조정되게 할 수도 있다. 이 미화는 조판 및 디지털 잉크 텍스트 중 어느 하나 또는 양쪽 모두에 대해, 그리고 또한 포함된 형상들에 대해 행해질 수 있고, 예를 들어, 사용자 선택을 위한 설정으로서 제공된다. 일반적으로, 이러한 미화는, 앞서 정의된 바와 같이, 컨테이너들 및 셀들에 대해 상이하게 수행된다. 특히, 텍스트만을 포함하는 셀들에 대해, 그 셀 내의 텍스트는 셀의 라벨로서 취급될 수도 있다. 따라서, 입력 텍스트는, 예를 들어, 셀 내에서 (수평으로 및 수직으로 둘 다로) 중앙에 두기 위해 디지털 및 조판 잉크 둘 다에서 미화된다. 이는 디지털 잉크 라벨 (850) 이 디지털 잉크 셀 (851) 에 중심을 두는 도 85a에서 예시된다. 셀 (851) 은 도 85b에서 선택 모드에서 도시되고 리사이징된 것으로서 디스플레이되는데, 그 도면에서 디지털 잉크 라벨 (850) 은, 예를 들어, 셀 라벨들에 대해 정의되는 바와 같이 중심에서 디스플레이된 채로 남아 있다.
대안적으로, (예컨대, 미리 설정된, 및 설정 가능한, 치수 임계값을 초과하는) 셀의 이러한 리사이징은 셀이 셀로서의 자신의 정의를 소실하게 할 수도 있으며, 그 경우 포함된 텍스트는 리사이징된 컨테이너에서 라벨로서 더 이상 정의되지 않고 연관된 미화와 함께 또는 그것 없이, 라벨이 아니라 텍스트 블록으로서 취급된다. 이는 다른 텍스트 블록들 및 형상들이 리사이징된 컨테이너에 쉽게 입력되는 것을 허용한다. 대안적으로, 또는 추가적으로, 추가적인 텍스트 또는 형상들이 리사이징된 (또는 원래 드로잉된 사이즈로 된) 셀 내에서, 애플리케이션 (112) 이 텍스트를 (미화된) 텍스트 라벨들에 자동으로 링크하지 않는 (예컨대, 추가된 텍스트가 전술한 임계값 없이 텍스트를 관련시키는데 사용되는) 방식으로, 핸드 드로잉될 때 셀 정의의 소실은 발생할 수도 있다. 반대 조건들이 컨테이너들을 셀들로서 재분류하는데 사용될 수도 있다.
도 86은 컨테이너 내의 복수의 텍스트 블록들의 일 예를 도시한다. 도 86a에서, 텍스트 (861 및 862) 를 가지는 입력 형상 (860) 이 디지털 잉크 텍스트 (861a) 및 디지털 잉크 텍스트 (862a) 를 포함하는 디지털 잉크 컨테이너 (860a) 로서 디스플레이된다. 선택 제스처 (863) 의 검출 시 텍스트 블록 (862) 은 도 86b에서 선택된 조판 텍스트 블록 (862') 으로서 선택 모드에서 디스플레이된다. 이는 텍스트 (861 및 862) 가 컨테이너에서 개개의 텍스트 블록들인 것으로서 식별됨을 예시한다. 도 86c에서, 입력 (860, 861 및 862) 은 조판되고 조판 컨테이너 (860b) 와 조판 텍스트 블록들 (861b 및 862b) 로서 디스플레이된다.
예시적인 입력으로 되돌아가면, 도 64b에서, 인식 결과는 조판 문구 (1155b) 로서 디스플레이되고, 조판 문구 (1155b) 를 포함하는 컨테이너 (1156) 가 조판 계란형 컨테이너 (1156b) 로서 디스플레이될 때 복제 조판 컨테이너 (1117b) 는 자동으로 리사이징되는데, 자동 리사이징은 도 80에 관하여 위에서 논의된 바와 같이 수행된다. 게다가, 도 64a에서, 핸드 드로잉된 입력 (1157) 이 복제 용어 (1113a) 의 일부에 오버레이하는 디지털 잉크 (1157a) 로서 디스플레이된다. 도 64b에서, 핸드 드로잉된 입력 (1157) 은 복제 조판 용어 (1113b) 의 일부에 오버레이하는 디지털 잉크 (1157a) 로서 디스플레이된다. 입력 (1157) 은 필기 편집 제스처로서 검출되고 복제 커넥터 (1103) 에 대한 복제 라벨 (1113) 의 일부 상에서 스크래치 아웃으로서 식별된다. 이 스크래치 아웃 편집 동작은 복제 용어 (1113) 의 "S-Gate"에서의 문자 "S"의 소거로서 애플리케이션 (112) 에 의해 해석된다.
도 65a 및 도 65b에서, 소거 동작은 복제 용어 (1113a) 및 조판 용어 (1113b) 가 각각 디스플레이로부터 제거되게 하고 디지털 잉크 용어 (1158a) 및 조판 용어 (1158b) 로서의 용어 (1158), 즉 "-Gate"의 디스플레이를 하게 한다.
도 66에서, 텍스트 (1158a) 의 좌측에 입력되는 필기된 텍스트 (1159) 는 디지털 잉크 텍스트 (1159a) 로서 디스플레이된다. 도 66b에서, 조판 텍스트 (1158b) 의 좌측에 입력되는 필기된 텍스트 (1159) 는 디지털 잉크 텍스트 (1159a) 로서 디스플레이된다. 텍스트 (1159) 는 텍스트로서 검출되고 문자 "I"로서 인식된다. 텍스트 (1159) 는 라벨 (1157) 의 텍스트에, 그것들의 상대 포지션들 및 특성들로 인해, 연관되어 있는 것으로서 인식되고, 예컨대, 둘 다는 텍스트 오브젝트들이라서, "I-Gate"라는 용어가 인식된다.
도 67에서, 인식 결과는 조판 용어 (1158b) 가 디스플레이로부터 제거되게 하고, 조판 용어 (1160) 의 용어 (1160b), 즉 "I-Gate"로서의 디스플레이가 되게 한다. 이미 설명된 것들과는 본질적으로 유사한 추가의 마이너 입력들의 검출 시, 도 11b에 도시된 도식 (1100) 의 완전히 조판된 버전은 애플리케이션 (112) 에 의해 제공된다.
본원의 시스템 및 방법에 의해 제공되는 애플리케이션 (112) 은 디지털 잉크 및 조판 잉크 형태들 둘 다에서 필기된 도식들의 디스플레이를 충실하게 허용한다. 핸드 드로잉된 엘리먼트들은 식별되며, 그것들의 콘텐츠는 필기 인식을 사용하여 인식되고, 그것들의 공간적 및 맥락 관계들이 생성된 도식의 유형 및 엘리먼트들의 드로잉 순서과는 독립적으로 검출된다. 도식들은 필기 및 컴퓨팅 디바이스 제스처들을 사용하여 디지털 잉크 및 조판 잉크 형태들 둘 다에서 편집될 수 있다.
전술한 바는 최상의 모드 및/또는 다른 예들인 것으로 간주되는 것을 설명하였지만, 다양한 수정들이 본 명세서에서 이루어질 수도 있고, 본원에서 개시된 주제는 다양한 형태들 및 예들로 구현될 수도 있고, 수많은 다른 애플리케이션들, 조합들, 및 환경들에 적용될 수도 있고, 그것의 단지 일부만이 본 명세서에서 설명되었다는 것이 이해된다. 본 기술분야의 통상의 기술자들은 개시된 양태들이 발명의 주제의 진정한 사상 및 범위로부터 벗어남 없이 개조되거나 또는 수정될 수도 있다는 것을 인식할 것이다. 그러므로, 본 발명의 주제는 이 명세서에서의 특정 세부사항들, 전시품들, 및 예시된 예들로 제한되지 않는다. 본 명세서에서 개시되는 유리한 개념들의 진정한 범위 내에 속하는 임의의 및 모든 수정들과 변동들이 보호되는 것이 의도된다.

Claims (21)

  1. 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들 (diagrams) 을 핸드 드로잉하는 시스템으로서,
    상기 컴퓨팅 디바이스는 프로세서와 상기 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함하고,
    상기 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는,
    상기 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들의 디스플레이를 하게 하며;
    각각의 도식 엘리먼트의 클래스 및 유형에 따라서 상기 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 상기 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키며; 그리고
    수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 상기 하나 이상의 연관들에 따라서 상기 도식 엘리먼트들의 재-디스플레이를 하게 하도록 구성되는, 도식들을 핸드 드로잉하는 시스템.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는,
    핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하도록 구성되는, 도식들을 핸드 드로잉하는 시스템.
  3. 제 2 항에 있어서,
    상기 스트로크들은 상기 입력의 공간적 및 시간적 정보에 기초하여 그룹화되는, 도식들을 핸드 드로잉하는 시스템.
  4. 제 2 항 또는 제 3 항에 있어서,
    상기 스트로크들은 상기 스트로크들의 그룹들에 대해 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류되는, 도식들을 핸드 드로잉하는 시스템.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    식별된 유형들은 텍스트와 비-텍스트를 포함하는, 도식들을 핸드 드로잉하는 시스템.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는,
    분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 상기 분류된 스트로크들을 필기 인식 시스템으로 파싱하도록 구성되는, 도식들을 핸드 드로잉하는 시스템.
  7. 제 6 항에 있어서,
    상기 적어도 하나의 비-일시적 컴퓨터 판독가능 매체는,
    인식된 도식 엘리먼트들, 및 상기 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하도록 구성되는, 도식들을 핸드 드로잉하는 시스템.
  8. 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 방법으로서,
    상기 컴퓨팅 디바이스는 프로세서와 상기 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함하고,
    상기 방법은,
    상기 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들을 디스플레이하는 단계;
    각각의 도식 엘리먼트의 클래스 및 유형에 따라서 상기 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 상기 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키는 단계; 및
    수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 상기 하나 이상의 연관들에 따라서 상기 도식 엘리먼트들의 재-디스플레이하는 단계를 포함하는, 도식들을 핸드 드로잉하는 방법.
  9. 제 8 항에 있어서,
    핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하는 단계를 포함하는, 도식들을 핸드 드로잉하는 방법.
  10. 제 9 항에 있어서,
    상기 스트로크들은 상기 입력의 공간적 및 시간적 정보에 기초하여 그룹화되는, 도식들을 핸드 드로잉하는 방법.
  11. 제 9 항 또는 제 10 항에 있어서,
    상기 스트로크들은 상기 스트로크들의 그룹들에 대해 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류되는, 도식들을 핸드 드로잉하는 방법.
  12. 제 8 항 내지 제 11 항 중 어느 한 항에 있어서,
    식별된 유형들은 텍스트와 비-텍스트를 포함하는, 도식들을 핸드 드로잉하는 방법.
  13. 제 8 항 내지 제 12 항 중 어느 한 항에 있어서,
    분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 상기 분류된 스트로크들을 필기 인식 시스템으로 파싱하는 단계를 포함하는, 도식들을 핸드 드로잉하는 방법.
  14. 제 13 항에 있어서,
    인식된 도식 엘리먼트들, 및 상기 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하는 단계를 포함하는, 도식들을 핸드 드로잉하는 방법.
  15. 컴퓨터 판독가능 프로그램 코드를 수록하고 있는 비-일시적 컴퓨터 판독가능 매체로서,
    상기 컴퓨터 판독가능 프로그램 코드는 컴퓨팅 디바이스 상에 텍스트 및 비-텍스트 엘리먼트들을 포함하는 도식들을 핸드 드로잉하는 방법을 구현하기 위해 실행되도록 적응되고, 상기 컴퓨팅 디바이스는 프로세서와 상기 프로세서의 제어 하에 핸드 드로잉 도식 엘리먼트 입력을 검출하고 인식하기 위한 적어도 하나의 비-일시적 컴퓨터 판독가능 매체를 포함하며,
    상기 방법은,
    상기 컴퓨팅 디바이스와 연관된 디스플레이 디바이스 상에 대화식 디지털 잉크로 복수의 입력 도식 엘리먼트들을 디스플레이하는 단계;
    각각의 도식 엘리먼트의 클래스 및 유형에 따라서 상기 도식 엘리먼트들 중 하나 이상의 도식 엘리먼트들과 상기 도식 엘리먼트들 중 하나 이상의 다른 도식 엘리먼트들을 연관시키는 단계; 및
    수신되는 디지털 잉크와의 하나 이상의 상호작용들에 기초하여 그리고 상기 하나 이상의 연관들에 따라서 상기 도식 엘리먼트들을 재-디스플레이하는 단계를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  16. 제 15 항에 있어서,
    상기 방법은, 핸드 드로잉된 입력의 스트로크들을 분류함으로써 각각의 도식 엘리먼트의 클래스를 식별하는 단계를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  17. 제 16 항에 있어서,
    상기 스트로크들은 상기 입력의 공간적 및 시간적 정보에 기초하여 그룹화되는, 비-일시적 컴퓨터 판독가능 매체.
  18. 제 16 항 또는 제 17 항에 있어서,
    상기 스트로크들은 상기 스트로크들의 그룹들에 대해 엘리먼트 유형 확률 가설들을 구축하고 테스트함으로써 분류되는, 비-일시적 컴퓨터 판독가능 매체.
  19. 제 15 항 내지 제 18 항 중 어느 한 항에 있어서,
    식별된 유형들은 텍스트와 비-텍스트를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  20. 제 15 항 내지 제 19 항 중 어느 한 항에 있어서,
    상기 방법은, 분류된 스트로크들의 도식 엘리먼트들의 인식을 위해 상기 분류된 스트로크들을 필기 인식 시스템으로 파싱하는 단계를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  21. 제 20 항에 있어서,
    상기 방법은, 인식된 도식 엘리먼트들, 및 상기 도식 엘리먼트들 사이의 위치적 관계들에 기초하여 각각의 도식 엘리먼트의 유형을 식별하는 단계를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
KR1020187014095A 2015-10-19 2016-10-18 도식들에서의 필기 인식의 시스템 및 방법 KR102396224B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP15290271 2015-10-19
EP15290271.4 2015-10-19
US14/955,155 2015-12-01
US14/955,155 US10643067B2 (en) 2015-10-19 2015-12-01 System and method of handwriting recognition in diagrams
PCT/EP2016/001720 WO2017067652A1 (en) 2015-10-19 2016-10-18 System and method of handwriting recognition in diagrams

Publications (2)

Publication Number Publication Date
KR20180097519A true KR20180097519A (ko) 2018-08-31
KR102396224B1 KR102396224B1 (ko) 2022-05-09

Family

ID=54477976

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187014095A KR102396224B1 (ko) 2015-10-19 2016-10-18 도식들에서의 필기 인식의 시스템 및 방법

Country Status (6)

Country Link
US (2) US10643067B2 (ko)
EP (1) EP3365764B1 (ko)
JP (1) JP6945527B2 (ko)
KR (1) KR102396224B1 (ko)
CN (1) CN108834426B (ko)
WO (1) WO2017067652A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200061154A (ko) * 2018-11-23 2020-06-02 네이버웹툰 주식회사 시각 및 텍스트 정보를 포함하는 다이어그램의 분석 방법 및 장치

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9465985B2 (en) 2013-06-09 2016-10-11 Apple Inc. Managing real-time handwriting recognition
JP6492894B2 (ja) * 2015-04-01 2019-04-03 富士通株式会社 認識プログラム、認識方法及び認識装置
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
US20170068868A1 (en) * 2015-09-09 2017-03-09 Google Inc. Enhancing handwriting recognition using pre-filter classification
US10643067B2 (en) * 2015-10-19 2020-05-05 Myscript System and method of handwriting recognition in diagrams
US9927917B2 (en) * 2015-10-29 2018-03-27 Microsoft Technology Licensing, Llc Model-based touch event location adjustment
US10324618B1 (en) * 2016-01-05 2019-06-18 Quirklogic, Inc. System and method for formatting and manipulating digital ink
US10755029B1 (en) 2016-01-05 2020-08-25 Quirklogic, Inc. Evaluating and formatting handwritten input in a cell of a virtual canvas
US10013603B2 (en) * 2016-01-20 2018-07-03 Myscript System and method for recognizing multiple object structure
US10228775B2 (en) * 2016-01-22 2019-03-12 Microsoft Technology Licensing, Llc Cross application digital ink repository
DK179329B1 (en) 2016-06-12 2018-05-07 Apple Inc Handwriting keyboard for monitors
US11409952B2 (en) 2016-08-16 2022-08-09 Myscript System and method for collaborative ink management
US10956765B2 (en) * 2016-08-19 2021-03-23 Sony Corporation Information processing device and information processing method
USD868081S1 (en) * 2016-08-26 2019-11-26 Samsung Electronics Co., Ltd. Display screen or portion thereof with transitional graphical user interface
CN107273895B (zh) * 2017-06-15 2020-07-14 幻视互动(北京)科技有限公司 用于头戴式智能设备的视频流实时文本识别及翻译的方法
EP3480728B1 (en) * 2017-11-07 2023-03-29 Tata Consultancy Services Limited Method and system for extracting information from hand-marked industrial inspection sheets
CN108304132B (zh) * 2018-01-19 2021-03-02 广州视源电子科技股份有限公司 图形显示方法、装置、设备及存储介质
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
US11048931B2 (en) * 2019-02-19 2021-06-29 Lenovo (Singapore) Pte. Ltd. Recognition based handwriting input conversion
US11392659B2 (en) * 2019-02-28 2022-07-19 Adobe Inc. Utilizing machine learning models to generate experience driven search results based on digital canvas gesture inputs
US11126836B2 (en) * 2019-03-28 2021-09-21 Microsoft Technology Licensing, Llc Grouping strokes of digital ink
US10957080B2 (en) * 2019-04-02 2021-03-23 Adobe Inc. Automatic illustrator guides
CN110069205A (zh) * 2019-04-15 2019-07-30 广州视源电子科技股份有限公司 一种书写轨迹调整的方法、装置、终端设备和存储介质
CN110045909B (zh) * 2019-04-15 2021-01-22 广州视源电子科技股份有限公司 基于书写轨迹的椭圆处理方法、装置、设备及存储介质
CN110045840B (zh) * 2019-04-15 2023-07-18 广州视源电子科技股份有限公司 一种书写轨迹关联的方法、装置、终端设备和存储介质
CN110069204B (zh) * 2019-04-15 2021-12-03 广州视源电子科技股份有限公司 基于书写轨迹的图形处理方法、装置、设备及存储介质
EP3736677A1 (en) 2019-05-10 2020-11-11 MyScript A method and corresponding device for selecting and editing handwriting input elements
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
EP3754537B1 (en) * 2019-06-20 2024-05-22 MyScript Processing text handwriting input in a free handwriting mode
EP3772015B1 (en) 2019-07-31 2023-11-08 MyScript Text line extraction
US10956727B1 (en) * 2019-09-11 2021-03-23 Sap Se Handwritten diagram recognition using deep learning models
EP3796145A1 (en) 2019-09-19 2021-03-24 MyScript A method and correspond device for selecting graphical objects
KR20210061523A (ko) * 2019-11-19 2021-05-28 삼성전자주식회사 필기 입력을 텍스트로 변환하는 전자 장치 및 그 동작 방법
EP4130966A1 (en) 2019-11-29 2023-02-08 MyScript Gesture stroke recognition in touch-based user interface input
CN112001236A (zh) * 2020-07-13 2020-11-27 上海翎腾智能科技有限公司 基于人工智能的书写行为的识别方法及装置
US11544948B2 (en) 2020-09-28 2023-01-03 Sap Se Converting handwritten diagrams to robotic process automation bots
CN112214192B (zh) * 2020-10-22 2023-08-04 深圳市皓丽智能科技有限公司 智能交互平板的操作方法、系统、计算机设备及存储介质
CN112181207B (zh) * 2020-10-30 2022-11-29 海信视像科技股份有限公司 一种显示设备及几何图形识别方法
WO2022089043A1 (zh) 2020-10-30 2022-05-05 海信视像科技股份有限公司 显示设备、几何图形识别方法及多图层叠加显示方法
US11733861B2 (en) * 2020-11-20 2023-08-22 Trimble Inc. Interpreting inputs for three-dimensional virtual spaces from touchscreen interface gestures to improve user interface functionality
US12002134B2 (en) * 2021-01-08 2024-06-04 PwC Product Sales LLC Automated flow chart generation and visualization system
EP4086744B1 (en) 2021-05-04 2024-02-21 MyScript Gesture stroke recognition in touch-based user interface input
KR20230009742A (ko) * 2021-07-09 2023-01-17 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 필기 텍스트를 포함하는 문서에서의 텍스트 레이어 및 이미지 레이어의 편집
US11663761B2 (en) * 2021-08-25 2023-05-30 Sap Se Hand-drawn diagram recognition using visual arrow-relation detection
CN114407555B (zh) * 2022-02-07 2022-12-09 南京林业大学 一种便于修改的经管教学用思维导图工具
CN116719459A (zh) * 2022-09-26 2023-09-08 荣耀终端有限公司 批注框的显示方法、电子设备及可读存储介质
US12001671B2 (en) * 2022-10-31 2024-06-04 Optoma Corporation Electronic whiteboard system and operation method thereof
CN117611363A (zh) * 2023-10-25 2024-02-27 浙江爱信诺航天信息技术有限公司 凭证在线校验方法及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030007683A1 (en) * 2001-06-28 2003-01-09 Jian Wang Method and system for separating text and drawings in digital ink
KR20050030104A (ko) * 2003-09-24 2005-03-29 마이크로소프트 코포레이션 핸드 드로잉 객체의 형상 인식 시스템 및 방법
US20060218171A1 (en) * 2003-08-21 2006-09-28 Microsoft Corporation Electronic Inking Process
US7218779B2 (en) * 2003-01-21 2007-05-15 Microsoft Corporation Ink divider and associated application program interface
JP2008269587A (ja) * 2007-03-23 2008-11-06 Palo Alto Research Center Inc ペンコンピュータシステム内にノードリンクダイアグラムを生成および編集する方法および装置

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2749020B2 (ja) 1991-11-14 1998-05-13 日立ソフトウエアエンジニアリング株式会社 ダイアグラム認識システム
EP0667567B1 (en) 1993-12-30 2001-10-17 Xerox Corporation Apparatus and method for supporting the implicit structure of freeform lists, outlines, text, tables, and diagrams in a gesture-based input system and editing system
US5847712A (en) * 1995-01-03 1998-12-08 University Of Washington Method and system for generating graphic illustrations according to a stroke texture and a tone
JPH096922A (ja) * 1995-06-20 1997-01-10 Sony Corp 手書き文字認識装置
GB9701793D0 (en) * 1997-01-29 1997-03-19 Gay Geoffrey N W Means for inputting characters or commands into a computer
DE60043008D1 (de) * 1999-05-27 2009-11-05 Tegic Comm Inc Tastatursystem mit automatischer korrektur
US7039862B2 (en) * 2002-05-10 2006-05-02 Adobe Systems Incorporated Text spacing adjustment
US20030215145A1 (en) 2002-05-14 2003-11-20 Microsoft Corporation Classification analysis of freeform digital ink input
CA2390506C (en) 2002-06-12 2013-04-02 Smart Technologies Inc. System and method for recognizing connector gestures
US7218783B2 (en) * 2003-06-13 2007-05-15 Microsoft Corporation Digital ink annotation process and system for recognizing, anchoring and reflowing digital ink annotations
US7616333B2 (en) 2003-08-21 2009-11-10 Microsoft Corporation Electronic ink processing and application programming interfaces
US7352902B2 (en) 2003-09-24 2008-04-01 Microsoft Corporation System and method for detecting a hand-drawn object in ink input
US20050273761A1 (en) 2004-06-07 2005-12-08 The Mathworks, Inc. Freehand system and method for creating, editing, and manipulating block diagrams
US7496232B2 (en) 2004-06-23 2009-02-24 Microsoft Corporation Distinguishing text from non-text in digital ink
US7904810B2 (en) 2004-09-21 2011-03-08 Microsoft Corporation System and method for editing a hand-drawn list in ink input
US7394935B2 (en) 2004-09-21 2008-07-01 Microsoft Corporation System and method for editing a hand-drawn chart in ink input
US7440616B2 (en) 2004-09-21 2008-10-21 Microsoft Corporation System and method for recognition of a hand-drawn chart in ink input
US7512273B2 (en) * 2004-10-21 2009-03-31 Microsoft Corporation Digital ink labeling
US7643687B2 (en) * 2005-03-18 2010-01-05 Microsoft Corporation Analysis hints
EP1783593A3 (en) * 2005-10-07 2012-12-19 Sony Corporation Information processing apparatus with a user interface comprising a touch panel, method and program
JP2007272473A (ja) * 2006-03-30 2007-10-18 Toshiba Corp 文字認識装置、方法およびプログラム
US20080195931A1 (en) * 2006-10-27 2008-08-14 Microsoft Corporation Parsing of ink annotations
US7945097B2 (en) 2007-05-21 2011-05-17 Microsoft Corporation Classifying digital ink into a writing or a drawing
US10380241B2 (en) * 2010-05-26 2019-08-13 Warren Daniel Child Modular system and method for managing chinese, japanese, and korean linguistic data in electronic form
US8593418B2 (en) * 2010-08-08 2013-11-26 Qualcomm Incorporated Method and system for adjusting display content
US8718375B2 (en) 2010-12-03 2014-05-06 Massachusetts Institute Of Technology Sketch recognition system
US9489121B2 (en) * 2011-11-02 2016-11-08 Microsoft Technology Licensing, Llc Optimal display and zoom of objects and text in a document
US8782549B2 (en) * 2012-10-05 2014-07-15 Google Inc. Incremental feature-based gesture-keyboard decoding
US20140160032A1 (en) * 2012-12-07 2014-06-12 Microsoft Corporation Swipe Stroke Input and Continuous Handwriting
US9171204B2 (en) * 2012-12-12 2015-10-27 Qualcomm Incorporated Method of perspective correction for devanagari text
ITRM20130022A1 (it) * 2013-01-11 2014-07-12 Natural Intelligent Technologies S R L Procedimento e apparato di riconoscimento di scrittura a mano
JPWO2014147722A1 (ja) * 2013-03-18 2017-02-16 株式会社東芝 電子機器、方法及びプログラム
US20140313216A1 (en) 2013-04-18 2014-10-23 Baldur Andrew Steingrimsson Recognition and Representation of Image Sketches
KR102183448B1 (ko) * 2013-04-26 2020-11-26 삼성전자주식회사 사용자 단말 장치 및 그 디스플레이 방법
KR102199193B1 (ko) * 2014-01-22 2021-01-06 삼성전자주식회사 핸드라이팅 정보 운용 방법 및 이를 지원하는 전자 장치
US20170068868A1 (en) * 2015-09-09 2017-03-09 Google Inc. Enhancing handwriting recognition using pre-filter classification
US10643067B2 (en) * 2015-10-19 2020-05-05 Myscript System and method of handwriting recognition in diagrams

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030007683A1 (en) * 2001-06-28 2003-01-09 Jian Wang Method and system for separating text and drawings in digital ink
US7218779B2 (en) * 2003-01-21 2007-05-15 Microsoft Corporation Ink divider and associated application program interface
US20060218171A1 (en) * 2003-08-21 2006-09-28 Microsoft Corporation Electronic Inking Process
KR20050030104A (ko) * 2003-09-24 2005-03-29 마이크로소프트 코포레이션 핸드 드로잉 객체의 형상 인식 시스템 및 방법
JP2008269587A (ja) * 2007-03-23 2008-11-06 Palo Alto Research Center Inc ペンコンピュータシステム内にノードリンクダイアグラムを生成および編集する方法および装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200061154A (ko) * 2018-11-23 2020-06-02 네이버웹툰 주식회사 시각 및 텍스트 정보를 포함하는 다이어그램의 분석 방법 및 장치

Also Published As

Publication number Publication date
JP2018536927A (ja) 2018-12-13
CN108834426B (zh) 2021-12-07
CN108834426A (zh) 2018-11-16
KR102396224B1 (ko) 2022-05-09
US11157732B2 (en) 2021-10-26
WO2017067652A1 (en) 2017-04-27
US20170109578A1 (en) 2017-04-20
JP6945527B2 (ja) 2021-10-06
EP3365764A1 (en) 2018-08-29
US10643067B2 (en) 2020-05-05
US20210034860A1 (en) 2021-02-04
EP3365764B1 (en) 2022-08-03

Similar Documents

Publication Publication Date Title
US11157732B2 (en) System and method of handwriting recognition in diagrams
US11740783B2 (en) System and method of guiding handwriting diagram input
US10664695B2 (en) System and method for managing digital ink typesetting
CN108351746B (zh) 引导手写输入的系统和方法
CN108475325B (zh) 用于识别手写图连接符的系统、方法及计算机可读介质
EP3555736B1 (en) System and method for management of handwritten diagram connectors
CN108369637B (zh) 用于美化数字墨水的系统和方法
US11687618B2 (en) System and method for processing text handwriting in a free handwriting mode
US11429259B2 (en) System and method for selecting and editing handwriting input elements
US20240134507A1 (en) Modifying digital content including typed and handwritten text
EP4030334A1 (en) Completing typeset characters using handwritten strokes

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant