KR20070061780A - Method of video data transmitting - Google Patents

Method of video data transmitting Download PDF

Info

Publication number
KR20070061780A
KR20070061780A KR1020077000043A KR20077000043A KR20070061780A KR 20070061780 A KR20070061780 A KR 20070061780A KR 1020077000043 A KR1020077000043 A KR 1020077000043A KR 20077000043 A KR20077000043 A KR 20077000043A KR 20070061780 A KR20070061780 A KR 20070061780A
Authority
KR
South Korea
Prior art keywords
frame
video
communication channel
frames
video data
Prior art date
Application number
KR1020077000043A
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 코메트 비디오 테크놀러지
Publication of KR20070061780A publication Critical patent/KR20070061780A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction

Abstract

A method of video data transmitting by means of video data reconstruction on the receiving end of the communication channel per time unit, based not only on the data, transmitted directly via the channel, but on all previously transmitted, decoded and stored video data.

Description

비디오 데이터 전송 방법{METHOD OF VIDEO DATA TRANSMITTING}Video data transmission method {METHOD OF VIDEO DATA TRANSMITTING}

Shapiro에게 허여된 미국 특허 5,321,776 및 Pearlman 등에게 허여된 미국 특허 5,764,807호 둘 다가 본원에 참조되어 있다.Both US Pat. No. 5,321,776 to Shapiro and US Pat. No. 5,764,807 to Pearlman et al. Are incorporated herein by reference.

Andrey V. Zurov 등이 2005년 6월 29일에 출원한 발명의 명칭이 "METHOD OF DATA COMPRESSION INCLUDING COMPRESSION OF VIDEO DATA"인 미국 특허 출원 ___________이 또한 참조되어 있다.See also US patent application ___________, entitled "METHOD OF DATA COMPRESSION INCLUDING COMPRESSION OF VIDEO DATA," filed June 29, 2005 by Andrey V. Zurov et al.

본 출원은 2004년 6월 30일에 출원된 임시 특허 출원번호 60/584,364의 이점을 주장한 것이다.This application claims the benefit of Provisional Patent Application No. 60 / 584,364, filed June 30, 2004.

두 개의 상기 출원의 설명이 본원에 전반적으로 참조되어 있다.The description of two such applications is hereby incorporated by reference in its entirety.

본 발명은 주로 실시간 모드로 저 비트 레이트 통신 채널(low bit-rate communication channel)들을 통해서 비디오 데이터를 전송하는 기술에 관한 것이다.The present invention mainly relates to a technique for transmitting video data over low bit-rate communication channels in a real time mode.

저 비트 레이트 통신 채널들을 통해서 비디오 데이터를 전송하는데 주요 문제는 높은 이미지 품질을 유지하는 것이다. 이 문제는 디지털 비디오 데이터 압축의 각종 방법들에 의해 해결되는데, 이 주요한 방법은 MPEG 절차에 의한 프레임 시퀀스 코딩이다. 이 절차는 화상 그룹(GOP; group of pictures)의 집합으로서 이미 지 소스로부터 수신된 디지털 비디오 데이터의 디스플레이를 토대로 하는데, 각 GOP는 키 프레임(I-프레임)으로 시작하고 동일한 이미지 장면을 통해서 I-프레임에 통상적으로 접속되는 제한된 수의 예측 프레임(P-프레임)을 포함한다. I-프레임은 장면의 제1 프레임을 구성하고, 상호 매우 유사한 GOP P-프레임들이 뒤따른다. MPEG 절차의 다음 스테이지는 GOP 디지털 비디오 데이터의 압축이다. I-프레임 압축은 공지된 방법들 중 한 방법, 예를 들어 플로우(flow)의 시작에서 위치된 더 낮은 공간 주파수에 대응하는 계수를 갖는 이미지 품질에 대한 이들 계수의 영향에 따라서 조직되는 디지털 데이터의 플로우로서 결과적인 스펙트럼 계수들의 다음 표현을 갖는 2차원 스펙트럼 분해의 방법에 의해 수행된다. GOP P-프레임의 압축은 선행하는 GOP 프레임과 비교될 때 각 다음 P-프레임의 높은 예측성을 토대로 한다. 예측 코딩으로서 공지된 이 절차는 다음을 포함한다; 코딩된 프레임의 다음 내용 예측 소스로서 작용하는 프레임의 이미지는 픽셀의 직사각형 블록으로 분할된다. 그 후, 선행 프레임의 블록의 내용에서 최대로 근접한 동일한 크기의 이미지 블록에 대한 탐색은 코딩된 프레임에 대해 행해진다. 이와 같은 블록들이 발견된 후, 이들의 위치는 변위 벡터를 설정함으로써 선행 프레임에 대한 코딩된 프레임상에 고정된다. 이전 프레임으로부터 프로토타입(prototype)들이 미리 결정된 기준을 토대로 발견될 수 없는 코딩된 P-프레임의 이미지 부분들에 대해서, GOP I-프레임의 코딩과 유사한 표준 코딩 절차가 적용된다. 따라서, 예측 코딩 알고리즘은 GOP 데이터 볼륨을 코딩된 GOP I-프레임, 각 GOP P-프레임을 위한 인코딩된 이미지 블록의 변위 벡터의 어레이를 포함하는 볼륨뿐만 아니라 선행하는 GOP 프레임으로부터 프로토타입 없이 P-프레임의 인코딩된 이미지 블록의 볼륨까지 실질적으로 감소시키도록 지원한다.The main problem in transmitting video data over low bit rate communication channels is maintaining high image quality. This problem is solved by various methods of digital video data compression. The main method is frame sequence coding by MPEG procedure. This procedure is based on the display of digital video data received from an image source as a collection of group of pictures (GOPs), each starting with a key frame (I-frame) and through the same image scene. It includes a limited number of predictive frames (P-frames) that are typically connected to a frame. I-frames constitute the first frame of the scene, followed by GOP P-frames that are very similar to each other. The next stage of the MPEG procedure is the compression of GOP digital video data. I-frame compression is one of the known methods, e.g., of digital data organized according to the influence of these coefficients on image quality with coefficients corresponding to lower spatial frequencies located at the beginning of the flow. As a flow is performed by a method of two-dimensional spectral decomposition with the following representation of the resulting spectral coefficients. Compression of a GOP P-frame is based on the high predictability of each next P-frame when compared to the preceding GOP frame. This procedure, known as predictive coding, includes the following; The image of the frame serving as the next content prediction source of the coded frame is divided into rectangular blocks of pixels. Then, a search for an image block of the same size that is closest in the content of the block of the preceding frame is made for the coded frame. After such blocks are found, their position is fixed on the coded frame for the preceding frame by setting the displacement vector. For image portions of a coded P-frame where prototypes from the previous frame cannot be found based on predetermined criteria, a standard coding procedure similar to the coding of a GOP I-frame is applied. Thus, the predictive coding algorithm uses the GOP data volume as a GOP I-frame, a P-frame without prototype from the preceding GOP frame as well as a volume containing an array of displacement vectors of the encoded image block for each GOP P-frame. To substantially reduce the volume of the encoded image block.

MPEG 절차는 유니버셜적이고 상대적으로 고레벨의 비디오 데이터 압축을 보장한다. 그러나, 회의로부터 비디오 데이터 또는 실시간 모드로 저비트 통신 채널를 통해서 느린-이동 또는 주기적으로 재생하는 물체의 비디오 조사 데이터와 같은 개별적인 애플리케이션에 대해서, 비트 플로우 구성의 알고리즘은 전송되는 이미지 품질을 향상시키도록 개선될 수 있다.The MPEG procedure ensures universal and relatively high level video data compression. However, for individual applications such as video data from meetings or video survey data of slow-moving or periodically replaying objects over low-bit communication channels in real-time mode, the algorithm of the bit flow configuration has been improved to improve the image quality transmitted. Can be.

본 발명의 목적은 비디오 이미지 전송 품질을 향상시키는 것이다. 이미지 수신기로부터(상기 비디오 카메라로부터) 들어오는 프레임들의 수가 동일한 시간 기간에서 통신 채널을 통해서 전송될 수 있는 코딩된 프레임들의 수를 초과할 때 이와 같은 거리상에 위치되는 프레임들의 플로우의 전송당 데이터 볼륨을 감소시킴으로써 시간 단위 당 전송되는 프레임의 수의 증강(build up)을 통해서 성취된다. It is an object of the present invention to improve video image transmission quality. Reduce the data volume per transmission of the flow of frames located at such a distance when the number of frames coming from the image receiver (from the video camera) exceeds the number of coded frames that can be transmitted over the communication channel in the same time period. Is achieved through build up of the number of frames transmitted per unit of time.

저 비트 레이트 통신 채널을 통해서 전송되는 비디오 데이터의 고품질을 보장하기 위하여, 우선 스펙테이터(spectator)에 의한 비디오 범위의 지각(perception)을 결정하는 키 팩터(factor)들을 모두 이해하고 이를 지정하여야 한다. 인간 지각의 개인적인 특이성(peculiarities)에 대한 본 저자들에 의해 실행된 많은 실험들은 시간 단위 당 스펙테이터에 의해 수신되는 비디오 데이터의 시어 볼륨(sheer volume)에 의하지만 이미지 디테일 변환의 평탄(smoothness)에 의해 비디오 정보의 품질이 덜 결정된다라고 입증되었다. 바꾸어 말하면, 주어진 각 프레임이 완전한 품질을 갖는 경우조차도, 스펙테이터는 비디오 시퀀스에서 지연들이 "슬라이드-쇼(slide-show)" 효과를 생성하는 이미지와 비교할 때 작은 디테일이 생략되거나 왜곡될 수 있는 이미지 품질이 훨씬 더 높은 추정치를 갖는다. 실시간으로 전송되는 비디오 데이터의 작업을 고려하면, 고 비디오 이미지 품질의 문제는 다루기 힘든 것으로 판명되는데, 그 이유는 원하는 품질 및 프레임 레이트의 인코딩된 비디오 데이터의 비트 량이 채널 용량을 초과할 때 본 저자들에게 공지된 유효한 방법이 이 상황에 대한 해결책을 제공하지 못하기 때문이다.In order to ensure the high quality of video data transmitted over a low bit rate communication channel, it is first necessary to understand and specify all the key factors that determine the perception of the video range by a specter. Many experiments conducted by the authors on the personal peculiarities of human perception are based on the sheer volume of video data received by specters per unit of time, but due to the smoothness of image detail transformations. It has been proved that the quality of video information is less determined. In other words, even if each given frame is of full quality, the specter can be used to produce images where small details may be omitted or distorted when compared to images in which delays produce a "slide-show" effect in the video sequence. Quality has much higher estimates. Considering the work of video data transmitted in real time, the problem of high video image quality turns out to be unwieldy because the bit rate of encoded video data of desired quality and frame rate exceeds the channel capacity. This is because a valid method known to the user does not provide a solution for this situation.

본 발명의 핵심은 채널을 통해서 직접 전송되는 데이터뿐만 아니라 모든 미리 전송되며, 디코딩되고 저장된 비디오 데이터를 토대로 시간 단위당 통신 채널의 수신단 상에서 비디오 데이터 재구성에 의해 비디오 데이터 전송하는 방법이다. 청구된 방법의 이점은 전송된 이미지가 예를 들어 화상 회의 범위에서 주기적으로 반복될 때 "슬라이드-쇼" 효과를 피하도록 지원한다.The core of the present invention is a method of transmitting video data by video data reconstruction on the receiving end of a communication channel per unit of time based on all previously transmitted, decoded and stored video data as well as data transmitted directly through the channel. The advantage of the claimed method assists in avoiding a "slide-show" effect when the transmitted image is repeated periodically, for example in a video conference range.

본 발명을 따른 비디오 데이터 전송하는 방법은 2가지 가능한 단계 시퀀스를 갖는다: 본 발명의 제1 양상을 따르면, 청구된 방법은 키 프레임 및 예측 프레임의 시퀀스로서 비디오 데이터의 코딩을 의미하는데, 키 프레임으로서 상기 시퀀스의 제1프레임의 선택 및 코딩은 저 비트 레이트 통신 채널을 통해서 코딩된 프레임의 전송, 이의 디코딩 및 통신 채널의 전송 및 수신단들에서 결과들의 저장보다 앞서있다. 코딩에 할당된 다음 프레임 F(J)는 비디오 데이터 소스 밖으로 진행하는 프레임 시퀀스로부터 선택된다. 이 소스 프레임 시퀀스에서 이 프레임의 수 J는 식 J=INT(NQ/W)에 의해 계산되는데, 여기서 N은 비디오 데이터 소스 프레임 레이트이며, Q는 채널을 통해서 전송되는 비트들의 수이며, W는 통신 채널의 용량이고, INT(x)는 정수부 계산을 위한 함수이다. 그 후, 상기 프레임에 대한 코딩 유형이 설정되어야 한다. 이 목적을 위하여, 전송단에서 전송되며, 디코딩되고 저장되는 프레임들의 어레이는 코딩에 할당된 현재 프레임에 가장 근접한 프레임 (R(r))을 위하여 탐색된다. 미리 전송되고 디코딩된 프레임 및 임의의 방법에 의해 결정된 코딩에 할당되는 현재 프레임 간의 차이 값(difference value; D1)이 미리 결정된 임계값(Th)를 초과하지 않으면, 현재 프레임 F(J)는 통신 채널의 수신 및 전송단들에서 전송되고 저장된 사전-선택되며 전송된 프레임 R(r)에 대한 예측 프레임으로서 코딩된다. 그렇치 않다면, 현재 프레임은 상술된 절차에 따라서 키 프레임으로서 코딩될 것이다.The method of transmitting video data according to the invention has two possible sequence of steps: According to the first aspect of the invention, the claimed method means coding of video data as a sequence of key frames and prediction frames, The selection and coding of the first frame of the sequence precedes the transmission of the coded frame over its low bit rate communication channel, its decoding and the storage of results at the transmitting and receiving ends of the communication channel. The next frame F (J) assigned to the coding is selected from the sequence of frames proceeding out of the video data source. The number J of this frame in this source frame sequence is calculated by the formula J = INT (NQ / W), where N is the video data source frame rate, Q is the number of bits transmitted over the channel, and W is the communication The capacity of the channel, INT (x) is a function for calculating the integer part. After that, the coding type for the frame should be set. For this purpose, the array of frames transmitted, decoded and stored at the transmitting end is searched for the frame R (r) closest to the current frame assigned to the coding. If the difference value D1 between the previously transmitted and decoded frame and the current frame assigned to the coding determined by any method does not exceed the predetermined threshold Th, the current frame F (J) is the communication channel. It is coded as a predictive frame for the pre-selected and transmitted frame R (r) transmitted and stored at the receiving and transmitting ends of the < RTI ID = 0.0 > If not, the current frame will be coded as a key frame according to the procedure described above.

본 발명의 제2 양상을 따르면, 청구된 방법은 키 프레임들 및 예측 프레임들의 시퀀스로서 비디오 데이터의 코딩을 의미하는데, 키 프레임으로서 상기 시퀀스의 제1 프레임의 선택 및 코딩은 저 비트 레이트 통신 채널을 통해서 코딩된 프레임의 전송, 이의 디코딩 및 통신 채널의 전송 및 수신단들에서 결과들의 저장보다 앞서있다. 코딩에 할당된 다음 프레임 F(J)는 비디오 데이터 소스 밖으로 진행하는 프레임 시퀀스로부터 선택된다. 이 소스 프레임 시퀀스에서 이 프레임의 수 J는 식 J=INT(NQ/W)에 의해 계산되는데, 여기서 N은 비디오 데이터 소스 프레임 레이트이며, Q는 채널을 통해서 전송되는 비트들의 수이며, W는 통신 채널의 용량이고, INT(x)는 정수부 계산을 위한 함수이다. 그 후, 상기 프레임에 대한 코딩 유형이 설정되어야 한다. 이 목적을 위하여, 전송단에서 전송되며, 디코딩되고 저장되는 프레임의 어레이는 코딩에 할당된 현재 프레임에 가장 근접한 프레임 (R(r))을 위하여 탐색된다. 미리 전송되고 디코딩된 프레임 및 임의의 방법에 의해 결정된 코딩에 할당되는 현재 프레임 간의 차이 값(D1)이 미리 결정된 임계값(Th)를 초과하면, 현재 프레임에 선행하는 프레임의 그룹은 미리 전송된 프레임(R(s))에 가장 근접한 프레임(F(j))에 대해 탐색될 것이다. 이들 2개의 프레임들 간의 차이 값(D2)이 임계값(Th)을 초과하지 않으면, 선택된 프레임 F(j)는 통신 채널의 수신 및 전송 단에서 저장되고 현재 프레임 대신에 전송되는 선행 프로토타입 프레임(R(s))에 대한 예측 프레임으로서 코딩될 것이다. 그렇치 않다면, 현재 프레임(F(J))는 상술된 바와 같은 키 프레임처럼 코딩될 것이다.According to a second aspect of the invention, the claimed method refers to the coding of video data as a sequence of key frames and predictive frames, wherein the selection and coding of the first frame of the sequence as a key frame comprises a low bit rate communication channel. Precedes the transmission of the coded frame, its decoding and the storage of results at the transmitting and receiving ends of the communication channel. The next frame F (J) assigned to the coding is selected from the sequence of frames proceeding out of the video data source. The number J of this frame in this source frame sequence is calculated by the formula J = INT (NQ / W), where N is the video data source frame rate, Q is the number of bits transmitted over the channel, and W is the communication The capacity of the channel, INT (x) is a function for calculating the integer part. After that, the coding type for the frame should be set. For this purpose, an array of frames transmitted at the transmitting end, decoded and stored is searched for the frame R (r) closest to the current frame assigned to the coding. If the difference value D1 between the pre-transmitted and decoded frame and the current frame assigned to the coding determined by any method exceeds the predetermined threshold Th, the group of frames preceding the current frame is pre-transmitted frame. Will be searched for the frame F (j) closest to (R (s)). If the difference value D2 between these two frames does not exceed the threshold Th, the selected frame F (j) is stored at the receiving and transmitting end of the communication channel and is sent to the preceding prototype frame (instead of the current frame). Will be coded as a predictive frame for R (s)). If not, the current frame F (J) will be coded like a key frame as described above.

도1은 청구된 방법의 제1 양상을 도시한 도면.1 shows a first aspect of the claimed method.

도2는 청구된 방법의 제2 양상을 도시한 도면.2 shows a second aspect of the claimed method.

도3 내지 도16은 본 출원의 대안적인 및/또는 상세한 개념들을 도시한 도면.3-16 illustrate alternative and / or detailed concepts of the present application.

저 비트 레이트 통신 채널을 통해서 비디오 데이터를 전송하는 청구된 방법을 구현하기 위한 본 발명의 제1 양상을 따르면, 비디오 시퀀스의 프레임들에 대한 코딩 유형의 선택 기준을 나타내는 수치값을 계산하는 것이 필요하다. 도1에 도시된 바와 같이, 이 방법을 성취하기 위한 제1 단계는 규정된 수치 임계값(Th)을 입력하는 것이다(1). 명백하게 소스 출력으로부터 통신 채널에 의해 수신되는 임의의 프레임 시퀀스는 적어도 2가지 상이한 방법들: 1) 다른 프레임들에 무관한 키 프레 임들로서 및 2) 선행하는 코딩된 프레임들에 대한 예측 프레임들로서 코딩에 할당되는 프레임들의 집합으로서 디스플레이될 수 있다. 이미지에서 새로운 장면 마다 처음에 뿐만 아니라 비디오 데이터 전송의 시초에, 프레임 F(J)이 나타나는데, 이는 내용 때문에 키 프레임으로서 코딩되도록 선택된다. 이와 같은 코딩(2)은 청구된 방법에 대한 동작 시퀀스의 제2 단계를 행한다. 그 후, 코딩된 프레임은 통신 채널의 입력으로 진행하고 전송되어(3), 이 방법의 다음 단계를 행한다. 데이터 전송 과정 중에, 채널을 실질적으로 통과하는 비트들의 수(Q)는 결정되며, 그 후, 전송된 프레임 R(r)의 이미지는 디코딩되고(4) 채널의 전송단에서 저장된다. 저비트 통신 채널을 통해서 코딩된 프레임 전송의 존속기간이 비디오 데이터 아웃렛의 출력으로부터 통신 채널에 의해 수신되는 비디오 시퀀스의 인접 프레임들 간의 시간 간격을 초과한다는 사실로 인해, 시퀀스로부터 코딩에 할당된 다음 프레임의 수 (J)는 이전 프레임 전송의 끝(end) 전에 결정될 것이다. 이와 같은 계산(5)은 J=INT(NQ/W)에 의해 행해지는데, 여기서 N은 비디오 데이터 소스 프레임 레이트이며, Q는 선행 프레임 전송 동안 통신 채널을 통해서 전송되는 다수의 비트이고, W는 통신 채널의 용량이다. 코딩에 할당된 다음 프레임의 수를 정의한 후, 이 프레임이 일부 미리 전송된 프레임에 대한 예측 프레임 또는 키 프레임으로서 코딩되는지 여부를 결정하기 위한 코딩 유형을 결정할 필요가 있다. 명백하게 제2 코딩 유형이 바람직한데, 이미지에 대해 전송된 데이터 볼륨에 대해서는 덜 바람직하며, 반면 품질은 동일하다. 비디오 시퀀스의 다음 프레임에 대한 코딩 유형을 선택하기 위하여, 채널 프레임들 R(r)의 전송 단에서 미리 전송되며, 디코딩되고 저장되는 각각과 코딩에 할당된 프레임(F(J))간의 절대 차(D1)의 값이 계산된다. D1에 대해서 구해진 값들의 세트로부터, 최소값이 선택되며(6) 값(Th)과 비교될 것이다(7). 상기 값(D1)이 Th를 초과하지 않으면, 코딩에 할당되는 다음 프레임(F(J))는 D1이 최소값을 갖는 프레임(R(r))에 대한 예측 프레임(8)으로서 인코딩될 것이다. 조건 D1<Th가 충족되지 않으면, 프레임 F(J)는 키 프레임으로서 인코딩될 것이다(9). 한 방식 또는 또 다른 방식으로 코딩되는 프레임은 통신 채널을 통해서 진행하고 데이터 전송 프로세스는 최종 프레임이 비디오 데이터 소스로부터 전송될 때까지 진행한다.According to a first aspect of the invention for implementing the claimed method of transmitting video data over a low bit rate communication channel, it is necessary to calculate a numerical value indicating a criterion of selection of coding type for frames of a video sequence. . As shown in Fig. 1, the first step to achieve this method is to enter a defined numerical threshold Th (1). Obviously any frame sequence received by the communication channel from the source output may be encoded in at least two different ways: 1) as key frames independent of other frames and 2) as predictive frames for preceding coded frames. It can be displayed as a collection of frames that are allocated. At the beginning of each video scene as well as at the beginning of the video data transfer, a frame F (J) appears, which is chosen to be coded as a key frame because of the content. This coding 2 performs the second step of the sequence of operations for the claimed method. The coded frame then advances to the input of the communication channel and is transmitted (3) to perform the next step of the method. During the data transmission process, the number of bits Q substantially passing through the channel is determined, after which the image of the transmitted frame R (r) is decoded (4) and stored at the transmitting end of the channel. The next frame assigned to coding from the sequence due to the fact that the duration of the transmission of the coded frame over the low bit communication channel exceeds the time interval between adjacent frames of the video sequence received by the communication channel from the output of the video data outlet. The number of times J will be determined before the end of the previous frame transmission. This calculation (5) is done by J = INT (NQ / W), where N is the video data source frame rate, Q is the number of bits transmitted over the communication channel during the preceding frame transmission, and W is the communication The capacity of the channel. After defining the number of next frames assigned to the coding, it is necessary to determine the type of coding to determine whether this frame is coded as a predictive frame or key frame for some pre-transmitted frame. Obviously the second coding type is preferred, less desirable for the data volume transmitted for the image, while the quality is the same. In order to select the coding type for the next frame of the video sequence, the absolute difference between each frame that is previously transmitted and decoded and stored at the transmitting end of the channel frames R (r) and the frame F (J) assigned to the coding ( The value of D1) is calculated. From the set of values obtained for D1, the minimum value is selected (6) and compared with the value Th (7). If the value D1 does not exceed Th, the next frame F (J) assigned to coding will be encoded as the predictive frame 8 for the frame R (r) where D1 has the minimum value. If the condition D1 <Th is not satisfied, frame F (J) will be encoded as a key frame (9). Frames that are coded in one way or another go through the communication channel and the data transfer process proceeds until the last frame is sent from the video data source.

전송된 비디오 이미지의 품질은 도2로부터 도시된 바와 같이 본 발명의 제2 양상을 따른 청구된 방법을 구현함으로써 더욱 향상될 수 있다. 본 발명의 제2 양상에 의해 요구되는 바와 같은 소스 데이터를 입력할 때, 값(Th)의 데이터 입력(1)은 0 내지 1의 범위의 p 파라미터 및 이의 입력의 선택을 수반할 것이다(10). 본 발명의 제2 양상에 의해 요구되는 바와 같은 동작 시퀀스의 단계들(2-4 및 5-8)은 이미 상술되었다. 본 발명의 제2 양상을 따르면, 비디오 데이터 소스의 프레임 시퀀스에 대한 선행 프레임의 수 J0=J의 세이빙(11)은 단계(5) 전에 발생될 것이다.The quality of the transmitted video image can be further improved by implementing the claimed method according to the second aspect of the present invention as shown from FIG. When entering source data as required by the second aspect of the present invention, data input 1 of value Th will involve the selection of a p parameter in the range of 0 to 1 and its input (10). . Steps 2-4 and 5-8 of the operation sequence as required by the second aspect of the present invention have already been described above. According to a second aspect of the invention, the saving 11 of the number of preceding frames J 0 = J for the frame sequence of the video data source will occur before step 5.

본 발명의 제2 양상에 의해 요구되는 바와 같은 비디오 데이터 전송 방법의 단계(7)가 조건 D1<Th의 비충족을 초래할 때의 상황을 더욱 면밀하게 살펴본다. 이는 코딩되고 전송될 프레임이 예측 프레임으로서 인코딩되지 않는다는 것을 의미한다. 동시에, 선행 프레임 전송의 끝이 존재할 때까지 비디오 데이터 소스로부터 수신된 정합 프레임이 존재하지 않지만, 선행 프레임으로부터 비디오 데이터 통과 동안 통신 채널의 입력에서 소스로부터 수신된 프레임들 중 한 프레임과 유사한 사전 인코딩되고 전송된 세트 프레임들 중에서 여전히 프레임을 발견할 수 있다. 이 프레임을 규정하기 위하여, 한편에서 채널의 전송단에서 미리 전송되며, 디코딩되고 저장된 각 프레임(R(r)) 및 다른 한편에서 J0+p(J-J0)<j<J의 수들의 범위 내에서 비디오 데이터 소스로부터 수신된 각 프레임(F(j)) 간의 절대차(D2)가 계산될 것이다. 이들 수단에 의해 수신되는 D2 값들의 세트로부터, 최소값이 선택될 것이고(12) 값(Th)과 비교될 것이다(13). 값(D2)이 Th를 초과하지 않으면, 프레임 F(j)은 최소 D2 값의 프레임(R(s))에 대한 예측 프레임으로서 코딩될 것이다(14). D1<Th가 충족되지 않으면, 프레임 F(J)은 키 프레임으로서 코딩된다(9). 어느 한 방법에 의해 인코딩되는 프레임은 통신 채널로 진행하고 데이터 전송 처리는 최종 프레임이 비디오 데이터 소스로부터 전송될 때까지 진행한다. The situation when step 7 of the video data transmission method as required by the second aspect of the present invention results in the non-compliance of the condition D1 <Th will be described more closely. This means that the frame to be coded and transmitted is not encoded as a predictive frame. At the same time, there is no match frame received from the video data source until the end of the preceding frame transmission, but pre-encoded similar to one of the frames received from the source at the input of the communication channel during the video data pass from the preceding frame. One of the transmitted set frames may still find a frame. To define this frame, each frame R (r), previously decoded and stored at the transmitting end of the channel on the one hand, and within the range of the numbers of J0 + p (J-J0) <j <J on the other hand The absolute difference D2 between each frame F (j) received from the video data source at will be calculated. From the set of D2 values received by these means, the minimum value will be selected (12) and compared with the value Th (13). If the value D2 does not exceed Th, frame F (j) will be coded as a predictive frame for frame R (s) of minimum D2 value (14). If D1 <Th is not satisfied, frame F (J) is coded as a key frame (9). Frames encoded by either method go through the communication channel and the data transfer process proceeds until the last frame is sent from the video data source.

본원에 계속 주목하여, 이하 도 3에 도시한 바와 같은 코메트 비디오 테크놀러지 코덱 동작 플랜을 개시하며, 이 코메트 비디오 테크놀러지 코덱은 3개의 블록들로 구성된다.Continuing attention to the present application, the following describes a comet video technology codec operation plan as shown in FIG. 3, which is made up of three blocks.

비디오 코덱(Video Codec)Video Codec

오디오 코덱(Audio Codec)Audio Codec

네트워크 커널(Network Kernel)Network Kernel

모든 3개의 블록들은 오디오 및 비디오 엔코딩이 동기가 맞게 하기 위해서 아울러 통신채널을 변경할 때 혹은 접속이 종료될 때 코덱들을 자동으로 조정하기 위해서 상호작용한다.All three blocks interact to ensure that the audio and video encoding is in sync, as well as to automatically adjust the codecs when changing the communication channel or when the connection is terminated.

비디오 코덱Video codec

비디오 코덱은 비디오 플로우들의 웨이브렛들을 사용하여 엔코딩 및 디코딩을 수행한다. 주어진 프로세서는 다음의 작업 사이클을 갖는다:The video codec performs encoding and decoding using wavelets of video flows. A given processor has the following work cycles:

전처리Pretreatment

키 프레임들의 엔코딩Encoding Key Frames

보상모델Compensation Model

키 및 보상된 프레임들의 디코딩Decoding Key and Compensated Frames

후처리After treatment

전처리 - 다음의 엔코딩, 즉 품질의 향상(이전의 프레임들 통계들로부터 가용한 것에 기초하여)을 위해 필요한 비디오 이미지 준비Preprocessing-Video image preparation required for the next encoding, i.e. improvement of quality (based on available from previous frame statistics)

키 프레임의 엔코딩은 웨이브렛 기술을 사용한 개발된 비디오 압축 방법들에 기초하여 수행된다.The encoding of the key frame is performed based on the developed video compression methods using wavelet technology.

보상방법들은 프레임들간의 차이만이 전송된다는 사실에 기인하여 보다 많은 수의 프레임들을 전송할 수 있게 한다. 이 방법은 전처리와 밀접히 관계가 있을 것이다. 보상방법들은 대부분 네트워크 교란에 좌우되기 때문에, 네트워크 커널과도 밀접히 관계가 있다. 보상된 프레임들의 엔코딩은 웨이브렛 기술에 기초하여 수행된다.Compensation methods make it possible to transmit a larger number of frames due to the fact that only the differences between the frames are transmitted. This method will be closely related to pretreatment. Compensation methods are also closely related to the network kernel because they are mostly dependent on network disturbances. Encoding of the compensated frames is performed based on the wavelet technique.

키 및 보상 프레임들의 디코딩은 웨이브렛 기술을 사용한 백-엔코딩을 사용하여 실현된다.Decoding of key and compensation frames is realized using back-encoding using wavelet technology.

후처리는 선명도 및 색 스펙트럼 개선을 위해 비디오 이미지에 필터들을 적용함으로써 비디오 품질 향상을 목적으로 한다.Post-processing aims at improving video quality by applying filters to the video image for improved sharpness and color spectrum.

1. 키 프레임 패키징이 도 4에 도시되었다.1. Key frame packaging is shown in FIG.

패키징 프로세스는 도 4에 도시된 바와 같이 7단계들로 구성된다.The packaging process consists of seven steps as shown in FIG.

도 5와 같은 단계 1.1의 설명: RGB 포맷으로 정적 프레임이 입력된다. 프레임은 함께 이미지를 구성하는 적색, 녹색 및 청색의 3개의 플레인(plane)들로 구성된다. 표준으로서 1대1 함수들을 사용하여, 정적 프레임은 YUV라 하는 또 다른 포맷으로 변환(converted)되고 이번에 이것은 밝기 구성성분 Y와, 색 신호들 U 및 V에 의해 변조된 2개의 색 서브 캐리어들인 한 단일체(unity)로서의 3개의 플레인들이다. YUV 변환을 위해 가장 많이 사용되는 공식들은 다음과 같다. Description of step 1.1 as shown in FIG. 5 : A static frame is input in an RGB format. The frame consists of three planes of red, green and blue that together form an image. Using one-to-one functions as standard, the static frame is converted to another format called YUV, this time as long as it is the brightness component Y and two color subcarriers modulated by the color signals U and V. Three planes as unity. The most commonly used formulas for the YUV conversion are:

Y = 0.299*R + 0.587*G + 0.114*B Y = 0.299 * R + 0.587 * G + 0.114 * B

U = 0.564*(B - Y) U = 0.564 * (B-Y)

V = 0.649*(R - Y)V = 0.649 * (R-Y)

이미지의 이러한 표현(presentation)은 차후 분석에 더 유익하다.This presentation of the image is more beneficial for later analysis.

도 6와 같은 단계 1.2의 설명: YUV 포맷의 정적 프레임이 입력된다. 웨이브렛들에 기초한 2개의 필터들의 도움으로 이미지는 고주파수 및 저주파수인 2개 구성성분들로 분해된다(resolved). 변환은 1대1이고 출력에는 그래프로서 제공되고 분해결과로서 이 그래프의 접점들에 계수들이 놓여진다. 호(arc)들은 계수들간에 연결들이다. 프레임을 그래프로 분해하기 위해서 웨이브렛 필터들이 사용된다. 웨이브렛 필터들은 실험적으로 선택되었으며 비디오 패키징에 최적이다(그러나, 웨이브렛 필터들은 필요하다면 쉽게 수정될 수 있다). 웨이브렛 필터들은 수신측에서뿐만 아니라 전송측에서도 프로그램으로 하드 코딩된다(이들은 양측에서 유사할 것이다). Description of step 1.2 as shown in Fig. 6 : A static frame in YUV format is input. With the help of two filters based on wavelets, the image is resolved into two components, high and low frequencies. The transformation is one-to-one and the output is presented as a graph and the coefficients are placed at the contacts of the graph as a decomposition result. Arcs are connections between coefficients. Wavelet filters are used to graph the frames into graphs. Wavelet filters have been selected experimentally and are optimal for video packaging (but wavelet filters can be easily modified if needed). Wavelet filters are hard coded programmatically on the sending side as well as on the receiving side (they will be similar on both sides).

도 7와 같은 단계 1.3의 설명: 단계들 4 및 5에서 데이터를 패키지하기 위해서 단계 3에서의 그래프는 명확한 요건을 충족해야 한다. Description of step 1.3 as in FIG. 7 : In order to package the data in steps 4 and 5 the graph in step 3 must meet certain requirements.

맨 위쪽을 제외하고 각 그래프 접점은 "부모(parent)"를 갖는다. 단계 3에서 단계 2로부터의 그래프를 체크하고 이를 완성한다 필요하다면 즉 어떤 것도 갖지 않는 접점에 대해 "부모"로 표시한다.Except for the top, each graph contact has a "parent". Check the graph from step 2 in step 3 and complete it. If necessary, mark it as "parent" for contacts that do not have anything.

도 8와 같은 단계1 .4의 설명: 이 단계부터 시작하여 패키징 프로세스가 시작된다. 단계 5에서 분석을 행하기 위해서, 단계 3으로부터의 그래프는 고유한 처리 가 행해지고 고유 머신 표현인 비트 플레인들로 변환된다. The step 0.4 as shown in FIG 8. Description: This starts from step to begin the packaging process. To perform the analysis in step 5, the graph from step 3 is subjected to a unique process and converted into bit planes, which are unique machine representations.

도 9와 같은 단계 1.5의 설명: 단계 4로부터 비트 플레인들 및 그에 포함된 데이터가 분석된다. 이 분석에 기초하여, 비트 플레인들 내의 데이터를 이들의 유효성에 따라 조직한다. 이어서 이 단계에서 사용되는 압축 비 값에 따라서, 이 단계에서 의미없는 모든 데이터를 폐기한다. (압축 비 값이 클수록, 보다 많은 데이터가 폐기된다). 남은 데이터는 4개의 서로 다른 데이터 플로우들로 분류된다. Description of Step 1.5 as in Fig. 9 : From Step 4 the bit planes and the data contained therein are analyzed. Based on this analysis, the data in the bit planes are organized according to their validity. Then, according to the compression ratio value used in this step, all data meaningless in this step is discarded. (The larger the compression ratio value, the more data is discarded). The remaining data is classified into four different data flows.

도 10와 같은 단계 1.6의 설명: 보다 큰 데이터 압축을 달성하기 위해서, 플로우들 내 데이터는 특별한 방법으로 조직되고 추가의 통계적 분석이 행해진다. Description of step 1.6 as in FIG. 10 : In order to achieve greater data compression, the data in flows are organized in a special way and further statistical analysis is performed.

도 11와 같은 단계 1.7의 설명: 조직된 플로우들은 일체화된 구조, 즉 패키지된 프레임으로 단일화된다. 이 구조는 네트워크를 통해 보내기 위해 전송된다. Description of step 1.7 as in FIG. 11 : The organized flows are unified into an integrated structure, ie a packaged frame. This structure is sent for sending over the network.

2. 프레임 구축(보상방법)(도 12에 도시됨).2. Frame construction (compensation method) (shown in FIG. 12).

단계 1. 이전 프레임과 비교하여 차이(Step 1. Compare the difference with the previous frame ( differencedifference )를 정함.).

설명: 정적 프레임이 입력된다. 이전 프레임과의 차가 정해진다. 2가지 변형예가 있을 수 있는데, 이전 프레임과의 차를 정하거나 이전 기본 프레임과의 차이를 정하는 것이다. 제1 변형예는 작은 차를 전제(presuppose)로 하나 통신시 이 차 가 없을 때는 다음 프레임이 구축되지 못할 것이다. 제2 변형예는 보다 큰 차를 전제로 하는데 프레임들이 없어도 중요하지 않을 것이다. Description : A static frame is entered. The difference with the previous frame is determined. There can be two variants: to set the difference from the previous frame or to the difference from the previous base frame. The first variant presupposes a small car, but when there is no difference in communication, the next frame will not be constructed. The second variant presupposes a larger difference and would not be important without the frames.

단계 2. 차의 처리Step 2. Treatment of the car

설명: 차는 불필요한 데이터를 없애고 보다 콤팩트하게 하기 위해서(압축) 처리된다. Description : The car is processed to eliminate unnecessary data and make it more compact.

단계 3. 차의 패키징Step 3. Packaging of the Car

설명: 패키징하기 위해서 키 프레임 패키징 방법의 변형이 사용된다. Description : A variant of the key frame packaging method is used for packaging.

오디오 코덱Audio codec

오디오 코덱은 비디오 플로우과 동기를 맞추어 오디오 플로우을 엔코딩한다. 사운드 엔코딩은 사운드 엔코딩의 사이코-어쿠스틱 모델(psycho-acoustic model)의 원래의 실현을 의미한다. 이 실현은 1400 BPS 채널을 사용하여 사람의 음성을 전송할 수 있게 하였다.The audio codec encodes the audio flow in synchronization with the video flow. Sound encoding means the original realization of a psycho-acoustic model of sound encoding. This realization enabled the transmission of human voices using the 1400 BPS channel.

네트워크 커널(도 13에 도시한 바와 같은) 데이터의 때에 맞는(well-timed) 배송을 확보해야 하고 네트워크 교란 검출을 목적으로 네트워크를 모니터해야 하며 축적된 통계에 기초하여 비디오 및 오디오 압축기들의 조정을 수행한다. 도면은 일방향 데이터 전송 채널(이 채널에 대한 요건은 이하 열거한다)의 구조를 표시한다. 이 채널은 3개의 플로우들로 구성된다.Well-timed delivery of data to the network kernel (as shown in FIG. 13) must be ensured, the network must be monitored for network disturbance detection, and adjustment of video and audio compressors based on accumulated statistics do. The figure shows the structure of a one-way data transmission channel (the requirements for this channel are listed below). This channel consists of three flows.

-비디오 채널-Video channel

-오디오 채널Audio Channel

-제어 채널Control channel

비디오 채널은 비디오 압축기로부터 비디오 프레임 배송을 행한다.The video channel performs video frame delivery from the video compressor.

오디오 채널은 오디오 압축기로부터 오디오 플로우 배송을 행한다.The audio channel performs audio flow delivery from the audio compressor.

제어 채널은 광범위한 서비스 기능들을 행한다:The control channel performs a wide range of service functions:

통신세션이 시작되기 전에 클라이언트 프로그램들의 2이상의 사용자들의 접속을 수행.     Perform connection of two or more users of client programs before a communication session begins.

비디오 및 오디오 플로우들을 동기화.     Synchronize video and audio flows.

네트워크.     network.

네트워크 교란들 및 데이터 유실 통지.     Network disturbances and data loss notifications.

사용자들간의 짧은 메시지 교환(채팅)을 수행.     Perform a short message exchange (chat) between users.

도 14는 인터넷을 통한 화상 회의용 프로그램 시스템의 개발을 위한 요건 및 기능상의 명세를 도시한 것이다. 14 shows requirements and functional specifications for the development of a program system for video conferencing over the Internet.

모든 시스템 사용자들은 이름, 이메일 및 시스템 로그인을 위한 패스워드를 입력하여 웹사이트에 등록해야 한다. 사용자가 등록된 후에, 시스템은 각 사용자에게 고유번호(UID)를 할당한다.All system users must register with the website by entering their name, email and password for system login. After users are registered, the system assigns a unique number (UID) to each user.

사용자가 시스템에 등록된 후에 사용자는 PS를 자신의 컴퓨터에 업로드하고 이를 설치할 수 있다.After the user is registered with the system, the user can upload the PS to his computer and install it.

클라이언트는 시스템에서 추가의 서비스들(옵션들)에 대해 신용카드로 지불할 수도 있다. 지불은 사이버캐시 시스템을 통해 수행되고 과금 서버에 등록된다.The client may pay by credit card for additional services (options) in the system. Payment is performed through the cyber cache system and registered with the charging server.

클라이언트 애플리케이션Client application

클라이언트 애플리케이션은 다음의 기능들을 갖는다:The client application has the following features:

1. 데이터베이스에서 사용자들을 조사(view)하고 탐색(search)한다. 이 옵션은 PS의 모든 버전들에서 가능하다.1. View and search users in the database. This option is available in all versions of PS.

2. 콘택 리스트에 사용자들을 추가하기 위해 인증을 요청한다. 사용자는 인증후에 콘택 리스트에 추가된다. 이 옵션은 PS의 모든 버전들에서 가능하다.2. Request authentication to add users to the contact list. The user is added to the contact list after authentication. This option is available in all versions of PS.

3. 콘택 리스트로부터 사용자에게 짧은 메시지들을 발송한다. 이 옵션은 PS의 모든 버전들에서 가능하다.3. Send short messages to the user from the contact list. This option is available in all versions of PS.

4. 콘택 리스트로부터 사용자와 채팅한다. 이 옵션은 PS의 모든 버전들에서 가능하다.4. Chat with the user from the contact list. This option is available in all versions of PS.

5. 비디오 및 오디오 플로우들을 변환할 수 있고 비디오 및 오디오 플로우들을 조사하는 것이 인증된 사용자들로부터의 오디오 및 비디오 플로우들을 조사한다. 이 옵션은 PS의 모든 버전들에서 가능하다.5. Can convert video and audio flows and examine video and audio flows examine audio and video flows from authorized users. This option is available in all versions of PS.

6. 화상 회의를 수행할 것을 인증받은 시스템의 또 다른 사용자와 1대1(point-to-point) 화상 회의를 한다. 화상 회의는 이 옵션을 위해 지불한 사용자 들이 사용할 수 있다.6. Have a point-to-point video conference with another user of the system authorized to conduct the video conference. Video conferencing is available to users who have paid for this option.

7. 복수의 사용자들을 위한 비디오 번역(traslation). 이 옵션은 비디오 번역의 인증에 대해 지불한 사용자들이 사용할 수 있다.7. Video translation for multiple users. This option is available to users who have paid for authentication of the video translation.

클라이언트의 하드웨어 요건:Hardware requirements for the client:

- PⅡ 셀러론 600MHz 프로세서를 갖춘 인텔 PC 및    -Intel PC with PII Celeron 600 MHz processor and

- 64Mb 이상의 메모리    -64 Mb or more memory

- 사운드 카드    -Sound card

- 비디오 카메라    -Video camera

- 다이얼-업 접속을 위한 56BPS 표준 모뎀이거나    -56BPS standard modem for dial-up connection

- 10/100MB 네트워크에 접속을 위한 네트워크 카드    Network card for accessing 10 / 100MB networks

클라이언트의 소프트웨어 요건:Software Requirements for Clients:

- OS Windows 98 OSR1, Windows Me, Windows 2000-OS Windows 98 OSR1, Windows Me, Windows 2000

- 한 세트의 다이렉트 쇼 드라이버들(카메라들 및 사운드 카드들은 드라이버들에 호환되어야 한다) A set of direct show drivers (cameras and sound cards must be compatible with the drivers)

- TCP/IP 프로토콜 드라이버TCP / IP protocol driver

서버 애플리케이션들Server applications

1. 접속 서버.1. Connection Server.

접속서버는 시스템의 모든 사용자들을 위한 진입점이다. 다음의 기능들을 수행한다.The access server is the entry point for all users of the system. Perform the following functions.

- 시스템에 등록을 위해 UID 및 패스워드 요청-UID and password request for registration with the system

- 세션동안 사용자와의 영속적 접속을 확보Secure persistent connections with users during sessions

- 사용자의 상태 테스트-Test your status

- 현 순간에 온라인에 있는 사용자 리스트 유지-Maintain a list of users who are online at the moment

- 클라이언트와 보다 상위의 서비스들(이에 대해선 후술함)간 데이터 통신Data communication between the client and higher-level services (described below).

- 사용자에게 짧은 메시지들의 발송 및 실패를 대비해서 메시지 DB에 저장-Stored in the message DB in case of sending short messages to users and failing

2. 리다이렉터(Redirector)2. Redirector

리다이렉터는 접속서버와 상위 서비스들 사이의 얇은 층이다. 상위 서비스들의 부하의 균형을 맞춘다. The redirector is a thin layer between the access server and the higher level services. Balance the load of the top services.

3. 디렉토리 서버들3. Directory Servers

디렉토리 서버들은 사용자들의 분산된 데이터베이스 및 이들의 콘택 리스트들을 저장한다. 리다이렉터 서버는 이들 서버들의 부하에 책임이 있다.Directory servers store a distributed database of users and their contact lists. The redirector server is responsible for the load on these servers.

4. 메시지 DB4. Message DB

메시지 DB는 미발송 메시지들의 서버이다. 어떤 이유에 기인하여 접속서버에 의해 수신인에 배송될 수 없었던 모든 메시지들은 메시지 DB에 보내진다. 사용자가 시스템에 로그인할 때, 접속서버는 이 사용자 앞으로 된 미발송된 메시지들의 입수성을 체크하고 어떤 메시지가 있다면 이들을 사용자에게 발송한다.The message DB is a server of unsent messages. Any message that could not be delivered to the recipient by the access server for some reason is sent to the message DB. When a user logs in to the system, the access server checks the availability of unsent messages addressed to this user and sends them to the user if there are any.

5. 과금 시스템5. Billing system

사용자의 시스템은 저장을 계정한다. 각 등록된 시스템 사용자마다 개인 계정이 있다. 디폴트로서 이것이 비어있다면, 즉 사용자가 시스템에 등록된 후에 사 용자는 무료 시스템 서비스들에만 액세스할 수 있다. 사용자가 추가의 서비스들에 대해 지불하기를 원한다면, 사용자는 신용카드(사이버캐시 시스템을 통해)를 사용하여 이를 할 수 있다. 사용자가 시스템에 로그인 할 때, 접속서버는 과금 시스템에 그의 상태를 요청하고 사용자의 상태에 기초하여 추가 서비스들에의 액세스를 할당한다.Your system accounts for storage. There is a personal account for each registered system user. If this is empty by default, the user can only access free system services after the user has registered with the system. If the user wants to pay for additional services, the user can do this using a credit card (via the cybercache system). When the user logs in to the system, the access server requests the billing system for its status and assigns access to additional services based on the user's status.

일 실시예에서 서버 하드웨어 요건:In one embodiment server hardware requirements:

- PⅢ 600MHz 및 그 이상의 프로세서를 구비한 서버-Server with PIII 600MHz or higher processor

- 128Mb 이상의 메모리-128Mb or more memory

일 실시예에서 서버 소프트웨어 요건:In one embodiment server software requirements:

- OS Windows 2000 서버-OS Windows 2000 Server

- MSSQL 서버 2000MSSQL Server 2000

도 15는 비디오 이미지들의 압축 및 전송용 프로그램 시스템의 개발을 위한 기능 명세들을 도시한 것이다.15 shows functional specifications for the development of a program system for the compression and transmission of video images.

이 프로젝트의 목적은 모든 현존 표준들의 무선통신의 낮은 대역폭의 채널들을 사용하여 비디오 이미지들의 압축 및 전송을 위한 프로그램 시스템(PS라고도 함)의 개발이다. 주어진 PS는 화상 회의 및 비디오 전송을 무선통신을 사용하여 실시간 모드로 수행하기 위한 것이고 하드웨어 구현을 위한 프로토타입(prototype)으로서 사용될 것이다. PS에 기본적 기술인 개발된 기술은 넓은 채널들(56 BSP 이상)에 적응 및 스케일러블(scalable)해야 한다. 이러한 사실은 PS를 비디오 영화 방송 시스템에 확장할 수 있게 할 것이다.The purpose of this project is to develop a program system (also known as PS) for the compression and transmission of video images using the low bandwidth channels of wireless communications of all existing standards. The given PS is intended to perform video conferencing and video transmission in real time mode using wireless communication and will be used as a prototype for hardware implementation. The developed technology, which is fundamental to the PS, must be adaptable and scalable to wide channels (56 BSP and above). This fact will enable PS to be extended to video movie broadcasting systems.

프로그램 시스템의 구조적 방책Structural Measures of the Program System

클라이언트측Client side

클라이언트측은 사용자의 PC에 설치되어 있고 자신의 PC에 설치된 동일 프로그램을 가진 다른 사용자에게 사용자가 실시간 비디오 이미지들을 전송할 수 있게 하거나 이 다른 사용자와의 실시간 화상 회의를 수행할 수 있게 하는 독립적 프로그램이다. 또 다른 사용자에의 접속은 무선 통신채널(다이렉트 접속)을 사용하거나 인터넷(혹은 이외 TCP/IP네트워크들)을 사용하여 실현된다. 인터넷(혹은 다른 TCP/IP 네트워크들)을 사용한 접속의 경우에, 클라이언트측은 서버 프로그램과 접촉하여 현재 네트워크에 접속한 사용자들에 관하여 요청할 수 있을 것이다.The client side is an independent program installed on the user's PC that allows the user to send real-time video images to another user with the same program installed on his or her PC or to perform a real-time video conference with the other user. Connection to another user is realized using a wireless communication channel (direct connection) or using the Internet (or other TCP / IP networks). In the case of a connection using the Internet (or other TCP / IP networks), the client side may contact the server program and request about the users currently connected to the network.

클라이언트측은,On the client side,

- 비디오 압축기-Video compressor

비디오 카메라로부터 비디오 플로우을 엔코딩하여 이를 네트워크 커널에 전송Encode the video flow from the video camera and send it to the network kernel

네트워크 커널로부터 비디오 플로우을 디코딩하여 이를 사용자의 디스플레이에 전송Decode the video flow from the network kernel and send it to your display

네트워크 커널로부터 네트워크 교란 통계들을 수신하여 비디오 플로우 파라미터들을 정정.Receive network disturbance statistics from the network kernel to correct video flow parameters.

- 오디오 압축기-Audio compressor

사운드맵으로부터 오디오 플로우을 엔코딩하여 이를 네트워크에 전송Encode the audio flow from the soundmap and send it to the network

네트워크 커널로부터 오디오 플로우을 디코딩하여 이를 사운드맵에 전송Decode the audio flow from the network kernel and send it to the soundmap

네트워크 커널로부터 네트워크 교란 통계들을 수신하여 오디오 플로우 파라미터들을 정정Receive network disturbance statistics from the network kernel and correct audio flow parameters

- 네트워크 커널Network kernel

두 사용자들간에 접속을 실현Realize connection between two users

네트워크 데이터 수신 및 전송을 실현Realize network data reception and transmission

전송된 데이터의 무결성(integrity)의 제어를 실현Realize control of the integrity of the transmitted data

네트워크 모니터링을 실현하고 네트워크 교란 통계들을 오디오 및 비디오 압축기들에 전송Realize network monitoring and send network disturbance statistics to audio and video compressors

데이터 전송 원리에 대한 설명은 네트워크 커널 설명에 있다.A description of the data transfer principle can be found in the network kernel description.

클라이언트 하드웨어 요건:Client Hardware Requirements:

- PⅡ 셀러론 600MHz 프로세스를 갖춘 휴대 PC-Portable PC with PII Celeron 600MHz Process

- 64Mb 이상의 메모리와 사운드 카드 -Sound card with 64Mb or more memory

- 사운드 카드-Sound card

- 비디오 카메라-Video camera

- 무선 통신채널에의 접속을 위한 접속 디바이스-Connection device for connection to a wireless communication channel

- 다이얼-업 접속을 위한 표준 모뎀 56BPS이거나-A standard modem 56 BPS for dial-up connection or

프로젝트에 관한 작업들의 계획-스케쥴Plan-schedule of tasks on the project

프로젝트에 관한 작업들은 6단계로 실현된다.Work on the project is realized in six steps.

제1 단계 회유(conciliatory) 및 준비(preparatory). 프로그램의 현재 버전의 프리젠테이션. First stage conciliatory and preparatory. Presentation of the current version of the program.

이 단계에서 다음의 작업이 달성되어야 한다:At this stage the following work should be achieved:

- 개발자는 프리젠테이션을 위해 비디오 압축용의 프로그램의 현재 버전의 프로그램 모듈들 및 기술문서를 준비한다.The developer prepares program modules and technical documentation of the current version of the program for video compression for presentation.

- 개발자는 사원에게 임무를 설정하고 사원이 프로젝트 요건을 적합하게 이해할 수 있게 한다.-The developer sets the task for the employee and enables the employee to understand the project requirements properly.

- 개발자는 프로그램의 현재 버전을 제시한다. 프리젠테이션 동안에 개발자는 다음을 시범을 보인다. The developer presents the current version of the program. During the presentation, the developer demonstrates the following:

1. 이동전화 사용 및 인터넷을 통한 접속에 의한 다이렉트 접속의 가능성을 가진 클라이언트측. 1. Client side with possibility of direct connection by using mobile phone and connecting via internet.

2. 주어진 요건 명세에 기술된 하드웨어 및 소프트웨어를 준수하여 동작하는 비디오 압축기의 실현.2. Realization of a video compressor that operates in compliance with the hardware and software described in the given requirements specification.

3. 보상 메커니즘을 구비하고 있으며 9500BPS 이상의 대역폭을 가진 전이중 무선 통신채널(full duplex wireless communication channel)을 사용하여 초당 3프레임 속도(rate)로 만족스러운 품질을 성취하는 비디오 및 오디오 흐름들을 회의모드로 전송하는 비디오 및 오디오 압축기들의 실현.3. Confer with a compensation mechanism and transmit video and audio flows in conference mode to achieve satisfactory quality at 3 frames per second using a full duplex wireless communication channel with a bandwidth above 9500BPS. Of video and audio compressors.

4. 사용자 인터페이스의 현재 버전의 실현.4. Realization of the current version of the user interface.

5. 채팅 기능들의 실현.5. Realization of chat functions.

6. 9600 K5 채널을 사용하여 비디오 플로우 전송을 확보할 수 있는 프로그램의 현재 버전의 테스트 기록 시트들을 작성.6. Create test record sheets of the current version of the program to ensure video flow transmission using the 9600 K5 channel.

제2 단계 << 새로운 버전의 개발>>Step 2 << Development of a new version >>

- 서버측의 완전한 실현.Server-side complete realization.

- 사용자의 새로운 버전의 개발, 조정 및 도입.-Development, coordination and introduction of new versions of users.

- 관심있는 방법들의 영역의 실현-Realization of the area of interest

- 보상모델들의 두 버전들의 실현. 네트워크 교란 통계들에 따라 방법들의 설정들의 자동으로 변경할, 이들 방법들과 네트워크 커널간의 상호작용의 확보.Realization of two versions of compensation models. Ensure interaction between these methods and the network kernel, automatically changing the settings of the methods in accordance with network disturbance statistics.

- 오디오 압축기(예상 오디오 플로우 대역폭 1500BPS)의 실현Realization of an audio compressor (estimated audio flow bandwidth 1500 BPS)

- 다른 OS, 통신 네트워크 표준들 및 하드웨어로 시스템의 테스트.Testing of the system with different OS, communication network standards and hardware.

- 새로운 버전의 프리젠테이션.-New version of the presentation.

- 프로그램의 현재 버전의 테스트 기록 시트를 작성.-Create a test record sheet for the current version of the program.

- 지면으로(on the paper media) 고객에게 소스코드를 전달Deliver the source code to the customer on the paper media

제3 단계 <<코덱의 하드웨어 버전의 실현을 위한 예비작업>>Step 3 << Preliminary work to realize the hardware version of the codec >>

- 사용자는 자신의 임의로 다른 채널 대역폭에 맞게 조정하는 메커니즘과, 비디오 및 오디오 플로우들의 질적 조정을 위한 알기 쉬운 기능들을 가져야 한다. 비디오 및 오디오 압축기들의 모든 특정한 설정들은 사용자 없이 자동으로 실현될 수 있다.The user should have a mechanism to adjust for his arbitrarily different channel bandwidth, and easy-to-understand functions for qualitative adjustment of video and audio flows. All specific settings of the video and audio compressors can be realized automatically without the user.

- 사용자는 볼륨 설정 패널 및 비디오 카메라 파라미터 설정들을 사용자 임의로 할 수 있다.The user can customize the volume setting panel and the video camera parameter settings.

- 사용자는 인커밍 호(incomming call)에 관해 프로그램에 의해 통보받아야 하며 원하지 않는 호들을 차단할 수 있다.The user must be informed by the program about an incoming call and can block unwanted calls.

- 사용자는 채팅 기능을 사용자 임의로 할 수 있다.-The user can arbitrarily chat function.

서버측.Server-side.

서버 프로그램은 인터넷 접속을 사용하여(혹은 이외 어떤 TCP/IP 네트워크) 클라이언트측 사용자의 탐색 및 접속을 용이하게 할 목적으로 설계된다. 서버측은 네트워크의 클라이언트측에의 모든 사용자들의 접속들을 등록 및 추적(trace)할 수 있는 프로그램 사용자들의 스케일러블 데이터베이스이다. 네트워크에 접속될 때 각 프로그램 사용자는 서버에 등록할 수 있고, 자신의 어드레스 북에 다른 사용자들을 추가할 수 있고 어드레스 북에 나열된 임의의 사용자의 현재 상태를 볼 수 있다. 요구된 사용자가 현재 온라인에 있다면 서버측은 별도의 조정없이도 이 사용자에게 빠른 접속의 가능성을 확보할 수 있다.The server program is designed for the purpose of facilitating the discovery and access of client-side users using an Internet connection (or any other TCP / IP network). The server side is a scalable database of program users that can register and trace connections of all users to the client side of the network. When connected to the network, each program user can register with the server, add other users to his address book, and view the current status of any user listed in the address book. If the requested user is currently online, the server side can secure fast access to this user without any adjustments.

과금 시스템의 주 작업은 채널 사용시간에 대해 사용자들의 계정들을 정산하는 것이다. 채널 사용에 대한 지불들은 매 분(each minute) 수집된다. 예를 들면, 휴가시 특별요금을 도입할 가능성을 갖고 각 채널에 1분의 비용이 결정된다. 각 클 라이언트는 개인계정을 갖는다. 돈이 이 계정으로 클라이언트의 신용카드로부터 이체된다. 계정 충전은 실제 돈 이체에 의해서 혹은 광고 캠페인의 프레임들 내에서 무료 시간을 얻음으로써 수행된다. 비디오 방송 서버들은 http 프로토콜을 사용하여 과금서버에 요청들을 보낸다. 한 과금서버는 몇 개의 비디오 방송 서버들에 서비스할 수 있다.The main task of the billing system is to settle users' accounts for channel usage time. Payments for channel usage are collected every minute. For example, the cost of one minute is determined for each channel with the possibility of introducing a special rate on vacation. Each client has a personal account. Money is transferred from the client's credit card to this account. Account replenishment is done by real money transfer or by getting free time within the frames of the advertising campaign. Video broadcast servers send requests to the billing server using the http protocol. One billing server can serve several video broadcast servers.

일 실시예에서 서버 하드웨어 요건:In one embodiment server hardware requirements:

- PE 6D0 MHz 이상의 프로세서를 가진 서버-Server with PE 6D0 MHz or higher processor

- 128Mb 이상의 메모리-128Mb or more memory

일 실시예에서 서버 소프트웨어 요건:In one embodiment server software requirements:

- OS Windows 2000 서버-OS Windows 2000 Server

일 실시예에서 서버측 요건:In one embodiment server side requirements:

- 서버는 무한 수의 를 지원하는 표준 스케일러블 데이터베이스를 구비해야 한다.-The server should have a standard scalable database that supports an infinite number of.

- 서버는 클라이언트 프로그램들로부터 초당 10D 정도의 요청을 처리해야 한다.The server has to handle about 10D requests per second from client programs.

