KR101069843B1 - 수식 연산 방법 및 장치 - Google Patents

수식 연산 방법 및 장치 Download PDF

Info

Publication number
KR101069843B1
KR101069843B1 KR1020090037730A KR20090037730A KR101069843B1 KR 101069843 B1 KR101069843 B1 KR 101069843B1 KR 1020090037730 A KR1020090037730 A KR 1020090037730A KR 20090037730 A KR20090037730 A KR 20090037730A KR 101069843 B1 KR101069843 B1 KR 101069843B1
Authority
KR
South Korea
Prior art keywords
character
input
region
input character
valid
Prior art date
Application number
KR1020090037730A
Other languages
English (en)
Other versions
KR20100118829A (ko
Inventor
김종면
유금환
Original Assignee
울산대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 울산대학교 산학협력단 filed Critical 울산대학교 산학협력단
Priority to KR1020090037730A priority Critical patent/KR101069843B1/ko
Publication of KR20100118829A publication Critical patent/KR20100118829A/ko
Application granted granted Critical
Publication of KR101069843B1 publication Critical patent/KR101069843B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • 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

Abstract

수식 연산 방법 및 장치가 개시된다. 본 발명의 일 실시예에 따른 수식 연산 방법은, 입력된 문자를 인식하는 단계, 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 입력된 문자의 기설정된 유효영역으로의 포함 여부를 결정하는 단계, 및 결정된 포함 여부를 반영하여 최종 유효영역을 설정하는 단계, 설정된 최종 유효영역 내의 문자를 이용하여 수식을 인식하는 단계 및 인식된 수식을 연산하여 연산 결과를 디스플레이하는 단계를 포함한다. 이에 의해, 수식을 손쉽게 입력 혹은 연산할 수 있다.
필기체, 수식 연산, 후보영역, 유효영역

Description

수식 연산 방법 및 장치{Method and apparatus for calculating formula}
본 발명은 수식 연산 방법 및 장치에 관한 것으로, 보다 상세하게는 문자의 최상위 좌표 및 최하위 좌표를 이용하여 수식을 인식하는 수식 연산 방법 및 장치에 관한 것이다.
전자계산장치를 사용하면, 각종 연산자와 숫자로 이루어진 수식의 연산 결과를 빠르고 정확하게 얻을 수 있다. 전자계산장치는 전자 계산을 위한 그 단독 장치일 수도 있으나, 최근에는 컴퓨터를 비롯하여 PDA, 휴대폰, 및 전자 사전과 같은 휴대용 단말 장치에 전자 계산 기능이 구비되어 사용되고 있는 추세이다.
하지만, 기본적인 연산자만이 사용된 수식을 계산할 경우에는 전자계산장치의 종류에 관계없이 수식을 입력함에 있어 어려움이 없으나, 복잡한 연산자가 포함된 수식, 특히, 공학 계통에서 사용하는 수식에는 가감승제의 사칙연산 이외에 시그마, 인테그랄, 및 루트와 같은 복잡한 연산자가 많이 사용되기 때문에, 해당 수식을 입력하기가 쉽지 않다.
일 예로, 키패드 형식의 공학용 전자계산장치를 살펴보면, 키패드에는 많은 연산자에 대응하는 입력키를 구비하여야 하기 때문에, 각 입력키의 사이즈가 매우 작으며, 많은 입력키를 구비함에 따라 사용자가 입력하고자 하는 연산자를 찾기도 쉽지 않다.
더욱이, 전자계산장치의 제조사별로 각기 다른 사용법을 이용하여야 하기 때문에, 해당 제조사별 사용법을 인지하지 못한 경우 전자계산장치를 사용함에 있어 더욱 어려움을 느끼게 된다.
본 발명의 목적은 수기 입력 혹은 촬상 방식에 의해 입력되는 하나 이상의 수식을 인식함으로써, 보다 손쉽게 하나 이상의 수식에 대한 연산 결과를 제공받을 수 있는 수식 연산 방법 및 장치를 제공하고자 하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 수식 연산 방법은, 입력된 문자를 인식하는 단계, 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 입력된 문자의 기설정된 유효영역으로의 포함 여부를 결정하는 단계, 및 결정된 포함 여부를 반영하여 최종 유효영역을 설정하는 단계, 설정된 최종 유효영역 내의 문자를 이용하여 수식을 인식하는 단계 및 인식된 수식을 연산하여 연산 결과를 디스플레이하는 단계를 포함한다.
바람직하게, 수기 입력 또는 촬상 방식으로 문자를 입력받는 단계를 더 포함할 수 있다.
또한 바람직하게, 인식하는 단계는, 입력된 문자의 최상위 좌표, 최하위 좌 표, 최우측 좌표, 및 최좌측 좌표를 이용하여 입력된 문자를 포함하는 후보영역을 설정하는 단계, 및 설정된 후보영역 내의 문자를 인식하는 단계를 포함할 수 있다.
또한 바람직하게, 기설정된 유효영역은, 최초로 입력된 문자의 후보영역, 및 이전에 설정된 유효영역 중 어느 하나일 수 있다.
또한 바람직하게, 최종 유효영역을 설정하는 단계는, 입력된 문자와 기설정된 유효영역이 서로 인접하면, 입력된 문자의 후보영역을 기설정된 유효영역에 포함시키고, 입력된 문자와 기설정된 유효영역이 인접하지 않으면, 입력된 문자의 후보영역을 새로운 유효영역으로 설정할 수 있다.
또한 바람직하게, 문자를 인식하는 단계에서, 입력된 문자의 최상위 좌표와 최하위 좌표의 차이가 제1 범위 이내이고, 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 입력된 문자를 분수 기호로 인식할 수 있다.
또한 바람직하게, 후보영역을 설정하는 단계에서, 입력된 문자가 분수 기호로 인식되면, 이전에 입력된 문자들의 평균 높이를 기준으로 분수 기호의 상하 방향으로 후보영역을 설정할 수 있다.
또한 바람직하게, 분수 기호의 상하 방향으로 설정되는 후보영역은, 분수 기호의 상하 방향 각각으로 이전에 입력된 문자들의 평균 높이의 1.5배에 해당하는 크기로 설정될 수 있다.
또한 바람직하게, 복수의 수식을 입력받는 단계를 더 포함하고, 최종 유효영역을 설정하는 단계는, 입력받은 복수의 수식에 대하여 복수의 유효영역을 설정하 며, 수식을 인식하는 단계는, 설정된 복수의 유효영역 각각에서 수식을 인식할 수 있다.
또한 바람직하게, 디스플레이하는 단계는, 복수의 유효영역 각각에서 인식된 복수의 수식을 각각 연산하여 복수의 연산 결과를 동시에 디스플레이할 수 있다.
한편, 본 발명의 일 실시예에 따른 수식 연산 장치는, 입력된 문자를 인식하는 문자 인식부, 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 입력된 문자의 기설정된 유효영역으로의 포함 여부를 결정하고, 결정된 포함 여부를 반영하여 최종 유효영역을 설정하는 유효영역 설정부, 설정된 최종 유효영역 내의 문자를 이용하여 수식을 인식하는 수식 인식부, 및 인식된 수식을 연산하여 연산 결과를 디스플레이하는 인터페이스부를 포함한다.
바람직하게, 인터페이스부는, 수기 입력 방식으로 상기 문자를 입력받을 수 있다
또한 바람직하게, 촬상 방식으로 상기 문자를 입력받는 카메라부를 더 포함할 수 있다.
또한 바람직하게, 문자 인식부는, 입력된 문자의 최상위 좌표, 최하위 좌표, 최우측 좌표, 및 최좌측 좌표를 이용하여 입력된 문자를 포함하는 후보영역을 설정하고, 설정된 후보영역 내의 문자를 인식할 수 있다.
또한 바람직하게, 기설정된 유효영역은, 최초로 입력된 문자의 후보영역, 및 이전에 설정된 유효영역 중 어느 하나일 수 있다.
또한 바람직하게, 문자 인식부는, 입력된 문자와 기설정된 유효영역이 서로 인접하면, 입력된 문자의 후보영역을 기설정된 유효영역에 포함시키고, 입력된 문자와 기설정된 유효영역이 인접하지 않으면, 입력된 문자의 후보영역을 새로운 유효영역으로 설정할 수 있다.
또한 바람직하게, 문자 인식부는, 입력된 문자의 최상위 좌표와 최하위 좌표의 차이가 제1 범위 이내이고, 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 입력된 문자를 분수 기호로 인식할 수 있다.
또한 바람직하게, 문자 인식부는, 입력된 문자가 분수 기호로 인식되면, 이전에 입력된 문자들의 평균 높이를 기준으로 분수 기호의 상하 방향으로 후보영역을 설정할 수 있다.
또한 바람직하게, 분수 기호의 상하 방향으로 설정되는 후보영역은, 분수 기호의 상하 방향 각각으로 이전에 입력된 문자들의 평균 높이의 1.5배에 해당하는 크기로 설정될 수 있다.
또한 바람직하게, 인터페이스부는, 복수의 수식에 대한 연산결과를 디스플레이할 수 있다.
본 발명에 따른 수식 연산 방법 및 장치는 키패드를 조작할 필요 없이 수기 입력 방식 혹은 촬상 방식으로 수식을 입력하므로, 번거로운 수식 입력 방식을 인지하거나 혹은 키패드에서 원하는 연산 기호를 찾기 위한 노력을 해소할 수 있으며, 복잡한 수식도 손쉽게 입력할 수 있는 효과가 있다.
또한, 사용자가 복수의 수식을 입력한 경우에도 각 수식을 구분하여 인식하 고, 각각을 연산하여 그 결과를 동시에 제공함에 따라, 복수의 수식에 대하여도 신속하게 연산 결과를 제공받을 수 있는 효과가 있다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 수식 연산 장치의 블럭도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 수식 연산 장치(100)는 인터페이스부(110), 문자 인식부(120), 유효영역 설정부(130), 수식 인식부(140), 연산부(150), 카메라부(160), 저장부(170) 및 제어부(180)를 포함한다. 본 수식 연산 장치(100)는 수식 연산을 위한 전용 장치일 수 있고, 혹은 휴대폰, PDA, 및 전자 사전과 같이 연산 기능을 구비한 장치일 수도 있다.
인터페이스부(110)는 수식 연산 장치(100)와 사용자간의 인터페이스를 지원한다. 인터페이스부(110)는 태블릿(Tablet) 형태로 사용자가 직접 입력하는 정보를 입력받거나 혹은 수식 연산 장치(100)에서 사용자에게 제공하고자 하는 정보를 디스플레이한다.
수식 연산 장치(100)에서 사용자에게 제공하고자 하는 정보는 수식 연산 장치(100)의 조작을 위해 사용되는 각종 메뉴를 포함할 수 있으며, 이러한 메뉴는 터치 스크린(Touch screen) 형태로 제공될 수 있다.
본 실시예에서, 인터페이스부(110)는 사용자가 직접 입력하는 방식 즉, 수기 입력 방식으로 하나 이상의 수식을 입력받는다. 또한, 인터페이스부(110)는 사용자가 수기 입력 방식으로 입력한 수식에 대한 연산 결과를 디스플레이한다.
문자 인식부(120)는 인터페이스부(110)를 통해 사용자로부터 입력되는 문자를 인식한다. 이때, 문자 인식부(120)는 문자의 최상위 좌표, 최하위 좌표, 최우측 좌표, 및 최좌측 좌표를 이용하여 문자를 포함하는 최소 사이즈의 후보영역을 설정하고, 설정된 후보영역 내에서 문자를 인식한다.
사용자는 인터페이스부(110)를 통해 하나 이상의 수식을 입력하는데, 여기서 수식을 구성하는 숫자, 연산 기호 등을 모두 문자라 한다. 문자 인식부(120)는 인터페이스부(110)를 통해 하나의 문자가 입력될 때마다 실시간으로 해당 문자를 인식한다.
예를 들면, 사용자가 "2+3"을 입력한다고 하면, 일반적으로 사용자는 인터페이스부(110)에 순차적으로 "2", "+", "3"을 입력하게 된다. 이때, 수식의 마지막 문자인 "3"이 입력되는 순간에는 문자 인식부(120)는 숫자 "2"와 덧셈 기호인 "+"는 이미 인식한 상태에서 숫자 "3"을 인식하게 된다.
문자 인식부(120)에서 문자를 인식할 때, 대부분의 숫자 및 연산기호들은 크게 문제가 되지 않으나, 분수 기호와 뺄셈 기호는 그 형태가 유사하여 그 각각을 구분하여야 할 필요가 있다.
분수 기호 및 뺄셈 기호는 가로 방향으로 직선 형태이므로, 최상위 좌표와 최하위 좌표가 동일하거나 혹은 거의 유사한 값을 갖는다. 그러므로, 문자 인식부(120)에서는 입력된 문자의 최상위 좌표와 최하위 좌표의 차이가 제1 범위 이내이면 현재 문자는 분수 기호 혹은 뺄셈 기호로 판단한다. 여기서, 제1 범위는 가로 방향으로 직선 형태를 갖는 기호를 식별하기 위한 것이므로, 매우 작은 범위로 설 정된다.
또한, 분수 기호의 경우에는 분수 기호의 상하 방향에 다른 문자가 존재하게 되나, 뺄셈 기호의 경우에는 뺄셈 기호의 상하 방향에 다른 문자가 존재하지 않는다. 이를 이용하여, 문자 인식부(120)에서는 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 현재 문자를 분수 기호로 인식한다.
즉, 문자 인식부(120)는 입력된 문자의 최상위 좌표와 최하위 좌표의 차이가 제1 범위 이내이고, 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하면, 현재 입력된 문자는 분수 기호로 판단한다. 또한, 문자 인식부(120)는 입력된 문자의 최상위 좌표와 최하위 좌표의 차이가 제1 범위 이내이고, 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하지 않으면, 현재 입력된 문자는 뺄셈 기호로 판단한다.
유효영역 설정부(130)는 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 그 문자의 기설정된 유효영역으로의 포함 여부를 결정하고, 결정된 포함 여부를 반영하여 최종 유효영역을 설정한다.
보다 구체적으로, 유효영역 설정부(130)는 문자 인식부(120)에 의해 현재 설정된 후보영역이 기설정된 유효영역과 인접할 경우에는 현재 설정된 후보영역을 기설정된 유효영역에 포함시킨다. 또한, 유효영역 설정부(130)는 문자 인식부(120)에 의해 현재 설정된 후보영역이 기설정된 유효영역과 인접하지 않을 경우에는 현재 설정된 후보영역을 새로운 유효영역으로 설정한다. 여기서, 기설정된 유효영역은 최초로 입력된 문자의 후보영역 및 이전에 설정된 유효영역 중 어느 하나일 수 있다.
유효영역 설정부(130)에 의해 설정된 하나의 유효영역 내에 포함되는 문자들은 하나의 수식을 구성하는 문자가 된다. 사용자가 복수의 수식을 동시에 입력한 경우, 유효영역 설정부(130)에 의해 복수의 최종 유효영역이 설정된다. 예를 들면, 사용자가 3개의 수식을 동시에 입력하였다면, 유효영역 설정부(130)에 의해 3개의 최종 유효영역이 설정된다.
수식 인식부(140)는 유효영역 설정부(130)에 의해 설정된 최종 유효영역 내의 문자들을 이용하여 수식을 인식한다. 유효영역 설정부(130)에 의해 복수의 최종 유효영역이 설정된 경우, 수식 인식부(140)는 복수의 최종 유효영역에서 각각의 수식을 인식한다.
연산부(150)는 수식 인식부(140)에 의해 인식된 하나 혹은 복수의 수식들을 각각 연산한다. 연산부(150)에서는 가감승제와 같은 기본적인 연산기호를 사용한 수식뿐만 아니라, 공학 계통에서 사용하는 연산기호를 사용한 수식까지 연산이 가능하다. 연산부(150)는 수식에 대한 연산이 완료되면, 그 연산 결과를 제어부(180)로 제공하여 연산 결과가 인터페이스부(110)를 통해 디스플레이될 수 있도록 한다.
카메라부(160)는 통상의 카메라 장치와 같이 이미지를 촬영하는 것으로, 여기에서는 수식이 인쇄되어 있는 도서 등에서 연산하고자 하는 수식의 이미지를 촬영한다. 카메라부(160)에 의해 촬영된 수식의 이미지는 사용자가 인터페이스부(110)를 통해 입력한 수식과 동일한 절차에 의해 인식될 수 있으며, 이에 따라 그 연산 결과를 얻을 수 있다. 즉, 카메라부(160)는 촬상 방식으로 문자를 입력받는다.
저장부(170)는 수식 연산 장치(100)의 동작에 필요한 정보들을 저장한다. 일 예로, 저장부(170)는 사용자가 수식을 입력할 때, 문자 인식부(120)는 실시간으로 입력되는 문자를 인식하게 되는데, 수식의 연산이 완료될 때까지 실시간으로 인식된 문자를 저장할 수 있다. 또한, 저장부(170)는 문자 인식부(120)에서 분수 기호와 뺄셈 기호를 구분하기 위하여 사용하는 제1 범위 및 제2 범위의 크기를 저장할 수 있다.
제어부(180)는 수식 연산 장치(100)의 전반적인 기능을 제어하는 것으로, 인터페이스부(110), 문자 인식부(120), 유효영역 설정부(130), 수식 인식부(140), 연산부(150), 및 저장부(170)들간의 신호 입출력을 제어한다.
제어부(180)는 수식 인식부(140)에 의해 하나 이상의 수식이 인식되면, 인식된 수식이 올바른지 사용자가 판단할 수 있도록 하기 위하여, 인터페이스부(110)에 인식된 수식을 표시하도록 제어할 수 있다. 또한, 제어부(180)는 연산부(150)에 의해 사용자가 입력한 수식의 연산이 완료되면, 그 연산 결과를 인터페이스부(110)에 표시하도록 제어할 수 있다.
도 2는 본 발명의 일 실시예에 따른 후보영역 및 유효영역 설정 방법을 설명하기 위한 도면이다.
사용자가
Figure 112009026145382-pat00001
를 연산하고자 하는 경우, 일 예로, 사용자가 루트 기 호(√)를 먼저 입력하고 다음에 "2+5"를 입력했다고 가정한다. 즉, 도 2에 예시한 수식에서 문자의 입력 순서는 "√", "2", "+", "5"의 순서라고 가정한다.
문자의 입력순서에 따라 문자 인식부(120)는 각 문자를 인식한다. 구체적으로, 문자 인식부(120)는 "√"가 입력되면, 입력된 "√"의 최상위 좌표(P1), 최하위 좌표(P2), 최우측 좌표, 및 최좌측 좌표를 이용하여 후보영역을 설정하고, 설정된 후보영역 내에서 "√"를 인식한다. 이때, 본 수식 연산 장치(100)에 "√"가 최초로 입력된 문자이므로, 유효영역 설정부(130)는 "√"의 후보영역(A1)을 유효영역으로 설정한다.
이후, 문자 인식부(120)는 문자의 입력 순서에 따라 "2", "+", "5"의 후보영역(A2 내지 A4)를 설정한다. 문자 인식부(120)에 의해 "2", "+", "5"의 후보영역(A2 내지 A4)이 설정되면, 유효영역 설정부(130)는 "2", "+", "5"의 후보영역(A2 내지 A4)이 "√"의 후보영역(A1)과 인접하는지 여부를 판단한다.
도 2에서 "2", "+", "5"의 후보영역(A2 내지 A4)은 "√"의 후보영역(A1) 내에 모두 포함된다. 그러므로, "√", "2", "+", "5"의 문자가 하나의 유효영역 내에 존재하게 되며, 이후 수식 인식부(140)에 의해
Figure 112009026145382-pat00002
의 수식이 인식될 수 있다.
다른 예로, "2+5"를 먼저 입력하고, 다음에 루트 기호(√)를 입력했다고 가정한다. 즉, 하나의 수식에서 문자의 입력 순서가 "2", "+", "5", "√" 순서로 입력된 것으로 가정한다.
문자의 입력 순서 즉, "2", "+", "5", "√" 순으로 문자 인식부(120)는 각 문자를 인식한다. 또한, 후보영역 설정부(130)는 각 문자별 후보영역(A1 내지 A4)를 설정한다. 여기서는, 문자의 입력 순서가 "2", "+", "5", "√" 순이기 때문에, 후보영역 설정부(130)에서는 숫자 "2"의 후보영역(A2), 연산기호 "+"의 후보영역(A3), 및 숫자 "5"의 후보영역(A4), 및 연산기호 "√"의 후보영역(A1)의 순서로 4개의 후보영역을 각각 설정한다.
이때, 유효영역 설정부(130)는 최초 입력된 문자인 "2"의 후보영역(A2)을 유효영역으로 설정한다. 이후, 유효영역 설정부(130)는 다음에 설정되는 "+"의 후보영역(A3)이 기설정된 유효영역 즉, "2"의 후보영역(A2)과 인접하는지의 여부에 따라 두 영역(A2, A3)이 인접할 경우 "+"의 후보영역(A3)을 포함하도록 유효영역을 확장한다. 이러한 과정은 마지막 문자까지 반복된다. 최종적으로는, "√"의 후보영역을 포함하도록 유효영역이 확장된다.
상술한 바와 같이, 하나의 수식을 입력할 때, 그 수식을 구성하는 문자들의 입력 순서에는 상관없이 동일한 유효영역이 설정된다. 그러므로, 사용자가 수식을 입력함에 있어 그 입력순서에 제약 없이 편리하게 입력할 수 있다. 도시한 바와 같이, 후보영역(A1 내지 A4) 및 유효영역은 사각형 형상으로 설정되는 것이 바람직하다.
도 3은 본 발명의 다른 실시예에 따른 후보영역 및 유효영역 설정 방법을 설명하기 위한 도면이다.
도 3에서는 분수 형태의 수식이 입력되었을 때의 후보영역과 유효영역의 설 정 방법을 살펴본다. 도시한 바와 같이,
Figure 112009026145382-pat00003
의 수식을 예로 들어 설명한다.
상기 수식에서 분수 기호를 먼저 입력하고, 나머지 문자들을 입력하는 것을 예로 들어 설명한다. 분수 기호가 입력되면, 문자 인식부(120)는 입력된 문자가 분수 기호인지 혹은 뺄셈 기호인지를 먼저 판단하여야 한다. 문자 인식부(120)는 분수 기호와 뺄셈 기호의 구분 방식으로 그 문자의 상하 방향에 다른 문자가 존재하는지의 여부로 결정할 수 있다.
문자 인식부(120)는 입력된 문자의 최상위 좌표(P3)와 최하위 좌표(P4)의 차이가 제1 범위 이내이고, 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 이 문자를 분수 기호로 인식한다.
여기서, 최상위 좌표(P3)와 최하위 좌표(P4)의 차이가 제1 범위 이내에 속하는지를 판단하는 이유는, 분수 기호와 뺄셈 기호는 가로 방향의 직선 형태이므로, 최상위 좌표(P3)와 최하위 좌표(P4)의 차이가 없거나 혹은 약간의 차이만이 있기 때문이다. 그러므로, 작은 크기의 제1 범위를 설정하여 최상위 좌표(P3)와 최하위 좌표(P4)의 차이가 제1 범위 이내에 속할 경우는 그 문자가 분수 기호 혹은 뺄셈 기호인 것으로 판단할 수 있다.
이후, 분수 기호와 뺄셈 기호를 구분하여야 하는데, 뺄셈 기호의 경우 그 상하 방향에 다른 문자가 존재할 가능성이 없다. 그러므로, 그 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단될 경우 해당 문자를 분수 기호로 판단한다.
문자 인식부(120)는 입력된 문자가 분수 기호인 것으로 인식되면, 이전에 입력된 문자들의 평균 높이를 기준으로 분수 기호의 상하 방향으로 소정 크기의 후보영역을 설정한다. 이때, 분수 기호의 상하 방향으로 설정되는 후보영역은 분수 기호의 상하 방향 각각으로 이전에 입력된 문자들의 평균 높이의 1.5배에 해당하는 크기로 설정될 수 있다. 혹은, 문자 인식부(120)는 입력된 문자가 분수 기호인 것으로 인식되었을 경우, 분수 기호에 대하여는 기설정된 크기의 후보영역을 설정할 수도 있다.
문자 인식부(120)는 분수 기호가 인식되면, 분수 기호를 중심으로 그 상하 방향으로 소정 크기의 분수 기호에 대한 후보영역(B1)을 설정한다. 이후, 분수 기호를 제외한 다른 문자들이 더 입력되고, 이 각각의 문자들에 대하여도 후보영역(B2 내지 B8)이 설정된다.
여기서, 문자 인식부(120)에 의해 인식된 분수 기호는 최초 입력된 문자일 수 있고, 혹은 그렇지 않을 수 있다. 만약, 분수 기호가 최초 입력된 문자일 경우, 유효영역 설정부(130)는 분수 기호의 후보영역(B1)을 유효영역으로 설정한다. 또한, 분수 기호가 최초 입력된 문자가 아닐 경우, 유효영역 설정부(130)는 분수 기호의 후보영역(B1)을 기설정된 유효영역과 인접하는지를 비교하고, 분수 기호의 후보영역(B1)이 기설정된 유효영역과 인접할 경우에는 분수 기호가 기설정된 유효영역에 포함되도록 기설정된 유효영역을 확장하고, 인접하지 않을 경우에는 분수 기 호의 후보영역(B1)을 새로운 유효영역으로 설정한다. 본 실시예에서는 분수 기호의 후보영역(B1)은 기설정된 유효영역과 인접하지 않는 것으로 가정한다.
그런데, 도시한 바와 같이, 분수 기호에 대한 후보영역(B1)의 범위 내에 다른 문자들에 대한 후보영역(B2 내지 B8)이 모두 포함되어 있다. 그러므로, 유효영역 설정부(130)는 이전에 설정된 유효영역을 확장할 필요가 없다.
여기에서는 분수 기호가 가장 먼저 입력되고 그 이후에 다른 문자들이 입력된 상태를 예시하였으나, 도 3에서 설명한 바와 같이 하나의 수식을 구성하는 문자들의 입력순서는 수식 인식에 영향을 주지 않는다. 그러므로, 사용자는 입력 순서에 제한 없이 편하게 수식을 입력할 수 있다.
도 4는 본 발명의 일 실시예에 따른 수식 연산 장치에서 수식 연산 결과를 보여주는 상태를 예시한 도면이다.
도 4는 본 수식 연산 장치(100)에서 사용자가 입력한 수식과 함께 그 수식의 연산 결과를 보여주는 화면을 예시한 것이다. 사용자는 인터페이스부(110)를 통해 3개의 수식을 입력하였으며, 사용자가 입력한 3개의 수식이 입력창(111)에 표시되었다.
이후, 문자 인식부(120), 유효영역 설정부(130), 수식 인식부(140), 및 연산부(150)의 동작에 의해 3개의 수식에 대한 연산 결과 창(112)이 입력창(111)의 일측에 표시된다.
입력창(111)의 하부에는 사용자가 입력한 수식을 문자 인식부(120), 유효영역 설정부(130), 및 수식 인식부(140)의 동작에 의해 인식한 결과를 보여주는 수식 인식 결과 창(113)이 표시될 수 있다. 이를 통해, 사용자는 연산 동작을 수행하도록 하기 이전에 자신이 입력한 수식이 정확하게 인식되었는지를 판단하고, 잘못된 경우 정정할 수 있다.
수식 인식 결과 창(113)의 하부에는 사용자가 수식에 대한 연산 동작을 요청하기 위한 "Calculation" 버튼(114)과 다른 메뉴 사용을 요청하기 위한 "Menu" 버튼(115)이 구비될 수 있다.
"Calculation" 버튼(114)은 입력창(111)에 입력한 수식에 대한 연산을 요청할 때 사용된다. 또한, "Menu" 버튼(115)은 수식 인식 결과 창(113)에 표시된 수식이 잘못 인식되었을 경우 재인식을 요청하는 메뉴를 조작하거나 혹은 수식 연산 동작 이외의 다른 기능을 요청하기 위해 사용될 수 있다.
사용자가 입력창(111)에 연산하고자 하는 하나 이상의 수식을 입력하면, 수식 인식 결과 창(113)에 수식 연산 장치(100)의 수식 인식 결과가 표시되고, 사용자는 수식 인식 결과 창(113)을 통해 자신이 입력한 수식이 올바르게 인식되었다면, "Calculation" 버튼(114)을 클릭하여 수식에 대한 연산을 요청한다.
이러한 동작에 의해, 입력창(111)의 일측에는 연산 결과 창(112)이 오버랩 형태로 표시될 수 있다. 도시한 바와 같이, 연산 결과 창(112)에는 3개의 수식에 대한 연산 결과가 모두 표시된다. 이때, 연산 결과 창(112)에는 복수의 수식이 입력창(111)에 표시된 순서에 따라 그 연산 결과가 표시되는 것이 바람직하다.
도 5는 본 발명의 일 실시예에 따른 수식 연산 방법을 설명하기 위한 흐름도이다.
여기에서는 도 1 내지 도 5를 참조하여 본 발명의 일 실시예에 따른 수식 연산 방법을 설명한다.
본 수식 연산 장치(100)를 이용하여 수식을 연산하고자 하는 경우, 사용자는 인터페이스부(110)의 입력창(111)에 연산하고자 하는 수식을 직접 입력한다(S201). 이때, 입력창(111)에 입력되는 수식은 하나 혹은 그 이상이다.
문자 인식부(120)는 입력창(111)에 입력되는 순서에 따라 후보영역을 설정하고(S203), 후보영역 내에서 문자를 인식한다(S205).
유효영역 설정부(130)는 기설정된 유효영역과 현재 설정된 후보영역이 서로 인접하는지 여부를 판단한다(S207). S207 단계에서, 유효영역 설정부(130)는 두 영역이 서로 인접하는 것으로 판단되면, 두 영역이 동일 수식 범위에 속하는 것으로 판단하여 현재 설정된 후보영역을 기설정된 유효영역에 포함시키고(S209), 두 영역이 서로 인접하지 않는 것으로 판단되면, 두 영역이 다른 수식 범위에 속하는 것으로 판단하여 현재 설정된 후보영역을 새로운 유효영역으로 설정한다(S211). 이러한 절차는 입력된 모든 문자에 대하여 반복 수행된다.
유효영역 설정부(130)에 의해 최종 유효영역이 설정되면, 수식 인식부(140)는 최종 유효영역 내의 문자를 이용하여 수식을 인식한다. 이때, 사용자에 의해 입력된 수식이 복수이면, 수식 인식부(140)에 의해 복수의 수식이 인식된다(S213).
연산부(150)는 수식 인식부(140)에 의해 인식된 하나 혹은 복수의 수식을 연산하고(S215), 연산부(150)에 의해 연산된 수식 연산 결과는 인터페이스부(110)의 입력창(111)의 일측에 표시된다(S217).
상술한 바와 같이, 사용자는 키패드를 조작할 필요 없이 필기하듯이 입력창(111)에 연산하고자 하는 수식을 입력하여 손쉽게 수식의 연산 결과를 얻을 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형 실시예들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
도 1은 본 발명의 일 실시예에 따른 수식 연산 장치의 블럭도,
도 2는 본 발명의 일 실시예에 따른 후보영역 및 유효영역 설정 방법을 설명하기 위한 도면,
도 3은 본 발명의 다른 실시예에 따른 후보영역 및 유효영역 설정 방법을 설명하기 위한 도면,
도 4는 본 발명의 일 실시예에 따른 수식 연산 장치에서 수식 연산 결과를 보여주는 상태를 예시한 도면, 그리고,
도 5는 본 발명의 일 실시예에 따른 수식 연산 방법을 설명하기 위한 흐름도이다.
* 도면의 주요부분에 대한 부호의 설명 *
100 : 수식 연산 장치 110 : 인터페이스부
120 : 문자 인식부 130 : 유효영역 설정부
140 : 수식 인식부 150 : 연산부
160 : 카메라부 170 : 저장부
180 : 제어부

Claims (20)

  1. 입력된 문자를 인식하는 단계;
    상기 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 상기 입력된 문자의 상기 기설정된 유효영역으로의 포함 여부를 결정하는 단계;
    상기 결정된 포함 여부를 반영하여 최종 유효영역을 설정하는 단계;
    상기 설정된 최종 유효영역 내의 문자를 이용하여 수식을 인식하는 단계; 및
    상기 인식된 수식을 연산하여 연산 결과를 디스플레이하는 단계;를 포함하고,
    상기 인식하는 단계는,
    상기 입력된 문자의 최상위 좌표, 최하위 좌표, 최우측 좌표, 및 최좌측 좌표를 이용하여 상기 입력된 문자를 포함하는 후보영역을 설정하는 단계; 및
    상기 설정된 후보영역 내의 문자를 인식하는 단계;를 포함하며,
    상기 문자를 인식하는 단계에서, 상기 입력된 문자의 상기 최상위 좌표와 상기 최하위 좌표의 차이가 제1 범위 이내이고, 상기 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 상기 입력된 문자를 분수 기호로 인식하는 것을 특징으로 하는 수식 연산 방법.
  2. 제 1 항에 있어서,
    수기 입력 또는 촬상 방식으로 문자를 입력받는 단계;를 더 포함하는 것을 특징으로 하는 수식 연산 방법.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 기설정된 유효영역은, 최초로 입력된 문자의 후보영역, 및 이전에 설정된 유효영역 중 어느 하나인 것을 특징으로 하는 수식 연산 방법.
  5. 제 1 항에 있어서,
    상기 최종 유효영역을 설정하는 단계는,
    상기 입력된 문자와 상기 기설정된 유효영역이 서로 인접하면, 상기 입력된 문자의 후보영역을 상기 기설정된 유효영역에 포함시키고, 상기 입력된 문자와 상기 기설정된 유효영역이 인접하지 않으면, 상기 입력된 문자의 후보영역을 새로운 유효영역으로 설정하는 것을 특징으로 하는 수식 연산 방법.
  6. 삭제
  7. 제 1 항에 있어서,
    상기 후보영역을 설정하는 단계에서, 상기 입력된 문자가 상기 분수 기호로 인식되면, 이전에 입력된 문자들의 평균 높이를 기준으로 상기 분수 기호의 상하 방향으로 후보영역을 설정하는 것을 특징으로 하는 수식 연산 방법.
  8. 제 7 항에 있어서,
    상기 분수 기호의 상하 방향으로 설정되는 후보영역은, 상기 분수 기호의 상하 방향 각각으로 상기 이전에 입력된 문자들의 평균 높이의 1.5배에 해당하는 크기로 설정되는 것을 특징으로 하는 수식 연산 방법.
  9. 제 1 항에 있어서,
    복수의 수식을 입력받는 단계;를 더 포함하고,
    상기 최종 유효영역을 설정하는 단계는, 상기 입력받은 복수의 수식에 대하여 복수의 유효영역을 설정하며,
    상기 수식을 인식하는 단계는, 상기 설정된 복수의 유효영역 각각에서 수식을 인식하는 것을 특징으로 하는 수식 연산 방법.
  10. 제 9 항에 있어서,
    상기 디스플레이하는 단계는, 상기 복수의 유효영역 각각에서 인식된 복수의 수식을 각각 연산하여 복수의 연산 결과를 동시에 디스플레이하는 것을 특징으로 하는 수식 연산 방법.
  11. 입력된 문자를 인식하는 문자 인식부;
    상기 입력된 문자와 기설정된 유효영역의 인접 여부에 따라 상기 입력된 문자의 상기 기설정된 유효영역으로의 포함 여부를 결정하고, 상기 결정된 포함 여부를 반영하여 최종 유효영역을 설정하는 유효영역 설정부;
    상기 설정된 최종 유효영역 내의 문자를 이용하여 수식을 인식하는 수식 인식부; 및
    상기 인식된 수식을 연산하여 연산 결과를 디스플레이하는 인터페이스부;를 포함하고,
    상기 문자 인식부는, 상기 입력된 문자의 최상위 좌표, 최하위 좌표, 최우측 좌표, 및 최좌측 좌표를 이용하여 상기 입력된 문자를 포함하는 후보영역을 설정하고, 상기 설정된 후보영역 내의 문자를 인식하며, 상기 입력된 문자의 상기 최상위 좌표와 상기 최하위 좌표의 차이가 제1 범위 이내이고, 상기 입력된 문자의 상하 방향으로 제2 범위 이내에 다른 문자가 존재하는 것으로 판단되면, 상기 입력된 문자를 분수 기호로 인식하는 것을 특징으로 하는 수식 연산 장치.
  12. 제 11 항에 있어서,
    상기 인터페이스부는, 수기 입력 방식으로 상기 문자를 입력받는 것을 특징으로 하는 수식 연산 장치.
  13. 제 11 항에 있어서,
    촬상 방식으로 상기 문자를 입력받는 카메라부;를 더 포함하는 것을 특징으로 하는 수식 연산 장치.
  14. 삭제
  15. 제 11 항에 있어서,
    상기 기설정된 유효영역은, 최초로 입력된 문자의 후보영역, 및 이전에 설정된 유효영역 중 어느 하나인 것을 특징으로 하는 수식 연산 장치.
  16. 제 11 항에 있어서,
    상기 유효영역 설정부는, 상기 입력된 문자와 상기 기설정된 유효영역이 서로 인접하면, 상기 입력된 문자의 후보영역을 상기 기설정된 유효영역에 포함시키고, 상기 입력된 문자와 상기 기설정된 유효영역이 인접하지 않으면, 상기 입력된 문자의 후보영역을 새로운 유효영역으로 설정하는 것을 특징으로 하는 수식 연산 장치.
  17. 삭제
  18. 제 11 항에 있어서,
    상기 문자 인식부는, 상기 입력된 문자가 상기 분수 기호로 인식되면, 이전에 입력된 문자들의 평균 높이를 기준으로 상기 분수 기호의 상하 방향으로 후보영역을 설정하는 것을 특징으로 하는 수식 연산 장치.
  19. 제 18 항에 있어서,
    상기 분수 기호의 상하 방향으로 설정되는 후보영역은, 상기 분수 기호의 상하 방향 각각으로 상기 이전에 입력된 문자들의 평균 높이의 1.5배에 해당하는 크기로 설정되는 것을 특징으로 하는 수식 연산 장치.
  20. 제 11 항에 있어서,
    상기 인터페이스부는, 복수의 수식에 대한 연산결과를 디스플레이하는 것을 특징으로 하는 수식 연산 장치.
KR1020090037730A 2009-04-29 2009-04-29 수식 연산 방법 및 장치 KR101069843B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090037730A KR101069843B1 (ko) 2009-04-29 2009-04-29 수식 연산 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090037730A KR101069843B1 (ko) 2009-04-29 2009-04-29 수식 연산 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20100118829A KR20100118829A (ko) 2010-11-08
KR101069843B1 true KR101069843B1 (ko) 2011-10-04

Family

ID=43405015

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090037730A KR101069843B1 (ko) 2009-04-29 2009-04-29 수식 연산 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101069843B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101593791B1 (ko) 2014-04-18 2016-02-15 전양숙 씨씨디 촬상소자를 이용하여 촬영된 수기로 기록된 공학문제 이미지를 인식하여 연산하는 공학계산장치
KR102058455B1 (ko) * 2012-08-08 2019-12-23 삼성전자 주식회사 단말의 캐릭터 입력 모드에서 연산을 수행하는 방법 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102061798B1 (ko) 2012-12-20 2020-01-03 삼성전자주식회사 수식 연산 방법 및 그 전자 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102058455B1 (ko) * 2012-08-08 2019-12-23 삼성전자 주식회사 단말의 캐릭터 입력 모드에서 연산을 수행하는 방법 및 장치
KR101593791B1 (ko) 2014-04-18 2016-02-15 전양숙 씨씨디 촬상소자를 이용하여 촬영된 수기로 기록된 공학문제 이미지를 인식하여 연산하는 공학계산장치

Also Published As

Publication number Publication date
KR20100118829A (ko) 2010-11-08

Similar Documents

Publication Publication Date Title
US10373009B2 (en) Character recognition and character input apparatus using touch screen and method thereof
US8279182B2 (en) User input device and method using fingerprint recognition sensor
KR100823083B1 (ko) 터치스크린을 구비한 문서 표시장치의 문서 교정 방법 및그 장치
EP2228731B1 (en) Calculator with a touch panel for entering handwritten numerical expressions and computer readable medium
EP2725458B1 (en) Information processing device, input control method, and input control program
JP5075997B2 (ja) 電子機器、プログラムおよび文字列認識方法
US9323437B2 (en) Method for displaying scale for enlargement and reduction operation, and device therefor
US20170249293A1 (en) Method for inserting characters in a character string and the corresponding digital service
CN108694400B (zh) 信息处理装置、其控制方法及存储介质
CN102750003B (zh) 文本输入的方法和装置
TW201305925A (zh) 手寫文字輸入裝置及手寫文字輸入方法
KR20110104620A (ko) 휴대용 단말기에서 문자 입력 방법 및 장치
WO2012086133A1 (ja) タッチパネル装置
EP2775384A2 (en) Electronic apparatus having software keyboard function and method of controlling electronic apparatus having software keyboard function
KR101069843B1 (ko) 수식 연산 방법 및 장치
JP2011076173A (ja) 文字入力装置、文字入力方法および文字入力プログラム
US11244138B2 (en) Hologram-based character recognition method and apparatus
JP6655331B2 (ja) 電子機器及び方法
JP6373664B2 (ja) 電子機器、方法及びプログラム
JP6318794B2 (ja) 情報処理装置及び情報処理プログラム
KR101348763B1 (ko) 손동작에 의한 인터페이스 조작 장치 및 방법, 그리고 컴퓨터로 읽을 수 있는 기록매체
CN107422880B (zh) 基于触控板的输入方法、装置、系统及输入装置
CN111949141B (zh) 一种手写文字输入方法、装置、电子设备及存储介质
JP5196599B2 (ja) 手書き入力装置、手書き入力処理方法及びプログラム
CN108733227B (zh) 输入装置及其输入方法

Legal Events

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

Payment date: 20140918

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150825

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160923

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee