TW201534107A - 非順序性行程長度編碼系統及方法 - Google Patents
非順序性行程長度編碼系統及方法 Download PDFInfo
- Publication number
- TW201534107A TW201534107A TW104106196A TW104106196A TW201534107A TW 201534107 A TW201534107 A TW 201534107A TW 104106196 A TW104106196 A TW 104106196A TW 104106196 A TW104106196 A TW 104106196A TW 201534107 A TW201534107 A TW 201534107A
- Authority
- TW
- Taiwan
- Prior art keywords
- adjacent
- run length
- value
- matching
- strokes
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/46—Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/46—Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
- H03M7/48—Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本發明揭示一種用於更新一行程長度編碼(RLE)流之方法,其包含:接收一要素,要素具有欲在一插入位置插入至RLE流中之一插入值,插入值具有複數個值其中之一,RLE流具有設置於複數行程中之要素,且各要素具有該等值其中之一;辨識一包含插入位置之行程;判斷插入值是否相同於插入位置處之要素之值;當插入值不同於插入位置處之要素之值時:判斷插入位置是否相鄰於該等行程其中之一或多個匹配行程,該等匹配行程之每一要素皆具有一與插入值相同之值;以及當插入位置僅相鄰於該等匹配行程其中之一時,擴展該等匹配行程其中之一。
Description
本申請案主張2014年2月27日在美國專利與商標局(United States Patent and Trademark Office)提出申請且標題為「具有非順序性輸入之行程長度編碼(Run Length Encoding with Non-Sequential Input)」之第61/945,744號美國臨時專利申請案之優先權及權益,該美國臨時專利申請案之全部揭示內容以引用方式併入本文中。
本發明之實施例係關於用於對一通信頻道中之資料進行編碼及解碼之系統及方法。
行程長度編碼(Run Length Encoding;RLE)係為一種藉由「行程」(即,呈某一掃描次序的具有相同值之數個要素)來表示資料要素之常用無損壓縮技術。舉例而言,以下序列「0,0,0,1,1,1,0,0,0,1,1」可由「(0,3),(1,3),(0,3),(1,2)」來表示,其中每一對中之第一數值決定行程之要素之值,且第二數值決定該值之重複次數。在以上實例中,序列係以三個0(0,3)開始、隨後係為三個1(1,3)、再隨後係為另三個0(0,3)、且最終係為二個1(1,2)。在二進制情況中,可省略要素之值,且表示形式則變為「(3,3,3,2)」,
其中RLE序列之第一數值指代要素「0」之重複次數。
行程長度編碼通常與以一光柵掃描次序運作之硬體(諸如顯示裝置及掃描器)一起使用。RLE之效率取決於資料之特性。舉例而言,當不同值之數目小時及當相同值常常以相鄰要素群組形式重複時,RLE提供較高壓縮性。可藉由對多維資料應用一線性掃描次序或藉由直接在多個維度上對重複次數進行編碼而將RLE應用於該多維資料。通常,一RLE編碼器係對以順序性次序提供且儲存於一行緩衝器(line buffer)或其他類型記憶體中之資料進行操作。若資料係以一非順序性次序產生,則通常緩衝該非順序性資料以使該資料完整,以便可以順序性次序將其提供至RLE編碼器。
本發明之實施例之態樣係關於一種非順序性行程長度編碼裝置。
根據本發明之一實施例,一種用於更新一行程長度編碼流之方法包含:由一處理器接收一要素,該要素具有欲在一插入位置插入至該行程長度編碼流中之一插入值,該插入值具有複數個值其中之一,該行程長度編碼流具有設置於複數個行程中之複數個要素,該等行程位於該行程長度編碼流之一起始位置與一結束位置之間,且各該要素具有該等值其中之一並在該行程長度編碼流中具有一位置;辨識該行程長度編碼流之該等行程中包含該插入位置之一行程;由該處理器判斷該插入值是否相同於該插入位置處之該要素之該值;當該插入值不同於該插入位置處之該要素之該值時:由該處理器判斷該插入位置是否相鄰於該行程長度編碼流之該等行程其中之一或多個鄰近匹配行程,該等鄰近匹配行程之每一要素皆具有一與該插入值相同之值;當該插入位置僅相鄰於該一或多個鄰近匹配行程
其中之一時,由該處理器擴展該一或多個鄰近匹配行程其中之一匹配行程;當該插入位置相鄰於該一或多個鄰近匹配行程其中之二匹配行程時,由該處理器合併該一或多個鄰近匹配行程其中之該二匹配行程;以及當該插入位置不相鄰於該一或多個鄰近匹配行程時,由該處理器創建一新行程。
該判斷該插入位置是否相鄰於一或多個鄰近匹配行程之步驟可包含:由該處理器計算自該插入位置至各該一或多個鄰近匹配行程之一或多個距離,各該一或多個鄰近匹配行程具有一左端及一右端;當該插入位置處於該一或多個鄰近匹配行程其中之二之間時,由該處理器計算距該一或多個鄰近匹配行程其中之一第一鄰近匹配行程之該右端之一左側距離、以及距該一或多個鄰近匹配行程其中之一第二鄰近匹配行程之該左端之一右側距離;當該插入位置處於該一或多個鄰近匹配行程其中之一與該起始位置之間時,由該處理器計算距該起始位置之一左側距離及距該一或多個鄰近匹配行程該其中之一行程之該左端之一右側距離;以及當該插入位置處於該一或多個鄰近匹配行程其中之一與該結束位置之間時,由該處理器計算距該一或多個鄰近匹配行程該其中之一行程之該右端之一左側距離以及距該結束位置之一右側距離。
該由該處理器判斷該插入位置是否相鄰於一或多個鄰近匹配行程之步驟可包含:當該左側距離大於1且該右側距離係為1時,或當該左側距離係為1且該右側距離大於1時,該處理器判斷該插入位置相鄰於僅一個鄰近匹配行程;當該左側距離係為1且該右側距離係為1時,該處理器判斷該插入位置處於二匹配行程之間;以及當該左側距離大於1且該右側距離大於1時,該處理器判斷該插入位置不相鄰於一或多個匹配行程。
該複數個值可包含二個值。
該複數個值可包含三個值。
該辨識該行程長度編碼流之包含該插入位置之該行程之步驟可包含:根據一或多個先前接收之要素,預測該行程長度編碼流之該行程。
該要素可包含複數個連續要素,各該連續要素具有該插入值,且其中該插入位置包含複數個連續位置,該方法更包含:將該行程長度編碼流之與該等連續位置對應之位置處之值替換為一與該等連續要素之該值不同之值。
該行程長度編碼序列可被填充以具有零長度的一額外行程。
該合併二匹配行程之步驟可包含:將該額外行程轉變成一具有一非零長度之行程。
根據本發明之一實施例,一種系統包含:一觸摸控制器;以及一行程長度編碼器,該行程長度編碼器耦合至該觸摸控制器,該行程長度編碼器用以:自該觸摸控制器接收一要素,該要素具有欲在一插入位置插入至一行程長度編碼流中之一插入值,該插入值具有複數個值其中之一,該行程長度編碼流具有設置於複數個行程中之複數個要素,該等行程位於該行程長度編碼流之一起始位置與一結束位置之間,且各該要素具有該等值其中之一並在該行程長度編碼流中具有一位置;辨識該行程長度編碼流之該等行程中包含該插入位置之一行程;判斷該要素之該插入值是否相同於該插入位置處之該值;當該插入值不同於該插入位置處之該要素之該值時:判斷該插入位置是否相鄰於該行程長度編碼流之一或多個鄰近匹配行程,該等鄰近匹配行程之每一要素皆具有一與該插入值相同之值;當
該插入位置僅相鄰於該一或多個鄰近匹配行程其中之一時,擴展該一或多個鄰近匹配行程其中之一匹配行程;當該插入位置相鄰於該一或多個鄰近匹配行程其中之二匹配行程時,合併該一或多個鄰近匹配行程其中之該二匹配行程;以及當該插入位置不相鄰於一或多個鄰近匹配行程時,創建一新行程。
該行程長度編碼器可用以藉由以下操作而判斷該插入位置是否相鄰於一或多個鄰近匹配行程:計算自該插入位置至各該一或多個鄰近匹配行程之一或多個距離,各該一或多個鄰近匹配行程具有一左端及一右端;當該插入位置處於該一或多個鄰近匹配行程其中之二之間時,計算距該一或多個鄰近匹配行程其中之一第一鄰近匹配行程之該右端之一左側距離、以及距該一或多個鄰近匹配行程其中之一第二鄰近匹配行程之該左端之一右側距離;當該插入位置處於該一或多個鄰近匹配行程其中之一與該起始位置之間時,計算距該起始位置之一左側距離及距該一或多個鄰近匹配行程該其中之一行程之該左端之一右側距離;以及當該插入位置處於該一或多個鄰近匹配行程其中之一與該結束位置之間時,計算距該一或多個鄰近匹配行程該其中之一行程之該右端之一左側距離以及距該結束位置之一右側距離。
該行程長度編碼器可用以藉由以下操作而判斷該插入位置是否相鄰於一或多個鄰近匹配行程:當該左側距離大於1且該右側距離係為1時,或當該左側距離係為1且該右側距離大於1時,判斷該插入位置相鄰於僅一個鄰近匹配行程;當該左側距離係為1且該右側距離係為1時,判斷該插入位置處於二匹配行程之間;以及當該左側距離大於1且該右側距離大於1時,判斷該插入位置不相鄰於一或多個匹配行程。
該複數個值可包含二個值。
該複數個值可包含三個值。
該行程長度編碼器可用以藉由以下操作而辨識該行程長度編碼流之包含該插入位置之該行程:根據一或多個先前接收之要素,預測該行程長度編碼流之該行程。
該要素可包含複數個連續要素,各該連續要素具有該插入值,其中該插入位置包含複數個連續位置,且其中該行程長度編碼器更用以將該行程長度編碼流之與該等連續位置對應之位置處之值替換為一與該等連續要素之該值不同之值。
該行程長度編碼序列可被填充以具有零長度的一額外行程。
該行程長度編碼器可用以藉由將該額外行程轉變成一具有一非零長度之行程而合併行程。
10‧‧‧輸入2D二進制陣列/陣列
12‧‧‧順序性輸入序列
14‧‧‧行程長度編碼(RLE)序列
20‧‧‧系統/螢幕上繪製系統
22‧‧‧具觸摸功能之顯示器/觸摸面板/顯示器
24‧‧‧觸摸控制器
26‧‧‧處理器
28‧‧‧行程長度編碼器
30‧‧‧顯示疊蓋器(或低延時視覺加速器)
40‧‧‧新要素
42‧‧‧新要素
400‧‧‧方法
402~424‧‧‧操作
600‧‧‧方法
602~624‧‧‧操作
圖式與說明書一起例示本發明之實例性實施例,且與本說明一起用於闡釋本發明之原理。
第1圖係為一例示原始資料及藉助行程長度編碼而壓縮之同一資料之示意圖;第2圖係為一例示根據本發明一實施例包含一行程長度編碼器之一計算器件之方塊圖;第3A圖、第3B圖、第3C圖、第3D圖、及第3E圖係為根據本發明一實施例其中藉由添加一新要素而修改一現有資料序列之不同情況之
示意圖;第4圖係為一例示根據本發明一實施例,一種用於將一新要素添加至行程長度編碼資料之方法之流程圖;第5A圖、第5B圖、第5C圖、第5D圖、第5E圖及第5F圖係為根據本發明一實施例在各種情況中將多個新要素添加至行程長度編碼二進制資料之方法之示意圖;以及第6圖係為例示根據本發明一實施例,一種用於將一新要素添加至行程長度編碼二進制資料之方法之流程圖。
在以下詳細說明中,以例示之方式來顯示及闡述本發明之僅某些實例性實施例。如熟習此項技術者將認識到,本發明可實施為諸多不同形式而不應被理解為僅限於本文中所陳述之實施例。在本說明書通篇中,相同參考編號標示相同元件。
本文中所使用之術語僅用於闡述特定實施例而並不意欲限制發明性概念。如本文中所使用,除非上下文另有清晰指示,否則單數形式「一(a、an)」及「該(the)」皆意欲亦包含複數形式。將更理解,當在本說明書中使用時,措詞「包含(comprise及/或comprising)」係指明所陳述特徵、整數、步驟、操作、元件及/或組件之存在,但並不排除一或多個其他特徵、整數、步驟、操作、元件、組件及/或其群組之存在或添加。如本文中所使用,措詞「及/或(and/or)」包含相關聯所列各項其中之一或多者之任何及所有組合。當位於一元件列表之前時,諸如「至少其中之一(at least one of)」等表達語修飾整個元件列表且不修飾該列表之個別元件。此
外,在闡述發明性概念之實施例時所使用之「可(may)」係指代「發明性概念之一或多個實施例」。此外,措詞「實例性(exemplary)」意欲指代一實例或例證。如本文中所使用,措詞「使用(use、using及used)」可被視為分別與措詞「利用(utilize、utilizing及utilized)」同義。當將一第一元件闡述為「耦合」或「連接」至一第二元件時,該第一元件可直接「耦合」或「連接」至該第二元件,或者一或多個其他介入元件可位於該第一元件與該第二元件之間。
本發明之實施例之態樣係關於一種非順序性行程長度編碼裝置。當與一非順序性資料源(諸如一用於觸控螢幕或手寫筆操作之2D繪製引擎)組合使用時,本發明之實施例以降低之儲存要求及降低之硬體成本便能達成對資料之行程長度編碼之效能。
本發明之實施例之態樣係關於用於執行行程長度編碼以容許以一任意次序進行逐要素編碼之系統及方法。本發明之實施例之其他態樣係關於一次對多個連續要素進行編碼以降低行程長度編碼過程之計算複雜度。此外,本發明之實施例之態樣涉及用於輸入資料(例如:用於緩衝輸入資料)之減小的或最小的記憶體大小且容許在記憶體大小與計算複雜度之間進行一工程折衷。
行程長度編碼(RLE)係為一種藉由「行程」(即,呈某一掃描次序的具有相同值之要素之數目)來表示資料要素之無損壓縮技術。第1圖係為一例示原始資料及藉由行程長度編碼而壓縮之同一資料之示意圖。如第1圖中所示,一輸入2D二進制陣列10包含表示「1」之突出顯示位置(例如:黑底中填有白色數字)及表示「0」之其他位置(例如:白底中填有黑色數字)。舉例而言,此種2D二進制陣列可係為與一觸敏面板(touch
sensitive panel)上已被一使用者觸摸之位置對應之觸摸感測器資料。
如第1圖中所示,以一光柵掃描次序(逐行地,自左上要素開始)來給輸入陣列之所有要素指派索引(如第1圖中所示,用自0至63之索引來標記陣列10之六十四個要素)。在陣列10下方及左側之順序性輸入序列12表示值為「1」之要素在其進入一RLE編碼器時之索引次序。在陣列10下方及右側將所得RLE序列14顯示為序列(0,5,5,5,5,4,6,2,32,0)-其中第一個「0」指示在序列之開始處不存在值為「0」之要素,下一個「5」指示存在五個值為「1」之要素,以此類推。在此實例中,因該等要素可具有二個可能值(例如:「0」或「1」)僅其中之一且由於「0」及「1」在二進制RLE序列中之隱含次序,省略了要素之值。然而,本發明之實施例並不限於此情形且可擴展至其中要素可具有一選自一組多於二個可能值之情況(例如:在具有如下四個可能值之情況中:「0」、「1」、「2」、或「3」)。
當用於編碼之輸入資料並非以一順序性次序組織時,先前技術RLE編碼器在一中間階段使用額外記憶體來緩衝資料且然後在編碼之前按順序對資料進行排序。此種應用之一實例係為一2D繪製引擎或將輸入觸摸事件之座標變換成在螢幕上繪製之畫素之應用程式。由於使用者可以一隨機次序對觸摸面板之各個部分進行觸摸,因此觸摸事件之座標未必係以光柵次序顯現。在此種情況中,先前技術RLE將需要對中間階段使用記憶體來儲存來自2D繪製引擎之資料,進而增加了此種系統之成本。
第2圖係為例示一根據本發明之一實施例,一行程長度編碼器28在一系統20中之作用之方塊圖。參看第2圖,可在一螢幕上繪製系統(on-screen drawing system)20(例如:一計算裝置,諸如一平板電腦、智慧型電話、膝上型電腦、或其他具有一觸摸螢幕介面之裝置)中使用一非
順序性RLE系統及方法,螢幕上繪製系統20包含一具觸摸功能之顯示器22、一觸摸控制器24、一執行一2D繪製演算法之處理器26、一行程長度編碼器28、顯示疊蓋器(overlay)(或低延時視覺加速器)30、及一顯示控制器32,如第2圖中所示。在此實例中,觸摸控制器24自觸摸面板22接收觸摸事件並對彼等觸摸事件之2D位置進行解碼。該等觸摸事件被供應至處理器26(在某些實施例中,處理器26及顯示疊蓋器30可係為同一組件)並由一2D繪製演算法分析,該2D繪製演算法產生一顯示座標序列,該顯示座標序列表示一欲在顯示器22上顯示之行。
2D繪製演算法產生座標之次序未必與一顯示掃描次序對應。舉例而言,一顯示掃描通常係自顯示器之頂部向顯示器之底部逐列地進行,其中每一列係自左向右進行掃描。然而,一使用者可在具觸摸功能之顯示器22上沿著任何與掃描方向不同的方向(例如:與直接自左向右不同之一方向)進行觸摸及拖動,進而產生以一與掃描次序不同之次序到達觸摸控制器24及處理器26之觸摸事件且進而使處理器26以一與掃描次序不同之次序產生影像資料。
根據本發明之實施例,行程長度編碼器28用於將行畫素之位置編碼成被傳遞至顯示疊蓋器30之一緊湊表示形式,顯示疊蓋器30對RLE流進行解碼並合成由顯示控制器32在顯示器22上繪製之最終影像。根據本發明之實施例,行程長度編碼器28可以諸如儲存於記憶體中之程式指令等多種方式來實施且由以下各者來執行:一通用處理器、一用以執行行程長度編碼操作之現場可程式化閘陣列(field programmable gate array;FPGA)、或一被設計成執行行程長度編碼操作之應用專用積體電路(application specific integrated circuit;ASIC)。此外,根據某些實施例,顯示器22可係
為一有機發光二極體(organic light-emitting diode;OLED)顯示器或一液晶顯示器(liquid crystal display;LCD)。
第3A圖、第3B圖、第3C圖、第3D圖、及第3E圖係為根據本發明之一實施例在各種情況中將一新要素添加至行程長度編碼二進制資料序列之方法之示意圖。該二進制資料序列包含複數個要素,其中每一要素可具有二個值(例如:0及1)其中之一,且其中每一要素位於該序列中之一特定位置(或索引)處。在非二進制情形中,該等要素可具有複數個值其中之一。舉例而言,在一2位元資料序列中,該序列之各要素可具有四個值其中之一,且在一8位元(一位元組)資料序列中,該序列之各要素可具有256個值其中之一。可將一具有一值(或插入值)之新要素在序列內之一插入位置處添加至該序列以替換該序列中已位於該插入位置處之現有要素。出於以下論述之目的,第3A圖、第3B圖、第3C圖、第3D圖、第3E圖、及第3F圖中所例示之序列中具有白色或無陰影正方形之位置被稱為具有值「0」,且序列中之帶陰影或黑色位置將被視為具有值「1」。第3A圖、第3B圖、第3C圖、第3D圖、及第3E圖例示一具有索引為0至13之14個二進制值之樣本序列。第3A圖中所示之實例性序列具有值11100000000111且因此包含三個行程,且當予以行程長度編碼時可表示為:(0,3,8,3)。如第3A圖中所示,正將一具有值(或「插入值」)「0」之新要素40在位置(或索引)7處添加至序列以替換位置7處之現有要素。新要素40係在處於具有八個0值之行程idx中之位置7處被添加至該序列。行程idx相鄰於行程idx-1及idx+1。
新要素40具有一與行程idx-1及idx+1之要素之值匹配之值。因此,可將行程idx-1視為一第一鄰近匹配行程,且可將行程idx+1視為一第二鄰近匹配行程(例如:如第3A圖中所示,新要素40以及行程idx-1及
idx+1皆具有相同匹配值「0」)。在二進制序列之情形中,相鄰行程將具有與插入值相同之值。然而,在非二進制情形中,相鄰行程idx-1及idx+1未必具有與插入值相同之值。自插入位置7至行程idx-1(在行程idx左側之行程)之右端之距離l係為5,且自插入位置7至行程idx+1(在第二行程右側之行程)之左端之距離r係為4。
第4圖係為一例示根據本發明之一實施例,一種用於將一新要素添加至行程長度編碼二進制資料之方法400之流程圖。下文將更詳細地闡述其中要素具有多於二個不同值的本發明實施例。
參看第4圖,在操作402中,藉由自現有資料或自一既定值(default value)產生一行程長度編碼序列(例如:其中所有值皆為0之一序列)來對用於更新一行程長度編碼序列之值之方法進行初始化,其中該序列具有複數個帶索引位置。在第3A圖、第3B圖、第3C圖、及第3D圖所示之實例中,初始行程長度編碼序列係為(0,3,8,3)。
假設存在一欲插入要素集合,則在操作404中,選擇下一欲作為一新要素插入之要素(例如:如第3B圖、第3C圖、第3D圖、第3E圖、及第3F圖中所例示之新要素40)。為在操作406中插入新要素,行程長度編碼器28基於新要素之索引(或者帶索引位置或位置)而辨識現有行程中該要素所欲落入之行程「idx」。
在判斷出對應行程之後,行程長度編碼器28判斷要素距行程idx之右邊界之距離(「r」)及距左邊界之距離(「l」),其中l係為行程idx中新要素40之位置與行程idx-1(例如:在行程idx左側或具有比行程idx低之索引之行程)之間的位置數目,且其中r係為行程idx中新要素之索引與行程idx+1(例如:在行程idx右側或具有比行程idx高之索引之行程)之間的索引數
目。若在行程idx左側不存在此種行程,則l表示新要素40之索引與序列之起始之間的位置數目,且若在行程idx右側不存在此種行程,則r表示新要素40之索引與序列之末尾之間的位置數目。可在辨識對應索引之後或在操作408之後立即執行此操作。
在操作408中,行程長度編碼器28判斷新要素40之值是否相同於行程idx中之要素之值。若是,則新要素40不對行程長度編碼序列做出任何改變,且行程長度編碼器返回至操作404中以選擇下一供插入之要素。舉例而言,如第3A圖中所示,由於新要素40之值係為「0」(如由白色正方形所表示)且其欲在索引7處插入,而索引7已係為一「0」值,因此不需要對現有序列做出改變。
若新要素40具有一與行程idx之值不同之值,則對於處置新要素之插入而言存在四種不同情形,該等情形取決於要素距行程之右邊界之距離(「r」)及距左邊界之距離(「l」),如第3B圖、第3C圖、第3D圖、及第3E圖中所例示。在以下論述中,當出現以下情形時,一要素係「相鄰」於一「鄰近行程」(例如:與該要素具有相同值的距當前行程idx最近之行程):距鄰近行程之距離係為1(例如:l=1或r=1)。當距鄰近行程之距離大於1時,則該要素不相鄰於該鄰近行程。
若行程長度編碼器在操作410中判斷插入至「idx」中之要素不相鄰於任何現有行程(l>1,r>1),如第3B圖中所示,則在操作412中,使當前行程idx「分裂」並創建二個額外行程(現有行程之大小被減小)。在此種情形中,需要使現有行程長度編碼流自新要素之位置移位。因此,行程長度編碼序列自(0,3,8,3)更新為(0,3,4,1,3,3),乃因具有八個0之原始行程被分解成一具有四個0之行程、一具有一個1之行程、及一具有三個0之行程。
若新要素40在兩側上與鄰近行程相距不大於1個單位,則在操作414中,行程長度編碼器28判斷新要素40是否僅在左側上相鄰於一具有相同值之現有行程(l=1,r>1),例如,如第3C圖中所例示。若是,則在操作416中,行程長度編碼器28使相鄰左行程idx-1增長(或者遞增或「向右增長」)並使當前行程idx縮減(或遞減)。
在第3C圖所示之實例中,行程長度編碼器28試圖將具有一值「1」之新要素40在位置3處添加至現有編碼序列中。由於位置3相鄰於在位置0至2中具有值「1」及長度為3之行程,因此新要素40相鄰於一具有相同值之行程。因此,左行程idx-1被轉變成一具有值「1」及長度為4之行程,且其中該要素所插入之具有值「0」及長度為8之行程被減小至一長度為7之行程。因此,行程長度編碼序列自(0,3,8,3)更新為(0,4,7,3)。
若新要素在左側上不相鄰於一行程,則在操作418中,行程長度編碼器判斷新要素40是否僅在右側上相鄰於一具有相同值之現有行程。若是,則行程長度編碼器28在操作420中以一與「向右增長」操作416類似之方式,使右側上之現有行程(idx+1)增長(或者遞增或「向左增長」)。
參看第3D圖,當新要素40在右側上相鄰於一現有行程(l>1,r=1)時,則使右側之相鄰行程(idx+1)遞增,同時使行程「idx」遞減。因此,行程長度編碼序列自(0,3,8,3)更新為(0,3,7,4)。
若行程長度編碼器28在操作422中判斷新要素40相鄰於二個與新要素40具有相同值之行程,則在操作424中,將該二個行程「合併」,且總行程數目被減小2。在此種情況中,合併之後的行程可被向左移位或填充以「0」。在第3E圖所示之實例中,原始序列係為1111111011111,其可以一RLE序列形式被表示為(0,7,1,5)。將序列之索引7處之值0替換為一值1之操
作會將該序列轉變成一具有十三個1之序列,其在未填充之情況下可被表示為RLE序列(0,13)。另一選擇為,若行程長度編碼序列被填充以0,則所得RLE序列將係為(0,13,0,0)。該方法之方塊圖如第4圖所示,其中最後條件檢查422係為清晰起見而顯示的且在技術上並非必需的,乃因此係為二進制情景中僅有之剩餘可能情形且因此可藉由一「else」條件來處置。
根據本發明之一實施例,非順序性行程長度編碼器28被一般化成一次對多個連續的相同值要素進行操作。欲插入之要素可能已被連續定序或可在到達時加以排序。因此,非順序性行程長度編碼器28可將連續要素分組在一起並以數目減少之操作將其與行程長度編碼序列合併。
第5A圖、第5B圖、第5C圖、第5D圖、第5E圖、及第5F圖係為根據本發明之一實施例在各種情況中將多個新要素42添加至行程長度編碼二進制資料之方法之示意圖。第6圖係為一例示根據本發明之一實施例,一種用於將一新要素添加至行程長度編碼二進制資料之方法600之流程圖。與關於第4圖所述操作大致類似之操作在本文中將不再予以贅述。在操作602中,以一與第4圖所例示操作402之方式類似之方式,藉由自現有資料或自一既定值產生一行程長度編碼序列(例如:一其中所有值皆為0之序列)來對更新一行程長度編碼序列之值之方法進行初始化,其中該序列具有複數個帶索引位置。假設存在一欲插入要素集合,則在操作604中,選擇下一組欲插入之連續要素(例如:如第5A圖、第5B圖、第5C圖、第5D圖、第5E圖、及第5F圖中所例示之新要素42)。
參看第5A圖,若欲在位置3至10處添加額外具有值1之新要素42,則根據本發明之一實施例,欲在位置3、4、5、6、7、8、9、及10處添加之新要素可被分組於一起且在一個操作中予以插入。
參看第6圖,在操作606中,非順序性行程長度編碼器28基於新要素之索引(或者帶索引位置或位置)而判斷新要素欲落入現有行程其中之哪一或哪些行程「idx」。
在操作607中,非順序性行程長度編碼器28判斷新要素是否與行程長度編碼序列之所有位置具有相同值。若是,則不需要進行任何操作,如第5A圖中所例示。
若並非所有現有位置皆與新要素42具有相同值,則在本發明之一實施例中,在操作608中,可將任何重疊值皆替換為一與新要素之值不同之值。舉例而言,如第5B圖中所例示,將在一行程長度編碼序列11100011101111(其可被表達為一RLE序列(0,3,3,3,1,4))之位置3至10處添加一具有七個「1」值之行程。因此,位置3至10已包含處於行程idx A 、idx B 、及idx C 中及處於行程idx+1之一部分中之「0」值與「1」值之一混合。在本發明之一實施例中,首先將新要素欲添加至的所有位置替換為一與新要素之值不同之值,以創建具有至少等於新要素數目之長度之單一行程。在某些例項中,此可使新行程與一相鄰行程合併。在第5B圖所示之實例中,行程idx A 、idx B 及idx C 被合併在一起且行程idx+1之大小被減小1以創建臨時序列1110000000111,該序列可被表達為RLE序列(0,3,7,3)。
在本發明之其他實施例中,若現有位置中之某些而非全部與新要素42具有相同值,則可一次一個地插入新要素42,如上關於第4圖所闡述。然而,本發明之實施例並不限於本文中所述之特定技術。
在判斷對應行程且替換各值以創建臨時序列之後,若必要,則行程長度編碼器28在操作609中判斷新要素42距該行程(例如:藉由合併行程idx A 、idx B 及idx C 而創建之第5B圖所示新行程idx k )之右邊界之距離(「r」)
及距左邊界之距離(「l」)。
在判斷距離l及r之後,剩餘操作可以一與以上在單要素實施例中所提供之方式實質上類似之方式繼續進行。
在操作610中,若l>1且r>1,則如第5C圖中所示,使行程idx分裂並創建二個額外行程。在第5C圖之實例中,假定原始RLE序列係為(0,3,8,3),則在操作612中藉由位置4至9處之6個新要素42而使長度為8之行程分裂,且新行程長度編碼序列係為(0,3,1,6,1,3)。此能夠減少計算工作量,乃因在單要素情況中,各該新要素42將一次一個地予以插入,藉此引起例如一個分裂操作及五個增長操作。
在操作614中,若l=1且r>1,則如第5D圖中所示,在操作616中,使左行程idx-1向右增長。在第5D圖之實例中,假定原始RLE序列係為(0,3,8,3)且在位置3至8處添加6個新要素42,則使長度為3之左行程idx-1增長6且使長度為8之行程idx縮減6,藉此產生新RLE序列(0,9,2,3)。
類似地,在操作618中,若l>1且r=1,則如第5E圖中所示,在操作620中,使右行程idx+1向左增長。在第5E圖之實例中,假定原始RLE序列係為(0,3,8,3)且在位置5至10處添加6個新要素42,則使長度為3之右行程idx-1增長6且使長度為8之行程idx縮減6,藉此產生新RLE序列(0,3,2,9)。
最終,在操作622中,若l=1且r=1,則如第5F圖中所示,在操作624中,將所有三個行程idx-1、idx及idx+1一起合併成單一行程。在第5F圖之實例中,假定原始RLE序列係為(0,3,8,3)且在位置3至10處添加8個新要素42,則合併該三個行程以產生新RLE序列(0,13)或在被填充時為序列(0,13,0,0)。
在其中序列並非二進制之情況(例如:其中序列之要素具有多於二個可能值之情形)中,當相鄰行程與新要素40具有相同值時,僅將新要素40合併至相鄰行程中。在非二進制情形中可應用上文所述之實質上相同之技術,其中做出如下修改:將距離l及r作為距與新要素40具有相同值之最近行程之距離來計算。舉例而言,在非二進制情形中,可以實質上相同方式來使用相同「分裂」及「合併」操作,其中非二進制情形中之「合併」將在左右二個行程皆與所插入要素具有相同值時執行。「向左增長」及「向右增長」操作將僅適用於其中右側鄰近行程或左側鄰近行程分別與所插入要素具有相同值之情形。在非二進制情形中將引入一種額外情形,其中在一現有行程之邊界處創建一新行程(例如:其中l=1且r>1,且左側鄰近行程之值不同於所插入值;其中r=1且l>1,且右側鄰近行程之值不同於所插入值;或當l=1且r=1,且左右兩側上之要素皆不同於所插入值時)。
可以任何次序或並行地評估不同情形(不相鄰、左側相鄰、右側相鄰、及左右兩側皆相鄰),且本發明之實施例並不限於本文中所述之次序。
儘管已結合某些實例性實施例闡述了本發明,然而應理解,本發明並不限於所揭示實施例,而是相反,意欲涵蓋隨附申請專利範圍及其等效內容之精神及範疇內所包含之各種潤飾及等效設置形式。
舉例而言,在一實施例中,對行程之包含欲編碼要素之位置進行之搜尋操作可使用預測。一種實施預測之可能性係自包含最後經編碼符號(或要素)之行程開始搜尋,此可在其中將新值緊密聚集在一起之實施例中減少搜尋時間。另外,可基於最後經編碼符號其中之一或多者之位置而預測搜尋方向(例如:向左、向右、向上、或向下)。
在本發明之某些實施例中,行程長度編碼器28可藉由以下操作而對記憶體與計算要求做出折衷:在例如初始化操作402期間所產生之RLE序列中使用額外零長度間隔來減少資料移位量。在現有行程之間用零填充初始RLE序列不會改變序列之意義(乃因一長度為零之行程表明在彼等現有行程之間並無具有該值之要素),但會消耗額外記憶體。然而,若使一現有行程分裂,則可使用RLE序列中具有0之現有相鄰位置來表示藉由該分裂所產生之新行程其中之一,藉此節省將所有現有行程向右移位之計算工作量。針對此額外計算效率所做之折衷係以未用之0形式來使用額外記憶體。
20‧‧‧系統/螢幕上繪製系統
22‧‧‧具觸摸功能之顯示器/觸摸面板/顯示器
24‧‧‧觸摸控制器
26‧‧‧處理器
28‧‧‧行程長度編碼器
30‧‧‧顯示疊蓋器(或低延時視覺加速器)
Claims (18)
- 一種用於更新一行程長度編碼流(run length encoded stream)之方法,該方法包含:由一處理器接收一要素,該要素具有欲在一插入位置插入至該行程長度編碼流中之一插入值,該插入值具有複數個值其中之一,該行程長度編碼流具有設置於複數個行程(run)中之複數個要素,該等行程位於該行程長度編碼流之一起始位置與一結束位置之間,且各該要素具有該等值其中之一並在該行程長度編碼流中具有一位置;辨識該行程長度編碼流之該等行程中包含該插入位置之一行程;由該處理器判斷該插入值是否相同於該插入位置處之該要素之該值;當該插入值不同於該插入位置處之該要素之該值時:由該處理器判斷該插入位置是否相鄰於該行程長度編碼流之該等行程其中之一或多個鄰近匹配行程,該等鄰近匹配行程之每一要素皆具有一與該插入值相同之值;當該插入位置僅相鄰於該一或多個鄰近匹配行程其中之一時,由該處理器擴展該一或多個鄰近匹配行程其中之一匹配行程;當該插入位置相鄰於該一或多個鄰近匹配行程其中之二匹配行程時,由該處理器合併該一或多個鄰近匹配行程其中之該二匹配行程;以及當該插入位置不相鄰於該一或多個鄰近匹配行程時,由該處理器創建一新行程。
- 如請求項1所述之方法,其中該判斷該插入位置是否相鄰於一或多個鄰近匹配行程之步驟包含:由該處理器計算自該插入位置至各該一或多個鄰近匹配行程之一或多個距離,各該一或多個鄰近匹配行程具有一左端及一右端;當該插入位置處於該一或多個鄰近匹配行程其中之二之間時,由該處理器計算距該一或多個鄰近匹配行程其中之一第一鄰近匹配行程之該右端之一左側距離、以及距該一或多個鄰近匹配行程其中之一第二鄰近匹配行程之該左端之一右側距離;當該插入位置處於該一或多個鄰近匹配行程其中之一與該起始位置之間時,由該處理器計算距該起始位置之一左側距離及距該一或多個鄰近匹配行程該其中之一行程之該左端之一右側距離;以及當該插入位置處於該一或多個鄰近匹配行程其中之一與該結束位置之間時,由該處理器計算距該一或多個鄰近匹配行程該其中之一行程之該右端之一左側距離以及距該結束位置之一右側距離。
- 如請求項2所述之方法,其中該由該處理器判斷該插入位置是否相鄰於一或多個鄰近匹配行程之步驟包含:當該左側距離大於1且該右側距離係為1時,或當該左側距離係為1且該右側距離大於1時,該處理器判斷該插入位置僅相鄰於一個鄰近匹配行程;當該左側距離係為1且該右側距離係為1時,該處理器判斷該插入位置處於二匹配行程之間;以及當該左側距離大於1且該右側距離大於1時,該處理器判斷該插入位 置不相鄰於一或多個匹配行程。
- 如請求項1所述之方法,其中該等值係由二個值組成。
- 如請求項1所述之方法,其中該等值包含三個值。
- 如請求項1所述之方法,其中該辨識該行程長度編碼流之包含該插入位置之該行程之步驟包含:根據一或多個先前接收之要素,預測該行程長度編碼流之該行程。
- 如請求項1所述之方法,其中該要素包含複數個連續要素,各該連續要素具有該插入值,以及其中該插入位置包含複數個連續位置,該方法更包含:將該行程長度編碼流之與該等連續位置對應之位置處之值替換為一與該等連續要素之該值不同之值。
- 如請求項1所述之方法,其中該行程長度編碼序列被填充以具有零長度的一額外行程。
- 如請求項8所述之方法,其中該合併二匹配行程之步驟包含:將該額外行程轉變成具有一非零長度之行程。
- 一種系統,包含:一觸摸控制器;以及一行程長度編碼器,耦合至該觸摸控制器,該行程長度編碼器用以:自該觸摸控制器接收一要素,該要素具有欲在一插入位置插入至一行程長度編碼流中之一插入值,該插入值具有複數個值其中之一,該行程長度編碼流具有設置於複數個行程中之複數個要素,該等行程位於該行程長度編碼流之一起始位置與一結束位置之間,且 各該要素具有該等值其中之一並在該行程長度編碼流中具有一位置;辨識該行程長度編碼流之該等行程中包含該插入位置之一行程;判斷該要素之該插入值是否相同於該插入位置處之該值;當該插入值不同於該插入位置處之該要素之該值時:判斷該插入位置是否相鄰於該行程長度編碼流之一或多個鄰近匹配行程,該等鄰近匹配行程之每一要素皆具有一與該插入值相同之值;當該插入位置相鄰於該一或多個鄰近匹配行程僅其中之一時,擴展該一或多個鄰近匹配行程其中之一匹配行程;當該插入位置相鄰於該一或多個鄰近匹配行程其中之二匹配行程時,合併該一或多個鄰近匹配行程其中之該二匹配行程;以及當該插入位置不相鄰於一或多個鄰近匹配行程時,創建一新行程。
- 如請求項10所述之系統,其中該行程長度編碼器用以藉由以下操作而判斷該插入位置是否相鄰於一或多個鄰近匹配行程:計算自該插入位置至各該一或多個鄰近匹配行程之一或多個距離,各該一或多個鄰近匹配行程具有一左端及一右端;當該插入位置處於該一或多個鄰近匹配行程其中之二之間時,計算距該一或多個鄰近匹配行程其中之一第一鄰近匹配行程之該右端之一 左側距離、以及距該一或多個鄰近匹配行程其中之一第二鄰近匹配行程之該左端之一右側距離;當該插入位置處於該一或多個鄰近匹配行程其中之一與該起始位置之間時,計算距該起始位置之一左側距離及距該一或多個鄰近匹配行程該其中之一行程之該左端之一右側距離;以及當該插入位置處於該一或多個鄰近匹配行程其中之一與該結束位置之間時,計算距該一或多個鄰近匹配行程該其中之一行程之該右端之一左側距離以及距該結束位置之一右側距離。
- 如請求項11所述之系統,其中該行程長度編碼器用以藉由以下操作而判斷該插入位置是否相鄰於一或多個鄰近匹配行程:當該左側距離大於1且該右側距離係為1時,或當該左側距離係為1且該右側距離大於1時,判斷該插入位置相鄰於僅一個鄰近匹配行程;當該左側距離係為1且該右側距離係為1時,判斷該插入位置處於二匹配行程之間;以及當該左側距離大於1且該右側距離大於1時,判斷該插入位置不相鄰於一或多個匹配行程。
- 如請求項10所述之系統,其中該等值係由二個值組成。
- 如請求項10所述之系統,其中該等值包含三個值。
- 如請求項10所述之系統,其中該行程長度編碼器用以藉由以下操作而辨識該行程長度編碼流之包含該插入位置之該行程:根據一或多個先前接收之要素,預測該行程長度編碼流之該行程。
- 如請求項10所述之系統,其中該要素包含複數個連續要素,各該連續要素具有該插入值,其中該插入位置包含複數個連續位置,以及其中該行程長度編碼器更用以將該行程長度編碼流之與該等連續位置對應之位置處之值替換為一與該等連續要素之該值不同之值。
- 如請求項10所述之系統,其中該行程長度編碼序列被填充以具有零長度的一額外行程。
- 如請求項17所述之系統,其中該行程長度編碼器用以藉由將該額外行程轉變成具有一非零長度之行程而合併行程。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461945744P | 2014-02-27 | 2014-02-27 | |
US61/945,744 | 2014-02-27 | ||
US14/629,415 US9160363B2 (en) | 2014-02-27 | 2015-02-23 | Run length encoding with non-sequential input |
US14/629,415 | 2015-02-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201534107A true TW201534107A (zh) | 2015-09-01 |
TWI657693B TWI657693B (zh) | 2019-04-21 |
Family
ID=53883265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104106196A TWI657693B (zh) | 2014-02-27 | 2015-02-26 | 非順序性行程長度編碼系統及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9160363B2 (zh) |
KR (1) | KR102161746B1 (zh) |
CN (1) | CN104883193B (zh) |
TW (1) | TWI657693B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105357532A (zh) * | 2015-11-06 | 2016-02-24 | 苏州博思得电气有限公司 | 一种压缩方法、解压缩方法、压缩装置及解压缩装置 |
CN106507108B (zh) * | 2016-12-07 | 2018-04-17 | 杜昀晓 | 图像编码、解码的方法和装置 |
US10644721B2 (en) * | 2018-06-11 | 2020-05-05 | Tenstorrent Inc. | Processing core data compression and storage system |
US10812102B2 (en) * | 2018-06-29 | 2020-10-20 | Apple Inc. | Efficient data encoding |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9727398D0 (en) * | 1997-12-29 | 1998-02-25 | Sgs Thomson Microelectronics | Run-length encoding |
KR100993443B1 (ko) * | 2001-11-22 | 2010-11-09 | 파나소닉 주식회사 | 복호화 방법 |
KR20040099945A (ko) * | 2003-05-20 | 2004-12-02 | 삼성전자주식회사 | 디스크형 기록 매체로의 기록을 위한, 데이터 변조 방법및 그 장치와, 이에 사용되는 싱크 코드 삽입 방법 및 그장치와, 이를 구현하기 위한 프로그램을 기록한 기록 매체 |
US6897793B1 (en) * | 2004-04-29 | 2005-05-24 | Silicon Image, Inc. | Method and apparatus for run length limited TMDS-like encoding of data |
WO2006030366A1 (en) * | 2004-09-17 | 2006-03-23 | Koninklijke Philips Electronics N.V. | Method of converting a user bitstream into coded bitstream, method for detecting a synchronization pattern in a signal, a record carrier, a signal, a recording device and a playback device |
US7483585B2 (en) * | 2004-12-01 | 2009-01-27 | Ati Technologies Ulc | Image compression using variable bit size run length encoding |
JP2006286084A (ja) * | 2005-03-31 | 2006-10-19 | Fujitsu Ltd | 符号器、復号器および符号化方法 |
JP4587175B2 (ja) | 2005-05-19 | 2010-11-24 | キヤノン株式会社 | 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
CN101729198B (zh) * | 2008-10-27 | 2014-04-02 | 华为技术有限公司 | 一种编解码方法、装置及系统 |
US8755619B2 (en) | 2009-11-19 | 2014-06-17 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding and decoding image data using run of the image data |
CN102682810B (zh) * | 2011-03-17 | 2014-11-26 | 清华大学 | 游程长度比率调制数据记录方法及其系统 |
-
2015
- 2015-02-23 US US14/629,415 patent/US9160363B2/en active Active
- 2015-02-26 TW TW104106196A patent/TWI657693B/zh active
- 2015-02-27 CN CN201510089942.6A patent/CN104883193B/zh active Active
- 2015-02-27 KR KR1020150028621A patent/KR102161746B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
CN104883193A (zh) | 2015-09-02 |
CN104883193B (zh) | 2019-08-23 |
US9160363B2 (en) | 2015-10-13 |
KR102161746B1 (ko) | 2020-10-06 |
KR20150102746A (ko) | 2015-09-07 |
US20150244396A1 (en) | 2015-08-27 |
TWI657693B (zh) | 2019-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8644620B1 (en) | Processing of matching regions in a stream of screen images | |
EP3035683A1 (en) | Method and device for image compression, having enhanced matching of fixed-width, variable-length pixel sample strings | |
US8787460B1 (en) | Method and apparatus for motion vector estimation for an image sequence | |
CN101925925B (zh) | 基于预测的图像处理 | |
JP2017126890A (ja) | 符号化装置及びその制御方法 | |
TW201534107A (zh) | 非順序性行程長度編碼系統及方法 | |
KR20200108465A (ko) | 인코딩 방법, 디코딩 방법, 및 디바이스 | |
CN106133791B (zh) | 用于颜色压缩的群聚和编码 | |
JP2024063094A (ja) | 画像処理のためのシステム、方法、および装置 | |
KR102542239B1 (ko) | 데이터 출력 방법, 획득 방법, 장치 및 전자 기기 | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
JP6457558B2 (ja) | データ圧縮装置およびデータ圧縮方法 | |
KR20140046908A (ko) | 공간 데이터 압축 장치 및 그 방법과, 압축된 공간 데이터 복원 장치 및 그 방법 | |
US11606561B2 (en) | Method and apparatus for adaptive point cloud attribute coding | |
CN106101731B (zh) | 图像无损压缩方法及装置 | |
US20120293432A1 (en) | Method for touch device to transmit coordinates, method for touch device to transmit displacement vector and computer-readable medium | |
US9077993B2 (en) | Method of converting a video file to a graphics interchange format image using same palette table for consecutive frames | |
WO2017199149A1 (en) | A new pyramid algorithm for video compression and video analysis | |
EP3110155B1 (en) | A method for predictive coding of depth maps and a depth map encoder | |
US8270742B1 (en) | Data compression for computer-aided design systems | |
CN113099231B (zh) | 确定亚像素插值位置的方法、装置、电子设备和存储介质 | |
WO2012097209A1 (en) | A fast implementation of context selection of significance map | |
CN116074533B (zh) | 运动矢量预测方法、系统、电子设备及存储介质 | |
JP7496956B2 (ja) | 画像処理のためのシステム、方法、および装置 | |
US9992514B2 (en) | System and a method for disocluded region coding in a multiview video data stream |