[go: up one dir, main page]

KR102162914B1 - Collaboration method based on content data - Google Patents

Collaboration method based on content data Download PDF

Info

Publication number
KR102162914B1
KR102162914B1 KR1020190026785A KR20190026785A KR102162914B1 KR 102162914 B1 KR102162914 B1 KR 102162914B1 KR 1020190026785 A KR1020190026785 A KR 1020190026785A KR 20190026785 A KR20190026785 A KR 20190026785A KR 102162914 B1 KR102162914 B1 KR 102162914B1
Authority
KR
South Korea
Prior art keywords
user terminal
event object
event
content data
information
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020190026785A
Other languages
Korean (ko)
Other versions
KR20200107532A (en
Inventor
박상욱
김체호
김태균
Original Assignee
(주)이즈커뮤니케이션즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이즈커뮤니케이션즈 filed Critical (주)이즈커뮤니케이션즈
Priority to KR1020190026785A priority Critical patent/KR102162914B1/en
Publication of KR20200107532A publication Critical patent/KR20200107532A/en
Application granted granted Critical
Publication of KR102162914B1 publication Critical patent/KR102162914B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 네트워크를 통해 상호 연결된 제1 사용자 단말과 제2 사용자 단말을 포함하는 콘텐츠 데이터 기반의 협력 시스템에서 수행되는 컬래버레이션 방법을 제공한다. 여기서, 컬래버레이션 방법은 상기 제1 사용자 단말에서 컬래버레이션 서버를 생성하는 단계; 상기 제2 사용자 단말이 클라이언트 어플리케이션을 통해 상기 컬래버레이션 서버에 접속하는 단계, 상기 제2 사용자 단말의 접속이 정상적으로 수행된 경우, 상기 제1 사용자 단말로부터 상기 제2 사용자 단말에 판서 데이터 및 교안 데이터 중 적어도 하나를 포함하는 콘텐츠 데이터를 전송하는 단계; 주기적으로, 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 하나에 입력된 복수의 점 좌표들을 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 다른 하나에 전송하는 단계; 및 상기 복수의 점 좌표들의 불연속 구간에 기초하여 상기 복수의 점 좌표들을 복수의 판서 데이터들로 순차적으로 구분하여 저장하는 단계;를 포함한다.The present invention provides a collaboration method performed in a content data-based cooperation system including a first user terminal and a second user terminal interconnected through a network. Here, the collaboration method includes: creating a collaboration server in the first user terminal; The step of connecting the second user terminal to the collaboration server through a client application, and when the connection of the second user terminal is normally performed, writing data and teaching plan data from the first user terminal to the second user terminal Transmitting content data including at least one of; Periodically transmitting a plurality of point coordinates input to one of the first user terminal and the second user terminal to another one of the first user terminal and the second user terminal; And sequentially dividing and storing the plurality of point coordinates into a plurality of writing data based on a discontinuous section of the plurality of point coordinates.

Description

콘텐츠 데이터 기반의 컬래버레이션 방법{COLLABORATION METHOD BASED ON CONTENT DATA}Content data-based collaboration method {COLLABORATION METHOD BASED ON CONTENT DATA}

본 발명은 콘텐츠 데이터 생성 기술에 관한 것으로, 보다 상세하게는, 외부로부터 입력되는 점들의 좌표 값에 기초하여 콘텐츠 데이터를 생성하는 콘텐츠 데이터의 생성 방법, 콘텐츠 데이터의 생성 방법에 의해 생성된 콘텐츠 데이터의 구조 및 콘텐츠 데이터 기반의 컬래버레이션 방법에 관한 것이다.The present invention relates to a content data generation technology, and more particularly, a content data generation method for generating content data based on coordinate values of points input from the outside, and a content data generation method generated by the content data generation method. It relates to a collaboration method based on structure and content data.

과학기술이 발달하면서 칠판에 분필로 판서를 하며 말로만 진행되었던 수업은, 각종 전자장비들이 동원되어 스마트한 수업으로 탈바꿈되고 있다. 전자장비가 동원된 수업은 수업에 필요한 이미지, 동영상 등의 자료를 쉽게 연출할 수 있고, 수업중에 바로 웹서핑을 통해, 필요한 자료를 찾을 수 있어 수강자들의 이해를 수월하게 한다.With the development of science and technology, classes that were taught only in words while writing with chalk on the blackboard are being transformed into smart classes by mobilizing various electronic equipment. Classes with electronic equipment can easily produce materials such as images and videos necessary for class, and they can find necessary materials through web surfing right in the middle of class, making it easier for students to understand.

또한, 비디오 카메라로 수업을 녹화해서 수강자가 언제든지 수업을 다시 볼 수 있게 되었고, 수업에 참여하지 못해도, 녹화된 수업 동영상을 시청할 수 있게 되었으며 스마트폰이나 PDA 등의 발달로 특히 시간과 공간의 제약 없이 수강할 수 있게 되었다.In addition, by recording the class with a video camera, students can watch the class again at any time. Even if they cannot participate in the class, they can watch the recorded class video. With the development of smartphones and PDAs, there is no restriction on time and space. I was able to take classes.

여러 가지 학습자료 중 특히, 전자칠판은 강의의 편리성과 유용성을 증대시키는 전자 펜으로 쓸 수 있는 칠판으로 태블릿이 대형화된 형태와 유사하다.Among the various learning materials, the electronic blackboard is a blackboard that can be written with an electronic pen that increases the convenience and usefulness of lectures, and is similar to the form of a larger tablet.

한편, 전자칠판은 판서(또는, 판서된 문자, 도형 등)을 이미지 형태로 저장하거나, 판서된 내용에 포함된 점좌표들 만을 저장하고 있다. 판서를 이미지 형태로 저장하는 경우, 판서 데이터의 용량이 상대적으로 클 뿐만 아니라 판서의 확대 또는 축소에 의해 판서가 선명하게 표시되지 않는 문제점을 가지며, 판서 데이터가 점좌표들만을 포함하는 경우, 문자, 도형의 편집 등이 어려운 문제점이 있다.On the other hand, the electronic blackboard stores the writing (or written characters, figures, etc.) in the form of an image, or only the point coordinates included in the written content. In the case of saving the writing in the form of an image, not only the capacity of the writing data is relatively large, but also there is a problem that the writing is not clearly displayed due to the enlargement or reduction of the writing, and when the writing data includes only dot coordinates, text, There is a problem that it is difficult to edit figures.

한국등록특허 제1,530,476호(2015.16.19.공고) 적외선 센서를 이용한 전자칠판 시스템Korean Patent Registration No. 1,530,476 (2015.16.19. Announcement) Electronic blackboard system using infrared sensor 한국등록특허 제1,378,318호(2014.03.28.공고) 적외선 카메라를 이용한 전자칠판 시스템Korean Patent Registration No. 1,378,318 (announced on March 28, 2014) Electronic blackboard system using infrared camera 한국등록특허 제0,764,312호(2007.10.05.공고) 네트워크 회의 시스템, 참석 인증 방법 및 프레젠테이션 방법Korean Patent Registration No. 0,764,312 (Announcement on October 5, 2007) Network conference system, attendance authentication method and presentation method

본 발명의 일 목적은 편집 및 관리가 용이한 콘텐츠 데이터를 생성하는 콘텐츠 데이터 생성 방법을 제공하는 것이다.An object of the present invention is to provide a content data generation method for generating content data that is easy to edit and manage.

본 발명의 일 목적은 편집 및 관리가 용이한 콘텐츠 데이터 구조를 제공하는 것이다.An object of the present invention is to provide a content data structure that is easy to edit and manage.

본 발명의 일 목적은 콘텐츠 데이터 기반의 컬래버레이션 방법을 제공하는 것이다.An object of the present invention is to provide a content data-based collaboration method.

삭제delete

본 발명은 네트워크를 통해 상호 연결된 제1 사용자 단말과 제2 사용자 단말을 포함하는 콘텐츠 데이터 기반의 협력 시스템에서 수행되는 컬래버레이션 방법을 제공한다. 여기서, 컬래버레이션 방법은 상기 제1 사용자 단말에서 컬래버레이션 서버를 생성하는 단계; 상기 제2 사용자 단말이 클라이언트 어플리케이션을 통해 상기 컬래버레이션 서버에 접속하는 단계, 상기 제2 사용자 단말의 접속이 정상적으로 수행된 경우, 상기 제1 사용자 단말로부터 상기 제2 사용자 단말에 판서 데이터 및 교안 데이터 중 적어도 하나를 포함하는 콘텐츠 데이터를 전송하는 단계; 주기적으로, 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 하나에 입력된 복수의 점 좌표들을 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 다른 하나에 전송하는 단계; 및 상기 복수의 점 좌표들의 불연속 구간에 기초하여 상기 복수의 점 좌표들을 복수의 판서 데이터들로 순차적으로 구분하여 저장하는 단계;를 포함한다.The present invention provides a collaboration method performed in a content data-based cooperation system including a first user terminal and a second user terminal interconnected through a network. Here, the collaboration method includes: creating a collaboration server in the first user terminal; The step of connecting the second user terminal to the collaboration server through a client application, and when the connection of the second user terminal is normally performed, writing data and teaching plan data from the first user terminal to the second user terminal Transmitting content data including at least one of; Periodically transmitting a plurality of point coordinates input to one of the first user terminal and the second user terminal to another one of the first user terminal and the second user terminal; And sequentially dividing and storing the plurality of point coordinates into a plurality of writing data based on a discontinuous section of the plurality of point coordinates.

일 실시예에서, 상기 콘텐츠 데이터를 전송하는 단계는, 헤더(header), 콘텐츠 데이터, 테일(tail) 및 블록 사이즈 정보를 포함하는 패킷 구조를 이용하여 상기 콘텐츠 데이터를 전송하되, 상기 블록 사이즈 정보는 상기 헤더의 사이즈, 상기 콘텐츠의 사이즈, 상기 테일의 사이즈의 총 합을 포함하며, 고정 길이(fixed length)를 가지는 것을 특징으로 한다.In one embodiment, the transmitting of the content data includes transmitting the content data using a packet structure including header, content data, tail, and block size information, wherein the block size information is It includes a total sum of the size of the header, the size of the content, and the size of the tail, and has a fixed length.

일 실시예에서, 상기 콘텐츠 데이터를 전송하는 단계는, 상기 제2 사용자 단말에 대해 판서 권한 및 툴 사용 권한 중 적어도 하나를 부여하는 단계를 포함하고, 상기 판서 권한이 부여된 경우, 상기 제2 사용자 단말에 입력된 점 좌표들을 상기 제1 사용자 단말에 전송하며, 상기 툴 사용 권한이 부여된 경우, 상기 제2 사용자 단말에 의해 입력된 점 좌표들에 기초하여 상기 판서 데이터들 중 적어도 하나에 대한 수정을 허용하되, 상기 제1 사용자 단말에 의한 상기 판서 데이터들에 대한 수정을 제한하는 것을 특징으로 한다.In one embodiment, the transmitting of the content data includes granting at least one of a writing authority and a tool use authority to the second user terminal, and if the writing authority is granted, the second user Transmits point coordinates input to the terminal to the first user terminal, and when the tool use authority is granted, correction of at least one of the writing data based on the point coordinates input by the second user terminal While allowing, it is characterized in that the modification of the writing data by the first user terminal is limited.

도 1은 본 발명의 실시예들에 따른 컬래버레이션 시스템을 나타내는 도면이다.
도 2a는 도 1의 컬래버레이션 시스템에 포함된 서버의 일 예를 나타내는 도면이다.
도 2b는 도 1의 컬래버레이션 시스템에 포함된 사용자 단말의 일 예를 나타내는 도면이다.
도 3은 본 발명의 실시예들에 따른 콘텐츠 생성 장치의 일 예를 나타내는 블록도이다.
도 4a 및 도 4b는 도 3의 콘텐츠 생성 장치에서 출력되는 화면의 일 예를 나타내는 도면이다.
도 5a는 도 3의 콘텐츠 생성 장치에서 생성된 콘텐츠 데이터의 일 예를 나타내는 도면이다.
도 5b는 도 3의 콘텐츠 생성 장치에서 사용되는 콘텐츠 데이터의 구조를 나타내는 도면이다.
도 6a 내지 도 6f는 도 5b의 콘텐츠 데이터 구조에 포함된 속성들을 설명하는 도면이다.
도 7a 및 도 7b는 도 3의 콘텐츠 생성 장치에서 수행하는 권한 설정을 설명하는 도면이다.
도 8은 본 발명의 실시예들에 따른 콘텐츠 데이터 생성 방법을 나타내는 순서도이다.
도 9는 도 8의 콘텐츠 데이터 생성 방법의 일 예를 나타내는 순서도이다.
도 10은 본 발명의 실시예들에 따른 컬래버레이션 방법을 나타내는 순서도이다.
도 11a 및 도 11b는 도 10의 컬래버레이션 방법에서 사용되는 패킷의 일 예를 나타내는 도면이다.
1 is a diagram illustrating a collaboration system according to embodiments of the present invention.
2A is a diagram illustrating an example of a server included in the collaboration system of FIG. 1.
2B is a diagram illustrating an example of a user terminal included in the collaboration system of FIG. 1.
3 is a block diagram illustrating an example of a content generating apparatus according to embodiments of the present invention.
4A and 4B are diagrams illustrating an example of a screen output from the content generating device of FIG. 3.
5A is a diagram illustrating an example of content data generated by the content generating device of FIG. 3.
5B is a diagram illustrating a structure of content data used in the content generating apparatus of FIG. 3.
6A to 6F are diagrams for explaining attributes included in the content data structure of FIG. 5B.
7A and 7B are diagrams for explaining permission setting performed by the content generating device of FIG. 3.
8 is a flowchart illustrating a method of generating content data according to embodiments of the present invention.
9 is a flowchart illustrating an example of a method of generating content data of FIG. 8.
10 is a flowchart illustrating a collaboration method according to embodiments of the present invention.
11A and 11B are diagrams illustrating an example of a packet used in the collaboration method of FIG. 10.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. The same reference numerals are used for the same elements in the drawings, and duplicate descriptions for the same elements are omitted.

본 발명의 실시예들에 따른 컬래버레이션 시스템(또는, 콘텐츠 데이터 생성 시스템, 콘텐츠 데이터 생성 장치)은 복수의 점들(예를 들어, 적외선 카메라를 통해 스크린 상에 순차적으로 포인팅된 점들, 또는 별도의 입력 장치를 통해 순차적으로 감지/입력된 점들)에 기초하여 이벤트 객체(예를 들어, 문자 객체)를 설정하고, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들을 계층화하여 이벤트 객체에 대응하는 콘텐츠 데이터를 생성할 수 있다. 또한, 컬래버레이션 시스템은 네트워크를 통해 상호 연결된 호스트 단말(또는, 서버) 및 클라이언트 단말(또는, 사용자 단말)을 포함하고, 판서/툴 권한을 가진 단말에서 감지된 점들(또는, 점들에 대응하는 콘텐츠 데이터)를 실시간으로 전파하는 방식으로 컬래버레이션 또는 프레젠테이션을 제공할 수 있다.The collaboration system (or content data generation system, content data generation device) according to the embodiments of the present invention includes a plurality of points (eg, points sequentially pointed on a screen through an infrared camera, or separate Content data corresponding to the event object by setting an event object (e.g., a text object) based on points sequentially detected/input through an input device, and layering basic information, detailed information, and coordinate information of the event object Can be created. In addition, the collaboration system includes a host terminal (or server) and a client terminal (or user terminal) that are interconnected through a network, and points (or points corresponding to the points) detected by a terminal with writing/tool authority. Content data) can be delivered in real time to provide collaboration or presentation.

이하에서는, 콘텐츠 데이터를 생성하는 구성, 생성된 콘텐츠 데이터의 구조 및 컬래버레이션을 수행하는 구성에 대해서 순차적으로 설명하기로 한다.Hereinafter, a configuration for generating content data, a structure of the generated content data, and a configuration for performing collaboration will be sequentially described.

도 1은 본 발명의 실시예들에 따른 컬래버레이션 시스템을 나타내는 도면이고, 도 2a는 도 1의 컬래버레이션 시스템에 포함된 서버의 일 예를 나타내는 도면이며, 도 2b는 도 1의 컬래버레이션 시스템에 포함된 사용자 단말의 일 예를 나타내는 도면이다.1 is a diagram illustrating a collaboration system according to embodiments of the present invention, FIG. 2A is a view showing an example of a server included in the collaboration system of FIG. 1, and FIG. 2B is a collab of FIG. 1 It is a diagram showing an example of a user terminal included in the system.

도 1 및 도 2a를 참조하면, 컬래버레이션 시스템(100)(또는, 콘텐츠 데이터 생성 시스템)은 서버(110)(또는, 콘텐츠 데이터 생성 장치, 호스트 단말), 표시 장치(120), 센싱 장치(130) 및 사용자 단말들(140-1 내지 140-7)(또는, 클라이언트 단말들)을 포함할 수 있다. 한편, 컬래버레이션 시스템(100)은 전자펜(10) 및 스크린(20)을 포함할 수 있다.1 and 2A, the collaboration system 100 (or content data generation system) includes a server 110 (or a content data generation device, a host terminal), a display device 120, and a sensing device ( 130) and user terminals 140-1 to 140-7 (or client terminals). Meanwhile, the collaboration system 100 may include an electronic pen 10 and a screen 20.

컬래버레이션 시스템(100)은 전자펜(10)(예를 들어, 비가시 적외선을 발산하는 펜)에서 발산되어 스크린(20)(또는, 표시 영역, 제1 영역) 상에 포인팅 된 적외선 포인트들을 센싱 장치(130)(예를 들어, 적외선 카메라)를 통해 주기적으로 센싱하고, 스크린(20)에 대응하여 기 설정된 기준 좌표계에 기초하여 적외선 포인트들에 대한 복수의 좌표 정보들을 생성하며, 좌표 정보들 중에서 상호 연속적으로 제공된 연속 좌표 정보들을 이벤트 객체로 설정하고, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들(또는, 점들의 좌표 정보들)을 계층화하여 이벤트 객체에 대응하는 콘텐츠 데이터를 생성할 수 있다.The collaboration system 100 collects infrared points emitted from the electronic pen 10 (for example, a pen that emits invisible infrared rays) and pointed on the screen 20 (or display area, first area). Periodically sensing through the sensing device 130 (eg, an infrared camera), and generating a plurality of coordinate information for infrared points based on a preset reference coordinate system corresponding to the screen 20, and coordinate information Content data corresponding to the event object can be generated by setting continuous coordinate information continuously provided to each other as an event object, and layering basic information, detailed information, and coordinate information (or coordinate information of points) of the event object. have.

여기서, 연속 좌표 정보들은 컬래버레이션 시스템(100)(또는, 센싱 장치(130))의 센싱 주기(예를 들어, 10ms)에 대응하여 시간적으로 상호 연속적으로 생성/감지/입력된 좌표 정보들일 수 있다. 이벤트 객체의 기본 정보는 이벤트 객체의 이벤트 종류(또는, 유형), 이벤트 발생시 관련 데이터의 정보(예를 들어, 비디오/오디오 데이터의 진행 시간) 등을 포함하고, 이벤트 객체의 세부 정보는 이벤트 객체의 시작점 좌표, 종료점 좌표, 크기(예를 들어, 높이, 폭) 등을 포함할 수 있다. 기본 정보, 세부 정보 및 좌표 정보들의 계층화는 기본 정보, 세부 정보 및 좌표 정보들을 상호 독립적으로 저장하되, 상기 정보들을 상호 연관시키는 것에 해당할 수 있으며, 예를 들어, 콘텐츠 데이터 생성 시스템(100)은 기본 정보, 세부 정보 및 좌표 정보들을 트리 구조로 저장할 수 있다.Here, the continuous coordinate information may be coordinate information generated/sensed/inputted in temporal succession in response to a sensing period (eg, 10 ms) of the collaboration system 100 (or sensing device 130). have. The basic information of the event object includes the event type (or type) of the event object, information of related data when an event occurs (for example, video/audio data progress time), and the detailed information of the event object It may include start point coordinates, end point coordinates, and size (eg, height, width), and the like. The layering of basic information, detailed information, and coordinate information stores basic information, detailed information, and coordinate information independently of each other, but may correspond to correlating the information. For example, the content data generation system 100 Basic information, detailed information and coordinate information can be stored in a tree structure.

콘텐츠 데이터의 구조 및 콘텐츠 데이터를 생성하는 구성에 대해서는 도 3 내지 도 7b를 참조하여 후술하기로 한다.The structure of the content data and the structure of generating the content data will be described later with reference to FIGS. 3 to 7B.

서버(110)는 프레젠테이션 영상 데이터를 생성하여 표시 장치(120)에 제공하고, 센싱 장치(130)로부터 획득한 영상으로부터 점들의 정보(예를 들어, 판서된 문자, 도형 등을 구성하는 점들의 좌표 정보, 좌표 값들)를 획득하며, 점들의 정보에 기초하여 콘텐츠 데이터를 생성할 수 있다. 여기서, 프레젠테이션 영상 데이터는 프레젠테이션(presentation)에 사용되는 일반적인 영상 데이터로, 프레젠테이션 데이터(예를 들어, 프레젠테이션 진행에 기본적으로 사용/제공되는 데이터, 교안 데이터)와 실시간으로 생성/갱신되는 콘텐츠 데이터(예를 들어, 판서 데이터)를 포함할 수 있다. 서버(110)는 일반적인 컴퓨팅 장치로 구현되며, 예를 들어, 퍼스널 컴퓨터, 랩탑 컴퓨터, 노트북, 스마트 패드, 스마튼 폰으로 구현될 수 있다.The server 110 generates presentation image data and provides it to the display device 120, and information of points from the image acquired from the sensing device 130 (for example, coordinates of points constituting written characters, figures, etc.) Information, coordinate values), and content data may be generated based on the information of the points. Here, the presentation image data is general image data used for presentation, and presentation data (e.g., data basically used/provided for presentation progress, teaching plan data) and content data created/updated in real time (e.g. For example, writing data) may be included. The server 110 is implemented as a general computing device, for example, a personal computer, a laptop computer, a notebook, a smart pad, or a smartphone.

표시 장치(120)는 프레젠테이션 영상 데이터에 기초하여 프레젠테이션 영상을 생성하여 스크린(20)에 표시할 수 있다. 예를 들어, 표시 장치(120)는 빔 프로젝터로 구현되거나, 스크린(20)에 대응하는 디스플레이 패널을 포함하는 일반적인 디스플레이 장치(예를 들어, LCD 디스플레이 장치, OLED 디스플레이 장치)로 구현될 수 있다.The display device 120 may generate a presentation image based on the presentation image data and display it on the screen 20. For example, the display device 120 may be implemented as a beam projector, or a general display device (eg, an LCD display device, an OLED display device) including a display panel corresponding to the screen 20.

센싱 장치(130)는 전자펜(10)으로부터 발산되어 스크린(20)에 포인팅되는 적외선 점들(예를 들어, 비가시 적외선이 포인팅된 점)을 감지하여 적외선 영상을 획득 할 수 있다. 또한, 센싱 장치(130)는 적외선 영상으로부터 적외선 점들의 정보(예를 들어, 좌표값)을 생성할 수 있다. 여기서, 적외선 점들의 정보는 스크린(20)을 기준으로 설정된 좌표계 상의 좌표값 및 감지된 시간 정보를 포함할 수 있다.The sensing device 130 may acquire an infrared image by detecting infrared points emitted from the electronic pen 10 and pointed to the screen 20 (eg, points at which invisible infrared rays are pointed). In addition, the sensing device 130 may generate information (eg, coordinate values) of infrared points from the infrared image. Here, the information on the infrared points may include a coordinate value and sensed time information on a coordinate system set with respect to the screen 20.

표시 장치(110)가 빔 프로젝터로 구현되는 경우 센싱 장치(130)는 적외선 카메라로 구현될 수 있으며, 이와 달리, 표시 장치(110)가 디스플레이 장치로 구현되는 경우 센싱 장치(130)는 디스플레이 장치와 일체로 구성된 터치 스크린으로 구현될 수 있다.When the display device 110 is implemented as a beam projector, the sensing device 130 may be implemented as an infrared camera. Unlike this, when the display device 110 is implemented as a display device, the sensing device 130 It can be implemented as an integrally configured touch screen.

도 1 및 도 2b를 참조하면, 서버(110) 및 사용자 단말들(140-1 내지 140-7) 중 적어도 하나(이하, 제1 사용자 단말(140-1)이라 함)는 스마트 패드로 구현될 수 있고, 처리 모듈(210), 디스플레이 모듈(220) 및 터치 스크린(230)을 포함할 수 있다.1 and 2B, at least one of the server 110 and user terminals 140-1 to 140-7 (hereinafter referred to as the first user terminal 140-1) may be implemented as a smart pad. And a processing module 210, a display module 220, and a touch screen 230.

처리 모듈(210) 및 디스플레이 모듈(130)은 도 2a를 참조하여 설명한 서버(110) 및 표시 장치(120)와 실질적으로 동일하므로, 중복되는 설명은 반복하지 않기로 한다.Since the processing module 210 and the display module 130 are substantially the same as the server 110 and the display device 120 described with reference to FIG. 2A, overlapping descriptions will not be repeated.

터치 스크린(823)은, 일반적인 터치 스크린과 같이, 정전식 터치 입력 기술, 감압식 터치 입력 기술 등을 이용하여 전자펜(10)을 통해 순차적으로 입력되는 점들을 감지할 수 있다.The touch screen 823 may detect points sequentially input through the electronic pen 10 using a capacitive touch input technology, a pressure-sensitive touch input technology, or the like, like a general touch screen.

도 1 내지 도 2b를 참조하여 설명한 바와 같이, 컬래버레이션 시스템(100)(또는, 서버(110), 사용자 단말들(140-1 내지 140-7))은 순차적으로 입력되는 점들 중에서 상호 연속적인 연속 좌표 점들을 하나의 이벤트 객체로 설정하고, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들을 계층화하여 콘텐츠 데이터를 생성할 수 있다. 콘텐츠 데이터가 계층화되어 저장됨으로써, 콘텐츠 데이터에 대한 관리, 편집 등이 용이해 질 수 있다.As described with reference to FIGS. 1 to 2B, the collaboration system 100 (or the server 110, the user terminals 140-1 to 140-7) is mutually continuous among sequentially input points. Content data may be generated by setting continuous coordinate points as one event object and layering basic information, detailed information, and coordinate information of the event object. Since content data is layered and stored, management and editing of content data can be facilitated.

도 3은 본 발명의 실시예들에 따른 콘텐츠 생성 장치의 일 예를 나타내는 블록도이고, 도 4a 및 도 4b는 도 3의 콘텐츠 생성 장치에서 출력되는 화면의 일 예를 나타내는 도면이며, 도 5a는 도 3의 콘텐츠 생성 장치에서 생성된 콘텐츠 데이터의 일 예를 나타내는 도면이고, 도 5b는 도 3의 콘텐츠 생성 장치에서 사용되는 콘텐츠 데이터의 구조를 나타내는 도면이며, 도 6a 내지 도 6f는 도 5b의 콘텐츠 데이터 구조에 포함된 속성들을 설명하는 도면이고, 도 7a 및 도 7b는 도 3의 콘텐츠 생성 장치에서 수행하는 권한 설정을 설명하는 도면이다.3 is a block diagram illustrating an example of a content generating device according to embodiments of the present invention, FIGS. 4A and 4B are diagrams illustrating an example of a screen output from the content generating device of FIG. 3, and FIG. 5A is 3 is a diagram showing an example of content data generated by the content generating device of FIG. 3, FIG. 5B is a diagram showing the structure of content data used in the content generating device of FIG. 3, and FIGS. 6A to 6F are the content of FIG. 5B. A diagram for explaining attributes included in a data structure, and FIGS. 7A and 7B are diagrams for explaining permission setting performed by the content generating apparatus of FIG. 3.

먼저 도 3을 참조하면, 콘텐츠 생성 장치(300)(또는, 서버(110))는 통신부(310), 좌표 정보 획득부(320), 연산부(340), 저장부(350), 사용자 관리부(360) 및 제어부(950)를 포함할 수 있다. 여기서, 콘텐츠 생성 장치(300)는 도 1 내지 도 2b를 참조하여 설명한 서버(110) 및 사용자 단말들(140-1 내지 140-7) 중 적어도 하나일 수 있다.First, referring to FIG. 3, the content generating device 300 (or the server 110) includes a communication unit 310, a coordinate information acquisition unit 320, an operation unit 340, a storage unit 350, and a user management unit 360. ) And a control unit 950. Here, the content generation device 300 may be at least one of the server 110 and user terminals 140-1 to 140-7 described with reference to FIGS. 1 to 2B.

통신부(310)는 표시 장치(120), 센싱 장치(130) 등과 데이터 통신을 수행하며, 예를 들어, 프레젠테이션 영상 데이터를 송신하거나, 적외선 영상 데이터를 수신할 수 있다. 또한, 통신부(310)는 다른 단말(예를 들어, 사용자 단말)과 데이터 통신을 수행할 수 있다. 통신부(310)는 일반적인 유무선 통신 모듈로 구현될 수 있다.The communication unit 310 performs data communication with the display device 120 and the sensing device 130, and may transmit presentation image data or receive infrared image data. In addition, the communication unit 310 may perform data communication with another terminal (eg, a user terminal). The communication unit 310 may be implemented as a general wired or wireless communication module.

좌표 정보 획득부(320)는 센싱 장치(130)로부터 수신한 적외선 영상 데이터에 포함된 적외선 점들의 정보(예를 들어, 좌표값)를 산출할 수 있다. 적외선 영상 데이터에 포함된 적외선 점들의 좌표 정보를 산출하는 구성은, 일반적인 비가시 레이저를 이용한 가상 체험 시스템의 레이저 포인팅 점의 좌표 산출 구성과 실질적으로 동일하므로, 또한, 터치 입력 방식의 터치 입력점의 좌표 산출 구성과 실질적으로 동일하므로, 이에 대한 설명은 생략하기로 한다.The coordinate information acquisition unit 320 may calculate information (eg, coordinate values) of infrared points included in the infrared image data received from the sensing device 130. Since the configuration of calculating the coordinate information of the infrared points included in the infrared image data is substantially the same as the configuration of calculating the coordinates of the laser pointing point of a virtual experience system using a general invisible laser, the touch input point of the touch input method Since the configuration is substantially the same as the coordinate calculation configuration, a description thereof will be omitted.

한편, 도 3에서 좌표 정보 획득부(320)가 콘텐츠 생성 장치(300)에 포함되는 것으로 설명하였으나, 좌표 정보 획득부(320)가 이에 한정되는 것은 아니다. 예를 들어, 좌표 정보 획득부(320)는 센싱 장치(130)에 포함될 수 있다.Meanwhile, although it has been described that the coordinate information obtaining unit 320 is included in the content generating apparatus 300 in FIG. 3, the coordinate information obtaining unit 320 is not limited thereto. For example, the coordinate information acquisition unit 320 may be included in the sensing device 130.

인터페이스 제공부(330)는 콘텐츠 데이터를 생성하기 위한 사용자 인터페이스를 제공할 수 있다.The interface providing unit 330 may provide a user interface for generating content data.

도 4a 및 도 4b를 참조하면, 사용자 인터페이스는 메뉴(PAL)와 판서 영역(또는, 판서 입력이 허용되는 판서 입력 창)을 제공할 수 있다. 메뉴(PAL)는 도 4a 및 도 4b에 도시된 바와 같이, 특정 형상(예를 들어, 사각형, 원형)을 가지고 특정 위치(예를 들어, 화면의 상단, 우측 하단 등)에 배치될 수 있다. 4A and 4B, the user interface may provide a menu PAL and a writing area (or a writing input window in which writing input is allowed). As shown in FIGS. 4A and 4B, the menu PAL may have a specific shape (eg, a square or a circle) and may be disposed at a specific location (eg, the top of the screen, the bottom right of the screen, etc.).

메뉴(PAL)는 제1 내지 제 7 아이콘들(M1 내지 M7)을 포함할 수 있다. 예를 들어, 사용자는 제1 아이콘(M1)을 통해 가상 펜의 종류(예를 들어, 펜, 붓 등)을 선택하고, 제2 아이콘(M2)을 통해 입력할 도형의 종류를 선택하며, 제3 아이콘(M3)을 통해 가상 펜의 속성(예를 들어, 색상, 굵기 등)을 선택하고, 제4 아이콘(M4)을 통해 지우개를 설정할 수 있다. 또한, 사용자는 제5 아이콘(M5)을 통해 화면(또는, 노트)를 전환하고, 제6 아이콘(M6)을 통해 이벤트 객체(예를 들어, 특정 문자)를 선택하며, 제7 아이콘(M6)을 통해 이벤트 객체, 특정 영역 등을 확대 또는 축소할 수 있다.The menu PAL may include first to seventh icons M1 to M7. For example, the user selects the type of virtual pen (eg, pen, brush, etc.) through the first icon (M1), selects the type of figure to be input through the second icon (M2), and 3 An attribute (eg, color, thickness, etc.) of the virtual pen may be selected through the icon M3, and an eraser may be set through the fourth icon M4. In addition, the user switches the screen (or note) through the fifth icon (M5), selects an event object (eg, a specific character) through the sixth icon (M6), and selects the seventh icon (M6). Through this, the event object, specific area, etc. can be enlarged or reduced.

한편, 사용자는 판서 영역을 통해 점들(또는, 점들로 구성된 문자, 도형 등)을 입력할 수 있으며, 이 경우, 콘텐츠 생성 장치(300)는 점들(또는, 점들의 좌표 정보)에 기초하여 상호 연속된 점들(예를 들어, 하나의 문자) 단위로 콘텐츠 데이터를 생성할 수 있다.On the other hand, the user can input dots (or characters, figures, etc.) through the writing area, and in this case, the content generating device 300 is mutually continuous based on the dots (or coordinate information of the dots). Content data can be generated in units of dots (for example, one character).

다시 도 3을 참조하면, 연산부(340)는 좌표 정보 획득부(320)에서 산출된 점들 중에서 상호 연속적으로 제공된 연속 좌표점들(또는, 연속 좌표 정보들)을 하나의 이벤트 객체로 설정하고, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들을 계층화하여 콘텐츠 데이터를 생성할 수 있다.Referring back to FIG. 3, the operation unit 340 sets continuous coordinate points (or continuous coordinate information) that are continuously provided from among points calculated by the coordinate information acquisition unit 320 as one event object, and the event Content data may be generated by layering basic information, detailed information, and coordinate information of an object.

실시예들에서, 연산부(340)는 연속 좌표 정보들의 생성 시점 정보들(또는, 감지된 시간 정보) 및 연속 좌표 정보들을 대응시켜 콘텐츠 데이터의 제3 레벨 영역에 저장하고, 이벤트 객체의 세부 정보를 콘텐츠 데이터의 제2 레벨 영역에 저장하며, 이벤트 객체의 기본 정보를 콘텐츠 데이터의 제1 레벨 영역에 저장하며, 이벤트 객체의 식별자(또는, 이벤트 인덱스)에 기초하여 제1 내지 제3 레벨 영역들에 저장된 정보들을 상호 연관시킬 수 있다. 예를 들어, 연산부(340)는 콘텐츠 데이터를 XML 파일로 저장할 수 있다.In embodiments, the operation unit 340 stores the generation time information (or sensed time information) of the continuous coordinate information and the continuous coordinate information in the third level area of the content data, and stores detailed information of the event object. It stores in the second level area of the content data, and stores basic information of the event object in the first level area of the content data, and in the first to third level areas based on the identifier (or event index) of the event object. Stored information can be correlated. For example, the operation unit 340 may store content data as an XML file.

도 5a 내지 도 6f를 참조하면, 콘텐츠 데이터는, 제1 테이블(TABLE1)에 도시된 바와 같이, 이벤트 마스터(event master; EM)(또는, 기본 정보), 이벤트 디테일(event detail; ED)(또는, 세부 정보), 이레이즈 포인트(erase point; EP)(또는, 삭제 정보), 모디파이 이벤트(modify event; ME)(또는, 변경 정보), 프리 포인트(free point; FP)(또는, 포인트 정보) 및 노트(Notes)(또는, 노트 정보)를 포함할 수 있다.5A to 6F, as shown in the first table TABLE1, content data includes an event master EM (or basic information), an event detail ED (or , Detailed information), erase point (EP) (or deletion information), modify event (ME) (or change information), free point (FP) (or point information ) And Notes (or note information).

여기서, 이벤트 마스터(EM)은 이벤트 식별자(EventId) 및 이벤트 객체의 기본 정보를 가질 수 있다. 이벤트 디테일(ED)은 이벤트 식별자(EventId)와 연결되어, 이벤트 객체의 세부 정보를 가질 수 있다. 이레이즈 포인트(EP)는 이벤트 디테일(ED)의 삭제 유무(deleted)를 조건으로 이벤트 식별자(EventId)와 연결되어, 지우개(예를 들어, 이벤트 객체의 적어도 일부를 지우는데 사용되는 자유 지우개로, 도 4a에 도시된 제4 아이콘(M4))를 통한 삭제시, 좌표 정보를 가질 수 있다. 모디파이 이벤트(ME)는 이벤트 디테일(ED)의 수정 유무(modify)를 조건으로 이벤트 식별자(EventId)와 연결되어, 이벤트 객체에 대한 변경 정보(예를 들어, 적어도 일부 점에 대한 수정, 확대/축소 등)(또는, 변경 이벤트 정보)를 가질 수 있다. 프리 포인트(FP)는 이벤트 식별자(EventId)와 연결되어, 펜 판서(또는, 점들)에 대한 좌표 정보를 가질 수 있다. 노트(Notes)는 교안(또는, 프레젠테이션 데이터)의 파일명 및 정보를 가질 수 있다.Here, the event master EM may have an event identifier (EventId) and basic information of an event object. The event detail ED is connected to the event identifier EventId and may have detailed information of an event object. The erase point (EP) is connected with the event identifier (EventId) on the condition that the event detail (ED) is deleted, and an eraser (for example, a free eraser used to erase at least part of the event object, When deleting through the fourth icon M4 shown in FIG. 4A, coordinate information may be provided. Modify event (ME) is connected to the event identifier (EventId) on the condition of modifying the event detail (ED), and change information on the event object (for example, at least some points are modified, enlarged/ Reduction, etc.) (or change event information). The free point FP is connected to the event identifier EventId, and may have coordinate information on the pen writing (or points). Notes may have the file name and information of the teaching plan (or presentation data).

한편, 이벤트 마스터(EM)는, 제2 테이블(TABLE2)에 도시된 바와 같이, 이벤트 종류를 나타내는 이벤트 종류 정보(KD), 이미지 인덱스(또는, 이미지 식별자)를 나타내는 이미지 인덱스 정보(SD), 이벤트 객체와 연동되는 미디어의 재생 시점 정보(MP), 이벤트 인덱스(또는, 이벤트 식별자)를 나타내는 이벤트 인덱스 정보(EI), 노트의 확대/축소시 사용되는 확대 비율을 나타내는 확대 비율 정보(SC), 노트의 수직 스크롤 위치를 나타내는 수직 스크롤 위치 정보(VS), 노트의 수평 스크롤 위치를 나태는 수평 스크롤 위치 정보(HS) 및 멀티 입력에 대한 멀티 입력 인덱스 정보(TI)를 포함할 수 있다. 상기 정보들(KD 내지 TI)은 정수 또는 실수 형태의 값을 가질 수 있다.Meanwhile, the event master EM, as shown in the second table TABLE2, is the event type information KD indicating the event type, the image index information SD indicating the image index (or image identifier), and the event. Playback time information (MP) of the media linked to the object, event index information (EI) indicating the event index (or event identifier), enlargement ratio information (SC) indicating the enlargement ratio used when expanding/reducing the note, notes The vertical scroll position information VS indicating the vertical scroll position of the note, horizontal scroll position information HS indicating the horizontal scroll position of the note, and the multi-input index information TI for the multi-input may be included. The information (KD to TI) may have a value in the form of an integer or a real number.

이벤트 디테일(ED)은, 제3 테이블(TABLE3)에 도시된 바와 같이, 이벤트 인덱스 정보(EI), 이벤트 객체의 시작점 좌표 정보(SX, SY), 이벤트 객체의 종료점 좌표 정보(EX, EY), 이벤트 객체의 영역 정보(OX, OY, OW, OH), 이벤트 객체의 이동/변경시 이동/변경된 이벤트 객체의 영역 정보(BX, BY, BW, BH), 이벤트 객체의 색상 정보(PC), 이벤트 객체의 굵기 정보(PW)(또는, 펜 굵기 정보), 이벤트 객체의 삭제 유무를 나타내는 이벤트 삭제 정보(BD), 이벤트 객체의 투명도를 나타내는 투명도 정보(TP), 이벤트 객체에 대한 수정 발생 유무를 나타내는 수정 발생 정보(MD)을 포함할 수 있다. 또한, 이벤트 디테일(ED)은 점들의 입력 방식으로서 타블렛 입력의 유무를 나타내는 타블렛 입력 정보를 포함할 수 있다. 이벤트 디테일(ED)에 포함된 상기 정보들(EI 내지 BT)는 정수 형태의 값을 가질 수 있다. 한편, 이벤트 마스터(EM)와 이벤트 디테일(ED)는 이벤트 인덱스 정보(EI)를 통해 연관될 수 있다.The event detail ED, as shown in the third table TABLE3, includes event index information EI, start point coordinate information of the event object (SX, SY), end point coordinate information of the event object (EX, EY), Area information of event object (OX, OY, OW, OH), area information of event object moved/changed when moving/changing event object (BX, BY, BW, BH), color information of event object (PC), event Object thickness information (PW) (or pen thickness information), event deletion information (BD) indicating whether the event object has been deleted, transparency information (TP) indicating the transparency of the event object, and indicating whether or not modification has occurred on the event object It may include correction occurrence information (MD). In addition, the event detail ED may include tablet input information indicating the presence or absence of a tablet input as an input method of points. The information EI to BT included in the event detail ED may have an integer value. Meanwhile, the event master EM and the event detail ED may be associated through event index information EI.

이레이즈 포인트(EP)는 제4 테이블(TABLE4)에 도시된 바와 같이, 이벤트 인덱스 정보(EI), 이벤트 객체의 생성 시간을 나타내는 이벤트 생성 시간 정보(MP) 및 삭제 이벤트 종류 정보(EK)를 포함할 수 있다. 이레이즈 포인트(EP)에 포함된 상기 정보들(EI 내지 EK)는 정수 또는 실수 형태의 값을 가질 수 있다.The erase point EP includes event index information EI, event creation time information MP indicating the creation time of an event object, and deletion event type information EK, as shown in the fourth table TABLE4. can do. The information EI to EK included in the erase point EP may have integer or real values.

프리 포인트(FP)는, 제5 테이블(TABLE5)에 도시된 바와 같이, 이벤트 인덱스 정보(EI), 이벤트 생성 시간 정보(MP), 마우스(즉, 입력 장치의 일 유형으로서, 마우스)에 의해 마우스 이벤트 식별값(MS), 타블렛 펜(즉, 입력 장치의 일 유형으로서, 타블렛 펜)의 압력값(PS) 및 이벤트 객체의 시작점 정보(SX, SY)를 포함할 수 있다. 프리 포인트(FP)에 포함된 상기 정보들(EI 내지 SY)는 정수 도는 실수 형태의 값을 가질 수 있다.Free point (FP), as shown in the fifth table (TABLE5), event index information (EI), event generation time information (MP), mouse (that is, as a type of input device, mouse) by the mouse It may include an event identification value MS, a pressure value PS of a tablet pen (ie, a tablet pen as a type of input device), and start point information SX and SY of an event object. The information EI to SY included in the free point FP may have integer or real values.

모디파이 이벤트(ME)는, 제6 테이블(TABLE6)에 도시된 바와 같이, 이벤트 인덱스 정보(EI), 미디어의 재생 시점 정보(MP), 이벤트 종류 정보(KD), 수정 이벤트 종류 정보(MK), 이동/변경된 이벤트 객체의 시작점 정보(MX, MY), 이동/변경된 이벤트 객체의 종료점 정보(CX, CY), 이동/변경된 이벤트 객체의 영역 정보(BX, BY, BW, BH), 이미지 인덱스 정보(SD) 및 이벤트 객체의 회전 각도 정보(AG)를 포함할 수 있다. 모디파이 이벤트(ME)에 포함된 상기 정보들(EI 내지 AG)는 정수 또는 실수 형태의 값을 가질 수 있다.Modify event ME, as shown in the sixth table TABLE6, event index information EI, media playback time information MP, event type information KD, and modified event type information MK , Information on the start point of the moved/changed event object (MX, MY), information on the end point of the moved/changed event object (CX, CY), area information of the moved/changed event object (BX, BY, BW, BH), image index information (SD) and rotation angle information (AG) of the event object may be included. The information EI to AG included in the modifier event ME may have integer or real values.

연산부(340)(또는, 콘텐츠 생성 장치(300))는 판서 데이터(즉, 점들로 구성된 문자, 도형 등에 대응하는 콘텐츠 데이터)를 도 5a 내지 도 6f에 도시된 구조체 형태로 저장하되, 판서 데이터에 대한 좌표 정보들뿐만 아니라, 이동/확대/축소/회전/삭제 등에 이벤트 정보 및 이벤트 발생한 시점 등을 최적화하여 저장함으로써, 판서 데이터의 관리를 용이하게 할 수 있다.The operation unit 340 (or the content generating device 300) stores the writing data (ie, content data corresponding to characters, figures, etc. consisting of dots) in the form of a structure shown in FIGS. 5A to 6F, but in the writing data. It is possible to facilitate management of writing data by optimizing and storing the event information and the event occurrence time point, etc. as well as the coordinate information for the movement/enlargement/reduction/rotation/deletion.

도 5a에 도시된 콘텐츠 데이터는 약 10초 동안 판서된 숫자 1 내지 10에 대한 판서 데이터(예를 들어, XML 파일 형태의 판서 데이터)를 나타내며, 일반적인 벡터 방식의 데이터 구조에 비해 저장 용량을 감소시킬 수 있다(예를 들어, 종래의 경우, 251KB -> 본 발명의 경우 25KB).The content data shown in FIG. 5A represents writing data for numbers 1 to 10 written for about 10 seconds (for example, writing data in the form of an XML file), and the storage capacity can be reduced compared to a general vector data structure. It can (for example, 251KB in the case of the conventional case -> 25KB in the case of the present invention).

일 실시예에서, 연산부(340)는 특정 시간 내에 생성된 2개의 이상의 이벤트 객체들이 상호 중첩되는 경우, 2개 이상의 이벤트 객체들을 하나의 이벤트 객체로 통합할 수 있다.In an embodiment, when two or more event objects generated within a specific time overlap each other, the operation unit 340 may integrate the two or more event objects into one event object.

도 4b를 참조하여 예를 들면, 숫자 "4"의 경우, "ㄴ" 형태의 제1 이벤트 객체(OBJ1)와 "1" 형태의 제2 이벤트 객체(OBJ2)로 분리되어 저장될 수 있다. 이 경우, 연산부(340)는 제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2) 각각의 이벤트 영역 정보(OX, OY, OW, OH) 등에 기초하여 제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2)가 적어도 부분적으로 중첩되는지 여부를 판단하고, 상호 중첩되는 경우, 제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2) 각각의 이벤트 마스터(EM)의 재생 시점 정보(MP) 등에 기초하여 제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2)가 특정 시간 간격 내에 생성되었는지 여부를 판단하며, 특정 시간 간격 내에 생성된 경우 제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2)를 통합하여 제3 이벤트 객체(OBJ3)를 생성하거나, 제1 이벤트 객체(OBJ1)를 수정 할 수 있다.Referring to FIG. 4B, for example, the number "4" may be separated and stored into a first event object OBJ1 in the form of "b" and a second event object OBJ2 in the form of "1". In this case, the operation unit 340 is based on the event area information (OX, OY, OW, OH) of each of the first event object (OBJ1) and the second event object (OBJ2), the first event object (OBJ1) and the second It is determined whether the event object OBJ2 is at least partially overlapped, and if they are overlapped with each other, the reproduction time information MP of the event master EM of each of the first event object OBJ1 and the second event object OBJ2 It is determined whether the first event object OBJ1 and the second event object OBJ2 are created within a specific time interval based on the like, and if they are created within a specific time interval, the first event object OBJ1 and the second event object ( OBJ2) may be integrated to create the third event object OBJ3, or the first event object OBJ1 may be modified.