네트워크 커널(도 13 혹은 16과 같은)은 데이터의 때에 맞는 배송을 확보해 야 하고 네트워크 교란 검출 목적으로 네트워크를 모니터해야 하며 축적된 통계들에 기초하여 비디오 및 오디오 압축기들의 조정을 수행한다. 도 3은 일방향 데이터 전송 채널의 구조를 나타낸다(이 채널에 대한 요건은 이하 열거한다). 이 채널은 3개의 플로우들로 구성된다:The network kernel (such as FIG. 13 or 16) must ensure timely delivery of data, monitor the network for network disturbance detection purposes, and make adjustments of the video and audio compressors based on the accumulated statistics. 3 shows the structure of a one-way data transmission channel (the requirements for this channel are listed below). This channel consists of three flows:

- 비디오 채널-Video channel

- 오디오 채널-Audio channels

- 제어 채널Control channel

비디오 채널은 비디오 압축기로부터 비디오 프레임 배송을 행한다.The video channel performs video frame delivery from the video compressor.

오디오 채널은 오디오 압축기로부터 오디오 플로우 배송을 행한다.The audio channel performs audio flow delivery from the audio compressor.

제어 채널은 광범위한 서비스 기능들을 행한다:The control channel performs a wide range of service functions:

- 통신세션이 시작되기 전에 클라이언트 프로그램들의 2이상의 사용자들의 접속을 수행.Perform connection of two or more users of the client programs before the communication session begins.

- 비디오 및 오디오 플로우들을 동기화.Synchronize video and audio flows.

- 네트워크.- network.

- 네트워크 교란 및 데이터 유실 통지.-Notification of network disturbances and data loss.

- 사용자들간의 짧은 메시지 교환(채팅)을 수행.Perform a short message exchange (chat) between users.

일 실시예에서 네트워크 커널 요건:In one embodiment network kernel requirements:

- 데이터 적절성의 제어Control of data adequacy

- 연속된 네트워크 모니터링Continuous network monitoring

- 네트워크 교란 통계의 축적과 비디오 및 오디오 압축기 설정에 의한 동작의 능력.-Accumulation of network disturbance statistics and ability of operation by video and audio compressor settings.

- 보상과 함께 작동하기 위한 지능형 알고리즘들의 사용가능성.Availability of intelligent algorithms to work with compensation.

- 채팅 기능의 실현.-Realization of chat function.

- 스케일러빌리티.-Scalability.

- 한 비디오 플로우을 다수에 보낼 가능성.-Possibility to send one video flow to many.

인터페이스interface

사용자 인터페이스(GUI)는 클라이언트 프로그램을 관리하는 편리하고 직관적으로 이해가능한 형태를 제공해야 한다. GUI는 프로그램 설정에 의한 동작의 용이한 방법 및 다른 사용자에의 간단하고 편리한 접속을 확보해야 한다.The user interface (GUI) should provide a convenient and intuitively understandable form of managing client programs. The GUI must ensure an easy way of operation by program setting and a simple and convenient connection to other users.

일 실시예에서 사용자 인터페이스(GUI)의 요건:In one embodiment, the requirements of a user interface (GUI) are:

- 사용자 인터페이스는 간단하고 직관적이어야 한다.The user interface should be simple and intuitive.

- 인터페이스는 미려한 현대식 설계를 가져야 한다.-The interface should have a beautiful modern design.

- 사용자 인터페이스는 인커밍 및 아웃고잉 비디오 플로우들을 보기 위한 2개의 다이얼로그들로 구성되어야 한다.The user interface should consist of two dialogs for viewing incoming and outgoing video flows.

- 사용자는 스크린의 크기까지 다이얼로그들의 크기를 크게 하고 리셋 상태로 다이얼로그들을 되돌릴 수 있는 가능성을 가져야 한다.The user must have the possibility to increase the size of the dialogs up to the size of the screen and return the dialogs to the reset state.

비디오 압축기는 엔코딩 프로세스 동안에 추적된 통계들 및 네트워크 커널에 축적되고 이로부터 수신된 통계들에 기초하여 비디오 플로우 엔코딩 프로세스 동안에 유연하게 조정 가능해야 한다.The video compressor should be flexibly adjustable during the video flow encoding process based on the statistics tracked during the encoding process and the statistics accumulated in and received from the network kernel.

일 실시예에서 비디오 압축기 요건:In one embodiment the video compressor requirements:

- 비디오 압축기는 위에 언급된 소프트웨어 및 하드웨어 요건에 따르는 전처리 및 후처리를 포함하여 회의모드에서 비디오 플로우의 동시적 엔코딩 및 디코딩을 실현해야 한다.The video compressor must realize simultaneous encoding and decoding of the video flow in conference mode, including pre and post processing in accordance with the software and hardware requirements mentioned above.

- 비디오 압축기는 엔코딩 및 디코딩의 대칭적 방식을 제공해야 한다.The video compressor should provide a symmetrical way of encoding and decoding.

- 초당 처리된 프레임 수는 5 이상 이어서 9600 BPS의 대역폭의 채널을 사용하여 만족할 만한 품질을 성취해야 한다.-The number of frames processed per second must be at least 5 followed by a satisfactory quality using a channel with a bandwidth of 9600 BPS.

- 보상모델은 정적 이미지의 점차적 질적 증가를 확보해야 한다.The compensation model should ensure a gradual qualitative increase of the static image.

- 보상모델은 가능한 네트워크 교란들을 처리할 수 있어야 한다.The compensation model should be able to handle possible network disturbances.

- 보상모델은 두가지 변형예로서, 데이터 배송을 보증하는 네트워크들(이러한 네트워크들을 사용한 하드웨어 구현을 위해) 및 데이터 배송을 보증하지 못하는 네트워크들(인터넷 유형의 네트워크들)에 대해 실현되어야 한다.The compensation model is two variants, for networks that guarantee data delivery (for hardware implementations using these networks) and for networks that do not guarantee data delivery (networks of the Internet type).

오디오 압축기Audio compressor

오디오 압축기는 오디오 플로우들의 웨이브렛들을 사용하여 엔코딩 및 디코딩을 수행한다. 주어진 모듈의 실현은 시장에서 입수될 수 있는 표준화된 오디오 플로우 압축 알고리즘의 사용과, 웨이브렛 기술에 기초하여 자신의 오디오 코덱을 개발할 가능성들의 분석인, 두 방향에서 앞서 있어야 한다.The audio compressor performs encoding and decoding using wavelets of audio flows. The realization of a given module must be ahead in two directions: the use of standardized audio flow compression algorithms available on the market and an analysis of the possibilities of developing your own audio codec based on wavelet technology.

일 실시예에서 오디오 압축기 요건:Audio compressor requirements in one embodiment:

- 오디오 압축기는 위에 언급된 소프트웨어 및 하드웨어 요건들에 따라 회의모드에서 비디오와 함께 오디오 플로우의 동시적 엔코딩 및 디코딩을 실현해야 한다.The audio compressor must realize simultaneous encoding and decoding of the audio flow with video in conference mode in accordance with the software and hardware requirements mentioned above.

- 오디오 압축기는 엔코딩 및 디코딩의 대칭적 방법을 제공해야 한다.The audio compressor must provide a symmetrical way of encoding and decoding.

- 오디오 압축기 작동은 일 때 비디오와 동기되어야 한다.Audio compressor operation should be synchronized with video when

- 사운드 품질은 사람의 음성을 이해하기에 충분해야 한다.Sound quality should be sufficient to understand human voice.

- 오디오 데이터 볼륨은 9600 BPS의 대역폭의 채널을 사용하여 240D BPS를 초과하지 말아야 한다. 이상적 볼륨은 1000 BPS이다.-The audio data volume should not exceed 240D BPS using 9600 BPS bandwidth channels. The ideal volume is 1000 BPS.

- 오디오 압축기는 가능한 네트워크 교란을 처리할 수 있어야 한다.The audio compressor should be able to handle possible network disturbances.

- 10/100MB 네트워크에의 접속을 위한 네트워크 카드Network card for accessing 10 / 100MB networks

일 실시예에서 클라이언트의 소프트웨어 요건:In one embodiment, the software requirements of the client:

- OS Windows 98 OSR 1, Windows Me, Windows 2000 -OS Windows 98 OSR 1, Windows Me, Windows 2000

- 한 세트의 다이렉트 쇼 드라이버들(카메라들 및 사운드 카드들은 드라이버들에 호환되어야 한다)A set of direct show drivers (cameras and sound cards must be compatible with the drivers)

- 무선통신채널을 통한 TCP/IP 프로토콜 드라이버-TCP / IP protocol driver through wireless communication channel

일 실시예에서 데이터 통신채널들에 대한 요건:In one embodiment, the requirements for data communication channels are:

- 디지털 무선통신 채널-Digital wireless communication channel

- 주어진 무선통신 채널들은 9600 BPS 이상의 대역폭의 전이중 통신을 제공해야 한다.Given wireless channels must provide full-duplex communications with bandwidths above 9600 BPS.

- 두 컴퓨터간의 다이렉트 다이얼-업 접속(혹은 ASP를 사용한 인터넷을 통한 접속)이거나,A direct dial-up connection between two computers (or via the Internet using ASP), or

- 두 컴퓨터들간의 다이렉트 접속을 위한 로컬 10/100 MB 네트워크Local 10/100 MB network for direct connection between two computers

비디오 압축기Video compressor

비디오 압축기는 비디오 플로우들의 웨이브렛들을 사용하여 엔코딩 및 디코딩을 수행한다. 주어진 프로세서는 다음의 작업 사이클을 갖는다.The video compressor performs encoding and decoding using wavelets of video flows. A given processor has the following work cycles.

- 전처리- Pretreatment

- 키 프레임들의 엔코딩Encoding of key frames

- 보상모델들Compensation Models

- 키 및 보상된 프레임들의 디코딩Decoding of the key and compensated frames

- 후처리- After treatment

전처리- 다음의 엔코딩, 즉 품질의 향상(이전의 프레임들들 통계들로부터 가용한 것에 기초하여)을 위해 필요한 비디오 이미지 준비. Preprocessing-Video image preparation required for the next encoding, i.e. improvement of quality (based on what is available from previous frames statistics).

키 프레임의 엔코딩은 웨이브렛 기술을 사용한 개발된 비디오 압축 방법들에 기초하여 수행된다.The encoding of the key frame is performed based on the developed video compression methods using wavelet technology.

보상방법들은 프레임들간의 차이만이 전송된다는 사실에 기인하여 보다 많은 수의 프레임들을 전송할 수 있게 한다. 이 방법은 전처리와 밀접히 관계가 있을 것이다. 보상방법들은 대부분 네트워크 교란에 좌우되기 때문에, 네트워크 커널과도 밀접히 관계가 있다. 보상된 프레임들의 엔코딩은 웨이브렛 기술에 기초하여 또한 수행된다.Compensation methods make it possible to transmit a larger number of frames due to the fact that only the differences between the frames are transmitted. This method will be closely related to pretreatment. Compensation methods are also closely related to the network kernel because they are mostly dependent on network disturbances. Encoding of the compensated frames is also performed based on the wavelet technique.

키 및 보상 프레임들의 디코딩은 웨이브렛 기술을 사용한 백-엔코딩을 사용하여 실현된다.Decoding of key and compensation frames is realized using back-encoding using wavelet technology.

후처리는 선명도 및 색 스펙트럼 개선을 위해 비디오 이미지에 필터들을 적용함으로써 비디오 품질 향상을 목적으로 한다.Post-processing aims at improving video quality by applying filters to the video image for improved sharpness and color spectrum.

본 발명의 상세한 설명에서 이 방법의 구체적이고 가장 바람직한 실현방식이 제공된다. 이 방법 단계들 및 이들의 특정 파라미터들이 상세히 설명되었지만 본 발명이 제공된 설명으로 제한된다는 것을 의미하지 않는다. 청구된 방법 및 이의 수정들의 부가적인 장점 또한 본 출원인들의 일반적인 발명의 개념들에 따라서 실현될 수 있다. In the description of the invention there is provided a specific and most preferred implementation of this method. Although these method steps and their specific parameters have been described in detail, it does not mean that the invention is limited to the description provided. Additional advantages of the claimed method and its modifications may also be realized in accordance with the general inventive concepts of the applicants.

Claims (2)

키(key) 및 예측 프레임(predictive frame)들의 시퀀스로서 비디오 데이터의 코딩을 이용하여 저 비트 레이트 통신 채널(low bit-rate communication channel)을 통해서 비디오 데이터를 전송하는 방법에 있어서:A method of transmitting video data over a low bit-rate communication channel using coding of video data as a sequence of keys and predictive frames: 키 프레임으로서 비디오 데이터 소스로부터 인입하는 프레임 시퀀스의 프레임을 코딩하는 단계;Coding a frame of a frame sequence to be incoming from the video data source as a key frame; 상기 저 비트 레이트 통신 채널을 통해서 코딩된 프레임을 전송하는 단계;Transmitting a coded frame over the low bit rate communication channel; 상기 저 비트 레이트 통신 채널을 통해서 전송된 프레임을 디코딩하는 단계;Decoding a frame transmitted over the low bit rate communication channel; 비 NQ/W(ratio NQ/W)의 정수부를 계산함으로써 상기 비디오 데이터 소스로부터 프레임 시퀀스에서 코딩에 할당되는 다음 프레임 F(J)의 수 J를 결정하는 단계로서, 여기서 N은 비디오 데이터 소스 프레임 레이트이며, Q는 상기 저 비트 레이트 통신 채널을 통해서 전송되는 비트들의 수이며, W는 상기 통신 채널의 용량인, 결정 단계;Determining the number J of the next frame F (J) allocated to coding in a frame sequence from the video data source by calculating an integer portion of ratio NQ / W, where N is the video data source frame rate Where Q is the number of bits transmitted on the low bit rate communication channel and W is the capacity of the communication channel; F(J) 및 R(r) 프레임 간의 차이(difference)의 최소값(D1)에 대응하는 상기 저 비트 레이트 통신 채널을 통해서 전송된 프레임 시퀀스에서 디코딩된 프레임 R(r)의 수 r을 결정하는 단계;Determining the number r of decoded frames R (r) in the frame sequence transmitted over the low bit rate communication channel corresponding to the minimum value D1 of the difference between F (J) and R (r) frames. ; 미리 결정된 임계값(Th)를 초과하지 않는 D1의 값에 따르는 R(r) 프레임에 대해서 예측 프레임으로서 상기 F(J) 프레임을 코딩하는 단계;Coding said F (J) frame as a predictive frame for an R (r) frame according to a value of D1 not exceeding a predetermined threshold Th; 상기 저 비트 레이트 통신 채널을 통해서 코딩된 F(J) 프레임을 전송하는 단 계를 포함하는, 비디오 데이터 전송 방법.Transmitting a coded F (J) frame over the low bit rate communication channel. 키 및 예측 프레임들의 시퀀스로서 비디오 데이터의 코딩을 이용하여 저 비트 레이트 통신 채널을 통해서 비디오 데이터를 전송하는 방법에 있어서:A method of transmitting video data over a low bit rate communication channel using coding of video data as a sequence of key and predictive frames: 키 프레임으로서 비디오 데이터 소스로부터 인입하는 프레임 시퀀스의 프레임을 코딩하는 단계;Coding a frame of a frame sequence to be incoming from the video data source as a key frame; 상기 저 비트 레이트 통신 채널을 통해서 코딩된 프레임을 전송하는 단계;Transmitting a coded frame over the low bit rate communication channel; 상기 저 비트 레이트 통신 채널을 통해서 전송된 프레임을 디코딩하는 단계;Decoding a frame transmitted over the low bit rate communication channel; 비 NQ/W의 정수부를 계산함으로써 상기 비디오 데이터 소스로부터 프레임 시퀀스에서 코딩에 할당되는 다음 프레임 F(J)의 수 J를 결정하는 단계로서, 여기서 N은 비디오 데이터 소스 프레임 레이트이며, Q는 상기 저 비트 레이트 통신 채널을 통해서 전송되는 비트들의 수이며, W는 상기 통신 채널의 용량인, 결정 단계;Determining the number J of the next frame F (J) assigned to coding in a frame sequence from the video data source by calculating an integer portion of non-NQ / W, where N is the video data source frame rate and Q is the low Determining a number of bits transmitted over a bit rate communication channel, where W is the capacity of the communication channel; F(J) 및 R(r) 프레임 간의 차이의 최소값(D1)에 대응하는 상기 저 비트 레이트 통신 채널을 통해서 전송된 프레임 시퀀스에서 디코딩된 프레임 R(r)의 수 r을 결정하는 단계;Determining the number r of decoded frames R (r) in the frame sequence transmitted over the low bit rate communication channel corresponding to the minimum value D1 of the difference between F (J) and R (r) frames; 미리 결정된 임계값 Th를 초과하는 D1의 값에 따르는 F(j) 및 R(s) 프레임들 간의 차의 최소값 D2에 대응하는 J0+p(J-J0)<j<1의 범위 내에서 상기 비디오 데이터 소스로부터 인입하는 프레임 시퀀스에서 프레임 F(j)의 수(j)를 결정하는 단계로서, 여기서 J0는 상기 비디오 데이터 소스로부터 인입하는 프레임 시퀀스에서 선행 코딩된 프레임의 수이며, p는 범위 0<p<1 내의 적응 파라미터이며, s는 상기 저 비트 레이트 통신 채널을 통해서 전송되는 프레임 시퀀스에서 디코딩된 프레임 R(s)의 수인, 결정 단계;The video in the range of J0 + p (J−J0) <j <1 corresponding to the minimum value D2 of the difference between the F (j) and R (s) frames according to the value of D1 exceeding a predetermined threshold Th Determining the number j of frames F (j) in the frame sequence coming from the data source, where J0 is the number of precoded frames in the frame sequence coming from the video data source, and p is the range 0 < an adaptation parameter in p <1, wherein s is the number of frames R (s) decoded in the frame sequence transmitted over the low bit rate communication channel; 상기 임계값 Th를 초과하지 않는 D2의 값에 따르는 R(s) 프레임에 대해서 예측 프레임으로서 상기 F(j) 프레임을 코딩하는 단계;Coding the F (j) frame as a predictive frame for an R (s) frame that conforms to a value of D2 that does not exceed the threshold Th; 상기 저 비트 레이트 통신 채널을 통해서 코딩된 F(J) 프레임을 전송하는 단계를 포함하는, 비디오 데이터 전송 방법.Transmitting a coded F (J) frame over the low bit rate communication channel.
KR1020077000043A 2004-06-30 2005-06-30 Method of video data transmitting KR20070061780A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58436404P 2004-06-30 2004-06-30
US60/584,364 2004-06-30

Publications (1)

Publication Number Publication Date
KR20070061780A true KR20070061780A (en) 2007-06-14

Family

ID=37872155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077000043A KR20070061780A (en) 2004-06-30 2005-06-30 Method of video data transmitting

Country Status (5)

Country Link
JP (1) JP2008505588A (en)
KR (1) KR20070061780A (en)
CN (1) CN101069361A (en)
CA (1) CA2576810A1 (en)
IL (1) IL180389A0 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117295207B (en) * 2023-11-24 2024-03-01 深圳市千岩科技有限公司 Atmosphere lamp equipment, instruction transmission and application methods thereof, and corresponding devices and medium

Also Published As

Publication number Publication date
IL180389A0 (en) 2007-06-03
CN101069361A (en) 2007-11-07
CA2576810A1 (en) 2006-01-12
JP2008505588A (en) 2008-02-21

Similar Documents

Publication Publication Date Title
CN104580991B (en) For conference system to the system and method adapted in real time of the conditions present of conference session
JP5268915B2 (en) Visual composition management technology for multimedia audio conferencing
US20060002469A1 (en) Method of video data transmitting
KR20070046812A (en) Method of data compression including compression of video data
CN102158690A (en) Remote multichannel real-time video monitoring system
WO2021057697A1 (en) Video encoding and decoding methods and apparatuses, storage medium, and electronic device
US11641447B2 (en) System and method for automatically adjusting key frame quantization parameter and frame rate
US20020154331A1 (en) Image data transmission apparatus and image data receiving apparatus
WO2011017874A1 (en) Seat module, customer service system and customer service implementation method
JP2004187170A (en) Video conference system
US20210352347A1 (en) Adaptive video streaming systems and methods
CN109963110A (en) Processing method, device, storage medium and the calculating equipment of multipart video-meeting
KR20070061780A (en) Method of video data transmitting
CN108924088A (en) A kind of 4K web camera transmission realizing method
WO2021057480A1 (en) Video coding method and video decoding method, and related apparatuses
US20140055471A1 (en) Method for providing scalable remote screen image and apparatus thereof
KR20090040107A (en) Method for real-time personal broadcasting
Safaaldin et al. A new teleconference system with a fast technique in HEVC coding
CN114640849B (en) Live video encoding method, device, computer equipment and readable storage medium
US8925027B2 (en) Participant aware configuration for video encoder
Kasai et al. The development of a multimedia transcoding system for mobile access to video conferencing
CN104702970A (en) Video data synchronization method, device and system
KR20090040106A (en) Method for real-time personal broadcasting
Guo et al. Adaptive transmission of split-screen video over wireless networks
Ahmad et al. Open source wavelet based video conferencing system using SIP

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid