KR20200055596A - 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법 - Google Patents

차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법 Download PDF

Info

Publication number
KR20200055596A
KR20200055596A KR1020180139410A KR20180139410A KR20200055596A KR 20200055596 A KR20200055596 A KR 20200055596A KR 1020180139410 A KR1020180139410 A KR 1020180139410A KR 20180139410 A KR20180139410 A KR 20180139410A KR 20200055596 A KR20200055596 A KR 20200055596A
Authority
KR
South Korea
Prior art keywords
image
vehicle
packing
information
terminal device
Prior art date
Application number
KR1020180139410A
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 KR1020180139410A priority Critical patent/KR20200055596A/ko
Priority to PCT/KR2019/009507 priority patent/WO2020101146A1/ko
Priority to US17/292,843 priority patent/US20210397181A1/en
Publication of KR20200055596A publication Critical patent/KR20200055596A/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0038Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with simple or augmented images from one or more cameras located onboard the vehicle, e.g. tele-operation
    • 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/2365Multiplexing of several video streams
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • 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/214Specialised server platform, e.g. server located in an airplane, hotel, hospital
    • H04N21/2146Specialised server platform, e.g. server located in an airplane, hotel, hospital located in mass transportation means, e.g. aircraft, train or bus
    • 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/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/10Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of camera system used
    • B60R2300/105Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of camera system used using multiple cameras
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • B60R2300/303Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing using joined images, e.g. multiple camera images
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • B60R2300/306Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing using a re-scaling of images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Studio Devices (AREA)
  • Mechanical Engineering (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

복수의 입력 영상들을 획득하고, 패킹 구조에 기초하여 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성하고, 패킹 구조 정보 및 패킹 영상을 포함하는 비트스트림을 생성하고 전송하는 영상 전송 방법을 개시한다.

Description

차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법 {IMAGE TRANSMITTING METHOD OF TERMINAL DEVICE MOUNTED ON VEHICLE AND IMAGE RECEIVING METHOD OF REMOTE CONTROL DEVICE CONTROLLING VEHICLE}
복수의 영상들을 효율적으로 전송하는 방법 및 장치에 관한 것이다. 또한, 효율적으로 전송된 복수의 영상들을 수신하는 방법 및 장치에 관한 것이다.
통신 기술이 발전함에 따라 고속으로 대용량의 데이터 전송이 가능해지면서, 무선 통신 시스템에 의해 더 다양한 서비스를 제공할 수 있게 되었다. 예를 들어, 자율 주행 시스템은, 복수의 카메라들을 탑재한 자동차가 획득한 영상들에 기초하여 자동차를 자동으로 제어할 수 있다. 또는, 자동차가 주변의 다른 자동차에서 획득한 영상들을 수신함으로써 안전한 운행을 위한 정보로 이용할 수 있다. 또는, 자동차가 획득한 영상들에 기초하여 원격으로 자동차를 제어할 수 있다.
개시된 실시 예들은 제한된 자원을 이용하여 복수의 영상들을 효율적으로 전송하고 수신할 수 있도록 하기 위한 것이다.
본 개시의 일 실시예의 일 측면에 따르면, 차량에 탑재되는 단말 장치가 상기 차량의 주행을 제어하는 원격 제어 장치에게 영상을 전송하는 방법은, 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 상기 원격 제어 장치에게 전송하는 단계; 상기 차량의 주행 상태에 기초하여 패킹 구조를 결정하는 단계; 상기 패킹 구조에 기초하여 상기 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성하는 단계; 및 상기 패킹 영상을 포함하는 비트스트림을 전송하는 단계를 포함할 수 있다.
본 개시의 일 실시예의 일 측면에 따르면, 차량의 주행을 제어하는 원격 제어 장치와 통신하는 상기 차량에 탑재되는 단말 장치는, 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 상기 원격 제어 장치에게 전송하는, 통신부; 및 상기 차량의 주행 상태에 기초하여 패킹 구조를 결정하고, 상기 패킹 구조에 기초하여 상기 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성하는, 적어도 하나의 프로세서를 포함하고, 상기 통신부는, 상기 패킹 영상을 포함하는 비트스트림을 전송하는 것을 특징으로 할 수 있다.
본 개시의 일 실시예의 일 측면에 따르면, 차량의 주행을 제어하는 원격 제어 장치가 상기 차량에 탑재되는 단말 장치로부터 영상을 수신하는 방법은, 상기 단말 장치로부터 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신하는 단계; 상기 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송하는 단계; 비트 스트림을 수신하는 단계; 상기 비트스트림으로부터 패킹 영상을 획득하는 단계; 상기 패킹 구조 정보에 기초하여 상기 패킹 영상으로부터 복수의 출력 영상들을 획득하는 단계; 및 상기 복수의 출력 영상들을 출력하는 단계를 포함할 수 있다.
본 개시의 일 실시예의 일 측면에 따르면, 차량에 탑재되는 단말 장치와 통신하는 상기 차량의 주행을 제어하는 원격 제어 장치는, 상기 단말 장치로부터 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신하고, 상기 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송하고, 비트 스트림을 수신하는, 통신부; 및 상기 비트스트림으로부터 패킹 영상을 획득하고, 상기 패킹 구조 정보에 기초하여 상기 패킹 영상으로부터 복수의 출력 영상들을 획득하고, 상기 복수의 출력 영상들을 출력하는, 적어도 하나의 프로세서를 포함할 수 있다.
개시된 실시예들에 따르면, 영상 통신 시스템은, 입력 영상들의 개수에 관계없이 입력 영상들을 하나의 패킹 영상 내에 패킹하여 전송 및 수신할 수 있게 됨으로써, 사용자가 전달받는 정보의 양을 극대화할 수 있다.
도 1a는 일 실시 예에 따라 원격으로 제어되는 자율 주행 시스템을 설명하는 도면이다.
도 1b는 일 실시 예에 따른 호스트 차량이 일반 운행 모드, 자율 주행 모드 및 원격 제어 모드 중 하나의 운행 모드로 주행하는 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 영상 통신 시스템을 나타내는 도면이다.
도 3은 일 실시예에 따른 영상 통신 시스템이 영상 전송 조건을 교섭하는 과정을 도시한다.
도 4는 일 실시예에 따른 영상 통신 시스템의 전체 프로토콜 구조의 예를 도시한다.
도 5는 일 실시 예에 따른 단말 장치가 네트워크의 상황에 따라 비트레이트를 조절하여 영상을 전송하는 방법의 흐름도이다.
도 6은 일 실시 예에 따른 영상 통신 시스템이 영상 전송 조건을 교섭하는 예를 도시한다.
도 7 내지 10은 일 실시 예에 따른 단말 장치가 원격 제어 장치에게 전송하는 차량 크기 정보, 카메라 위치 정보 및 카메라 방향 정보를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 단말 장치의 구조를 도시한다.
도 12는 일 실시예에 따른 패킹부의 구조를 도시한다.
도 13 내지 도 16은 일 실시예에 따라 패킹 영상과 함께 전달되는 패킹 구조 정보의 예를 도시한다.
도 17은 일 실시예에 따른 부호화부의 구조를 도시한다.
도 18은 일 실시예에 따른 영상 전송 방법을 나타내는 흐름도이다.
도 19는 일 실시예에 따른 영상 통신 시스템이 영상을 송수신하는 방법을 나타내는 신호 흐름도이다.
도 20은 일 실시예에 따른 원격 제어 장치의 구조를 도시한다.
도 21은 일 실시예에 따른 복호화부의 구조를 도시한다.
도 22는 일 실시예에 따른 디패킹부의 구조를 도시한다.
도 23은 일 실시예에 따른 영상 수신 방법을 나타내는 흐름도이다.
도 24는 일 실시예에 따른 영상 통신 시스템이 영상을 송수신하는 방법을 나타내는 신호 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 개시의 실시예를 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 또한, 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
본 명세서에서 “영상”이란, 카메라 또는 센서에서 캡쳐되어 전송되는 정지 영상, 동영상, 비디오 프레임, 및/또는 비디오 스트림을 모두 포함할 수 있다.
본 명세서 전반에 걸쳐 사용되는 "영상"이라는 용어는 "영상"이라는 용어 자체뿐만 아니라, “픽쳐”, “프레임”, “필드” 또는 “슬라이스”등 관련 분야에서 알려질 수 있는 비디오 이미지 정보의 다양한 형태들을 설명하기 위한 포괄적인 용어로서 사용된다. 예를 들어, “영상”은 비디오 스트림을 구성하는 복수의 픽쳐들 또는 복수의 프레임들 중 하나를 의미할 수도 있고, 복수의 픽쳐들 또는 복수의 프레임들을 포함하는 비디오 스트림 전체를 의미할 수도 있다.
본 명세서 전반에 걸쳐 사용되는 "프로젝티드 영상"이라는 용어는, “패킹 영상”을 구성하는 복수의 영상들 각각을 의미할 수 있다. 프로젝티드 영상은, 입력 영상을 패킹 영상 상에 투사(project)함으로써 생성된 패킹 영상의 부분 영상일 수 있다. “프로젝티드 영상”은, “서브 영상” 또는 “부분 영상”이라고도 서술할 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1a는 일 실시 예에 따라 원격으로 제어되는 자율 주행 시스템을 설명하는 도면이다.
자율 주행 시스템은, 호스트 차량의 자율 주행과 관련된 정보 또는 명령을 수집, 처리, 가공, 저장 또는 전송하거나, 자율 주행을 제어할 수 있다. 호스트 차량이란, 자율 주행 시스템을 지원하고, 자율 주행 시스템에 의해 제어되는 차량을 의미할 수 있다. 자율 주행 시스템은 호스트 차량에 탑재되는 단말 장치 또는 호스트 차량의 외부에서 호스트 차량을 원격으로 제어하는 단말 장치를 포함할 수 있다. 자율 주행 시스템은 호스트 차량에 탑재된 복수의 카메라들로부터 수집한 정보를 이용하여, 주변 상황을 감지하고 호스트 차량을 제어할 수 있다. 또는, 호스트 차량에서 수집된 정보는, 다른 차량의 자율 주행 시스템에게 전송됨으로써, 다른 차량의 안전한 자율 주행을 도모할 수 있다.
상황에 따라서 호스트 차량은, 호스트 차량 내의 운전자에 의해 일반 주행을 하거나, 자율 주행을 하거나, 원격으로 외부 장치, 외부 서버 또는 사람에 의해 제어될 수 있다.
예를 들어, 자율 주행 시스템에 있어서, 위급 상황의 경우 자율 주행을 중단하고 원격으로 외부 장치, 외부 서버 또는 사람에 의해 제어되는 것이 요구될 수 있다. 도 1a에 도시된 바와 같이, 호스트 차량(10)이 원격으로 사용자(20)에 의해 제어되기 위해서는, 호스트 차량(10)의 주변 상황에 대한 영상들(30)을 사용자(20)에게 전달하여야 한다.
도 1b에 도시된 바와 같이, 일 실시 예에 따른 호스트 차량은, 자율 주행 모드 뿐만 아니라 일반 운행 모드 또는 원격 제어 모드로 운행될 수 있다. 예를 들어, 호스트 차량은 일반 운행 모드(또는, 운전자 모드)에서 작동할 수 있다. 일반 운행 모드는, 운전자가 주도하여 차량을 운전하는 모드이다. 첨단 운전자 지원 시스템(Advanced Driver Assistance System)이 일반 운행 모드에 포함될 수 있다. 또한, 호스트 차량은 자율 주행 모드에서 작동할 수 있다. 자율 주행 모드는, 사람의 개입 없이 차량이 자율적으로 주행하는 모드이다. 또한, 호스트 차량은, 원격 제어 모드(또는, 원격 모드)에서 작동할 수 있다. 원격 제어 모드는, 원격으로 장치 또는 사람이 차량의 주행을 제어하는 모드이다.
일 실시 예에 따른 호스트 차량은, 운행 모드를 확인함으로써, 일반 운행 모드, 자율 주행 모드 및 원격 제어 모드 중에서 어떠한 운행 모드로 작동할지를 결정할 수 있다. 만약, 운행 모드가 변경되는 경우, 호스트 차량은 변경된 운행 모드로 운행할 수 있다. 예를 들어, 호스트 차량은, 주행하는 도중에, 현재 운행 모드를 유지할 수 없는 긴급 상황이 발생했는지 여부를 판단하고, 긴급 상황이 발생 하면, 차량이 자체적으로 또는 네트워크와의 교신을 통해 운행 모드를 변경할 수 있다.
일 실시 예에 따른 호스트 차량이 원격 제어 모드에서 운행하기 위해서는, 호스트 차량 주변의 영상 및 데이터가 원격 제어 장치에게 전송되어야 한다. 호스트 차량(또는, 호스트 차량에 탑재된 단말 장치)은 영상 및 데이터를 전송하기 위한 세션을 형성하기 위해 네트워크와 교섭할 수 있다.
호스트 차량(10)이 원격으로 안전하게 제어되기 위해서는, 호스트 차량(10) 주위의 모든 방향의 영상들이 지연없이 전송되어야 한다. 다만, 제한된 주파수 자원으로 인해 모든 방향의 영상들을 개별적으로 지연없이 전송하는 것은 어려울 수 있으므로, 복수의 영상들을 하나의 영상으로 패킹하여 효율적으로 전송하는 기술이 이용될 수 있다.
도 2는 일 실시예에 따른 영상 통신 시스템을 나타내는 도면들이다.
일 실시예에 따른 영상 통신 시스템은 차량에 탑재되는 단말 장치(1100) 및 차량의 주행을 제어하는 원격 제어 장치(2000)를 포함할 수 있다. 단말 장치(1100) 및 원격 제어 장치(2000)는, 네트워크를 통해 연결되고, 영상 및 신호를 송수신할 수 있다. 차량에 탑재된 복수의 카메라들에서 캡쳐된 차량의 주변 영상들은 네트워크를 통해 전송되어 원격 제어 장치(2000)의 디스플레이 상에 디스플레이 됨으로써, 차량의 원격 제어에 이용될 수 있다.
일 실시예에 따른 단말 장치(1100) 및 원격 제어 장치(2000)는 다양한 통신 방식을 이용하여 연결될 수 있다. 예를 들어, 4G(또는, LTE(Long Term Evolution)), 5G(또는, NR(New Radio)), Wifi 등 다양한 통신 방식을 이용하여 연결될 수 있다.
일 실시예에 따른 영상 통신 시스템이 LTE 통신 방식을 사용할 때는, 단말 장치(1100) 및 원격 제어 장치(2000)는 LTE 기지국 eNodeB와 연결될 수 있고, eNodeB는 LTE 통신 시스템의 코어 네트워크인 EPC(Evolved Packet Core)와 연결될 수 있다. 일 실시예에 따른 영상 통신 시스템이 차세대 이동 통신 방식(New Radio: NR)을 사용할 때는 차세대 기지국 gNodeB와 연결될 수 있고, gNodeB는 NR 통신 시스템의 코어 네트워크인 5G Core(5Generation Core)와 연결될 수 있다.
또한, 단말 장치(1100) 및 원격 제어 장치(2000)는 무선 액세스 네트워크(Radio Access Network: RAN)를 통해 연결될 수 있으며, 무선 액세스 네트워크를 통해 데이터 네트워크(예를 들면, 데이터 서버, 인터넷 등)에 접속할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 복수 개의 픽쳐 소스(Picture Source)들로부터 복수 개의 픽쳐들을 획득하고, 프로세서(1110)에서 획득된 픽쳐들을 처리할 수 있다. 예를 들어, 복수 개의 픽쳐 소스들은 복수 개의 카메라들을 의미할 수 있다. 또는, 도면에 도시되지 않았으나 단말 장치(1100)는, 픽쳐 소스부를 포함하고, 픽쳐 소스부에서 복수의 픽쳐들을 획득하거나 생성할 수 있다. 본 명세서에서 "픽쳐"는, 비디오 스트림을 구성하는 한장의 프레임을 의미할 수도 있고, 연속적인 프레임들로 구성되는 비디오 스트림 전체를 의미할 수도 있다.
예를 들어, 차량의 원격 제어 시스템에 있어서, 픽쳐 소스는, 차량에 탑재된 각종 센서(예를 들어, 레이더(Radar) 센서, 라이더(Lidar) 센서 등), 차량 주변의 정보를 캡쳐하는 차량에 탑재된 카메라, 주변의 다른 차량, 네트워크를 통해 연결된 다른 전자 장치, 서버 등을 포함할 수 있다. 이하에서는, 설명의 편의를 위해 픽쳐 소스가 카메라인 경우를 예로 들어 설명한다. 그러나, 실시예는 픽쳐 소스가 카메라인 경우에 제한되지 않으며, 이하의 설명은 다양한 픽쳐 소스로부터 픽쳐를 수신하는 경우에도 적용될 수 있다.
단말 장치(1100)는, 복수 개의 픽쳐들로부터 하나의 패킹 영상(Packed Picture)를 생성할 수 있다. 단말 장치(1100)는, 패킹 영상을 비디오 코덱을 이용하여 압축함으로써 부호화된 패킹 영상을 생성하고, 부호화된 패킹 영상을 포함하는 IP 스트림을 출력할 수 있다. 단말 장치(1100)는, 부호화된 패킹 영상과 함께 패킹 구조 정보를 포함하는 IP 스트림을 출력할 수 있다. 패킹 구조 정보는 패킹 영상을 서술하는 서술 메타 데이터(description metadata)에 포함될 수 있다. 단말 장치(1100)의 통신부(1130)는, 부호화된 패킹 영상을 포함하는 IP 스트림을 네트워크를 통해 원격 제어 장치(2000)에게 전송할 수 있다. 예를 들어, 통신부(1130)는, IP 스트림을 RAN을 통해 전송하는 RAN 전송부(Ran Transmitter)일 수 있다.
단말 장치(1100)는, 패킹 영상의 전송에 필요한 비디오 파라미터(예를 들어, 코덱, 데이터 레이트, 해상도, 패킹 구조, 차량의 크기 정보, 카메라의 위치 정보, 카메라의 방향 정보 등)를 수신 시스템과 교섭하여 결정하고, 교섭 결과에 따라 패킹 영상을 전송할 수 있다. 도 1에서는, 원격 제어 장치(2000)가 수신 시스템의 예로서 도시되었다.
일 실시예에 따른 원격 제어 장치(2000)는, 네트워크를 통해 수신된 데이터를 처리하여 IP 스트림을 출력하는 통신부(2010)를 포함할 수 있다. 예를 들어, 통신부(2010)는, RAN을 통해 수신된 IP 스트림을 출력하는 RAN 수신부(Ran Receiver)일 수 있다.
일 실시예에 따른 원격 제어 장치(2000)의 프로세서(2030)는, 통신부(2010)로부터 수신된 IP 스트림을 처리하고, 복수 개의 픽쳐들을 출력할 수 있다. 일 실시예에 따른 원격 제어 장치(2000)는, IP 스트림에 포함된 부호화된 패킹 영상을 복호화하여 복호화된 패킹 영상을 획득하고, 복호화된 패킹 영상에 대한 디패킹(depacking)을 수행함으로써 복수 개의 픽쳐들을 출력할 수 있다. 원격 제어 장치(2000)는, IP 스트림에 포함된 패킹 구조 정보를 이용하여 복호화된 패킹 영상에 대한 디패킹을 수행함으로써 복수 개의 픽쳐들을 출력할 수 있다. 도 1에는 도시되지 않았지만, 원격 제어 장치(2000)는, 복수 개의 픽쳐들을 디스플레이하는 적어도 하나의 디스플레이부를 포함할 수 있다.
원격 제어 장치(2000)는, 패킹 영상의 수신에 필요한 비디오 파라미터(예를 들어, 코덱, 데이터 레이트, 해상도, 패킹 구조, 차량의 크기 정보, 카메라의 위치 정보, 카메라의 방향 정보 등)를 전송 시스템과 교섭하여 결정하고, 교섭 결과에 따라 패킹 영상을 수신할 수 있다. 도 1에서는, 단말 장치(1100)가 전송 시스템의 예로서 도시되었다.
본 발명의 일 실시예에 따른 단말 장치(1100)는 전송할 패킹 영상의 비디오 파라미터에 관한 정보들을 원격 제어 장치(2000)와의 교섭을 통해 확정하고, 이를 기반으로 패킹 영상을 전송할 수 있다. 교섭 이후 패킹 영상을 전송하는 중에 비디오 파라미터에 관한 업데이트가 필요한 경우(예를 들어, 데이터 레이트가 변경되는 경우, 패킹 구조가 변경되는 경우 등), 단말 장치(1100)는, 새로운 교섭을 통해, 관련 정보를 업데이트 하고, 업데이트된 정보에 따라 패킹 영상을 전송할 수 있다.
일 실시예에 따른 영상 통신 시스템은, 유저 플레인(user plane)을 통해 패킹 영상을 송수신하고, 컨트롤 플레인(control plane)을 통해 SDP(Session Description Protocol)와 같은 제어 데이터를 전달 또는 처리할 수 있다. 유저 플레인이란, 네트워크에서 사용자 데이터(예를 들면 패킷, 플로우, 트래픽 등)를 전달 및 처리하는 구성을 의미할 수 있다. 컨트롤 플레인이란, 제어 데이터를 전달 및 처리하는 구성을 의미할 수 있다. 단말 장치(1100) 및 원격 제어 장치(2000) 간의 교섭은, SDP와 같은 컨트롤 플레인이나 유저 플레인 내의 RTCP(Real-time Transport Protocol Control Protocol)와 같은 컨트롤 채널을 통해 이루어 질 수 있다.
일 실시예에 따른 영상 통신 시스템이 영상을 송수신하기에 앞서 영상 전송 조건을 교섭하는 구체적인 방법은 도 3을 참조하여 설명한다.
도 3은 일 실시예에 따른 영상 통신 시스템이 영상 전송 조건을 교섭하는 과정을 도시한다.
일 실시예에 따른 원격 제어 장치(2000)는, 예를 들어, 영상 압축기의 종류, 비트 레이트, 영상의 크기, 및 영상의 해상도 등의 정보를 SDP(Session Description Protocol) offer에 서술하고, SDP offer를 SIP(Session Initiation Protocol) message에 탑재할 수 있다. 원격 제어 장치(2000)는, SIP message를 단말 장치(1100)에게 전송함으로써, 상호 교섭을 시작할 수 있다(S310). SDP offer는 패킹 영상의 전송에 필요한 비디오 파라미터에 대한 정보를 포함할 수 있다.
도 3에 도시된 바와 같이, 일 실시예에 따르면, SDP offer를 포함한 SIP message는 LTE, 5G 등의 품질이 보장되는 네트워크의 경우 IP Multimedia Subsystem (IMS)를 경유하여 상대 단말에게 전달될 수 있다.
일 실시예에 따른 단말 장치(1100)는, SDP offer를 수신하고, 탑재하고 있는 영상 압축기들의 영상 처리 능력과 서비스 정책, 비트 레이트, 영상의 크기, 및 영사의 해상도 등을 검토하여 SDP answer를 작성하여 원격 제어 장치(2000)에게 전송할 수 있다(S320). SDP answer는 패킹 영상의 전송에 필요한 비디오 파라미터에 대한 정보를 포함할 수 있다.
SDP answer를 수신한 원격 제어 장치(2000)가 SDP answer를 수용하는 경우, 상호 확인 과정을 거쳐, 단말 장치(1100)에서 압축된 영상이 단말 장치(1100)로부터 원격 제어 장치(2000)로 전달될 수 있다. 예를 들어, 자동차는, 원격 제어 시스템과의 상호 교섭을 수행하고, 교섭 결과에 기초하여 패킹된 영상을 원격 제어 시스템에게 전달할 수 있다. 원격 제어 시스템은 자동차로부터 수신된 패킹 영상에 기초하여, 자동차를 제어하기 위한 제어 신호를 전송할 수 있다.
일 실시예에 따른 원격 제어 장치(2000)는, 영상의 압축 및/또는 전송 조건이 변경될 필요가 있을 때에는, SIP UPDATE 메시지를 단말 장치(1100)에게 전송함으로써, 다시 상호 교섭을 수행할 수 있다(S330).
일 실시예에 따른 단말 장치(1100)는, SDP UPDATE 메시지를 수신하고, 탑재하고 있는 영상 압축기들의 영상 처리 능력과 서비스 정책, 비트 레이트, 영상 크기 등을 검토하여 두번째 SDP answer를 작성하여 원격 제어 장치(2000)에게 전송할 수 있다(S340).
두번째 SDP answer를 수신한 원격 제어 장치(2000)가 두번째 SDP answer를 수용할 경우, Ack 메시지를 단말 장치(1100)에게 전송할 수 있다(S350). 상호 확인 과정을 거쳐, 단말 장치(1100)에서 압축된 영상이 단말 장치(1100)로부터 원격 제어 장치(2000)로 전달될 수 있다(S360).
그러나, 실시예는 도 3에 도시된 바에 제한되지 않으며, 단말 장치(1100)가 원격 제어 장치(2000)에게 먼저 SDP offer를 전송함으로써, 전송 조건 교섭이 시작될 수 있다.
도 4는 일 실시예에 따른 영상 통신 시스템의 전체 프로토콜 구조의 예를 도시한다. 도 4는 일 실시예에 따른 영상 통신 시스템의 전체 프로토콜 구조의 예를 도시한다. 예를 들어, 도 4에서 단말 장치(1100)는, 자율 주행 차량에 탑재된 전자 장치이고, 원격 제어 장치(2000)는 자율 주행 차량을 원격으로 제어하는 전자 장치일 수 있다.
5G 통신의 체계(framework)가 일 실시예에 따른 영상 통신 시스템에도 이용될 수 있다. 도 4에 도시되는 NR Modem은 5G 통신 방식을 지원할 수 있다. Packet Data Convergence Protocol (PDCP), Radio Link Control (RLC), Media Access Control (MAC), Physical Layer (PHY) 등은 단말과 기지국의 NR 모뎀을 구성하는 통신 프로토콜들이다. UPF, DN 등은 코어 (Core) 네트워크를 구성하는 노드 (Node) 들이다.
도 4에서 단말 장치(1100)의 통신부(1130)가 패킹 영상을 전송하는 프로세싱 순서는, SDAP → PDCP → RLC→ MAC→ PHY 의 순서이며, 원격 제어 장치(2000)의 통신부(2010)가 패킹 영상을 수신하는 프로세싱 순서는 그 역순이다.
IMS(IP Multimedia Subsystem)는, 패킹 구조 정보를 포함하는 영상 전송 조건을 교섭하기 위한 절차들을 포함할 수 있다. 일 실시예에 따른 영상 통신 시스템은, 패킹 구조 정보를 IMS를 통해 교섭할 수 있다. 일 실시예에 따른 영상 통신 시스템은, 본격적인 영상 통신을 수행하기 전에(예를 들어, 원격 제어 장치가 차량으로부터 패킹 영상을 수신하고, 수신된 패킹 영상에 기초하여 원격으로 차량을 제어하기 전에) IMS를 통해 전송 경로의 QoS를 설정하고, 필요한 무선 자원을 확보할 수 있다.
도로 상황 파악을 위한 비디오 및 오디오는 uplink를 통해 단말 장치(1100)로부터 원격 제어 장치(2000)에게 전송되고, 차량 제어를 위한 컨트롤 데이터는 downlink를 통해 원격 제어 장치(2000)로부터 단말 장치(1100)에게 전송될 수 있다. 요구되는 지연 속도(latency)와 무결성(integrity)에 따라 컨트롤 데이터는 TCP, (RTP/)UDP을 통해 전송될 수 있다.
도 4에 도시된 바와 같이 5G에서는 4G 방식과 비교하여, UP 프로토콜 스택 최상단에 SDAP(Service Data Adaptation Protocol)이 추가되며, Serving Gateway (S-GW), Packet Data Network Gateway (P-GW) 등의 노드들이 UPF, DN으로 대체될 수 있다. IP backbone과 원격 제어 장치(2000) 사이의 구간은 패킷 손실율(packet loss rate)은 0으로, 딜레이(delay)는 매우 작은 고정된 값으로 간주될 수 있다.
차량의 주변 영상들을 송수신하는 영상 통신 시스템에 있어서, 차량 주변의 풍경이 복잡하거나 움직임이 많은 경우, 압축되어 전송되는 영상의 품질이 하락할 수 있다. 품질이 하락된 영상을 수신하는 경우, 원격 제어 장치가 차량을 제어하는 데 어려움이 있다. 따라서, 차량에 탑재된 단말 장치는, 전송되는 영상의 SNR(Signal-to-Noise Ratio) 및/또는 PSNR(Peak Signal-to-Noise Ratio) 등의 품질 좌표를 계속적으로 점검함으로써, 영상의 품질이 목표 수준 이하로 하락하는 경우 네트워크에게 비트 레이트 증가를 요청하는 매커니즘이 필요하다.
도 5는 일 실시 예에 따른 단말 장치가 네트워크의 상황에 따라 비트레이트를 조절하여 영상을 전송하는 방법의 흐름도이다.
단계 S511에서 일 실시 예에 따른 단말 장치(1100)는, 단말 장치(1100)가 탑재된 차량이 원격 제어 장치(2000)에 의해 제어되는 원격 운전 모드에서 동작함을 확인할 수 있다.
단계 S513에서 일 실시 예에 따른 단말 장치(1100)는 패킹 영상을 전송하는 형식(format)을 원격 제어 장치(2000)와 교섭할 수 있다. 패킹 영상을 전송하는 형식과 관련된 정보는 메타 데이터에 포함될 수 있다. 단계 S515에서 일 실시 예에 따른 단말 장치(1100)는 목표 비트 레이트에 대한 정보를 요청하고 수신할 수 있다. 목표 비트 레이트란, 단말 장치(1100)가 원격 제어 장치(2000)에게 패킹 영상을 송신하는데 할당되는 최대 비트 레이트를 의미할 수 있다. 단계 S513 및 S515는, 컨트롤 플레인(control plane)의 SDP(Session Description Protocol)를 통해 데이터를 송수신하는 하나의 단계로 수행될 수 있다.
도 6은 일 실시 예에 따른 영상 통신 시스템이 영상 전송 조건을 교섭하는 예를 도시한다. 영상 통신 시스템이 영상 전송 조건을 교섭함에 있어서, 단말 장치(1100)와 원격 제어 장치(2000) 간에는 Session Initiation Protocol(SIP) 메시지가 교환될 수 있다. SIP 메시지 내부에서 미디어 관련 정보를 서술하는 프로토콜인 Session Description Protocol(SDP)를 이용하여 영상 전송 조건이 교섭될 수 있다.
도 6은 단말 장치(1100)와 원격 제어 장치(2000)가 주고받는 SDP 메시지의 예를 도시한다. 도 6의 SDP offer(610)를 참조하면, 원격 제어 장치(2000)는 4K로 압축한 패킹 영상을 20 Mbps로 송수신 가능함을 단말 장치(1100)에게 제안한다. SDP answer(630)를 참조하면, 단말 장치(1100)는, 패킹 영상을 15 Mbps 전송하겠다고 답할 수 있다.
SDP 메시지 내에는 a=subimage라는 특징(attribute)이 정의되고, 전체 프레임 내의 서브 프레임 들의 위치 및 해상도가 서술될 수 있다. fl은 차량의 전방 좌측(front-left) 영상, fr은 차량의 전방 우측(front-right) 영상, sl은 차량의 좌측(left-side) 영상, sr은 차량의 우측(right-side) 영상, cr은 차량의 중앙(center) 영상을 의미할 수 있다.
예를 들어, [fl, 11, 11, 1290, 730]은 촤량의 전방 좌측 영상의 해상도가 1280 ⅹ720임을 나타낸다. 도 6을 참조하면, 차량의 전방 좌측 영상(fl), 전방 우측 영상(fr)의 해상도는 1280 ⅹ720으로 교섭되고, 차량의 좌측 영상(sl), 차량의 우측 영상(sr), 차량의 중앙 영상(cr)의 해상도는 640 ⅹ 480으로 교섭된다.
다시 도 5로 돌아와서, 단계 S517에서 일 실시 예에 따른 단말 장치(1100)는 차량에 탑재된 복수의 카메라들 각각에게 입력되는 새로운 영상 프레임을 캡쳐할 수 있다. 단계 S519에서 일 실시 예에 따른 단말 장치(1100)는 패킹 영상의 전체 프레임 내에 각 카메라의 영상 프레임을 서브 프레임으로서 패킹함으로써 패킹 영상을 생성할 수 있다.
단계 S521에서 일 실시 예에 따른 단말 장치(1100)는, 각 카메라에서 캡쳐된 서브 프레임 내에서 차량의 본체에 해당하는 영역의 영상 정보를 단순화할 수 있다. 차량에 탑재된 카메라의 위치나 방향에 따라서, 카메라가 차량의 주변 환경과 함께 차량 본체의 일부를 캡쳐할 수 있다. 차량이 자율 주행 또는 원격 주행을 하는데 있어서, 차량 본체가 캡쳐된 영상은 주변 환경이 캡쳐된 영상에 비하여 상대적으로 덜 중요한 정보를 포함하고 있다. 그러므로, 일 실시 예에 따른 단말 장치(1100)는, 각 카메라에서 캡쳐된 서브 프레임 내에서 차량의 본체에 해당하는 영역의 영상 정보를 단순화할 수 있다.
단계 S523에서 일 실시 예에 따른 단말 장치(1100)는 패킹 영상의 전체 프레임을 비디오 인코더에서 인코딩 할 수 있다. 단계 S525에서 일 실시 예에 따른 단말 장치(1100)는 인코딩된 전체 프레임을 목표 비트 레이트로 압축할 수 있다. 단계 S527에서 일 실시 예에 따른 단말 장치(1100)는 압축된 프레임을 원격 제어 장치(2000)에게 전송할 수 있다.
단계 S529에서 일 실시 예에 따른 단말 장치(1100)는 단말 장치(1100)가 탑재된 차량이 원격 운전 모드에서 동작하는지 여부를 다시 한번 확인할 수 있다. 차량이 계속 원격 운전 모드에서 동작하는 경우, 단말 장치(1100)는 계속적으로 패킹 영상을 원격 제어 장치(2000)에게 전송해야 한다. 단계 S531에서 일 실시 예에 따른 단말 장치(1100)는, 단계 S525에서 압축된 프레임(b)과 압축되기 전의 프레임(a)을 비교함으로써, 각 서브 프레임의 품질을 계산할 수 있다. 단계 S533에서 일 실시 예에 따른 단말 장치(1100)는, 모든 서브 프레임이 목표 품질 이상의 품질을 갖는지 여부를 판단할 수 있다.
압축된 프레임 내에 포함되는 모든 서브 프레임이 목표 품질 이상의 품질을 갖는 경우, 단말 장치(1100)는, 단계 S517로 되돌아가 새로운 영상 프레임을 캡쳐할 수 있다. 압축된 프레임 내에 포함되는 적어도 하나의 서브 프레임이 목표 품질 이상의 품질을 갖지 않는 경우, 단계 S535에서 일 실시 예에 따른 단말 장치(1100)는, 단계 S527에서 압축된 프레임을 전송하기 위해 소요되는 현재 비트 레이트가 단계 S515에서 요청한 목표 비트레이트보다 큰지 여부를 판단할 수 있다.
단계 S537에서 일 실시 예에 따른 단말 장치(1100)는, 현재 비트레이트가 목표 비트레이트보다 큰 경우, 네트워크에게 비트 레이트를 높일 것을 요청할 수 있다. 예를 들어, 단말 장치(1100)는, 각 서브 프레임에 대해서 설정된 목표 비트 레이트의 증가를 요청하거나, 전체 프레임에 대해서 설정된 목표 비트 레이트의 증가를 요청할 수 있다. 서브 프레임은 프로젝티드 영상으로 지칭되고, 전체 프레임은 패킹 영상으로 지칭될 수 있다. 현재 비트 레이트가 목표 비트 레이트보다 크지 않은 경우, 단말 장치(1100)는, 단계 S517로 되돌아가 새로운 영상 프레임을 캡쳐 할 수 있다.
도 5에는, 단말 장치(1100)가 원격 제어 장치(2000)에게 비트 레이트의 증가를 요청하는 경우만이 도시되지만, 실시 예는 이에 제한되지 않는다. 예를 들어, 원격 제어 장치(200)가 단말 장치(1100)에게 전송하는 영상의 비트 레이트를 상향 조정할 것을 요청할 수 있다.
한편, 영상 전송 조건을 교섭함에 있어서, 일 실시 예에 따른 단말 장치(1100)는, 단말 장치(1100)가 탑재된 차량의 크기, 차량에 탑재된 카메라의 위치 정보, 및 카메라의 방향 정보 중 적어도 하나를 원격 제어 장치(2000)에게 전송할 수 있다.
도 7 내지 10은 일 실시 예에 따른 단말 장치가 원격 제어 장치에게 전송하는 차량 크기 정보, 카메라 위치 정보 및 카메라 방향 정보를 설명하기 위한 도면이다.
도 7의 직육면체 ABCDEFGH는 넓이 w, 길이 l, 높이 h를 갖는 차량을 나타낼 수 있다. 차량의 크기 정보는, 3 차원 공간 상의 좌표 값으로 표현되거나, 차량의 넓이 값, 길이 값 및 높이 값으로 표현될 수 있다. 예를 들어, 차량의 크기 정보는, 도 7의 점 A, B, C, D, E, F, G 및 H 중 적어도 하나의 점의 좌표값으로 표현될 수 있다. 또는, 차량의 크기 정보는, 차량의 넓이 값, 길이 값, 및 높이 값 중 적어도 하나를 포함하는 벡터로 표현될 수 있다. 도 7에서, 직사각형 CDHG는 차량의 앞면을 나타내고, 직사각형 ABFE는 차량의 뒷면을 나타낼 수 있다.
도 7에는 차량의 형태를 직육면체로 단순화 하여 차량의 크기 정보를 전송하는 경우를 예로 들어 도시하였다. 그러나 본 발명의 실시 예는 이에 제한되지 않으며, 다양한 형태의 차량의 크기 정보를, 3차원 공간 상의 여러 점들의 좌표 값들을 이용하여 표현할 수 있다.
또한, 일 실시 예에 따른 단말 장치(1100)는, 카메라의 위치를 도 8과 같이 좌표 값으로 나타내어, 원격 제어 장치(2000)에게 전송할 수 있다. i번째 카메라(Camer(i))의 위치는, 차량 상의 카메라의 상대적인 위치를 나타낼 수 있다. 단말 장치(1100)는, 차량의 크기에 기초하여 설정된 3차원 공간 내의 점(a, b, c)를 카메라 위치 정보로서 원격 제어 장치(2000)에게 전송할 수 있다.
또한, 일 실시 예에 따른 단말 장치(1100)는, 원격 제어 장치(2000)에게 카메라의 방향 정보를 전송할 수 있다. 카메라의 방향 정보는, 카메라의 위치에 기초한 벡터값으로 표현될 수 있다.
도 9 및 도 10에 도시된 바와 같이, 차량의 크기(예를 들어, 차량의 넓이, 길이, 높이) 정보로부터 생성된 3차원 공간은, Camera(i)의 위치(a, b, c)를 원점으로 하는 3차원 공간으로 선형 이동(Linearly Shift) 될 수 있다. 카메라의 방향 정보는, Camera(i)의 위치(a, b, c)를 원점으로 하는 3차원 공간 상에서 표현될 수 있다.
원격 제어 장치(2000)는 카메라의 방향을 변경하고자 하는 경우, 컨트롤 플레인(control plane)을 통한 교섭을 통해 방향 변경을 요청할 수 있다. 단말 장치(1100)는, 원격 제어 장치(2000)로부터 수신된 변경 요청에 기초하여 카메라의 방향을 수정하거나, 차량이 카메라의 방향을 수정하도록 제어할 수 있다. 단말 장치(1100)는, 방향이 수정된 카메라가 캡쳐한 영상을 전송할 수 있다.
아래의 [표 1]은, 영상 전송 조건 교섭에 이용되는 mV2X Control Plane Negotiation Info Syntax를 나타낸다. 일 실시 예에 따른 단말 장치(1100)는 Session Initiation Protocol(SIP) 메시지 내의 Session Description Protocol(SDP)을 통해 [표 1]에 포함되는 적어도 하나의 파라미터를 원격 제어 장치(2000)에게 전송할 수 있다.
mV2X Control Plane Negotiation Info Syntax
VINstring
VehicleSize
VehicleHeight
Position3D
CameraNumber
PackedPictureResolution
PackedPictureFrameRate

For (i=0; i<CameraNumber; i++) {
CameraLocation(i)
CameraLocationVirtualID(i)
CameraOrientation(i)
PictureResolution(i)
PictureFrameRate(i)
}
이하에서는 상기 [표 1]에 포함되는 각 syntax 요소의 시맨틱을 설명한다.
VINstring은, 법적 VIN (Vehicle Ident Number, 차량 식별 번호) 또는 더 짧은 값으로 차량의 ID를 제공하기 위해 1 ~ 17 OCTET 문자열로 구성되는 필드이다.
VehicleSize는, VehicleWidth (MSB 10 비트) 및 VehicleLength (LSB 14 비트)를 제공하는 3 바이트(24 비트)로 구성되는 필드이다. VehicleWidth와 VehicleLength의 정수 값은 각각 1cm 단위로 차량의 너비 (0 ~ 1023cm)와 길이 (0 ~ 16383cm)를 표시한다.
VehicleHeight는 차량의 높이를 제공하는 7 비트로 구성되는 필드이다. 이 필드의 정수 값(0 ~ 127)은 차량 높이를 5cm 단위로 표시해야 한다. 따라서 이 필드는 6.35 m까지의 범위를 나타낼 수 있다.
도 7에 도시된 바와 같이, 차량의 폭 w, 길이 l 및 높이 h에 기초하여 생성되는 직육면체의 점 E를 원점으로 하는 3차원 공간이 설정될 수 있다. 예를 들어, 점 E는, 차량의 왼쪽 끝, 뒤쪽 끝 및 아래쪽 끝에 대응하는 점 일 수 있다. 점 A는 (0, 0, h), 점 F는 (w, 0, 0), 점 H는 (0, ㅣ, 0)의 좌표값을 가지며, 도 7에서, 직사각형 CDHG 는 차량의 앞면을 나타내고, 직사각형 ABFE는 차량의 뒷면을 나타낼 수 있다.
한편, [표 1]의 Position3D는 교섭 정보가 전달 될 때 차량의 Latitude(위도)(처음 4 바이트), Longitude(경도)(중간 4 바이트) 및 Elevation(고도)(마지막 2 바이트)를 제공하는 10 바이트로 구성되는 필드이다.
Latitude(32 비트)는 차량의 지리적 위도를 나타낸다. 위도는, 32 비트 값으로서 1/10th 정수 마이크로 도(microdegrees)로 표현되며, 사용중인 수평 데이텀(horizontal datum)을 기준으로 플러스 마이너스 90도 범위 (즉, -900000000 ~ 900000001)를 제공한다. 값 900000001은 사용할 수 없을 때(unavailable) 사용되어야 한다. 이 필드의 MSB는 숫자의 부호를 나타내야 하고, MSB를 0으로 설정하는 것은 양수(즉, 플러스 값) 또는 양수 0에 대한 것이고, MSB를 1로 설정하는 것은 음수 또는 음수 0에 대한 것이다.
Longitude(32 비트)는 차량의 지리적인 경도를 나타내는 필드이다. 경도는 32 비트 값으로서 1/10th 정수 마이크로 도(microdegrees)로 표현되며, 사용중인 수평 데이텀을 기준으로 플러스 마이너스 180도 범위 (즉, -1799999999 ~ 1800000001)를 제공한다. 1800000001 값은 사용할 수 없을 때 사용되어야 한다. 이 필드의 MSB는 숫자의 부호를 나타내야 하고, MSB를 0으로 설정하는 것은 양수 (즉, 플러스 값) 또는 양수 0에 대한 것이고, MSB를 1로 설정하는 것은 음수 또는 음수 0에 대한 것이다.
Elevation(16 비트)은 기준 타원체(일반적으로, WSG-84)의 위 또는 아래의 차량의 지리적 위치를 나타내는 필드이다. 16 비트 수는 1 데시 미터의 분해능을 가지며 양의 값과 음의 값의 비대칭 범위를 나타낸다. 이 필드는 다음과 같이 인코딩될 수 있다.
범위 0x0000에서 0xEFFF(십진수 0에서 61439까지)는 0에서 +6143.9 미터까지의 고도(즉, 기준 타원체 위)를 나타내는 양수들이다. 범위 0xF001에서 0xFFFF까지의 범위는 -409.5 미터에서 -0.1 미터까지의 고도(즉, 기준 타원체 아래)를 나타내는 음수들이다. +6143.9 미터보다 높은 고도는 0xEFFF로 표시된다. -409.5 미터보다 낮은 고도는 0xF001로 표시된다. 만약, 송신 디바이스가 송신 디바이스의 고도를 모르는 경우, 고도 데이터 요소는 0xF000로 부호화되어야 한다.
예를 들어, 고도 0 미터는 0x0000으로 부호화되고, 고도 -0.1 미터는 0xFFFF로 부호화된다. 고도 +100.0 미터는 0x03E8로 부호화된다.
CameraNumber는 5 비트로 구성되며, 패킹 영상 내에 포함되는 프로젝티드 영상들의 최대 개수(1 ~ 32)를 제공하는 필드이다. 차량에 설치되고 패킹 영상을 생성하기 위해 이용되는 최대 카메라 수를 나타낼 수 있다. 패킹 영상 내의 프로젝티드 영상의 최대 개수가 N(1 to 32)개일 때, CameraNumber는 N-1 (0 to 31)로 설정되어야 한다.
PackedPictureResolution는 그림의 루마 너비(luma width)와 루마 높이(luma height)를 제공하는 4 바이트로 구성되는 필드이다. PackedPictureResolution 필드의 첫 번째 2 바이트는 패킹 영상의 루마 너비를 나타내며 마지막 2 바이트는 패킹 영상의 루마 높이를 나타낸다.
PackedPictureFrameRate는 패킹 영상의 프레임 레이트를 제공하는 8 바이트로 구성되는 필드이다. PackedPictureFrameRate 필드의 처음 4 바이트(PackedPictureNumUnitsInTick)는 클럭 틱 카운터의 하나의 증가분(하나의 클럭 틱(clock tick)이라고 함)에 해당하는 주파수 PackedPictureTimeScale Hz에서 작동하는 클럭의 시간 단위 수(the number of time units of a clock operating at the frequency PackedPictureTimeScale Hz)를 나타낸다. 값은 0보다 커야한다. 초 단위의 클럭 틱은 PackedPictureNumUnitsInTick을 PackedPictureTimeScale로 나눈 몫과 같다. 예를 들어, 비디오 신호의 패킹 영상 레이트(packe picture rate)가 25 Hz 일 때, PackedPictureTimeScale은 27 000 000이고 PackedPictureNumUnitsInTick은 1 080 000과 같을 수 있고, 따라서 클럭 틱은 0.04 초일 수있다.
PackedPictureFrameRate의 마지막 4 바이트 (PackedPictureTimeScale)는 1 초에 전달되는 시간 단위 수를 나타낸다. 예를 들어, 27 MHz 클럭을 사용하여 시간을 측정하는 시간 좌표계는 PackedPictureTimeScale이 27 000 000이다. PackedPictureTimeScale의 값은 0보다 커야 한다.
CameraLocation (i)는 차량의 폭, 길이 및 높이를 각각 x 축, y 축 및 z 축에 매핑하여 생성 된 3 차원 공간에서 카메라 (i)의 3D 위치를 제공하기 위해 31 비트로 구성되는 필드이다. 3D 위치는 3 차원 공간상의 x, y, z 성분으로 표현된다. CameraLocation (i) 필드는, LocationX (x 구성 요소, 처음 10 비트), LocationY (y 구성 요소, 중간 14 비트) 및 LocationZ (z 구성 요소, 마지막 7 비트)로 구성된다.
LocationX (처음 10 비트)는 카메라 (i)의 x 구성 요소 값을 3 차원 공간에 표시하고 1cm 단위로 0 ~ 1023cm의 범위를 제공한다.
LocationY (가운데 14 비트)는 카메라 (i)의 y 구성 요소 값을 3 차원 공간에 표시하고 1cm 단위로 0 ~ 16383cm의 범위를 제공한다.
Location Z (마지막 7 비트)는 카메라 (i)의 z 구성 요소의 값을 3 차원 공간에 표시하고 5cm 단위로 최대 65cm의 범위를 제공한다.
도 8을 참조하면, Camera(i)의 위치 CameraLocation (i)의 LocationX, LocationY, 및 LocationZ는 각각 a, b, 및 c를 나타낼 수 있다.
CameraLocationVirtualID (i)는 CameraLocation(i)에 대한 가상 ID를 제공하기 위해 5 비트로 구성되는 필드이다. CameraLocationVirtualID (i)는 i로 설정되어야 한다.
CameraOrientation (i)는 Camera (i)의 3 차원 뷰 방향의 x, y, z 구성 요소를 제공하기 위해 12 바이트로 구성되는 필드이다. Camera (i)의 3 차원 뷰 방향의 x, y, z 성분을 계산하기 위해 도 7에 표시된 3 차원 공간은 함수 F : (X, Y, Z) -> (x=X-LocationX, y=Y-LocationY, z=Z-LocationZ) 에 의해 Camera (i)의 뷰 방향에 대해 3 차원 공간으로 선형 이동된다. 선형 이동의 결과로 카메라 (i)의 위치가 3차원 공간 (x, y, z)의 원점이 된다. 예를 들어, 도 9에 도시된 바와 같이, Camera (i) = (a, b, c)인 경우, 3차원 공간이 함수 F : (X, Y, Z) -> (x=X-a, y=Y-b, z=Z-c)에 의해 선형 이동된다.
CameraOrientation (i)의 DirX (처음 4 바이트), DirY (중간 4 바이트) 및 DirZ (마지막 4 바이트)는 각각, (φ, θ)가 (0, 0) 인 구 위치(sphere location)에 대응하는 (x, y, z)가 (1, 0, 0)인 직교 좌표계에서 3 차원 뷰 방향 단위 벡터의 x, y 및 z 성분을 정의한다. 예를 들어, 카메라의 방향이 구면 좌표계에서 (1, θ, φ)로 표현되는 경우, 직교 좌표계에서 카메라 방향의 x, y, z 성분은 sinθcosφ, sinθsinφ, cosθ일 수 있다. DirX, DirY 또는 DirZ의 값은 1 to 65535 범위 내에 있어야하고, 여기서 1은 -1에 대응하고 32768은 0에 대응하고 65535는 +1에 대응한다.
DirX, DirY 및 DirZ 필드는 방위각 φ 및 고도
Figure pat00001
에 기초하여 계산 될 수 있다. 여기서, 뷰 방향은 구의 중심으로부터 구의 표면상의 위치를 지시하는 3 차원 벡터를 나타낸다.
예를 들어, 도 10에 도시된 바와 같이, 방위각 φd 및 고도 θd가 (135 °, 30 °)인 camera(i)의 뷰 방향의 x, y, z 성분은 각각 12702, 52834 및 49152와 동일하게 설정된다. DirX, DirY 및 DirZ는 방위각 φd 및 고도 θd에 기초하여 다음의 [수학식 1]에 따라 계산될 수 있다.
[수학식 1
Figure pat00002
PictureResolution (i)는 Camera (i)로부터 수신되는 영상의 루마 너비와 루마 높이를 제공하는 4 바이트로 구성되는 필드이다. 첫 번째 2 바이트는 Camera (i)로부터 수신되는 영상의 루마 너비를 나타내며 마지막 두 바이트는 Camera (i)로부터 수신되는 영상의 루마 높이를 나타냅니다.
PictureFrameRate (i)는 Camera (i)로부터 수신되는 영상의 프레임 레이트를 제공하는 8 바이트로 구성되는 필드이다.
PictureFrameRate(i)의 처음 4 바이트(PictureNumUnitsInTick (i))는 클럭 틱 카운터의 하나의 증가분 (하나의 클럭 틱(a clock tick)이라고 함)에 해당하는 주파수 PictureTimeScale (i) Hz에서 작동하는 클럭의 시간 단위 수(the number of time units of a clock operating at the frequency PictureTimeScale (i) Hz 를 나타낸다. 값은 0보다 커야한다. 초 단위의 클럭 틱은 PictureNumUnitsInTick (i)을 PictureTimeScale (i)로 나눈 몫과 같다.
PictureFrameRate(i)의 마지막 4 바이트 (PictureTimeScale (i))는 1 초에 전달되는 시간 단위 수를 나타냅니다. 예를 들어, 27MHz 클럭을 사용하여 시간을 측정하는 시간 좌표계는 27000 000의 PictureTimeScale (i)를 갖는다. PictureTimeScale (i)의 값은 0보다 커야한다.
상술한 바와 같이, 일 실시 예에 영상 통신 시스템은 컨트롤 플레인을 통해 차량의 크기, 카메라의 위치, 및 카메라의 방향, 패킹 영상에 포함되는 영상들의 해상도 한계값 등의 정보들을 교섭할 수 있다. 교섭 결과에 기초하여, 일 실시예에 따른 영상 통신 시스템은, 유저 플레인을 통해 복수의 입력 영상들이 조합된 패킹 영상을 송수신할 수 있다.
따라서, 개시된 실시예들에 따르면, 영상 통신 시스템은 입력 영상들의 개수에 관계없이 입력 영상들을 하나의 패킹 영상 내에 패킹하여 전송 및 수신할 수 있게 됨으로써, 사용자가 전달받는 정보의 양을 극대화할 수 있다. 패킹 없이 복수의 입력 영상들을 전송하기 위해서는, 하나의 비디오 인코더가 입력 영상들을 순차적으로 압축 및 전송하거나, 복수의 인코더들이 입력 영상들을 동시에 압축 및 전송해야 한다. 따라서, 단말 장치가 패킹 없이 복수의 입력 영상들을 전송하는 경우, 전송 시간 지연이 발생하거나 송수신기의 복잡도가 입력 영상들의 수 만큼 복잡해진다.
그러나, 개시된 실시예들에 따르면, 영상 통신 시스템은 복수의 입력 영상들의 개수에 관계없이, 송수신기의 복잡도가 간단하게 구현될 수 있다는 장점이 있다. 이하에서는, 개시된 실시예에 따른 영상 통신 시스템에 포함되는 단말 장치(1100)의 동작을 구체적으로 설명한다.
도 11은 일 실시예에 따라 차량에 탑재되는 단말 장치(1100)의 구조를 도시한다.
일 실시예에 따른 단말 장치(1100)는 복수의 입력 영상들을 획득하고 IP 스트림을 출력하는 프로세서(1110) 및 통신부(1130)를 포함할 수 있다.
일 실시예에 따른 프로세서(1110)는 단말 장치(1100)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(1110)는, 통신부(1130)를 제어할 수 있다. 도 11에는 단말 장치(1100)가 하나의 프로세서(1110)를 포함하는 것으로 도시되나, 실시예는 이에 제한되지 않으며, 단말 장치(1100)는 복수의 프로세서(1110)들을 포함할 수 있다. 또한, 프로세서(1110)는 통신부(1130)를 통해 원격 제어 장치(2000)의 프로세서와 영상 전송 조건을 교섭할 수 있다.
일 실시 예에 따른 통신부(1130)는 차량의 주행을 제어하는 원격 제어 장치(2000)와 데이터를 주고받을 수 있다. 일 실시 예에 따른 통신부(1130)는, 영상 전송 조건을 교섭함에 있어서, 단말 장치(1100)가 탑재된 차량의 크기, 차량에 탑재된 카메라의 위치 정보, 및 카메라의 방향 정보 중 적어도 하나를 원격 제어 장치(2000)에게 전송할 수 있다.
구체적으로, 통신부(1130)는, 차량에 탑재되는 복수의 카메라들의 위치 정보를 원격 제어 장치(2000)에게 전송할 수 있다. 카메라들의 위치 정보는, 차량의 크기에 기초하여 설정되는 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현될 수 있다. 또한, 통신부(1130)는, 복수의 카메라들의 위치 정보와 함께 차량의 크기 정보 및 복수의 카메라들의 방향 정보 중 적어도 하나를 전송할 수 있다.
일 실시 예에 따른 단말 장치(1100)는, 원격 제어 장치(2000)로부터 제어 신호를 수신하고, 수신된 제어 신호에 기초하여 복수의 카메라들 중 적어도 하나의 방향을 변경할 수 있다. 통신부(1130)는, 카메라의 방향이 변경되면, 변경된 방향 정보를 원격 제어 장치(2000)에게 전송할 수 있다.
일 실시예에 따른 프로세서(1110)는, 복수의 픽쳐 소스들로부터 복수의 입력 영상들을 획득하고, 패킹 구조에 기초하여 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 또는, 일 실시예에 따른 프로세서(1110)는, 외부로부터 수신된 데이터 또는 내부에 저장된 데이터로부터 복수의 입력 영상들을 생성할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 픽쳐 소스를 포함하고, 복수의 입력 영상들을 생성할 수 있다. 예를 들어, 자율 주행 시스템에 있어서, 일 실시예에 따른 단말 장치(1100)는, 차량에 탑재된 카메라에서 캡쳐된 영상을 수신하고 프로세서(1110)로 전달할 수 있다.
일 실시예에 따른 프로세서(1110)는, 패킹 구조 정보 및 패킹 영상을 포함하는 비트스트림을 생성할 수 있다. 도 4에 도시된 바와 같이, 일 실시예에 따른 프로세서(1110)는, 패킹부(1111) 및 부호화부(1113)를 포함할 수 있다. 도 4에 도시된 패킹부(1111) 및 부호화부(1113)는, 하드웨어적인 구성일 수도 있고, 프로세서(1110)에 의해 구현되는 기능 블록들일 수 있다. 따라서, 이하에서 서술하는 패킹부(1111) 및 부호화부(1113)의 동작은 프로세서(1110)에서 수행되는 것일 수 있다.
일 실시예에 따른 패킹부(1111)는, 복수의 입력 영상들을 획득하고, 패킹 구조에 기초하여 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 도 11에서는 N개의 입력 영상들을 수신하는 경우를 예로 들어 도시하였다.
일 실시예에 따른 패킹부(1111)는, 패킹 구조에 기초하여 복수의 입력 영상들 중 적어도 하나의 영상의 사이즈를 조절하거나 회전함으로써, 복수의 프로젝티드 영상들을 생성하고, 복수의 프로젝티드 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 패킹부(1111)는, 패킹 구조에 기초하여 복수의 프로젝티드 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 패킹부(1111)는, 패킹 구조에 기초하여 결정된 패킹 영상 내의 위치에 각 프로젝티드 영상을 배치함으로써 패킹 영상을 생성할 수 있다.
일 실시예에 따른 프로세서(1110)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정할 수 있다. 프로세서(1110)는, 통신부(1130)를 통해 원격 제어 장치(2000)로부터 차량의 주행을 제어하는 제어 신호를 수신할 수 있다. 프로세서(1110)는, 수신된 제어 신호에 기초하여 차량의 주행 상태를 결정할 수 있다. 또는, 프로세서(1110)는, 차량에 탑재된 센서로부터 수신된 신호에 기초하여 차량의 주행 상태를 결정할 수 있다. 또는, 일 실시예에 따른 프로세서(1110)는, 통신부(1130)를 통해 원격 제어 장치(2000)로부터 수신되는 패킹 구조 정보에 기초하여 패킹 구조를 결정할 수 있다.
예를 들어, 일 실시예에 따른 프로세서(1110)는 차량의 주행 방향에 따라 패킹 구조를 결정할 수 있다. 프로세서(1110)는, 패킹 영상 내에서, 차량의 주행 방향에 대응하는 영상이 다른 영상에 비해 크게 포함되도록(또는, 차량의 주행 방향에 대응하는 영상의 해상도가 다른 영상의 해상도에 비해 높도록) 패킹 구조를 결정할 수 있다. 예를 들어, 프로세서(1110)는, 차량이 전방으로 이동하는 경우, 차량의 전방 환경을 나타내는 영상이 다른 영상에 비해 크게 포함되도록 패킹 구조를 결정할 수 있다.
패킹부(1111)는 패킹 구조 정보를 생성할 수 있다. 일 실시예에 따른 패킹 구조 정보는, 복수의 입력 영상들을 촬영하는 장치에 대한 정보, 패킹 영상의 특성을 나타내는 정보, 및 패킹 영상을 구성하는 프로젝티드 영상의 특성을 나타내는 정보 중 적어도 하나를 포함할 수 있다. 일 실시예에 따른 패킹 영상을 구성하는 프로젝티드 영상의 특성을 나타내는 정보는, 패킹 영상을 구성하는 복수의 프로젝티드 영상들 중 하나의 프로젝티드 영상의 크기에 대한 정보, 패킹 영상 내에서 프로젝티드 영상이 배치되는 위치에 대한 정보, 및 프로젝티드 영상이 입력 영상이 회전된 영상인지 여부에 대한 정보 중 적어도 하나를 포함할 수 있다.
패킹부(1111)는 패킹 영상 및 패킹 구조 정보를 생성하고, 부호화부(1113)에게 출력할 수 있다.
일 실시예에 따른 부호화부(1113)는, 패킹 영상을 부호화할 수 있다. 부호화부(1113)는, 패킹 구조 정보 및 부호화된 패킹 영상을 포함하는 비트스트림을 생성할 수 있다. 예를 들어, 일 실시예에 따른 부호화부(1113)는, 패킹 구조 정보를 포함하는 SEI 메시지를 생성하고, 부호화된 패킹 영상 및 SEI 메시지를 포함하는 NAL UNITS으로 구성된 비트스트림을 생성할 수 있다. 부호화부(1113)는, 비트스트림을 포함하는 IP 스트림을 생성하고 출력할 수 있다.
일 실시예에 따른 통신부(1130)는, 비트스트림을 포함하는 IP 스트림을 전송할 수 있다. 통신부(1130)는, IP 스트림을 원격 제어 장치(2000)에게 전송할 수 있다. 일 실시예에 따른 통신부(1130)는 다양한 통신 방식을 지원할 수 있다. 예를 들어, 통신부(1130)는 4G(또는, LTE(Long Term Evolution)), 5G(또는, NR(New Radio)), Wifi 등 다양한 통신 방식을 지원할 수 있다. 통신부(1130)는 도 4에 도시된 과정을 거쳐 원격 제어 장치(2000)에게 IP 스트림을 전송할 수 있다.
도 12는 일 실시예에 따른 패킹부의 구조를 도시한다.
도 12에 도시된 바와 같이, 일 실시예에 따른 패킹부(1111)는, 복수의 카메라들로부터 복수의 입력 영상들을 입력 받아 패킹 영상과 패킹 구조 정보를 생성하고 출력할 수 있다. 일 실시예에 따른, 패킹부(1111)는, 프로젝티드 영상 생성부(1210), 패킹 영상 생성부(1230) 및 패킹 구조 정보 생성부(1250)를 포함할 수 있다.
일 실시예에 따른 프로젝티드 영상 생성부(1210)는, 패킹 구조 정보에 기초하여, 입력 영상들로부터 프로젝티드 영상들을 생성하여 출력할 수 있다. 프로젝티드 영상 생성부(1210)는, 패킹 구조에 기초하여 각 입력 영상의 사이즈를 조절하거나 회전함으로써, 복수의 프로젝티드 영상들을 생성할 수 있다.
일 실시예에 따른 패킹 영상 생성부(1230)는, 패킹 구조 정보에 기초하여 프로젝티드 영상들을 조합함으로써 패킹 영상을 생성하여 출력할 수 있다. 일 실시예에 따른 패킹 구조 정보 생성부(1250)는, 패킹 영상의 비디오 파라미터 등을 포함한 패킹 구조에 관한 정보를 생성할 수 있다.
이하에서는, 일 실시예에 따른 패킹 구조 정보 생성부(1250)가 생성하는 패킹 구조 정보에 관하여 구체적으로 설명한다.
nal_unit_type Name of nal_unit_type Content of NAL unit and RBSP syntax structure NAL unit type class
... ... ... ...
39
40
PREFIX_SEI_NUT
SUFFIX_SEI_NUT
Supplemental enhancement information
sei_rbsp()
non-VCL
[표 2]는 NAL unit type codes 및 NAL unit type classes를 나타낸다.
일 실시예에 따른 단말 장치(1100)는, 패킹 구조 정보를 포함하는 SEI 메시지를 생성하고, 부호화된 패킹 영상 및 SEI(Supplemental Enhancement Information) 메시지를 포함하는 NAL units으로 구성된 비트스트림을 생성할 수 있다. 패킹 구조 정보는, HEVC 규격에서 39번 또는 40번으로 정의된 타입의 non-VCL NAL unit 내에 포함될 수 있다. NAL은 네트워크 추상화 계층(Network Abstraction Layer)을 의미하고, NUT은 NAL Unit Type을 의미할 수 있다. RBSP는 Raw Byte Sequence Payload를 의미하고, 바이트 정렬(Byte aligned)되어 NAL unit으로 캡슐화되는 신택스를 의미한다. VCL은 Video Coding Layer를 의미한다.
sei_payload (payloadType, payloadSize) { Descriptor
if (nal_unit_type == PREFIX_SEI_NUT || SUFFIX_SEI_NUT)
...
if (payloadType == 135)
mv2x_packing_structure_info (payloadSize)
...
}
[표 3]은 일반적인 SEI 메시지의 신택스를 나타낸다.
일 실시예에 따른 원격 제어 장치(2000)는, nal_unit_type이 PREFIX_SEI_NUT 또는 SUFFIX_SEI_NUT인 경우, 패킹 구조 정보 mv2x_packing_structure_info(payloadSize)를 읽어들일 수 있다.
Descriptor
mv2x_packing_structure_info (payloadSize) {
vehicle_position_latitude
vehicle_position _longitude
vehicle_position_elevation
vehicle_transmission_state
number_of_pictures
packed_picture_capture_time_base
packed_picture_width
packed_picture_height
packed_picture_num_units_in_tick
packed_picture_time_scale
guard_band_flag
for (i=0; i< number_of_pictures; i++) {
camera_location_virtual_id(i)
picture_capture_time_offset(i)
projected_picture_width(i)
projected_picture_height(i)
projected_picture_num_units_in_tick(i)
projected_picture_time_scale(i)
projected_picture_location_top(i)
projected_picture_ location_left(i)
projected_picture_rotation (i)
if (guard_band_flag == 1) {
left_gb_width(i)
right_gb_width(i)
top_gb_height(i)
bottom_gb_height(i)
guard_band_type(i)
}
}
}

u(32)
u(32)
u(16)
u(3)
u(5)
u(32)
u(16)
u(16)
u(32)
u(32)
u(1)

u(5)
u(32)
u(16)
u(16)
u(32)
u(32)
u(16)
u(16)
u(2)

u(8)
u(8)
u(8)
u(8)
u(2)
[표 4]는 패킹 구조 정보를 포함하는 SEI 메시지의 신택스 구조 mV2X Packing Structure Info SEI message syntax 를 나타낸다. [표 4]에서 u(n) (n은 정수)은 비트스트림으로부터 n 비트를 읽어온 후 읽어온 비트열에서 첫번째 비트를 MSB로 간주하여 부호 없이 해석하는 함수이다.
이하, [표 4]에 포함되는 각 syntax 요소의 시맨틱(semantic)을 설명한다.
vehicle_position_latitude (32 비트) 는 차량과 연관된 패킹 영상이 생성될 때 차량의 지리적인 위도를 나타내는 필드이다. 위도는, 32 비트 값으로 1/10th 정수 마이크로 도(microdegrees)로 표현되며 사용되고, 사용중인 수평 데이텀(horizontal datum)을 기준으로 플러스 마이너스 90도 범위(즉, -900000000 ~ 900000001)를 제공한다. 값 900000001은 사용할 수 없을 때(unavailable) 사용되어야 한다. 이 필드의 MSB는 숫자의 부호를 나타내야 하고, MSB를 0으로 설정하는 것은 양수(즉, 플러스 값) 또는 양수 0에 대한 것이고, MSB를 1로 설정하는 것은 음수 또는 음수 0에 대한 것이다.
vehicle_position_longitude (32 비트) 는 차량과 연관된 패킹 영상이 생성 될 때, 차량의 지리적인 경도를 나타내는 필드이다. 경도는 32 비트 값으로 1/10th 정수 마이크로 도(microdegrees)로 표현되며 사용되고, 사용중인 수평 데이텀을 기준으로 플러스 마이너스 180도 범위 (즉, -1799999999 ~ 1800000001)를 제공한다. 1800000001 값은 사용할 수 없을 때 사용되어야 한다. 이 필드의 MSB는 숫자의 부호를 나타내야 하고, MSB를 0으로 설정하는 것은 양수 (즉, 플러스 값) 또는 양수 0에 대한 것이고, MSB를 1로 설정하는 것은 음수 또는 음수 0에 대한 것이다.
vehicle_position_elevation (16 비트) 는 차량과 연관된 패킹 영상이 생성될 때, 기준 타원체(일반적으로, WSG-84)의 위 또는 아래의 차량의 지리적 위치를 나타내는 필드이다. 16 비트 수는 1 데시 미터의 분해능을 가지며 양의 값과 음의 값의 비대칭 범위를 나타낸다. 이 필드는 다음과 같이 인코딩될 수 있다.
범위 0x0000에서 0xEFFF(십진수 0에서 61439까지)는 0에서 +6143.9 미터까지의 고도(즉, 기준 타원체 위)를 나타내는 양수들이다. 범위 0xF001에서 0xFFFF까지의 범위는 -409.5 미터에서 -0.1 미터까지의 고도(즉, 기준 타원체 아래)를 나타내는 음수들이다. +6143.9 미터보다 높은 고도는 0xEFFF로 표시된다. -409.5 미터보다 낮은 고도는 0xF001로 표시된다. 만약, 송신 디바이스가 송신 디바이스의 고도를 모르는 경우, 고도 데이터 요소는 0xF000로 부호화되어야 한다.
예를 들어, 고도 0 미터는 0x0000으로 부호화되고, 고도 -0.1 미터는 0xFFFF로 부호화된다. 고도 +100.0 미터는 0x03E8로 부호화된다.
vehicle_transmission_state (3 비트) 는 차량과 연관된 패킹 영상이 생성 될 때, 차량 전송 상태(state of the vehicle transmission)를 제공하기 위해 이용되는 필드이다. 차량 전송 상태를 나타내는 3 비트 값의 시맨틱은 아래의 [표 5]에 보여진다.
값(Value) 의미(Semantics)
0 중립(Neutral)
1 주차(Park)
2 전진 기어(Forward gears)
3 후진 기어(Reverse gears)
4 Reserved
5 Reserved
6 Reserved
7 사용 불가(unavailable)
number_of_pictures (5 비트) 는 이 필드와 연관된 패킹 영상 내의 프로젝티드 픽쳐의 개수를 나타내는 필드이다.
packed_picture_capture_time_base (32 비트) 는, 이 필드와 연관된 패킹 영상이 생성될 때, 기본 시간(base time)에 기초하여 패킹 영상 내의 각 픽쳐의 시간 차를 제공하기 위해 기본 시간을 나타내는 필드이다. 이 값은 packed_picture_time_scale Hz에서 작동하는 클럭의 단위이다.
packed_picture_width (16 비트) 는 이 필드와 연관된 패킹 영상의 폭(luma width)을 나타내는 필드이다. 값은 0보다 커야 한다.
packed_picture_height (16 비트) 는 이 필드와 연관된 패킹 영상의 높이(luma height)를 나타내는 필드이다. 값은 0보다 커야한다.
packed_picture_num_units_in_tick (32 비트) 는 클럭 틱 카운터의 하나의 증가분(하나의 클럭 틱(a clock tick)이라고 함)에 해당하는 주파수 packed_picture_time_scale Hz에서 작동하는 클럭의 시간 단위 수(the number of time units of a clock operating at the frequency packed_picture_time_scale Hz)를 나타내는 필드이다. 값은 0보다 커야한다. 초 단위의 클럭 틱은 packed_picture_num_units_in_tick을 packed_picture_time_scale로 나눈 몫과 같다. 예를 들어, 비디오 신호의 패킹 영상 레이트가 25Hz 일 때, packed_picture_time_scale은 27 000 000이고, packed_picture_num_units_in_tick은 1 080 000과 같을 수 있고, 따라서 클럭 틱은 0.04 초일 수있다.
packed_picture_time_scale (32 비트) 는 1 초에 통과하는 시간 단위 수를 나타내는 필드이다. 예를 들어, 27MHz 클럭을 사용하여 시간을 측정하는 시간 좌표계는 27 000 000의 packed_picture_time_scale을 갖는다. packed_picture_time_scale의 값은 0보다 커야 한다.
guard_band_flag (1 비트) 는 이 필드와 연관된 패킹 영상이 가드 밴드를 적용하는지 여부를 나타내는 필드이다.
camera_location_virtual_id (i) (5 비트)는 프로젝티드 픽쳐(i)에 대한 차량 내의 카메라 위치를 가상 ID로서 제공한다. 가상 ID는 차량 내의 카메라의 실제 위치에 매핑된다. 카메라의 실제 위치와 가상 ID 간의 매핑 정보는 컨트롤 플레인과 같은 별도의 채널을 통해 제공될 수 있다.
picture_capture_time_offset (i) (32 비트)은 picture_capture_time_base와 이 필드와 연관된 프로젝티드 픽쳐(i)의 캡쳐 시간 간의 시간 차이(즉, 틱 차이)를 주파수 packed_picture_time_scale Hz에서 동작하는 클럭 단위로 나타내는 필드이다.
다시 [표 4]으로 돌아와서 mV2X Packing Structure Info SEI message syntax를 설명하면, projected_picture_width (i) (16 비트)는 프로젝티드 픽쳐(i)의 폭(luma width)를 나타내는 필드이다.
projected_picture_height (i) (16 비트)는 프로젝티드 픽쳐(i)의 높이(luma height)를 나타내는 필드이다.
projected_picture_num_units_in_tick (i) (32 비트)는 클럭 틱 카운터의 하나의 증가분(하나의 클럭 틱 (a clock tick)이라고 함)에 대응하는 주파수 projected_picture_time_scale(i) Hz로 동작하는 클럭의 시간 단위 수를 가리키는 필드이다. 값은 0보다 커야한다. 초 단위의 클럭 틱은 projected_picture_num_units_in_tick(i)을 projected_picture_time_scale(i)으로 나눈 몫과 같다. 예를 들어, 비디오 신호의 팩킹 픽처 레이트가 25Hz 일 때, projected_picture_time_scale(i)는 27 000 000이고, projected_picture_num_units_in_tick (i)는 1 080 000과 같을 수 있고, 따라서 클럭 틱은 0.04 초일 수있다.
projected_picture_time_scale (i) (32 비트)는 1 초에 통과하는 시간 단위 수(the number of time units that pass in one second)를 나타내는 필드이다. 예를 들어, 27 MHz 클럭을 사용하여 시간을 측정하는 시간 좌표계는 27 000 000의 projected_picture_time_scale(i)를 갖는다. projected_picture_time_scale(i)의 값은 0보다 커야한다.
projected_picture_location_top (i) (16 비트)는 이 필드와 연관된 패킹 영상 내의 프로젝티드 픽쳐(i)의 위치에 대한 수직 좌표를 제공하는 필드이다. 이 필드와 연관된 패킹 영상 내에서 프로젝티드 픽쳐(i)의 상단 오프셋을 나타낸다.
projected_picture_location_left (i) (16 비트)는 이 필드와 연관된 패킹 영상 내의 프로젝티드 픽쳐(i)의 위치에 대한 수평 좌표를 제공하는 필드이다. 이 필드와 연관된 패킹 영상 내에서 프로젝티드 픽쳐(i)의 좌측 오프셋을 나타낸다.
일 실시예에 따른 패킹 구조 정보에 포함되는 패킹 영상의 크기 정보 및 프로젝티드 픽쳐의 위치 정보와 관련하여서, 이하 도 13을 참조하여 구체적으로 설명한다.
도 13을 참조하면, 일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보에 포함되는 패킹 영상(1310)의 크기 정보로서 패킹 영상(1310)의 높이(1311) 및 패킹 영상(1310)의 폭(1313) 중 적어도 하나의 값을 결정할 수 있다. 일 실시예에 따른 패킹부(1111)는, 패킹 영상(1310)의 크기 정보로서 패킹 영상(1310)의 높이(1311)를 packed_picture_heght 필드에 기록하고, 패킹 영상(1310)의 폭(1313)을 packed_picture_width 필드에 기록할 수 있다.
또한, 일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보에 포함되는 프로젝티드 영상의 크기 정보로서 프로젝티드 영상(1320)의 높이(1321) 및 프로젝티드 영상(1320)의 폭(1323) 중 적어도 하나의 값을 결정할 수 있다. 일 실시예에 따른 패킹부(1111)는, 프로젝티드 영상(1320)의 크기 정보로서 프로젝티드 영상(1320)의 높이(1321)를 projected_picture_heght 필드에 기록하고, 프로젝티드 영상(1320)의 폭(1323)을 projected _picture_width 필드에 기록할 수 있다.
또한, 일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보에 포함되는 프로젝티드 영상의 위치 정보로서 프로젝티드 영상(1320)의 상단 오프셋(1325) 및 프로젝티드 영상(1320)의 좌측 오프셋(1327) 중 적어도 하나의 값을 결정할 수 있다. 일 실시예에 따른 패킹부(1111)는, 프로젝티드 영상(1320)의 위치 정보로서 프로젝티드 영상(1320)의 상단 오프셋(1325)을 projected_picture_location_top 필드에 기록하고, 프로젝티드 영상(1320)의 좌측 오프셋(1327)을 projected_picture_location_left 필드에 기록할 수 있다.
한편, [표 4]의 projected_picture_rotation(i) (2 bits)은 이 필드와 연관된 패킹 영상 내에서 프로젝티드 영상의 회전된 상태를 90도 단위로 제공하는 필드이다. 이 값을 0으로 설정하면 프로젝티드 영상(i)가 회전하지 않음을 나타낸다. 이 값을 1로 설정하면 프로젝티드 영상(i)가 90도 회전 (반 시계 방향)한 것을 나타내고, 이 값을 2로 설정하면 프로젝티드 영상(i)를 180도 (시계 반대 방향)로 회전한 것을 나타내고, 이 값을 3으로 설정하면 프로젝티드 영상(i)가 270도(시계 반대 방향)로 회전한 것을 나타낸다.
도 14를 참조하면, 일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보에 포함되는 프로젝티드 영상의 회전 정보로서 프로젝티드 영상이 회전된 상태에 대응하는 값을 결정할 수 있다.
일 실시예에 따른 패킹부(1111)는, 입력 영상이 회전되지 않은 상태로 패킹 영상에 프로젝션 되는 경우, 입력 영상에 대응하는 프로젝티드 영상(1401)의 회전 정보로서 0을 projected_picture_rotation 필드에 기록할 수 있다. 또한, 패킹부(1111)는, 입력 영상이 반시계 방향으로 90도 회전된 상태로 패킹 영상에 프로젝션 되는 경우, 입력 영상에 대응하는 프로젝티드 영상(1403)의 회전 정보로서 1을 projected_picture_rotation 필드에 기록할 수 있다. 또한, 패킹부(1111)는, 입력 영상이 반시계 방향으로 180도 회전된 상태로 패킹 영상에 프로젝션 되는 경우, 입력 영상에 대응하는 프로젝티드 영상(1405)의 회전 정보로서 2를 projected_picture_rotation 필드에 기록할 수 있다. 또한, 패킹부(1111)는, 입력 영상이 반시계 방향으로 270도 회전된 상태로 패킹 영상에 프로젝션 되는 경우, 입력 영상에 대응하는 프로젝티드 영상(1407)의 회전 정보로서 3을 projected_picture_rotation 필드에 기록할 수 있다.
한편, [표 4]의 left_gb_width (i) (8 비트)는 이 필드와 연관된 프로젝티드 영상(i)의 좌측 가드 밴드의 폭(luma width)를 특정하는 필드이다. 좌측 가드 밴드의 높이(luma height)는 이 필드와 관련된 프로젝티드 영상(i)의 높이와 동일하다.
right_gb_width (i) (8 비트)는 이 필드와 연관된 프로젝티드 영상(i)의 우측 가드 밴드의 폭(luma width)를 특정하는 필드이다. 우측 가드 밴드의 높이(luma height)는 이 필드와 관련된 프로젝티드 영상(i)의 높이와 동일하다.
top_gb_height (i) (8 비트)는 이 필드와 연관된 프로젝티드 영상(i)의 상측 가드 밴드(top guard band)의 높이(luma height)를 특정하는 필드이다. 상측 가드 밴드의 폭(luma width)는 이 필드와 관련된 프로젝티드 영상(i)의 폭과 동일하다.
bottom_gb_height (i) (8 비트)는 이 필드와 연관된 프로젝티드 영상(i)의 하측 가드 밴드(bottom guard band)의 높이(luma height)를 특정하는 필드이다. 하측 가드 밴드의 폭(luma width)은 이 필드와 관련된 프로젝티드 영상(i)의 폭과 동일하다. 일 실시예에 따른 패킹 구조 정보에 포함되는 가드 밴드의 크기 정보 및 위치 정보와 관련하여서, 이하 도 15를 참조하여 구체적으로 설명한다.
guard_band_type (i) (2 비트)은 프로젝티드 영상(i)에 적용되는 가드 밴드의 타입을 지정하는 필드이다. 이 값을 0으로 설정하면 가드 밴드의 내용(content)이 지정되지 않은 것으로 지정되며, 이 값을 1로 설정하면 프로젝티드 영상(i)의 경계 샘플이 가드 밴드에 가로 또는 세로로 복사됨을 나타내고, 이 필드의 다른 값은 reserved된다.
도 15를 참조하면, 일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보로서 프로젝티드 영상(1050)를 둘러싸는 가드 밴드의 크기 정보를 출력할 수 있다.
일 실시예에 따른 패킹부(1111)는, 패킹 구조 정보에 포함되는 가드 밴드의 크기 정보로서 좌측 가드 밴드의 폭(1531), 우측 가드 밴드의 폭(1532), 상측 가드 밴드의 높이(1533), 및 하측 가드 밴드의 높이(1544) 중 적어도 하나의 값을 결정할 수 있다. 일 실시예에 따른 패킹부(1111)는, 가드 밴드의 크기 정보로서 좌측 가드 밴드의 폭(1531)을 left_gb_width 필드에 기록하고, 우측 가드 밴드의 폭(1532)을 right_gb_width 필드에 기록하고, 상측 가드 밴드의 높이(1533)를 top_gb_height 필드에 기록하고, 하측 가드 밴드의 높이(1544)를 bottom_gb_height 필드에 기록할 수 있다.
한편, 일 실시예에 따른 단말 장치(1100)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정할 수 있다. 예를 들어, 복수의 입력 영상들을 촬영하는 카메라들을 탑재한 차량의 주행 상태가 vehicle_transmission_state 필드에 기록될 수 있다.
예를 들어, 도 11의 단말 장치(1100)는, 단말 장치(1100)가 탑재된 차량이 이동하는 방향에 대응하는 프로젝티드 영상의 해상도가 다른 프로젝티드 영상들의 해상도에 비해 높게 패킹 영상 내에 포함되도록 패킹 구조를 결정할 수 있다. 일 실시예에 따르면, 차량이 전진하고 있는 경우는 전방의 상황을 나타내는 프로젝티드 영상의 해상도를 올리고, 후진 하는 경우 후방의 상황을 나타내는 프로젝티드 영상의 해상도를 올림으로써, 원격 제어시 안전한 주행을 도모할 수 있다.
예를 들어, 일 실시예에 따른 복수의 입력 영상들은 제1 입력 영상 및 제2 입력 영상을 포함할 수 있다. 제1 입력 영상은, 차량의 전방에 탑재된 카메라로부터 수신되는 영상일 수 있다. 제2 입력 영상은, 차량의 후방에 탑재된 카메라로부터 수신되는 영상일 수 있다.
일 실시예에 따른 단말 장치(1100)는, 차량이 전방으로 이동하는 경우, 패킹 영상 내에 제1 입력 영상이 제2 입력 영상보다 크게 포함되도록 패킹 구조를 결정할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 차량이 후방으로 이동하는 경우, 패킹 영상 내에 제2 입력 영상이 제1 입력 영상보다 크게 포함되도록 패킹 구조를 결정할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 패킹 영상 내에서 프로젝티드 영상의 크기를 조절함으로써, 전송되는 프로젝티드 영상의 해상도를 조절할 수 있다. 예를 들어, 일 실시예에 따른 단말 장치(1100)는, 패킹 영상 내에서 특정 프로젝티드 영상의 크기를 크게함으로써, 해당 프로젝티드 영상의 해상도를 높일 수 있다. 또한, 단말 장치(1100)는, 패킹 영상 내에서 특정 프로젝티드 영상의 크기를 작게함으로써, 해당 프로젝티드 영상의 해상도를 낮출 수 있다.
또한, 일 실시예에 따른 단말 장치(1100)는, 패킹 영상의 공간을 최대한 활용하기 위해서 입력 영상이 회전된 프로젝티드 영상을 생성하여 패킹 영상 내에 배치할 수 있다. 패킹 영상 내에 포함되는 프로젝티드 영상의 해상도 및 회전 정보는 패킹 구조 정보에 포함되어 전송될 수 있다.
도 16의 패킹 영상(1610)은 차량이 전진할 경우에 생성되는 패킹 영상이고, 패킹 영상(1630)은 차량이 후진할 경우에 생성되는 패킹 영상이다.
도 16에 도시된 바와 같이 패킹 영상(1610)은 복수의 프로젝티드 영상(1611, 1612, 1613, 1614, 1615)를 조합함으로써 생성될 수 있다. 이 때, 복수의 프로젝티드 영상(1611, 1612, 1613, 1614, 1615)는 각각 차량의 전방 좌측, 전방 우측, 좌측, 후방, 및 우측에 설치된 카메라들로부터 수신된 입력 영상들의 크기를 조절함으로써 생성된 영상들일 수 있다. 일 실시예에 따른 단말 장치(1100)의 패킹부(1111)는, 입력 영상들 중 적어도 하나의 입력 영상의 사이즈를 조절함으로써 패킹 영상을 구성하는 프로젝티드 영상들을 생성할 수 있다.
도 16에 도시된 바와 같이, 일 실시예에 따른 단말 장치(1100)는 차량이 전진할 경우에는 전방의 상황을 나타내는 프로젝티드 영상(1611, 1612)가 다른 방향의 상황을 나타내는 프로젝티드 영상(1613, 1614, 1615)보다 크게 패킹 영상(1610) 내에 포함되도록 패킹 구조를 결정할 수 있다.
반면에, 일 실시예에 따른 단말 장치(1100)는 차량이 후진할 경우에는 후방의 상황을 나타내는 프로젝티드 영상(1634)가 다른 방향의 상황을 나타내는 프로젝티드 영상(1631, 1632, 1633, 1635)보다 크게 패킹 영상(1630) 내에 포함되도록, 패킹 구조를 결정할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 결정된 패킹 구조에 기초하여 입력 영상들의 크기를 조절하고 회전함으로써 프로젝티드 영상을 생성할 수 있다.
상술한 실시예들에 따라서 생성된 패킹 영상 및 패킹 구조 정보는 이하의 설명에 따라서 부호화되고 원격 제어 장치(2000)에게 전송될 수 있다.
도 17은 일 실시예에 따른 부호화부의 구조를 도시한다.
도 17에 도시된 바와 같이, 일 실시예에 따른 부호화부(1113)는 패킹부(1111)로부터 패킹 영상 및 패킹 구조 정보를 수신할 수 있다.
일 실시예에 따른 부호화부(1113)는, 입력되는 패킹 영상과 패킹 구조 정보에 기초하여 IP 스트림을 생성하여 출력할 수 있다. 부호화부(1113)는, 부호화된 영상 스트림을 생성하고, NAL units을 출력하는 비디오 컴프레서(1710) 및 IP 스트림을 생성하여 출력하는 프로토콜 인캡슐레이터(Delivery Protocol Encapsulator)(1720)를 포함할 수 있다.
비디오 컴프레서(1710)는, 예를 들어, HEVC 부호화기(encoder)를 포함할 수 있다. 비디오 컴프레서(1710)는, 패킹부(1111)로부터 패킹 영상과 패킹 구조 정보를 입력 받고, 패킹 영상을 비디오 압축함으로써 부호화된 패킹 영상을 생성할 수 있다. 또한, 비디오 컴프레서(1710)는, 패킹 구조 정보를 SEI message로 생성하고, 부호화된 패킹 영상을 포함하는 압축된 비디오 스트림을 위한 NAL units으로 구성된 비트스트림을 출력할 수 있다.
비디오 컴프레서(1710)는, 통상적인 비디오 코덱(예를 들어, HEVC, H.264 등)과 동일하게, 비디오 데이터의 압축 전송 및 수신을 위한 부호화된 영상과 SEI message등 통상적인 데이터를 모두 포함하는 NAL units들로 구성된 비트스트림을 출력할 수 있다. 다만, 일 실시예에 따르면, 비디오 컴프레서(1710)는 패킹 구조 정보를 SEI message에 추가하여 NAL units들을 생성하는 과정을 추가로 포함할 수 있다.
일 실시예에 따른 프로토콜 인캡슐레이터(1720)는 비디오 컴프레서(1710)로부터 NAL units들로 구성된 비트스트림들을 입력받을 수 있다. 프로토콜 인캡슐레이터(1720)는 입력받은 비트스트림들을 딜리버리 프로토콜(예를 들어, TS, RTP, MMT, FLUS 등)로 캡슐화(Encapsulation)함으로써 IP 스트림을 생성하여 출력할 수 있다.
일 실시예에 따른 단말 장치(1100)의 전송부(1130)는, 부호화부(1113)에서 생성된 IP 스트림을 원격 제어 장치(2000)에게 전송할 수 있다. 일 실시예에 따른 통신부(1130)는, 부호화부(1113)로부터 IP 스트림을 입력 받아 네트워크를 통해 전송하고, 원격 제어 장치(2000)는 네트워크를 통해 IP 스트림을 수신할 수 있다.
도 18은 일 실시예에 따른 차량에 탑재되는 단말 장치(1100)가 차량의 주행을 제어하는 원격 제어 장치(2000)에게 영상을 전송하는 방법을 나타내는 흐름도이다.
이하에서 서술하는 방법의 각 단계는, 도 11에 도시된 단말 장치(1100)의 각 구성들에 의해 수행될 수 있다. 단말 장치(1100)와 관련하여 상술한 설명은 이하의 방법들의 각 단계에도 적용될 수 있다.
S1810에서 일 실시예에 따른 단말 장치(1100)는, 차량에 탑재되는 복수의 카메라들의 위치 정보를 원격 제어 장치에게 전송할 수 있다. 단말 장치(1100)는, 복수의 카메라들의 위치 정보와 함께 차량의 크기 정보 및 복수의 카메라들의 방향 정보 중 적어도 하나를 전송할 수 있다.
단말 장치(1100)는, 원격 제어 장치(2000)와의 영상 전송 조건 교섭 과정을 통해서 카메라의 위치 정보, 차량의 크기 정보, 및 카메라의 방향 정보 중 적어도 하나를 전송할 수 있다. 복수의 카메라들의 위치 정보, 차량의 크기 정보 및 복수의 카메라들의 방향 정보는, 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현될 수 있다.
차량에 탑재되는 카메라의 방향은 변경 가능하며, 일 실시 예에 따른 단말 장치(1100)는, 원격 제어 장치(2000)로부터 제어 신호를 수신하고, 수신된 제어 신호에 기초하여, 복수의 카메라들 중 적어도 하나의 방향을 변경할 수 있다.
S1820에서 일 실시예에 따른 단말 장치(1100)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정할 수 있다.
일 실시 예 따른 단말 장치(1100)는, 원격 제어 장치(2000)로부터 제어 신호를 수신하고, 수신된 제어 신호에 기초하여, 차량의 주행 상태를 결정할 수 있다. 일 실시 예 따른 단말 장치(1100)는, 수신된 제어 신호에 기초하여 차량의 주행 방향을 결정하고, 차량의 주행 방향에 기초하여 패킹 구조를 결정할 수 있다.
예를 들어, 단말 장치(1100)가 패킹 구조에 기초하여 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성함에 있어서, 복수의 입력 영상들은, 제1 입력 영상 및 제2 입력 영상을 포함할 수 있다. 단말 장치(1100)는, 차량이 전방으로 이동하는 경우, 패킹 영상 내에 제1 입력 영상이 제2 입력 영상보다 크게 포함되도록(제1 영상의 프로젝티드 영상의 해상도가 제2 영상의 프로젝티드 영상보다 해상도가 높도록) 패킹 구조를 결정할 수 있다. 제1 입력 영상은 차량의 전방에 대응하는 영상일 수 있다. 단말 장치(1100)는, 차량이 후방으로 이동하는 경우, 패킹 영상 내에 제2 입력 영상이 제1 입력 영상보다 크게 포함되도록 패킹 구조를 결정할 수 있다.
또는, 일 실시 예에 따른 단말 장치(1100)는, 단말 장치(1100)로부터 차량의 주행 상태와 연관된 패킹 구조 정보를 수신하고, 수신된 정보에 기초하여 패킹 구조를 결정할 수 있다.
S1830에서 일 실시예에 따른 단말 장치(1100)는, 패킹 구조에 기초하여 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 패킹 구조에 기초하여 복수의 입력 영상들 중 적어도 하나의 입력 영상의 사이즈를 조절하거나 회전함으로써, 복수의 프로젝티드 영상들을 생성할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 복수의 프로젝티드 영상들을 조합함으로써 패킹 영상을 생성할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 패킹 구조 정보를 생성하고 출력할 수 있다. 예를 들어, 패킹 구조 정보는, 복수의 입력 영상들을 촬영하는 장치에 대한 정보, 패킹 영상의 특성을 나타내는 정보, 및 패킹 영상을 구성하는 프로젝티드 영상의 특성을 나타내는 정보 중 적어도 하나를 포함할 수 있다.
또한, 패킹 구조 정보는, 패킹 영상을 구성하는 복수의 프로젝티드 영상들 중 하나의 프로젝티드 영상의 크기에 대한 정보, 패킹 영상 내에서 상기 프로젝티드 영상이 배치되는 위치에 대한 정보, 및 프로젝티드 영상이 입력 영상이 회전된 영상인지 여부에 대한 정보 중 적어도 하나를 포함할 수 있다.
S1840에서 일 실시예에 따른 단말 장치(1100)는, 패킹 영상을 포함하는 비트스트림을 전송할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 패킹 구조에 대한 정보 및 패킹 영상을 포함하는 비트스트림을 생성할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 패킹 영상을 부호화하고, 패킹 구조에 대한 정보를 포함하는 SEI 메시지를 생성할 수 있다. 단말 장치(1100)는, 부호화된 패킹 영상 및 SEI 메시지를 포함하는 NAL UNITS으로 구성된 비트스트림을 생성할 수 있다. 단말 장치(1100)는, 원격 제어 장치(2000)에게 비트스트림을 전송할 수 있다. 단말 장치(1100)는, 네트워크를 통해 원격 제어 장치(2000)에게 비트스트림을 포함하는 IP 스트림을 전송할 수 있다.
도 19는 일 실시예에 따른 차량에 탑재되는 단말 장치(1100)가 차량의 주행을 제어하는 원격 제어 장치(2000)에게 영상을 전송하는 방법을 나타내는 신호 흐름도이다.
이하에서 서술하는 방법의 각 단계는, 도 11에 도시된 단말 장치(1100) 및 도 20에 도시된 원격 제어 장치(2000)의 각 구성들에 의해 수행될 수 있다. 단말 장치(1100) 및 원격 제어 장치(2000)와 관련한 설명은 이하의 방법들의 각 단계에도 적용될 수 있다.
S1910에서 일 실시예에 따른 단말 장치(1100)는, 단말 장치(1100)가 탑재된 차량의 주변을 촬영하는 카메라의 위치 정보를 전송할 수 있다.
단말 장치(1100)가 탑재된 차량이 원격 제어 장치(2000)에 의해 원격으로 제어되기에 앞서, 단말 장치(1100)가 차량 주변의 영상 및 데이터 전송을 위한 세션을 형성하기 위해 원격 제어 장치(2000)와 교섭할 수 있다.
본 발명의 일 실시예에 따른 단말 장치(1100)는 전송할 패킹 영상의 비디오 파라미터에 관한 정보들(예를 들어, 비트 레이트, 패킹 구조 등)을 원격 제어 장치(2000)와의 교섭을 통해 확정하고, 이를 기반으로 패킹 영상을 전송할 수 있다. 단말 장치(1100)와 원격 제어 장치(2000)가 교섭하는 과정에서, 단말 장치(1100)는 카메라의 위치 정보를 전송할 수 있다. 또한, 단말 장치(1100)는, 차량의 크기 정보 및 카메라의 방향 정보 중 적어도 하나를 전송할 수 있다.
S1920에서 일 실시예에 따른 단말 장치(1100)는, 패킹 구조에 기초하여 패킹 영상을 생성할 수 있다.
단말 장치(1100)는, 원격 제어 장치(2000)와의 교섭 과정에서 결정된 비디오 파라미터(예를 들어, 코덱, 데이터 레이트, 해상도, 차량의 크기 정보, 차량의 주행 정보, 카메라의 위치 정보, 카메라의 방향 정보 등)에 기초하여 패킹 구조를 결정할 수 있다.
또한, 일 실시 예에 따른 단말 장치(1100)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정할 수 있다. 차량이 운행 전인 경우, 일 실시 예에 따른 단말 장치(1100)는, 패킹 영상을 구성하는 복수의 입력 영상들의 품질이 모두 동일하도록 패킹 구조를 결정하거나, 미리 결정된 디폴트 패킹 구조를 패킹 구조로서 결정할 수 있다.
S1930에서 일 실시예에 따른 단말 장치(1100)는, 생성된 패킹 영상을 포함하는 비트스트림을 원격 제어 장치(2000)에게 전송할 수 있다.
S1940에서 일 실시예에 따른 원격 제어 장치(2000)는, 수신된 비트스트림으로부터 패킹 영상을 획득하고, 패킹 영상으로부터 복수의 출력 영상들을 획득할 수 있다.
S1950에서 일 실시예에 따른 단말 장치(1100)는, 원격 제어 장치(2000)로부터 차량을 제어하기 위한 제어 신호를 수신할 수 있다.
원격 제어 장치(2000)는, 수신된 영상들에 기초하여 차량을 제어하기 위한 제어 신호를 생성할 수 있다. 일 예로서, 원격 제어 장치(2000)의 사용자는, 복수의 출력 영상들을 고려하여 원격 제어 장치(2000)에게 차량의 주행을 제어하기 위한 사용자 명령을 입력할 수 있다. 원격 제어 장치(2000)는, 사용자 명령에 기초하여 제어 신호를 생성할 수 있다. 다른 예로서, 원격 제어 장치(2000)는, 복수의 출력 영상들을 분석함으로써, 차량의 목적지에 도달하기 위한 주행 방향을 결정하고, 주행 방향에 기초하여 제어 신호를 생성할 수 있다.
원격 제어 장치(2000)는, 생성된 제어 신호를 단말 장치(1100)에게 전송하고, 단말 장치(1100)는 제어 신호를 수신할 수 있다.
S1960에서 일 실시예에 따른 단말 장치(1100)는, 수신된 제어 신호에 기초하여 차량의 주행 상태를 결정할 수 있다. 예를 들어, 단말 장치(1100)는, 제어 신호에 기초하여, 차량의 주행 방향을 결정할 수 있다.
S1970에서 일 실시예에 따른 단말 장치(1100)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정할 수 있다.
예를 들어, 일 실시예에 따른 단말 장치(1100)는 차량의 주행 방향에 따라 패킹 구조를 결정할 수 있다. 단말 장치(1100)는, 패킹 영상 내에서, 차량의 주행 방향에 대응하는 영상이 다른 영상에 비해 크게 포함되도록(또는, 차량의 주행 방향에 대응하는 영상의 해상도가 다른 영상의 해상도에 비해 높도록) 패킹 구조를 결정할 수 있다. 예를 들어, 단말 장치(1100)는, 차량이 전방으로 이동하는 경우, 차량의 전방 환경을 나타내는 영상이 다른 영상에 비해 크게 포함되도록 패킹 구조를 결정할 수 있다.
일 실시 예에 따른 단말 장치(1100)는, 차량이 원격 제어 주행을 종료할 때까지, 단계 S1920 내지 S1970을 반복할 수 있다. 따라서, 단말 장치(1100)는, 차량의 주행 방향에 따라 패킹 영상 내의 영상들의 데이터 레이트를 적응적으로 변경할 수 있다. 단말 장치(1100)는, 차량의 주행 방향이 전방이면 차량의 전방 영상에 상대적으로 더 많은 데이터 레이트를 할당한 패킹 영상을 생성하여 원격 제어 장치(2000)에게 송신할 수 있다. 단말 장치(1100)는, 차량의 주행 방향이 후방이면 차량의 후방 영상에 상대적으로 더 많은 데이트 레이트를 할당한 패킹 영상을 생성하여 원격 제어 장치(2000)에게 송신할 수 있다.
한편, 일 실시 예에 따른 영상 통신 시스템에 있어서, 단말 장치(1100)가 아닌 원격 제어 장치(2000)가 차량의 주행 방향에 기초하여 패킹 구조를 결정할 수 있다.
이하에서는 도 20 내지 도 24를 참조하여, 일 실시예에 따른 원격 제어 장치(2000)가 차량의 주행 상태에 기초하여 패킹 구조를 결정하고, 단말 장치(1100)로부터 패킹 영상이 포함된 IP 스트림을 수신하고, IP 스트림으로부터 복수의 출력 영상들을 출력하는 동작을 설명한다.
도 20은 일 실시예에 따른 원격 제어 장치의 구조를 도시한다.
일 실시예에 따른 원격 제어 장치(2000)는, 네트워크를 통해 수신된 데이터를 처리하여 IP 스트림을 출력하는 통신부(2010) 및 IP 스트림에 기초하여 복수 개의 영상들을 출력하는 프로세서(2030)를 포함할 수 있다.
일 실시예에 따른 원격 제어 장치(2000)는, 복수의 출력 영상들을 적어도 하나의 디스플레이 장치에게 출력할 수 있다. 또는, 일 실시예에 따른 원격 제어 장치(2000)는, 복수의 출력 영상들을 디스플레이 하기 위한 적어도 하나의 디스플레이 장치를 포함할 수 있다.
일 실시예에 따른 프로세서(2030)는 원격 제어 장치(2000)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(2030)는, 수신부(2010)를 제어할 수 있다. 도 20에는 원격 제어 장치(2000)가 하나의 프로세서(2030)를 포함하는 것으로 도시되나, 실시예는 이에 제한되지 않으며, 원격 제어 장치(2000)는 복수의 프로세서(2030)들을 포함할 수 있다. 또한, 프로세서(2030)는 단말 장치(1100)의 프로세서(1110)와 영상 전송 조건을 교섭할 수 있다.
일 실시예에 따른 프로세서(2030)는, 복호화부(2031) 및 디패킹부(2033)를 포함할 수 있다. 도 15에 도시된 복호화부(2031) 및 디패킹부(2033)는, 하드웨어적인 구성일 수도 있고, 프로세서(2030)에 의해 구현되는 기능 블록들일 수 있다. 따라서, 이하에서 서술하는 복호화부(2031) 및 디패킹부(2033)의 동작은 프로세서(2030)에서 수행되는 것일 수 있다.
일 실시 예에 따른 통신부(2010)는 차량에 탑재된 단말 장치(1100)와 데이터를 주고받을 수 있다. 일 실시 예에 따른 통신부(2010)는, 영상 전송 조건을 교섭함에 있어서, 단말 장치(1100)가 탑재된 차량의 크기, 차량에 탑재된 카메라의 위치 정보, 및 카메라의 방향 정보 중 적어도 하나를 수신할 수 있다.
구체적으로, 통신부(2010)는, 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신할 수 있다. 카메라들의 위치 정보는, 차량의 크기에 기초하여 설정되는 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현될 수 있다. 또한, 통신부(2010)는, 복수의 카메라들의 위치 정보와 함께 차량의 크기 정보 및 복수의 카메라들의 방향 정보를 수신할 수 있다.
일 실시 예에 따른 프로세서(2030)는, 통신부(2010)를 통해 단말 장치(1100)에게 복수의 카메라들 중 적어도 하나의 방향을 변경하기 위한 제어 신호를 전송할 수 있다. 단말 장치(1100)는, 수신된 제어 신호에 기초하여 변경된 카메라의 방향 정보를 통신부(2010)에게 전송할 수 있다.
일 실시 예에 따른 프로세서(2030)는, 통신부(2010)를 통해 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송할 수 있다. 패킹 구조 정보는, 차량의 주행 방향에 기초하여 결정될 수 있다. 단말 장치(11000)는, 원격 제어 장치(2000)로부터 수신된 패킹 구조 정보에 기초하여 복수의 카메라들에 의해 촬영된 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 단말 장치(1100)는, 생성된 패킹 영상 및 패킹 영상을 생성하기 위해 이용된 패킹 구조 정보를 포함하는 비트 스트림을 원격 제어 장치(2000)에게 전송할 수 있다.
일 실시예에 따른 프로세서(2030)는, 통신부(2010)로부터 비트스트림을 포함하는 IP 스트림을 수신하고, IP 스트림에 포함된 비트스트림으로부터 부호화된 패킹 영상을 추출하는 복호화부(2031)를 포함할 수 있다. 복호화부(2031)는, NAL units으로 구성된 비트스트림으로부터 부호화된 패킹 영상을 메시지를 추출할 수 있다. 복호화부(2031)는, 부호화된 패킹 영상을 복호화함으로써 패킹 영상을 획득할 수 있다. 또한, 일 실시예에 따른 프로세서(2030)의 복호화부(2031)는, IP 스트림에 포함된 비트스트림으로부터 패킹 구조 정보를 더 추출할 수 있다. 복호화부(2031)는, NAL units으로 구성된 비트스트림으로부터 부호화된 패킹 영상 및 SEI 메시지를 추출하고, SEI 메시지로부터 패킹 구조 정보를 추출할 수 있다.
일 실시예에 따른 프로세서(2030)는, 패킹 구조 정보 및 패킹 영상에 기초하여 복수의 출력 영상들을 생성하는 디패킹부(2033)를 포함할 수 있다.
일 실시예에 따른 패킹 구조 정보는, 패킹 영상에 포함되는 입력 영상들을 카메라들에 대한 정보(예를 들어, 카메라들의 위치, 카메라들의 방향 등), 패킹 영상의 특성을 나타내는 정보, 및 패킹 영상을 구성하는 서브 영상의 특성을 나타내는 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 디패킹부(2033)는, 패킹 구조 정보에 기초하여 패킹 영상으로부터 복수의 출력 영상들을 획득할 수 있다. 프로세서(2030)는, 패킹 구조 정보에 기초하여, 패킹 영상으로부터 복수의 프로젝티드 영상을 획득할 수 있다. 프로세서(2030)는, 패킹 구조 정보에 기초하여, 복수의 프로젝티드 영상들 중 적어도 하나의 프로젝티드 영상의 사이즈를 조절하거나 회전함으로써, 복수의 출력 영상들을 생성할 수 있다.
예를 들어, 일 실시예에 따른 패킹 구조 정보는, 패킹 영상을 구성하는 복수의 프로젝티드 영상들 중 하나의 프로젝티드 영상의 크기에 대한 정보, 패킹 영상 내에서 상기 프로젝티드 영상이 배치되는 위치에 대한 정보, 및 프로젝티드 영상이 입력 영상이 회전된 영상인지 여부에 대한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 패킹 구조 정보는, 차량의 주행을 제어하는 제어 신호가 차량을 어떤 방향으로 주행시키는 제어 신호인지에 기초하여 결정될 수 있다.
예를 들어, 복수의 출력 영상들은, 제1 출력 영상 및 제2 출력 영상을 포함할 수 있다. 제1 출력 영상은, 촬영 장치의 전방에 탑재된 카메라로부터 캡쳐된 입력 영상에 대응하는 영상일 수 있다. 제2 출력 영상은, 촬영 장치의 후방에 탑재된 카메라로부터 캡쳐된 입력 영상에 대응하는 영상일 수 있다.
일 실시예에 따른, 프로세서(2030)는, 단말 장치(1100)에게 전송된 제어 신호가 차량을 전방으로 이동시키기 위한 제어 신호인 경우, 제1 출력 영상이 제2 출력 영상보다 크도록(또는 해상도가 높도록), 복수의 출력 영상들을 획득할 수 있다. 일 실시예에 따른, 프로세서(2030)는, 제어 신호가 상기 차량을 후방으로 이동시키기 위한 제어 신호인 경우, 제2 출력 영상이 제1 출력 영상보다 크도록(또는 해상도가 높도록), 복수의 출력 영상들을 획득할 수 있다. 제어 신호에 따라 출력 영상의 크기(또는, 해상도)가 달라지는 것은, 단말 장치(1100)가, 제어 신호에 기초하여 차량의 주행 방향을 결정하고, 차량의 주행 방향에 기초하여 패킹 영상을 생성할 수 있기 때문이다.
도 21은 일 실시예에 따른 복호화부의 구조를 도시한다. 일 실시예에 따른 복호화부(2031)는, 입력되는 IP 스트림에 포함되는 비트스트림으로부터 패킹 구조 정보 및 부호화된 패킹 영상을 추출하는 파싱부(2130) 및 부호화된 패킹 영상을 복호화하는 비디오 디컴프레서(2150)를 포함할 수 있다.
일 실시예에 따른 복호화부(2031)는, 입력되는 IP 스트림을 디캡슐화(De-capsulation)하여 NAL units으로 구성된 비트스트림을 출력하는 프로토콜 디캡슐레이터(Delivery Protocol Decapsulator)(2110)를 포함할 수 있다. 파싱부(2130)는, 입력되는 비트스트림의 NAL units들로부터 부호화된 패킹 영상과 SEI message를 추출하고, SEI message로부터 패킹 구조 정보를 획득하여 출력할 수 있다. 비디오 디컴프레서(2150)는, 입력되는 부호화된 패킹 영상에 대한 디컴프레션(De-compression)을 통해 복호화된 패킹 영상을 출력할 수 있다. 비디오 디컴프레서(2150)는, 단말 장치(1100)의 비디오 컴프레서(1710)에 대응할 수 있다. 예를 들어, 비디오 디컴프레서(2150)는, HEVC 복호화기를 포함할 수 있다.
일 실시예에 따른 복호화부(2031)로부터 출력된 패킹 영상 및 패킹 구조 정보는 도 22의 디패킹부(2033)로 입력된다.
도 22는 일 실시예에 따른 디패킹부의 구조를 도시한다.
일 실시예에 따른 디패킹부(2033)는, 복호화부(2031)로 부터 출력되는 복호화된 패킹 영상과 패킹 구조 정보에 기초하여 디패킹을 수행한 후, 렌더링을 통해 출력 영상들을 출력할 수 있다. 예를 들어, 디패킹부(2033)는, 적어도 하나의 디스플레이에게 출력 영상들을 출력할 수 있다.
일 실시예에 따른 디패킹부(2033)는, 패킹 구조 정보를 바탕으로 복호화된 패킹 영상을 디패킹함으로써 프로젝티드 영상들을 출력하는 패킹 영상 디패킹부(2210), 및 패킹 구조 정보에 기초하여 프로젝티드 영상들을 렌더링함으로써 출력 영상들을 생성하는 프로젝티드 영상 렌더링부(2220)를 포함할 수 있다.
패킹 영상 디패킹부(2210)는 패킹 구조 정보를 바탕으로, 패킹 영상 내에 포함되는 각 프로젝티드 영상의 위치 정보, 회전 상태 등에 기초하여 프로젝티드 영상들을 획득하고 출력할 수 있다. 프로젝티드 영상 렌더링부(2220)는, 패킹 구조 정보를 바탕으로 결정된 각 프로젝티드 영상의 회전 상태, 해상도, 및/또는 프레임 레이트에 기초하여 출력 영상들을 출력할 수 있다.
또한, 일 실시 예에 따른 프로젝티드 영상 렌더링부(2220)는, 단말 장치(1100)로부터 수신된 카메라의 위치 정보, 차량의 크기 정보, 및 카메라의 방향 정보 중 적어도 하나에 기초하여 출력 영상들을 출력할 수 있다. 프로젝티드 영상 렌더링부(2220)는 카메라의 위치 정보, 차량의 크기 정보, 및 카메라의 방향 정보 중 적어도 하나에 기초하여 출력 영상을 배치하거나 보정함으로써, 차량의 주변 상황을 보다 실감나게 재현할 수 있다.
일 실시예에 따른 단말 장치(1100)는, 교섭 단계에서 차량의 크기에 대한 정보를 원격 제어 장치(2000)에게 전송함으로써, 도로의 폭 내에 차량의 위치가 유지되도록 원격 제어 장치(2000)가 차량을 제어하는데 도움을 줄 수 있다. 원격 제어 장치(2000)가 차량을 제어함에 있어서, 좌회전이나 우회전 시 도로 주변 건물이나 주변 차량과의 충돌 여부를 가늠하기 위해 차량의 크기에 대한 정보가 이용될 수 있다. 또한, 터널과 같이 높이 제한이 있는 도로를 차량이 주행하도록 제어하기 위해서는, 원격 제어 장치(2000)에게 차량의 높이에 대한 정보가 필수적으로 필요하다.
또한, 교섭 단계에서 단말 장치(1100)로부터 수신된 카메라의 위치 및/또는 카메라의 방향 정보에 의하면, 원격 제어 장치(2000)는 수신된 패킹 영상 내에 포함되는 영상들이 각각 차량의 어떤 위치와 각도에서 획득되었는지를 알 수 있다. 따라서, 원격 제어 장치(2000)는, 차량의 위치 정보 및 교섭 단계에서 수신된 정보에 기초하여, 차량의 주변 상황을 보다 올바르게 인식할 수 있다.
도 23은 일 실시예에 따른 차량의 주행을 제어하는 원격 제어 장치(2000)가 차량에 탑재되는 단말 장치(1100)로부터 영상을 수신하는 방법을 나타내는 흐름도이다.
이하에서 서술하는 방법의 각 단계는, 도 20에 도시된 원격 제어 장치(2000)의 각 구성들에 의해 수행될 수 있다. 원격 제어 장치(2000)와 관련하여 상술한 설명은 이하의 방법들의 각 단계에도 적용될 수 있다.
S2310에서 일 실시예에 따른 원격 제어 장치(2000)는, 단말 장치(1100)로부터 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신할 수 있다.
일 실시 예에 따른 원격 제어 장치(2000)는, 영상 전송 조건 교섭 과정을 통해서, 복수의 카메라들의 위치 정보와 함께 차량의 크기 정보 및 상기 복수의 카메라들의 방향 정보 중 적어도 하나를 수신할 수 있다. 복수의 카메라들의 위치 정보, 차량의 크기 정보 및 복수의 카메라들의 방향 정보는, 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현될 수 있다.
일 실시 예에 따른 원격 제어 장치(2000)는, 단말 장치(1100)에게 복수의 카메라들 중 적어도 하나의 방향을 변경하기 위한 제어 신호를 전송할 수 있다. 단말 장치(1100)는, 수신된 제어 신호에 기초하여 변경된 카메라의 방향 정보를 원격 제어 장치(2000)에게 전송할 수 있다.
S2320에서 일 실시예에 따른 원격 제어 장치(2000)는, 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송할 수 있다.
패킹 구조 정보는, 차량의 주행 방향에 기초하여 결정될 수 있다. 단말 장치(11000)는, 원격 제어 장치(2000)로부터 수신된 패킹 구조 정보에 기초하여 복수의 카메라들에 의해 촬영된 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성할 수 있다. 단말 장치(1100)는 패킹 구조 정보 및 패킹 영상을 포함하는 비트 스트림을 원격 제어 장치(2000)에게 전송할 수 있다. 예를 들어, 패킹 구조 정보는, 복수의 입력 영상들 각각의 크기에 대한 정보, 패킹 영상 내에서 복수의 입력 영상들 각각이 배치되는 위치에 대한 정보, 및 패킹 영상 내에서 복수의 입력 영상들 각각의 회전 여부에 대한 정보 중 적어도 하나를 포함할 수 있다.
S2330에서 일 실시예에 따른 원격 제어 장치(2000)는, 비트 스트림을 수신할 수 있다. 원격 제어 장치(2000)는 네트워크를 통해 수신된 데이터를 처리하여 비트스트림을 포함하는 IP 스트림을 수신할 수 있다.
S2340에서 일 실시예에 따른 원격 제어 장치(2000)는, 비트스트림으로부터 패킹 영상을 획득할 수 있다.
일 실시예에 따른 원격 제어 장치(2000)는 NAL units으로 구성된 비트스트림으로부터 부호화된 패킹 영상 및 SEI 메시지를 추출하고, SEI 메시지로부터 패킹 구조 정보를 추출할 수 있다. 비트스트림으로부터 추출되는 패킹 구조 정보는, 단계 S2320에서 원격 제어 장치(2000)가 단말 장치(1100)에게 전송하는 패킹 구조 정보의 적어도 일부를 포함할 수 있다.
S2350에서 일 실시예에 따른 원격 제어 장치(2000)는, 패킹 구조 정보에 기초하여 패킹 영상으로부터 복수의 출력 영상들을 획득하고 출력할 수 있다.
일 실시예에 따른 원격 제어 장치(2000)는 패킹 구조 정보에 기초하여, 패킹 영상으로부터 복수의 프로젝티드 영상을 획득할 수 있다. 원격 제어 장치(2000)는, 복수의 프로젝티드 영상들 중 적어도 하나의 프로젝티드 영상의 사이즈를 조절하거나 회전함으로써, 복수의 출력 영상들을 생성할 수 있다.
복수의 출력 영상들이 제1 출력 영상 및 제2 출력 영상을 포함하는 경우를 예로 들어 설명한다. 일 실시예에 따른 원격 제어 장치(2000)는, 원격 제어 장치(2000)가 차량의 주행을 제어하기위해 전송하는 제어 신호가 차량을 전방으로 이동시키기 위한 제어 신호인 경우, 제1 출력 영상이 제2 출력 영상보다 크도록, 복수의 출력 영상들을 획득할 수 있다. 원격 제어 장치(2000)는, 제어 신호가 차량을 후방으로 이동시키기 위한 제어 신호인 경우, 제2 출력 영상이 제1 출력 영상보다 크도록, 복수의 출력 영상들을 획득할 수 있다.
원격 제어 장치(2000)는, 적어도 하나의 디스플레이 장치 상에 복수의 출력 영상들이 디스플레이 되도록, 적어도 하나의 디스플레이 장치에게 복수의 출력 영상들을 출력할 수 있다.
도 24는 일 실시예에 따른 차량의 주행을 제어하는 원격 제어 장치(2000)가 차량에 탑재되는 단말 장치(1100)로부터 영상을 수신하는 방법을 나타내는 신호 흐름도이다.
이하에서 서술하는 방법의 각 단계는, 도 11에 도시된 단말 장치(1100) 및 도 20에 도시된 원격 제어 장치(2000)의 각 구성들에 의해 수행될 수 있다. 단말 장치(1100) 및 원격 제어 장치(2000)와 관련한 설명은 이하의 방법들의 각 단계에도 적용될 수 있다.
S2410에서 일 실시예에 따른 원격 제어 장치(2000)는, 단말 장치(1100)가 탑재된 차량의 주변을 촬영하는 카메라의 위치 정보를 단말 장치(1100)로부터 수신할 수 있다.
원격 제어 장치(2000)가 단말 장치(1100)가 탑재된 차량을 원격으로 제어하기에 앞서, 원격 제어 장치(2000)는, 차량 주변의 영상 및 데이터를 수신하기 위한 세션을 형성하기 위해 단말 장치(1100)와 교섭할 수 있다. 원격 제어 장치(2000)는, 차량의 운행 모드가 변경되었는 지를 판단하고, 차량의 운행 모드가 다른 운행 모드로부터 원격 제어 모드로 변경되면 단말 장치(1100)와의 영상 전송 조건 교섭을 수행할 수 있다.
본 발명의 일 실시예에 따른 원격 제어 장치(2000)는 수신할 패킹 영상의 비디오 파라미터에 관한 정보들(예를 들어, 비트 레이트, 패킹 구조 등)을 단말 장치(1100)와의 교섭을 통해 확정하고, 이를 기반으로 패킹 영상을 수신할 수 있다. 단말 장치(1100)와 원격 제어 장치(2000)가 교섭하는 과정에서, 원격 제어 장치(2000)는 카메라의 위치 정보를 수신할 수 있다. 또한, 원격 제어 장치(2000)는, 차량의 크기 정보 및 카메라의 방향 정보 중 적어도 하나를 수신할 수 있다.
S2420에서 일 실시예에 따른 원격 제어 장치(2000)는, 단말 장치(1100)로부터 패킹 영상을 포함하는 비트스트림을 수신할 수 있다.
원격 제어 장치(2000)는, 단말 장치(1100)와의 교섭이 완료되면, 단말 장치(1100)에게 차량 주변 영상(즉, 패킹 영상)을 전송할 것을 요청할 수 있다. 일 실시 예에 따른 원격 제어 장치(2000)는, 차량의 주행 상태에 기초하여 패킹 구조를 결정하고, 단말 장치(1100)가 결정된 패킹 구조에 기초하여 패킹 영상을 전송하도록 요청할 수 있다. 차량이 운행 전인 경우, 일 실시 예에 따른 원격 제어 장치(2000)는, 패킹 영상을 구성하는 복수의 입력 영상들의 품질이 모두 동일하도록 패킹 구조를 결정하거나, 미리 결정된 디폴트 패킹 구조를 패킹 구조로서 결정할 수 있다.
S2430에서 일 실시예에 따른 원격 제어 장치(2000)는, 수신된 비트스트림으로부터 패킹 영상을 획득하고, 패킹 영상으로부터 복수의 출력 영상들을 획득할 수 있다.
S2440에서 일 실시예에 따른 원격 제어 장치(2000)는, 차량을 제어하기 위한 제어 신호 및 패킹 구조 정보를 생성할 수 있다.
일 예로서, 원격 제어 장치(2000)의 사용자는, 단계 S2430에서 획득된 복수의 출력 영상들을 고려하여 원격 제어 장치(2000)에게 차량의 주행을 제어하기 위한 사용자 명령을 입력할 수 있다. 원격 제어 장치(2000)는, 사용자 명령에 기초하여 제어 신호를 생성할 수 있다. 다른 예로서, 원격 제어 장치(2000)는, 복수의 출력 영상들을 분석함으로써, 차량의 목적지에 도달하기 위한 주행 방향을 결정하고, 주행 방향에 기초하여 제어 신호를 생성할 수 있다.
또한, 일 실시 예에 따른 원격 제어 장치(2000)는, 제어 신호에 기초하여 패킹 구조를 결정할 수 있다. 예를 들어, 원격 제어 장치(2000)는, 패킹 영상 내에서, 차량의 주행 방향에 대응하는 영상이 다른 영상에 비해 크게 포함되도록(또는, 차량의 주행 방향에 대응하는 영상의 해상도가 다른 영상의 해상도에 비해 높도록) 패킹 구조를 결정할 수 있다.
패킹 영상이 제1 입력 영상 및 제2 입력 영상을 조합하여 생성되는 경우를 예로 들어 설명한다. 일 실시예에 따른 원격 제어 장치(2000)는, 원격 제어 장치(2000)가 차량의 주행을 제어하기 위해 전송하는 제어 신호가 차량을 전방으로 이동시키기 위한 제어 신호인 경우, 패킹 영상 내에 제1 입력 영상이 제2 입력 영상보다 크게(또는, 해상도가 높게) 포함되도록, 패킹 구조 정보를 생성할 수 있다. 원격 제어 장치(2000)는, 제어 신호가 차량을 후방으로 이동시키기 위한 제어 신호인 경우, 패킹 영상 내에 제2 입력 영상이 제1 입력 영상보다 크게(또는, 해상도가 높게) 포함되도록, 패킹 구조 정보를 생성할 수 있다.
S2450에서 일 실시예에 따른 원격 제어 장치(2000)는, 차량을 제어하기 위한 제어 신호 및 패킹 구조 정보를 전송할 수 있다.
예를 들어, 원격 제어 장치(2000)는, 차량이 전방으로 이동하도록 하는 제어 신호와 함께, 차량의 전방 환경을 나타내는 영상이 다른 영상에 비해 크게 포함되도록 하는 패킹 구조 정보를 단말 장치(1100)에게 전송할 수 있다.
S2460에서 일 실시예에 따른 단말 장치(1100)는, 수신된 패킹 구조 정보에 기초하여 복수의 입력 영상들 중 적어도 하나의 입력 영상의 사이즈를 조절하거나 회전함으로써, 복수의 프로젝티드 영상들을 생성할 수 있다. 일 실시예에 따른 단말 장치(1100)는, 복수의 프로젝티드 영상들을 조합함으로써 패킹 영상을 생성할 수 있다.
S2470에서 일 실시예에 따른 원격 제어 장치(2000)는, 생성된 패킹 영상을 포함하는 비트스트림을 수신할 수 있다.
S2480에서 일 실시예에 따른 원격 제어 장치(2000)는, 비트스트림으로부터 패킹 영상을 획득하고, 패킹 구조 정보에 기초하여 패킹 영상으로부터 복수의 출력 영상들을 획득할 수 있다.
일 실시 예에 따른 원격 제어 장치(2000)는, 차량이 원격 제어 주행을 종료할 때까지, 단계 S2440 내지 S2480을 반복할 수 있다. 따라서, 원격 제어 장치(2000)는, 차량의 주행 방향에 따라 패킹 영상 내의 영상들의 데이터 레이트가 적응적으로 변경된 패킹 영상을 수신할 수 있다. 예를 들어, 원격 제어 장치(2000)는, 차량의 주행 방향이 전방이면 차량의 전방 영상에 상대적으로 더 많은 데이터 레이트를 할당한 패킹 영상을 전송하도록 단말 장치(1100)에게 요청할 수 있다. 원격 제어 장치(2000)는, 차량의 주행 방향이 후방이면 차량의 후방 영상에 상대적으로 더 많은 데이트 레이트를 할당한 패킹 영상을 전송하도록 단말 장치(1100)에게 요청할 수 있다.
개시된 실시예들은 컴퓨터로 읽을 수 있는 저장 매체(computer-readable storage media)에 저장된 명령어를 포함하는 S/W 프로그램으로 구현될 수 있다.
컴퓨터는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 개시된 실시예에 따른 동작이 가능한 장치로서, 개시된 실시예들에 따른 단말 장치 및 원격 제어 장치를 포함할 수 있다.
컴퓨터로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 개시된 실시예들에 따른 전자 장치 또는 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 단말(예로, 단말 장치 또는 원격 제어 장치)로 구성되는 시스템에서, 서버의 저장매체 또는 단말의 저장매체를 포함할 수 있다. 또는, 서버 또는 단말과 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 단말 또는 제3 장치로 전송되거나, 제3 장치로부터 단말로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 단말 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 단말 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 단말이 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
또 다른 예로, 제3 장치가 컴퓨터 프로그램 제품을 실행하여, 제3 장치와 통신 연결된 단말이 개시된 실시예에 따른 방법을 수행하도록 제어할 수 있다. 구체적인 예로, 제3 장치는 단말 장치 또는 원격 제어 장치를 원격 제어하여, 패킹 영상을 전송 하거나 수신하도록 제어할 수 있다.
제3 장치가 컴퓨터 프로그램 제품을 실행하는 경우, 제3 장치는 서버로부터 컴퓨터 프로그램 제품을 다운로드하고, 다운로드된 컴퓨터 프로그램 제품을 실행할 수 있다. 또는, 제3 장치는 프리로드된 상태로 제공된 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수도 있다.

Claims (18)

  1. 차량에 탑재되는 단말 장치가 상기 차량의 주행을 제어하는 원격 제어 장치에게 영상을 전송하는 방법에 있어서,
    상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 상기 원격 제어 장치에게 전송하는 단계;
    상기 차량의 주행 상태에 기초하여 패킹 구조를 결정하는 단계;
    상기 패킹 구조에 기초하여 상기 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성하는 단계; 및
    상기 패킹 영상을 포함하는 비트스트림을 전송하는 단계를 포함하는, 영상 전송 방법.
  2. 제1 항에 있어서,
    상기 복수의 카메라들의 위치 정보를 전송하는 단계는,
    상기 복수의 카메라들의 위치 정보와 함께 상기 차량의 크기 정보 및 상기 복수의 카메라들의 방향 정보를 전송하는 단계를 포함하는, 영상 전송 방법.
  3. 제2 항에 있어서,
    상기 복수의 카메라들의 위치 정보, 상기 차량의 크기 정보 및 상기 복수의 카메라들의 방향 정보는, 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현되는 것을 특징으로 하는, 영상 전송 방법.
  4. 제1 항에 있어서,
    상기 원격 제어 장치로부터 제어 신호를 수신하는 단계;
    상기 수신된 제어 신호에 기초하여, 상기 복수의 카메라들 중 적어도 하나의 방향을 변경하는 단계를 더 포함하는, 영상 전송 방법.
  5. 제1 항에 있어서,
    상기 복수의 입력 영상들은, 제1 입력 영상 및 제2 입력 영상을 포함하고,
    상기 패킹 구조를 결정하는 단계는,
    상기 차량이 전방으로 이동하는 경우, 상기 패킹 영상 내에 상기 제1 입력 영상이 상기 제2 입력 영상보다 크게 포함되도록 상기 패킹 구조를 결정하는 단계; 및
    상기 차량이 후방으로 이동하는 경우, 상기 패킹 영상 내에 상기 제2 입력 영상이 상기 제1 입력 영상보다 크게 포함되도록 상기 패킹 구조를 결정하는 단계를 포함하는, 영상 전송 방법.
  6. 제1 항에 있어서,
    상기 차량의 주행 상태에 기초하여 패킹 구조를 결정하는 단계는,
    상기 원격 제어 장치로부터 제어 신호를 수신하는 단계; 및
    상기 수신된 제어 신호에 기초하여, 상기 차량의 주행 상태를 결정하는 단계를 포함하는, 영상 전송 방법.
  7. 제1 항에 있어서,
    상기 패킹 영상을 생성하는 단계는,
    상기 패킹 구조에 기초하여 상기 복수의 입력 영상들 중 적어도 하나의 입력 영상의 사이즈를 조절하거나 회전함으로써, 복수의 프로젝티드 영상들을 생성하는 단계; 및
    상기 복수의 프로젝티드 영상들을 조합함으로써 상기 패킹 영상을 생성하는 단계를 포함하는, 영상 전송 방법.
  8. 제1 항에 있어서,
    상기 비트스트림을 전송하는 단계는,
    상기 패킹 영상을 부호화하는 단계;
    상기 패킹 구조에 대한 정보를 포함하는 SEI 메시지를 생성하는 단계; 및
    상기 부호화된 패킹 영상 및 상기 SEI 메시지를 포함하는 NAL UNITS으로 구성된 상기 비트스트림을 생성하는 단계를 포함하는, 영상 전송 방법.
  9. 차량의 주행을 제어하는 원격 제어 장치와 통신하는 상기 차량에 탑재되는 단말 장치에 있어서,
    상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 상기 원격 제어 장치에게 전송하는, 통신부; 및
    상기 차량의 주행 상태에 기초하여 패킹 구조를 결정하고, 상기 패킹 구조에 기초하여 상기 복수의 카메라들에 의해 촬영되는 복수의 입력 영상들을 조합함으로써 패킹 영상을 생성하는, 적어도 하나의 프로세서를 포함하고,
    상기 통신부는, 상기 패킹 영상을 포함하는 비트스트림을 전송하는 것을 특징으로 하는, 단말 장치.
  10. 제9 항에 있어서,
    상기 복수의 입력 영상들은, 제1 입력 영상 및 제2 입력 영상을 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 원격 제어 장치로부터 수신된 제어 신호에 기초하여, 상기 차량의 주행 상태를 결정하고,
    상기 차량이 전방으로 이동하는 경우, 상기 패킹 영상 내에 상기 제1 입력 영상이 상기 제2 입력 영상보다 크게 포함되도록 상기 패킹 구조를 결정하고,
    상기 차량이 후방으로 이동하는 경우, 상기 패킹 영상 내에 상기 제2 입력 영상이 상기 제1 입력 영상보다 크게 포함되도록 상기 패킹 구조를 결정하는 것을 특징으로 하는, 단말 장치.
  11. 차량의 주행을 제어하는 원격 제어 장치가 상기 차량에 탑재되는 단말 장치로부터 영상을 수신하는 방법에 있어서,
    상기 단말 장치로부터 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신하는 단계;
    상기 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송하는 단계;
    비트 스트림을 수신하는 단계;
    상기 비트스트림으로부터 패킹 영상을 획득하는 단계;
    상기 패킹 구조 정보에 기초하여 상기 패킹 영상으로부터 복수의 출력 영상들을 획득하는 단계; 및
    상기 복수의 출력 영상들을 출력하는 단계를 포함하는, 영상 수신 방법.
  12. 제11 항에 있어서,
    상기 복수의 카메라들의 위치 정보를 수신하는 단계는,
    상기 복수의 카메라들의 위치 정보와 함께 상기 차량의 크기 정보 및 상기 복수의 카메라들의 방향 정보를 수신하는 단계를 포함하는, 영상 수신 방법.
  13. 제12 항에 있어서,
    상기 복수의 카메라들의 위치 정보, 상기 차량의 크기 정보 및 상기 복수의 카메라들의 방향 정보는, 3차원 공간 상의 X축 값, Y축 값 및 Z축 값으로 표현되는 것을 특징으로 하는, 영상 수신 방법.
  14. 제11 항에 있어서,
    상기 복수의 카메라들 중 적어도 하나의 방향을 변경하는 제어 신호를 상기 단말 장치에게 전송하는 단계를 더 포함하는, 영상 수신 방법.
  15. 제11 항에 있어서,
    상기 복수의 출력 영상들은, 제1 출력 영상 및 제2 출력 영상을 포함하고,
    상기 복수의 출력 영상들을 획득하는 단계는,
    상기 제어 신호가 상기 차량을 전방으로 이동시키기 위한 제어 신호인 경우, 상기 제1 출력 영상보다 큰 상기 제2 출력 영상을 포함하는 상기 복수의 출력 영상들을 획득하는 단계; 및
    상기 제어 신호가 상기 차량을 후방으로 이동시키기 위한 제어 신호인 경우, 상기 제2 출력 영상보다 큰 상기 제1 출력 영상을 포함하는 상기 복수의 출력 영상들을 획득하는 단계를 포함하는, 영상 수신 방법.
  16. 제11 항에 있어서,
    상기 패킹 영상은,
    상기 단말 장치에서, 상기 패킹 구조 정보에 기초하여 상기 복수의 카메라들에 의해 촬영된 복수의 입력 영상들을 조합함으로써 생성되고,
    상기 패킹 구조 정보는,
    상기 복수의 입력 영상들 각각의 크기에 대한 정보, 상기 패킹 영상 내에서 상기 복수의 입력 영상들 각각이 배치되는 위치에 대한 정보, 및 상기 패킹 영상 내에서 상기 복수의 입력 영상들 각각의 회전 여부에 대한 정보 중 적어도 하나를 포함하는, 영상 수신 방법.
  17. 차량에 탑재되는 단말 장치와 통신하는 상기 차량의 주행을 제어하는 원격 제어 장치에 있어서,
    상기 단말 장치로부터 상기 차량에 탑재되는 복수의 카메라들의 위치 정보를 수신하고, 상기 차량의 주행을 제어하는 제어 신호와 패킹 구조 정보를 전송하고, 비트 스트림을 수신하는, 통신부; 및
    상기 비트스트림으로부터 패킹 영상을 획득하고, 상기 패킹 구조 정보에 기초하여 상기 패킹 영상으로부터 복수의 출력 영상들을 획득하고, 상기 복수의 출력 영상들을 출력하는, 적어도 하나의 프로세서를 포함하는, 원격 제어 장치.
  18. 제17 항에 있어서,
    상기 복수의 출력 영상들은, 제1 출력 영상 및 제2 출력 영상을 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 제어 신호가 상기 차량을 전방으로 이동시키기 위한 제어 신호인 경우, 상기 제1 출력 영상보다 큰 상기 제2 출력 영상을 포함하는 상기 복수의 출력 영상들을 획득하고,
    상기 제어 신호가 상기 차량을 후방으로 이동시키기 위한 제어 신호인 경우, 상기 제2 출력 영상보다 큰 상기 제1 출력 영상을 포함하는 상기 복수의 출력 영상들을 획득하는 것을 특징으로 하는, 원격 제어 장치.
KR1020180139410A 2018-11-13 2018-11-13 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법 KR20200055596A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180139410A KR20200055596A (ko) 2018-11-13 2018-11-13 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법
PCT/KR2019/009507 WO2020101146A1 (ko) 2018-11-13 2019-07-31 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법
US17/292,843 US20210397181A1 (en) 2018-11-13 2019-07-31 Method for terminal device mounted in vehicle to transmit image and method for remote control device for controlling travel of vehicle to receive image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180139410A KR20200055596A (ko) 2018-11-13 2018-11-13 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법

Publications (1)

Publication Number Publication Date
KR20200055596A true KR20200055596A (ko) 2020-05-21

Family

ID=70732114

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180139410A KR20200055596A (ko) 2018-11-13 2018-11-13 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법

Country Status (3)

Country Link
US (1) US20210397181A1 (ko)
KR (1) KR20200055596A (ko)
WO (1) WO2020101146A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024095746A1 (ja) * 2022-11-04 2024-05-10 ソニーグループ株式会社 情報処理装置および方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1324274A3 (en) * 2001-12-28 2005-11-02 Matsushita Electric Industrial Co., Ltd. Vehicle information recording system
JP5561847B2 (ja) * 2008-06-19 2014-07-30 ローム株式会社 ドライブレコーダ
KR101917174B1 (ko) * 2012-02-24 2018-11-09 삼성전자주식회사 전자 장치 사이의 스트림 전송 방법 및 그 방법을 처리하는 전자 장치
US9554146B2 (en) * 2012-09-21 2017-01-24 Qualcomm Incorporated Indication and activation of parameter sets for video coding
WO2018211488A1 (en) * 2017-05-18 2018-11-22 Liveu Ltd. Device, system, and method of wireless multiple-link vehicular communication
KR102246557B1 (ko) * 2015-04-07 2021-04-30 엘지전자 주식회사 이동 단말기 및 그 제어 방법
US10142609B2 (en) * 2015-04-29 2018-11-27 Northrop Grumman Systems Corporation Dynamically adjustable situational awareness interface for control of unmanned vehicles
US9950669B2 (en) * 2015-11-12 2018-04-24 Robert Bosch Gmbh Vehicle camera system with multiple-camera alignment
JP2017123627A (ja) * 2016-01-06 2017-07-13 シャープ株式会社 画像処理装置、画像処理システム、移動体、画像処理方法、および画像処理プログラム
JP6626817B2 (ja) * 2016-11-30 2019-12-25 京セラ株式会社 カメラモニタシステム、画像処理装置、車両及び画像処理方法
KR102609415B1 (ko) * 2016-12-12 2023-12-04 엘지이노텍 주식회사 영상시스템 및 그 작동방법
WO2019191313A1 (en) * 2018-03-27 2019-10-03 Nvidia Corporation Remote operation of vehicles using immersive virtual reality environments
GB2573792B (en) * 2018-05-17 2022-11-09 Denso Corp Surround monitoring system for vehicles

Also Published As

Publication number Publication date
US20210397181A1 (en) 2021-12-23
WO2020101146A1 (ko) 2020-05-22

Similar Documents

Publication Publication Date Title
JP6721631B2 (ja) ビデオの符号化・復号の方法、装置、およびコンピュータプログラムプロダクト
CN109076255B (zh) 发送、接收360度视频的方法及设备
EP3682632B1 (en) Methods and devices for encoding and decoding 3d video stream
US10523980B2 (en) Method, apparatus and stream of formatting an immersive video for legacy and immersive rendering devices
EP3429210A1 (en) Methods, devices and stream for encoding and decoding volumetric video
WO2018077142A1 (zh) 全景视频的处理方法、装置及系统
EP3432581A1 (en) Methods, devices and stream for encoding and decoding volumetric video
JP2019534606A (ja) ライトフィールドデータを使用して場面を表す点群を再構築するための方法および装置
BR112020007727A2 (pt) método, aparelho e fluxo para formato de vídeo volumétrico
US20190387212A1 (en) 360 video processing method and apparatus therefor
KR102305634B1 (ko) 카메라 렌즈 정보를 포함한 360도 비디오를 송수신하는 방법 및 그 장치
CN115443652B (zh) 点云数据发送设备、点云数据发送方法、点云数据接收设备和点云数据接收方法
TW201742444A (zh) 虛擬實境中之圓形魚眼視訊
JP2020521348A (ja) 魚眼ビデオ情報を含む360度ビデオを送受信する方法及びその装置
CN112073142A (zh) 一种用于车辆的自动泊车方法及系统
KR20190071805A (ko) 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
US11321878B2 (en) Decoded tile hash SEI message for V3C/V-PCC
WO2022013326A1 (en) Viewport dependent delivery methods for omnidirectional conversational video
WO2017198143A1 (zh) 视频处理方法、视频播放方法、机顶盒以及vr设备
WO2023061131A1 (zh) 媒体文件封装方法、装置、设备及存储介质
EP3609187A1 (en) Method for transmitting region-based 360-degree video, method for receiving region-based 360-degree video, region-based 360-degree video transmission device, and region-based 360-degree video reception device
EP3301926A1 (en) A method and a device for reconstructing a point cloud representative of a scene using light-field data
KR20200055596A (ko) 차량에 탑재되는 단말 장치가 영상을 전송하는 방법 및 차량의 주행을 제어하는 원격 제어 장치가 영상을 수신하는 방법
EP3821596B1 (en) Methods and devices for encoding and decoding 3d video stream
EP3595318A1 (en) Methods and apparatus for volumetric video transport

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right