예를 들어, 문자 "ㄷ"에 포함된 이벤트 이벤트 객체들도 그 영역 정보들에 기초하여 상호 중첩되는 것으로 판단될 수 있으므로, 문자 "ㄷ"은 하나의 이벤트 객체로 저장 및 관리될 수 있다. 유사하게, 문자 "ㅁ"도 하나의 이벤트 객체로 저장 및 관리될 수 있다.For example, since event event objects included in the character “c” may also be determined to overlap each other based on the area information, the character “c” may be stored and managed as one event object. Similarly, the character "ㅁ" may be stored and managed as one event object.

일 실시예에서, 연산부(340)는 이벤트 영역 정보(OX, OY, OW, OH)에 기초하여 이벤트 객체를 선택할 수 있다.In an embodiment, the operation unit 340 may select an event object based on event area information (OX, OY, OW, OH).

도 4b를 참조하여 예를 들면, 사용자가 문자 "d"를 선택하기 위해 원형으로 선택 영역을 설정하는 경우, 문자 "d"의 일부가 포함되지 않거나, 문자 "e"의 일부가 포함될 수 있다. 따라서, 연산부(340)는 이벤트 영역 정보(OX, OY, OW, OH) 중 이벤트 영역 좌표값(OX, OY)(예를 들어, 이벤트 영역의 중심점)이 선택 영역에 포함되어 있는지 여부를 포함하고, 이벤트 영역 좌표값(OX, OY)가 포함된 이벤트 객체만을 선택할 수 있다. 따라서, 사용자의 의도에 부합하는 "d"만이 선택될 수 있다.Referring to FIG. 4B, for example, when a user sets a circular selection area to select the letter "d", a part of the letter "d" may not be included or a part of the letter "e" may be included. Accordingly, the operation unit 340 includes whether the event area coordinate values (OX, OY) (for example, the center point of the event area) are included in the selection area among the event area information (OX, OY, OW, OH). , You can select only the event object that contains the event area coordinate values (OX, OY). Therefore, only "d" that meets the user's intention can be selected.

다시 도 3을 참조하면, 저장부(350)는 프레젠테이션 데이터(예를 들어, 교안 데이터), 콘텐츠 데이터(예를 들어, 판서 데이터) 등을 저장하고, 콘텐츠 데이터의 생성 및 컬래버레이션(또는, 프레젠테이션)에 필요한 소프트웨어, 프로그램 등을 저장할 수 있다. 예를 들어, 연산부(340)에서 수행되는 콘텐츠 데이터 생성 방법은 콘텐츠 생성 프로그램으로 구현되어 저장부(350)에 저장될 수 있다. 저장부(350)는 메모리 장치 등으로 구현될 수 있다. 콘텐츠 생성 프로그램 등은 별도의 컴퓨터로 읽을 수 있는 기록매체(예를 들어, 메모리 장치, CD 등)에 저장되고, 유무선 통신망을 통해 배포될 수 있다.Referring back to FIG. 3, the storage unit 350 stores presentation data (eg, teaching plan data), content data (eg, writing data), and creates and collates content data (or, You can store software, programs, etc. necessary for presentation). For example, the content data generation method performed by the operation unit 340 may be implemented as a content generation program and stored in the storage unit 350. The storage unit 350 may be implemented as a memory device or the like. The content creation program, etc. may be stored in a recording medium (for example, a memory device, a CD, etc.) that can be read by a separate computer and distributed through a wired or wireless communication network.

사용자 관리부(360)는 컬래버레이션(또는, 프레젠테이션)에 참여하는 사용자에 대한 사용자 정보에 기초하여 사용자를 인증하고, 사용자에게 컬래버레이션 권한을 설정할 수 있다. 여기서, 컬래버레이션 권한은 판서 권한 및 툴 사용 권한을 포함할 수 있다. 한편, 사용자 정보는 저장부(350)에 저장될 수 있다.The user management unit 360 may authenticate a user based on user information about a user participating in the collaboration (or presentation) and set collaboration rights to the user. Here, the collaboration authority may include a writing authority and a tool use authority. Meanwhile, user information may be stored in the storage unit 350.

실시예들에서, 사용자 관리부(360)는 사용자 단말들 중 제1 사용자 단말(140-1)(또는, 제1 사용자 단말(140-1)을 사용하는 제1 사용자)에게 판서 권한 및 툴 사용 권한 중 적어도 하나를 부여할 수 있다. In embodiments, the user management unit 360 provides writing rights and tool use rights to the first user terminal 140-1 (or the first user using the first user terminal 140-1) among the user terminals. At least one of can be given.

예를 들어, 제1 사용자 단말(140-1)에 판서 권한이 부여된 경우, 제1 사용자 단말(140-1)에서 입력된 점 좌표들(또는, 판서 데이터)는 서버(110)에 전송되며, 서버(110)를 통해 다른 사용자 단말들(예를 들어, 제2 사용자 단말(140-2))에 전송/배포되고, 서버(110)(또는, 제1 사용자 단말(140-1))는 점 좌표들에 기초하여 콘텐츠 데이터를 생성할 수 있다.For example, when writing authority is granted to the first user terminal 140-1, point coordinates (or writing data) input from the first user terminal 140-1 are transmitted to the server 110 , Transmitted/distributed to other user terminals (eg, the second user terminal 140-2) through the server 110, and the server 110 (or the first user terminal 140-1) Content data may be generated based on point coordinates.

예를 들어, 제1 사용자 단말(140-1)에 툴 사용 권한이 부여된 경우, 제1 사용자 단말(140-1)은 도 4a를 참조하여 설명한 메뉴(PAL)를 이용하여 프레젠테이션 데이터(또는, 콘텐츠 데이터)를 편집할 수 있다.For example, when a tool use authority is granted to the first user terminal 140-1, the first user terminal 140-1 uses the menu PAL described with reference to FIG. 4A to provide presentation data (or Content data) can be edited.

한편, 인테페이스 제공부(330)는 사용자 단말들(140-1 내지 140-7)의 컬래버레이션 권한 설정 및 현황을 표시하는 사용자 인터페이스를 제공할 수 있다.On the other hand, the interface providing unit 330 may provide a user interface that displays the setting and status of collaboration rights of the user terminals 140-1 to 140-7.

도 7a 및 도 7b를 참조하면, 인터페이스 제공부(330)는 화면의 일측(예를 들어, 우측)에 권한 설정창(AR1)을 제공하고, 권한 설정창(A1)에는 서버(Server), 제1 사용자(User) 등의 권한 부여 상태가 표시되고, 사용자(또는, 서버 사용자, 관리자)는 클릭(click)과 같은 입력 방식을 이용하여 해당 사용자에 대한 권한을 설정하거나 해제(또는, 회수)할 수 있다. 권한 설정창(AR1)은 제1 아이콘(IC1)을 통해 보이기/숨기기 형태로 표시될 수 있다.7A and 7B, the interface providing unit 330 provides a permission setting window AR1 on one side of the screen (for example, on the right), and a server and a first user in the authorization setting window A1. The authorization status such as (User) is displayed, and the user (or server user, administrator) can set or cancel (or withdraw) the authorization for the user by using an input method such as click. . The permission setting window AR1 may be displayed in the form of showing/hiding through the first icon IC1.

또한, 인터페이스 제공부(330)는 해당 사용자에게 표시되는 화면을 통해 해당 사용자에게 판서 권한 및 툴 사용 권한이 부여되어 있는지를 메뉴(PAL)의 제2 및 제3 아이콘들(IC2, IC3)을 통해 각각 표시할 수 있다.In addition, the interface providing unit 330 determines whether the writing authority and the tool use authority are granted to the corresponding user through the screen displayed to the user through the second and third icons IC2 and IC3 of the menu PAL. Each can be displayed.

다시 도 3을 참조하면, 제어부(370)는 통신부(310), 좌표 정보 획득부(320), 연산부(340), 저장부(350) 및 사용자 관리부(360) 간의 데이터 흐름을 제어하고, 이들 각각의 동작을 제어할 수 있다.Referring back to FIG. 3, the control unit 370 controls the data flow between the communication unit 310, the coordinate information acquisition unit 320, the operation unit 340, the storage unit 350, and the user management unit 360, respectively. Control the operation of

도 3 내지 도 7b를 참조하여 설명한 바와 같이, 콘텐츠 생성 장치(300)(또는, 컬래버레이션 시스템(100))는 판서 데이터(즉, 점들로 구성된 문자, 도형 등에 대응하는 콘텐츠 데이터)를 구조체 형태로 저장하되, 판서 데이터에 대한 좌표 정보들뿐만 아니라, 이동/확대/축소/회전/삭제 등에 이벤트 정보 및 이벤트 발생한 시점 등을 최적화하여 저장함으로써, 판서 데이터의 관리를 용이하게 할 수 있다.As described with reference to FIGS. 3 to 7B, the content creation device 300 (or the collaboration system 100) converts writing data (that is, content data corresponding to characters, figures, etc. composed of dots) into a structure form. However, it is possible to facilitate the management of writing data by optimizing and storing event information and event occurrence time points such as movement/enlargement/reduction/rotation/deletion, as well as coordinate information for writing data.

또한, 콘텐츠 생성 장치(300)(또는, 컬래버레이션 시스템(100))는 사용자 별로 판서 권한 및 툴 사용 권한 중 적어도 하나를 설정함으로써, 임의의 사용자에 의한 콘텐츠 데이터의 수정, 삭제 등을 방지하고, 원할한 프레젠테이션을 가능하게 할 수 있다.In addition, the content creation device 300 (or the collaboration system 100) prevents modification and deletion of content data by any user by setting at least one of writing rights and tool use rights for each user. , It can make a smooth presentation possible.

도 8은 본 발명의 실시예들에 따른 콘텐츠 데이터 생성 방법을 나타내는 순서도이고, 도 9는 도 8의 콘텐츠 데이터 생성 방법의 일 예를 나타내는 순서도이다.8 is a flow chart illustrating a method of generating content data according to embodiments of the present invention, and FIG. 9 is a flowchart illustrating an example of a method of generating content data of FIG. 8.

도 8을 참조하면, 도 8의 콘텐츠 데이터 생성 방법은 도 1의 컬래버레이션 시스템(100) 또는 도 3의 콘텐츠 생성 장치(300)(또는, 서버(110), 사용자 단말들(140-1 내지 140-7))에서 수행될 수 있다.Referring to FIG. 8, the method for generating content data of FIG. 8 includes the collaboration system 100 of FIG. 1 or the content generation device 300 of FIG. 3 (or the server 110, user terminals 140-1 to 140-7)).

도 8의 방법은 전자펜(10)에서 스크린(20) 상에 레이저가 발산되면(S810), 적외선 카메라(130)를 통해 스크린(20) 상에 포인팅된 레이저 포인트를 센싱할 수 있다(S820). 예를 들어, 도 8의 방법은 전자펜(10)에서 발산되어 스크린(20)(또는, 제1 영역) 상에 포인팅 된 적외선 포인트들을 적외선 카메라(130)를 통해 주기적으로 센싱할 수 있다.In the method of FIG. 8, when a laser is emitted from the electronic pen 10 on the screen 20 (S810), a laser point pointed on the screen 20 may be sensed through the infrared camera 130 (S820). . For example, in the method of FIG. 8, infrared points emitted from the electronic pen 10 and pointed on the screen 20 (or the first area) may be periodically sensed through the infrared camera 130.

도 8의 방법은 레이저 포인트의 점 좌표를 생성할 수 있다(S830). 예를 들어, 도 8의 방법은 스크린(20)에 대응하여 기 설정된 기준 좌표계에 기초하여 적외선 포인트들에 대한 좌표 정보들을 생성할 수 있다.The method of FIG. 8 may generate point coordinates of a laser point (S830). For example, the method of FIG. 8 may generate coordinate information for infrared points based on a reference coordinate system set in correspondence with the screen 20.

이후, 도 8의 방법은 적외선 포인트가 기 생성된 콘텐츠 데이터(또는, 판서 데이터, 예를 들어, 제2 콘텐츠 데이터)를 선택하는지 여부를 확인하고(S840), 기 생성된 콘텐츠 데이터를 선택하는 경우가 아닌 경우, 연속 좌표 정보들에 기초하여 이벤트 객체에 대응하는 콘텐츠 데이터(예를 들어, 제1 콘텐츠 데이터)를 생성하며(S850), 기 생성된 콘텐츠 데이터를 선택하는 경우, 좌표 정보들에 기초하여 이벤트 객체 또는 콘텐츠 데이터를 수정할 수 있다(S860).Thereafter, the method of FIG. 8 checks whether the infrared point selects pre-generated content data (or writing data, for example, second content data) (S840), and selects pre-generated content data If not, content data (for example, first content data) corresponding to the event object is generated based on continuous coordinate information (S850), and when pre-generated content data is selected, based on coordinate information Thus, the event object or content data may be modified (S860).

일 실시예에서, 도 8의 방법은 좌표 정보들 중에서 상호 연속적으로 제공된 연속 좌표 정보들을 하나의 이벤트 객체(예를 들어, 제1 이벤트 객체)로 설정하고, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들을 계층화하여 이벤트 객체에 대응하는 콘텐츠 데이터를 생성할 수 있다.In one embodiment, the method of FIG. 8 sets continuous coordinate information continuously provided to each other among coordinate information as one event object (for example, a first event object), and basic information, detailed information, and coordinates of the event object. Content data corresponding to the event object can be generated by layering the information.

도 9를 참조하면, 도 8의 방법(또는, 도 8의 방법)은 순차적으로 수신되는 점의 정보(예를 들어, 점 좌표)를 실시간으로 기록하되(S910), 해당 점이 종료점인지 여부를 판단할 수 있다(S920). 예를 들어, 특정 점을 기준으로 특정 시간 내에 다음 점(next point)이 수신되지 않는 경우, 도 8의 방법은 특정 점을 종료점으로 판단할 수 있다.Referring to FIG. 9, the method of FIG. 8 (or the method of FIG. 8) records sequentially received point information (eg, point coordinates) in real time (S910), and determines whether the point is an end point. It can be done (S920). For example, when a next point is not received within a specific time based on a specific point, the method of FIG. 8 may determine the specific point as an end point.

해당 점이 종료점인 경우, 도 8의 방법은 특정 점(예를 들어, 시작점)부터 종료점까지 기록된 점들(또는, 연속 좌표 점들)을 하나의 이벤트 객체로 설정하여 콘텐츠 데이터의 프리 포인트(FP)에 저장할 수 있다(S930). 예를 들어, 도 8의 방법은 연속 좌표 정보들의 생성 시점 정보들(또는, 재생 시점 정보(MP) 및 좌표 정보들(예를 들어, 시작점 좌표 정보(SX, SY)로, 점의 경우 시작점 좌표 정보만을 가짐)을 대응시켜 콘텐츠 데이터의 제3 레벨 영역에 저장할 수 있다.When the corresponding point is an end point, the method of FIG. 8 sets points (or continuous coordinate points) recorded from a specific point (for example, a start point) to an end point as a single event object, and sets the free point (FP) of the content data. Can be stored (S930). For example, the method of FIG. 8 includes generation time information (or reproduction time information (MP) and coordinate information (for example, starting point coordinate information (SX, SY)) of continuous coordinate information, and in the case of a point, starting point coordinates Information only) can be stored in the third level area of the content data.

도 8의 방법은 이벤트 객체의 세부 정보를 생성 및 저장할 수 있다(S940). 예를 들어, 도 8의 방법은 연속 좌표 정보들에 기초하여 이벤트 객체의 이벤트 디테일(ED)에 포함된 정보들을 생성하고, 콘텐츠 데이터의 제2 레벨 영역에 저장할 수 있다.The method of FIG. 8 may generate and store detailed information of an event object (S940). For example, the method of FIG. 8 may generate information included in the event detail ED of an event object based on continuous coordinate information and store it in a second level area of the content data.

이후, 도 8의 방법은 이벤트 객체의 기본 정보로서 이벤트 마스터(EM)를 생성 및 저장할 수 있다(S950). 예를 들어, 도 8의 방법은 이벤트 객체의 기본 정보를 콘텐츠 데이터의 제1 레벨 영역에 저장할 수 있다.Thereafter, the method of FIG. 8 may generate and store the event master EM as basic information of the event object (S950). For example, the method of FIG. 8 may store basic information of an event object in a first level area of content data.

도 8 및 도 9를 참조하여 설명한 바와 같이, 본 발명의 실시예들에 따른 콘텐츠 데이터 생성 방법은, 순차적으로 감지한 점들 중에서 상호 연속적인 연속 좌표 점들을 하나의 이벤트 객체로 생성하되, 이벤트 객체의 기본 정보, 세부 정보 및 좌표 정보들을 계층화하여 저장할 수 있다.As described with reference to FIGS. 8 and 9, the content data generation method according to embodiments of the present invention generates mutually continuous continuous coordinate points among sequentially detected points as one event object. Basic information, detailed information, and coordinate information can be layered and stored.

도 10은 본 발명의 실시예들에 따른 컬래버레이션 방법을 나타내는 순서도이다.10 is a flowchart illustrating a collaboration method according to embodiments of the present invention.

도 10을 참조하면, 도 10의 방법은 도 1의 컬래버레이션 시스템(100)에서 수행될 수 있다. 도 10에 도시된 호스트 단말(1010) 및 클라이언트 단말(1020)는 도 1 내지 도 2b를 참조하여 설명한 서버(110) 및 제1 사용자 단말(또는, 사용자 단말들(140-1 내지 140-7) 중 적어도 하나)와 실질적으로 동일할 수 있다. 따라서, 중복되는 설명은 반복하지 않기로 한다.Referring to FIG. 10, the method of FIG. 10 may be performed in the collaboration system 100 of FIG. 1. The host terminal 1010 and the client terminal 1020 shown in FIG. 10 are the server 110 and the first user terminal (or user terminals 140-1 to 140-7) described with reference to FIGS. 1 to 2B. At least one of) may be substantially the same. Therefore, overlapping descriptions will not be repeated.

도 10의 방법은, 외부로부터 순차적으로 제공되는 2차원 평면 상의 좌표 정보들에 기초하여 콘텐츠 데이터를 생성할 수 있다.The method of FIG. 10 may generate content data based on coordinate information on a 2D plane sequentially provided from the outside.

먼저, 도 10의 방법은 호스트 단말(1010)에 서버(예를 들어, 프레젠테이션 데이터 등을 주체적으로 생성/처리/저장하는 프레젠테이션 서버)를 생성하고(S1010), 클라이언트 단말(1020)의 서버에 대한 접속을 시도 또는 허용할 수 있다(S1020). 여기서, 클라이언트 접속은 별도의 클라이언트 어플리케이션을 통해 제공될 수 있다.First, the method of FIG. 10 creates a server (for example, a presentation server that subjectively generates/processes/stores presentation data, etc.) in the host terminal 1010 (S1010), and the server of the client terminal 1020 Connection may be attempted or allowed (S1020). Here, the client access may be provided through a separate client application.

예를 들어, 프레젠테이션을 주최하는 제1 사용자는 어플리케이션에서 제공되는 서버 생성 기능을 이용하여 서버를 생성하고, 프레젠테이션에 참석하는 제2 사용자는 어플리케이션에서 제공되는 접속 기능을 이용하여 클라이언트 접속을 시도할 수 있다. 예를 들어, 제2 사용자는 아이피(IP) 및 패스워드(PW)을 통해 클라이언트 접속을 시도할 수 있으며, 아이피(IP)는 서버의 주소에 해당하고, 패스워드(PW)는 허용되지 않는 사용자의 접속을 제한하기 위해 서버에 설정된 패스워드일 수 있다.For example, a first user who hosts a presentation creates a server using the server creation function provided by the application, and a second user who participates in the presentation attempts to connect to a client using the connection function provided by the application. have. For example, a second user can try to connect to a client through an IP and password, and the IP corresponds to the server's address, and the password (PW) is for users who are not allowed. It may be a password set on the server to restrict

클라이언트 단말(1020)을 통해 입력된 아이피(IP)에 대응하는 서버에 패스워드(PW)가 전송되고(S1025), 도 10의 방법은 패스워드(PW)가 기 설정된 패스워드와 일치하는 여부를 판단하여(S1030), 사용자의 서버에 대한 접속을 허용할 수 있다.The password (PW) is transmitted to the server corresponding to the IP input through the client terminal 1020 (S1025), and the method of FIG. 10 determines whether the password (PW) matches a preset password ( S1030), it is possible to allow the user to access the server.

클라이언트 단말(1020)의 서버에 대한 접속이 정상적으로 수행된 경우, 도 10의 방법은 클라이언트 레벨을 설정할 수 있다(S1040). 여기서, 클라이언트 레벨은 프레젠테이션에서 해당 사용자의 권한 레벨을 나타내며, 권한 레벨에 따라 도 3, 도 7a 및 도 7b를 참조하여 설명한 판서 권한, 툴 사용 권한이 부여될 수 있다. 즉, 클라이언트 레벨은 판서 권한, 툴 사용 권한 등 컬래보레이션 시스템(100)에서 제공되는 기능들 중에서 컬래보레이션(또는, 프레젠이션)과 관련하여 일부 기능들에 대한 제한 등을 설정하기 위한 시스템 일 수 있다.When the client terminal 1020 is normally connected to the server, the method of FIG. 10 may set a client level (S1040). Here, the client level indicates the authority level of the corresponding user in the presentation, and the writing authority and the tool use authority described with reference to FIGS. 3, 7A and 7B may be granted according to the authority level. That is, the client level is a system for setting restrictions on some functions related to collaboration (or presentation) among the functions provided by the collaboration system 100 such as writing authority, tool use authority, etc. Can be

예를 들어, 제0 레벨(Lv0)는 협업 기능, 즉, 컬래보레이션(또는, 프레젠테이션)에 참여할 수 있는 권한이 없는 경우에 해당 할 수 있다. 제1 레벨(Lv1)은 판서 권한이 없는 경우에 해당하며, 예를 들어, 제1 레벨(Lv1)의 사용자는 프레젠테이션을 참관만 할 수 있다. 제2 레벨(Lv2)는 판서 권한이 부여된 경우에 해당하고, 예를 들어, 제1 레벨(Lv1)의 사용자에 의해 입력된 판서는 직간접적으로 서버 및 다른 클라이언트 단말들에 배포될 수 있다. 제3 레벨(Lv3)은 서버의 생성, 실행 등의 모든 권한을 가진 경우에 해당하고, 예를 들어, 제3 레벨(Lv3)은 서버를 호스트 단말(1010)에만 부여되며, 판서 권한을 가질 수 있다.For example, the 0th level (Lv0) may correspond to a case where there is no authority to participate in a collaboration function, that is, a collaboration (or presentation). The first level Lv1 corresponds to a case in which there is no writing authority, and for example, a user of the first level Lv1 can only observe the presentation. The second level Lv2 corresponds to a case in which writing authority is granted, and for example, a writing input by a user of the first level Lv1 may be directly or indirectly distributed to the server and other client terminals. The third level (Lv3) corresponds to the case of having all rights such as creation and execution of the server.For example, the third level (Lv3) is granted only to the host terminal 1010 and can have writing authority. have.

한편, 제2 레벨(Lv2)은 제3 레벨(Lv3)인 호스트 단말(1010)을 통해 부여되며, 복수의 클라이언트 단말들 중 하나의 클라이언트 단말에만 부여되며, 나머지 클라이언트 단말들은 제1 레벨(Lv1)을 가질 수 있다. 이 경우, 호스트 단말(1010) 및 하나의 클라이언트 단말만이 판서 권한을 가지며, 양방향 판서, 호스트 단말(1010) 및 하나의 클라이언트 단말만 각각에서 생성된 판서는 실시간으로 동시에 배포될 수 있다. 예를 들어, 하나의 클라이언트 단말은 호스트 단말(1010)에서 설정된 그리기 속성(펜, 붓펜, 도형)과는 다른 그리기 속성을 사용할 수 있으며, 또한, 굵기, 색상 등의 속성 등도 독립적으로 가질 수 있다.On the other hand, the second level (Lv2) is given through the host terminal 1010, which is the third level (Lv3), and is given only to one of the plurality of client terminals, and the remaining client terminals are at the first level (Lv1). Can have In this case, only the host terminal 1010 and one client terminal have the right to write, and the two-way writing, the host terminal 1010, and the writing generated in each of only one client terminal can be simultaneously distributed in real time. For example, one client terminal may use a drawing attribute different from the drawing attribute (pen, brush pen, figure) set in the host terminal 1010, and may independently have attributes such as thickness and color.

한편, 툴 사용 권한은 호스트 단말(1010) 또는 하나의 클라이언트 단말(즉, 제2 레벨(Lv2)의 클라이언트 단말)이 가질 수 있다. 예를 들어, 호스트 단말(1010)의 제2 레벨(Lv2)의 클라이언트 단말에 툴 사용 권한을 넘겨 주거나 다시 가져올 수 있으며, 툴 사용 권한에 따라 호스트 단말(1010) 또는 제2 레벨(Lv2)의 클라이언트 단말은 이벤트 객체를 수정(예를 들어, 삭제, 이동, 회전, 확대, 축소) 및 노트 전환(예를 들어, 프레젠테이션의 배경이 되는 화면 등에 대한 전환)을 할 수 있다.Meanwhile, the tool use authority may be obtained by the host terminal 1010 or one client terminal (ie, a second level (Lv2) client terminal). For example, it is possible to hand over or bring back the tool usage right to the client terminal of the second level (Lv2) of the host terminal 1010, and the host terminal 1010 or the client of the second level (Lv2) according to the tool usage permission. The terminal may modify the event object (eg, delete, move, rotate, enlarge, reduce) and change notes (eg, change a screen that becomes a background of a presentation).

다시 도 10을 참조하면, 도 10의 방법은 클라이언트 단말(1020)의 접속 승인과 함께, 프레젠테이션 데이터(예를 들어, 교안 데이터 및 판서 데이터 중 적어도 하나)를 클라이언트 단말(1020)에 제공할 수 있다(S1050).Referring back to FIG. 10, the method of FIG. 10 may provide presentation data (eg, at least one of teaching plan data and writing data) to the client terminal 1020 together with access approval of the client terminal 1020. (S1050).

도 10의 방법은 클라이언트 단말(1020)을 통해 프레젠테이션 데이터(예를 들어, 교안 데이터 및 판서 데이터)를 표시할 수 있다(S1060).The method of FIG. 10 may display presentation data (eg, teaching plan data and writing data) through the client terminal 1020 (S1060).

이후, 도 10의 방법은, 호스트(1010) 또는 판서 권한을 가진 다른 클라이언트 단말로부터 생성/제공된 데이터(예를 들어, 점 좌표 정보들)가 있는 경우, 해당 데이터를 클라이언트 단말(1020)에 주기적으로 또는 실시간으로 전송하고(S1070), 클라이언트 단말(1020)을 통해 해당 데이터를 실시간으로 표시 할 수 있다(S1080).Thereafter, in the method of FIG. 10, when there is data (eg, point coordinate information) generated/provided from the host 1010 or another client terminal having writing authority, the corresponding data is periodically sent to the client terminal 1020. Alternatively, the data may be transmitted in real time (S1070), and the corresponding data may be displayed in real time through the client terminal 1020 (S1080).

한편, 도 10의 방법은 호스트 단말(1010)에 제공되는 데이터(예를 들어, 점 좌표 정보들)의 불연속 구간에 기초하여 데이터를 복수의 이벤트 객체들로 구분하고, 이벤트 객체들 각각에 대응하는 콘텐츠 데이터(또는, 판서 데이터)를 순차적으로 생성 및 저장할 수 있다. 여기서, 불연속 구간은, 도 1을 참조하여 설명한 연속에 반대되는 개념으로, 예를 들어, 컬래버레이션 시스템(100)의 센싱 주기(10ms)를 초과하여 좌표 정보가 획득되지 않는 시간(또는, 구간)에 해당할 수 있다. 즉, 도 10의 방법은 점들 중 연속 점들을 하나의 이벤트 객체로 설정하여 콘텐츠 데이터를 순차적으로 생성할 수 있다. 콘텐츠 데이터를 생성하는 방법은 도 8의 방법 및 도 9의 방법과 실질적으로 동일하므로, 중복되는 설명은 반복하지 않기로 한다.Meanwhile, the method of FIG. 10 divides the data into a plurality of event objects based on a discontinuous section of data (eg, point coordinate information) provided to the host terminal 1010, and corresponds to each of the event objects. Content data (or writing data) can be sequentially generated and stored. Here, the discontinuous section is a concept opposite to the continuation described with reference to FIG. 1, for example, the time when the coordinate information is not acquired beyond the sensing period (10 ms) of the collaboration system 100 (or section ) May correspond. That is, the method of FIG. 10 may sequentially generate content data by setting consecutive points among points as one event object. Since the method of generating the content data is substantially the same as the method of FIG. 8 and the method of FIG. 9, overlapping descriptions will not be repeated.

도 11a 및 도 11b는 도 10의 컬래버레이션 방법에서 사용되는 패킷의 일 예를 나타내는 도면이다.11A and 11B are diagrams illustrating an example of a packet used in the collaboration method of FIG. 10.

도 11a 및 도 11b를 참조하면, 도 10의 방법은 도 11a 및 도 11b에 도시된 패킷(또는, 패킷 구조)를 이용하여 콘텐츠 데이터 등을 전송할 수 있다.Referring to FIGS. 11A and 11B, the method of FIG. 10 may transmit content data or the like using a packet (or packet structure) illustrated in FIGS. 11A and 11B.

패킷은 헤더(header), 콘텐츠 데이터, 테일(tail) 및 블록 사이즈 정보를 포함할 수 있다. 블록 사이즈 정보는 헤더의 사이즈, 콘텐츠의 사이즈, 테일의 사이즈의 총 합을 포함하며, 고정 길이(fixed length)를 가질 수 있다. 헤더는 프로토콜의 종류(또는, 유형)를 나타내는 문자로 구성되고, 테일은 프로토콜을 끝을 알려주는 문자로 구성될 수 있다.The packet may include header, content data, tail, and block size information. The block size information includes the total sum of the size of the header, the size of the content, and the size of the tail, and may have a fixed length. The header may be composed of characters indicating the type (or type) of the protocol, and the tail may be composed of characters indicating the end of the protocol.

도 11b를 참조하여 예를 들어, 헤더는, 문자 전송을 의미하는 DOC_ST, 문자 전송의 끝을 알리는 DOC_EN 등을 포함할 수 있다. 헤더에 포함된 프로토콜의 유형은 도 11b에 기재되어 있으므로, 이에 대한 상세한 설명은 생략하기로 한다..Referring to FIG. 11B, for example, the header may include DOC_ST indicating text transmission, DOC_EN indicating the end of text transmission, and the like. Since the types of protocols included in the header are described in FIG. 11B, detailed descriptions thereof will be omitted.

본 발명은 필기 인식 장치, 컬래버레이션 시스템 등에 적용될 수 있다. The present invention can be applied to a handwriting recognition device, a collaboration system, and the like.

상술한 바와 같이, 본 발명의 실시예들을 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.As described above, although it has been described with reference to the embodiments of the present invention, those of ordinary skill in the relevant technical field variously modify the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. It will be understood that it can be modified and changed.

100: 컬래버레이션 시스템
110: 서버
120: 표시 장치
130: 센싱 장치
140-1 내지 140-7: 사용자 단말들
210: 처리 모듈
220: 디스플레이 모듈
230: 터치 스크린
300: 콘텐츠 생성 장치
310: 통신부
320: 좌표 정보 획득부
330: 인터페이스 제공부
340: 연산부
350: 저장부
360: 사용자 관리부
370: 제어부
1010: 호스트 단말
1020: 클라이언트 단말
100: collaboration system
110: server
120: display device
130: sensing device
140-1 to 140-7: user terminals
210: processing module
220: display module
230: touch screen
300: content creation device
310: Ministry of Communications
320: coordinate information acquisition unit
330: interface providing unit
340: operation unit
350: storage
360: user management unit
370: control unit
1010: host terminal
1020: client terminal

Claims (3)

네트워크를 통해 상호 연결된 제1 사용자 단말과 제2 사용자 단말을 포함하는 콘텐츠 데이터 기반의 협력 시스템에서 수행되는 컬래버레이션 방법에서,
상기 제1 사용자 단말에서 컬래버레이션 서버를 생성하는 단계;
상기 제2 사용자 단말이 클라이언트 어플리케이션을 통해 상기 컬래버레이션 서버에 접속하는 단계;
상기 제2 사용자 단말의 접속이 정상적으로 수행된 경우, 상기 제1 사용자 단말로부터 상기 제2 사용자 단말에 판서 데이터 및 교안 데이터 중 적어도 하나를 포함하는 콘텐츠 데이터를 전송하는 단계;
주기적으로, 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 하나에 입력된 복수의 점 좌표들을 상기 제1 사용자 단말 및 상기 제2 사용자 단말 중 다른 하나에 전송하는 단계; 및
상기 복수의 점 좌표들 중에서 시간적으로 상호 연속적이지 않은 불연속 구간에 기초하여 상기 복수의 점 좌표들을 복수의 판서 데이터들로 순차적으로 구분하여 저장부에 저장하는 단계;를 포함하고,
상기 복수의 점 좌표들 중 상호 연속적으로 제공된 연속 좌표점들을 하나의 이벤트 객체로 설정하는 단계;
상기 설정한 이벤트 객체의 이벤트 종류를 포함하는 기본정보, 상기 이벤트 객체의 시작점 좌표, 종료점 좌표 및 크기를 포함하는 세부정보 및 상기 점 좌표들의 좌표 정보들을 계층화하여 콘텐츠 데이터를 생성해 XML 파일 형태로 상기 저장부에 상호 독립적으로 저장하는 단계; 및
지정 시간 내에 생성된 2개 이상의 이벤트 객체들이 상호 중첩되는 경우, 2개 이상의 이벤트 객체들을 하나의 이벤트 객체로 통합하는 단계;를 더 포함하며,
상기 통합하는 단계는,
제1 이벤트 객체(OBJ1) 및 제2 이벤트 객체(OBJ2) 각각의 이벤트 영역 정보(OX, OY, OW, OH)에 기초하여 상기 제1 이벤트 객체(OBJ1) 및 상기 제2 이벤트 객체(OBJ2)가 적어도 부분적으로 중첩되는지 여부를 판단하고,
상호 중첩되는 경우, 상기 제1 이벤트 객체(OBJ1) 및 상기 제2 이벤트 객체(OBJ2) 각각의 이벤트 마스터(EM)의 재생 시점 정보(MP)에 기초하여 상기 제1 이벤트 객체(OBJ1) 및 상기 제2 이벤트 객체(OBJ2)가 지정 시간 간격 내에 생성되었는지 여부를 판단하며,
지정 시간 간격 내에 생성된 경우 상기 제1 이벤트 객체(OBJ1) 및 상기 제2 이벤트 객체(OBJ2)를 통합하여 제3 이벤트 객체(OBJ3)를 생성하거나, 상기 제1 이벤트 객체(OBJ1)를 수정하는 컬래버레이션 방법.
In a collaboration method performed in a cooperative system based on content data including a first user terminal and a second user terminal interconnected through a network,
Creating a collaboration server in the first user terminal;
Connecting, by the second user terminal, to the collaboration server through a client application;
Transmitting content data including at least one of writing data and teaching plan data from the first user terminal to the second user terminal when the connection of the second user terminal is normally performed;
Periodically transmitting a plurality of point coordinates input to one of the first user terminal and the second user terminal to another one of the first user terminal and the second user terminal; And
Including, among the plurality of point coordinates, sequentially dividing the plurality of point coordinates into a plurality of writing data and storing them in a storage unit based on a discontinuous section that is not mutually continuous in time.
Setting continuous coordinate points provided continuously among the plurality of point coordinates as one event object;
The basic information including the event type of the set event object, the detailed information including the start point coordinates, the end point coordinates and size of the event object, and the coordinate information of the point coordinates are layered to generate content data to be displayed in an XML file Storing in a storage unit independently of each other; And
In the case where two or more event objects generated within a specified time overlap each other, integrating the two or more event objects into one event object; further comprising,
The integrating step,
Based on the event area information (OX, OY, OW, OH) of each of the first event object (OBJ1) and the second event object (OBJ2), the first event object (OBJ1) and the second event object (OBJ2) are Determine whether they overlap at least partially,
When overlapping each other, the first event object OBJ1 and the first event object OBJ1 and the first event object OBJ1 and the first event object OBJ1 and the second event object OBJ1 and the second event object OBJ2 2 Determines whether the event object (OBJ2) has been created within a specified time interval,
When created within a specified time interval, the first event object (OBJ1) and the second event object (OBJ2) are integrated to create a third event object (OBJ3) or a curl that modifies the first event object (OBJ1). Lab method.
제 1 항에 있어서, 상기 콘텐츠 데이터를 전송하는 단계는,
헤더(header), 콘텐츠 데이터, 테일(tail) 및 블록 사이즈 정보를 포함하는 패킷 구조를 이용하여 상기 콘텐츠 데이터를 전송하되,
상기 블록 사이즈 정보는 상기 헤더의 사이즈, 상기 콘텐츠의 사이즈, 상기 테일의 사이즈의 총 합을 포함하며, 고정 길이(fixed length)를 가지는 것을 특징으로 하는 컬래버레이션 방법.
The method of claim 1, wherein the transmitting of the content data comprises:
Transmitting the content data using a packet structure including header, content data, tail, and block size information,
The block size information includes a total sum of the size of the header, the size of the content, and the size of the tail, and has a fixed length.
제 1 항에 있어서, 상기 콘텐츠 데이터를 전송하는 단계는,
상기 제2 사용자 단말에 대해 판서 권한 및 툴 사용 권한 중 적어도 하나를 부여하는 단계를 포함하고,
상기 판서 권한이 부여된 경우, 상기 제2 사용자 단말에 입력된 점 좌표들을 상기 제1 사용자 단말에 전송하며,
상기 툴 사용 권한이 부여된 경우, 상기 제2 사용자 단말에 의해 입력된 점 좌표들에 기초하여 상기 판서 데이터들 중 적어도 하나에 대한 수정을 허용하되, 상기 제1 사용자 단말에 의한 상기 판서 데이터들에 대한 수정을 제한하는 것을 특징으로 하는 컬래버레이션 방법.
The method of claim 1, wherein the transmitting of the content data comprises:
And granting at least one of a writing authority and a tool use authority to the second user terminal,
When the writing authority is granted, the point coordinates input to the second user terminal are transmitted to the first user terminal,
When the tool use authority is granted, modification of at least one of the writing data is allowed based on point coordinates input by the second user terminal, but the writing data by the first user terminal Collaboration method, characterized in that to limit the correction.
KR1020190026785A 2019-03-08 2019-03-08 Collaboration method based on content data Active KR102162914B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190026785A KR102162914B1 (en) 2019-03-08 2019-03-08 Collaboration method based on content data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190026785A KR102162914B1 (en) 2019-03-08 2019-03-08 Collaboration method based on content data

Publications (2)

Publication Number Publication Date
KR20200107532A KR20200107532A (en) 2020-09-16
KR102162914B1 true KR102162914B1 (en) 2020-10-20

Family

ID=72670091

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190026785A Active KR102162914B1 (en) 2019-03-08 2019-03-08 Collaboration method based on content data

Country Status (1)

Country Link
KR (1) KR102162914B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004072428A (en) 2002-08-06 2004-03-04 Ricoh Co Ltd Shared terminal for meeting support, meeting support program, storage medium, meeting support method, and meeting room support system
JP2009054134A (en) * 2007-07-31 2009-03-12 Ricoh Co Ltd Computer, overwriting information processing apparatus, overwriting information processing method, program, storage medium, and electronic conference method
JP2010154089A (en) * 2008-12-24 2010-07-08 Fuji Xerox Co Ltd Conference system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW527833B (en) 2000-05-19 2003-04-11 Sony Corp Network conferencing system, participation authorization method and presenting method
KR101378318B1 (en) 2012-06-22 2014-03-28 주식회사 라온옵틱스 Electronic board system using infrared camera
KR101530476B1 (en) 2014-02-17 2015-06-19 대전대학교 산학협력단 Electronic board system for using pir sensor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004072428A (en) 2002-08-06 2004-03-04 Ricoh Co Ltd Shared terminal for meeting support, meeting support program, storage medium, meeting support method, and meeting room support system
JP2009054134A (en) * 2007-07-31 2009-03-12 Ricoh Co Ltd Computer, overwriting information processing apparatus, overwriting information processing method, program, storage medium, and electronic conference method
JP2010154089A (en) * 2008-12-24 2010-07-08 Fuji Xerox Co Ltd Conference system

Also Published As

Publication number Publication date
KR20200107532A (en) 2020-09-16

Similar Documents

Publication Publication Date Title
CN103631768B (en) Collaborative Data Editing and Processing System
Ni et al. A survey of large high-resolution display technologies, techniques, and applications
US10620898B2 (en) Method to exchange visual elements and populate individual associated displays with interactive content
US20050015731A1 (en) Handling data across different portions or regions of a desktop
CN114327700A (en) Virtual reality equipment and screenshot picture playing method
US10067731B2 (en) Method and system for representing a shared digital virtual “absolute” canvas
US10990344B2 (en) Information processing apparatus, information processing system, and information processing method
JP6035971B2 (en) Information processing apparatus, program, and image processing system
JP6462638B2 (en) Electronic information board, image processing method and program
US20190332762A1 (en) Method for recording stroke data made on a touch sensitive interactive device
US20170017632A1 (en) Methods and Systems of Annotating Local and Remote Display Screens
US12430615B2 (en) Virtual collaboration environment
JP6759552B2 (en) Information processing equipment and information processing programs
KR102162914B1 (en) Collaboration method based on content data
KR102003318B1 (en) Method of generating content data and content data structure
KR20230154786A (en) Interaction methods between display devices and terminal devices, storage media, and electronic devices
WO2017117658A1 (en) Method and system to port multi device workspace data
KR102189292B1 (en) Method for displaying chart and apparatus using the same
JP6996196B2 (en) Information processing equipment and information processing programs
JP6880955B2 (en) Information processing equipment and information processing programs
JP2010098421A (en) Display control device, display control method, program, and recording medium
JP4635219B2 (en) Graphics dialogue apparatus and graphics dialogue program
KR102153749B1 (en) Method for Converting Planed Display Contents to Cylindrical Display Contents
WO2023065766A1 (en) Display device and display method thereof
CN119987641A (en) A display device and a touch track calibration display method

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20190308

PA0201 Request for examination
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20200212

Patent event code: PE09021S01D

PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20200629

PG1501 Laying open of application
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20200928

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20200928

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20240930

Start annual number: 5

End annual number: 5