[go: up one dir, main page]

KR20170075127A - Method of simplified channel coding for processing packet loss recovery - Google Patents

Method of simplified channel coding for processing packet loss recovery Download PDF

Info

Publication number
KR20170075127A
KR20170075127A KR1020150184147A KR20150184147A KR20170075127A KR 20170075127 A KR20170075127 A KR 20170075127A KR 1020150184147 A KR1020150184147 A KR 1020150184147A KR 20150184147 A KR20150184147 A KR 20150184147A KR 20170075127 A KR20170075127 A KR 20170075127A
Authority
KR
South Korea
Prior art keywords
matrix
generating
hdpc
elements
symbol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
KR1020150184147A
Other languages
Korean (ko)
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 KR1020150184147A priority Critical patent/KR20170075127A/en
Publication of KR20170075127A publication Critical patent/KR20170075127A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 영상 처리에 관한 것으로, 상세하게는, 인터넷에서 패킷손실이 발생하는 경우에도 영상회의와 같은 미디어 통신 서비스품질을 유지할 수 있는 경량화된 데이터 복구 기술에 관한 것이다. 본 발명의 일 실시예에 따르면, 제1 시드값을 이용하여 K x L 요소로 구성된 LT(Luby Transform) 행렬을 생성하는 단계-여기서, 소정의 확률에 따라 상기 K x L 요소 중 적어도 일부가 1임-, 제2 시드값을 이용하여 H x K 요소로 구성된 HDPC(High Density Parity Check) 행렬을 생성하는 단계, H x H 요소로 구성된 단위 행렬을 생성하는 단계 및 상기 LT 행렬, 상기 HDPC 행렬, 및 상기 단위 행렬을 결합하여 결합 행렬을 생성하는 단계를 포함하는 패킷손실 복구처리를 위한 경량화된 채널코딩 방법이 제공된다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to image processing, and more particularly, to a lightweight data recovery technique capable of maintaining media communication service quality such as video conferencing even when packet loss occurs on the Internet. According to an embodiment of the present invention, there is provided a method of generating a LT (Luby Transform) matrix composed of K x L elements using a first seed value, wherein at least some of the K x L elements Generating an HDPC (High Density Parity Check) matrix composed of H x K elements using a second seed value, generating an identity matrix composed of H x H elements, and generating the LT matrix, the HDPC matrix, And combining the unitary matrices to generate a combining matrix. The weighted channel coding method for packet loss recovery processing is provided.

Description

패킷손실 복구처리를 위한 경량화된 채널코딩 방법{Method of simplified channel coding for processing packet loss recovery} [0001] The present invention relates to a method and apparatus for packet loss recovery,

본 발명은 영상 처리에 관한 것으로, 상세하게는, 인터넷에서 패킷손실이 발생하는 경우에도 영상회의와 같은 미디어 통신 서비스품질을 유지할 수 있는 경량화된 데이터 복구 기술에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to image processing, and more particularly, to a lightweight data recovery technique capable of maintaining media communication service quality such as video conferencing even when packet loss occurs on the Internet.

현재 파일 전송이나 비디오 스트리밍과 같은 데이터 전송을 위해서 채널 코딩 기술이 사용되고 있다. RTP(Real-time Transport Protocol) 패킷의 경우 재전송을 사용하지 않기에 ALFEC(Application Layer Forward Error Correction)를 사용함으로써 손실된 패킷을 복원할 수 있는 기술이 사용되고 있다. 특히 Raptor code와 RaptorQ code와 같은 fountain code 기법이 사용됨으로써 필요한 만큼의 overhead 패킷을 만들 수 있다. Currently, channel coding techniques are used for data transmission such as file transfer or video streaming. In the case of Real-time Transport Protocol (RTP) packets, a technology that can recover lost packets by using ALFEC (Application Layer Forward Error Correction) is used because it does not use retransmission. In particular, fountain code techniques such as Raptor code and RaptorQ code can be used to create as many overhead packets as necessary.

도 1은 RaptorQ 인코딩 및 디코딩 절차를 예시적으로 도시한 도면이고, 도 2는 RaptorQ 코드의 LDPC 및 HDPC의 심볼 개수를 나타낸 도면이다.FIG. 1 is a diagram illustrating a RaptorQ encoding and decoding procedure, and FIG. 2 is a diagram illustrating the number of LDPC and HDPC symbols in a RaptorQ code.

도 1을 참조하면, RaptorQ code 기술은 LDPC(Low Density Parity Check)와 HDPC(High Density Parity Check) 그리고 LT code(Luby Transform Code)를 사용하여 손실된 패킷의 복구 성공률을 높였다. 여기서, LDPC와 HDPC는 pre-code에 해당되며 LT code는 fountain code로써 추가 심볼을 생성시 사용된다. LDPC, HDPC, LT code의 결합으로 RaptorQ code의 행렬이 구성되고 encoding/decoding 시 이 행렬의 역을 만드는 과정이 요구된다. Matrix의 역 과정은 RaptorQ code를 systematic code로 사용하기 위한 것으로 systematic code란 output 심볼 안에 input 심볼이 원형 그대로 있는 형태를 의미한다. RaptorQ code의 행렬 크기가 크면 클수록 행렬 역에 필요한 계산량이 증가하게 되고 LT code의 degree가 높을수록 심볼 생성시 계산량이 증가하게 된다. 여기서, Degree란 LT 행렬을 구성하는 벡터에서 1의 개수를 의미한다. 따라서 전체 matrix의 크기가 작으면서 LT code의 degree가 작을수록 RaptorQ code의 계산량을 줄이는 방법이라고 할 수 있다.Referring to FIG. 1, RaptorQ code technology improves the recovery rate of lost packets by using LDPC (Low Density Parity Check), HDPC (High Density Parity Check) and LT code (Luby Transform Code). Here, LDPC and HDPC correspond to pre-code and LT code is used as fountain code to generate additional symbols. A combination of LDPC, HDPC, and LT codes is required to construct a matrix of RaptorQ codes and to reverse the matrix during encoding / decoding. The inverse procedure of Matrix is to use RaptorQ code as systematic code. Systematic code means that the input symbol remains in the output symbol in its original form. The larger the matrix size of the RaptorQ code is, the larger the amount of computation required in the matrix is, and the higher the LT code degree is, the more the computational complexity is increased. Here, "Degree" means the number of 1s in the vector constituting the LT matrix. Therefore, it can be said that the smaller the degree of the LT code is, the smaller the calculation amount of RaptorQ code is while the whole matrix is small.

현재 기술인 RaptorQ code는 심볼의 개수가 증가할수록 LDPC와 HDPC 행렬의 크기도 같이 증가한다. 도 2를 참고하면, HDPC의 크기는 변화폭이 매우 작지만 LDPC의 크기는 HDPC에 비해서 증가 폭이 크다. 또한 LDPC 행렬은 전체 행렬에서 차지하는 비율은 심볼의 개수가 작을 때 더 높다.The current RaptorQ code increases the size of LDPC and HDPC matrices as the number of symbols increases. Referring to FIG. 2, although the size of the HDPC is very small, the size of the LDPC is larger than that of the HDPC. Also, the ratio of the LDPC matrix to the entire matrix is higher when the number of symbols is small.

본 발명은 스마트폰 등 제한적인 계산이 가능한 시스템에서 HD급(720p)급 이상의 고품질 실시간 영상회의나 작은 심볼 개수를 사용하는 응용이 가능하도록 부호화와 복호화 처리지연을 낮추면서도 현재 대표기술인 RaptorQ code와 유사한 패킷손실 복구 성능을 제공하는 데 그 목적이 있다.The present invention reduces coding and decoding processing delay to enable application using high-quality real-time video conferencing or a small number of symbols over HD class (720p) or higher in a system capable of limited calculation such as a smart phone, and is similar to RaptorQ code The goal is to provide packet loss recovery performance.

본 발명의 일 실시 예에 따르면, 제1 시드값을 이용하여 K x L 요소로 구성된 LT(Luby Transform) 행렬을 생성하는 단계-여기서, 소정의 확률에 따라 상기 K x L 요소 중 적어도 일부가 1임-, 제2 시드값을 이용하여 H x K 요소로 구성된 HDPC(High Density Parity Check) 행렬을 생성하는 단계, H x H 요소로 구성된 단위 행렬을 생성하는 단계 및 상기 LT 행렬, 상기 HDPC 행렬, 및 상기 단위 행렬을 결합하여 결합 행렬을 생성하는 단계를 포함하는 패킷손실 복구처리를 위한 경량화된 채널코딩 방법이 제공된다.According to an embodiment of the present invention, there is provided a method of generating a LT (Luby Transform) matrix composed of K x L elements using a first seed value, wherein at least some of the K x L elements Generating an HDPC (High Density Parity Check) matrix composed of H x K elements using a second seed value, generating an identity matrix composed of H x H elements, and generating the LT matrix, the HDPC matrix, And combining the unitary matrices to generate a combining matrix. The weighted channel coding method for packet loss recovery processing is provided.

본 발명의 다른 실시 예에 따르면, 수신한 심볼의 ESI(Encoding Symbol ID) 값으로 원본 심볼과 추가 심볼을 구분하고, 원본 심볼 중에서 손실된 ESI 번호를 저장하는 단계, 상기 수신한 심볼 중에서 손실된 심볼이 있을 경우 상기 수신한 심볼의 ESI를 이용하여 LT 행렬을 포함하는 결합 행렬 A를 생성하는 단계, 상기 결합 행렬 A가 역이 가능하면, Intermediate 심볼을 생성하는 단계, 저장한 손실된 ESI번호로 확률 P=(log Lp+d)/Lp를 이용하여 1 x L 벡터를 생성하고, 생성된 벡터와 상기 intermediate 심볼을 사용하여 손실된 심볼을 복구하는 단계를 포함하는 패킷손실 복구처리를 위한 경량화된 채널코딩 방법이 제공된다.According to another embodiment of the present invention, there is provided a method for transmitting an ESI symbol, comprising the steps of: distinguishing an original symbol and an additional symbol with an Encoding Symbol ID (ESI) value of a received symbol; storing a lost ESI number among original symbols; Generating an association matrix A including an LT matrix using the ESI of the received symbol if the association matrix A is inverse; generating an intermediate symbol if the association matrix A is reversible; Generating a 1 x L vector using P = (log Lp + d) / Lp, and recovering the lost symbol using the generated vector and the intermediate symbol. A coding method is provided.

일 실시 예에서, LDPC를 제거하고 새로운 LT 행렬을 사용하여 전체 행렬의 크기가 감소하였으나, RaptorQ code 수준의 복구 성능을 유지하였다. 따라서 심볼의 개수가 작은 경우, 예를 들어, 약 500 이하에서는 LT code의 평균 degree도 RaptorQ code보다 작게 구현할 수 있다.In one embodiment, the size of the entire matrix is reduced by removing the LDPC and using the new LT matrix, but the RaptorQ code level recovery performance is maintained. Therefore, when the number of symbols is small, for example, below about 500, the average degree of the LT code can be smaller than RaptorQ code.

일 실시 예에서, RaptorQ code에서 사용하는 행렬 구성 중 LDPC code를 제거하고 LT code의 degree 분포를 변경함으로써 전체 행렬의 크기가 줄어들어 intermediate 심볼 생성시 계산량이 감소하였다. 여기서, 제안한 LT code의 평균 degree는 평균적으로 log(K + H) + 2 의 값을 보인다. 평균 degree는 원본 심볼의 개수 K가, 예를 들어, 약 500 보다 작은 경우 RaptorQ code의 평균 degree보다 작은 경향을 보인다. 평균 degree가 작으면 추가 심볼 생성/손실 심볼 복구시 계산량 측면에서 더 효율적이다.In one embodiment, the LDPC code is removed from the matrix configuration used in the RaptorQ code, and the degree distribution of the LT code is changed. As a result, the size of the entire matrix is reduced and the amount of calculation is reduced when the intermediate symbol is generated. Here, the average degree of the proposed LT code shows an average value of log (K + H) + 2. The average degree tends to be smaller than the average degree of RaptorQ code when the number K of original symbols is less than about 500, for example. If the average degree is small, it is more efficient in terms of calculation amount in recovery of additional symbol generation / loss symbols.

본 발명에 따르면, 스마트폰 등 제한적인 계산이 가능한 시스템에서 HD급 이상의 고품질 실시간 영상회의나 작은 심볼 개수를 사용하는 응용이 가능하게 되었다.According to the present invention, high-quality real-time video conferencing of higher than HD grade or applications using a small number of symbols can be performed in a system capable of limited calculation such as a smart phone.

