KR20120058227A - 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 - Google Patents
프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 Download PDFInfo
- Publication number
- KR20120058227A KR20120058227A KR1020100119910A KR20100119910A KR20120058227A KR 20120058227 A KR20120058227 A KR 20120058227A KR 1020100119910 A KR1020100119910 A KR 1020100119910A KR 20100119910 A KR20100119910 A KR 20100119910A KR 20120058227 A KR20120058227 A KR 20120058227A
- Authority
- KR
- South Korea
- Prior art keywords
- text
- image
- user terminal
- encoding
- screen
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012937 correction Methods 0.000 claims description 2
- 238000012805 post-processing Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 8
- 238000005192 partition Methods 0.000 abstract 1
- 238000000638 solvent extraction Methods 0.000 abstract 1
- 230000005540 biological transmission Effects 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/23—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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 block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Discrete Mathematics (AREA)
- Artificial Intelligence (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Information Transfer Between Computers (AREA)
Abstract
프리젠테이션 가상화를 위한 이미지 부호화 방법 및 가상화 서버를 제공한다. 프리젠테이션 가상화를 위한 가상화 서버는 사용자 단말 별로 가상 화면을 구성하는 가상 레이어 관리부, 상기 사용자 단말로부터 요청 받은 서비스를 실행하고, 상기 서비스의 실행 결과를 상기 가상 화면에 표시하는 서비스 운용부, 상기 가상 화면을 복수 개의 서브 블록으로 분할하는 화면 분할 처리부 및 상기 서브 블록을 영상과 텍스트로 구분하여 서로 다른 부호화 방식을 사용하여 부호화하는 이미지 부호화부를 포함한다.
Description
본 발명은 클라우드 서비스의 핵심 기술 중의 하나인 프리젠테이션 가상화를 제공하기 위한 화면분할 이미지 부호화 방법 및 서버에 관한 것이다. 프리젠테이션 가상화를 위해, 가상화 서버는 서비스 플랫폼의 화면을 렌더링 한 후, 부호화하여 프리젠테이션 가상화를 제공하는 과정에서, 텍스트 영역의 가독성을 최대한 보장하면서도 네트워크를 통한 단말로의 전송량을 줄일 수 있는 기술에 관한 것이다.
고객의 네트워크 서비스에 대한 욕구가 다양해지고, 각종 서비스가 대용량, 고속화되고 있으며, 이러한 서비스를 통해 제공되는 게임, 음악, 영화 등 다양한 분야의 서비스를 네트워크를 통해 쉽게 접속하여 제공받을 수 있을 뿐만 아니라, 화려한 UI/UX, 가상현실 기술 및 실시간 인터액션 기술 등을 기반으로 현실과 같은 가상세게를 제공하고 있다. 이로 인해, 서비스 단말에게는 더욱 더 고기능, 고성능이 요구되고 있으며, 서비스 단말도 이전보다 더욱 더 빠른 발전 속도를 보이고 있다.
그러나, 서비스 발전 속도가 단말 발전 속도보다 더 빨라서 서비스 수용에 제약이 되어 왔으며, 단말의 가격 또한 급속도로 증가하고 있어서, 사용자에게도 큰 부담이 되고 있다. 따라서, 이러한 문제를 해결하기 위해, 단말에서 수행하는 기능을 플랫폼에서 처리하고 단말은 가볍게 운용되는 클라우드 기술이 대두되고 있다.
참고로, 클라우드 컴퓨팅이란 인터넷을 통해 흩어져 있는 하드웨어, 소프트웨어 및 데이터 등의 IT 자원을 논리적으로 하나로 묶어서 표준화된 서비스 형태로 필요한 만큼 동적으로 활용할 수 있게 제공하는 컴퓨팅 기술이다.
프리젠테이션 가상화는 클라우드 컴퓨팅의 핵심 기술 중의 하나로서, 프로세스가 그래픽과 I/O와는 별도의 장소에서 이루어지게 하여, 서버에서 응용 프로그램을 가동 시키면서 프로그램의 통제는 사용자 단말에서 이루어지게 하는 것이다.
프리젠테이션 가상화를 하는 경우, 중앙에 있는 서버에서 응용 프로그램을 구동하고, 사용자 단말은 운영체제와 관계없이 서버에 접속하여 해당 응용 프로그램을 이용할 수 있다.
하지만, 모든 사용자 단말이 중앙의 서버에 연결하여 응용 프로그램을 실행하고, 그 결과 화면을 계속 전송받기 때문에, 충분한 네트워크 대역폭이 없는 경우, 사용자 단말 상에 결과 화면을 실시간으로 자연스럽게 표시할 수 없는 문제점이 있다. 또한, 이를 해결하기 위해 네트워크 대역폭을 확장하는 것을 고려해 볼 수 있지만, 이 경우 네트워크 대역폭의 확장에 비용이 많이 드는 문제점이 있다.
한편, 선행기술로서, 대한민국 출원공개번호 제10-2004-0072612호에는 “동영상 압축 및 복원방법과 그 장치”라는 명칭의 발명이 개시되어 있는 바, 동영상을 다수의 블록으로 분할하고 일부 화소들을 제거하여 크기를 축소하고, 축소된 블록에 대하여 순차적으로 DCT, 양자화 및 엔트로피 부호화 처리하여 압축하는 방법과 압축된 데이터를 순차적으로 엔트로피 복호화, 역양자화 및 역 DCT 수행하여 축소된 블록들을 복원하고, 축소이전 블록에서 복원된 블록내 화소값들과 대각선 라인을 형성하는 위치의 화소들을 검출하여 일차 보간하고, 이어서 나머지 위치의 화소들을 이차 보간하는 방식으로 삭제된 화소들을 보간하여 블록들을 복원하는 방법과 복원된 정방형 블록들을 원 화면 영상 데이터로 재구성하는 방법에 대해 개시되어 있다. 하지만 선행기술은 화면의 분할 블록을 영상과 텍스트 속성으로 구분하여 각각 별도의 압축 방식을 이용하여 압축하지 않으므로, 압축이 많은 경우, 텍스트의 가독성이 떨어지는 문제점이 있다.
따라서, 상기와 같은 문제점을 해결하고, 서브 블록을 영상과 텍스트로 구분하여 각각 별도의 부호화 방법을 이용하여 부호화함으로써 전송되는 데이터량을 감소키키면서도 텍스트의 가독성을 유지하는 기술이 요구되고 있다.
본 발명은 상술한 종래의 문제점을 극복하기 위한 것으로서, 본 발명의 목적은 한정된 네트워크 대역폭을 이용하는 경우에도 텍스트의 가독성을 희생시키지 않고 프리젠테이션 가상화를 구현할 수 있는 방법을 제공하는 것이다.
상기한 본 발명의 목적을 달성하기 위한 본 발명의 제 1 측면에 따른 프리젠테이션 가상화를 위한 가상화 서버는, 사용자 단말 별로 가상 화면을 구성하는 가상 레이어 관리부, 상기 사용자 단말로부터 요청 받은 서비스를 실행하고, 상기 서비스의 실행 결과를 상기 가상 화면에 표시하는 서비스 운용부, 상기 가상 화면을 복수 개의 서브 블록으로 분할하는 화면 분할 처리부 및 상기 서브 블록을 영상과 텍스트로 구분하여 서로 다른 부호화 방식을 사용하여 부호화하는 이미지 부호화부를 포함한다.
또한, 본 발명의 제 2 측면에 따른 프리젠테이션 가상화를 위한 화면분할 이미지 부호화 방법은, 사용자 단말에 전송할 가상 화면의 정보를 취득하는 단계, 상기 가상 화면을 복수 개의 서브 블록으로 분할하는 단계, 서브 블록 특성에 따라 상기 서브 블록을 영상과 텍스트로 구분하는 단계 및 상기 영상 서브 블록과 텍스트 서브 블록을 구분하여 개별적으로 부호화하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단에 의하면, 프리젠테이션 가상화를 구현하기 위한 이미지 부호화 과정에서 네트워크 대역폭의 제한을 만족하면서 이미지 내의 텍스트의 가독성을 최대한 유지할 수 있다.
또한, 전술한 본 발명의 과제 해결 수단에 의하면, 네트워크 대역폭이 좁은 네트워크 내의 단말 또는 저성능의 단말을 이용하여 프리젠테이션 가상화를 구현할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 프리젠테이션 가상화를 위한 가상화 서버의 세부 구성도이다.
도 2는 본 발명의 일 실시예에 따른, 이미지 부호화 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른, 화면을 서브 블록으로 분할한 도면이다.
도 2는 본 발명의 일 실시예에 따른, 이미지 부호화 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른, 화면을 서브 블록으로 분할한 도면이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른, 프리젠테이션 가상화를 위한 가상화 서버의 세부 구성도이다.
도 1에 도시된 바와 같이, 프리젠테이션 가상화를 위한 가상화 서버(100)는 네트워크를 통해 다수의 사용자 단말(200)과 통신하며, 사용자 단말(200)의 서비스 요청을 받아 서비스를 실행하고, 그 결과 화면을 사용자 단말(200)로 전송하여 화면에 표시할 수 있도록 한다.
사용자 단말(200)은 원하는 서비스, 예를 들어, 응용 프로그램의 실행, 동영상, 음악 등의 멀티미디어 파일의 재생 등을 가상화 서버(100)에 요청하고, 가상화 서버(100)로부터 요청한 서비스의 실행 결과 화면을 JPG나 BMP등의 포맷으로된 이미지로 전송 받아 화면에 출력한다.
가상화 서버(100)는 복수의 사용자 단말(200-1, 200-2, 200-3)로부터 서비스 실행 요청을 받아서 해당 서비스를 실행한다. 각각의 사용자 단말(200-1 ~ 200-3)에 대해 개별적인 가상 레이어를 작성하고, 요청된 서비스의 실행 화면 및 그 결과 화면을 사용자 단말로 전송해 준다.
가상화 서버(100)는 서비스 운용부(110), 가상 레이어 관리부(120), 화면 분할 처리부(130), 이미지 부호화부(140) 및 전송부(150)를 포함한다.
서비스 운용부(110)는 사용자 단말(200)로부터 요청받은 서비스를 실행하고, 그 실행 결과를 가상화면에 표시한다. 구체적으로, 서비스 운용부(110)는 사용자 단말로부터 서비스, 예를 들어, 응용 프로그램의 실행, 동영상, 음악 등의 멀티미디어 파일의 재생 등의 실행 요청을 받아서 사용자 단말(200) 대신 가상화 서버(100) 상에서 실행하고, 실행 과정 및 실행 결과에 따른 화면 출력을 후술할 가상 레이어 관리부에 제공할 수 있다.
가상 레이어 관리부(120)는 사용자 단말 별로 가상 화면을 구성한다. 구체적으로, 가상 레이어 관리부(120)는 가상화 서버(100)에 연결된 사용자 단말(200) 별로 개별적인 가상 레이어를 구성하고, 상기 서비스 운용부(110)에서 전송되는 화면 출력 정보를 렌더링할 수 있다. 또한, 사용자 단말(200)로부터 요청 받은 서비스가 복수 개인 경우, 서비스 운용부(110)로부터 해당되는 서비스의 화면 정보를 전송받아 사용자 단말(200)에 표시할 화면을 렌더링한다.
화면 분할 처리부(130)는 사용자 단말에 대응되는 가상 화면을 복수 개의 서브 블록으로 분할한다. 구체적으로, 화면 분할 처리부(130)는 사용자 단말에 제공하기 위해 렌더링된 가상 화면을 일정한 사이즈로 분할할 수 있다. 예를 들어, 화면 전체를 16x16, 32x32, 64x64 의 크기로 분할할 수 있다. 분할된 서브 블록은 전송을 위한 최소 단위로, 화면이 일부분만 변경될 경우 부분 갱신(partial update)에 사용될 수 있다.
화면을 복수 개의 서브 블록으로 분할한 결과는 도 3에 표시되어 있다. 도 3 에서는 8x8로 분할된 결과를 보여주고 있다.
이미지 부호화부(140)는 분할된 서브 블록을 영상과 텍스트로 구분하여 각기 다른 부호화 방식을 사용하여 부호화한다. 사용자 단말(200)의 화면을 가상화하여 전송하는 경우, 사용자 단말(200)의 화면에는 다양한 특성을 가지는 콘텐츠들이 복합적으로 화면에 표시될 수 있다. 특히, 색깔이 다양하고 화소의 변화가 높은 영상 영역과, 흑백의 단순한 색깔 구성과 화소의 변화가 높지 않은 텍스트 영역으로 크게 구분할 수 있다.
영상 영역의 경우, JPEG, BMP와 같이 높은 압축율을 가지는 손실 부호화를 하더라도 시각적으로 화질의 열화가 크게 눈에 띄지 않지만, 텍스트 영역의 경우에는 손실 부호화를 하는 경우 글자 테두리가 많이 뭉개지게 되어 화질의 열화가 시각적으로 매우 민감하게 드러나며 글자의 가독성에 영향을 미치게 된다. 따라서, 텍스트 영역에 대해서는 손실 부호화 보다는 무손실 부호화 방식으로 부호화하는 것이 바람직하다.
이미지 부호화부(140)는 서브 블록으로 분할된 화면 정보를 전송 받아, 각각의 서브 블록에 대해 영상 영역에 해당되는지 아니면 텍스트 영역에 해당되는지를 판단할 수 있다. 이때, 판단 방법의 일 예로, 화소의 히스토그램 특성을 분석하여 구분할 수 있다.
영상 영역의 경우, 화소의 변화도가 높기 때문에 화소의 변화가 연속적(continuous)인 데 반해, 텍스트 영역은 흑과 백으로 이루어져 있어서 화소의 히스토그램이 discrete한 특성을 나타내는 경우가 많다. 따라서, 화소가 연속적으로 계속 이어져 있으면 영상 블록으로 분류하고, 이산적 특성을 가지면 텍스트 블록으로 분류할 수 있다. 서브 블록에 영상과 텍스트가 혼합되어 있는 경우에는 해당 서브 블록을 영상과 텍스트로 다시 분할한 다음, 영상 블록과 텍스트 블록으로 구분할 수 있다.
그 후, 분류한 영상 서브 블록과 텍스트 서브 블록을 각각 다른 부호화 방식으로 부호화하여 후술할 전송부(150)를 통해 사용자 단말(200)에 제공할 수 있다. 부호화 과정에 대해서는 도 2에서 자세히 후술하기로 한다.
전송부(150)는 이미지 부호화부(140)에서 부호화된 서브 블록들을 해당되는 사용자 단말(200)로 전송한다. 전송부(150)는 하나의 화면을 구성하는 서브 블록이 모두 전송되었는지 여부를 체크하고, 아직 전송되지 않은 서브 블록을 찾아서 재전송할 수 있다.
또한, 전송부(150)는 텍스트 서브 블록이 손실 부호화된 경우에, 사용자 단말에게 상기 텍스트 서브 블록이 손실 부호화되었음을 통지하여, 사용자 단말에서 해당 텍스트 서브 블록에 대해 글자 테두리 보정을 높이는 후처리를 실시하도록 할 수 있다.
다음으로, 프리젠테이션 가상화를 위한 이미지 부호화 방법을 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른, 이미지 부호화 방법을 설명하기 위한 흐름도이다. 도 2에 도시된 바와 같이, 가상화 서버(100)는 사용자 단말(200)과 가상화 서버(100) 간의 최대 허용 전송 대역폭을 확인한다(S200). 최대 전송 대역폭은 각각의 사용자 단말(200)에 대해 프리젠테이션 가상화를 제공하여 사용자 단말(200)의 화면에 정보를 표시하기 위해 필요한 최소한의 데이터량을 근거로 결정될 수 있다. 사용자 단말(200)로의 데이터 전송이 최대 전송 대역폭을 넘는 경우, 부호화 비트율을 재조정하여 화면 부호화 후의 데이터량을 더 작게 압축할 수 있다.
이후, 가상화 서버(100)는 화면을 복수 개의 서브 블록으로 분할하고, 분할된 서브 블록을 영상 서브 블록 및 텍스트 서브 블록으로 구분한다(S202).
이후, 전체 화면을 무손실 부호화하는 경우에 필요한 부호화 비트의 총합과 사용자 단말(200)로의 최대 전송 대역폭을 비교하여(S204), 부호화 비트의 합이 최대 전송 대역폭보다 적은 경우에는 전체 서브 블록에 대해 무손실 부호화 처리를 할 수 있다(S206). 서브 블록 전체에 대해 무손실 부호화한 후에 부호화된 이미지 데이터를 사용자 단말(200)로 전송한다(S232).
만일, 부호화 비트의 합이 최대 전송 대역폭보다 큰 경우에는 영상 블록에 대해서 손실 부호화 처리를 하도록 변경할 수 있다. 이 경우, 영상 블록에 대한 최초 손실 부호화 비트율은 R0_image라고 한다. 첫 서브 블록을 선택하고(S208), 선택된 서브 블록의 히스토그램을 검사하여 discrete한 경우에는 해당 서브 블록을 텍스트 블록으로 취급하고, continuous한 경우에는 해당 서브 블록을 영상 블록으로 취급한다(S210).
텍스트 블록의 경우, 처음에는 무손실 부호화한다(S212). 텍스트 블록에 대한 최초 무손실 부호화 비트율은 R0_text이며, 이 값은 최초에는 100%(무손실)이 될 것이다.
선택된 서브 블록을 R0_text를 이용하여 무손실 부호화하고, 최대 전송 대역폭(Ttot)에서 해당 블록의 부호화 비트(Tlossless)를 뺀다(S214). 만일, 해당 블록의 부호화 비트(Tlossless)를 뺀 값이 0보다 작은 경우, 다시 말해 최대 전송 대역폭을 초과하는 경우에는 R0_text를 조정하여 손실 부호화로 변경하고, 변경된 R0_text를 이용하여 최초 서브 블록부터 부호화 작업을 다시 수행한다(S218). 위의 작업을 전체 서브 블록에 대해 수행할 때까지 반복하여 실시한다(S228).
영상 블록의 경우, 최초 손실 부호화 비트율 R0_image를 이용하여 해당 영상 블록을 손실 부호화한다(S220). 이후, 최대 전송 대역폭(Ttot)에서 해당 블록의 부호화 비트(Tloss)를 뺀다(S222). 만일, 해당 블록의 부호화 비트(Tloss)를 뺀 값이 0보다 작은 경우, 다시 말해 최대 전송 대역폭을 초과하는 경우에는 R0_image를 조정하고, 조정된 R0_image를 이용하여 최초 서브 블록부터 부호화 작업을 다시 수행한다(S226). 위의 작업을 전체 서브 블록에 대해 수행할 때까지 반복하여 실시한다(S228).
모든 서브 블록에 대해 부호화 작업을 수행한 경우, 수행된 이미지 데이터를 사용자 단말(200)로 전송한다(S232).
이와 같은 화면 이미지 부호화 방법을 통해 부호화에 필요한 정보량을 줄이면서 텍스트 영역의 가독성을 크게 개선할 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비 휘발성 매체, 분리형 및 비 분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비 휘발성, 분리형 및 비 분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Claims (9)
- 프리젠테이션 가상화를 위한 가상화 서버에 있어서,
사용자 단말 별로 가상 화면을 구성하는 가상 레이어 관리부,
상기 사용자 단말로부터 요청 받은 서비스를 실행하고, 상기 서비스의 실행 결과를 상기 가상 화면에 표시하는 서비스 운용부,
상기 가상 화면을 복수 개의 서브 블록으로 분할하는 화면 분할 처리부 및
상기 서브 블록을 영상과 텍스트로 구분하여 개별적으로 부호화하는 이미지 부호화부
를 포함하는 가상화 서버.
- 제 1 항에 있어서,
상기 부호화된 서브 블록을 상기 사용자 단말로 전송하는 전송부를 더 포함하는 가상화 서버.
- 제 1 항에 있어서,
상기 이미지 부호화부는, 영상 서브 블록은 손실 부호화하고 텍스트 서브 블록은 무손실 부호화하는 것인 가상화 서버.
- 제 1 항에 있어서,
상기 이미지 부호화부는 화소의 히스토그램 특성을 이용하여 서브 블록을 영상과 텍스트로 구분하는 것인 가상화 서버.
- 제 2 항에 있어서,
상기 전송부는, 상기 텍스트 서브 블록이 손실 부호화된 경우에, 상기 사용자 단말에게 상기 텍스트 서브 블록이 손실 부호화되었음을 통지하여, 상기 사용자 단말에서 상기 텍스트 서브 블록에 대해 글자 테두리 보정을 높이는 후처리를 하도록 지시하는 것인 가상화 서버.
- 프리젠테이션 가상화를 위한 화면분할 이미지 부호화 방법에 있어서,
사용자 단말에 전송할 가상 화면의 정보를 취득하는 단계,
상기 가상 화면을 복수 개의 서브 블록으로 분할하는 단계,
서브 블록 특성에 따라 상기 서브 블록을 영상과 텍스트로 구분하는 단계 및
상기 영상 서브 블록과 텍스트 서브 블록을 구분하여 개별적으로 부호화하는 단계
를 포함하는 화면분할 이미지 부호화 방법.
- 제 6 항에 있어서,
상기 부호화된 서브 블록을 상기 사용자 단말에 전송하는 단계를 더 포함하는 화면분할 이미지 부호화 방법.
- 제 6 항에 있어서,
상기 부호화하는 단계는, 서브 블록 전체에 대해 무손실 부호화할 경우의 필요한 데이터량이 제한 데이터량을 초과하는 경우에, 영상 서브 블록에 대해 손실 부호화 하는 것인 화면분할 이미지 부호화 방법.
- 제 8 항에 있어서,
상기 부호화하는 단계는, 제한 데이터량에서 영상 서브 블록의 손실 부호화에 필요한 데이터량을 제외하고 남은 데이터량이 텍스트 서브 블록의 무손실 부호화에 필요한 데이터량보다 적은 경우에, 텍스트 서브 블록을 손실 부호화하는 것인 화면 분할 이미지 부호화 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100119910A KR101805550B1 (ko) | 2010-11-29 | 2010-11-29 | 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 |
US13/306,446 US8620096B2 (en) | 2010-11-29 | 2011-11-29 | Virtualization server for presentation virtualization and image data encoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100119910A KR101805550B1 (ko) | 2010-11-29 | 2010-11-29 | 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120058227A true KR20120058227A (ko) | 2012-06-07 |
KR101805550B1 KR101805550B1 (ko) | 2017-12-07 |
Family
ID=46162302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100119910A KR101805550B1 (ko) | 2010-11-29 | 2010-11-29 | 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8620096B2 (ko) |
KR (1) | KR101805550B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140045013A (ko) * | 2012-10-05 | 2014-04-16 | 삼성전자주식회사 | Api 정보를 이용한 클라우드 디스플레이 화면의 부호화 방법 및 그 장치 |
KR20160109805A (ko) * | 2015-03-13 | 2016-09-21 | 엔트릭스 주식회사 | 클라우드 스트리밍 서비스 시스템, 변화된 이미지의 분할을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103548300B (zh) * | 2011-07-25 | 2016-10-19 | 三菱电机株式会社 | 加密装置以及加密方法 |
KR20130137459A (ko) * | 2012-06-07 | 2013-12-17 | 삼성전자주식회사 | 디스플레이 장치, 디스플레이 장치를 제어하기 위한 사용자 단말 및 그 제어 방법 |
CN103873886B (zh) * | 2012-12-14 | 2017-02-22 | 华为技术有限公司 | 一种处理图像信息的方法、装置及系统 |
KR102049789B1 (ko) | 2013-04-25 | 2019-11-28 | 삼성전자 주식회사 | 휴대단말기의 정보 전송장치 및 방법 |
CN110392098B (zh) * | 2019-07-01 | 2020-09-11 | 中国科学院信息工程研究所 | 一种自适应虚拟桌面传输方法及装置 |
CN117395429A (zh) * | 2023-10-17 | 2024-01-12 | 上海久尺网络科技有限公司 | 画面内容混合编码传输方法、装置、设备以及存储介质 |
CN118055151B (zh) * | 2024-04-15 | 2024-06-14 | 湖南马栏山视频先进技术研究院有限公司 | 一种云桌面gpu直通虚拟化重定向管理系统及方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001045301A (ja) * | 1999-08-02 | 2001-02-16 | Fuji Xerox Co Ltd | 画像処理装置 |
US6546397B1 (en) * | 1999-12-02 | 2003-04-08 | Steven H. Rempell | Browser based web site generation tool and run time engine |
US7079157B2 (en) * | 2000-03-17 | 2006-07-18 | Sun Microsystems, Inc. | Matching the edges of multiple overlapping screen images |
WO2004054268A1 (en) | 2002-12-10 | 2004-06-24 | Kyung-Soo Rim | Method and apparatus for compressing and decompressing moving picture data |
US8015232B2 (en) * | 2007-10-11 | 2011-09-06 | Roaming Keyboards Llc | Thin terminal computer architecture utilizing roaming keyboard files |
-
2010
- 2010-11-29 KR KR1020100119910A patent/KR101805550B1/ko active IP Right Grant
-
2011
- 2011-11-29 US US13/306,446 patent/US8620096B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140045013A (ko) * | 2012-10-05 | 2014-04-16 | 삼성전자주식회사 | Api 정보를 이용한 클라우드 디스플레이 화면의 부호화 방법 및 그 장치 |
KR20160109805A (ko) * | 2015-03-13 | 2016-09-21 | 엔트릭스 주식회사 | 클라우드 스트리밍 서비스 시스템, 변화된 이미지의 분할을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR101805550B1 (ko) | 2017-12-07 |
US20120141039A1 (en) | 2012-06-07 |
US8620096B2 (en) | 2013-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101805550B1 (ko) | 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버 | |
US9075560B2 (en) | Real-time compression with GPU/CPU | |
US20180270496A1 (en) | Composite video streaming using stateless compression | |
US20180288363A1 (en) | Methods and apparatuses for image processing to optimize image resolution and for optimizing video streaming bandwidth for vr videos | |
WO2021068598A1 (zh) | 共享屏幕的编码方法、装置、存储介质及电子设备 | |
EP2759140B1 (en) | Remote presentation session encoding method and encoder with low complexity | |
US8995763B2 (en) | Systems and methods for determining compression methods to use for an image | |
US20140010289A1 (en) | Video stream | |
EP2652951B1 (en) | Method and system for encoding display data | |
EP3806462A1 (en) | Image encoding and decoding method , related device and storage medium | |
CN115190345B (zh) | 用于显示媒体的协调控制方法、客户端设备及存储介质 | |
CN112188209A (zh) | 视频流解码方法、装置、计算机设备和存储介质 | |
WO2023040825A1 (zh) | 媒体信息的传输方法、计算设备及存储介质 | |
CN111836092A (zh) | 一种虚拟桌面的数据处理方法、装置及相关组件 | |
CN110545446A (zh) | 一种桌面图像编码、解码方法、相关装置及存储介质 | |
EP3681159A1 (en) | Processing media using neural networks | |
KR20160015128A (ko) | 클라우드 스트리밍 서비스 시스템, 이미지 타입에 따른 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 | |
CN113055729B (zh) | 一种云化机顶盒图像差分处理方法及装置 | |
Sazawa et al. | RVEC: Efficient remote desktop for the engineering CLOUD | |
Nguyen et al. | An Efficient Video Streaming Architecture with QoS Control for Virtual Desktop Infrastructure in Cloud Computing | |
Gui | The computer desktop image compression based on clustering algorithm | |
CN115152222A (zh) | 过度平滑渐进式图像 | |
CN118870009A (zh) | 图像编码方法、解码方法、装置、设备、介质及产品 | |
CN116489132A (zh) | 虚拟桌面数据传输方法、服务器、客户端和存储介质 | |
CN111506374A (zh) | 基于不同对象的云应用ui交互方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right |