WO2023140089A1 - コンピュータ、プログラム、及びストロークデータ表示制御方法 - Google Patents

コンピュータ、プログラム、及びストロークデータ表示制御方法 Download PDF

Info

Publication number
WO2023140089A1
WO2023140089A1 PCT/JP2022/048545 JP2022048545W WO2023140089A1 WO 2023140089 A1 WO2023140089 A1 WO 2023140089A1 JP 2022048545 W JP2022048545 W JP 2022048545W WO 2023140089 A1 WO2023140089 A1 WO 2023140089A1
Authority
WO
WIPO (PCT)
Prior art keywords
stroke data
data
input
stroke
ink
Prior art date
Application number
PCT/JP2022/048545
Other languages
English (en)
French (fr)
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 WO2023140089A1 publication Critical patent/WO2023140089A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/02Electrically-operated teaching apparatus or devices working with questions and answers of the type wherein the student is expected to construct an answer to the question which is presented or wherein the machine gives an answer to the question presented by a student

Definitions

  • the present invention relates to a computer, a program, and a stroke data display control method, and more particularly to a computer and program using stroke data, and a stroke data display control method for controlling the display of stroke data.
  • Patent Document 1 discloses a technique for reproducing such an input process.
  • one of the objects of the present invention is to provide a computer, a program, and a stroke data display control method that allow the user to easily grasp whether or not the answer was given in the expected state.
  • a computer is a computer including a processor, wherein the processor acquires a plurality of stroke data, determines whether or not the plurality of stroke data has been input in a predetermined state, and controls the display state when displaying the plurality of stroke data based on the result of the determination.
  • a program according to the present invention is a program for causing a computer to execute a step of obtaining a plurality of stroke data, a step of determining whether or not the plurality of stroke data has been input in a predetermined state, and a step of controlling a display state when displaying the plurality of stroke data based on the result of the determination.
  • a stroke data display control method is a stroke data display control method including the step of obtaining a plurality of pieces of stroke data by a computer, the step of determining whether or not the plurality of pieces of stroke data have been input in a predetermined state, and the step of controlling the display state when the plurality of pieces of stroke data are displayed based on the result of the determination.
  • a computer may be a computer including a processor, wherein the processor acquires ink data including a plurality of stroke data, determines whether or not the plurality of stroke data has been input in a predetermined state, and controls the display state when displaying the ink data based on the result of the determination.
  • the program according to the present invention may be a program for causing a computer to execute the steps of acquiring ink data including a plurality of stroke data, determining whether or not the plurality of stroke data has been input in a predetermined state, and controlling the display state when displaying the ink data based on the result of the determination.
  • An ink data display control method is an ink data display control method including the steps of: a computer acquiring ink data including a plurality of stroke data; the computer determining whether or not the plurality of stroke data has been input in a predetermined state; and the computer controlling a display state when the ink data is displayed based on the result of the determination.
  • the present invention it is possible to easily grasp from the appearance of the ink data whether or not the user was able to answer in the expected state.
  • FIG. 1 is a diagram showing the system configuration of an ink data processing system 1 according to an embodiment of the invention
  • FIG. 3 is a diagram showing an example of the hardware configuration of each of the student terminal 2, the teacher terminal 3, and the ink server 4
  • FIG. 4 is a diagram showing the configuration of answer ink data
  • 4 is a diagram showing an example of an answer window displayed on the display of the teacher's terminal 3
  • FIG. 7 is a processing flow diagram showing processing performed by the student terminal 2 to acquire answer ink data
  • 8 is a diagram showing processing executed by an ink server 4 that stores answer ink data in an ink database 6
  • FIG. FIG. 7 is a processing flow diagram showing a specific example of processing executed by the ink server 4 in step S22 shown in FIG. 6
  • 4 is a diagram showing processing executed by an ink server 4 in response to an answer window transmission request from a teacher terminal 3.
  • FIG. 3 is a diagram showing an example of the hardware configuration of each of the student terminal 2, the teacher terminal 3, and the ink server 4
  • FIG. 1 is a diagram showing the system configuration of an ink data processing system 1 according to an embodiment of the invention.
  • the ink data processing system 1 has a configuration in which a student terminal 2 , a teacher terminal 3 and an ink server 4 are interconnected via a network 5 .
  • An ink database 6 is also connected to the ink server 4 .
  • FIG. 2 is a diagram showing an example of the hardware configuration of each of the student terminal 2, teacher terminal 3, and ink server 4.
  • the student terminal 2, teacher terminal 3, and ink server 4 can each be configured by a computer 100 having the illustrated configuration. Note that the ink server 4 may be configured by connecting a plurality of computers 100 .
  • the computer 100 has a configuration in which a CPU (Central Processing Unit) 101, a storage device 102, an input device 103, an output device 104, and a communication device 105 are interconnected via a bus 106.
  • a CPU Central Processing Unit
  • the CPU 101 is a device (processor) that controls each part of the computer 100 and reads and executes various programs stored in the storage device 102 .
  • Each process described later with reference to FIGS. 3 to 8 is realized by executing a program stored in the storage device 102 by the CPU 101 of the student terminal 2, teacher terminal 3, and ink server 4.
  • FIG. 1 A block diagram illustrating an exemplary computing environment in accordance with the present disclosure.
  • the storage device 102 includes a main storage device such as a DRAM (Dynamic Random Access Memory) and an auxiliary storage device such as a hard disk, and serves to store the operating system of the computer 100, various programs for executing various applications, and data used by these programs.
  • main storage device such as a DRAM (Dynamic Random Access Memory)
  • auxiliary storage device such as a hard disk
  • the input device 103 is a device that receives a user's input operation and supplies it to the CPU 101, and includes, for example, a keyboard, a mouse, and a touch detection device.
  • the touch detection device is a device including a touch sensor and a touch controller, and is used to detect pen input or touch input.
  • a pen P shown in FIG. 1 is an electronic pen used to perform pen input to the touch detection device of the student terminal 2 .
  • Pen input by the pen P is realized by, for example, an active electrostatic method or an electromagnetic induction method.
  • Touch input is input by a passive pointer such as a finger, and is realized by, for example, a capacitive method.
  • the output device 104 is a device that outputs the processing results of the CPU 101 to the user, and includes, for example, a display and a speaker.
  • a communication device 105 is a device for communicating with an external device, and transmits and receives data according to instructions from the CPU 101 .
  • the student terminal 2, teacher terminal 3, and ink server 4 each use this communication device 105 to communicate with other devices, systems, networks, and the like.
  • the ink database 6 is a storage device for storing various data necessary for correspondence education.
  • the various types of data include educational material data provided to students, ink data indicating student answers to questions contained in the educational material data (hereinafter referred to as "answer ink data"), and the like.
  • the substance of the ink database 6 may be implemented in a computer separate from the ink server 4 or may be implemented in the storage device 102 of the ink server 4 .
  • the ink server 4 is a server computer used by a correspondence education service provider company, and plays the role of providing teaching material data in the ink database 6 to the student terminals 2, acquiring answer ink data from the student terminals 2 and storing it in the ink database 6, as well as generating a screen containing the student's answers (hereinafter referred to as "answer window") and providing it to the teacher terminal 3.
  • the ink server 4 also analyzes the answer ink data stored in the ink database 6 to determine whether or not each stroke data constituting the answer ink data has been input in a predetermined state, and based on the determination result, performs processing for controlling the display state (appearance) when the answer ink data is displayed in the answer window.
  • the student terminal 2 is a computer whose user is a correspondence course student, and is configured to be able to execute student applications.
  • the student terminals 2 are tablet terminals, but other types of computers such as notebook computers, desktop computers, and smartphones may be used as long as they are equipped with a built-in or external input device and are compatible with pen input or touch input using the pen P.
  • the student application is a program for causing the student terminal 2 to receive the teaching material data from the ink server 4, display it on the display, and receive the input of the answer to the question included in the displayed teaching material data.
  • a student uses a student application after logging in using a student ID assigned in advance.
  • the student terminal 2 which operates according to the student application, identifies teaching material data to be acquired from the ink server 4 according to the student's operation, and requests the ink server 4 to transmit the identified teaching material data. Then, the educational material data transmitted by the ink server 4 as a result of the request is received and displayed on the display.
  • the teaching material data is data that has a display screen that includes a plurality of questions, an answer input area for each question, and a submit button that indicates the end of answer input.
  • the question and answer input areas may be divided and displayed on a plurality of display screens (pages), and each page in that case is provided with a forward button for advancing to the next page and a return button for returning to the previous page, and the submit button is provided on the last page or on the global navigation commonly displayed on each page.
  • Each question is assigned a question ID for identifying the question, and the answer input area is also identified by this question ID.
  • a student terminal 2 operating according to a student application acquires answer ink data according to an input operation performed by a student for each answer input area, and is configured to transmit each answer ink data acquired so far to an ink server 4 together with a student ID and each question ID when the student presses a submit button.
  • Input operations for the answer input area are performed by pen input or touch input.
  • the touch detection device of the student terminal 2 periodically detects the position of the pen P within the touch surface, and based on the detection result, acquires stroke data indicating a series of strokes.
  • the stroke data acquired in this way is data containing a series of coordinates indicating the trajectory of the position of the pen tip from pen-down (when the pen comes into contact with the touch surface) to pen-up (when the pen leaves the touch surface).
  • the answer ink data consists of a series of stroke data entered by the student in the corresponding answer entry area.
  • FIG. 3 is a diagram showing the structure of answer ink data.
  • each stroke data constituting the answer ink data includes information indicating the input order of each stroke data in the answer ink data (hereinafter referred to as "stroke ID"), a time stamp including the stroke start time (pen-down time) that is the time when the student starts inputting the stroke, and the stroke end time (pen-up time) that is the time when the student finishes inputting the stroke, a series of coordinate data, and a status flag.
  • the state flag is data added by the ink server 4 to each stroke data in the answer ink data already stored in the ink database 6, and is not included in the stroke data at the stage output from the student terminal 2. Details of the status flag will be described later.
  • Each piece of coordinate data can include coordinates indicating the position of the pen P on the touch surface, pen pressure values indicating the pressure applied to the tip of the pen P, tilt data indicating the inclination of the pen P, and on/off information of the switch provided on the pen P.
  • the pen pressure value and the on/off information are data acquired by the pen P and transmitted from the pen P to the touch detection device of the student terminal 2 .
  • tilt data is data acquired by the touch detection device when the pen P has two pen tip electrodes.
  • the pen P in this case is configured to transmit pen signals from each of the two pen tip electrodes.
  • the touch detection device calculates the distance between the two pen tip electrodes by performing position derivation based on each of the two pen signals, and acquires tilt data based on the calculated distance.
  • the teacher terminal 3 is a computer whose user is a correspondence education teacher (grader), and is configured to be able to execute a teacher application.
  • the teacher terminal 3 is a personal computer such as a notebook computer or a desktop computer, but it may be a tablet terminal similar to the student terminal 2 or a smart phone.
  • the teacher application is a program for causing the teacher terminal 3 to receive and display an answer window from the ink server 4.
  • the teacher uses the teacher application after logging in using the teacher ID assigned in advance.
  • the teacher terminal 3 which operates according to the teacher's application, identifies the student ID and question ID according to the teacher's operation, and requests the ink server 4 to transmit the answer window corresponding to the identified student ID and question ID. Then, it receives the answer window sent by the ink server 4 as a result of the request and displays it on the display. By looking at the answer window thus displayed, the teacher can grasp the student's answer, and according to this embodiment, it is possible to grasp whether or not the answer has been input in a predetermined state.
  • FIG. 4 is a diagram showing an example of an answer window displayed on the display of the teacher's terminal 3.
  • the answer window is configured to display the rendering result of the answer ink data on the right side and the analysis result of the answer ink data on the left side.
  • the analysis result of the answer ink data can include the result of character recognition as shown in FIG. 4, as well as the analysis result of the answer ink data (recording start time, writing start time, writing end time, time from writing start to submission, total writing time, total stroke length, average writing speed, acceleration, average writing pressure, graph showing the relationship between time and writing pressure, etc.).
  • the analysis result of the answer ink data may include a pseudo-ink usage amount obtained from the stroke length or the like.
  • FIG. 4 two of the stroke data included in the rendering result of the answer ink data are marked with dashed-line rounded squares.
  • This rounded square mark indicates that the corresponding stroke data is drawn in a color different from that of other stroke data, and such a rounded square mark is not actually attached.
  • the ink server 4 is configured to refer to the state flag shown in FIG. 3 when drawing stroke data in the answer window, and change the drawing color according to the value of the state flag. By looking at the changed drawing color, the teacher can know that the input for that portion is not performed in a predetermined state.
  • FIG. 5 is a processing flow diagram showing processing performed by the student terminal 2 to acquire answer ink data.
  • this process starts with the process (step S1) in which the student terminal 2 displays teaching material data according to the operation of the student.
  • the teaching material data includes a display screen that includes a plurality of questions, an answer input area for each question, and a submit button indicating completion of answer input.
  • the process starts with the process (step S1) in which the student terminal 2 displays teaching material data according to the operation of the student.
  • the teaching material data includes a display screen that includes a plurality of questions, an answer input area for each question, and a submit button indicating completion of answer input.
  • the student terminal 2 that displays the teaching material data first determines whether or not the submission button has been pressed (step S2). If it is determined that the button has not been pressed, the student terminal 2 detects the coordinate data (step S3) and determines whether or not pen down has occurred (step S4).
  • the coordinate data detected in step S3 is data that can include the coordinates indicating the position of the pen P on the touch surface, the writing pressure value indicating the pressure applied to the tip of the pen P, the tilt data indicating the inclination of the pen P, and the on/off information of the switch provided on the pen P.
  • the determination result in step S4 is affirmative if the pen pressure value in the coordinate data detected in step S3 indicates that the pen pressure value has changed from 0 to a value greater than 0, and otherwise negative.
  • the question ID specified here is the question ID corresponding to the answer input area including the writing start position.
  • the student terminal 2 determines the stroke ID of the stroke data to be generated by referring to the generated stroke data for the identified question ID (step S6).
  • the stroke ID is, as described above, information indicating the input order of each stroke data in the answer ink data. Therefore, the student terminal 2 may determine a number obtained by adding 1 to the largest one of the one or more stroke IDs already assigned to the generated stroke data for the specified question ID, as the stroke ID of the stroke data to be generated from now on. Subsequently, the student terminal 2 records the current time as the stroke start time (step S7), and then shifts the process to step S8.
  • step S8 the student terminal 2 determines whether or not a pen-up has occurred (step S8).
  • the determination result of step S8 is affirmative if the writing pressure value in the coordinate data detected in step S3 indicates that the writing pressure value has changed from a value greater than 0 to 0, and is negative otherwise.
  • the student terminal 2 that determines in step S8 that the pen-up has not occurred records the coordinate data detected in step S3 (step S9), and then returns to step S2.
  • the student terminal 2 which determines in step S8 that the pen-up has occurred records the current time as the stroke end time (step S10), generates stroke data based on each data recorded after the pen-down (stroke start time, series of coordinate data, stroke end time), and records it in association with the question ID specified in step S5 and the stroke ID determined in step S6 (step S11). After that, the student terminal 2 returns the process to step S2.
  • the student terminal 2 that determined that the submit button was pressed in step S2 generates answer ink data including all recorded stroke data for each question ID, and transmits it to the ink server 4 together with the student ID (step S12).
  • the ink server 4 that has received the transmitted answer ink data stores each received answer ink data in the ink database 6 in association with the received student ID.
  • FIG. 6 is a diagram showing the processing executed by the ink server 4 that stores the answer ink data in the ink database 6.
  • the ink server 4 may execute the process shown in the figure immediately after storing the answer ink data in the ink database 6, or may execute the process shown in the figure by batch processing.
  • the ink server 4 first acquires answer ink data from the ink database 6 (step S20). Then, the answer ink data is analyzed by, for example, executing an instance of the InkToMath class for mathematically analyzing the ink data, and the analysis result is stored in the ink database 6 in association with the answer ink data (step S21).
  • the analysis results saved in this way can be used later when the ink server 4 generates an answer window, and can also be used when the ink data 4 executes the next step S22.
  • the ink server 4 that has executed step S21 next executes an instance of the InkStatistics class for performing statistical processing of ink data, for example, to determine whether or not each stroke data constituting the answer ink data acquired in step S20 has been input in a predetermined state. Then, based on the determination result, the appearance of the answer ink data is controlled (step S22).
  • the specific content of the predetermined state to be determined is not particularly limited, but for example, it is preferable to use, as the predetermined state, a state in which each stroke data is input without stumbling during an answer (that is, without a gap of a predetermined time or longer), a state in which each stroke data is input in a predetermined order, a state in which each stroke data is input while the pen is held within a predetermined tilt range, and the like.
  • FIG. 7 is a process flow diagram showing a specific example of the process executed by the ink server 4 in step S22 of FIG.
  • the example shown in FIG. 7 is an example in which a state in which each stroke data is input without stumbling during an answer is used as the predetermined state to be determined. Further, FIG. 7 shows an example of a case where processing using the analysis result obtained in step S21 of FIG. 6 is performed as preprocessing for executing the processing of step S22.
  • the ink server 4 first executes the processes of steps S31 and S32 for each line of the answer ink data indicated by the analysis result obtained in step S21 of FIG. 6 (step S30). Specifically, the ink server 4 performs a process of calculating a gap time, which is the time from the end of the input of the previous stroke data to the start of the input of the target stroke data, for each of the second and subsequent stroke data in the target line (steps S31 and S32). The ink server 4 may perform the calculation in step S32 based on the time stamps (stroke end time and stroke start time) included in each stroke data.
  • the ink server 4 calculates the quartile of the data group composed of the calculated total gap time (step S33), and calculates the determination reference value based on the calculated quartile (step S34). For example, the ink server 4 may calculate the third quartile (the median of the data group composed of data larger than the median of all data) of the data group composed of the calculated total gap times as the determination reference value.
  • the ink server 4 then executes the processes of steps S36 and S37 for each gap time calculated in steps S30 to S32 (step S35). Specifically, the ink server 4 determines whether or not the attention gap time is longer than the determination reference value (step S36), and if it is determined to be longer, sets the status flag (see FIG. 3) of the corresponding subsequent stroke data to false (step S37).
  • the state flag is Boolean data indicating whether or not the corresponding stroke data has been input in a predetermined state, and if the state flag is false, it indicates that the corresponding stroke data has not been input in a predetermined state. The default value of the status flag is true, and the status flag of stroke data not set to false here becomes true.
  • step S36 can be said to be a process of determining whether or not the input of the corresponding stroke data has been performed in a predetermined state. Also, in the rendering of the answer ink data performed in step S42 (see FIG. 8), which will be described later, the drawing color of the stroke data is changed according to the value of the state flag set in step S37. Therefore, it can be said that the process of step S37 is a process of controlling the appearance when the answer ink data is displayed based on the determination result of step S36.
  • FIG. 8 is a diagram showing the process executed by the ink server 4 in response to the request for transmission of the answer window from the teacher terminal 3.
  • the ink server 4 receives the answer window transmission request from the teacher terminal 3 (step S40), it acquires the corresponding answer ink data and its analysis result from the ink database 6 (step S41).
  • the request to send the answer window includes the student ID and the question ID, and the ink server 4 searches the ink database 6 using the student ID and question ID as keys to acquire the answer ink data and its analysis results.
  • the ink server 4 generates the requested answer window (step S42).
  • the ink server 4 renders the answer ink data obtained in step S41, and arranges the rendering result in the answer window together with the analysis result obtained in step S41.
  • the ink server 4 performs rendering using different drawing colors for stroke data whose state flag is true and stroke data whose state flag is false.
  • the stroke data input in a predetermined state in the example of FIG. 7, input without stumbling
  • the stroke data not input in the predetermined state have different drawing colors.
  • the appearance of the answer ink data displayed on the teacher terminal 3 is controlled depending on whether or not the input of each stroke data constituting the answer ink data is performed in a predetermined state. Therefore, the teacher can easily grasp from the appearance of the answer ink data whether or not the student has answered in the expected state.
  • the criterion value of the answer ink data is calculated based on the quartile of the data group composed of the total gap time calculated for the answer ink data, so it is possible to realize appropriate appearance control corresponding to the individuality of the student (for example, writing speed).
  • the gap time is calculated for each line indicated by the analysis result of the answer ink data, it is possible to exclude the stroke data located at the beginning of the line, which tends to have a large gap time between it and the last stroke data of the previous line, from appearance control.
  • the gap time may be calculated without using the analysis result of the answer ink data. In this case, the stroke data positioned at the beginning of the line can be subjected to appearance control.
  • the predetermined state to be determined in step S21 of FIG. 6 a detailed description was given of an example in which the input of each stroke data is executed without stumbling during answering, but other states may of course be used.
  • the predetermined state a state in which each stroke data is input in a predetermined order may be used.
  • the ink server 4 may determine whether or not the plurality of stroke data constituting the answer ink data has been input in a predetermined state based on the stroke ID of each stroke data and the predetermined order. Such determination is particularly effective, for example, when the content of the question is dictation of Chinese characters.
  • a state in which each stroke data is input while the pen is held in a predetermined tilt range may be used as the predetermined state.
  • the ink server 4 may determine whether or not the plurality of stroke data constituting the answer ink data has been input in a predetermined state. Such a determination is particularly effective, for example, when instructing an infant how to hold the pen P, or the like.
  • step S21 of FIG. 6 only one type of predetermined state is subject to determination in step S21 of FIG. 6, but multiple types of predetermined states may be subject to determination. In this case, it is preferable to provide a plurality of state flags corresponding to each predetermined state within the stroke data.
  • data corresponding to the state flag may be held separately from the stroke data in the ink server 4 or the ink database 6, and based on this data, the appearance when the answer ink data is displayed may be controlled.
  • the appearance when the stroke data is displayed may be controlled by changing the drawing color in the metadata.
  • the appearance when answer ink data is displayed by changing the drawing color of stroke data may be controlled by other methods.
  • the appearance of the answer ink data displayed may be controlled by changing the line width and transparency of the stroke data, the presence or absence of dashed lines surrounding the stroke data, and the like.
  • the appearance of the answer ink data is controlled within the answer window displayed on the teacher terminal 3, but the ink data processing system 1 may be configured so that similarly controlled ink data is displayed when the student confirms his/her own answer on the student terminal 2. In this way, it becomes possible for the student himself or herself to know whether or not the answer was given in the expected state.
  • the appearance of the rendering result of the answer ink data displayed in the answer window is controlled, but the appearance of the character recognition result displayed in the answer window may also be controlled in the same way.
  • the easy-to-read print makes it possible for the student to grasp whether or not he or she has answered in the expected state.
  • step S42 shown in FIG. 8 when the answer window is generated in step S42 shown in FIG. 8, rendering is performed using different drawing colors for the stroke data for which the state flag is true and for the stroke data for which the state flag is false.
  • the teacher can grasp whether or not the student was able to answer in the expected state in units of abstract information rather than individual stroke data. For example, when a student stumbles in a quadratic equation, by setting the drawing color of all the stroke data that constitutes the quadratic equation to a color different from that of other stroke data, the teacher can grasp whether or not the student lowered during the answer by the unit of the quadratic equation.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

【課題】生徒が期待される状態で解答できたのか否かを簡単に把握できるようにする。 【解決手段】プロセッサを含むコンピュータであって、前記プロセッサは、複数のストロークデータを取得し、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定し、前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御する。

Description

コンピュータ、プログラム、及びストロークデータ表示制御方法
 本発明はコンピュータ、プログラム、及びストロークデータ表示制御方法に関し、特に、ストロークデータを利用するコンピュータ及びプログラムと、ストロークデータの表示を制御するためのストロークデータ表示制御方法とに関する。
 近年、タブレット端末を用いた学習又は芸術教育のサービスが提供されるようになっている。この種のサービスにおいては、例えば採点者は、複数のストロークデータを含むインクデータにより、設問に対する生徒の解答を取得し、解答の入力過程を再現することができる。特許文献1には、このような入力過程の再現に関する技術が開示されている。
国際公開第2018/092555号明細書
 しかしながら、上記背景技術によれば、採点者は、入力過程を再現してみないことには、躓くことなく解答できたのか、正しい書き順で書いたのかなどを知ることができない。そこで、ユーザが期待される状態で解答できたのか否かを簡単に把握できる技術が必要とされていた。
 したがって、本発明の目的の一つは、ユーザが期待される状態で解答できたのか否かを簡単に把握できるコンピュータ、プログラム、及びストロークデータ表示制御方法を提供することにある。
 本発明によるコンピュータは、プロセッサを含むコンピュータであって、前記プロセッサは、複数のストロークデータを取得し、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定し、前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御する、コンピュータである。
 本発明によるプログラムは、複数のストロークデータを取得するステップと、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御するステップと、をコンピュータに実行させるためのプログラムである。
 本発明によるストロークデータ表示制御方法は、コンピュータが、複数のストロークデータを取得するステップと、前記コンピュータが、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、前記コンピュータが、前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御するステップと、を含むストロークデータ表示制御方法である。
 本発明によるコンピュータは、プロセッサを含むコンピュータであって、前記プロセッサは、複数のストロークデータを含むインクデータを取得し、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定し、前記判定の結果に基づき、前記インクデータを表示する際の表示状態を制御する、コンピュータであるとしてもよい。
 本発明によるプログラムは、複数のストロークデータを含むインクデータを取得するステップと、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、前記判定の結果に基づき、前記インクデータを表示する際の表示状態を制御するステップと、をコンピュータに実行させるためのプログラムであるとしてもよい。
 本発明によるインクデータ表示制御方法は、コンピュータが、複数のストロークデータを含むインクデータを取得するステップと、前記コンピュータが、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、前記コンピュータが、前記判定の結果に基づき、前記インクデータを表示する際の表示状態を制御するステップと、を含むインクデータ表示制御方法である。
 本発明によれば、ユーザが期待される状態で解答できたのか否かを、インクデータの外観から簡単に把握することが可能になる。
本発明の実施の形態によるインクデータ処理システム1のシステム構成を示す図である。 生徒端末2、教師端末3、及びインクサーバ4それぞれのハードウェア構成の一例を示す図である。 解答インクデータの構成を示す図である。 教師端末3のディスプレイに表示される解答ウインドウの例を示す図である。 解答インクデータを取得するために生徒端末2が行う処理を示す処理フロー図である。 インクデータベース6に解答インクデータを格納したインクサーバ4によって実行される処理を示す図である。 図6に示したステップS22においてインクサーバ4が実行する処理の具体的な例を示す処理フロー図である。 教師端末3からの解答ウインドウの送信要求に応じてインクサーバ4が実行する処理を示す図である。
 以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。
 図1は、本発明の実施の形態によるインクデータ処理システム1のシステム構成を示す図である。同図に示すように、インクデータ処理システム1は、生徒端末2と、教師端末3と、インクサーバ4とがネットワーク5を介して相互に接続された構成を有している。また、インクサーバ4にはインクデータベース6が接続される。
 図2は、生徒端末2、教師端末3、及びインクサーバ4それぞれのハードウェア構成の一例を示す図である。生徒端末2、教師端末3、及びインクサーバ4はそれぞれ、図示した構成を有するコンピュータ100によって構成され得る。なお、インクサーバ4は複数のコンピュータ100の結合によって構成されていてもよい。
 図2に示すように、コンピュータ100は、CPU(Central Processing Unit)101、記憶装置102、入力装置103、出力装置104、及び通信装置105がバス106を介して相互に接続された構成を有している。
 CPU101は、コンピュータ100の各部を制御するとともに、記憶装置102に記憶される各種のプログラムを読み出して実行する装置(プロセッサ)である。後掲する図3~図8を参照して説明する各処理は、生徒端末2、教師端末3、及びインクサーバ4のCPU101が記憶装置102に記憶されるプログラムを実行することによって実現される。
 記憶装置102は、DRAM(Dynamic Random Access Memory)などの主記憶装置と、ハードディスクなどの補助記憶装置とを含み、コンピュータ100のオペレーティングシステムや各種のアプリケーションを実行するための各種のプログラム、及び、これらのプログラムによって利用されるデータを記憶する役割を果たす。
 入力装置103は、ユーザの入力操作を受け付けてCPU101に供給する装置であり、例えばキーボード、マウス、タッチ検出装置を含んで構成される。このうちタッチ検出装置はタッチセンサ及びタッチコントローラを含む装置であり、ペン入力又はタッチ入力を検出するために使用される。図1に示したペンPは、生徒端末2のタッチ検出装置に対してペン入力を行うために用いられる電子ペンである。ペンPによるペン入力は、例えばアクティブ静電方式又は電磁誘導方式により実現される。タッチ入力は指などのパッシブポインタによる入力であり、例えば静電容量方式により実現される。
 出力装置104は、CPU101の処理結果をユーザに対して出力する装置であり、例えばディスプレイ、スピーカーを含んで構成される。通信装置105は、外部の装置と通信するための装置であり、CPU101の指示にしたがってデータの送受信を行う。生徒端末2、教師端末3、及びインクサーバ4はそれぞれ、この通信装置105を用いて、他の装置、システム、ネットワークなどとの間で通信を行う。
 図1に戻る。インクデータベース6は、通信教育のために必要な各種のデータを記憶するための記憶装置である。各種のデータには、生徒に対して提供される教材データ、教材データ内に含まれる設問に対する生徒の解答を示すインクデータ(以下「解答インクデータ」という)などが含まれる。インクデータベース6の実体は、インクサーバ4とは別のコンピュータに実装されることとしてもよいし、インクサーバ4の記憶装置102内に実装されることとしてもよい。
 インクサーバ4は、通信教育のサービス提供会社によって利用されるサーバコンピュータであり、インクデータベース6内の教材データを生徒端末2に提供し、生徒端末2から解答インクデータを取得してインクデータベース6に格納するとともに、生徒の解答を含む画面(以下「解答ウインドウ」という)を生成して教師端末3に提供する役割を果たす。インクサーバ4はまた、インクデータベース6内に格納した解答インクデータを分析することによって、解答インクデータを構成する各ストロークデータの入力が所定の状態で行われたか否かを判定し、判定の結果に基づいて、上記解答ウインドウ内に解答インクデータを表示する際の表示状態(外観)を制御する処理も行う。
 生徒端末2は、通信教育の生徒をユーザとするコンピュータであり、生徒用アプリケーションを実行可能に構成される。典型的には、生徒端末2はタブレット端末であるが、内蔵又は外付けの入力装置を備えることによってペンPによるペン入力又はタッチ入力に対応しているコンピュータであれば、ノートパソコン、デスクトップパソコン、スマートフォンなど他の種類のコンピュータであってもよい。
 生徒用アプリケーションは、生徒端末2に、インクサーバ4から教材データを受信してディスプレイに表示し、表示した教材データに含まれる設問に対する解答の入力を受け付ける処理を実行させるためのプログラムである。生徒は、予め割り当てられた生徒IDを用いてログインしたうえで、生徒用アプリケーションを利用する。
 生徒用アプリケーションに従って動作する生徒端末2は、生徒の操作に応じてインクサーバ4から取得すべき教材データを特定し、特定した教材データの送信をインクサーバ4に対して要求する。そして、要求の結果としてインクサーバ4が送信した教材データを受信し、ディスプレイに表示する。
 ここで、教材データは、複数の設問と、設問ごとの解答入力領域と、解答の入力終了を示す提出ボタンとを含む表示画面を有するデータである。設問及び解答入力領域は複数の表示画面(ページ)に分かれて表示されることとしてもよく、その場合の各ページには、次のページを進むための進むボタン及び前のページに戻るための戻るボタンが設けられ、提出ボタンは、最後のページ、又は、各ページに共通に表示されるグローバルナビゲーションに設けられる。各設問には設問を識別するための設問IDが割り当てられ、解答入力領域もこの設問IDによって識別される。生徒用アプリケーションに従って動作する生徒端末2は、解答入力領域ごとに、生徒が行った入力操作に応じて解答インクデータを取得し、生徒が提出ボタンを押下したことに応じて、それまでに取得した各解答インクデータを、生徒ID及びそれぞれの設問IDとともにインクサーバ4に送信するよう構成される。
 解答入力領域に対する入力操作は、ペン入力又はタッチ入力によって実行される。以下ではペン入力の場合を例に取って説明すると、生徒端末2のタッチ検出装置は、タッチ面内におけるペンPの位置を周期的に検出し、検出の結果に基づいて、一続きのストロークを示すストロークデータを取得する処理を行う。こうして取得されるストロークデータは、ペンダウン(ペンがタッチ面に接触すること)からペンアップ(ペンがタッチ面から離脱すること)までのペン先の位置の軌跡を示す一連の座標を含むデータとなる。解答インクデータは、対応する解答入力領域内に生徒が入力した一連のストロークデータによって構成される。
 図3は、解答インクデータの構成を示す図である。同図に示すように、解答インクデータを構成する各ストロークデータは、当該解答インクデータ内における各ストロークデータの入力順を示す情報(以下「ストロークID」という)と、生徒がストロークの入力を開始した時刻であるストローク開始時刻(ペンダウンの時刻)、及び、生徒がストロークの入力を終了した時刻であるストローク終了時刻(ペンアップの時刻)を含むタイムスタンプと、一連の座標データと、状態フラグとを含んで構成される。ただし、このうちの状態フラグは、インクデータベース6に格納済みの解答インクデータ内の各ストロークデータに対してインクサーバ4が追加するデータであり、生徒端末2から出力される段階のストロークデータには含まれない。状態フラグの詳細については、後述する。
 個々の座標データは、タッチ面内におけるペンPの位置を示す座標の他、ペンPのペン先に加わった圧力の値を示す筆圧値、ペンPの傾きを示すチルトデータ、及び、ペンPに設けられたスイッチのオンオフ情報を含んで構成され得る。このうち筆圧値及びオンオフ情報はペンPによって取得されるデータであり、ペンPから生徒端末2のタッチ検出装置に対して送信される。一方、チルトデータは、ペンPが2つのペン先電極を有する場合に、タッチ検出装置によって取得されるデータである。この場合のペンPは、2つのペン先電極のそれぞれからペン信号を送信するよう構成される。タッチ検出装置は、2つのペン信号のそれぞれに基づいて位置導出を行うことにより2つのペン先電極間の距離を算出し、算出した距離に基づいてチルトデータを取得する。
 図1に戻る。教師端末3は、通信教育の教師(採点者)をユーザとするコンピュータであり、教師用アプリケーションを実行可能に構成される。典型的には、教師端末3はノートパソコンやデスクトップパソコンなどの個人用コンピュータであるが、生徒端末2と同様のタブレット端末であってもよいし、スマートフォンであってもよい。
 教師用アプリケーションは、教師端末3に、インクサーバ4から解答ウインドウを受信して表示する処理を実行させるためのプログラムである。教師は、予め割り当てられた教師IDを用いてログインしたうえで、教師用アプリケーションを利用する。
 教師用アプリケーションに従って動作する教師端末3は、教師の操作に応じて生徒ID及び設問IDを特定し、特定した生徒ID及び設問IDに対応する解答ウインドウの送信をインクサーバ4に対して要求する。そして、要求の結果としてインクサーバ4が送信した解答ウインドウを受信し、ディスプレイに表示する。教師は、こうして表示された解答ウインドウを見ることにより生徒の解答を把握することができ、しかも本実施の形態によれば、解答の入力が所定の状態で行われたか否かについてまで把握することが可能になる。
 図4は、教師端末3のディスプレイに表示される解答ウインドウの例を示す図である。同図に示すように、解答ウインドウは、右側に解答インクデータのレンダリング結果を、左側に解答インクデータの解析結果をそれぞれ表示するよう構成される。解答インクデータの解析結果は、図4に示すような文字認識の結果の他、解答インクデータの分析結果(記録開始時刻、記述開始時刻、記述終了時刻、記述開始から提出までの時間、総記述時間、総ストローク長、平均記述速度、加速度、平均筆圧、時間と筆圧の関係を示すグラフなど)を含み得る。解答インクデータの解析結果には、ストローク長などから求められる擬似的なインクの使用量を含むこととしてもよい。
 図4においては、解答インクデータのレンダリング結果に含まれる各ストロークデータのうちの2つについて、破線の角丸四角印を付している。この角丸四角印は、対応するストロークデータが他のストロークデータと異なる色で描画されていることを示すものであり、実際にこのような角丸四角印が付されるわけではない。インクサーバ4は、解答ウインドウ内にストロークデータを描画する際に図3に示した状態フラグを参照し、状態フラグの値に応じて描画色を変更するよう構成される。教師は、この変更された描画色を見ることで、その部分の入力が所定の状態で行われていないことを知ることができる。
 以下、図5~図8を参照しながら、生徒端末2及びインクサーバ4のそれぞれが行う処理について、より詳しく説明する。
 図5は、解答インクデータを取得するために生徒端末2が行う処理を示す処理フロー図である。同図に示すように、この処理は、生徒端末2が生徒の操作に応じて教材データを表示する処理(ステップS1)から開始される。上述したように、教材データには、複数の設問と、設問ごとの解答入力領域と、解答の入力終了を示す提出ボタンとを含む表示画面が含まれる。以下では、説明の簡単のため、すべての解答入力領域及び提出ボタンが1つの表示画面内に含まれる例を説明するが、複数の解答入力領域を複数のページに分散して表示することとしてもよいのは、上述したとおりである。
 教材データを表示した生徒端末2はまず、提出ボタンが押下されたか否かを判定する(ステップS2)。ここでは押下されていないと判定したとすると、生徒端末2は座標データを検出し(ステップS3)、ペンダウンが発生したか否かを判定する(ステップS4)。ステップS3で検出される座標データは、上述したように、タッチ面内におけるペンPの位置を示す座標の他、ペンPのペン先に加わった圧力の値を示す筆圧値、ペンPの傾きを示すチルトデータ、及び、ペンPに設けられたスイッチのオンオフ情報を含み得るデータである。ステップS4の判定結果は、ステップS3で検出した座標データ内の筆圧値により、筆圧値が0から0より大きい値に変化したことが示される場合に肯定、そうでない場合に否定となる。
 ステップS4においてペンダウンが発生していないと判定した生徒端末2は、ステップS8に処理を移す。一方、ステップS4においてペンダウンが発生したと判定した生徒端末2は、ステップS3で検出した座標データ内の座標(=書き始めの位置)に基づき、まず設問IDを特定する(ステップS5)。ここで特定される設問IDは、書き始めの位置を含む解答入力領域に対応する設問IDとなる。
 次に生徒端末2は、特定した設問IDについて生成済みのストロークデータを参照することにより、これから生成するストロークデータのストロークIDを決定する(ステップS6)。ストロークIDは、上述したように、解答インクデータ内における各ストロークデータの入力順を示す情報である。したがって生徒端末2は、特定した設問IDについて生成済みのストロークデータについて割り当て済みの1以上のストロークIDのうち最も大きいものに1を加算してなる数を、これから生成するストロークデータのストロークIDとして決定すればよい。続いて生徒端末2は、現在の時刻をストローク開始時刻として記録した後(ステップS7)、ステップS8に処理を移す。
 ステップS8において生徒端末2は、ペンアップが発生したか否かを判定する(ステップS8)。ステップS8の判定結果は、ステップS3で検出した座標データ内の筆圧値により、筆圧値が0より大きい値から0に変化したことが示される場合に肯定、そうでない場合に否定となる。
 ステップS8においてペンアップが発生していないと判定した生徒端末2は、ステップS3で検出した座標データを記録した後(ステップS9)、ステップS2に処理を戻す。一方、ステップS8においてペンアップが発生したと判定した生徒端末2は、現在の時刻をストローク終了時刻として記録したうえで(ステップS10)、ペンダウン以降に記録した各データ(ストローク開始時刻、一連の座標データ、ストローク終了時刻)に基づいてストロークデータを生成し、ステップS5で特定した設問ID、及び、ステップS6で決定したストロークIDに対応付けて記録する(ステップS11)。その後、生徒端末2はステップS2に処理を戻す。
 ステップS2において提出ボタンが押下された判定した生徒端末2は、設問IDごとに、記録した全ストロークデータを含む解答インクデータを生成し、生徒IDとともにインクサーバ4に送信する(ステップS12)。こうして送信された解答インクデータを受信したインクサーバ4は、受信した生徒IDに対応付けて、受信した各解答インクデータをインクデータベース6に記憶する。
 図6は、インクデータベース6に解答インクデータを格納したインクサーバ4によって実行される処理を示す図である。インクサーバ4は、インクデータベース6に解答インクデータを格納した直後に同図の処理を実行することとしてもよいし、バッチ処理により同図の処理を実行することとしてもよい。
 図6に示すように、インクサーバ4はまず、インクデータベース6から解答インクデータを取得する(ステップS20)。そして、例えばインクデータの数式解析を行うためのInkToMathクラスのインスタンスを実行することによって解答インクデータの解析を実行し、解析結果を、解答インクデータに対応付けてインクデータベース6に保存する(ステップS21)。こうして保存した解析結果は、後にインクサーバ4が解答ウインドウを生成する際に利用される他、インクデータ4が次のステップS22を実行する際にも利用され得る。
 ステップS21を実行したインクサーバ4は、次に、例えばインクデータの統計処理を行うためのInkStatisticsクラスのインスタンスを実行することによって、ステップS20で取得した解答インクデータを構成する各ストロークデータの入力が所定の状態で行われたか否かを判定する。そして、判定の結果に基づき、解答インクデータを表示する際の外観を制御する(ステップS22)。判定の対象となる所定の状態の具体的な内容は特に限定されないが、例えば、解答中に躓くことなく(すなわち、所定時間以上の間を開けることなく)各ストロークデータの入力が実行される状態、各ストロークデータの入力が所定の順序で実行される状態、ペンを所定の傾き範囲にて保持した状態で各ストロークデータの入力が実行される状態、などを所定の状態として用いることが好適である。
 図7は、図6のステップS22においてインクサーバ4が実行する処理の具体的な例を示す処理フロー図である。図7に示す例は、判定の対象となる所定の状態として、解答中に躓くことなく各ストロークデータの入力が実行される状態を用いる場合の例となっている。また、図7には、ステップS22の処理を実行するための前処理として、図6のステップS21で得た解析結果を利用する処理を行う場合の例を示している。
 具体的に説明すると、インクサーバ4はまず、図6のステップS21で得た解析結果により示される解答インクデータの各行について、ステップS31,S32の処理を実行する(ステップS30)。具体的に説明すると、インクサーバ4は、注目行内の2つ目以降の各ストロークデータについて、1つ前のストロークデータの入力が終了してから注目ストロークデータの入力が開始されるまでの時間であるギャップ時間を算出する処理を行う(ステップS31,S32)。インクサーバ4は、各ストロークデータに含まれるタイムスタンプ(ストローク終了時刻及びストローク開始時刻)に基づいて、ステップS32の算出を行えばよい。
 次にインクサーバ4は、算出した全ギャップ時間により構成されるデータ群の四分位数を算出し(ステップS33)、算出した四分位数に基づいて判定基準値を算出する(ステップS34)。例えばインクサーバ4は、算出した全ギャップ時間により構成されるデータ群の第3四分位数(全データのメジアンより大きいデータにより構成されるデータ群のメジアン)を判定基準値として算出すればよい。
 続いてインクサーバ4は、ステップS30~S32で算出した各ギャップ時間について、ステップS36,S37の処理を実行する(ステップS35)。具体的に説明すると、インクサーバ4は、注目ギャップ時間が判定基準値より長いか否かを判定し(ステップS36)、長いと判定した場合には、対応する後続側ストロークデータの状態フラグ(図3を参照)に偽を設定する(ステップS37)。状態フラグは、対応するストロークデータの入力が所定の状態で行われたか否かを示すブール型のデータであり、状態フラグが偽であることは、対応するストロークデータの入力が所定の状態で行われていないことを示している。状態フラグのデフォルト値は真であり、ここで偽を設定しなかったストロークデータの状態フラグは真となる。
 あるギャップ時間が判定基準値より長いということは、そのギャップ時間の直後に位置するストロークデータについて、生徒がスムーズに入力できなかったこと(すなわち、躓いたこと)を意味する。したがって、ステップS36の処理は、対応するストロークデータについて、その入力が所定の状態で行われたか否かを判定する処理であると言える。また、後述するステップS42(図8を参照)において行われる解答インクデータのレンダリングでは、ステップS37で設定した状態フラグの値に応じて、ストロークデータの描画色が変更されることになる。したがって、ステップS37の処理は、ステップS36の判定の結果に基づいて、解答インクデータを表示する際の外観を制御する処理であると言える。
 図8は、教師端末3からの解答ウインドウの送信要求に応じてインクサーバ4が実行する処理を示す図である。インクサーバ4は、教師端末3から解答ウインドウの送信要求を受信すると(ステップS40)、対応する解答インクデータ及びその解析結果をインクデータベース6から取得する(ステップS41)。解答ウインドウの送信要求には生徒ID及び設問IDが含まれており、インクサーバ4は、この生徒ID及び設問IDをキーとしてインクデータベース6内を検索することにより、解答インクデータ及びその解析結果を取得する。
 次にインクサーバ4は、要求された解答ウインドウの生成を行う(ステップS42)。この処理の中でインクサーバ4は、ステップS41で取得した解答インクデータのレンダリングを実行し、レンダリングの結果を、ステップS41で取得した解析結果とともに解答ウインドウ内に配置する処理を行う。レンダリングの際、インクサーバ4は、状態フラグが真となっているストロークデータと、偽となっているストロークデータとで、異なる描画色を用いてレンダリングを行う。これにより、所定の状態(図7の例では、躓くことなく入力される状態)で入力されたストロークデータと、所定の状態で入力されなかったストロークデータとで描画色が異なることになる。
 以上説明したように、本実施の形態によるインクデータ処理システム1によれば、解答インクデータを構成する各ストロークデータの入力が所定の状態で行われたか否かに応じて、教師端末3に表示される解答インクデータの外観が制御されることになる。したがって教師は、生徒が期待される状態で解答できたのか否かを、解答インクデータの外観から簡単に把握することが可能になる。
 また、本実施の形態によるインクデータ処理システム1によれば、ある解答インクデータについて算出した全ギャップ時間により構成されるデータ群の四分位数に基づいてその解答インクデータの判定基準値を算出しているので、生徒の個性(例えば筆記速度)に対応した適切な外観制御を実現することが可能になる。
 また、本実施の形態によるインクデータ処理システム1によれば、解答インクデータの解析結果によって示される行ごとにギャップ時間の算出を行っているので、前の行の最後のストロークデータとの間のギャップ時間が大きくなりがちな行の先頭に位置するストロークデータを、外観制御の対象外とすることが可能になる。ただし、解答インクデータの解析結果を利用せず、ギャップ時間の算出を行うこととしてもよい。この場合、行の先頭に位置するストロークデータを外観制御の対象とすることが可能になる。
 以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。
 例えば、上記実施の形態では、図6のステップS21において判定の対象となる所定の状態として、解答中に躓くことなく各ストロークデータの入力が実行される状態を用いる場合の例を詳しく説明したが、その他の状態を用いてもよいことは勿論である。例えば、所定の状態として、各ストロークデータの入力が所定の順序で実行される状態を用いてもよい。この場合、インクサーバ4は、各ストロークデータのストロークIDと、上記所定の順序とに基づき、解答インクデータを構成する複数のストロークデータの入力が所定の状態で行われたか否かを判定すればよい。このような判定は、例えば、設問の内容が漢字の書き取りである場合などに特に有効である。また、別の例では、所定の状態として、ペンを所定の傾き範囲にて保持した状態で各ストロークデータの入力が実行される状態を用いてもよい。この場合、インクサーバ4は、各ストロークデータに含まれるチルトデータと、上記所定の傾き範囲とに基づき、解答インクデータを構成する複数のストロークデータの入力が所定の状態で行われたか否かを判定すればよい。このような判定は、例えば、幼児にペンPの持ち方を指導する場合などに特に有効である。
 また、上記実施の形態では、1種類の所定の状態のみを図6のステップS21における判定の対象としたが、複数種類の所定の状態を判定の対象とすることとしてもよい。この場合、各所定の状態に対応する複数の状態フラグをストロークデータ内に設けることが好ましい。
 また、上記実施の形態では、ストロークデータの中に状態フラグを設ける例を説明したが、インクサーバ4又はインクデータベース6において、状態フラグに相当するデータをストロークデータとは別に保持しておき、このデータに基づいて、解答インクデータを表示する際の外観を制御することとしてもよい。或いは、各ストロークデータがメタデータとして描画色を有する場合であれば、メタデータ内の描画色を変更することによって、ストロークデータを表示する際の外観を制御することとしてもよい。
 また、上記実施の形態では、ストロークデータの描画色を変更することにより解答インクデータを表示する際の外観を制御する例を説明したが、その他の方法により解答インクデータを表示する際の外観を制御することとしてもよい。例えば、ストロークデータの線幅や透明度、ストロークデータを囲う破線の有無などを変更することによって、解答インクデータを表示する際の外観を制御することとしてもよい。
 また、上記実施の形態では、教師端末3に表示される解答ウインドウ内において解答インクデータの外観を制御することとしたが、生徒端末2において生徒が自分の解答を確認する際にも、同様に制御されたインクデータを表示するように、インクデータ処理システム1を構成することとしてもよい。こうすれば、期待される状態で解答できたか否かを、生徒自身が知ることが可能になる。
 また、上記実施の形態では、解答ウインドウ内に表示される解答インクデータのレンダリング結果の外観を制御することとしたが、解答ウインドウ内に表示される文字認識の結果の外観も同様にして制御することとしてもよい。こうすれば、読みやすい活字により、生徒が期待される状態で解答できたのか否かを把握することが可能になる。
 また、上記実施の形態では、図8に示したステップS42における解答ウインドウの生成の際、状態フラグが真となっているストロークデータと、偽となっているストロークデータとで異なる描画色を用いてレンダリングを行うこととしたが、状態フラグが偽となっているストロークデータを含む文字或いは文字列を構成する複数のストロークデータを文字認識の結果などに基づいて決定し、決定した複数のストロークデータと、それ以外のストロークデータとで異なる描画色を用いてレンダリングを行うこととしてもよい。こうすることで教師は、生徒が期待される状態で解答できたのか否かを、個々のストロークデータよりも抽象的な情報の単位で把握することが可能になる。一例を挙げると、二次方程式の中で躓きがあった場合にその二次方程式を構成するすべてのストロークデータの描画色を他のストロークデータと異なる色にすれば、教師は、生徒が解答中に躓いたか否かを二次方程式の単位で把握できるようになる。
1   インクデータ処理システム
2   生徒端末
3   教師端末
4   インクサーバ
5   ネットワーク
6   インクデータベース
100 コンピュータ
101 CPU
102 記憶装置
103 入力装置
104 出力装置
105 通信装置
106 バス

Claims (19)

  1.  プロセッサを含むコンピュータであって、
     前記プロセッサは、
      複数のストロークデータを取得し、
      前記複数のストロークデータの入力が所定の状態で行われたか否かを判定し、
      前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御する、
     コンピュータ。
  2.  前記所定の状態は、所定時間以上の間を開けることなく前記複数のストロークデータの入力が実行される状態である、
     請求項1に記載のコンピュータ。
  3.  前記プロセッサは、
      前記複数のストロークデータのそれぞれに含まれるタイムスタンプに基づき、第1のストロークデータの入力が終了してから前記第1のストロークデータと時間的に隣接する第2のストロークデータの入力が開始されるまでの時間であるギャップ時間を算出し、
      前記ギャップ時間が所定の判定基準値より長い場合に、前記第2のストロークデータの入力は前記所定の状態で行われていないと判定する、
     請求項1又は2に記載のコンピュータ。
  4.  前記プロセッサは、前記ギャップ時間が前記判定基準値より長い場合に、前記第2のストロークデータを前記第1のストロークデータとは異なる色で描画する、
     請求項3に記載のコンピュータ。
  5.  前記プロセッサは、前記ギャップ時間により構成されるデータ群の四分位数に基づき、前記判定基準値を算出する、
     請求項3に記載のコンピュータ。
  6.  前記プロセッサは、前記データ群の第3四分位数を前記判定基準値として算出する、
     請求項5に記載のコンピュータ。
  7.  前記プロセッサは、
      前記複数のストロークデータのそれぞれを複数の行のいずれかに対応付け、
      前記行に含まれる複数のストロークデータについて、前記ギャップ時間を算出する、
     請求項5に記載のコンピュータ。
  8.  前記プロセッサは、所定の順序で前記複数のストロークデータの入力が実行された場合に、前記複数のストロークデータの入力が前記所定の状態で行われたと判定する、
     請求項1に記載のコンピュータ。
  9.  前記プロセッサは、ペンを所定の傾き範囲にて保持した状態で前記複数のストロークデータの入力が実行された場合に、前記複数のストロークデータの入力が前記所定の状態で行われたと判定する、
     請求項1に記載のコンピュータ。
  10.  複数のストロークデータを取得するステップと、
     前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、
     前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御するステップと、
     をコンピュータに実行させるためのプログラム。
  11.  コンピュータが、複数のストロークデータを取得するステップと、
     前記コンピュータが、前記複数のストロークデータの入力が所定の状態で行われたか否かを判定するステップと、
     前記コンピュータが、前記判定の結果に基づき、前記複数のストロークデータを表示する際の表示状態を制御するステップと、
     を含むストロークデータ表示制御方法。
  12.  前記所定の状態は、所定時間以上の間を開けることなく前記複数のストロークデータの入力が実行される状態である、
     請求項11に記載のストロークデータ表示制御方法。
  13.  前記複数のストロークデータのそれぞれに含まれるタイムスタンプに基づき、第1のストロークデータの入力が終了してから前記第1のストロークデータと時間的に隣接する第2のストロークデータの入力が開始されるまでの時間であるギャップ時間を算出するステップ、をさらに含み、
     前記判定するステップは、前記ギャップ時間が所定の判定基準値より長い場合に、前記第2のストロークデータの入力は前記所定の状態で行われていないと判定する、
     請求項1又は2に記載のストロークデータ表示制御方法。
  14.  前記表示状態を制御するステップは、前記ギャップ時間が前記判定基準値より長い場合に、前記第2のストロークデータを前記第1のストロークデータとは異なる色で描画する、
     請求項13に記載のストロークデータ表示制御方法。
  15.  前記ギャップ時間を算出するステップは、前記ギャップ時間により構成されるデータ群の四分位数に基づき、前記判定基準値を算出する、
     請求項13に記載のストロークデータ表示制御方法。
  16.  前記ギャップ時間を算出するステップは、前記データ群の第3四分位数を前記判定基準値として算出する、
     請求項15に記載のストロークデータ表示制御方法。
  17.  前記複数のストロークデータのそれぞれを複数の行のいずれかに対応付けるステップ、をさらに含み、
     前記ギャップ時間を算出するステップは、前記行に含まれる複数のストロークデータについて、前記ギャップ時間を算出する、
     請求項15に記載のストロークデータ表示制御方法。
  18.  前記判定するステップは、所定の順序で前記複数のストロークデータの入力が実行された場合に、前記複数のストロークデータの入力が前記所定の状態で行われたと判定する、
     請求項11に記載のストロークデータ表示制御方法。
  19.  前記判定するステップは、ペンを所定の傾き範囲にて保持した状態で前記複数のストロークデータの入力が実行された場合に、前記複数のストロークデータの入力が前記所定の状態で行われたと判定する、
     請求項11に記載のストロークデータ表示制御方法。
PCT/JP2022/048545 2022-01-20 2022-12-28 コンピュータ、プログラム、及びストロークデータ表示制御方法 WO2023140089A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-007373 2022-01-20
JP2022007373 2022-01-20

Publications (1)

Publication Number Publication Date
WO2023140089A1 true WO2023140089A1 (ja) 2023-07-27

Family

ID=87348638

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/048545 WO2023140089A1 (ja) 2022-01-20 2022-12-28 コンピュータ、プログラム、及びストロークデータ表示制御方法

Country Status (1)

Country Link
WO (1) WO2023140089A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184652A (zh) * 2011-06-01 2011-09-14 张建强 一种演示文字书写过程的数字化方法及软件系统
JP2012100137A (ja) * 2010-11-04 2012-05-24 Fuji Xerox Co Ltd 画像処理装置、画像処理システム及び画像処理プログラム
JP2016004258A (ja) * 2014-06-19 2016-01-12 コニカミノルタ株式会社 記述過程自動分析装置と分析方法及び分析プログラム
JP2019113803A (ja) * 2017-12-26 2019-07-11 株式会社光文書院 漢字学習装置
JP2020016871A (ja) * 2018-07-17 2020-01-30 大日本印刷株式会社 情報処理装置及びプログラム
JP2021119374A (ja) * 2020-01-30 2021-08-12 Kddi株式会社 文書から認知・非認知能力を推定する能力推定プログラム、装置及び方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012100137A (ja) * 2010-11-04 2012-05-24 Fuji Xerox Co Ltd 画像処理装置、画像処理システム及び画像処理プログラム
CN102184652A (zh) * 2011-06-01 2011-09-14 张建强 一种演示文字书写过程的数字化方法及软件系统
JP2016004258A (ja) * 2014-06-19 2016-01-12 コニカミノルタ株式会社 記述過程自動分析装置と分析方法及び分析プログラム
JP2019113803A (ja) * 2017-12-26 2019-07-11 株式会社光文書院 漢字学習装置
JP2020016871A (ja) * 2018-07-17 2020-01-30 大日本印刷株式会社 情報処理装置及びプログラム
JP2021119374A (ja) * 2020-01-30 2021-08-12 Kddi株式会社 文書から認知・非認知能力を推定する能力推定プログラム、装置及び方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IIYAMA MASAAKI, CHIHIRO NAKATSUKA, YOSHITAKA MORIMURA, ATSUSHI HASHIMOTO, MASAYUKI MURAKAMI, MICHIHIKO MINOH: "Detecting Answer Stuck Point Using Time Intervals of Pen Strokes", TRANSACTIONS OF JAPANESE SOCIETY FOR INFORMATION AND SYSTEMS IN EDUCATION, JAPANESE SOCIETY FOR INFORMATION AND SYSTEMS IN EDUCATION, vol. 34, no. 2, 1 April 2017 (2017-04-01), pages 166 - 171, XP093079820, ISSN: 1341-4135, DOI: 10.14926/jsise.34.166 *

Similar Documents

Publication Publication Date Title
US9086798B2 (en) Associating information on a whiteboard with a user
US9430145B2 (en) Dynamic text input using on and above surface sensing of hands and fingers
CN107273002B (zh) 手写输入答题方法、终端及计算机可读存储介质
CN110060531B (zh) 一种使用智能数码笔的计算机在线考试系统和方法
JP6340830B2 (ja) 解析装置及びプログラム
Tekli et al. Evaluating touch-screen vibration modality for blind users to access simple shapes and graphics
US20170031588A1 (en) Universal keyboard
JP2016085614A (ja) 情報処理装置、情報処理システム及びプログラム
WO2017043584A1 (ja) 学習支援システム、並びに、関連する装置及び方法
CN113485570B (zh) 多人书写方法、装置、计算机可读存储介质及终端设备
Tennison et al. Comparing haptic pattern matching on tablets and phones: Large screens are not necessarily better
CN114415918A (zh) 一种电子设备及模拟笔触的方法、装置和计算机可读介质
KR20120075587A (ko) 필기 수식 인식을 이용한 학습 시스템 및 방법
JP2007025393A (ja) 教育指導支援装置、教育指導支援方法及び教育指導支援プログラム
WO2023140089A1 (ja) コンピュータ、プログラム、及びストロークデータ表示制御方法
CN112286411A (zh) 显示模式的控制方法、装置、存储介质以及电子设备
CN111930971A (zh) 在线教学交互方法、装置、存储介质以及电子设备
JP6492545B2 (ja) 情報処理装置、情報処理システム及びプログラム
JP2014182717A (ja) 情報処理装置、情報処理システム及びプログラム
JP2016091347A (ja) 手書き文字管理システム、手書き文字管理方法、および手書き文字管理プログラム
CN111651102B (zh) 在线教学交互方法、装置、存储介质以及电子设备
JP2022058315A (ja) アシストシステム、アシスト方法、およびアシストプログラム
JP2016139293A (ja) 書き写し度算出システム、方法及びプログラム
JP2017134851A (ja) 表示制御装置、表示制御方法及びプログラム
WO2022034807A1 (ja) インク量算出方法、情報処理装置、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22922239

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
ENP Entry into the national phase

Ref document number: 2023575175

Country of ref document: JP

Kind code of ref document: A