이하에서, 본 발명은 첨부된 도면에 도시된 실시 예를 참조하여 설명된다. 이해를 돕기 위해, 첨부된 전체 도면에 걸쳐, 동일한 구성 요소에는 동일한 도면 부호가 할당되었다. 첨부된 도면에 도시된 구성은 본 발명을 설명하기 위해 예시적으로 구현된 실시 예에 불과하며, 본 발명의 범위를 이에 한정하기 위한 것은 아니다.
도 1은 RaptorQ 인코딩 및 디코딩 절차를 예시적으로 도시한 도면이다.
도 2는 RaptorQ 코드의 LDPC 및 HDPC의 심볼 개수를 나타낸 도면이다.
도 3은 본 발명의 일 실시 예에 따른 결합 행렬(combined matrix) A의 구성을 예시적으로 도시한 도면이다.
도 4는 도 3에 도시된 결합 행렬 A의 생성방법을 예시적으로 도시한 흐름도이다.
도 5는 인코더에서 추가 심볼 생성 과정을 예시적으로 도시한 흐름도이다.
도 6은 수신측에서 손실된 심볼을 복구하는 과정을 예시적으로 도시한 흐름도이다.
Hereinafter, the present invention will be described with reference to the embodiments shown in the accompanying drawings. For the sake of clarity, throughout the accompanying drawings, like elements have been assigned the same reference numerals. It is to be understood that the present invention is not limited to the embodiments illustrated in the accompanying drawings, but may be embodied in many other specific forms without departing from the spirit or essential characteristics thereof.
Figure 1 is an exemplary diagram illustrating a RaptorQ encoding and decoding procedure.
2 is a diagram showing the number of symbols of LDPC and HDPC of the RaptorQ code.
FIG. 3 is an exemplary diagram illustrating a configuration of a combined matrix A according to an embodiment of the present invention.
4 is a flowchart illustrating an exemplary method of generating the combining matrix A shown in FIG.
5 is a flowchart illustrating an exemplary procedure for generating an additional symbol in an encoder.
FIG. 6 is a flowchart illustrating a process of recovering a lost symbol on a receiving side.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the present invention has been described in connection with certain exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and similarities. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

도 3은 본 발명의 일 실시 예에 따른 결합 행렬(combined matrix) A의 구성을 예시적으로 도시한 도면이다. FIG. 3 is an exemplary diagram illustrating a configuration of a combined matrix A according to an embodiment of the present invention.

도 3을 참조하면, 결합 행렬 A는 H x K 크기의 HDPC 행렬(101), H x H 크기의 단위 행렬 IH(102), 및 K x L 의 LT 행렬(103)로 구성된다. HDPC 행렬(101)은 1 ~ 255 사이의 수로 구성되어 있는 random matrix이며 행렬 연산시 Galois Field 256 (GF256) 위에서 동작한다. LT 행렬(103)은 1의 개수가 적게 분포하는 구조로 되어 있으며 1의 분포는, 예를 들어, 확률 수식 P=(log Lp+d)/Lp에 따라 결정될 수 있다. 따라서 LT 행렬(103)의 평균 degree는 log L+d가 될 수 있다. 여기서, L은 원본 심볼의 개수 K 와 HDPC 심볼의 개수 H의 합이고(L = K + H), d는 0보다 크거나 같은 상수이다. 결합 행렬 A의 역이 가능할 확률은 K x L LT 행렬(GF2)의 rank가 K일 확률과 H x H 단위 행렬 IH(GF256)의 rank가 H일 확률의 곱으로 표현될 수 있다. 본 발명에 따른 일 실시 예에서, 심볼의 개수가 1000 이하일 때 d 값은 2로 설정하고, H값은 10으로 설정할 때, RaptorQ code와 유사한 손실 복구 확률을 얻을 수 있다.Referring to FIG. 3, the combining matrix A is composed of an HDPC matrix 101 of H x K size, a unit matrix I H 102 of H x H size, and an LT matrix 103 of K x L. The HDPC matrix 101 is a random matrix composed of numbers between 1 and 255, and operates on Galois Field 256 (GF256) in matrix operation. The LT matrix 103 has a structure in which the number of 1's is less distributed, and the distribution of 1 can be determined, for example, according to the probability equation P = (log Lp + d) / Lp. Thus, the average degree of the LT matrix 103 may be logL + d. Where L is the sum of the number K of original symbols and the number H of HDPC symbols (L = K + H), and d is a constant equal to or greater than zero. The probability that the inverse of the combining matrix A is possible can be expressed as a product of the probability that the rank of the K x L LT matrix GF2 is K and the rank of the H x H unit matrix I H (GF256) is H. In one embodiment of the present invention, when the number of symbols is 1000 or less, the d value is set to 2, and when the H value is set to 10, a loss recovery probability similar to RaptorQ code can be obtained.

도 4는 도 3에 도시된 결합 행렬 A의 생성방법을 예시적으로 도시한 흐름도이다. 4 is a flowchart illustrating an exemplary method of generating the combining matrix A shown in FIG.

도 4를 참조하면, LT 행렬의 생성과정은 다음과 같다. 단계 401에서, 시드값이 설정되고, 단계 402에서, 예를 들어, 확률 P=(log Lp+d)/Lp를 이용하여 1 x L 벡터가 생성될 수 있다. 이때 확률 P는 1 x L 벡터의 각 요소가 1이 될 확률을 의미한다. 이후 단계 403에서, LT 행렬의 row 개수가 K보다 작은지 판단하고, 작으면 단계 401 및 402 단계를 반복하여 LT 행렬을 생성한다.Referring to FIG. 4, the process of generating the LT matrix is as follows. In step 401, a seed value is set, and in step 402, a 1 x L vector may be generated using, for example, the probability P = (log Lp + d) / Lp. In this case, the probability P means the probability that each element of the 1 x L vector becomes 1. In step 403, it is determined whether the number of rows in the LT matrix is smaller than K. If the number of rows in the LT matrix is smaller than K, the steps 401 and 402 are repeated to generate the LT matrix.

한편, HDPC 행렬의 생성과정은 다음과 같다. 단계 405에서, 새로운 시드값이 설정되고, 단계 406에서, 1 x K 벡터가 생성된다. 여기서, 1 x K 벡터의 각 요소는 1~255범위의 값을 랜덤하게 갖도록 생성된다. 단계 406에서, 생성된 1 x K 벡터는 HDPC 행렬x에 추가된다. 단계 407에서, HDPC 행렬의 row 개수가 H 보다 작은지 판단하고, 작으면 HDPC 행렬의 row의 개수가 H개가 될 때까지 단계 405 및 406을 반복한다. The generation process of the HDPC matrix is as follows. In step 405, a new seed value is set, and in step 406, a 1 x K vector is generated. Here, each element of the 1 x K vector is generated to have a value ranging from 1 to 255 randomly. In step 406, the generated 1 x K vector is added to the HDPC matrix x. In step 407, it is determined whether the number of rows in the HDPC matrix is smaller than H. If the number of rows in the HDPC matrix is smaller than H, the steps 405 and 406 are repeated until the number of rows in the HDPC matrix becomes H.

또한, 단계 408에서, H x H 크기의 단위 행렬 IH를 생성한다. Also, at step 408, an identity matrix I H of size H x H is generated.

단계 404에서, 생성된 LT 행렬, HDPC 행렬, 및 단위 행렬 IH를 도 3과 같은 형태로 결합하여 결합 행렬 A를 생성한다. 결합 행렬 A는 L x L 행렬이 되며 송신측에서 사용시 결합 행렬 A의 rank가 L이 되어야 사용할 수 있다. 만약 결합 행렬 A의 rank가 L이 아니라면 다른 시드값을 사용하여 결합 행렬 A를 구성해야 한다. In step 404, the generated LT matrix, HDPC matrix, and unit matrix I H are combined in the form as shown in FIG. 3 to generate a combining matrix A. The join matrix A becomes an L x L matrix and can be used when the rank of the join matrix A is L in the transmitter. If the rank of the join matrix A is not L, then the join matrix A must be constructed using different seed values.

도 5는 인코더에서 추가 심볼 생성 과정을 예시적으로 도시한 흐름도이다. 5 is a flowchart illustrating an exemplary procedure for generating an additional symbol in an encoder.

도 5를 참조하면, 단계 501에서, 추가 심볼 생성시 단계 401에서 사용된 K_i 보다 1증가된 번호로 시드 값을 시작한다. 단계 502에서, 단계 402와 같은 확률로 K+i 번째 벡터를 생성한다. 단계 503에서, 단계 502에서 생성된 벡터와 단계 506의 intermediate 심볼을 입력으로 받아 추가 심볼을 생성한다. 단계 505에서, 추가 심볼이 더 필요한지 판단하고, 필요한 경우 단계 501로 돌아가며, 더 이상 필요하지 않을 시 종료한다. 추가 심볼을 생성하는 방법은 RaptorQ code와 동일하며 C x R_v 로 계산할 수 있다. 여기서, R_v는 Redundent 심볼 벡터이며, C는 intermediate 심볼이다.Referring to FIG. 5, in step 501, a seed value is incremented by one more than K_i used in step 401 when generating an additional symbol. In step 502, a K + i-th vector is generated with the same probability as in step 402. In step 503, the vector generated in step 502 and the intermediate symbol in step 506 are input to generate additional symbols. At step 505, it is determined if more symbols are needed, and if necessary, returns to step 501 and ends when it is no longer needed. The method of generating additional symbols is the same as RaptorQ code and can be calculated as C x R_v. Here, R_v is a redundant symbol vector, and C is an intermediate symbol.

도 6은 수신측에서 손실된 심볼을 복구하는 과정을 예시적으로 도시한 흐름도이다. FIG. 6 is a flowchart illustrating a process of recovering a lost symbol on a receiving side.

도 6을 참조하면, 단계 601에서, 수신한 심볼의 ESI(Encoding Symbol ID) 값으로 원본 심볼인지 추가 심볼인지를 구분하고, 원본 심볼 중에서 손실된 ESI 번호를 저장한다. 여기서, ESI는 송수신 목적의 원본 블록에 연관된 인코딩 시스템을 고유하게 식별하기 위한 정보로서, ESI는 RFC6330에서 사용되는 방법과 동일하다. Referring to FIG. 6, in step 601, an ESI (Encoding Symbol ID) value of a received symbol is distinguished from an original symbol or an additional symbol, and the lost ESI number is stored in the original symbol. Here, ESI is information for uniquely identifying an encoding system associated with a source block for transmission / reception, and ESI is the same as that used in RFC6330.

단계 602에서, 수신한 전체 심볼의 개수 Rcount가 K 보다 크거나 같은지를 판단한다. 전체 심볼의 개수 Rcount가 K보다 크면 단계 603으로 진행하고, 작으면 단계 401로 되돌아간다.In step 602, it is determined whether the number of received total symbols R count is greater than or equal to K. [ If the total number of symbols R count is greater than K, the process proceeds to step 603; otherwise, the process returns to step 401.

단계 603에서, 수신한 심볼 중에서 원본 심볼의 손실 유무를 판단하고 손실이 없으면 복구할 심볼이 없기 때문에 이 과정을 종료한다. 손실된 심볼이 있을 경우 받은 심볼의 ESI를 이용하여 LT 행렬을 생성하고 도 3과 같은 형태의 결합 행렬 A를 생성한다. 이때 HDPC 행렬과 단위 행렬은 도 4에서 생성한 행렬과 같다.In step 603, it is determined whether or not the original symbol is lost among the received symbols. If there is no loss, there is no symbol to be recovered. If there is a lost symbol, the LT matrix is generated using the ESI of the received symbol and a combining matrix A of the type shown in FIG. 3 is generated. At this time, the HDPC matrix and the unit matrix are the same as the matrix generated in FIG.

단계 605에서, 생성한 결합 행렬 A가 역이 가능한지 판단한다. 결합 행렬 A가 역이 가능하지 않다면 단계 601로 되돌아가서 추가 심볼을 받는다. In step 605, it is determined whether or not the generated combining matrix A can be inverted. If the combining matrix A is not reversible, go back to step 601 to receive additional symbols.

단계 607에서, Intermediate 심볼을 생성하고, 단계 606에서, 단계 601에서 저장한 손실된 ESI번호로 단계 402에서, 예를 들어, 확률 P=(log Lp+d)/Lp를 이용하여 1 x L 벡터를 생성하고, 생성된 벡터와 intermediate 심볼을 사용하여 손실된 심볼을 복구할 수 있다.In step 607, an Intermediate symbol is generated, and in step 606, the lost ESI number stored in step 601 is multiplied by a 1 x L vector using the probability P = (log Lp + d) / Lp, , And recover the lost symbol using the generated vector and the intermediate symbol.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .

Claims (1)

제1 시드값을 이용하여 K x L 요소로 구성된 LT(Luby Transform) 행렬을 생성하는 단계-여기서, 소정의 확률에 따라 상기 K x L 요소 중 적어도 일부가 1임-;
제2 시드값을 이용하여 H x K 요소로 구성된 HDPC(High Density Parity Check) 행렬을 생성하는 단계;
H x H 요소로 구성된 단위 행렬을 생성하는 단계; 및
상기 LT 행렬, 상기 HDPC 행렬, 및 상기 단위 행렬을 결합하여 결합 행렬을 생성하는 단계를 포함하는 패킷손실 복구처리를 위한 경량화된 채널코딩 방법.
Generating a LT (Luby Transform) matrix consisting of K x L elements using a first seed value, wherein at least some of the K x L elements are 1 according to a predetermined probability;
Generating an HDPC (High Density Parity Check) matrix composed of H x K elements using the second seed value;
Generating a unit matrix composed of H x H elements; And
And combining the LT matrix, the HDPC matrix, and the unitary matrix to generate a combining matrix.
KR1020150184147A 2015-12-22 2015-12-22 Method of simplified channel coding for processing packet loss recovery Withdrawn KR20170075127A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150184147A KR20170075127A (en) 2015-12-22 2015-12-22 Method of simplified channel coding for processing packet loss recovery

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150184147A KR20170075127A (en) 2015-12-22 2015-12-22 Method of simplified channel coding for processing packet loss recovery

Publications (1)

Publication Number Publication Date
KR20170075127A true KR20170075127A (en) 2017-07-03

Family

ID=59358060

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150184147A Withdrawn KR20170075127A (en) 2015-12-22 2015-12-22 Method of simplified channel coding for processing packet loss recovery

Country Status (1)

Country Link
KR (1) KR20170075127A (en)

Similar Documents

Publication Publication Date Title
US12101182B2 (en) Receiving method with error correction coding with generated dummy data
KR102133930B1 (en) Apparatus and method for transmitting and receiving data packet
JP5485302B2 (en) File download and streaming system
KR101143282B1 (en) Systematic Encoding and Decoding of Chain Reaction Codes
US10476528B2 (en) Data packet processing method and device
US20100218066A1 (en) Encoding device and decoding device
CN112751644B (en) Data transmission method, device and system and electronic equipment
CN101432969A (en) Forward Error Correction (FEC) Encoding and Streaming
GB2527602A (en) Galois field coding techniques
CN115811381B (en) Network communication method, network communication device, electronic apparatus, and storage medium
US20200153545A1 (en) Media content-based adaptive method, device and system for forward error correction (fec) coding and decoding of systematic code, and medium
CN113301387B (en) Data encoding and decoding method, related equipment and system
US9264181B2 (en) Communication system, method and receiver applicable thereto
Hussain et al. Adaptive video-aware forward error correction code allocation for reliable video transmission
KR101259659B1 (en) A priority-differential non-uniform raptor coding method
KR20120091431A (en) Orthogonal multiple description coding
CN102263606B (en) Channel data coding and decoding method and device
KR20170075127A (en) Method of simplified channel coding for processing packet loss recovery
CN113114427B (en) Self-adaptive system code FEC encoding method and decoding method based on media content
Hsiao et al. An analysis modeling of frame-level forward error correction for H. 264/AVC over burst-loss channels
JP2007274309A (en) Transmitter
WO2016194623A1 (en) Data processing device and data processing method
CN119728002A (en) A data processing method and related device
JP2015162854A (en) Encoder, decoder, communication system, encoding method and decoding method
HK1133127A (en) Forward error-correcting (fec) coding and streaming

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20151222

PG1501 Laying open of application
PC1203 Withdrawal of no request for examination