KR20200075709A - Method for transporting multimedia using FEC - Google Patents
Method for transporting multimedia using FEC Download PDFInfo
- Publication number
- KR20200075709A KR20200075709A KR1020190032232A KR20190032232A KR20200075709A KR 20200075709 A KR20200075709 A KR 20200075709A KR 1020190032232 A KR1020190032232 A KR 1020190032232A KR 20190032232 A KR20190032232 A KR 20190032232A KR 20200075709 A KR20200075709 A KR 20200075709A
- Authority
- KR
- South Korea
- Prior art keywords
- fec
- packet
- dnn
- electronic device
- dnn model
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2383—Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling 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/23605—Creation or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
Abstract
Description
본 발명은 FEC를 이용한 초협대역 멀티미디어 전송 방법에 관한 것으로서, 보다 상세하게는, 네트워크 상태와 비디오 인코딩을 고려하여 FEC 변수를 동적으로 가변하여 데이터를 전송할 수 있는 FEC를 이용한 초협대역 멀티미디어 전송 방법에 관한 것이다.The present invention relates to a method for transmitting ultra-narrowband multimedia using FEC, and more particularly, to a method for transmitting ultra-narrowband multimedia using FEC capable of dynamically varying FEC variables and transmitting data in consideration of network state and video encoding. will be.
최근 컴퓨터와 통신기술이 발달함에 따라 음성 및 영상 등의 멀티미디어 데이터를 네트워크를 통해 실시간적으로 전송할 수 있는 서비스에 대한 요구가 증가하고 있고, 이러한 요구를 만족시킬 수 있는 멀티미디어 처리 기술과 전송 기술에 대한 연구가 활발하게 진행되고 있다. 2. Description of the Related Art With the recent development of computer and communication technologies, there is an increasing demand for services that can transmit multimedia data such as voice and video in real time over a network, and for multimedia processing technologies and transmission technologies that can satisfy these demands. Research is actively underway.
기존의 통신 서비스가 인터넷을 통한 FTP(File Transfer Protocol), Tenet, e-mail과 같은 텍스트 위주의 서비스였다면, 최근에는 유튜브, IPTV와 같은 멀티미디어 데이터의 실시간 전송을 요구하는 다양한 서비스들이 등장하였다. 특히, UHD(Ultra High Definition) 이상의 영상을 지원하는 기기들이 보편화 되면서, 고품질의 영상 송수신에 대한 요구가 증가하고 있다. 그러나, 전송해야 할 전체 데이터가 크게 커진 만큼 스트리밍 서비스 간에 패킷 손실 및 비트 에러(bit error)의 가능성도 크게 증가하고 있다. If the existing communication service was a text-oriented service such as FTP (File Transfer Protocol), Tenet, or e-mail through the Internet, recently, various services requiring real-time transmission of multimedia data such as YouTube and IPTV have appeared. In particular, as devices that support UHD (Ultra High Definition) or higher images become common, the demand for high quality image transmission and reception is increasing. However, as the total data to be transmitted is greatly increased, the probability of packet loss and bit error between streaming services is also greatly increased.
이러한 문제점을 보완하기 위해 사용되는 대표적인 방법으로 응용계층에서의 전방오류정정(FEC: Forward Error Correction) 기술이 있으며, 최근까지 전방오류정정 기술을 기반으로 한 다양한 영상 스트리밍 기술들이 연구되고 있다. As a representative method used to compensate for this problem, there is a forward error correction (FEC) technology in the application layer, and various video streaming technologies based on the forward error correction technology have been studied until recently.
그러나, 기존의 FEC 매개변수 결정 알고리즘은 가변 데이터에 대해 고정된 방법(fixed method)으로, 적응적 송수신 데이터에 대한 FEC 매개변수를 결정하는 데에는 한계가 있다. 즉, 기존의 멀티미디어 전송 프로토콜의 가장 큰 단점은, 랩터 인코딩 매개변수를 결정하는 FEC 매개변수 결정 알고리즘을 사용하는 경우, 패킷의 크기 변경이 불가능하다는 것이다.However, the existing FEC parameter determination algorithm is a fixed method for variable data, and there is a limit in determining FEC parameters for adaptive transmission and reception data. That is, the biggest disadvantage of the existing multimedia transmission protocol is that, when using the FEC parameter determination algorithm for determining the raptor encoding parameter, it is impossible to change the packet size.
멀티미디어 전송 시 FEC 엔코더가 동일한 엔코딩 블록 크기를 사용한다고 가정하였을 때 패킷의 크기 변경이 불가능하면, 패킷 개수도 변경이 불가능하여 고정된다. 패킷 개수는 인코딩 블록의 코드율 뿐만 아니라 throughput에도 큰 영향을 주는 매개변수이므로, 통신 환경에 따라 FEC 매개변수를 적응적으로 조정할 수 있는 기술이 필요하다.Assuming that the FEC encoder uses the same encoding block size for multimedia transmission, if the packet size cannot be changed, the number of packets is also not changed and fixed. Since the number of packets is a parameter that greatly affects the throughput as well as the code rate of the encoding block, a technique capable of adaptively adjusting FEC parameters according to a communication environment is required.
전술한 문제점을 해결하기 위하여 본 발명이 이루고자 하는 기술적 과제는, 심층 신경망 구조를 적용하여 인코딩 블록에서 패킷 크기를 동적으로 조정할 수 있는 FEC를 이용한 초협대역 멀티미디어 전송 방법을 제시하는 데 있다.In order to solve the above-mentioned problems, a technical problem to be achieved by the present invention is to propose a super narrow-band multimedia transmission method using FEC capable of dynamically adjusting a packet size in an encoding block by applying a deep neural network structure.
본 발명의 해결과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems of the present invention are not limited to those mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.
전술한 기술적 과제를 해결하기 위한 수단으로서, 본 발명의 실시 예에 따르면, 순방향 오류 정정(FEC: Forward Error Correction)을 이용한 초협대역 멀티미디어 전송 장치는, 영상데이터를 송수신하는 동안 발생하는 네트워크 상태 정보를 제공하는 네트워크 정보 제공부; 상기 영상데이터를 비디오 인코딩률에 기반하여 인코딩하는 비디오 인코더; 상기 네트워크 정보 제공부로부터 제공되는 네트워크 상태 정보를 최적 DNN 모델에 입력하여 상기 영상데이터의 FEC 인코딩 시 적용할 FEC 매개변수들을 상기 네트워크 상태 정보에 따라 동적으로 가변 출력하는 FEC 변수 제어부; 상기 FEC 변수 제어부에서 가변 출력되는 FEC 매개변수들을 이용하여 상기 인코딩된 비디오데이터를 FEC 인코딩하여 패킷을 생성하는 FEC 인코딩 및 패킷 생성부; 및 상기 생성된 패킷을 무선으로 전송하는 통신 인터페이스부;를 포함한다.As a means for solving the above-described technical problem, according to an embodiment of the present invention, the ultra-narrowband multimedia transmission apparatus using Forward Error Correction (FEC) receives network state information generated during transmission and reception of image data. Network information providing unit to provide; A video encoder for encoding the video data based on a video encoding rate; An FEC variable controller for dynamically outputting FEC parameters to be applied when encoding FEC of the image data by dynamically inputting network state information provided from the network information providing unit into an optimal DNN model according to the network state information; An FEC encoding and packet generation unit that generates a packet by FEC encoding the encoded video data using FEC parameters that are variablely output from the FEC variable control unit; And a communication interface unit that wirelessly transmits the generated packet.
상기 네트워크 상태 정보는, 패킷 손실률(PLR: Packet Loss Rate) 및 데이터 레이트(Data Rate)를 포함하고, 상기 FEC 매개변수들은, 심볼 크기(s, symbol size), 심볼 개수(k, symbol number) 및 패킷 크기(p, packet size)를 포함하고, 상기 FEC 변수 제어부는, 상기 패킷 손실률 및 데이터 레이트에 따라 동적으로 패킷 크기를 산출하고, 상기 FEC 인코딩 및 패킷 생성부는, 상기 FEC 변수 제어부에서 동적으로 산출된 패킷 크기에 기반하여 상기 인코딩된 비디오데이터를 FEC 인코딩한 후 패킷을 생성한다.The network status information includes a packet loss rate (PLR) and a data rate, and the FEC parameters include symbol size (s, symbol size), symbol number (k, symbol number), and It includes a packet size (p, packet size), and the FEC variable control unit dynamically calculates a packet size according to the packet loss rate and data rate, and the FEC encoding and packet generation unit dynamically calculates the FEC variable control unit. A packet is generated after FEC encoding the encoded video data based on the packet size.
상기 비디오 인코더는, 상기 인코딩 시 적용된 비디오 인코딩률 정보를 상기 FEC 변수 제어부로 제공하고, 상기 FEC 변수 제어부는, 상기 비디오 인코더로부터 입력되는 상기 비디오 인코딩률 정보를 상기 네트워크 상태 정보와 함께 상기 최적 DNN 모델로 입력하여 상기 FEC 매개변수들을 동적으로 가변 출력한다.The video encoder provides video encoding rate information applied during encoding to the FEC variable controller, and the FEC variable controller includes the video encoding rate information input from the video encoder together with the network state information and the optimal DNN model. Enter to dynamically output the FEC parameters.
상기 최적 DNN 모델은, DNN 모델 선택 장치에 의해 선택되며, 상기 DNN 모델 선택 장치는, 멀티미디어 전송 프로토콜 알고리즘을 이용하여 산출되는, 상기 네트워크 상태 정보를 각각 설정된 테스트 범위 내에서 가변하면서 최대 throughput이 가능한 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)의 조합을 (심볼 크기, 심볼 개수, 패킷 크기)로 이루어진 실제값으로서 저장하는 실제값 저장부; DNN 학습에 사용되는 계층 개수 및 각 계층에 대한 뉴런의 개수 중 적어도 하나가 다른 m개의 상이한 DNN 모델들을 생성하는 DNN 모델 생성부; 상기 m개의 DNN 모델들 별로 상기 네트워크 상태 정보를 각각 설정된 테스트 범위 내에서 가변하면서 입력하여, 상기 m개의 DNN 모델들마다 n개의 (심볼 크기', 심볼 개수', 패킷 크기')로 이루어진 예측값을 산출하는 예측값 산출부; 및 상기 m개의 DNN 모델들 별로 상기 예측값과 상기 실제값을 비교하여 상기 최적 DNN 모델을 선택하는 DNN 모델 선택부;를 포함한다.The optimal DNN model is selected by the DNN model selection device, and the DNN model selection device is a symbol capable of maximum throughput while varying the network state information, which is calculated using a multimedia transmission protocol algorithm, within a set test range, respectively. An actual value storage unit for storing a combination of the size (s), the number of symbols (k), and the packet size (p) as an actual value (symbol size, number of symbols, packet size); A DNN model generation unit generating m different DNN models in which at least one of the number of layers used for DNN learning and the number of neurons for each layer is different; For each of the m DNN models, the network state information is input while varying within a set test range to calculate a predicted value consisting of n (symbol size, symbol count, and packet size) for each of the m DNN models. A predicted value calculating unit; And a DNN model selector for selecting the optimal DNN model by comparing the predicted value and the actual value for each of the m DNN models.
상기 DNN 모델 선택부는, MSE(Mean Square Error) 방식을 이용하여 상기 심볼 크기에 대한 MSE값, 상기 심볼 개수에 대한 MSE값 및 상기 패킷 크기에 대한 MSE값을 산출하고, 상기 산출된 MSE값들을 더한 결과가 가장 작은 DNN 모델을 상기 최적 DNN 모델로서 선택한다.The DNN model selector calculates an MSE value for the symbol size, an MSE value for the number of symbols, and an MSE value for the packet size using a Mean Square Error (MSE) method, and adds the calculated MSE values. The DNN model with the smallest result is selected as the optimal DNN model.
한편, 본 발명의 다른 실시 예에 따르면, 순방향 오류 정정(FEC: Forward Error Correction)을 이용한 초협대역 멀티미디어 전송 방법은, (A) 전자장치가, 영상데이터를 송수신하는 동안 발생하는 네트워크 상태 정보를 수집 또는 산출하는 단계; (B) 상기 전자장치가, 상기 영상데이터를 비디오 인코딩률에 기반하여 인코딩하는 단계; (C) 상기 전자장치가, 상기 (A) 단계에서 제공되는 네트워크 상태 정보를 최적 DNN 모델에 입력하여 상기 영상데이터의 FEC 인코딩 시 적용할 FEC 매개변수들을 상기 네트워크 상태 정보에 따라 동적으로 가변 출력하는 단계; (D) 상기 전자장치가, 상기 (C) 단계에서 가변 출력되는 FEC 매개변수들을 이용하여 상기 인코딩된 비디오데이터를 FEC 인코딩하여 패킷을 생성하는 단계; 및 (E) 상기 전자장치가, 상기 (D) 단계에서 생성된 패킷을 전송하는 단계;를 포함한다.On the other hand, according to another embodiment of the present invention, the ultra-narrowband multimedia transmission method using Forward Error Correction (FEC), (A) the electronic device collects network state information that occurs while transmitting and receiving video data Or calculating; (B) the electronic device encoding the video data based on a video encoding rate; (C) the electronic device dynamically inputs the network state information provided in step (A) into an optimal DNN model and dynamically outputs FEC parameters to be applied when FEC encoding the video data according to the network state information. step; (D) generating, by the electronic device, a packet by FEC encoding the encoded video data using FEC parameters that are variablely output in the step (C); And (E) the electronic device transmitting the packet generated in step (D).
상기 네트워크 상태 정보는, 패킷 손실률(PLR: Packet Loss Rate) 및 데이터 레이트(Data Rate)를 포함하고, 상기 FEC 매개변수들은, 심볼 크기(s, symbol size), 심볼 개수(k, symbol number) 및 패킷 크기(p, packet size)를 포함하고, 상기 (C) 단계는, 상기 전자장치가, 상기 패킷 손실률, 데이터 레이트에 따라 동적으로 패킷 크기를 산출하고, 상기 (D) 단계는, 상기 전자장치가, 상기 (C) 단계에서 동적으로 산출된 패킷 크기에 기반하여 상기 인코딩된 비디오데이터를 FEC 인코딩한 후 패킷을 생성한다.The network status information includes a packet loss rate (PLR) and a data rate, and the FEC parameters include symbol size (s, symbol size), symbol number (k, symbol number), and It includes a packet size (p, packet size), in step (C), the electronic device calculates a packet size dynamically according to the packet loss rate and data rate, and in step (D), the electronic device A. After FEC encoding the encoded video data based on the packet size dynamically calculated in step (C), a packet is generated.
상기 (B) 단계에서, 상기 전자장치는, 상기 인코딩 시 적용된 비디오 인코딩률 정보를 제공하고, 상기 (C) 단계에서, 상기 전자장치는, 상기 (B) 단계로부터 입력되는 상기 비디오 인코딩률 정보를 상기 네트워크 상태 정보와 함께 상기 최적 DNN 모델로 입력하여 상기 FEC 매개변수들을 상기 네트워크 상태 정보와 상기 비디오 인코딩률 정보에 따라 가변 출력한다.In step (B), the electronic device provides video encoding rate information applied during the encoding, and in step (C), the electronic device receives the video encoding rate information input from step (B). The FEC parameters are inputted to the optimal DNN model together with the network status information, and the FEC parameters are variably output according to the network status information and the video encoding rate information.
상기 (A) 단계 이전에, (F) DNN 모델 선택 장치가, 멀티미디어 전송 프로토콜 알고리즘을 이용하여 상기 네트워크 상태 정보 및 상기 비디오 인코딩률을 각각 설정된 테스트 범위 내에서 가변하면서 산출된, 최대 throughput이 가능한 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)의 조합을 (심볼 크기, 심볼 개수, 패킷 크기)로 이루어진 실제값으로서 저장하는 단계; (G) 상기 DNN 모델 선택 장치가, DNN 학습에 사용되는 계층 개수 및 각 계층에 대한 뉴론의 개수 중 적어도 하나가 다른 m개의 상이한 DNN 모델들을 생성하는 단계; (H) 상기 DNN 모델 선택 장치가, 상기 m개의 DNN 모델들 별로 상기 네트워크 상태 정보 및 상기 비디오 인코딩률을 각각 설정된 테스트 범위 내에서 가변하면서 입력하여, 상기 m개의 DNN 모델들마다 n개의 (심볼 크기', 심볼 개수', 패킷 크기')로 이루어진 예측값을 산출하는 단계; 및 (I) 상기 DNN 모델 선택 장치가, 상기 m개의 DNN 모델들 별로 상기 예측값과 상기 실제값을 비교하여 상기 최적 DNN 모델을 선택하는 단계;를 포함한다.Prior to the step (A), the (F) DNN model selection device is calculated while varying the network state information and the video encoding rate within a set test range using a multimedia transmission protocol algorithm, a symbol capable of maximum throughput Storing a combination of the size (s), the number of symbols (k) and the packet size (p) as an actual value consisting of (symbol size, number of symbols, packet size); (G) generating, by the DNN model selection apparatus, m different DNN models in which at least one of the number of layers used for DNN learning and the number of neurons for each layer is different; (H) The DNN model selection device inputs the network state information and the video encoding rate for each of the m DNN models while varying within a set test range, and then generates n (symbol sizes) for each of the m DNN models. Calculating a prediction value consisting of', the number of symbols' and the packet size'); And (I) the DNN model selection device selecting the optimal DNN model by comparing the predicted value and the actual value for each of the m DNN models.
본 발명에 따르면, FEC 매개변수 결정 시 심층 신경망 구조를 적용하여 인코딩 블록에서 패킷 크기를 동적으로 변화함으로써 PSNR(Peak Signal to Noise Ratio)의 최적화 및 전송 효율을 최대화할 수 있다. According to the present invention, when a FEC parameter is determined, a deep neural network structure is applied to dynamically change the packet size in an encoding block, thereby optimizing peak signal to noise ratio (PSNR) and maximizing transmission efficiency.
또한, 본 발명에 따르면, OSI 계층 중 네트워크 계층에 해당하는 네트워크 상태 정보와 어플리케이션 계층에 해당하는 비디오 인코딩률 정보를 입력받아 DNN 학습을 수행하며, 이로써, 네트워크 상태 정보와 비디오 인코딩률에 따라 동적으로 가변하는 심볼 크기, 심볼 개수 및 패킷 크기를 출력함으로써, 데이터 전송 시 사용하는 패킷 크기를 네트워크와 어플리케이션의 상태에 따라 적응적으로 조정할 수 있다.In addition, according to the present invention, DNN learning is performed by receiving network state information corresponding to a network layer and video encoding rate information corresponding to an application layer among OSI layers, and thus dynamically according to network state information and video encoding rates. By outputting the variable symbol size, number of symbols, and packet size, the packet size used for data transmission can be adaptively adjusted according to the state of the network and application.
또한, 본 발명에 따르면, 최초로 영상품질 및 영상전송효율 최적화를 수행하기 위해 예를 들어, (32-32-16-16) DNN 구조를 사용할 수 있으며, 이로써, PLR(Packet Loss Rate)과 DR(Data Rate), Video Encoding Rate에 따라 적절한 패킷 크기를 선택하여 throughput을 개선할 수 있다. 즉, 본 발명에 따르면, 동일한 네트워크 환경기준으로 PSNR이 유사한 수준에서 더 많은 영상데이터를 보낼 수 있으며, 이는 제한된 네트워크 자원 또는 혼잡한 트래픽 환경에서 영상전송효율을 개선할 수 있다.In addition, according to the present invention, for example, the (32-32-16-16) DNN structure may be used, for example, to optimize image quality and image transmission efficiency for the first time, and thus, packet loss rate (PRL) and DR ( Data Rate) and Video Encoding Rate to improve the throughput by selecting the appropriate packet size. That is, according to the present invention, PSNR can send more video data at a similar level based on the same network environment, which can improve video transmission efficiency in limited network resources or congested traffic environments.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 본 발명의 실시 예에 따른 초협대역 멀티미디어 전송 장치(100)를 도시한 블록도,
도 2는 본 발명의 실시 예에 따른 DNN 모델 선택 장치를 도시한 도면,
도 3은 DNN 모델 선택부에 의해 선택된 최적 DNN 모델, 즉, 5개의 완전 연결 신경망 구조를 도시한 도면,
도 4는 본 발명의 실시 예에 따른 순방향 오류 정정을 이용한 초협대역 영상데이터 전송 방법을 설명하기 위한 흐름도, 그리고,
도 5는 본 발명의 실시 예에 따른 DNN 모델 선택 방법을 설명하기 위한 흐름도이다.1 is a block diagram showing an ultra-narrowband
2 is a diagram illustrating an apparatus for selecting a DNN model according to an embodiment of the present invention;
3 is a diagram showing an optimal DNN model selected by the DNN model selector, that is, five fully connected neural network structures,
4 is a flowchart illustrating a method for transmitting ultra-narrowband image data using forward error correction according to an embodiment of the present invention, and
5 is a flowchart illustrating a DNN model selection method according to an embodiment of the present invention.
본 발명의 실시를 위한 구체적인 내용을 설명하기에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사항에 부합하는 의미와 개념으로 해석되어야 할 것이다.Prior to explaining the details for the practice of the present invention, terms or words used in the specification and claims can be properly defined by the inventor in order to describe his or her invention in the best way. Based on the principle that it should be interpreted as a meaning and concept consistent with the technical details of the present invention.
또한, 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.In addition, it should be noted that when it is determined that the detailed description of the known functions and configurations related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description is omitted.
이하, 본 발명에서 실시하고자 하는 구체적인 기술내용에 대해 첨부도면을 참조하여 상세하게 설명하기로 한다.Hereinafter, with reference to the accompanying drawings, a specific technical content to be carried out in the present invention will be described in detail.
도 1 및 도 2에 도시된 장치들(100, 200)의 각각의 구성은 기능 및 논리적으로 분리될 수 있음을 나타내는 것이며, 반드시 각각의 구성이 별도의 물리적 장치로 구분되거나 별도의 코드로 생성됨을 의미하는 것은 아님을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. Each configuration of the
상기 장치들(100, 200)은 소정의 데이터 프로세싱 장치에 설치되어 본 발명의 기술적 사상을 구현할 수 있다.The
또한, 본 발명의 실시 예에 따른 상기 장치들(100, 200)은 마이크로 프로세서, 메모리, FPGA(Field Programmable Gate Array), ASIC(Application Specific Integrated Circuit) 등 프로그램의 설치 및 실행이 가능한 전자 장치를 사용하여 구현될 수 있다.In addition, the
도 1은 본 발명의 실시 예에 따른 초협대역 멀티미디어 전송 장치(100)를 도시한 블록도이다.1 is a block diagram illustrating an ultra-narrowband
도 1에 도시된 장치(100)는 관제 센터 또는 관제 센터와 무선통신하는 감시정찰기, 감시용 비행체 등 영상을 포함하는 멀티미디어 데이터를 송수신할 수 있는 군장비시설에 설치될 수 있다.The
도 1을 참조하면, 본 발명의 실시 예에 따른 초협대역 멀티미디어 전송 장치(100)는 네트워크 정보 제공부(110), 비디오 인코더(120), FEC 변수 제어부(130), FEC 인코딩 및 패킷 생성부(140) 및 통신 인터페이스부(150)를 포함한다.Referring to Figure 1, the ultra-narrowband
네트워크 정보 제공부(110)는 영상데이터를 송수신하는 동안 발생하는 네트워크 상태 정보를 취합 또는 산출하여 FEC 변수 제어부(130)에게 제공한다. 네트워크 상태 정보는, 패킷 손실률(PLR: Packet Loss Rate), 데이터 레이트(DR: Data Rate), 지연(Relay), 대역폭 등 네트워크 통신과 관련된 다수의 정보를 포함할 수 있다. 이러한 네트워크 상태 정보를 획득하는 방식은 주지된 다양한 기술들 중 하나를 사용할 수 있다.The network
비디오 인코더(120)는 전송할 영상데이터를 비디오 인코딩률에 기반하여 인코딩한다. 또한, 비디오 인코더(120)는 영상데이터의 인코딩에 사용한 비디오 인코딩률(VER: Video Encoding Rate)을 FEC 변수 제어부(130)에게 제공한다.The
FEC 변수 제어부(130)는 네트워크 정보 제공부(110)로부터 제공되는 네트워크 상태 정보와 비디오 인코딩률(VER)을 최적 DNN 모델에 입력하여 영상데이터의 FEC 인코딩 시 적용할 FEC 매개변수들을 네트워크 상태 정보에 따라 동적으로 가변 출력할 수 있다. The FEC
FEC 변수 제어부(130)는 다수의 네트워크 상태 정보 중 패킷 손실률(PLR)과 데이터 레이트(DR)를 최적 DNN 모델의 입력으로 사용할 수 있으며, 이는 일 예로서 변경가능함은 물론이다. The FEC
또한, FEC 변수 제어부(130)에 의해 동적으로 가변되는 FEC 매개변수들은 랩터 인코딩 블록의 심볼 크기(s, symbol size), 심볼 개수(k, symbol number) 및 패킷 크기(p, packet size)를 포함한다. 심볼 크기, 심볼 개수 및 패킷 크기는 최적의 영상 품질 및 전송 효율에 영향을 미치는 변수들 중 하나이다. In addition, the FEC parameters dynamically changed by the FEC
FEC 변수 제어부(130)에서 사용하는 최적 DNN 모델은 도 2를 참조하여 후술할 DNN 모델 선택 장치(200)에 의해 학습 및 선택된 모델이다.The optimal DNN model used by the FEC
FEC 인코딩 및 패킷 생성부(140)는 FEC 변수 제어부(130)에서 패킷 손실률(PLR), 데이터 레이트(DR) 및 비디오 인코딩률(VER)에 따라 동적으로 가변 출력되는 FEC 매개변수들을 이용하여, 비디오 인코더(120)에서 인코딩된 비디오 데이터를 FEC 인코딩하고 FEC 매개변수들에 포함된 패킷 크기에 따라 패킷을 생성할 수 있다. 즉, FEC 인코딩 및 패킷 생성부(140)는 FEC 변수 제어부(130)에서 동적으로 산출된 패킷 크기에 기반하여, 인코딩된 비디오 데이터를 FEC 인코딩한 후 패킷을 생성한다.The FEC encoding and
통신 인터페이스부(150)는 FEC 인코딩 및 패킷 생성부(140)에서 생성된 패킷을 무선으로 타겟에게 전송하고, 전송과 관련된 통신 결과를 네트워크 정보 제공부(110)에게 제공한다. The
도 2는 본 발명의 실시 예에 따른 DNN 모델 선택 장치(200)를 도시한 도면이다.2 is a diagram illustrating a DNN
도 2에 도시된 DNN 모델 선택 장치(200)는 관제 센터의 서버에 구비되거나 별도의 컴퓨터 장치로 구현되어 DNN 모델을 학습 및 선택할 수 있으며, 선택된 최적의 DNN 모델을 영상데이터 전송 장치(100)에 설치 및 실행가능하도록 설계할 수 있다. DNN 모델 선택 장치(200)는 AL-FEC(Application Layer FER) 파라미터 결정을 위한 최적의 DNN 모델을 선택할 수 있다.The DNN
도 2를 참조하면, 본 발명의 실시 예에 따른 DNN 모델 선택 장치(200)는 실제값 저장부(210), DNN 모델 생성부(220), 예측값 산출부(230) 및 DNN 모델 선택부(240)를 포함한다.Referring to FIG. 2, the DNN
실제값 저장부(210)는 멀티미디어 전송 프로토콜 알고리즘을 이용하여 산출된, 네트워크 상태 정보와 비디오 인코딩률(VER)을 각각 설정된 테스트 범위 내에서 가변하면서 최대 throughput이 가능한 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)의 조합을 (심볼 크기, 심볼 개수, 패킷 크기)(이하, (s, k, p)라 한다)로 이루어진 실제값으로서 저장할 수 있다. The actual
실제값 저장부(210)에 네트워크 상태 정보와 비디오 인코딩률에 따라 저장된 (s, k, p) 조합, 즉, 다수의 실제값들은 DNN 구조의 최적 모델 파라미터를 찾기 위한 DNN 학습 샘플로 사용될 수 있다. DNN 학습 샘플로 사용되기 위한 실제값들은 PC와 같은 별도의 전자장치(미도시) 또는 DNN 모델 선택 장치(200)가 멀티미디어 전송 프로토콜 알고리즘을 실행하여 추출할 수 있다. 이하에서는 전자장치(미도시)가 추출하는 경우를 예로 들어 설명한다.A combination of (s, k, p) stored according to the network state information and the video encoding rate in the actual
먼저, 전자장치(미도시)는 샘플을 추출하기 위해 패킷 손실률(PLR), 데이터 레이트(DR) 및 비디오 인코딩률(VER)을 각각 정해진 단위(Unit Step)로 변경하면서 최대 throughput이 가능한 (s, k, p) 조합을 추출한다. 샘플 추출 시 적용한 패킷 손실률(PLR), 데이터 레이트(DR) 및 비디오 인코딩률(VER)의 범위는 [표 1]과 같다.First, in order to extract a sample, an electronic device (not shown) can change the packet loss rate (PLR), data rate (DR), and video encoding rate (VER) in units of a predetermined unit (Unit Step). k, p) extract the combination. Table 1 shows the ranges of the packet loss rate (PLR), data rate (DR), and video encoding rate (VER) applied during sample extraction.
[표 1]에서 보여지는 테스트 범위(Test Range)와 변경 단위(Unit Step)는 DNN 모델을 학습하고 최적의 DNN을 선택하기 위해 사용하는 일 예로서, 이에 한정되지 않고 변경가능함은 물론이다.The test range and the unit step shown in [Table 1] are examples used to train the DNN model and select the optimal DNN, but are not limited thereto, and can be changed.
샘플 추출에 사용되는 멀티미디어 전송 프로토콜 알고리즘은 멀티미디어 전송 프로토콜에서 FEC 매개변수를 결정하기 위한 기존 알고리즘으로서, 간단히 설명하면 다음과 같다.The multimedia transmission protocol algorithm used for sample extraction is an existing algorithm for determining FEC parameters in the multimedia transmission protocol.
먼저, 전자장치(미도시)는 최적의 영상품질 및 전송효율을 위한 랩터 인코딩 블록의 심볼 크기(s), 심볼 개수(k), 그리고, 코드율(c) 등의 문제 정의를 수행한다. First, an electronic device (not shown) defines problems such as symbol size (s), number of symbols (k), and code rate (c) of a raptor encoding block for optimal image quality and transmission efficiency.
그리고, 전자장치(미도시)는 위에서 정의한 문제의 해를 찾기 위해 전역 탐색 기반의 알고리즘을 사용한다. 즉, 알고리즘에서는 사용 가능한 (s,k)의 조합을 생성하고, 이 조합 내에서 throughput을 최대화하는 s, k 그리고 c를 탐색한다. 유한한 개수의 사용 가능한 (s, k) 조합을 제공하며, c는 주어진 (s, k) 조합과 네트워크 상태, 즉, 패킷 손실률(PLR)에 따라 결정 가능한 값이다. And, the electronic device (not shown) uses a global search-based algorithm to find the solution of the problem defined above. That is, the algorithm generates usable combinations of (s,k) and searches for s, k and c to maximize throughput within the combination. It provides a finite number of available (s, k) combinations, and c is a value that can be determined according to a given (s, k) combination and network condition, i.e., packet loss rate (PLR).
매개 변수 결정 알고리즘은 아래와 같다.The parameter determination algorithm is as follows.
첫째, 전자장치(미도시)는 매개 변수 후보가 저장되는 집합을 초기화하고, 사용 가능한 모든 (s, k)의 조합을 생성한다.First, the electronic device (not shown) initializes a set in which parameter candidates are stored, and generates all available combinations of (s, k).
둘째, 전자장치(미도시)는 생성된 (s, k) 조합 중 하나를 선택하고, 선택된 (s, k) 기준으로 랩터 인코딩 블록에 해당되는 패킷의 개수 및 랩터 디코딩에 필요한 최소한의 패킷 개수, 패킷 손실률(PLR)을 고려하여 코드율(c)를 결정한다.Second, the electronic device (not shown) selects one of the generated (s, k) combinations, and based on the selected (s, k), the number of packets corresponding to the raptor encoding block and the minimum number of packets required for raptor decoding, The code rate (c) is determined in consideration of the packet loss rate (PLR).
셋째, 전자장치(미도시)는 선택된 (s, k) 조합에 대해 수신단 버퍼 언더플로우를 방지할 수 있는지 계산한다.Third, the electronic device (not shown) calculates whether or not a buffer underflow of the receiving end can be prevented for the selected (s, k) combination.
넷째, 전자장치(미도시)는 위에서 결정된 (s, k) 조합과 c, 그리고, 고정된 패킷 크기(p)로 응용계층의 throughput을 계산한다. 즉, 전자장치(미도시)는 심볼 크기(s)와 심볼 개수(k)의 조합으로 최대의 랩터 인코딩 블록크기를 찾는다.Fourth, the electronic device (not shown) calculates the throughput of the application layer with the combination of (s, k) and c determined above, and a fixed packet size (p). That is, the electronic device (not shown) finds the maximum raptor encoding block size by combining the symbol size (s) and the number of symbols (k).
다섯째, 전자장치(미도시)는 (s, k) 조합에 대해 위 과정을 수행하였다면 Mcnd에 있는 매개변수 후보를 위 문제의 해로 반환한다. 만약 아직 탐색하지 않은 (s, k) 조합이 있다면 상술한 동작을 반복한다.Fifth, the electronic device (not shown) returns the parameter candidate in M cnd as the solution to the above problem if the above process is performed on the (s, k) combination. If there is a combination (s, k) that has not been searched yet, the above operation is repeated.
전자장치(미도시)는 상술한 동작을 패킷 손실률(PLR), 데이터 레이트(DR) 및 비디오 인코딩률(VER)을 각각 정해진 단위(Unit Step)로 변경하면서, 변경된 패킷 손실률(PLR), 데이터 레이트(DR) 및 비디오 인코딩률(VER)에 대해 최대 throughput이 가능한 (s, k, p) 조합을 추출한다.An electronic device (not shown) changes the packet loss rate (PLR), data rate (DR), and data encoding rate (VER) in the above-described operation to a predetermined unit (Unit Step), while changing the packet loss rate (PLR) and data rate A combination of (s, k, p) capable of maximum throughput for (DR) and video encoding rate (VER) is extracted.
예를 들어, 먼저, 전자장치(미도시)는 (PLR, DR, VER)=(0.1, 0.1, 0.0001)인 경우 최대 throughput이 가능한 (s, k, p) 조합을 추출하고, 다음으로 (PLR, DR, VER)=(0.1, 0.1, 0.0002)인 경우 최대 throughput이 가능한 (s, k, p) 조합을 추출하고, 이러한 방식에 의해 마지막으로 (PLR, DR, VER)=(1, 1, 0.04)인 경우 최대 throughput이 가능한 (s, k, p) 조합을 추출한다. For example, first, the electronic device (not shown) extracts a combination of (s, k, p) capable of maximum throughput when (PLR, DR, VER)=(0.1, 0.1, 0.0001), and then (PLR , DR, VER) = (0.1, 0.1, 0.0002), extracts a combination of (s, k, p) capable of maximum throughput, and finally (PLR, DR, VER) = (1, 1, by this method) 0.04), extracts (s, k, p) combinations capable of maximum throughput.
상술한 동작에 의해 추출되는 실제값들은 실제값 저장부(210)에 저장된다.The actual values extracted by the above-described operation are stored in the actual
DNN 모델 생성부(220)는 DNN 학습에 사용되는(즉, DNN 구조의) 계층 개수 및 각 계층에 대한 뉴론의 개수 중 적어도 하나가 다른 m개의 상이한 DNN 모델들을 생성한다. 최적의 모델 파라미터를 찾기 위해, 즉, 최적 DNN 모델을 선택하기 위해, DNN 모델 생성부(220)는 3개, 5개, 그리고 7개의 계층 개수와, 64개, 32개, 16개, 8개 및 4개의 각 계층에 대한 뉴론의 개수를 이용하여 DNN 모델을 생성할 수 있으며, 이 때 사용된 계층 개수와 뉴론의 개수는 일 예로서 이에 한정되지 않는다.The DNN
일반적인 DNN 구조는 하위 계층에서 상위 계층으로 갈수록 차원이 축소(dimensionality reduction)된다. 따라서, DNN 모델 생성부(220)는 계층이 상위로 갈수록 뉴론의 개수가 감소하는 형태로 모델을 구성할 수 있다.In the general DNN structure, the dimensionality is reduced from the lower layer to the upper layer. Accordingly, the DNN
예측값 산출부(230)는 DNN 모델 생성부(220)에서 생성된 m개의 DNN 모델들 별로 네트워크 상태 정보(PLR, DR)와 비디오 인코딩률(VER)을 각각 설정된 테스트 범위 내에서 가변하면서 입력하여, m개의 DNN 모델들마다 (심볼 크기', 심볼 개수', 패킷 크기')(이하, (s', k', p')라 한다)로 이루어진 n개의 예측값들을 산출할 수 있다.The predicted
예측값 산출부(230)가 예측값들을 산출하기 위해 사용하는 네트워크 상태 정보(PLR, DR)와 비디오 인코딩률(VER)의 테스트 범위와 변경 단위는 전자장치(미도시)가 실제값들 추출시 사용한 값과 동일하다.The test range and change unit of the network state information (PLR, DR) and video encoding rate (VER) used by the predicted
DNN 구조의 최적 모델 파라미터를 찾기 위해 전자장치(미도시)에서 추출된 다수의 샘플들(즉, 실제값들)이 실제값 저장부(210)에 저장되고, 예측값 산출부(230)에서 각 DNN 모델 별로 예측값들이 산출되면, DNN 모델 선택부(240)는 m개의 DNN 모델들 별로 산출된 예측값과 저장된 실제값을 비교하여 오차가 가장 적은 최적 DNN 모델을 선택할 수 있다. In order to find the optimal model parameter of the DNN structure, a plurality of samples (ie, actual values) extracted from an electronic device (not shown) are stored in the actual
DNN 모델 선택부(240)는 평균 자승 오차(MSE: Mean Square Error) 방식을 이용하여 심볼 크기(s)에 대한 MSE값, 심볼 개수(k)에 대한 MSE값 및 패킷 크기(p)에 대한 MSE값을 산출하고, 산출된 MSE값들을 더한 결과가 가장 작은 DNN 모델을 최적 DNN 모델로서 선택할 수 있다.The
예를 들어, 예측값 산출부(230)는 실험을 위해 제안 DNN 구조를 Matlab기반 딥러닝 라이브러리인 MatConvNet에 구현한다. DNN 모델 선택부(240)는 제안 방법의 학습을 위해 ADAM 최적화 방법을 사용하고, 총 500번 세대(epoch)만큼 학습을 수행한다. 학습률(learning rate)은 0.0001, 가중치 부식(weight decay)값은 0.0001을 사용하며, 학습 시 미니 배치의 크기는 32로 설정한다. 이러한 설정값은 실험을 위한 일 예로서 이에 한정되지 않는다. For example, the predicted
DNN 모델 선택부(240)는 학습을 위한 비용 함수로서, 예측된 (s', k', p')와 실제값 (s, k, p)간 MSE를 사용하며, 비용함수(J)는 [수학식 1]과 같다.The
[수학식 1]에서 s, k, p가 가질 수 있는 값은 각각 s={16, 32, 64, 128}, k={128, 256, 512}, p={32, 64, 128}이다. 각 파라미터 값의 동적 범위가 다르면, 결과적으로 비용함수를 최적화시 각 파라미터마다 다른 가중값을 갖게 된다. 이를 해결하기 위해 예측값 산출부(230)와 DNN 모델 선택부(240)는 log 스케일로 치환된 s, k, p 값에 대해 학습을 수행하고, 최적 DNN 모델을 선택한다.In Equation 1, the values s, k, and p can have s={16, 32, 64, 128}, k={128, 256, 512}, and p={32, 64, 128}, respectively. . When the dynamic range of each parameter value is different, as a result, when optimizing the cost function, each parameter has a different weighting value. To solve this, the predicted
상술한 동작에 의하면, DNN 모델 선택부(240)는 m개의 DNN 모델들 중 제1DNN 모델에 의해 예측된 n개의 예측값(s1', k1', p1')들과 실제값 저장부(210)에 저장된 n개의 실제값(s, k, p)들에 대해서, s1'과 s의 MSE값, k1'과 k의 MSE값, p1'과 p의 MSE값을 각각 산출하고, 산출된 MSE값들을 더하여 제1DNN 모델에 대한 MSE1을 산출한다. According to the above-described operation, the DNN
이러한 방식으로 DNN 모델 선택부(240)는 m개의 모든 DNN 모델들에 대한 MSE를 산출한다. [표 2]는 DNN 모델 선택부(240)에서 m개의 DNN 모델들에 대한 Test Dataset에서의 MSE 성능을 보여준다.In this way, the
뉴런(neuron) 개수Per layer
Number of neurons
[표 2]를 참조하면, DNN 모델에 사용하는 계층 개수는 5이고, 각 계층 별 뉴런의 개수는 각각 32개, 32개, 16개, 16개인 경우 산출된 MSE가 가장 작음을 알 수 있다. 따라서, DNN 모델 선택부(240)는 영상 품질 및 영상전송효율의 최적화를 수행하기 위해 (32-32-16-16) DNN 구조를 최적 DNN 모델로서 선택할 수 있으며, 선택된 최적 DNN 모델은 FEC 변수 제어부(130)에 적용되어 FEC 매개변수들을 동적으로 산출하는데 사용될 수 있다. (32-32-16-16) DNN 구조는 일 예로서 네트워크 상태에 따라 또는 샘플 개수 등 환경에 따라서 변경될 수 있다.Referring to [Table 2], it can be seen that the number of layers used in the DNN model is 5, and the number of neurons for each layer is 32, 32, 16, and 16, respectively, and the calculated MSE is the smallest. Therefore, the
도 3은 DNN 모델 선택부(240)에 의해 선택된 최적 DNN 모델, 즉, 5개의 완전 연결 신경망 구조를 도시한 도면이다.3 is a diagram illustrating an optimal DNN model selected by the
도 3을 참조하면, 심층신경망의 입력 변수는 OSI 계층 중 네트워크 계층(또는 IP 계층)에 해당하는 패킷 손실률(PLR)과 데이터 레이트(DR), 그리고, 응용 계층에 해당하는 비디오 인코딩률(VER)이고, 출력 변수는 랩터 인코딩 파라미터인 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)임을 알 수 있다.Referring to FIG. 3, input variables of the deep neural network include a packet loss rate (PLR) and a data rate (DR) corresponding to a network layer (or an IP layer) among OSI layers, and a video encoding rate (VER) corresponding to an application layer. It can be seen that the output variables are symbol size (s), number of symbols (k), and packet size (p), which are raptor encoding parameters.
본 발명의 실시 예에 따라 선택된 최적 DNN 모델은 5개의 완전 연결 계층(Fully Connected Layer)으로 구성되며, 비선형성 확보를 위해 각각의 완전 연결 계층의 출력이 ReLU(Rectified Liner Unit)를 통과하도록 한다.The optimal DNN model selected according to an embodiment of the present invention is composed of five Fully Connected Layers, and the output of each Fully Connected layer passes through a ReLU (Rectified Liner Unit) to secure nonlinearity.
ReLU는, 음수 입력값을 0으로, 그렇지 않은 입력값은 그대로 통과시키는 맵핑 함수이다. 숨겨진 계층 1과 계층 2는 32개의 벡터(뉴런)로 구성되고, 숨겨진 계층 3과 계층 4는 16개의 벡터로 구성된다. ReLU를 통과한 i번째 완전 연결 계층은 [수학식 2]와 같이 표현된다.ReLU is a mapping function that allows negative input values to pass through, and non-negative input values to pass through. The hidden layer 1 and layer 2 are composed of 32 vectors (neurons), and the hidden layer 3 and
[수학식 2]에서, 및 은 i번째 완전 연결 계층의 입력 및 출력, 및 는 완전 연결 계층의 모델 파라미터로, 학습을 통해 결정된다. In [Equation 2], And Is the input and output of the i-th fully connected layer, And Is a model parameter of the fully connected layer and is determined through learning.
도 4는 본 발명의 실시 예에 따른 순방향 오류 정정을 이용한 초협대역 영상데이터 전송 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a method for transmitting ultra-narrowband image data using forward error correction according to an embodiment of the present invention.
도 4의 초협대역 영상데이터 전송 방법을 수행하기 위한 전자장치(100)는 도 1 내지 도 3을 참조하여 설명한 초협대역 멀티미디어 전송 장치(100)일 수 있다.The
도 4를 참조하면, 전자장치(100)는 영상데이터를 송수신하는 동안 발생하는 네트워크 상태 정보를 수집 또는 산출한다(S410). 네트워크 상태 정보는 패킷 손실률(PLR), 데이터 레이트(DR), 지연, 대역폭 등 다양한 정보를 포함한다.Referring to FIG. 4, the
전자장치(100)는 영상데이터를 비디오 인코딩률(VER)에 기반하여 인코딩한다(S420).The
전자장치(100)는 S410단계에서 취득되는 네트워크 상태 정보 중 패킷 손실률(PLR)과 데이터 레이트(DR), 그리고, S420단계에서 사용되는 비디오 인코딩률(VER)을 최적 DNN 모델에 입력하여 영상데이터의 FEC 인코딩 시 적용할 FEC 매개변수들을 패킷 손실률(PLR), 데이터 레이트(DR), 비디오 인코딩률(VER)에 따라 동적으로 가변 출력한다(S430). FEC 매개변수들은, 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)를 포함한다.The
전자장치(100)는, S430단계에서 가변 출력되는 FEC 매개변수들을 이용하여 S420단계에서 인코딩된 비디오데이터를 FEC 인코딩하여 S430단계에서 정해진 패킷 크기에 따라 패킷을 생성한다(S440).The
전자장치(100)는 S440단계에서 생성된 패킷을 타겟으로 전송한다(S450).The
도 5는 본 발명의 실시 예에 따른 DNN 모델 선택 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a DNN model selection method according to an embodiment of the present invention.
도 5의 DNN 모델 선택 방법은 도 2를 참조하여 설명한 DNN 모델 선택 장치(200)에 의해 수행될 수 있으므로, 구체적인 동작 설명은 생략한다.Since the DNN model selection method of FIG. 5 may be performed by the DNN
DNN 모델 선택 장치(200)는, 전자장치(미도시)에서 멀티미디어 전송 프로토콜 알고리즘을 이용하여 산출된 (s, k, p)로 이루어진 실제값을 저장한다(S510). S510단계에서, 전자장치(미도시)는, 멀티미디어 전송 프로토콜 알고리즘을 이용하여 네트워크 상태 정보(PLR, DR) 및 비디오 인코딩률(VER)을 각각 설정된 테스트 범위 내에서 가변하면서 산출된, 최대 throughput이 가능한 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)의 조합을 (s, k, p)로 이루어진 실제값으로서 추출한다.The DNN
DNN 모델 선택 장치(200)는 DNN 학습에 사용되는 계층 개수 및 각 계층에 대한 뉴론의 개수 중 적어도 하나가 다른 m개의 상이한 DNN 모델들을 생성한다(S520).The DNN
DNN 모델 선택 장치(200)는 S520단계에서 생성된 m개의 DNN 모델들 별로 네트워크 상태 정보(PLR, DR) 및 비디오 인코딩률(VER)을 각각 설정된 테스트 범위 내에서 가변하면서 입력하여, m개의 DNN 모델들마다 (s', k', p')로 이루어진 n개의 예측값들을 산출한다(S530).The DNN
DNN 모델 선택 장치(200)는 m개의 DNN 모델들 별로 예측값과 실제값을 비교하여 최소 비용 함수를 갖는 최적 DNN 모델을 선택한다(S540).The DNN
한편, 기존 멀티미디어 전송 프로토콜을 이용하는 알고리즘에서는 고정된 패킷 크기로 랩터 FEC를 적용하여 전송제어를 수행한다. 하지만, 패킷 크기가 고정된 상태에서는 전송효율의 한계가 있다. Meanwhile, in the algorithm using the existing multimedia transmission protocol, transmission control is performed by applying a raptor FEC with a fixed packet size. However, there is a limitation in transmission efficiency when the packet size is fixed.
이에 기존 멀티미디어 전송 프로토콜의 단점을 극복하기 위해, 본 발명의 실시 예에서는 DNN 구조를 적용하였으며, 패킷 손실률(PLR)과 데이터 레이트(DR), 비디오 인코딩률(VER)에 따라 적절한 패킷 크기를 선택하여 throughput을 개선할 수 있다. 즉, 본 발명의 실시 예는 동일한 네트워크 환경기준으로 PSNR(Peak Signal-to-Noise Ratio)이 유사한 수준에서 더 많은 영상데이터를 보낼 수 있다. 이는 제한된 네트워크 자원 또는 혼잡한 트래픽 환경에 적용할 경우 영상 전송 효율을 개선시킬 수 있다. Accordingly, in order to overcome the disadvantages of the existing multimedia transmission protocol, the DNN structure is applied in the embodiment of the present invention, and an appropriate packet size is selected according to the packet loss rate (PLR), data rate (DR), and video encoding rate (VER). Throughput can be improved. That is, according to an embodiment of the present invention, more video data may be transmitted at a level similar to a peak signal-to-noise ratio (PSNR) based on the same network environment. This can improve video transmission efficiency when applied to a limited network resource or a congested traffic environment.
상술한 본 발명에 따른 순방향 오류 정정을 이용한 초협대역 영상데이터 전송 장치의 초협대역 영상데이터 전송 방법은 이를 구현하기 위한 명령어들의 프로그램이 유형적으로 구현됨으로써, 컴퓨터를 통해 판독될 수 있는 기록매체에 포함되어 제공될 수도 있음은 통상의 기술자가 쉽게 이해할 수 있다.The ultra-narrow band image data transmission method of the ultra-narrow band image data transmission apparatus using forward error correction according to the present invention is included in a recording medium that can be read through a computer by tangibly implementing a program of instructions for implementing it. It may be readily understood by those skilled in the art.
따라서, 본 발명은 순방향 오류 정정을 이용한 초협대역 영상데이터 전송 방법을 구현하기 위하여 상기 영상데이터 전송 장치를 제어하는 컴퓨터 상에서 수행되는 컴퓨터 판독 가능한 기록매체에 저장된 프로그램을 함께 제공한다.Accordingly, the present invention provides a program stored in a computer-readable recording medium executed on a computer controlling the image data transmission device in order to implement a method for transmitting ultra narrow band image data using forward error correction.
100: 초협대역 멀티미디어 전송 장치
110: 네트워크 정보 제공부
120: 비디오 인코더
130: FEC 변수 제어부
140: FEC 인코딩 및 패킷 생성부
200: DNN 모델 선택 장치
210: 실제값 저장부
220: DNN 모델 생성부
230: 예측값 산출부
240: DNN 모델 선택부100: ultra-narrowband multimedia transmission device
110: network information providing unit
120: video encoder
130: FEC variable control
140: FEC encoding and packet generator
200: DNN model selector
210: actual value storage unit
220: DNN model generator
230: predicted value calculation unit
240: DNN model selector
Claims (2)
(A) 전자장치가, 영상데이터를 송수신하는 동안 발생하는 네트워크 상태 정보를 수집 또는 산출하는 단계;
(B) 상기 전자장치가, 상기 영상데이터를 비디오 인코딩률에 기반하여 인코딩하는 단계;
(C) 상기 전자장치가, 상기 (A) 단계에서 제공되는 네트워크 상태 정보를 최적 DNN 모델에 입력하여 상기 영상데이터의 FEC 인코딩 시 적용할 FEC 매개변수들을 상기 네트워크 상태 정보에 따라 동적으로 가변 출력하는 단계;
(D) 상기 전자장치가, 상기 (C) 단계에서 가변 출력되는 FEC 매개변수들을 이용하여 상기 인코딩된 비디오데이터를 FEC 인코딩하여 패킷을 생성하는 단계; 및
(E) 상기 전자장치가, 상기 (D) 단계에서 생성된 패킷을 전송하는 단계;를 포함하고,
상기 (B) 단계에서,
상기 전자장치는, 상기 인코딩 시 적용된 비디오 인코딩률 정보를 제공하고,
상기 (C) 단계에서,
상기 전자장치는, 상기 (B) 단계로부터 입력되는 상기 비디오 인코딩률 정보를 상기 네트워크 상태 정보와 함께 상기 최적 DNN 모델로 입력하여 상기 FEC 매개변수들을 상기 네트워크 상태 정보와 상기 비디오 인코딩률 정보에 따라 가변 출력하며,
상기 (A) 단계 이전에,
(F) DNN 모델 선택 장치가, 멀티미디어 전송 프로토콜 알고리즘을 이용하여 상기 네트워크 상태 정보 및 상기 비디오 인코딩률을 각각 설정된 테스트 범위 내에서 가변하면서 산출된, 최대 throughput이 가능한 심볼 크기(s), 심볼 개수(k) 및 패킷 크기(p)의 조합을 (심볼 크기, 심볼 개수, 패킷 크기)로 이루어진 실제값으로서 저장하는 단계;
(G) 상기 DNN 모델 선택 장치가, DNN 학습에 사용되는 계층 개수 및 각 계층에 대한 뉴론의 개수 중 적어도 하나가 다른 m개의 상이한 DNN 모델들을 생성하는 단계;
(H) 상기 DNN 모델 선택 장치가, 상기 m개의 DNN 모델들 별로 상기 네트워크 상태 정보 및 상기 비디오 인코딩률을 각각 설정된 테스트 범위 내에서 가변하면서 입력하여, 상기 m개의 DNN 모델들마다 n개의 (심볼 크기', 심볼 개수', 패킷 크기')로 이루어진 예측값을 산출하는 단계; 및
(I) 상기 DNN 모델 선택 장치가, 상기 m개의 DNN 모델들 별로 상기 예측값과 상기 실제값을 비교하여 상기 최적 DNN 모델을 선택하는 단계;를 포함하는 것을 특징으로 하는 순방향 오류 정정을 이용한 감시정찰기의 초협대역 멀티미디어 전송 방법.In a method of transmitting ultra-narrowband multimedia using Forward Error Correction (FEC),
(A) the electronic device, collecting or calculating network status information that occurs while transmitting and receiving video data;
(B) the electronic device encoding the video data based on a video encoding rate;
(C) the electronic device dynamically inputs the network state information provided in step (A) into an optimal DNN model and dynamically outputs FEC parameters to be applied when encoding FEC of the image data according to the network state information. step;
(D) generating, by the electronic device, a packet by FEC encoding the encoded video data using FEC parameters that are variablely output in the step (C); And
(E) the electronic device, transmitting the packet generated in step (D); includes,
In step (B),
The electronic device provides video encoding rate information applied during the encoding,
In step (C),
The electronic device inputs the video encoding rate information input from the step (B) together with the network state information into the optimal DNN model to change the FEC parameters according to the network state information and the video encoding rate information. Output,
Before step (A),
(F) The symbol size (s) and the number of symbols (maximum throughput) that the DNN model selection device calculates while varying the network state information and the video encoding rate within a set test range using a multimedia transmission protocol algorithm ( storing the combination of k) and packet size (p) as an actual value consisting of (symbol size, number of symbols, packet size);
(G) generating, by the DNN model selection apparatus, m different DNN models in which at least one of the number of layers used for DNN learning and the number of neurons for each layer is different;
(H) The DNN model selection device inputs the network state information and the video encoding rate for each of the m DNN models while varying within a set test range, and then generates n (symbol sizes) for each of the m DNN models. Calculating a prediction value consisting of', the number of symbols' and the packet size'); And
(I) the DNN model selection device, comparing the predicted value and the actual value for each of the m DNN models to select the optimal DNN model; Ultra narrowband multimedia transmission method.
상기 네트워크 상태 정보는, 패킷 손실률(PLR: Packet Loss Rate) 및 데이터 레이트(Data Rate)를 포함하고,
상기 FEC 매개변수들은, 심볼 크기(s, symbol size), 심볼 개수(k, symbol number) 및 패킷 크기(p, packet size)를 포함하고,
상기 (C) 단계는,
상기 전자장치가, 상기 패킷 손실률, 데이터 레이트에 따라 동적으로 패킷 크기를 산출하고,
상기 (D) 단계는,
상기 전자장치가, 상기 (C) 단계에서 동적으로 산출된 패킷 크기에 기반하여 상기 인코딩된 비디오데이터를 FEC 인코딩한 후 패킷을 생성하는 것을 특징으로 하는 순방향 오류 정정을 이용한 초협대역 멀티미디어 전송 방법.According to claim 1,
The network status information includes a packet loss rate (PLR) and a data rate,
The FEC parameters include symbol size (s, symbol size), symbol number (k, symbol number), and packet size (p, packet size),
Step (C) is,
The electronic device dynamically calculates a packet size according to the packet loss rate and data rate,
Step (D) is,
The electronic device generates a packet after FEC encoding the encoded video data based on the packet size dynamically calculated in the step (C), and then generates a packet in the ultra-narrowband using forward error correction.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190032232A KR20200075709A (en) | 2019-03-21 | 2019-03-21 | Method for transporting multimedia using FEC |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190032232A KR20200075709A (en) | 2019-03-21 | 2019-03-21 | Method for transporting multimedia using FEC |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180157028A Division KR102006292B1 (en) | 2018-12-07 | 2018-12-07 | Apparatus and method for transporting multimedia using FEC, and DNN model selecting apparatus for determining FEC parameter |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200075709A true KR20200075709A (en) | 2020-06-26 |
Family
ID=71136952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190032232A KR20200075709A (en) | 2019-03-21 | 2019-03-21 | Method for transporting multimedia using FEC |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20200075709A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180052651A (en) | 2015-09-03 | 2018-05-18 | 미디어텍 인크. | Method and apparatus for neural network-based processing in video coding |
-
2019
- 2019-03-21 KR KR1020190032232A patent/KR20200075709A/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180052651A (en) | 2015-09-03 | 2018-05-18 | 미디어텍 인크. | Method and apparatus for neural network-based processing in video coding |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111431941B (en) | Real-time video code rate self-adaption method based on mobile edge calculation | |
WO2020239126A1 (en) | Methods and systems for relaying feature-driven communications | |
WO2019184836A1 (en) | Data analysis device, and multi-model co-decision system and method | |
WO2021026944A1 (en) | Adaptive transmission method for industrial wireless streaming media employing particle swarm and neural network | |
CN113242469A (en) | Self-adaptive video transmission configuration method and system | |
KR102143593B1 (en) | Method for detecting anomaly of Internet of Things device based on autoencoder and system thereof | |
CN112911608B (en) | Large-scale access method for edge-oriented intelligent network | |
KR102006292B1 (en) | Apparatus and method for transporting multimedia using FEC, and DNN model selecting apparatus for determining FEC parameter | |
CN108600002B (en) | Mobile edge calculation and distribution decision method based on semi-supervised learning | |
Mu et al. | AMIS: Edge computing based adaptive mobile video streaming | |
CN114039870A (en) | Deep learning-based real-time bandwidth prediction method for video stream application in cellular network | |
Merluzzi et al. | Energy-efficient classification at the wireless edge with reliability guarantees | |
Behravesh et al. | Machine learning at the mobile edge: The case of dynamic adaptive streaming over http (dash) | |
US20130243082A1 (en) | Rate optimisation for scalable video transmission | |
KR20200075709A (en) | Method for transporting multimedia using FEC | |
Araújo et al. | A hybrid energy-aware video bitrate adaptation algorithm for mobile networks | |
KR20200075710A (en) | DNN model selecting apparatus for determining FEC parameter | |
Acimovic et al. | Efficient distributed multiresolution processing for data gathering in sensor networks | |
WO2023011371A1 (en) | Method and system for configuring a threshold value for a handover parameter of a wireless communication system | |
Gong et al. | Adaptive bitrate video semantic communication over wireless networks | |
Smirnov et al. | Real-time data transmission optimization on 5G remote-controlled units using deep reinforcement learning | |
Sivakumar et al. | Tree Social Relations Optimization-Based ReLU-BiLSTM Framework for Improving Video Quality in Video Compression | |
WO2021231301A1 (en) | Scalable active learning using one-shot uncertainty estimation in bayesian neural networks | |
CN116491115A (en) | Rate controlled machine learning model with feedback control for video coding | |
KR101976324B1 (en) | Image processing device and method of processing image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |