KR101617105B1 - 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 - Google Patents
가시광 통신 시스템에서 데이터 송수신 방법 및 장치 Download PDFInfo
- Publication number
- KR101617105B1 KR101617105B1 KR1020140188617A KR20140188617A KR101617105B1 KR 101617105 B1 KR101617105 B1 KR 101617105B1 KR 1020140188617 A KR1020140188617 A KR 1020140188617A KR 20140188617 A KR20140188617 A KR 20140188617A KR 101617105 B1 KR101617105 B1 KR 101617105B1
- Authority
- KR
- South Korea
- Prior art keywords
- pulse
- signal frame
- value
- low
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/11—Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
- H04B10/114—Indoor or close-range type systems
- H04B10/116—Visible light communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/60—Receivers
- H04B10/61—Coherent receivers
Landscapes
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Optical Communication System (AREA)
Abstract
본 명세서는 가시광 통신 시스템에서 데이터를 수신하기 위한 방법에 있어서, 광원을 포함하는 영상을 롤링 셔터(Rolling Shutter) 방식을 이용하여 촬영하는 단계; 상기 촬영된 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 단계; 및 상기 신호 프래임을 통해 전송되는 데이터에 대한 디코딩(decoding)을 수행하는 단계를 포함하되, 상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 상기 싱크 펄스와 데이터 비트를 구분하기 위한 보호 비트(guard bit) 또는 데이터가 전송되는 데이터 비트(data bit) 중 적어도 하나를 포함하는 것을 특징으로 한다.
Description
본 명세서는 가시광 통신 시스템에서 데이터를 송수신하기 위한 방법 및 이를 이용한 장치에 관한 것이다.
최근 LED(light-emitting diode) 조명이 각광을 받으면서 LED 조명 인프라와 IT 기술을 융합하는 시도가 많이 이루어지고 있다. 그 중에서 LED 조명의 가시광을 통신 매체로 이용하는 가시광통신(VLC; visible light communication) 분야가 활발히 연구되고 있으며, 실내/실외 조명, 자동차 램프 등 다양한 응용처를 가지고 있다. IEEE에서는 802.15.7 VLC Task Group에서 표준화를 최근 완료하였다. 일반적으로 LED 조명을 통신 수단으로 이용하는 방법으로 빛의 진폭 또는 강도를 조절하여 정보를 싣는 방식이 이용된다. 빛이 초당 수백 번 이상 깜박이면 사람의 눈은 평균으로밖에 인지하지 못하므로 조명과 통신이 동시에 구현된다.
다중레벨 펄스진폭변조(multi-level PAM; pulse amplitude modulation)도 가능하겠으나 진폭에 대한 비선형제어의 어려움으로 인해서 ON/OFF로 데이터를 보내는 OOK (on-off keying)가 가장 간단하며 보다 전력 효율적인 방식인 펄스위치변조(multi-level PPM; pulse position modulation)을 활용할 수 있다.
이와 같이, 펄스를 데이터에 따라 전송하면 조명의 밝기는 항상 ON인 경우에 비해 감소하게 된다. 보통 소스 부호화된(source coded) 데이터는 같은 수의 ‘1’과 ‘0’을 가지므로 밝기(광도)는 약 50%로 감소한다. 게다가 초기 LED 조명을 설치하는 측에서는 가시광통신에 의한 밝기 감소를 고려하지 않을 것으로 예상되며, 또한 LED 조명의 고유 기능으로 조명 밝기를 최대값의 0~100%로 조절하는 광도 조절(디밍;Dimming) 기능을 가지도록 한다. 디밍은 보통 조명의 진폭을 낮추어 구현되기보다는 펄스 폭 변조(PWM;pulse width modulation)처럼 ON/OFF 구간의 비율을 조정하여 구현된다. 이를 고려하여 IEEE 802.15.7 VLC 표준 에서도 데이터 변조는 2진 PPM을 활용하고 디밍은 펄스 폭 변조를 활용하는 Variable PPM이라는 방식이 고려되고 있다.
본 명세서는 가시광 통신 시스템에서 데이터를 송수신하기 위한 새로운 신호 프래임을 정의함에 목적이 있다.
또한, 본 명세서는 롤링 셔터 효과(Rolling Shutter Effect)를 이용한 영상 촬영을 통해 신호 프래임을 통해 전송되는 데이터를 디코딩하기 위한 방법을 제공함에 목적이 있다.
본 명세서에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서는 가시광 통신 시스템에서 데이터를 수신하기 위한 방법에 있어서, 광원을 포함하는 영상을 롤링 셔터(Rolling Shutter) 방식을 이용하여 촬영하는 단계; 상기 촬영된 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 단계; 및 상기 신호 프래임을 통해 전송되는 데이터에 대한 디코딩(decoding)을 수행하는 단계를 포함하되, 상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 상기 싱크 펄스와 데이터 비트를 구분하기 위한 보호 비트(guard bit) 또는 데이터가 전송되는 데이터 비트(data bit) 중 적어도 하나를 포함하는 것을 특징으로 한다.
또한, 본 명세서에서 상기 보호 비트는 상기 싱크 펄스 바로 이전 또는 바로 다음 중 적어도 어느 하나의 부분에 위치하는 것을 특징으로 한다.
또한, 본 명세서에서 상기 싱크 펄스는 20개의 high 및/또는 low chip들로 구성되며, 상기 싱크 펄스의 chip 구성은 디밍에 따라 달라지는 것을 특징으로 한다.
또한, 본 명세서에서 상기 싱크 펄스의 바로 이전에 위치하는 보호 비트는 데이터 비트 ‘0’ 값에 해당하며, 상기 싱크 펄스의 바로 다음에 위치하는 보호 비트는 데이터 비트 ‘1’ 값에 해당하는 것을 특징으로 한다.
또한, 본 명세서는 상기 검출되는 신호 프래임이 롤링 셔터 진행 방향과 일정 각도 기울어진 경우, 상기 신호 프래임의 pulse들에 대해 각각 상기 롤링 셔터 진행 방향 축으로의 low 값 또는 high 값을 결정하는 단계; 및 상기 결정된 low 값 또는 high 값을 임계값과 비교하여 상기 신호 프래임의 pulse들에 대해 low pulse 또는 high pulse로 구분하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 본 명세서는 상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하는 단계; 상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하는 단계; 및 상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 본 명세서에서 상기 기준 high pulse는 싱크 펄스를 제외한 가장 큰 high pulse를 가지는 pulse이며, 상기 기준 low pulse는 가장 큰 low pulse를 가지는 pulse인 것을 특징으로 한다.
또한, 본 명세서에서 상기 보호 비트는 1 bit이며, 상기 데이터 비트는 8 bit인 것을 특징으로 한다.
또한, 본 명세서는 가시광 수신 장치에 있어서, 롤링 셔터(Rolling Shutter) 방식을 이용하여 광원을 포함하는 영상을 촬영하는 영상 촬영 장치; 상기 영상 촬영 장치를 통해 촬영되는 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 신호 프래임 검출부; 및 상기 신호 프래임을 통해 전송되는 데이터에 대한 디코딩(decoding)을 수행하는 디코더(decoder)를 포함하되, 상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 상기 싱크 펄스와 데이터 비트를 구분하기 위한 보호 비트(guard bit) 또는 데이터가 전송되는 데이터 비트(data bit) 중 적어도 하나를 포함하는 것을 특징으로 한다.
또한, 본 명세서는 상기 영상 촬영 장치, 상기 신호 프래임 검출부 및 상기 디코더와 기능적으로 연결되는 제어부를 더 포함하며, 상기 제어부는 상기 신호 프래임 검출부를 통해 검출되는 신호 프래임이 롤링 셔터 진행 방향과 일정 각도 기울어진 경우, 상기 신호 프래임의 pulse들에 대해 각각 상기 롤링 셔터 진행 방향 축으로의 low 값 또는 high 값을 결정하며, 상기 결정된 low 값 또는 high 값을 임계값과 비교하여 상기 신호 프래임의 pulse들에 대해 low pulse 또는 high pulse로 구분하도록 제어하는 것을 특징으로 한다.
또한, 본 명세서에서 상기 제어부는 상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하며, 상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하며, 상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하도록 제어하는 것을 특징으로 한다.
본 명세서는 가시광 통신 시스템에서 새로운 신호 프래임 구조를 정의함으로써, 영상 촬영을 통해 가시광 신호를 디코딩할 수 있는 효과가 있다.
또한, 본 명세서는 촬영 영상에 회전이 발생한 경우, 수평 모폴로지 등을 수행하여 데이터 디코딩을 정확하게 할 수 있는 효과가 있다.
본 명세서에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 명세서에서 제안하는 방법들이 적용될 수 있는 가시광 통신 시스템의 일 예를 나타낸 개념도이다.
도 2는 롤링 셔터 및 글로벌 셔터 방식으로 영상을 촬영한 화면의 일 예를 나타낸 도이다.
도 3은 본 명세서에서 제안하는 롤링 셔터 효과를 이용한 가시광 신호 송수신 방법의 일 예를 나타낸 순서도이다.
도 4는 본 명세서에서 제안하는 신호 프래임 구조의 일 예를 나타낸 도이다.
도 5는 본 명세서에서 제안하는 데이터 디코딩 방법의 일 예를 나타낸 순서도이다.
도 6a는 본 명세서의 일 실시 예에 해당하는 영상 촬영 화면을 나타낸 도이다.
도 6b는 본 명세서의 일 실시 예에 해당하는 데이터 송신 영역을 나타낸 도이다.
도 7a는 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터 송신 영역을 나타낸 도이다.
도 7b는 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터 송신 영역에 수평 모폴로지를 수행한 후의 결과를 나타낸 도이다.
도 8은 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터의 디코딩 가능성을 나타낸 도이다.
도 9는 본 명세서에서 제안하는 방법들이 적용될 수 있는 가시광 수신 장치의 내부 블록도의 일 예를 나타낸 도이다.
도 2는 롤링 셔터 및 글로벌 셔터 방식으로 영상을 촬영한 화면의 일 예를 나타낸 도이다.
도 3은 본 명세서에서 제안하는 롤링 셔터 효과를 이용한 가시광 신호 송수신 방법의 일 예를 나타낸 순서도이다.
도 4는 본 명세서에서 제안하는 신호 프래임 구조의 일 예를 나타낸 도이다.
도 5는 본 명세서에서 제안하는 데이터 디코딩 방법의 일 예를 나타낸 순서도이다.
도 6a는 본 명세서의 일 실시 예에 해당하는 영상 촬영 화면을 나타낸 도이다.
도 6b는 본 명세서의 일 실시 예에 해당하는 데이터 송신 영역을 나타낸 도이다.
도 7a는 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터 송신 영역을 나타낸 도이다.
도 7b는 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터 송신 영역에 수평 모폴로지를 수행한 후의 결과를 나타낸 도이다.
도 8은 본 명세서의 일 실시 예에 해당하는 회전이 발생한 데이터의 디코딩 가능성을 나타낸 도이다.
도 9는 본 명세서에서 제안하는 방법들이 적용될 수 있는 가시광 수신 장치의 내부 블록도의 일 예를 나타낸 도이다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다.
다만, 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 핵심을 흐리지 않고 더욱 명확히 전달하기 위함이다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.
또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.
가시광 통신 시스템
도 1은 본 명세서에서 제안하는 방법들이 적용될 수 있는 가시광 통신 시스템의 일 예를 나타낸 개념도이다.
도 1에서 설명되는 가시광 통신 시스템(10)은 자가 발전 광원 센서 시스템(일 예로, 하이 패스, 마트Tag, 창고 물건 정보 수집, 전자 금융(T-money), 식물 공장 모니터링, 자동차 상태 모니터링 센서 시스템, 교통정보 제공 및 수집 시스템, 스마트 조명 시스템, 군용 식별 시스템 …), 광 기반 무선 전력 전송 시스템(일 예로, 가정용 무선 충전기, 산업용 무선 충전기, 스마트 그리드 사업, 스마트 조명 시스템 …) 및 광 기반 데이터 전송 시스템(교통정보 제공 및 수집 시스템, 홈네트워크, 지능형 조명 등) 등에서 이용 가능하다.
이외에도 상기 가시광 통신 시스템은 다양한 통신 분야에도 활용 가능하다.
상기 가시광 통신 시스템은 광원을 이용하여 데이터를 전송하는 가시광 송신 장치(200) 및 광원을 통해 전송된 데이터를 수신하는 가시광 수신 장치(100)를 포함한다.
여기서, 상기 광원은 LED(Light Emitting Diode), OLED(Organic Light Emitting Diode), CCFL(Cold Cathode Fluorescent Lamp), EEFL(External Electrode Fluorescent Lamp), 및 FFL(Flat Fluorescent Lamp) 중 어느 하나일 수 있다.
상기 가시광 송신 장치(200)는 전송하고자 하는 데이터를 다양한 변조 방식을 이용하여 변조 신호를 생성하고, 상기 변조 신호를 상기 변조 신호의 특성에 맞는 파장 대역을 통해 광원을 이용하여 전송한다.
상기 가시광 수신 장치(100)는 광원을 수신하며, 상기 수신된 광원을 이용하여 데이터를 복조(또는 디코딩)한다.
상기 가시광 송신 장치 및 상기 가시광 수신 장치는 Tag와 같은 소형 센서, 휴대폰, PDA 등과 같은 이동 단말의 형태일 수도 있으며, 데스크 탑 형태의 고정 단말의 형태일 수도 있다.
또한, 상기 가시광 수신 장치는 영상을 촬영할 수 있는 영상 촬영 장치를 구비할 수 있으며, 상기 가시광 수신 장치 자체가 영상 촬영 장치일 수도 있다.
상기 영상 촬영 장치 또는 상기 가시광 수신 장치는 카메라, 캠코더, 스마트폰, TV, 감시 카메라, 노트북, 데스크탑 등일 수 있다.
또한, 상기 영상 촬영 장치는 이미지 센서로 표현될 수 있다.
또한, 상기 가시광 통신 시스템은 유, 무선 통신의 다른 통신 매체를 사용하는 통신 시스템과 결합하여 더욱 효율적으로 사용될 수 있다.
롤링 셔터 및 글로벌 셔터
먼저, 롤링 셔터(Rolling Shutter) 방식 및 글로벌 셔터(Global Shutter) 방식에 대해 도 2를 참조하여 살펴보기로 한다.
도 2는 롤링 셔터 및 글로벌 셔터 방식으로 영상을 촬영한 화면의 일 예를 나타낸 도이다.
도 2의 좌측 그림은 롤링 셔터 방식을 이용하여 영상을 촬영한 화면을 나타낸다.
롤링 셔터(Rolling Shutter) 방식은 영상(또는 화면)의 좌우 또는 위아래로 일정한 영역씩을 스캔하여 하나의 영상으로 캡쳐하는 방식을 말한다.
상기 롤링 셔터 방식은 현재 대부분의 CMOS 센서에서 사용되고 있는 전자식 셔터 방식을 말한다.
롤링 셔터 방식으로 영상을 촬영하는 경우, 프래임의 속도를 높일 수 있지만 센서의 주사선 위치마다 노출의 타이밍이 다르기 때문에 왜곡 현상이 발생할 수 있다.
즉, 롤링 셔터 방식은 센서를 비선형으로 스캔하기 때문에 노출, 이미지 스캔, 스캔된 이미지의 조합 과정이 비 동기화 센서 크기와 해상도가 크면 클수록 이미지의 왜곡이 더 심해지는 현상이 발생한다.
도 2에 도시된 바와 같이, 선풍기를 롤링 셔터 방식으로 촬영하는 경우(도 2의 좌측 그림), 선풍기 날개 부분의 영상에서 왜곡 현상이 나타나는 것을 볼 수 있다.
이처럼, 왜곡 현상이 발생하는 것을 롤링 셔터 효과(Rolling Shutter Effect)라 한다.
도 2의 우측 그림은 글로벌 셔터 방식을 이용하여 영상을 촬영한 화면의 일 예를 나타낸다.
글로벌 셔터(Global Shutter) 방식은 영상의 전체를 한꺼번에 스캔하여 캡쳐하는 방식을 말한다.
상기 글로벌 셔터 방식은 소수의 CMOS 센서에서 사용되며, 같은 integration 주기를 위해 같은 시간 동안 노출되는 모든 픽셀을 통합하여 처리한다.
글로벌 셔터 방식으로 촬영하는 경우, 롤러 셔터 방식에서의 왜곡 현상은 발생하지는 않지만, 전체 화소 노출 후 모든 화소를 읽어내야 하기 때문에 프래임의 속도를 빠르게 할 수 없다.
가시광 신호 송수신 방법
이하에서, 본 명세서에서 제안하는 롤링 셔터 효과(Rolling Shutter Effect)를 이용하여 가시광 신호를 송수신하기 위한 기본 동작에 대해 살펴보기로 한다.
도 3은 본 명세서에서 제안하는 롤링 셔터 효과를 이용한 가시광 신호 송수신 방법의 일 예를 나타낸 순서도이다.
가시광 송신 장치는 빛의 온(On) 또는 오프(Off) 동작을 이용하여 데이터를 포함하는 신호 프래임을 생성하고, 상기 생성된 신호 프래임을 전송한다(S310).
상기 가시광 송신 장치는 빛의 깜박거림을 통해 데이터를 전송하게 된다.
여기서, 상기 가시광 송신 장치에서의 온 또는 오프 동작은 가시광 수신 장치에 구비되는 롤링 셔터의 좌우 또는 위아래 스캔 주기에 대응하여 동작될 수 있도록 제어될 수 있다.
본 명세서에서 제안하는 방법들에 적용될 수 있는 펄스폭 기반 변조 방식은 디밍(Dimming)에 따라 변조 신호에 포함되는 ‘0’ 과 ‘1’의 개수가 결정된다.
본 명세서의 펄스폭 기반 변조 방식은 10개의 칩(chip)을 이용하여 1 bit의 데이터(또는 데이터 1개)를 전송한다.
펄스폭 기반변조 방식에서 10개의 chip을 사용하여 1 bit의 데이터를 전송하는 이유는 디밍 비율을 10% 단위로 조절하기 위함이다.
한 주기(10개의 chip 구간) 동안 high pulse가 왼쪽에 위치하는 경우, 데이터 ‘0’ 값을 나타낼 수 있으며, 한 주기 동안 high pulse가 오른쪽에 위치하는 경우, 데이터 ‘1’ 값을 나타낼 수 있다.
디밍이 70%인 경우를 일 예로 들어 살펴보기로 한다.
데이터 ‘0’ 및 ‘1’의 값은 각각 총 10개의 chip으로 구성되며, 데이터 ‘0’ 값(1111111000)은 왼쪽에 7개의 high chip(1)을 가지며, 오른쪽에 3개의 low chip(0)을 가진다.
또한, 데이터 ‘1’ 값(0001111111)은 왼쪽에 3개의 low chip를 가지며, 오른쪽에 7개의 high chip를 가진다.
다음, 가시광 수신 장치는 상기 가시광 송신 장치를 포함하는 영역의 영상을 촬영하고(S320), 상기 촬영되는 영상에서 신호 프래임을 복원하여(S330) 상기 복원되는 신호 프래임의 데이터 비트를 디코딩한다(S340).
구체적으로, 상기 가시광 수신 장치는 롤링 셔터를 이용하여 영상을 촬영하는 경우, 롤링 셔터 효과를 통해 상기 가시광 송신 장치에서 송신하는 신호 프래임을 획득할 수 있게 된다.
이후, 상기 가시광 수신 장치는 상기 획득된 신호 프래임에 대해 수평 모폴로지 절차, 프로젝션 절차, pulse 폭 및 pulse chip size의 측정 절차 등을 통해 신호 프래임의 데이터 비트를 디코딩한다.
이하에서, 본 명세서에서 제안하는 방법들에 적용될 수 있는 신호 프래임 구조, 롤링 셔터 효과를 이용한 수신단에서의 디코딩 방법 등에 대해 좀 더 구체적으로 살펴보기로 한다.
신호 프래임 구조
도 4는 본 명세서에서 제안하는 신호 프래임 구조의 일 예를 나타낸 도이다.
도 4에 도시된 바와 같이, 롤링 셔터 방식을 이용하여 데이터를 송수신하기 위한 신호 프래임(400)은 싱크 펄스(Sync. Pulse,410), 보호 비트(Guard Bit,420), 데이터 비트(Data Bit,430) 등을 포함할 수 있다.
상기 싱크 펄스는 싱크 신호, 싱크 영역 등으로, 상기 보호 비트는 보호 구간(Guard Interval), 보호 영역 등으로, 상기 데이터 비트는 데이터 영역, 데이터 등으로 표현될 수도 있다.
먼저, 싱크 펄스(410)는 가시광 송신 장치와 가시광 수신 장치 간의 동기를 맞추기 위해 사용되는 신호를 의미한다.
상기 싱크 펄스는 디밍(Dimming)에 따라 그 구성(high chip과 low chip의 개수)이 달라질 수 있다.
상기 싱크 펄스는 20개의 chip으로 구성되며, 각 chip은 low또는 high 값을 가질 수 있다.
상기 chip의 low 값은 ‘0’으로, chip의 high 값은 ‘1’로 표현될 수 있다.
본 명세서에서 사용되는 ‘A 및/또는 B’의 의미는 A, B 또는 A와 B의 경우의 수를 나타내며, 이는 ‘A 또는 B 중 적어도 하나’로 표현될 수 있다.
상기 싱크 펄스는 신호 프래임에서 가장 넓은 pulse 폭을 가진다.
또한, 상기 싱크 펄스는 거리의 영향으로 인해 chip의 low값 즉, ‘0’이 뭉개지는 현상으로 인해 수신단에서는 모두 최대 진폭이 보호 비트나 데이터 비트를 구성하는 chip보다 다소 줄어든 상태에서 high chip의 값을 가지는 신호로 수신될 수 있다.
상기 싱크 펄스는 디밍에 따라 아래와 같이 구성될 수 있다.
다만, 아래 예는 일 예에 불과할 뿐 이에 제한되지 않고 다양한 방식으로 구성될 수 있다.
(1)디밍 30%인 경우 싱크 펄스: 10001000100010001010
(2)디밍 40%인 경우 싱크 펄스: 10100010101010001010
(3)디밍 50%인 경우 싱크 펄스: 10101010101010101010
(4)디밍 60%인 경우 싱크 펄스: 10101011101011101010
(5)디밍 70%인 경우 싱크 펄스: 10111011101011101110
(6)디밍 80%인 경우 싱크 펄스: 10111111101011111110
살핀 것처럼, 상기 (1) 내지 (6)에서 ‘1’ 또는 ‘0’은 하나의 chip 값을 나타내며, ‘1’은 high chip을, ‘0’은 low chip을 나타낸다.
다음, 보호 비트(420)는 신호 프래임에서 싱크 펄스와 데이터 비트와의 구분을 명확하게 하기 위해 상기 싱크 펄스의 앞과 뒤에 위치하는(또는 삽입하는) 비트를 말한다.
상기 보호 비트는 상기 싱크 펄스의 앞과 뒤에 모두 삽입되는 것이 바람직할 수 있으나, 경우에 따라 상기 싱크 펄스의 앞 또는 뒤 중 적어도 어느 하나에 위치될 수도 있다.
만약, 신호 프래임에 상기 보호 비트가 포함되지 않는다면, 상기 싱크 펄스 바로 전에 데이터 ‘1’(low-high chip 구성)에 해당하는 pulse가 오게 되는 경우, 가시광 수신 장치는 신호 프래임에서 데이터 ‘1’ 값과 싱크 펄스를 구분하지 못할 수 있다.
마찬가지로, 상기 싱크 펄스 바로 다음에 데이터 ‘0’(high-low chip 구성)에 해당하는 pulse가 오게 되는 경우, 상기 가시광 수신 장치는 상기 싱크 펄스와 데이터 ‘0’ 값을 구분하지 못할 수 있다.
따라서, 상기 싱크 펄스와 상기 싱크 펄스 앞(이전) 및 뒤(다음)에 바로 위치하는 데이터 비트와의 구분을 명확하게 하기 위해, 상기 싱크 펄스 앞 및 뒤에 각각 데이터 ‘0’ 및 데이터 ‘1’에 해당하는 1 비트 크기의 보호 비트를 삽입한다.
상기 보호 비트의 크기는 1비트일 수도 있고, 2비트, 3비트 등 다양한 크기로 설정될 수도 있다.
여기서, 1 비트의 데이터 값(‘0’ 또는 ‘1’)은 10개의 high 및/또는 low의 chip으로 구성된다.
상기 low 또는 high의 chip의 개수는 디밍에 따라 그 수가 달라질 수 있다.
즉, 디밍에 따른 1 비트의 데이터 값의 chip 구성은 아래와 같을 수 있다. 다만, 이는 일 예에 불과할 뿐 다른 구성을 가지는 것도 가능하다.
(1)디밍 30% : 1110000000 또는 0000000111
(2)디밍 40% : 1111000000 또는 0000001111
(3)디밍 50% : 1111100000 또는 0000011111
(4)디밍 60% : 1111110000 또는 0000111111
(5)디밍 70% : 1111111000 또는 0001111111
(6)디밍 80% : 1111111100 또는 0011111111
상기 (1) 내지 (6)에서 ‘1’ 또는 ‘0’의 값은 하나의 chip에 해당하는 값이며, ‘1’은 high chip 값을, ‘0’은 low chip 값을 나타낼 수 있다.
상기 (1) 내지 (6)에서와 같이, 왼쪽에 high pulse를 가지면 데이터 ‘0’ 값을 나타내고, 오른쪽에 high pulse를 가지면 데이터 ‘1’ 값을 나타낼 수 있다.
일 예로, 디밍 30%에서(상기 (1)의 경우) ‘1110000000’에 해당하는 값은 데이터 ‘0’ 값을 나타내며, ‘0000000111’에 해당하는 값은 데이터 ‘1’ 값을 나타낸다.
데이터 값이 high-low로 구성되어 있을 때, pulse 당 가장 많은 high chip를 가질 수 있게 된다. 다만, 데이터 값이 high-low로 구성되어 있더라도 싱크 펄스(Sync. Pulse)가 가지는 chip의 개수보다는 항상 작게 된다.
그 이유는 싱크 펄스는 거리의 영향으로 인해 low chip 값(‘0’)이 뭉개져서 20개의 chip이 모두 high chip을 가지기 때문이다.
다만, 상기 싱크 펄스의 20개의 high chip 값의 최대 진폭은 보호 비트나 데이터 비트를 구성하는 high chip 값의 진폭보다 다소 줄어든 상태의 high chip값으로 보여진다.
다음, 데이터 비트(Data Bit, 430)는 실제적으로 데이터가 전송되는 부분을 나타내며, 하나의 신호 프래임에서 데이터 비트의 크기는 8 bit로 설정될 수 있다.
또 다른 일 예로서, 가시광 송신 장치에서 신호 전송이 RGB 방식 등을 통해 이루어지는 경우, 하나의 신호 프래임에서 데이터 비트 크기는 8 bit 보다 더 크게 설정될 수도 있다.
데이터 디코딩 방법
이하에서, 도 4의 신호 프래임 구조 및 롤링 셔터 효과를 이용한 가시광 통신 시스템에서 신호 수신 방법 즉, 데이터 디코딩 방법에 대해 구체적으로 살펴보기로 한다.
도 5는 본 명세서에서 제안하는 데이터 디코딩 방법의 일 예를 나타낸 순서도이다.
즉, 도 5는 가시광 수신 장치에서 롤링 셔터의 영상 촬영 장치를 이용하여 영상을 촬영하고, 롤링 셔터 효과를 통해 획득한 신호 프래임을 통해 데이터를 디코딩하는 방법을 제공한다.
상기 영상 촬영 장치는 롤링 셔터를 구비하는 카메라, 캠코더, 스마트폰, TV 등 영상을 촬영할 수 있는 모든 종류의 디바이스들일 수 있다.
먼저, 가시광 수신 장치는 롤링 셔터 방식의 영상 촬영 장치를 통해 영상을 촬영한다(S510).
여기서, 영상을 촬영한다 함은 영상을 획득하고, 획득된 영상과 관련된 정보들을 획득하는 것을 포함하는 개념일 수 있다.
상기 영상 촬영 장치는 롤링 셔터를 구비하며, 상기 촬영되는 영상은 롤링 셔터 효과를 통해 얻어지는 영상에 해당한다.
또한, 상기 가시광 수신 장치는 상기 영상 촬영 장치의 ISO(International Organization for Standardization) 감도 조절을 통해 상기 촬영되는 영상에 대한 롤링 셔터 효과(Rolling shutter effect)를 더욱 강조할 수 있다.
또한, 상기 가시광 수신 장치는 상기 영상 촬영 장치의 줌(Zoom) 기능을 통해 원거리에서 롤링 셔터 효과(rolling shutter effect)를 관찰할 수 있게 된다.
즉, 가시광 수신 장치는 롤링 셔터 효과를 통해 검은색 및/또는 하얀색으로 이루어지는 바코드 형태의 데이터 송신 영역 즉, 가시광 송신 장치에서 빛의 깜박거림으로 신호를 전송하는 신호 프래임을 획득할 수 있게 된다.
이후, 상기 가시광 수신 장치는 상기 촬영되는 영상에서 데이터 송신 영역을 검출한다(S520).
상기 데이터 송신 영역은 가시광 신호가 송신되는 즉, 신호 프래임을 나타낸다.
이처럼, 전체 영상 중에서 데이터 송신 영역만을 검출하는 이유는 상기 영상 촬영 장치를 통해 촬영되는 영상(또는 화면 또는 프래임)에서 가시광 신호가 전송되는 영역은 전체 영상에 비해 상대적으로 적기 때문이다.
따라서, 촬영되는 전체 영상에 대해 데이터 디코딩을 수행하는 것은 연산량 및 데이터 처리 속도 측면에서 비효율적이며, 주변 간섭 배경(클러터)에 의한 불필요한 데이터 디코딩 오류를 야기할 수 있다.
따라서, 상기 가시광 수신 장치는 촬영되는 영상에서 가시광 신호가 송신되는 영역(또는 픽셀(pixel))만을 검출하게 된다.
도 6a는 촬영된 전체 영상을, 도 6b는 촬영된 전체 영상 중 데이터 송신 영역만을 검출한 화면을 나타낸다.
이후, 상기 가시광 수신 장치는 촬영 영상의 회전 등으로 인해 검출되는 데이터 송신 영역에 대한 보정(또는 보상)이 필요한 경우, 수평 모폴로지(Horizontal Mopology) 절차를 수행한다(S530).
여기서, 수평 모폴로지(Horizontal Mopology) 절차란 영상 내에 존재하는 측정 객체의 형태를 변형시키는 용도로 사용되고 있는 영상처리 기법을 말한다.
촬영 영상에서 데이터 송신 영역 즉, 광원(또는 조명 또는 신호 프래임)이 회전되어 있는 경우, 상기 광원의 위치 외에 다른 위치에 빛의 반사 또는 번짐 등이 생기더라도 high영역과 같은 줄에서만 잡음이 발생하는 것이 일반적이다.
따라서, 상기 가시광 수신 장치는 롤링 셔터의 진행 방향(예: y축 방향)을 고려하여 상기 데이터 송신 영역에서 Y축의 y값들에 대해 각각 high 또는 low 값을 결정하기 위한 수평 모폴로지 절차를 수행한다.
구체적으로, 상기 수평 모폴로지 절차는 동일한 y축 상에 있는 어느 하나의 픽셀(pixel) 값이 high 값을 가지는 경우, 상기 high 픽셀 값을 포함하는 y축의 모든 픽셀 값들은 high 값을 가진다고 결정하는 방법을 말한다.
이를 통해, 상기 가시광 수신 장치는 영상을 통해 획득된 신호 프래임에서의 high pulse 및 low pulse에 대한 구분을 명확하게 할 수 있어, 결과적으로 데이터 디코딩에 대한 정확도를 높일 수 있게 된다.
도 7a는 수평 모폴로지 절차 수행 전의 데이터 송신 영역을 나타내며, 도 7b는 수평 모폴로지 절차 이후 high 또는 low 값이 명확하게 구분된 데이터 송신 영역 즉, 신호 프래임을 나타낸다.
여기서, 상기 수평 모폴로지 절차를 통한 데이터 송신 영역의 회전으로 인한 보정 가능 범위는 -60도 ~ +60도일 수 있다.
상기 각도는 Y축과 데이터 송신 영역이 이루는 각을 의미한다.
즉, 데이터 송신 영역의 회전이 -60도 ~ +60도를 벗어나는 경우, 가시광 수신 장치는 수평 모폴로지 절차를 통해 회전에 대한 보정을 수행하는 것이 불가능할 수 있다.
도 8a는 데이터 송신 영역의 회전 각도가 41도인 경우를 나타내며, 도 8b는 데이터 송신 영역의 회전 각도가 72도인 경우를 나타낸다.
또한, 도 8c는 도 8a의 수평 모폴로지 수행 후의 결과를 나타내며, 도 8d는 도 8b의 수평 모폴로지 수행 후의 결과를 나타낸다.
도 8a 및 도 8b의 데이터 송신 영역은 수평 모폴로지를 통해 도 8c 및 도 8d에 도시된 바와 같이 수신 영상이 보정되므로, 데이터 송신 영역의 회전 각도가 일정 각도 이상(60도 이상)까지의 값을 가질 때, 상기 데이터 송신 영역의 데이터(1 format)를 완벽히 복원할 수 있게 된다.
즉, 도 8b에 도시된 바와 같이, 데이터 송신 영역의 회전 각도가 60도를 넘어가는 경우, 신호 프래임에서의 high pulse 또는 low pulse 구분이 어려워지는 것을 볼 수 있다.
상기 수평 모폴로지 절차의 가능 범위에 해당하는 -60도 ~ +60도의 값은 신호 프래임에 존재하는 싱크 펄스의 개수를 통해 산출될 수도 있다.
도 8a에 도시된 바와 같이, 신호 프래임에서 싱크 펄스(Sync. Pulse)가 최소 2개 이상 검출되어야 가시광 수신 장치에서 데이터 디코딩이 가능할 수 있다.
따라서, 상기 -60도 ~ +60도의 값은 촬영 영상의 회전 등이 있더라도 구별 가능한 싱크 펄스의 개수가 2개 이상일 때의 회전 각도를 말한다.
여기서, 상기 싱크 펄스는 가장 넓은 high pulse 폭을 가지는 신호로, 도 8a의 800에 해당된다.
즉, 상기 가시광 수신 장치는 신호 프래임 획득 후, 수평 모폴로지 절차의 수행 여부에 대해 검출되는 싱크 펄스의 개수를 확인하여 결정할 수 있다.
따라서, 회전 등으로 인해 데이터 송신 영역의 보정이 가능한 범위 즉, 수평 모폴로지 절차의 가능 범위는 신호 프래임에서 구분 가능한 싱크 펄스의 개수가 최소 2개 이상 존재할 수 있는 회전 각도의 범위를 말할 수 있다.
이후, 상기 가시광 수신 장치는 롤링 셔터 효과를 통해 획득한 신호 프래임에 대해 low pulse 및 high pulse를 좀 더 명확하게 구분하기 위해 프로젝션(Projection) 절차를 수행할 수 있다(S540).
구체적으로, 상기 프로젝션 절차는 신호 프래임의 펄스 값들을 임계값(Y축 값)과 비교한 후, 임계값보다 작은 값은 low 값으로 설정하고, 임계값보다 큰 값은 high 값으로 설정하는 것을 말한다.
상기 프로젝션 절차에서 사용되는 임계값은 아래 2 가지 방법을 통해 결정될 수 있다.
첫 번째는 이동 평균 필터(Moving average filter)를 사용하여 임계값을 계속 변화시킴으로써 임계값을 결정하는 방법이다.
다음, 두 번째는 신호 프래임(Frame) 내의 값들을 고려하여 하나의 값으로 고정하여 임계값을 사용하는 방법이다.
이후, 상기 가시광 수신 장치는 롤링 셔터 효과를 통해 획득된 신호 프래임의 디코딩을 위해 상기 신호 프래임 내 high pulse 및 low pulse 각각에 대한 pulse 폭을 측정한다(S550).
상기 high pulse 폭 및 low pulse 폭을 측정하고 나서, 상기 가시광 수신 장치는 신호 프래임에서 기준 high pulse 및 기준 low pulse를 결정한다(S551).
그리고, 상기 가시광 수신 장치는 상기 결정된 기준 high pulse 및 기준 low pulse의 chip size를 각각 측정한다(S552).
여기서, 기준 low pulse chip size 및 기준 high pulse chip size를 측정하는 이유는 신호 프래임의 high pulse 및 low pulse에서의 1개의 chip이 차지하는 기준 pixel수를 측정하여 신호 프래임 내 pulse를 통해 전송되는 데이터를 디코딩하기 위함이다.
먼저, 가시광 수신 장치가 기준 high pulse 및 기준 low pulse를 결정하는 방법에 대해 살펴본다.
가시광 수신 장치는 신호 프래임에서 싱크 펄스를 제외하고 가장 큰 high pulse를 가지는 pulse를 기준 high pulse로 결정한다.
즉, 신호 프래임에서 2 번째로 큰 high pulse가 기준 high pulse에 해당한다.
또한, 가시광 수신 장치는 신호 프래임에서 가장 큰 low pulse를 가지는 pulse를 기준 low pulse로 결정한다.
다음으로, 기준 high pulse의 1 high chip 크기 및 기준 low pulse의 1 low chip 크기를 구하는 방법에 대해 디밍 70%인 경우를 예로 들어 살펴보기로 한다.
디밍 70%인 경우, high pulse 는 (ⅰ) pulse 중간에 14개의 high chip으로 구성되거나 또는 (ⅱ) 7개의 high chip으로 구성되는 경우만 존재할 수 있다.
상기 14개의 high chip으로 구성되는 경우는 데이터 ‘1’ 값과 데이터 ‘0’ 값이 연속해서 오는 경우 즉, 데이터 ‘10’ 값을 가지는 경우이다.
데이터 ‘10’ 값은 20개의 chip으로 구성되며, ‘00011111111111111000’로 표현된다. 즉, pulse 중간에 14개의 high chip을 가짐을 알 수 있다.
또한, 신호 프래임에서 low pulse는 (ⅰ) 중간에 6개의 low chip 또는 (ⅱ) 3개의 low chip으로 구성되는 경우만 존재할 수 있다.
상기 6개의 low chip으로 구성되는 경우는 데이터 ‘0’ 값과 데이터 ‘1’ 값이 연속해서 오는 경우 즉, 데이터 ‘01’ 값을 가지는 경우이다.
데이터 ‘0’ 값은 ‘1111111000’의 chip 구성을 가지며, 데이터 ‘1’ 값은 ‘0001111111’의 chip 구성을 가진다.
따라서, 데이터 ‘01’ 값이 오는 경우, 이의 chip 구성은 ‘11111110000001111111’로 표현된다.
기준 high pulse에서 1 chip의 크기는 아래 수학식 1과 같이 구할 수 있다.
여기서, n는 high pulse에서 가질 수 있는 최대 high chip의 개수를 나타내며, n 값은 디밍에 따라 값이 다르다.
일 예로, 디밍이 70%일 때, n=14를 가진다.
따라서, n값은 아래 수학식 2를 통해 산출될 수 있다.
즉, 디밍 70%인 경우, n = 20*70/100=14 값을 가지는 것을 알 수 있다.
기준 low pulse에서 1 chip의 크기는 아래 수학식 3을 통해 구할 수 있다.
여기서, m은 low pulse에서 가질 수 있는 최대 low chip의 개수를 나타내며, m 값은 디밍에 따라 값이 다르다.
일 예로, 디밍이 70%일 때, m은 6 값을 가진다.
여기서, m은 아래 수학식 4와 같이 정의될 수 있다.
즉, 디밍 70%인 경우, m = 20-(20*70/100)=6 값을 가지는 것을 알 수 있다.
살핀 것처럼, 신호 프래임에서 high pulse의 1 chip size와 low pulse의 1 chip size를 기준으로 신호 프래임에서의 모든 pulse에 대하여 pulse 당 몇 개의 chip로 구성되어 있는지를 판별할 수 있게 된다.
이를 통해, 가시광 수신 장치는 디밍 정보 및 pulse의 chip size 정보를 확인함으로써 촬영된 영상을 통해 획득한 신호 프래임의 데이터 비트에 대한 디코딩을 수행할 수 있게 된다.
이후, 상기 가시광 수신 장치는 신호 프래임에서 싱크 펄스를 검출하여 가시광 송신 장치와 데이터 송수신을 위한 동기를 맞춘다(S560).
앞서 살핀 바와 같이, 상기 싱크 펄스는 신호 프래임에서 가장 넓은 high pulse 폭을 가지는 pulse 신호이며, 수신단에서, 상기 싱크 펄스는 20개의 high chip으로 구성되는 것처럼 보인다.
상기 싱크 펄스의 앞 및 뒤에는 신호 프래임에서 싱크 펄스와 데이터 비트와의 구별을 명확하게 하기 위한 보호 비트(guard bit)가 삽입되는 것을 살펴보았다.
이후, 상기 가시광 수신 장치는 싱크 펄스를 통해 동기 맞춘 후, 신호 프래임을 통해 전송되는 데이터 비트에 대한 디코딩을 수행한다(S570).
상기 신호 프래임은 70% 디밍의 경우를 가정할 때 데이터 비트, 보호 비트 ‘0’(‘1111111000’), 싱크 펄스, 보호 비트 ‘1’(‘0001111111’), 데이터 비트 순서의 구조를 가지며, 상기 가시광 수신 장치는 보호 비트 다음에 오는 데이터 비트를 디코딩하여 원하는 데이터를 획득할 수 있게 된다.
예를 들어, 디밍 50%인 경우, 신호 프래임에서 데이터 비트를 디코딩하는 방법에 대해 살펴본다.
디밍 50%인 경우, 데이터 ‘1’ 값은 ‘0000011111’로, 데이터 ‘0’ 값은 ‘1111100000’으로 표현될 수 있다.
즉, 싱크 펄스 다음에 ‘0000011111’의 chip 구성을 가지는 pulse가 오면 데이터 ‘1’ 값으로 디코딩하며, 싱크 펄스 다음에 ‘1111100000’의 chip 구성을 가지는 pulse가 오면 데이터 ‘0’ 값으로 디코딩한다.
앞서 살펴본, 가시광 통신 시스템에서 데이터를 수신하기 위한 방법에 대해 정리하기로 한다.
가시광 통신 시스템에서 데이터를 수신하기 위한 방법은, (1) 광원을 포함하는 영상을 롤링 셔터(Rolling Shutter) 방식을 이용하여 촬영하는 단계; (2) 상기 촬영된 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 단계; 및 (3) 상기 신호 프래임을 통해 전송되는 데이터에 대한 디코딩(decoding)을 수행하는 단계를 포함하여 이루어지되, 상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 상기 싱크 펄스와 데이터 비트를 구분하기 위한 보호 비트(guard bit) 또는 데이터가 전송되는 데이터 비트(data bit) 중 적어도 하나를 포함하는 것을 특징으로 한다.
상기 보호 비트는 상기 싱크 펄스 바로 이전 또는 바로 다음 중 적어도 어느 하나의 부분에 위치하는 것을 특징으로 한다.
또한, 상기 싱크 펄스는 20개의 high 및/또는 low chip들로 구성되며, 상기 싱크 펄스의 chip 구성은 디밍에 따라 달라지는 것을 특징으로 한다.
또한, 상기 싱크 펄스의 바로 이전에 위치하는 보호 비트는 데이터 비트 ‘0’ 값에 해당하며, 상기 싱크 펄스의 바로 다음에 위치하는 보호 비트는 데이터 비트 ‘1’ 값에 해당하는 것을 특징으로 한다.
또한, 가시광 통신 시스템에서 데이터를 수신하기 위한 방법에서는 상기 (1) 내지 (3)의 과정에 (4) 상기 검출되는 신호 프래임이 롤링 셔터 진행 방향과 일정 각도 기울어진 경우, 상기 신호 프래임의 pulse들에 대해 각각 상기 롤링 셔터 진행 방향 축으로의 low 값 또는 high 값을 결정하는 단계; 및 (5) 상기 결정된 low 값 또는 high 값을 임계값과 비교하여 상기 신호 프래임의 pulse들에 대해 low pulse 또는 high pulse로 구분하는 단계를 더 포함하여 이루어질 수 있다.
그리고, 상기 (1) 내지 (5)의 과정에 (6) 상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하는 단계; (7) 상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하는 단계; 및 (8) 상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하는 단계를 더 포함하여 이루어질 수 있다.
상기 기준 high pulse는 싱크 펄스를 제외한 가장 큰 high pulse를 가지는 pulse이며, 상기 기준 low pulse는 가장 큰 low pulse를 가지는 pulse인 것을 특징으로 한다.
또한, 상기 보호 비트는 1 bit이며, 상기 데이터 비트는 8 bit인 것을 특징으로 한다.
도 9는 본 명세서에서 제안하는 방법들이 적용될 수 있는 가시광 수신 장치의 내부 블록도의 일 예를 나타낸다.
도 9를 참조하면, 가시광 수신 장치(200)는 영상 촬영 장치(210), 신호 프래임 검출부(220), 디코더(230) 및 제어부(240)를 포함할 수 있다.
영상 촬영 장치(210)는 롤링 셔터(Rolling Shutter) 방식을 이용하여 광원을 포함하는 영상을 촬영한다.
신호 프래임 검출부(220)는 상기 영상 촬영 장치를 통해 촬영되는 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출한다.
디코더(230)는 상기 신호 프래임을 통해 전송되는 데이터에 대한 디코딩(decoding)을 수행한다.
또한, 상기 디코더는 상기 보호 비트를 포함하여 상기 싱크 펄스 다음에 오는 pulse들을 2개의 pulse씩 구분하며, 상기 구분된 2 개의 pulse 중 마지막 pulse의 크기가 1개의 pulse 크기보다 큰지 또는 작은지를 확인한다.
제어부(240)는 상기 영상 촬영 장치, 상기 신호 프래임 검출부 및 상기 디코더와 기능적으로 연결되어 앞서 살핀 도 1 내지 도 8에서 제안되는 기능, 과정 및/또는 방법을 구현한다. 상기 제어부는 프로세서, CPU 등으로 표현될 수 있다.
상기 제어부는 상기 신호 프래임 검출부를 통해 검출되는 신호 프래임이 롤링 셔터 진행 방향과 일정 각도 기울어진 경우, 상기 신호 프래임의 pulse들에 대해 각각 상기 롤링 셔터 진행 방향 축으로의 low 값 또는 high 값을 결정하며, 상기 결정된 low 값 또는 high 값을 임계값과 비교하여 상기 신호 프래임의 pulse들에 대해 low pulse 또는 high pulse로 구분하도록 제어한다.
또한, 상기 제어부는 상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하며, 상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하며, 상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하도록 제어한다.
본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음), 예컨대, 충전 및 결재 프로그램 및 플랫폼들은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
또한, 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.
또한, 개별적인 실시 형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
또한, 본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
100: 가시광 송신 장치 220: 신호 프래임 검출부
200: 가시광 수신 장치 230: 디코더
210: 영상 촬영 장치 240: 제어부
200: 가시광 수신 장치 230: 디코더
210: 영상 촬영 장치 240: 제어부
Claims (11)
- 가시광 통신 시스템에서 데이터를 수신하기 위한 방법에 있어서,
광원을 포함하는 영상을 롤링 셔터(Rolling Shutter) 방식을 이용하여 촬영하는 단계;
상기 촬영된 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 단계;
상기 검출된 신호 프래임의 보정을 위한 수평 모폴로지(Horizontal Mopology)를 수행하는 단계; 및
상기 신호 프래임을 통해 전송되는 데이터를 디코딩(decoding) 하는 단계를 포함하되,
상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 데이터 비트(data bit) 또는 상기 싱크 펄스와 상기 데이터 비트를 구분하기 위한 보호 비트(guard bit) 중 적어도 하나를 포함하며,
상기 수평 모폴로지를 수행하는 단계는,
상기 검출된 신호 프래임의 기울어진 각도가 롤링 셔터 진행 방향을 기준으로 일정 범위 내에 있는지 확인하는 단계;
상기 일정 범위 내에 있는 경우, 상기 신호 프래임에 포함되는 펄스(pulse)들 각각에 대해 high 값 또는 low 값을 결정하는 단계; 및
상기 결정된 high 값 또는 low 값을 임계값과 비교하여 상기 신호 프래임의 pulse들 각각에 대해 high pulse 또는 low pulse로 결정하는 단계를 포함하는 것을 특징으로 하는 방법. - 제 1항에 있어서,
상기 보호 비트는 상기 싱크 펄스 바로 이전 또는 바로 다음 중 적어도 어느 하나의 부분에 위치하는 것을 특징으로 하는 방법. - 삭제
- 제 1항에 있어서,
상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하는 단계;
상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하는 단계; 및
상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하는 단계를 더 포함하는 것을 특징으로 하는 방법. - 가시광 수신 장치에 있어서,
롤링 셔터(Rolling Shutter) 방식을 이용하여 광원을 포함하는 영상을 촬영하는 영상 촬영 장치;
상기 영상 촬영 장치를 통해 촬영되는 영상에서 롤링 셔터 효과(Rolling Shutter Effect)에 의해 생성되는 신호 프래임을 검출하는 신호 프래임 검출부;
상기 신호 프래임을 통해 전송되는 데이터를 디코딩(decoding) 하는 디코더(decoder); 및
상기 영상 촬영 장치, 상기 신호 프래임 검출부 및 상기 디코더와 기능적으로 연결되는 제어부를 더 포함하며, 상기 제어부는,
상기 검출된 신호 프래임의 보정을 위한 수평 모폴로지(Horizontal Mopology)를 수행하도록 제어하며,
상기 신호 프래임은 동기를 맞추기 위한 싱크 펄스(sync. pulse), 데이터 비트(data bit) 또는 상기 싱크 펄스와 상기 데이터 비트를 구분하기 위한 보호 비트(guard bit) 중 적어도 하나를 포함하며,
상기 제어부는,
상기 검출된 신호 프래임의 기울어진 각도가 롤링 셔터 진행 방향을 기준으로 일정 범위 내에 있는지 확인하며;
상기 일정 범위 내에 있는 경우, 상기 신호 프래임에 포함되는 펄스(pulse)들 각각에 대해 high 값 또는 low 값을 결정하며; 및
상기 결정된 high 값 또는 low 값을 임계값과 비교하여 상기 신호 프래임의 pulse들 각각에 대해 high pulse 또는 low pulse로 결정하여 상기 수평 모폴로지를 수행하도록 제어하는 것을 특징으로 하는 가시광 수신 장치. - 삭제
- 제 5항에 있어서, 상기 제어부는,
상기 신호 프래임의 low pulse 폭 및 high pulse 폭을 측정하며,
상기 측정된 low pulse 폭 및 high pulse 폭을 이용하여 기준 high pulse 및 기준 low pulse를 결정하며,
상기 결정된 기준 high pulse의 1 chip 크기 및 상기 결정된 기준 low pulse의 1 chip 크기를 산출하도록 제어하는 것을 특징으로 하는 가시광 수신 장치. - 제 1항에 있어서,
상기 결정된 high 값이 상기 임계값보다 큰 경우, 상기 high 값을 high pulse로 결정하며,
상기 결정된 low 값이 상기 임계값보다 작은 경우, 상기 low 값을 low pulse로 결정하는 것을 특징으로 하는 방법. - 제 1항에 있어서,
상기 롤링 셔터 진행 방향의 축에서 동일한 축 상에 존재하는 픽셀 값은 동일한 high 값 또는 동일한 low 값을 가지는 것을 특징으로 하는 방법. - 제 1항에 있어서,
상기 일정 범위 내에 있는지 확인하는 단계는,
상기 검출된 신호 프래임에 포함되는 상기 싱크 펄스의 개수를 확인하는 단계; 및
상기 싱크 펄스의 개수가 일정 값 이상인 경우, 상기 검출된 신호 프래임의 기울어진 각도가 롤링 셔터 진행 방향을 기준으로 일정 범위 내에 있다고 판단하는 것을 특징으로 하는 방법. - 제 10항에 있어서,
상기 일정 값은 2개인 것을 특징으로 하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140188617A KR101617105B1 (ko) | 2014-12-24 | 2014-12-24 | 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140188617A KR101617105B1 (ko) | 2014-12-24 | 2014-12-24 | 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101617105B1 true KR101617105B1 (ko) | 2016-05-02 |
Family
ID=56021726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140188617A KR101617105B1 (ko) | 2014-12-24 | 2014-12-24 | 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101617105B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102324908B1 (ko) * | 2021-03-18 | 2021-11-10 | 국민대학교산학협력단 | 움직임을 반영하여 m-fsk 변조 신호를 복조하는 occ 신호 수신 장치 및 방법 |
-
2014
- 2014-12-24 KR KR1020140188617A patent/KR101617105B1/ko active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102324908B1 (ko) * | 2021-03-18 | 2021-11-10 | 국민대학교산학협력단 | 움직임을 반영하여 m-fsk 변조 신호를 복조하는 occ 신호 수신 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101568943B1 (ko) | 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 | |
EP2805439B1 (en) | Shared secret arrangements and optical data transfer | |
US9847976B2 (en) | Shared secret arrangements and optical data transfer | |
CN107683403B (zh) | 距离图像获取装置以及距离图像获取方法 | |
CN109327626B (zh) | 图像采集方法、装置、电子设备和计算机可读存储介质 | |
KR101706849B1 (ko) | 가시광 통신 시스템을 이용한 데이터 송수신 방법 및 장치 | |
KR102345777B1 (ko) | 광학 카메라 통신(occ) 기반 차량 위치 판단 방법 및 장치 | |
Schmid et al. | Using smartphones as continuous receivers in a visible light communication system | |
CN110121031A (zh) | 图像采集方法和装置、电子设备、计算机可读存储介质 | |
CN106888355A (zh) | 比特率控制器和用于限制输出比特率的方法 | |
US20180006724A1 (en) | Multi-transmitter vlc positioning system for rolling-shutter receivers | |
CN109697422B (zh) | 光学动作捕捉方法及光学动作捕捉相机 | |
US20190280770A1 (en) | Method and apparatus for free-space optical transmission | |
KR101617105B1 (ko) | 가시광 통신 시스템에서 데이터 송수신 방법 및 장치 | |
US10628951B2 (en) | Distance measurement system applicable to different reflecting surfaces and computer system | |
TWI620420B (zh) | 可見光通訊系統及方法 | |
CN107682692B (zh) | 光成像通信的自适应检测系统及方法 | |
WO2020107152A1 (en) | Method, system, and computer-readable medium for image sensor communication using different sending data sequence rate and receiving frame rate | |
KR101795055B1 (ko) | 이미지 인식률을 높이기 위한 이미지 인식 장치 및 방법 | |
KR101809031B1 (ko) | 복합화재 검지 영상 처리 장치 및 영상 처리 방법 | |
Li et al. | Digital image processing in led visible light communications using mobile phone camera | |
Kim et al. | Transition-based data decoding for optical camera communications using a rolling shutter camera | |
JP3933453B2 (ja) | 画像処理装置及び移動体監視装置 | |
KR101642602B1 (ko) | 아날로그 또는 디지털 cctv 영상을 이용한 소프트웨어 방식의 주차 검지 시스템 및 방법 | |
Marcu et al. | Flicker free VLC system with enhanced transmitter and low frame rate camera |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190416 Year of fee payment: 4 |