KR101159486B1 - 모션 코드 및 이를 이용한 데이터 전송방법 - Google Patents

모션 코드 및 이를 이용한 데이터 전송방법 Download PDF

Info

Publication number
KR101159486B1
KR101159486B1 KR1020110057137A KR20110057137A KR101159486B1 KR 101159486 B1 KR101159486 B1 KR 101159486B1 KR 1020110057137 A KR1020110057137 A KR 1020110057137A KR 20110057137 A KR20110057137 A KR 20110057137A KR 101159486 B1 KR101159486 B1 KR 101159486B1
Authority
KR
South Korea
Prior art keywords
symbol
sequence
data
motion code
code
Prior art date
Application number
KR1020110057137A
Other languages
English (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 KR1020110057137A priority Critical patent/KR101159486B1/ko
Application granted granted Critical
Publication of KR101159486B1 publication Critical patent/KR101159486B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 온라인 기반의 네트워크를 이용할 수 없는 제한된 오프라인 환경에서 디스플레이와 카메라만을 이용하여 자체적인 서버와의 교신 없이 좀 더 많은 데이터를 전송할 수 있는 모션 코드와 이 모션 코드를 이용하여 데이터를 전송하는 방법에 관한 것으로, 이미지파일, 텍스트파일, 동영상파일 중 어느 하나 이상의 파일 데이터를 2진(binary) 데이터로 변환하여 일정 크기의 사이즈로 분할한 후에 실제 데이터를 포함하는 2차원 이미지 코드 심벌들의 집합인 복수의 시퀀스 단위 심벌들을 적재한 시퀀스 심벌 집합(sequence symbol set)으로 생성하고, 생성된 시퀀스 심벌 집합들을 일정한 시간 간격을 두고 순차적으로 교체하여 재생 표시하는 것이다. 본 발명의 모션 코드는 모션 코드는 영상 디스플레이 장치나 LED 집합으로 구성된 디스플레이 장치가 구비되어야 한다는 전제하에서 온라인 기반의 네트워크에 접속하지 않고 객체들과의 데이터 통신을 위해 이미지 코드를 사용하는 경우에 오프라인 코드 자체만으로 좀 더 많은 데이터를 전송할 수 있도록 함으로써, 모션 코드는 물리적 왜곡이나 변형에 강인하고, 송신부측에 컴퓨팅 장치를 구비하고 있는 경우에 객체 스스로가 능동적으로 변화하는 시간과 공간에 따라 데이터를 재생산하며, 모션 코드와 디스플레이 장치를 이용해 재전송할 수도 있고, 무엇보다 모션 코드는 온라인 접속 없이 오프라인 환경에서 다양한 형태의 다량의 데이터를 전송할 수 있도록 한 것이다.

Description

모션 코드 및 이를 이용한 데이터 전송방법{Motion Code and Method for Transferring of Data using Motion Code}
본 발명은 모션 코드에 관한 것으로, 더욱 상세하게는 온라인 기반의 네트워크를 이용할 수 없는 제한된 오프라인 환경에서 디스플레이와 카메라만을 이용하여 자체적인 서버와의 교신 없이 좀 더 많은 데이터를 전송할 수 있는 모션 코드와 이 모션 코드를 이용하여 데이터를 전송하는 방법에 관한 것이다.
일반적으로 유비쿼터스 네트워크(Ubiquitous Network)는 일상생활을 구성하고 있는 대다수의 객체(Object)에 컴퓨팅 기능과 통신 기능을 부여하여 사용자 및 객체들의 위치, 공간 그리고 속성 정보 등 각종 환경 정보를 효과적으로 상호 공유하고, 네트워크상에 연결되어 있는 서버와 교신하며, 그러한 다양한 정보에 근거한 자발적인 서비스를 제공하는 것이다.
유비쿼터스 환경에서는 이러한 네트워크의 특성상 객체들 및 서버와의 데이터 통신이 매우 중요하다. 서버와의 통신을 위해서는 일반적으로 IP(Internet Protocol) 기반의 유무선 네트워크나 이동통신 네트워크 등이 사용된다. 객체들과의 데이터 통신을 위해서는 온라인 기반 네트워크와 오프라인 기반 네트워크를 이용할 수 있다. 기존의 IP 기반 유선 네트워크를 비롯하여 Wifi(Wireless Fidelity, 무선랜) 기반의 무선 네트워크, 3세대 이동 통신, 블루투스, 적외선 통신, 그리고 RFID(Radio Frequency Identification) 태그 인터페이스 등을 활용하는 온라인 기반 네트워크를 객체들과의 데이터 통신을 위해 사용하는 경우에 대량의 데이터를 고속으로 전송할 수 있다는 장점을 확보할 수 있다(Finkenzeller K., RFID HANDBOOK, 2nd Ed., Wiley, 2003.).
또한, 컴퓨팅 장치를 포함하고 있는 경우에 객체가 능동적으로 정보를 재생산하여 대량 고속 전송할 수 있다는 장점도 있다. 그러나 객체들과의 데이터 통신을 위해 온라인 기반의 네트워크를 이용하는 경우에는 서버와의 교신을 위해 사용할 때와는 달리 해당 통신을 지원할 수 있는 모듈을 송수신을 위한 각각의 객체에 설치해야 하고 온라인 상태를 유지하고 있어야 한다는 일련의 조건들이 큰 부담으로 작용한다. 반면에 오프라인 기반의 네트워크를 이용하는 경우에 이러한 통신 모듈 없이도 물리적 객체와 디지털 객체 사이에서 효과적인 데이터 전송이 가능하다는 장점이 있다. 그러나 온라인 기반의 네트워크를 사용할 때에 비해 전송할 수 있는 데이터 량이 극히 제한된다는 단점이 있다. 이를 극복하기 위해 우회적으로 온라인 기반의 네트워크에 연결 정보만을 전달하는 방법을 사용하고 있으나, 결국 온라인 기반의 네트워크를 이용하는 방법이 지닌 한계를 가질 수밖에 없다.
종래에 유비쿼터스 네트워크 환경에서 객체들과의 데이터 통신을 위해서는 RFID 또는 이미지 코드 등 태그 인터페이스를 가장 많이 사용하고 있다. 이 중에서 오프라인 기반의 네트워크을 통해 활용할 수 있는 태그 인터페이스로는 이미지 코드가 있다. 대표적인 이미지 코드로는 1차원 바코드, 2차원 이미지 코드, 그리고 컬러 코드 등이 있다(Rekimoto J., Ayatsuka Y., "CyberCode: Designing Augmented Reality Environments with Visual Tags", Proc. of DARE 2000 on Designing augmented reality environments, 1-10, 2000.).
상기 1차원 바코드는 수치 데이터를 쉽고 빠르게 코드화할 수 있고 간결하고 편리한 인터페이스를 제공한다. 인식률 또한 완벽에 가깝다는 장점이 있다. 1973년 미국에서 UPC 심벌을 표준으로 지정하면서 Code 39, Code 128 등 다양한 형태의 1차원 바코드 개발과 표준화 작업이 이루어졌다. 그러나 다양한 종류의 문자를 입력할 수 없는 등 표현상의 제약이 많고, 흑백 막대의 두께 차이를 정교하게 구별해 내야 하기 때문에 PC나 모바일 단말기 등 범용 장비에 장착되어 있는 낮은 해상도의 카메라로는 쉽게 인식이 되지 않아 고해상도의 카메라나 전용 스캐너 등을 사용해야 한다는 점, 그리고 무엇보다 단위 면적 당 데이터 밀도가 낮은 구조 때문에 표현할 수 있는 데이터의 양이 극히 제한적이라는 점 등이 단점이다. 즉 1차원 바코드는 특정 공간에 표현할 수 있는 데이터 용량의 제한으로 객체 속성 정보를 모두 표현해서 독립적인 정보 전달 기능을 수행하기 어렵다. 따라서 해당 정보가 축적되어 있는 대용량 데이터베이스로의 링크 정보, 즉 데이터베이스 인덱스 키(database index key) 정보만을 표현하는 데 이용되고 있다. 이는 결국 온라인 기반의 네트워크 사용을 수반해야 함을 의미한다. 또한, 1차원 바코드를 이용해 좀 더 많은 양의 정보를 독립적으로 오프라인 기반의 네트워크상에서 전달하기 위해 여러 개의 바코드를 생성하여 나란히 붙여 놓고 판독을 하는 방법이 시도되기도 하였다. 그러나 이 경우, 판독이 쉽지 않고 오류가 발생하기 쉬우며, 무엇보다 바코드 면적 자체가 커지게 된다는 단점이 있다.
또한, 2차원 이미지 코드는 1차원 바코드의 단점들을 개선하기 위해 1980년대부터 개발되었다. X, Y 두 개의 축으로 이루어진 2차원 평면에 코드화하여 흑백의 셀 패턴으로 정보를 표현하는 매트릭스 타입(matrix type)과 1차원 바코드를 확장해 압축된 형태로 표현하는 스택 타입(stacked type) 두 종류가 있다. 현재 약 20여 종의 2차원 이미지 코드가 개발되어 있다. 이 중 ISO 국제 표준으로 4개가 선정되어 있다. 매트릭스 타입 이미지 코드로는 데이터 매트릭스(Data Matrix), 맥시 코드(Maxi Code), 그리고 QR 코드(Quick Response Code) 이렇게 3종류가 있으며, 스택 타입의 이미지 코드로는 PDF 417이 있다. ISO 국제 표준으로 선정된 4개의 2차원 이미지 코드의 특성은 표 1과 같다.
Figure 112011044545110-pat00001
상기 2차원 이미지 코드의 경우 1차원 바코드보다 단위 면적 당 훨씬 더 많은 데이터를 포함할 수 있다. 따라서 좁은 면적에 고밀도의 데이터를 표현할 수 있고, 데이터 훼손 시 오류 검출 및 복원이 가능하다는 장점도 있다. 또 숫자를 비롯해 다양한 문자와 그래픽 정보까지 포함할 수 있다. QR 코드의 경우 하나의 심벌(symbol)에 최대로 포함할 수 있는 정보의 양은 표 2와 같다(정창덕, "QR 신사업 아이템 50가지", 내하출판사, 2011 ).
Figure 112011044545110-pat00002
상기 QR 코드는 Version 40에서 대략 3,000bytes를 코드 단일 심벌 내에 포함할 수 있다. 그러나 표 2의 경우는 현실적으로 최대 수치일 뿐이고, 2차원 이미지 코드 역시 단일 심벌이 포함하는 데이터 량을 늘리기 위해서는 이미지 코드의 사이즈를 확대하거나 데이터 셀의 크기를 축소해야 한다. 이미지 코드의 사이즈의 확대에는 분명 물리적인 제약이 존재하고, 데이터 셀의 크기는 대부분의 2차원 이미지 코드에서 인식률 보장을 위해 4개 픽셀 이상으로 표현하기를 권고하고 있기 때문에 이 역시 물리적인 제약이 존재한다. 상기 표 2의 경우는 QR 코드의 극단적 상황에서의 수치를 보여준다. 분명 2차원 이미지 코드는 1차원 바코드보다 훨씬 더 많은 데이터를 코드 내에 포함할 수 있다. 그래서 지문 정보, 명함 정보, 그리고 웹 사이트 링크 정보 등 보다 더 풍부한 정보를 코드 내에 포함할 수 있다. 그러나 분명히 데이터 표현 량의 한계가 있기 때문에 이 정도 이상의 정보를 담는 것은 불가능하다. 따라서 주로 더 많은 대량 정보를 포함하고 있는 웹페이지 URL정보를 인덱스 키의 형태로 코드에 포함하여 해당 온라인 사이트로 연결해 주는 역할을 보편적으로 수행하고 있다.
이러한 경우에는 온라인 기반의 네트워크 사용을 수반해야 한다. QR 코드의 경우 최대 16개의 심벌을 연속적으로 배치해서 좀 더 많은 데이터를 전송할 수 있도록 지원하고 있다. 그러나 이 역시 심벌을 연속적으로 읽기 위해 번거로운 과정을 거쳐야 하고, 인식률의 저하와 오류 발생 가능성이 높으며, 다수의 심벌들을 연속적으로 배치하기 위해 넓은 공간을 필요로 하게 된다. 이러한 문제를 보완하기 위해서는 각 심벌 당 포함하고 있는 데이터 량을 줄여야 하는 모순이 발생한다.
다음으로, 컬러 코드는 흑백으로 표현된 2차원 이미지 코드 셀에 컬러 정보를 추가해 차원을 확대한 것이다. 따라서 3차원 이미지 코드라 할 수 있다. 1999년 연세 대학교에서 개발한 2차원 이미지 코드로서 범용 장비인 웹 카메라, 스캐너, 카메라 폰 등에서 인식되며 컬러를 이용한 코드 영역과 기존의 2차원 이미지 코드에 비해 향상된 디자인을 가지고 있다(Colorcode, ). 컬러 코드는 직접 매핑을 통해 아스키(ASCII) 문자를 표현하는 DCM(Direct Colorcode Model)과 인식기기 성능 요구도의 제약을 줄이기 위해 데이터의 인덱스 정보만을 담아 사용하는 ICM(Indirect Colorcode Model), 이렇게 두 가지로 나뉜다. 색상의 종류는 그 데이터 셀에 포함된 내용과 인식 장비에 따라 달라지는데 인덱스형 컬러코드의 경우에 1개의 컬러 셀은 2비트를 표현하며, 이를 위해 R, G, B, K(Red, Green, Blue, Black)의 네 가지 색상을 사용한다. 컬러 코드의 경우에 2차원 이미지 코드 심벌 내에 셀이 가지는 데이터 량을 컬러로 확장할 수 있기 때문에 같은 크기의 셀을 갖는 컬러 코드는 흑백으로 표현된 기존 2차원 이미지 코드보다 단일 심벌 자체에 포함할 수 있는 데이터 량 면에서 월등히 우위를 보일 수 있다.
그러나 컬러 코드의 경우에 그 특징이자 장점인 컬러 셀로 인해 카메라 특성에 따른 변이, 조명에 의한 변이, 인쇄 매체나 장치에 따른 변이, 입력된 이미지의 변이 등으로 특정 크기 이하에서는 범용 장비로 컬러 정보를 정확하게 판독하는 것이 쉽지 않다. 따라서 실제 사용에 있어 컬러 코드는 단일 심벌 내에서 일반적으로 25개 정도의 셀을 사용하고 있으며, 이 경우 4bytes의 정보를 포함할 수 있다. 이는 실질적으로 웹페이지 URL 정보를 코드 내에 포함하여 해당 사이트로 연결해 주는 역할에 적합하다.
이러한 이유에 의하여 컬러 코드는 일반적으로 ICM의 형태로 사용된다. 이 역시 온라인 기반의 네트워크 사용을 수반해야 한다. 이에 기존 2차원 이미지 코드와 컬러 코드를 멀티레이어의 형태로 합성하여 좀 더 많은 데이터를 코드 심벌 내에 포함하려는 연구도 있었다(김의재, "보안 및 기능 향상을 위한 멀티 레이어 이미지 코드 인터페이스의 설계 및 구현", 연세대학교 컴퓨터-산업시스템 공학 석사학위 논문, 2004.).
종래에 이미지 코드가 표현할 수 있는 정보량은 극히 제한되어 있다. 따라서 기존의 이미지 코드는 오프라인 기반의 네트워크만을 활용하는 경우에 소량의 정보만을 포함하거나, 온라인 기반의 네트워크를 활용하는 경우에 인덱스 키 정보나 웹사이트 주소 등의 기본 정보를 코드 내에 포함하고, 이를 근거로 갱신 가능한 대량의 정보를 포함하고 있는 데이터베이스나 웹페이지 등으로 연결을 유도하는 온라인 코드의 형태로 이용되고 있다. 그러나 이러한 온라인 코드로의 활용은 인식 장비의 온라인 기반의 네트워크 연결을 요구한다. 온라인 연결이 어렵거나 지원되지 않는 경우 또는 서버와의 교신이 많은 비용을 요구하는 경우에 오프라인 코드는 그 자체에 좀 더 많은 정보를 포함해 자체적으로 충분한 데이터를 전송해야 할 필요가 있었다.
본 발명은 객체들과의 데이터 통신을 위해 오프라인 태그 인터페이스로 이미지 코드를 사용하는 경우에 송신측의 디스플레이 장치와 수신측의 카메라 장비만을 이용해 종래의 이미지 코드보다 좀 더 많은 정보를 코드 내에 포함하여 온라인 접속 없이 오프라인 코드 자체만으로 많은 데이터를 전송할 수 있는 모션 코드를 제공하기 위한 것이 목적이다.
또한, 본 발명은 특정한 시간 동안 일정한 간격(interval)을 두고 변화하는 순차적 2차원 이미지 코드들의 집합을 포함하고, 시간의 흐름에 따라 2차원 이미지 코드 심벌들이 순차적으로 일정한 간격을 두고 교체되어 변화하는 동적 코드인 모션 코드를 제공하기 위한 것이 목적이다.
또한, 본 발명은 상기 모션 코드를 이용하여 데이터를 전송하는 방법을 제공하기 위한 것이 다른 목적이다.
본 발명은 상기 목적을 달성하기 위하여, 본 발명의 모션 코드는, 이미지파일, 텍스트파일, 동영상파일 중 어느 하나 이상의 파일 데이터를 2진(binary) 데이터로 변환하여 일정 크기의 사이즈로 분할한 후에 실제 데이터를 포함하는 2차원 이미지 코드 심벌들의 집합인 복수의 시퀀스 단위 심벌들을 적재한 시퀀스 심벌 집합(sequence symbol set)으로 생성하고, 생성된 시퀀스 심벌 집합들을 일정한 시간 간격을 두고 순차적으로 교체하여 재생 표시하는 것이다.
또한, 본 발명에서, 상기 시퀀스 단위 심벌은 회전 유무에 관한 정보를 확인하기 위한 로테이션 셀(rotation cell)과, 시퀀스 단위 심벌의 시간 변화에 따라 순차적으로 교체되어 변경되는 순서를 나타내는 시퀀스 셀(sequence cell)과, 실제 데이터를 포함하고 있는 데이터 셀(data cell)과, 오류 정보를 확인하기 위한 패리티 셀(parity cell)을 포함할 수 있다.
또한, 본 발명에서, 상기 시퀀스 심벌 집합의 앞에 모션 코드의 시작을 알리는 시작 심벌(start symbol)과 시퀀스 심벌 집합의 뒤에 종료를 알리는 종료 심벌(end symbol)이 위치할 수 있다.
또한, 본 발명의 모션 코드를 이용한 데이터 전송방법은, (a) 송신측 디스플레이 장치에서 전송하고자 하는 파일을 2진(binary) 데이터로 변경하고, 이를 일정한 사이즈로 분할하는 단계; (b) 상기 송신측 디스플레이 장치는 분할된 모션 코드의 각 시퀀스 단위 심벌(Sequence Unit Symbol)에 나누어 적재하고, 이들을 모아 시퀀스 심벌 집합(Sequence Symbol Set)을 구성하며, 여기에 시작 심벌(Start Symbol)과 종료 심벌(End Symbol)을 앞과 뒤에 부가하여 모션 코드를 생성하는 단계; (c) 상기 모션 코드를 송신측 디스플레이 장치의 디스플레이를 통해 시간의 변화에 따라 시작 심벌부터 각 시퀀스 단위 심벌들을 거쳐 종료 심벌까지 각각 차례로 교체되어 변경되는 모습을 재생(Play)하여 표시하는 단계; (d) 상기 송신측 디스플레이 장치의 디스플레이를 통해 재생되는 모션 코드를 카메라가 장착된 수신측 모바일 기기로 촬영한 후에 촬영된 데이터를 저장하는 단계; (e) 상기 수신측 모바일 기기는 촬영된 연사 파일들 또는 동영상 파일로부터 시작 심벌 이전과 종료 심벌 이후 촬영된 데이터를 삭제하고, 시작 심벌과 종료 심벌 사이의 프레임들을 분석하기 위하여 일정 규격으로 정규화하며, 정규화된 모션 코드의 각 시퀀스 단위 심벌들의 시퀀스 셀을 참조하여 중복되는 프레임들을 제거하는 단계; (f) 상기 수신측 모바일 기기는 정규화된 모션 코드의 시퀀스 심벌 집합의 각 단위 심벌들로부터 데이터 셀들을 순서대로 추출하고 연결한 후에 상기 송신측 디스플레이 장치에서 2진 데이터로 변환되기 전의 파일로 복원하는 단계를 포함하여 이루어진 것이다.
또한, 본 발명에서, 상기 파일은 이미지파일, 텍스트파일, 동영상파일을 포함할 수 있다.
또한, 본 발명에서, 상기 송신측 디스플레이 장치의 디스플레이는 TFT-LCD, LED 전광판, 브라운관, LCD 중 어느 하나를 포함할 수 있다.
또한, 본 발명에서, 상기 모션 코드의 재생은 수회 이상 반복적으로 표시할 수 있다.
또한, 본 발명에서, 상기 모션 코드의 재생은 모바일 기기 또는 고정형 기기에 장착된 카메라의 연사 기능이나 동영상 녹화 기능을 이용하여 촬영되는 과정의 형태로 다른 이종 기기로 전송할 수 있다.
또한, 본 발명에서, 상기 촬영은 모션 코드가 초당 교체하여 보여주는 시퀀스 단위 심벌의 개수를 n이라 할 때 S개(n<S<2n)의 프레임을 캡처하도록 할 수 있다.
또한, 본 발명에서, 상기 수신측 모바일 기기는 모션 코드의 재생동안 시작 심벌과 종료 심벌이 순서대로 한 번 이상 촬영하도록 할 수 있다.
본 발명은 상기 해결 수단에 의하여, 모션 코드는 영상 디스플레이 장치나 LED 집합으로 구성된 디스플레이 장치가 구비되어야 한다는 전제하에서 온라인 기반의 네트워크에 접속하지 않고 객체들과의 데이터 통신을 위해 이미지 코드를 사용하는 경우에 오프라인 코드 자체만으로 좀 더 많은 데이터를 전송할 수 있도록 함으로써, 모션 코드는 물리적 왜곡이나 변형에 강인하고, 송신부측에 컴퓨팅 장치를 구비하고 있는 경우에 객체 스스로가 능동적으로 변화하는 시간과 공간에 따라 데이터를 재생산하며, 모션 코드와 디스플레이 장치를 이용해 재전송할 수도 있고, 무엇보다 모션 코드는 온라인 접속 없이 오프라인 환경에서 다양한 형태의 다량의 데이터를 전송할 수 있도록 한 것이다.
도 1은 본 발명에 따른 모션 코드를 나타낸 구조도이다.
도 2는 본 발명에 따른 모션 코드 시퀀스 심벌을 나타낸 구조도이다.
도 3은 본 발명에 따른 모션 코드 생성, 전송 및 복원을 나타낸 흐름도이다.
이하, 본 발명에 따른 모션 코드와 이를 이용한 데이터 전송 방법에 관하여 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명은 온라인 기반의 네트워크가 지원되지 않는 환경에서 이미지파일, 텍스트파일, 동영상파일 등의 모션 코드를 생성한 후에 디스플레이(표시장치)를 통해 시간 변화에 따라 순차적으로 교체되는 모션 코드를 재생하는 송신측 디스플레이 장치와, 송신측 디스플레이 장치에서 재생되는 모션 코드를 촬영할 수 있는 카메라가 장착되어 있고 촬영된 모션 코드로부터 데이터를 추출하여 실제 파일로 복원할 수 있는 수신측 모바일 기기를 필요로 한다.
먼저, 도 1에서, 모션 코드는 시작 심벌(start symbol)(10), 복수의 시퀀스 단위 심벌(21)이 적재된 시퀀스 심벌 집합(sequence symbol set)(20), 종료 심벌(end symbol)(30)로 구성되어 있다. 시작 심벌(10)과 종료 심벌(30)은 사용자에게 모션 코드의 시작과 종료를 알려주며, 시퀀스 심벌 집합(20)은 순차적으로 일정한 시간 간격을 두고 교체되어 재생(display) 표시되는 2차원 이미지 코드 심벌들의 집합이다. 시퀀스 심벌 집합(20)은 실제 데이터를 포함한다.
도 2에서, 시퀀스 심벌 집합(20)에서 각각의 시퀀스 단위 심벌(21)은 수신측 모바일 기기에서 촬영한 모션 코드 영상 중에서 시퀀스 단위 심벌들을 추출하여 분석하는 과정에서 정규화 작업을 위하여 심벌의 회전 유무를 체크할 수 있도록 하는 로테이션 셀(rotation cell)(22)과, 각 시퀀스 단위 심벌의 순서 정보가 이진(binary) 형태로 기록되는 시퀀스 셀(sequence cell)(23)과, 실제 전송하고자 하는 파일의 정보가 분할되어 적재되는 데이터 셀(data cell)(24)과, 전송된 데이터의 오류 확인을 위해 패리티 오류 체크를 가능하게 하는 패리티 셀(parity cell)(25)로 구성되어 있다.
그리고 모션 코드의 시퀀스 심벌(21)은 모션 코드의 데이터 셀(24)을 제외한 나머지 부분은 모션 코드의 프레임(frame)이라 한다.
다음으로, 모션 코드의 생성은 2진 데이터 형태(binary data type)로 전환할 수 있는 데이터로서, 모션 코드는 생성 때에 전송하려는 원본 데이터 종류에 제약을 받지 않는다. 모션 코드를 통해 전송하기 위한 데이터를 2진 데이터 형태로 전환한 뒤, 압축 알고리즘을 이용하여 최적화한 후에 연속된 2진 데이터 열을 만들고, 이것을 단위 시퀀스 심벌 사이즈에 맞게 순차적으로 1과 0을 의미하는 흑백의 사각형 셀들의 집합으로 나누어 생성한다. 이에 프레임 부분을 더해 모션 코드를 완성하게 된다.
또한, 모션 코드는 특정 시간 동안 일정한 시간 간격을 두고 순차적으로 교체되는 시퀀스 단위 심벌(21)들을 반복적으로 표현할 수 있는 송신측 디스플레이 장치를 이용하여 표시한다. 모션 코드는 반복적으로 재생되는데, 일정한 시간 간격을 두고 초당 n개(n∈N, n≥1)의 시퀀스 단위 심벌(21)들을 교체하여 재생 표시되도록 한다. 사용자는 카메라의 연사 기능 또는 동영상 기능을 이용하여 모션 코드의 시작 심벌(10)과 종료 심벌(30)이 각 1회씩 나타날 때까지 초당 S(n<S<2n)개의 프레임으로 모션 코드를 촬영해야 한다. 획득한 영상으로부터 시작 심벌(10)과 종료 심벌(30) 이미지를 찾고, 그 사이에 위치한 모션 코드의 복수 시퀀스 단위 심벌(21) 이미지들을 추출한다. 로테이션 셀(22)을 이용하여 이미지를 분석할 수 있는 상태로 정규화하고 시퀀스 셀(23) 정보를 이용해 중복된 이미지는 즉시 제거한다.
모션 코드의 시퀀스 단위 심벌(21)들이 순차적으로 모두 확보되었는지 확인하고, 패리티 셀(25) 정보를 이용해 오류 여부를 확인하면서 2진 데이터 형태로 각 심벌마다 나뉘어 표현된 데이터들을 하나의 데이터 열로 추출한다. 다음으로 모션 코드 생성 때에 사용했던 압축 알고리즘을 이용하여 이를 디코딩(decoding)함으로써, 2진 데이터를 원래의 데이터 형태로 전환하여 전송을 완료한다.
본 발명의 모션 코드가 표현할 수 있는 정보량, 예를 들어, 모션 코드는 단위 심벌의 데이터 셀의 수를 m, 전송 때에 매 초 당 교체되어 변화하는 시퀀스 단위 심벌의 수를 n, 시퀀스 심벌 집합이 모두 전송되는 데 걸리는 시간을 T라 하면, m×n×T bits의 데이터를 전송할 수 있다. 따라서 시퀀스 단위 심벌(21)의 데이터 셀을 25×25 형태로 구성하고, 초당 4개의 단위 심벌을 10초 간 전송할 경우에 바이너리 형태로 3,125 Bytes의 데이터를 전송할 수 있다.
한편, 도 3에서, 본 발명의 모션 코드를 이용하여 데이터를 전송하는 방법을 설명한다.
우선, 송신측 디스플레이 장치(40)에서 전송하고자 하는 파일, 즉 이미지, 텍스트, 동영상 등의 파일을 2진(binary) 데이터로 변경하고, 변경된 데이터를 특정한 사이즈로 분할한다. 분할된 모션 코드를 각각의 시퀀스 단위 심벌(21)로 나누어 적재한다. 그리고 복수의 시퀀스 단위 심벌(21)들을 모아 시퀀스 심벌 집합(20)을 구성한다.
또한, 시퀀스 심벌 집합(20)의 앞쪽에 시작 심벌(Start Symbol)을 추가하고, 시퀀스 심벌 집합(20)의 뒤쪽에 종료 심벌(End Symbol)을 추가하여 완성된 모션 코드를 생성한다.
상기 모션 코드는 디스플레이, 예를 들어, TFT-LCD, LED 전광판, 브라운관, LCD 등의 표시장치를 통해 시간의 변화에 따라 시작 심벌부터 각 시퀀스 단위 심벌들을 거쳐 종료 심벌까지 각각 차례로 교체되어 변경되는 모습을 GIF나 Flash 또는 동영상 등의 형태로 애니메이션과 같이 재생 표시된다. 모션 코드는 수회 이상 반복적으로 재생 표시된다.
송신측 디스플레이 장치(40)에서 재생되는 모션 코드는 수신측 모바일 기기 또는 고정형 기기 등에 장착된 카메라의 연사 기능이나 동영상 녹화 기능 등을 이용하여 촬영한다. 따라서 송신측 디스플레이 장치(40)에서 재생되는 모션 코드는 수신측의 모바일 기기(50) 등의 이종 기기로 전송된다. 상기 수신측 모바일 기기(50)에서 모션 코드의 촬영은 모션 코드가 초당 교체되어 보이는 시퀀스 단위 심벌의 개수를 n이라 할 때, S개(n<S<2n)의 프레임을 캡처할 수 있도록 한다.
수신측 모바일 기기(50)는 모션 코드를 카메라를 통해 촬영할 때, 사용자는 재생되고 있는 모션 코드가 카메라의 촬영 영역에 잘 들어올 수 있도록 능동적으로 조절하여 촬영하여야 한다. 수신측 모바일 기기(50)로 모션 코드를 촬영을 시작한 이후에 재생되는 모션 코드의 시작 심벌과 종료 심벌이 순서대로 반드시 한 번 이상은 포함되도록 촬영하는 것이 좋다.
또한, 수신측 모바일 기기(50)는 촬영된 연사 파일들 또는 동영상 파일로부터 시작 심벌(10) 이전과 종료 심벌(30) 이후의 촬영 부분은 바로 삭제되도록 하고, 시작 심벌(10)과 종료 심벌(30) 이내에 포함된 프레임들의 분석을 위하여 일정한 규격으로 정규화한 후에 모션 코드의 각 시퀀스 단위 심벌(21)들의 시퀀스 셀(23)을 참조하여 중복되는 프레임들을 제거함으로써 이미지 정보를 추출한다.
상기 시퀀스 심벌 집합(20)의 각 시퀀스 단위 심벌(21)들로부터 데이터 셀(24)들을 순서대로 추출하여 연결함으로써, 송신측 디스플레이 장치(40)에서 수신측 모바일 기기(50)로 전송하기 전의 이미지나 텍스트 또는 동영상 등의 파일로 복원한다.
따라서 본 발명의 모션 코드는 온라인 기반의 네트워크 인프라가 지원되지 않은 환경에서 카메라가 장착된 모바일 기기와 디스플레이 장치만으로 종래 1차원, 2차원 이미지 코드보다 심벌 자체만으로 훨씬 많은 정보를 전달할 수 있는 장점이 있다.
이상의 설명에서 본 발명은 특정의 실시 예와 관련하여 도시 및 설명하였지만, 특허청구범위에 의해 나타난 발명의 사상 및 영역으로부터 벗어나지 않는 한도 내에서 다양한 개조 및 변화가 가능하다는 것을 이 기술분야에서 통상의 지식을 가진 자라면 누구나 쉽게 알 수 있을 것이다.
10: 시작 심벌 20: 시퀀스 심벌 집합
21: 시퀀스 단위 심벌 22: 로테이션 셀
23: 시퀀스 셀 24: 데이터 셀
25: 패리티 셀 30: 종료 심벌
40: 디스플레이 장치 50: 모바일 기기

Claims (10)

  1. 이미지파일, 텍스트파일, 동영상파일 중 어느 하나 이상의 파일 데이터를 2진(binary) 데이터로 변환하여 일정 크기의 사이즈로 분할한 후에 실제 데이터를 포함하는 2차원 이미지 코드 심벌들의 집합인 복수의 시퀀스 단위 심벌들을 적재한 시퀀스 심벌 집합(sequence symbol set)으로 생성하고, 생성된 시퀀스 심벌 집합들을 일정한 시간 간격을 두고 순차적으로 교체하여 재생 표시하는 모션 코드.
  2. 제1항에 있어서, 상기 시퀀스 단위 심벌은 회전 유무에 관한 정보를 확인하기 위한 로테이션 셀(rotation cell)과, 시퀀스 단위 심벌의 시간 변화에 따라 순차적으로 교체되어 변경되는 순서를 나타내는 시퀀스 셀(sequence cell)과, 실제 데이터를 포함하고 있는 데이터 셀(data cell)과, 오류 정보를 확인하기 위한 패리티 셀(parity cell)을 포함하는 모션 코드.
  3. 제1항에 있어서, 상기 시퀀스 심벌 집합의 앞에 모션 코드의 시작을 알리는 시작 심벌(start symbol)과 시퀀스 심벌 집합의 뒤에 종료를 알리는 종료 심벌(end symbol)이 위치하는 모션 코드.
  4. (a) 송신측 디스플레이 장치에서 전송하고자 하는 파일을 2진(binary) 데이터로 변경하고, 이를 일정한 사이즈로 분할하는 단계;
    (b) 상기 송신측 디스플레이 장치는 분할된 모션 코드의 각 시퀀스 단위 심벌(Sequence Unit Symbol)에 나누어 적재하고, 이들을 모아 시퀀스 심벌 집합(Sequence Symbol Set)을 구성하며, 여기에 시작 심벌(Start Symbol)과 종료 심벌(End Symbol)을 앞과 뒤에 부가하여 모션 코드를 생성하는 단계;
    (c) 상기 모션 코드를 송신측 디스플레이 장치의 디스플레이를 통해 시간의 변화에 따라 시작 심벌부터 각 시퀀스 단위 심벌들을 거쳐 종료 심벌까지 각각 차례로 교체되어 변경되는 모습을 재생(Play)하여 표시하는 단계;
    (d) 상기 송신측 디스플레이 장치의 디스플레이를 통해 재생되는 모션 코드를 카메라가 장착된 수신측 모바일 기기로 촬영한 후에 촬영된 데이터를 저장하는 단계;
    (e) 상기 수신측 모바일 기기는 촬영된 연사 파일들 또는 동영상 파일로부터 시작 심벌 이전과 종료 심벌 이후 촬영된 데이터를 삭제하고, 시작 심벌과 종료 심벌 사이의 프레임들을 분석하기 위하여 일정 규격으로 정규화하며, 정규화된 모션 코드의 각 시퀀스 단위 심벌들의 시퀀스 셀을 참조하여 중복되는 프레임들을 제거하는 단계;
    (f) 상기 수신측 모바일 기기는 정규화된 모션 코드의 시퀀스 심벌 집합의 각 단위 심벌들로부터 데이터 셀들을 순서대로 추출하고 연결한 후에 상기 송신측 디스플레이 장치에서 2진 데이터로 변환되기 전의 파일로 복원하는 단계;를 포함하여 이루어진 모션 코드를 이용한 데이터 전송방법.
  5. 제4항에 있어서, 상기 파일은 이미지파일, 텍스트파일, 동영상파일을 포함하는 모션 코드를 이용한 데이터 전송방법.
  6. 제4항에 있어서, 상기 송신측 디스플레이 장치의 디스플레이는 TFT-LCD, LED 전광판, 브라운관, LCD 중 어느 하나를 포함하는 모션 코드를 이용한 데이터 전송방법.
  7. 제4항에 있어서, 상기 모션 코드의 재생은 수회 이상 반복적으로 표시하는 모션 코드를 이용한 데이터 전송방법.
  8. 제4항에 있어서, 상기 모션 코드의 재생은 모바일 기기 또는 고정형 기기에 장착된 카메라의 연사 기능이나 동영상 녹화 기능을 이용하여 촬영되는 과정의 형태로 다른 이종 기기로 전송하는 모션 코드를 이용한 데이터 전송방법.
  9. 제4항에 있어서, 상기 촬영은 모션 코드가 초당 교체하여 보여주는 시퀀스 단위 심벌의 개수를 n이라 할 때 S개(n<S<2n)의 프레임을 캡처하도록 하는 모션 코드를 이용한 데이터 전송방법.
  10. 제4항에 있어서, 상기 수신측 모바일 기기는 모션 코드의 재생동안 시작 심벌과 종료 심벌이 순서대로 한 번 이상 촬영하도록 하는 모션 코드를 이용한 데이터 전송방법.
KR1020110057137A 2011-06-13 2011-06-13 모션 코드 및 이를 이용한 데이터 전송방법 KR101159486B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110057137A KR101159486B1 (ko) 2011-06-13 2011-06-13 모션 코드 및 이를 이용한 데이터 전송방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110057137A KR101159486B1 (ko) 2011-06-13 2011-06-13 모션 코드 및 이를 이용한 데이터 전송방법

Publications (1)

Publication Number Publication Date
KR101159486B1 true KR101159486B1 (ko) 2012-06-22

Family

ID=46689372

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110057137A KR101159486B1 (ko) 2011-06-13 2011-06-13 모션 코드 및 이를 이용한 데이터 전송방법

Country Status (1)

Country Link
KR (1) KR101159486B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060044805A (ko) * 2004-11-05 2006-05-16 주식회사 칼라짚미디어 혼합코드 및 혼합코드 인코딩 방법과 장치
JP2009271551A (ja) 2007-12-04 2009-11-19 A T Communications Co Ltd 二次元コード表示システム、二次元コード表示方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060044805A (ko) * 2004-11-05 2006-05-16 주식회사 칼라짚미디어 혼합코드 및 혼합코드 인코딩 방법과 장치
JP2009271551A (ja) 2007-12-04 2009-11-19 A T Communications Co Ltd 二次元コード表示システム、二次元コード表示方法、及びプログラム
JP2009271552A (ja) 2007-12-04 2009-11-19 A T Communications Co Ltd 二次元コード表示システム、二次元コード表示方法、及びプログラム

Similar Documents

Publication Publication Date Title
CN102521235B (zh) 连拍模式图像压缩和解压
JP2005122729A (ja) 携帯通信機器間でデータオブジェクトを転送する方法および携帯通信機器
KR101710050B1 (ko) 이미지 식별 시스템 및 방법
CN102067127A (zh) 标记图像并在标记图像时提供通知的方法和装置
KR20100047670A (ko) 시각적 코드를 이용한 데이터 전송 장치 및 방법과 데이터 수신 장치 및 방법
KR101690264B1 (ko) 다중 코드 인식 방법 및 시스템
CN101695198A (zh) 实现无线应用通讯协议页面图片优化的方法和系统
CN107403217A (zh) 一种标记物辅助乱架识别系统
TWI544419B (zh) 二維條碼之編碼方法、解碼方法與電子裝置
CN103237165A (zh) 实时查看名片扩展信息的方法及电子设备
JP2012208591A (ja) 書籍の在庫確認システム
CN101189862A (zh) 用于下载和再现内容的方法
JP6368149B2 (ja) 画像伝送システム、画像処理装置、画像蓄積装置、及びそれらの制御方法
Einy et al. IoT Cloud‐Based Framework for Face Spoofing Detection with Deep Multicolor Feature Learning Model
KR102159712B1 (ko) Qr 코드가 저장된 단말
CN106067892A (zh) 管理数据获取
KR101159486B1 (ko) 모션 코드 및 이를 이용한 데이터 전송방법
CN105704215B (zh) 文件共享系统及相应的文件发送方法及装置
CN101976328B (zh) 一种会展资料收集系统、方法
RU97199U1 (ru) Система, мобильное устройство и считывающее устройство для передачи текстовой информации с помощью графических изображений
WO2020261546A1 (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
KR20070001309A (ko) 2차원 바코드를 이용한 데이터 다운로드 방법
CN111325652A (zh) 信息嵌入、提取方法及装置、设备、计算机可读存储介质
CN112989078A (zh) 数据处理方法、装置、计算机设备及存储介质
CN109492631B (zh) 投保证件的处理方法、装置、设备及存储介质

Legal Events

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

Payment date: 20150603

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160615

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee