TW202403508A - 編碼/解碼觸覺資料的方法及設備 - Google Patents
編碼/解碼觸覺資料的方法及設備 Download PDFInfo
- Publication number
- TW202403508A TW202403508A TW111137092A TW111137092A TW202403508A TW 202403508 A TW202403508 A TW 202403508A TW 111137092 A TW111137092 A TW 111137092A TW 111137092 A TW111137092 A TW 111137092A TW 202403508 A TW202403508 A TW 202403508A
- Authority
- TW
- Taiwan
- Prior art keywords
- signal
- data
- layer
- haptic
- signals
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 101
- 230000000694 effects Effects 0.000 claims abstract description 88
- 230000015654 memory Effects 0.000 claims description 47
- 230000008447 perception Effects 0.000 claims description 29
- 230000006870 function Effects 0.000 description 60
- 238000009877 rendering Methods 0.000 description 50
- 238000004891 communication Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 25
- 238000012545 processing Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 18
- 108010076504 Protein Sorting Signals Proteins 0.000 description 13
- 239000013598 vector Substances 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 6
- 230000003155 kinesthetic effect Effects 0.000 description 6
- 230000005291 magnetic effect Effects 0.000 description 6
- 230000011664 signaling Effects 0.000 description 6
- 230000035807 sensation Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000000638 stimulation Effects 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 235000019994 cava Nutrition 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000002435 tendon Anatomy 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- 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/016—Input arrangements with force or tactile feedback as computer generated output to the user
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了對表示觸覺效果的觸覺訊號進行編碼/解碼的方法和設備。觸覺訊號根據分層表示進行編碼,分層表示包括複數個層(11到14),不同的層級與每一層相關聯。觸覺訊號的編碼包括在第一層(11)中對包括一個或多個基本訊號的第一組基本訊號(111、112)編碼。表示第一組的每一基本訊號的第一數據在該第一層中被編碼,每一基本訊號在確定的空間中表示。除了第一數據之外,第二數據在第一層中被編碼,第二數據表示每一基本訊號的調變。表示確定的空間的第三數據然後在與第一層(11)不同的層中編碼,該層具有高於第一層的層級的層級。
Description
本發明總體上係關於觸覺資料壓縮,並且具體地,關於代表觸覺效果的編碼/解碼資料的方法及設備。
本部分旨在向讀者介紹技術的各個態樣,這些態樣可能與以下描述和/或要求保護的本發明的至少一個示例性實施例的各個態樣有關。咸信該論述有助於為讀者提供背景訊息以促進更好地理解本發明的各個態樣。
觸覺技術廣義上是指藉由施加力、振動、運動、和其他感覺向終端使用者提供訊息來在使用者介面中重建觸覺的任何技術。
觸覺回饋涵蓋了廣泛的可能的刺激實施方式,但主要分為感知觸覺技術和動覺觸覺技術:感知觸覺回饋是指諸如振動、摩擦或微變形等感覺,而動覺觸覺回饋是指提供力覺的感覺,既可以刺激機械刺激,也可以刺激與身體的位置和運動有關的刺激。
觸覺回饋或觸覺效果的呈現是使用觸覺裝置(也稱為觸覺致動器)獲得的。例如,可以通過使用諸如偏軸轉動慣量(Eccentric Rotating Mass,ERM)、線性諧振致動器(Linear Resonant Actuators,LRA)和諸如音圈馬達(Voice Coil Motors,VCM)或壓電致動器(Piezoelectric Actuators,PZT)之類的大帶寬致動器之類的觸覺裝置來獲得振動觸覺效果。動覺效果可以通過致動器施加阻止肢體運動的力來呈現,這種效果僅在肌肉和肌腱上感受到,而不是在皮膚上。觸覺裝置的其他示例包括阻力回饋裝置、主動力回饋裝置和皮膚壓痕裝置。
觸覺回饋已越來越多地結合到可攜式電子設備中,稱為「手持設備」或「可攜式設備」,例如行動電話、智慧型手機和可攜式遊戲裝置。例如,一些可攜式遊戲應用程式能夠以類似於與配置為提供觸覺回饋的大型遊戲系統一起使用的控制裝置(例如,操縱桿等)的方式振動。此外,諸如行動電話和智慧型手機之類的裝置能夠通過振動向使用者提供各種警報。此外,觸覺效果可用於模擬「真實世界」動態事件,例如視訊遊戲中彈跳球的感覺。
為了在終端用戶側呈現觸覺效果或觸覺回饋,必須對表示要呈現的觸覺效果的數據和/或訊號進行編碼,然後將其傳輸到觸覺裝置。
在觸覺效果技術領域,表示觸覺效果的觸覺訊號的編碼主要遵循兩種不同的方法,即:
在脈衝碼調變(Pulse Code Modulation,PCM)檔案中編碼觸覺訊號;或者
在向量數據的形式下對一組參數進行編碼,允許重建觸覺訊號。
在第一種情況下(在PCM檔案中編碼觸覺訊號),可以使用CSV或WAV檔案。這種解決方案是內存密集型的,但能夠儲存複雜的觸覺訊號。這樣的編碼具有一旦編碼就不容易修改的缺點。此外,振幅調變不能輕易地與頻率調變分開,這是使用不同類別的致動器呈現觸覺訊號時的問題(例如,音圈能夠呈現振幅和頻率調變訊號,而LRA僅限於振幅調變訊號)。
在第二種情況下(參數編碼,也稱為向量編碼),觸覺訊號被編碼為要由彩現引擎呈現的函數組合。這種解決方案的優點是可以在運行時由應用程式使用該觸覺訊號輕鬆修改。然而,這樣的解決方案的缺點在於假定在彩現引擎中實現了確定的呈現模型。
在過去的幾年裡,已經開發了幾種基於向量觸覺數據編碼的解決方案。
例如,Apple
®已經開發並提出了一種檔案格式,其縮寫為AHAP(Apple Haptic Audio Pattern)。AHAP檔案是符合JSON(JavaScript對象表示法)的觸覺和音訊模式的字典表示形式,可以在文字編輯器或任何配置為以JSON格式導出內容的程式中編寫。AHAP格式僅支持對振動觸覺回饋進行編碼,而不能對其他觸覺效果(例如動覺回饋)進行編碼。此外,AHAP也僅限於由Apple
®的Core Haptic庫呈現,此類庫僅限於在iOS
®兼容裝置上運行的彩現引擎。
Immersion Corporation已經開發並提出了另一種檔案格式,該格式縮寫為IVS(Immersion Vibration Source)。IVS檔案具有可擴展標記語言(「XML」)格式。IVS格式僅支持對振動觸覺回饋進行編碼,而不能對其他觸覺效果(例如動覺回饋)進行編碼。
用於觸覺數據編碼的現有格式存在許多限制,並且不能對使用者期望在沉浸感態樣增加使用者體驗的各種類型的觸覺效果進行編碼。
以下部分呈現了至少一個示例性實施例的簡化總結,以便提供對本發明的一些態樣的基本理解。該概述不是示例性實施例的廣泛概述。它不旨在識別實施例的關鍵或關鍵元件。以下概述僅以簡化形式呈現示例性實施例中的至少一個示例性實施例的一些態樣,作為本文其他部分提供的更詳細描述的前奏。
根據本發明的第一態樣,提供了一種在編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號進行編碼的方法。為了達到該目的,對觸覺訊號的分層表示進行編碼,分層表示包括複數個層,層級與複數個層中的每一層相關聯,其中編碼包括:
在複數個層的第一層中,對表示至少一基本訊號的調變的第一數據編碼;和
在複數個層中具有高於第一層的層級的層中,對表示觸覺感知模態的第二數據編碼。
在示例性實施例中,該方法還包括在第一層中,藉由對表示第一組基本訊號的每一基本訊號的第三數據編碼,對包括至少一基本訊號的第一組基本訊號編碼,該每一基本訊號表示在確定的空間表示,該確定的空間為根據該觸覺感知模態。
在示例性實施例中,第三數據包括:
表示至少一基本訊號的類型的數據;和/或
表示至少一基本訊號的相位的數據,以及第一數據包括表示確定空間中複數個點的坐標的數據。
在另一示例性實施例中,複數個層還包括具有其層級高於第一層的層級的第二層、其層級高於第二層的層級的第三層、和其層級高於第三層的層級的第四層。
在另一個示例性實施例中,觸覺訊號的編碼進一步包括:
在第二層中,藉由對第二組的每一序列中表示每一序列的一個或多個調變訊號的序列的第一訊息編碼,對包括至少一個或多個調變訊號的序列的第二組序列編碼,每一調變訊號是從第一組的基本訊號中獲得的,該第一組的基本訊號是從與基本訊號相關聯的第二數據調變的;
在第三層中,藉由對每一第一組合表示每一第一組合所包含序列數量的第二訊息編碼,對包含第二組的一個或多個序列的至少一第一組合的第一組合的第三組編碼;和
在第四層中,藉由對表示在第二組合中所包含的第一組合數量的第三訊息編碼,對第三組的一個或多個第一組合的第二組合編碼。
在另外的示例性實施例中,第二組的至少一個序列包括從不同類型的基本訊號獲得的複數個調變訊號。
在另一示例性實施例中,至少一個基本訊號對應於恆定訊號。
在另一示例性實施例中,觸覺訊號的編碼還包括在複數個層中的至少一層中編碼元數據,元數據的至少一部分包括表示與至少一個基本訊號相關聯的應用程式介面調用的數據。
根據本發明的第二態樣,提供了一種從編碼的觸覺訊號數據解碼觸覺訊號的方法,該方法包括對觸覺訊號的分層表示解碼,分層表示包括複數個層,層級與複數個層中的每一層相關聯,該解碼包括:
從複數個層的第一層中,對表示調變至少一個基本訊號的調變的第一數據解碼;和
從具有高於第一層的層級的層級的複數個層的層中,對表示觸覺感知模態的第二數據解碼。
在示例性實施例中,解碼還包括從第一層中,藉由對表示第一組的每一基本訊號的第三數據解碼,對包括至少一基本訊號的第一組基本訊號解碼,每一基本訊號在確定的空間表示,確定的空間為根據觸覺感知模態。
在示例性實施例中,觸覺訊號的解碼進一步包括:
從第二層中,藉由對第二組的每一序列中表示一個或多個調變訊號的第一訊號解碼,對包括至少一個或多個調變訊號序列的第二組序列解碼,每一調變訊號是從第一組的基本訊號中獲得的,該第一組的基本訊號是從與基本訊號相關聯的第二數據調變的;
從第三層中,藉由對每一第一組合表示每一第一組合所包含序列數量的第二訊息解碼,對包含第二組的一個或多個序列的至少一第一組合的第一組合的第三組解碼;和
從第四層中,藉由對表示在第二組合中所包含的第一組合數量的第三訊息解碼,對第三組的一個或多個第一組合的第二組合解碼。
在另一個示例性實施例中,觸覺訊號的解碼還包括對從複數個層中的至少一層的解碼元數據,元數據的至少一部分包括表示與至少一個基本訊號相關聯的應用程式介面調用的數據。
根據本發明的第三態樣,提供了一種在編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號編碼的裝置,其中該裝置包括與至少一個被配置為實現根據本發明的第一態樣的方法的處理器相關聯的記憶體。
根據本發明的第四態樣,提供了一種從編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號解碼的裝置,其中該裝置包括與至少一個被配置為實現根據本發明的第二態樣的方法的處理器相關聯的記憶體。
根據本發明的第五態樣,提供了一種位元流,該位元流具有表示至少一個觸覺訊號的數據,該觸覺訊號表示至少一種觸覺效果,該數據包括:
在每一層具有相關聯的層級的複數個層的第一層中,表示至少一基本訊號的調變得第一數據;和
在具有高於第一層的層級的層級的複數個層的一層中,表示觸覺感知模態的第二數據。
在示例性實施例中,位元流還包括表示包括至少一基本訊號的一組基本訊號中的每個基本訊號的第三數據,每個基本訊號在確定的空間中表示。
根據本發明的第六態樣,提供了一種包括指令的計算機程式產品,當該程式由一個或多個處理器執行時,使一個或多個處理器執行根據本發明的第一態樣的方法。
根據本發明的第七態樣,提供了一種承載用於執行根據本發明的第一態樣的方法的程式碼的指令的非暫態儲存媒體。
根據本發明的第八態樣,提供了一種包括指令的計算機程式產品,當該程序由一個或多個處理器執行時,使一個或多個處理器執行根據本發明的第二態樣的方法。
根據本發明的第九態樣,提供了一種承載用於執行根據本發明的第二態樣的方法的程式碼的指令的非暫時性儲存媒體。
根據本發明的第十態樣,提供了一種呈現觸覺回饋的方法,該方法包括:
接收表示該觸覺回饋的數據位元流;
根據表示觸覺感知模態的訊息(對應於觸覺回饋的類型)選擇觸覺呈現模型,該訊息包含在位元流中;
藉由用觸覺呈現模型處理位元流中所包括的數據的至少一部分來生成觸覺訊號;
將表示觸覺訊號的數據傳輸到至少一致動器以呈現觸覺回饋。
在一個示例性實施例中,該呈現方法還包括:
接收表示身體至少一部分位置的數據,該位置係以確定的頻率獲取;
對位置進行上採樣,
其中,觸覺訊號的產生進一步根據上採樣位置。
在另一示例性實施例中,上採樣是根據至少一致動器的特性。
在進一步的實施例中,利用觸覺呈現模型處理位元流中所包括的數據的至少一部分是根據至少一致動器的特性。
根據本發明的第十一態樣,提供了一種呈現觸覺回饋的設備,其中該設備包括與至少一處理器相關聯的記憶體,該處理器被配置為實現根據本發明的第十態樣的方法
至少一個示例性實施例的具體性質以及該至少一個示例性實施例的其他目的、優點、特徵和用途將從以下結合隨附圖式對示例的描述中變得顯而易見。
在下文中將參照隨附圖式更全面地描述示例性實施例中的至少一個,其中示出了示例性實施例中的至少一個的示例。然而,示例性實施例可以以許多替代形式來體現,並且不應被解釋為限於本文所闡述的示例。因此,應當理解,無意將示例性實施例限制為所公開的特定形式。相反,本公開旨在涵蓋落入本發明的精神和範圍內的所有修改、等同物和替代物。
這些態樣中的至少一個總體上涉及一種對一個或多個觸覺訊號進行編碼的方法和裝置,每個觸覺訊號表示觸覺效果。每個觸覺訊號有利地根據分層表示進行編碼,分層表示包括複數個層,例如2、3、4、或更多層。確定的層級與每一層相關聯,例如,最低層級與第一層相關聯並且層級隨層而增加。觸覺訊號的編碼包括在第一層中對表示調製至少一個基本訊號的第一數據進行編碼。表示觸覺感知模態的第二數據(例如對應於觸覺回饋類型的觸覺感知模態,例如,振動觸覺回饋、力回饋、剛度回饋、紋理回饋或溫度回饋)被編碼在不同於第一層,其層級高於第一層的層級。用作基本訊號的表示空間的確定空間取決於觸覺感知模態。
該至少一個基本訊號例如對應於在接收表示觸覺訊號的編碼數據的彩現引擎中儲存或硬編碼的恆定訊號。
根據另一示例,表示該至少一個基本訊號的第三數據進一步與該第一數據一起被編碼到該第一層中。
簡言之,本發明涉及觸覺數據的編碼/解碼以使得能夠通過彩現引擎瀏覽一個或多個觸覺效果。
在層中對觸覺感知模態進行編碼,該層的層級高於層的層級,表示調製和/或用於表示觸覺訊號的基本訊號的數據被編碼到該層的層級中,這使得能夠優化包含在接收位元流中並且表示觸覺訊號的數據的解碼。
實際上,彩現引擎可以首先確定哪種觸覺感知模態與編碼到位元流中的觸覺訊號相關聯,以及是否有必要對包含在較低層中的其餘數據進行解碼。例如,如果與彩現引擎通訊的瀏覽設備(也稱為致動器)不能再現編碼觸覺訊號的觸覺感知模態,則彩現引擎無需解碼包含在位元流中的數據並呈現相關聯的觸覺訊號。
這種編碼格式能夠根據通訊耦合到彩現引擎的觸覺裝置(致動器)的特性來優化/減少瀏覽階段的處理時間。
圖1圖示了根據至少一個示例性實施例的用於表示一個或多個觸覺訊號的分層結構100的示意圖。
表示觸覺訊號的數據可以由編碼器根據下文描述的分層結構或表示100被編碼成確定的格式。例如,數據可以被編碼在觸覺效果檔案或編解碼器中,其可以具有許多不同格式中的一種。在某些實施例中,觸覺效果檔案可以具有與例如可擴展標記語言(「XML」)格式、JavaScript對象表示法(「JSON」)格式或又一標記語言(「YMAL」)相對應的分層文字格式格式。在某些其他實施例中,觸覺效果檔案可以具有二進制格式。
圖1所示的非限制性實施例的分層表示100包括4個層11、12、13、14,第一層11具有最低層級,第二層12具有高於第一層11的層級的層級,第三層13的層級高於第二層12的層級,第四層14具有最高層級,第四層14的層級高於第三層13的層級。
層數可以不同於4,例如等於2、3、5。例如,當層數等於2時,編碼觸覺訊號的層次表示僅包括第一層 11 和第二層 12。當層數等於2時,第二層12例如可以對應於數據流或位元流的標頭,並且第一層例如可以對應於數據流或位元流的有效載荷數據。圖 3 說明了這樣一個示例。
分層結構或表示 100 的層 11 至 14 包括觸覺訊號的編碼數據,該編碼數據表示要由彩現引擎瀏覽的觸覺回饋或效果。
觸覺訊號被編碼為分層格式的觸覺材料或觸覺檔案(以下稱為第二組合),包括一個或多個觸覺感知或觸覺軌跡(以下稱為第一組合),每個觸覺感知(或觸覺軌跡)包括一個或多個調性或觸覺帶(以下稱為調變訊號序列),每個調性(或觸覺帶)包含一個或多個順序排列的觸覺音符或觸覺波(以下稱為調變訊號,調變訊號用於從一個或多個基本訊號和相關調變參數或函數的形式獲得或編碼的示例)。
第一層11包括表示調變一個或多個基本訊號的第一數據。
根據示例性實施例,第一數據表示要應用於單個常數訊號的調變,表示該單個常數訊號的第三數據未編碼到分層表示100 ,而是儲存在接收該訊號的彩現引擎的記憶體中。編碼數據位元流形式的編碼觸覺訊號。
根據另一示例性實施例,第一數據表示要應用於形成第一組基本訊號 111、112 的一個或多個基本訊號的調變,表示每個基本訊號的第三數據用表示的第一數據編碼第一層調變。
每個基本訊號在確定的空間中表示,該空間可以對應於以下空間之一:時間空間、空間空間(例如一維(1D)、二維(2D)或三維(3D)空間空間)、角空間或任何基於可測量維度(如速度、加速度、重力、磁場、亮度、溫度等)的空間。
圖2說明了基本訊號 111、112 和相關調變的示例。
表示編碼到第一層 11 中的基本訊號的第三數據例如對於每個基本訊號包括:
- 表示基本訊號類型的數據,例如,正弦、矩形、三角形、斜坡、連續、鋸齒;基本訊號的類型例如用編碼在 3 或 4 位元上的標識符來識別;和/或
- 表示基本訊號相位的數據;和/或
- 表示基本訊號特性的數據,例如頻率、幅度、偏移量。
與基本訊號相關聯的第一數據對應於例如表示在確定的空間中表達的多個點的每個點(也稱為關鍵幀)的坐標的數據。
例如,當確定的空間對應於時間空間並且要應用於基本訊號的調變類型是幅度調變時,一個點的坐標包括對應於時間“t”的橫坐標和對應於幅度值的縱坐標。在渲染階段應用於基本訊號的調變基於第一數據,即點(或關鍵幀)的坐標,以及使用編碼的點確定的插值函數(例如三階多項式函數) 在第一層中作為關鍵點,如下文參考圖2更詳細地解釋。插值函數對應於例如使用在第一層11中編碼的多個點的坐標作為參數的參數函數,其形式為 第一個數據。
根據一個變型,與基本訊號相關聯的第一數據對應於表示調變函數的數據,該數據對應於例如表示基本訊號的第三數據,即訊號的類型、相位和特徵,例如作為頻率和/或幅度。
一組第一數據有利地與編碼在第一層11中的每個基本訊號 111、112相關聯。該組第二數據可以例如表示振幅調變和/或頻率調變。
根據示例性實施例,元數據可以與每個基本訊號111、112相關聯並且可以與第一數據一起被編碼到第一層11 中(並且當被編碼到第一層中時與第三數據一起)。例如,元數據包括表示每個基本訊號的長度的訊息,該長度根據所確定的空間來表達(例如,當空間對應於時間空間或長度對應於距離時,長度對應於持續時間當空間對應於空間空間時)和表示確定空間中的起點的訊息,該起點以確定空間中的橫坐標定義。
第一和可選的第三數據可以例如被包括或傳輸到每個具有確定頻帶的頻帶中,例如等於70、100、500、1000Hz的頻帶。頻帶的數量可以例如包括在2和9之間或在1和任何數量的頻帶之間。每個頻帶包括例如表示要呈現的觸覺效果的數據的一部分,整個觸覺效果例如通過組合 (例如,求和) 所有頻帶來呈現。
根據對應於基於量化的觸覺數據的編碼的第一特定實施例,第一層包括:
-第一頻帶,包括表示用於對儲存在彩現引擎中的單個恆定訊號進行振幅調變的多個點(或關鍵幀)的表示的第一數據,表示該單個恆定訊號的第三數據未在位元流中編碼;調變的長度(在表示空間中)對應於要瀏覽的觸覺訊號的長度,例如65秒;和
-一個或多個第二頻帶,每個第二頻帶包括表示要應用於一個單一基本訊號的調變點(或關鍵幀)的第一數據,表示被編碼到第二頻帶中的單一基本訊號的第三數據(基本訊號的類型對應於示例始終為正弦訊號);基本訊號的長度(在表示空間中)對應於要瀏覽的觸覺訊號的長度,例如65秒。
包含在頻帶中的數據表示調性。
根據對應於基於向量的觸覺數據的編碼的第二特定實施例,第一層包括:
- 第一帶,包括表示應用程式介面(Application Programming Interface,API)調用的數據;和
-一個或多個第二頻帶,每個第二頻帶包括表示要應用於一個或多個基本訊號的調變點(或關鍵幀)的第一數據,表示每個基本訊號的第三數據被編碼到第二頻帶中,基本訊號例如是任何類型和任何長度。
包含在頻帶中的數據表示調性。
第二層12包括表示調變訊號的第二組的一個或多個序列121、122的第一訊息。每個序列121、122包括在序列內的確定空間中順序排列的一個或多個調變訊號。
調變訊號對應於在第一層中編碼的基本訊號111、112,在其上已經應用了由第一數據定義的調變,除了用於編碼基於量化的觸覺數據的第一頻帶的示例。調變訊號對應於應用於相關基本訊號的調變結果。
振幅調變是通過將通過對用第一數據編碼的點進行插值而獲得的調變函數乘以基本訊號來獲得的。
例如,可以通過使用線性調頻來獲得頻率調變。
第一訊息與包含在第二層12中的每個調變訊號序列相關聯。在第二層12中編碼並與每個序列相關聯的第一訊息有利地表示包含在該序列中並形成序列。
第一訊息例如使用觸覺效果檔案或編解碼器的語法和/或結構進行編碼。形成序列的調變訊號的順序例如通過相對於它們所屬的序列並且以對應於每個調變訊號的順序的順序對與調變訊號相關的元件進行編碼來獲得。在解碼階段,第一訊息隱含地從觸覺效果檔案或編解碼器的語法和/或結構中導出。
根據變體,第一訊息對應於顯式數據或識別和指向每個調變訊號的訊息,該調變訊號分別用表示調變參數和相關聯的基本訊號的第一和第三數據進行編碼。
根據示例性實施例,元數據可以與每個序列121、122相關聯並且可以與第一訊息一起被編碼到第二層12中。例如,元數據包括表示每個序列的長度的訊息(根據確定的空間表示)、表示將應用由序列表示的觸覺效果的身體部位的訊息、表示身體部位的訊息。
第三層13包括表示調變訊號的一個或多個序列121、122的一個或多個第一組合131、132的第三組的第二訊息。每個第一組合131、132對應於在第二層中編碼的一組一個或多個序列,這些序列根據特定函數(求和、加權求和、濾波、平均求和、壓縮)組合。
第二訊息與包括在第三層13中的序列的每個第一組合相關聯。在第三層13中編碼並且與每個第一組合相關聯的第二訊息有利地表示形成每個第一組合131、132的序列的數量。
第二訊息例如使用觸覺效果檔案或編解碼器的語法和/或結構進行編碼。包括在第一組合中的序列的數量例如通過對與它們所屬的第一組合相關的序列相關的元件進行編碼來獲得。在解碼階段,第二訊息隱含地從觸覺效果檔案或編解碼器的語法和/或結構中導出。
根據一個變體,第二訊息對應於顯式數據或識別和指向每個序列的訊息,每個序列用表示第一組合的數據編碼。
根據示例性實施例,元數據可以與每個第一組合131、132相關聯並且可以與第二訊息一起被編碼到第三層13中。例如,元數據包括表示與觸覺回饋相關聯的尋址感知類型的訊息(例如,振動、力回饋、溫度感知、剛度、紋理)、表示觸覺回饋或效果所針對的身體部位的訊息由第一個組合表示、大量的訊息表示。
第四層14包括表示在第三層13中編碼的一個或多個第一組合131、132的第二組合141的第三訊息表示。第二組合141對應於在第三層13中編碼的一組第一組合,它們將一起編碼以形成第二組合141。
第二組合對應於表示在觸覺效果檔案或編解碼器中編碼的觸覺效果或回饋的觸覺檔案。
第三訊息有利地表示形成第二組合141的第一組合的數量。
第三訊息例如使用觸覺效果檔案或編解碼器的語法和/或結構進行編碼。包括在第二組合中的第一組合的數量例如通過相對於它們所屬的第二組合對與第一組合相關的元件進行編碼來獲得。在解碼階段,第三訊息隱含地從觸覺效果檔案或編解碼器的語法和/或結構中導出。
根據一個變體,第三訊息對應於顯式數據或識別和指向每個第一組合的訊息,該第一組合用表示第二組合的數據進行編碼。
根據示例性實施例,元數據可以與第二組合141相關聯並且可以與第三訊息一起被編碼到第四層14中。例如,元數據包括表示將應用由第二組合表示的觸覺效果的身體部位的訊息、表示渲染方法的訊息。
與要呈現的觸覺效果相關聯的觸覺感知模態相關的第二數據被有利地編碼到第二層12、第三層13或第四層14中,例如作為元數據。
觸覺感知模態對應於要呈現的觸覺效果或觸覺回饋的類型。觸覺感知模態例如對應於以下之一:
-振動效果;
-力效應;
-剛度;
-質地;
-溫度。
用於對要呈現的觸覺訊號進行編碼的一個或多個基本訊號的表示空間取決於觸覺感知模態。例如,振動和力與時間空間相關聯,而剛度和紋理與空間空間相關聯。
根據示例性實施例,編碼到第一層11、第二層12、第三層13或第四層14中的元數據包括表示一個或多個應用程式介面(「Application Programming Interface」)調用、一個單個API調用的數據與一個單一的基本訊號相關聯。與基本訊號相關聯的API調用可以採用以下形式進行編碼:
-標識儲存在彩現引擎的記憶體中的API調用的標識符;或者
-一組要由彩現引擎執行的指令。
API而非基本訊號的使用由彩現引擎基於能夠處理API調用的通訊通道(彩現引擎和觸覺裝置(致動器)之間)的存在來確定。
圖2示出了根據至少一個示例性實施例的表示被編碼到具有分層文本格式的觸覺效果檔案2中的觸覺訊號的數據。
根據示例性實施例,觸覺訊號根據分層結構或表示100以JSON兼容檔案或編解碼器2的形式編碼。圖2圖示了這種JSON檔案2的示例,僅用於說明目的。
元件(也稱為「鍵」或「標籤」)「m_version」、「m_description」、「m_HDFlag」、「m_time_unit」、 「m_length_unit」、「m_volume」、「m_stiffness」和「m_texture」的方塊21 JSON 檔案包括表示編碼到第四層14中的觸覺訊號的第二組合的元數據和相關聯的值。
第二組合僅包括用元件「m_vibration」引入的元件方塊22標識的第一組合。第一個組合在JSON檔案中以低於第二個組合的層級的層級編碼,用符號「{」和「}」標識並包含在符號「{」和「}」之間。JSON檔案的元件「m_loop」、「m_maximum」、「m_speed」、「m_volume」和「m_signalEvaluationMethod」對應於編碼到第三層13中的第一組合的元數據和相關值。
用元件「m_vibration」標識的第一個組合僅包括一個調變訊號序列,它用元件「m_melodies」標識。該序列在 JSON 檔案中以低於第一個組合的層次級別的層次進行編碼。在元件「m_melodies」之後的JSON檔案的元件「m_maximum」、「m_mute」和「m_volume」的方塊23對應於編碼到第二層12中的調變訊號序列的元數據和相關值。
最後,用元件「m_melodies」標識的序列包括兩個調變訊號24、25,它們在JSON檔案中以低於序列「m_melodies」的層次級別的層次順序編碼。
形成序列「m_melodies」的調變訊號24、25用JSON檔案中元件「m_notes」之後的元件定義或編碼,並包含在符號「[」和「] 」之間。
表示序列的第一調變訊號24的數據首先在JSON檔案中的「m_note」元件方塊中被編碼或用訊號發送,然後是表示第二調變訊號 25 的數據(依次在第一調變訊號之後)。根據該非限制性示例,表示序列的每個調變訊號的順序的第二訊息是從 JSON 檔案本身的分層結構獲得的,定義調變訊號的元件附加到序列或與序列相關聯,在第一個調變訊號24之後的第二個調變訊號25。
每個調變訊號24、25包括在第一層11中用第一和第三數據編碼的元數據。第一元數據用與調變訊號的長度(或類似於用於獲得調變訊號的基本訊號的長度)對應的元件「m_length」標識或用訊號發送,第二元數據用元件「m_startingPoint」標識對應於確定空間中調變訊號的原點(調變訊號的原點或起點對應於例如時間軸上的時間或空間線上的位置,這取決於表示基本訊號的空間)。
每個調變訊號24、25在 JSON檔案中被編碼或用訊號表示,第三數據241、251表示用JSON檔案中的元件「m_underlyingSignal」標識的基本訊號,第一數據242、252表示標識的調變參數使用JSON檔案中的元件「m_amplitudeModulation」。
關於第一調變訊號24,基本訊號在JSON檔案中由包括基本訊號類型的第三數據241表徵或發訊號通知(用元件「m_signalType」標識,其具有值0,例如對應於正弦訊號)、基本訊號的相位(用元件「m_phase」標識)、基本訊號的幅度(用元件「m_amplitude」標識)、基本訊號的頻率(用元件「m_frequency」標識)和基本訊號的垂直偏移量(用元件「m_verticalOffset」標識)。
表示要應用到基本訊號的調變的第一數據242被標識或用元件「m_amplitudeModulation」用訊號通知,該元件指示要應用到基本訊號的調變是振幅調變。標識的元數據或具有元件「m_max」的訊號與調變相關聯。
然後在JSON檔案中的元件「m_amplitudeModulation」下對兩個點或關鍵幀進行編碼或發送訊號,每個點都用一組包含該點坐標的第一數據進行表徵或發送訊號(用元件「m_time」標識,對應於橫坐標和對應於縱坐標的元件「m_value」)和其他參數,例如取決於要使用的插值函數的類型。
將在解碼和/或瀏覽階段使用的插值函數對應於例如默認插值函數(例如,三階多項式函數),編碼器、解碼器和彩現引擎事先已知,無需識別JSON檔案中的默認函數。
根據一個變體,插值函數是在JSON檔案中標識的特定插值函數(帶有標識符或參數),例如作為與更高級別的調變相關聯的元數據。
關於第二調變訊號25(在JSON檔案中的第一調變訊號24之後編碼),基本訊號在JSON檔案中由與第一調變訊號的第三數據相似或相同的第三數據251表徵或發訊號通知。
表示要應用到基本訊號的調變的第一數據252被標識或用元件「m_amplitudeModulation」用訊號通知,該元件指示要應用到基本訊號的調變是振幅調變。
在該特定示例中,第二調變訊號25的第一數據252表示用與基本訊號相同的元件識別或發訊號通知的函數。
圖3示出了根據至少一個示例性實施例的表示被編碼到具有二進制格式的觸覺效果檔案3中的觸覺訊號的數據。
根據第二示例性實施例,觸覺訊號根據分層結構或表示100以二進制元件或字符的一個或多個字串31、32的形式編碼。
每個二進制字串31、32分別包括例如標頭310、320和有效載荷數據311、321。標頭有利地具有高於有效載荷數據的層級,標頭包括表示與編碼到字串31、32中的觸覺訊號相關聯的觸覺感知模態的第二數據。
根據非限制性示例,字串包括表示一個第一組合的數據,即,字串31包括表示第一組合的數據並且字串32包括表示另一個第一組合的數據,兩個字串31、32(即,兩個第一組合)形成對應於觸覺訊號的觸覺材料的第二組合。
每個字串31、32 的標頭310、320分別包括字段,每個字段包括與對應於第三訊息和與第二組合相關聯的元數據、第二訊息和與第一組合相關聯的元數據的變量或參數相關聯的值序列以及與形成第一組合的調變訊號序列相關聯的第一訊息和元數據。
每個字串31、32的有效載荷311、321分別包括字段,每個字段包括與變量或參數相關聯的值,該變量或參數對應於形成由每個字串31、32的數據描述的第一組合的調變訊號。
描述每個調變訊號的數據(即,第一和第二數據)依次編碼到字串31、32的有效載荷311、321中。
調變訊號序列的結束例如在有效載荷311、321中用特殊字符用訊號通知,隨後的序列在該特殊字符之後開始。例如,特殊字符記為E_O_B,並使用十六進制值「00FFFF」進行編碼。
根據另一示例,等於0的幅度在位於序列末尾時可以被解釋為特殊字符。
根據特定實施例,一系列調變訊號的結束在有效載荷311、321中用標記為E_O_S 的特殊字符用訊號通知,並用值「00」編碼。一系列調變訊號對應於共享一些相同參數(例如,用於獲得相關調變訊號的基本訊號的相同相位或相同幅度)的多個調變訊號,相同參數對系列編碼一次。
這種格式能夠對基於向量的觸覺數據和基於量化的觸覺數據進行編碼。當數據是向量時,此訊息例如在標頭中編碼,布爾編碼為1位(例如,「0」表示FALSE,「1」表示TRUE)。它支持使用分層表示100對IVS和AHAP格式等向量結構進行編碼。
這種格式還可以對特定訊號(如瞬態或API調用)進行編碼,其數據在有效負載中串行編碼並在標頭中發出訊號。
根據一個實施例,觸覺訊號根據分層結構或表示100以二進制元件或字符的單個串的形式編碼。根據該實施例,第一組合的結束在流中用確定的訊號通知特殊字符,該特殊字符之後的字段或字符,對應於一個或多個調變訊號序列的另一個第一組合的第一個字符或字段。
與現有技術的現有編碼格式相比,所提出的分層編碼具有各種優點,例如:
-能夠在相同的觸覺感知中以相同的編碼對連續和振動觸覺訊號進行編碼,對應於一個或多個調變訊號序列的第一組合;和/或
-能夠使用相同的編碼對基於空間和基於時間的觸覺訊號進行編碼; 和/或
-能夠以空間和基於時間的方法對動覺進行編碼;
-能夠在運行時獨立調變不同基本訊號、調變訊號序列以及一個或多個序列的第一組合的調變函數;和/或
-能夠從建議的分層編碼格式開始轉碼AHAP格式和/或IVS; 和/或
-能夠從建議的分層編碼格式開始轉碼IVS格式。
不同檔案格式之間的轉換
提議的分層格式以及Apple的AHAP格式和Immersion公司的IVS格式對觸覺訊號進行向量編碼,這意味著儲存「繪圖命令」以生成訊號來代替訊號本身。通過這個假設,可以推斷這三種檔案格式的1對1匹配以創建翻譯器,其目標是將AHAP檔案或IVS檔案轉換為根據本公開的分層格式的檔案。
例如,關於AHAP數據格式,已知連續部分有:
0到1之間的銳度是65Hz到300Hz之間的頻率範圍(實驗結果);
強度介於0和1之間,回饋幅度結果達到設備可能的最大值;和
開始時間和持續時間(以秒為單位)。
這些連續的和以分層格式提出的調變訊號之間存在直接匹配,它們都儲存相同的訊息。
瞬態以強度和清晰度(可能對應於訊號的頻率)在特定時間儲存。如果訊號長度足夠短,則瞬變可以與包含一個或多個高頻週期和高幅度的新調變訊號相匹配,以表示這種衝擊。也可以使用關鍵幀(表示瞬態的峰值)或僅表示調變的點對其進行編碼,以應用於連續的基本訊號。瞬態也可以儲存為API調用。調變函數也將是建議的分層格式和AHAP格式之間的直接匹配。儲存在檔案中的音訊訊息不能在當前的分層格式中進行翻譯,但可以由應用程式本身管理,該應用程式將在兩個不同的播放器中播放這兩個檔案:一個用於音訊,另一個用於觸覺。
在同樣的想法中,IVS檔案具有與建議的分層格式的1對1匹配。兩者都對每個調變訊號的起始時間、持續時間、頻率(IVS以毫秒儲存窗口長度,可以直接轉換為頻率:f=1/T)、幅度和調變幅度進行編碼。這裡的主要區別是可以在IVS檔案的時間軸內創建循環。但它可以翻譯成這個循環內的內容的簡單複制N次,對應於這個循環的計數。IVS還將波形類型儲存在與當前提出的分層格式直接匹配的格式中。
MagSweep效應可以解釋為正常的調變訊號,但將由開發人員提供的恆定頻率驅動。在實驗測試階段,人們發現這種效果是用170 Hz的頻率合成的。
最後,最後一種類型是波形,它可以像建議的分層格式內的關鍵幀一樣被編碼,或者可以對檔案執行聲音分析以將其編碼為檔案內的頻率庫。多媒體集成可以和AHAP一樣。
圖4示出了根據至少一個示例性實施例的從基本訊號獲得併根據本公開的分層表示進行編碼的調變訊號序列。
圖4圖示了從根據確定的調變調變的基本訊號41、42、43獲得的調變訊號序列48。
根據圖4的非限制性示例,每個基本訊號41、42、43對應於具有每個特定頻率的正弦波(例如,第一基本訊號41為87Hz,第二基本訊號42和73為76Hz赫茲用於第三基本訊號43),其幅度隨時間變化。幅度例如包括在等於1的最大值和等於-1的最小值之間。基本訊號的表示空間對應於時間,基本訊號41、42、43的表示空間的橫坐標對應於時間線。
基本訊號41在時間0開始,基本訊號42在時間0.025秒開始,基本訊號43在時間0.05秒開始。
根據圖4的示例性實施例,基本訊號41至45具有相同的持續時間,在訊號的結束和後續訊號的開始之間沒有間隙。
每個基本訊號41、42、43的調變參數分別用特定函數44、45、46來表示。與第一訊號41相關聯的調變函數44、與第二基本訊號42相關聯的調變函數45和與第三基本訊號43相關聯的調變函數46被表示在與基本訊號41至43的時間線相同的時間線上。
每個調變函數44、45、46用點或關鍵幀表示,用第二調變函數45的黑粗體註釋說明。每個調變函數44、45、46對應於例如參數函數,參數函數的參數被編碼在與關鍵幀的點對應的觸覺效果檔案中。
根據圖4的示例性實施例,4個點用於對調變函數的參數進行編碼。自然地,點的數量可以不同於4,點的數量取例如包括在1點和20、50或100點之間的任何值,這取決於例如基本訊號的長度。點的數量甚至可以等於0,這將被解釋為沒有調變功能。
訊號47表示基本訊號41到43的序列,由於與每個基本訊號41到43相關聯的相位訊息,這些基本訊號41到43已經被相位調整併且被編碼到觸覺效果檔案的第一層中。
最後,訊號48表示從順序排列的基本訊號41至43獲得的序列,這些基本訊號41至43已經根據用它們的對應點或關鍵幀表示的參數調變函數44、45、46進行振幅調變。
基本訊號的數量不限於3個,而是擴展到任何數量,例如1、2、5、10個或更多基本訊號。
基本訊號的類型不限於正弦函數,而是擴展到任何類型的基本訊號,例如恆定訊號(在時間或空間上具有固定幅度,取決於訊號的表示空間)、三角訊號、多個基本訊號的序列可以包括不同類型的基本訊號,例如連續訊號後接正弦訊號後接三角形,在連續基本訊號之間可選地具有間隙。
圖5示出了根據至少一個示例性實施例的根據本公開的分層表示編碼的經調變基本訊號的示例性序列。
圖5說明了通過調變一個或多個基本訊號獲得的一個或多個調變訊號的3個不同序列。
第一訊號51對應於通過將振幅調變應用於單個連續且恆定的訊號(例如,隨著時間具有固定幅度)而獲得的序列,振幅調變被編碼為通過對多個點進行插值獲得的參數調變函數或用作參數函數的參數的關鍵幀。在觸覺效果檔案中編碼為第二數據的點或關鍵幀的數量例如等於15。
用黑色粗體點示出的第一訊號51的起始點有利地用表示連續基本訊號的第一數據進行編碼。
第二訊號52對應於通過對4個基本訊號序列中的每個基本訊號應用幅度調變而獲得的序列,而沒有在不同基本訊號之間進行相位調整。根據該示例,第一基本訊號對應於具有確定幅度和頻率的正弦函數,第二基本訊號對應於具有確定幅度和頻率的矩形訊號,第三基本訊號對應於具有確定幅度和頻率的三角訊號,以及第四基本訊號對應於具有確定幅度和頻率的鋸齒訊號。每個基本訊號的起始點(以及因此從每個基本訊號獲得的每個調變訊號的起始點)用黑色粗體點表示,並且有利地用表示每個基本訊號的第一數據編碼。
最後,第三訊號53從一個序列中獲得8基本訊號的序列,每個基本訊號對應於一個瞬態編碼,作為與編碼到第一層的基本訊號相關聯的API調用。從圖5可以看出,8個訊號的序列是不連續的,序列53的兩個連續的訊號之間出現了間隙。間隙是直接從編碼在第一層的8個訊號的每一個的起點得到的。層次表示。例如,API調用由22毫秒內只有一個週期的正弦函數表示和合成。
本發明中公開的分層編碼能夠將空間、時間或任何表示空間中的任何回饋效果編碼為一個或多個基本訊號和相關調變參數的序列。
圖6示出了根據至少一個示例性實施例的根據分層表示100對觸覺訊號進行編碼的方法的步驟的示意方塊圖。
在第一步驟61中,表示至少一個基本訊號的調變的第一數據被編碼在多個層中的第一層中,每個層具有相關聯的層級。
在第二步驟62中,表示與與觸覺訊號相關聯的觸覺效果相關聯的觸覺感知模態的第二數據被編碼在多個層中的層中,該層的層級高於第一層的層級。
根據特定實施例,該至少一個基本訊號被包括在第一組基本訊號中。除了第一數據之外,表示第一組的每個基本訊號的第三數據在第一層中被編碼。每個基本訊號在確定的表示空間中表示,該表示空間是觸覺感知模態的函數。
圖7示出了根據至少一個示例性實施例的解碼根據分層表示100編碼的觸覺數據的方法的步驟的示意方塊圖。
在第一步驟71中,表示至少一個基本訊號的調變的第一數據從多個層中的第一層解碼,每個層具有相關聯的層級。
在第二步驟72中,表示與觸覺訊號相關聯的觸覺效果相關聯的觸覺感知模態的第二數據從具有高於第一層的層次級別的層次級別的多個層中的層解碼。
根據特定實施例,該至少一個基本訊號被包括在第一組基本訊號中。除了第一數據之外,還從第一層解碼表示第一組的每個基本訊號的第三數據。每個基本訊號在確定的表示空間中表示,該表示空間是觸覺感知模態的函數。
圖8示出了圖示系統的示例的示意方塊圖,其中實現了各個態樣和示例性實施例。
系統8可以嵌入為一個或多個設備,包括以下描述的各種組件。在各種實施例中,系統8可以被配置為實現本申請中描述的一個或多個態樣。
可以形成系統8的全部或部分的設備的示例包括個人電腦、筆記型電腦、智能手機、平板電腦、數字多媒體數位視訊轉換盒、數字電視接收器、個人視訊記錄系統、連接的家用電器、連接的車輛及其相關的處理系統、頭戴式顯示設備(HMD、透視眼鏡)、觸覺傳感器或致動器、「caves」(包括多個顯示器的系統)、伺服器、觸覺編碼器、觸覺解碼器、處理來自觸覺解碼器的輸出的後處理器、預處理器向觸覺編碼器、網路伺服器、數位視訊轉換盒、無線(例如,藍牙®)連接的可穿戴觸覺裝置以及用於處理觸覺數據或觸覺訊號的任何其他設備或其他通訊設備提供輸入。系統8的元件可以單獨或組合地體現在單個積體電路(integrated circuit,IC)、多個IC和/或分立組件中。例如,在至少一個實施例中,系統8的處理和編碼器/解碼器元件可以分佈在多個IC和/或分立組件上。在各種實施例中,系統8可以通過例如通訊總線或通過專用輸入和/或輸出埠通訊地耦合到其他類似系統或其他電子設備。
系統8可以包括至少一個處理器81,該處理器81被配置為執行加載在其中的指令以實現例如本發明中描述的各個態樣。處理器81可以包括嵌入式儲存器、輸入輸出介面和本領域已知的各種其他電路。系統8可以包括至少一個記憶體82(例如揮發性記憶體和/或非揮發性記憶體)。系統8可以包括儲存裝置84,其可以包括非揮發性記憶體和/或揮發性記憶體,包括但不限於電可擦可程式唯讀記憶體(Electrically Erasable Programmable Read-Only Memory,EEPROM)、唯讀記憶體(Read-Only Memory,ROM)、可程式唯讀記憶體(Programmable Read-Only Memory,PROM)、隨機存取記憶體(Random Access Memory,RAM)、動態隨機存取記憶體(Dynamic Random-Access Memory,DRAM)、靜態隨機存取記憶體(Static Random-Access Memory,SRAM)、快閃記憶體、磁碟驅動器和/或光碟驅動器。作為非限制性示例,儲存裝置84可以包括內部儲存裝置、附加儲存裝置和/或網路可訪問儲存裝置。
系統8可以包括編碼器/解碼器模組83,其被配置為例如處理數據以提供編碼/解碼的觸覺訊號或數據,並且編碼器/解碼器模組83可以包括其自己的處理器和記憶體。編碼器/解碼器模組83可以表示可以被包括在設備中以執行編碼和/或解碼功能的模組。如已知的,設備可以包括編碼和解碼模組之一或兩者。此外,編碼器/解碼器模組83可以實現為系統83的單獨元件,或者可以作為本領域技術人員已知的硬體和軟體的組合併入處理器81中。
要加載到處理器81或編碼器/解碼器83上以執行本發明中描述的各個態樣的程式碼可以儲存在儲存裝置84中並且隨後加載到記憶體82上以供處理器81執行。根據各個實施例,一個或在本發明中描述的過程的執行期間,處理器81、記憶體82、儲存裝置84和編碼器/解碼器模組83中的更多者可以儲存各種項目中的一個或多個。這樣的儲存項目可以包括但不限於點雲幀、編碼/解碼幾何/屬性視訊/圖像或編碼/解碼幾何/屬性視訊/圖像的部分、位元流、矩陣、變量和中間或方程、公式、運算和運算邏輯處理的最終結果。
在若干實施例中,處理器81和/或編碼器/解碼器模組83內部的記憶體可用於儲存指令並為可在編碼或解碼期間執行的處理提供工作儲存器。
然而,在其他實施例中,處理設備外部的記憶體(例如,處理設備可以是處理器81或編碼器/解碼器模組83)可以用於這些功能中的一個或多個。外部記憶體可以是記憶體82和/或儲存裝置84,例如動態揮發性記憶體和/或非揮發性快閃記憶體。在若干實施例中,可以使用外部非揮發性快閃記憶體來儲存電視的操作系統。在至少一個實施例中,諸如RAM的快速外部動態揮發性記憶體可以用作用於視訊編碼和解碼操作的工作記憶體,例如用於MPEG-V。
如方塊85所示,可以通過各種輸入設備來提供對系統8的元件的輸入。這樣的輸入設備包括但不限於(i)可以接收例如通過傳輸的RF訊號的RF部分廣播公司的廣播,(ii)複合輸入終端,(iii)USB輸入終端,和/或(iv)HDMI輸入終端。
在各種實施例中,方塊85的輸入設備可以具有相關聯的各個輸入處理元件,如本領域已知的。例如,RF部分可以與以下必需的元件相關聯:(i)選擇所需頻率(也稱為選擇訊號,或將訊號頻帶限製到頻帶),(ii)將所選頻率下變頻(iii)再次將頻帶限製到較窄的頻帶以選擇(例如)在某些實施例中可以被稱為通道的訊號頻帶,(iv)解調下變頻和頻帶限制的訊號,(v)執行糾錯,以及(vi)解復用以選擇所需的數據包流。各種實施例的RF部分可以包括執行這些功能的一個或多個元件,例如頻率選擇器、訊號選擇器、頻帶限制器、通道選擇器、濾波器、下變頻器、解調器、糾錯器和解復用器。RF部分可以包括執行各種這些功能的調諧器,包括例如將接收到的訊號下變頻到較低頻率(例如,中頻或近基頻帶頻率)或基頻帶。
在一個數位視訊轉換盒實施例中,RF部分及其相關聯的輸入處理元件可以接收通過有線(例如,電線)介質傳輸的RF訊號。然後,RF部分可以通過濾波、下變頻和再次濾波到期望的頻帶來執行頻率選擇。
各種實施例重新排列上述(和其他)元件的順序,移除這些元件中的一些,和/或添加執行相似或不同功能的其他元件。
添加元件可以包括在現有元件之間插入元件,例如插入放大器和模數轉換器。在各種實施例中,RF部分可以包括天線。
此外,USB和/或HDMI終端可以包括用於通過USB和/或HDMI連接將系統8連接到其他電子設備的相應介面處理器。應當理解,輸入處理的各個態樣,例如Reed-Solomon糾錯,可以在例如單獨的輸入處理IC內或根據需要在處理器81內實現。類似地,USB或HDMI介面處理的各個態樣可以根據需要在單獨的介面IC或處理器81內實現。可以將解調、糾錯和解復用的流提供給各種處理元件,包括例如處理器81和編碼器/解碼器83,其與記憶體和儲存元件結合操作以根據需要處理數據流以在顯示器上呈現。輸出設備。
系統8的各種元件可以設置在集成外殼內。在集成外殼內,各種元件可以互連並且使用合適的連接佈置85在它們之間傳輸數據,例如,本領域已知的內部總線,包括I2C匯流排、佈線和印刷電路板。
系統8可以包括能夠通過通訊通道860與其他設備進行通訊的通訊介面86。通訊介面86可以包括但不限於被配置為通過通訊通道860發送和接收數據的收發器。通訊介面86通訊通道860可以包括但不限於調變解調器或網卡,並且通訊通道860可以例如在有線和/或無線介質內實現。
在各種實施例中,可以使用諸如IEEE 802.11的Wi-Fi網路將數據流式傳輸到系統8。這些實施例的Wi-Fi訊號可以通過適用於Wi-Fi通訊的通訊通道860和通訊介面86來接收。這些實施例的通訊通道860通常可以連接到接入點或路由器,該接入點或路由器提供對包括互聯網在內的外部網路的訪問,以允許流式傳輸應用程式和其他過頂內容服務通訊。
其他實施例可以使用通過輸入方塊85的HDMI連接傳送數據的數位視訊轉換盒向系統8提供流數據。
其他實施例可以使用輸入方塊85的RF連接向系統8提供流數據。
流數據可以用作系統8使用的信令訊息的一種方式。信令訊息可以包括例如從觸覺效果檔案2或3獲得的以二進制流編碼的數據。
應當理解,信令可以以多種方式完成。例如,在各種實施例中,一個或多個語法元件、標誌等可用於向對應的解碼器發訊號通知訊息。
系統8可以向各種輸出設備提供輸出訊號,包括顯示器870、揚聲器880和其他外圍設備890,如觸覺裝置/致動器。
在各種實施例中,可以使用諸如音訊/視訊鏈接(Audio/Video Link)、消費電子控制(Consumer Electronics Control)、音訊協議、通用串流排(Universal Serial Bus)、觸覺行業論壇 - 通用觸覺協議(Haptic Industry Forum - Universal Haptic Protocol)或其他通訊協議,可以在有或沒有用戶干預的情況下實現設備到設備的控制。
輸出設備可以通過各自的介面87、88和89經由專用連接以通訊方式耦合到系統8。
或者,輸出設備可以通過通訊介面86使用通訊通道860連接到系統8。顯示器870、揚聲器880和/或致動器890可以與系統8的其他組件以電子方式集成在單個單元中。設備,例如電視機。
在各種實施例中,顯示介面87可以包括顯示驅動器,例如時序控制器(T Con)晶片。
顯示器870、揚聲器880和/或致動器890可替代地與一個或多個其他組件分開,例如,如果輸入85的RF 部分是單獨數位視訊轉換盒的一部分。在顯示器870、揚聲器880和/或致動器890可以是外部組件的各種實施例中,可以經由專用輸出連接來提供輸出訊號,包括例如HDMI埠、USB埠或COMP輸出。
圖9示出了根據至少一個示例性實施例的瀏覽一個或多個觸覺效果的瀏覽系統和方法的示例的示意方塊圖。
觸覺效果可以作為空間或時間和任何獨立系統變量的函數來呈現。儘管輸入的質量和價值以及輸出設備的通訊能力如何,統一的瀏覽解決方案都應該瀏覽出最佳的觸覺。這樣的瀏覽過程需要獨立變量輸入的統一化,以及將輸出值賦予連接設備的能力。
在空間中呈現觸覺的現有技術方法之一是基於預期觸覺值的映射。這些值圖與輸入採集位置的比較和触覺的呈現都是基於這種方法。這種方法的缺點是必須有一個極其精確和快速的位置獲取系統來匹配人類的感知帶寬。這是一個例子:
V = 10 cm/s:與觸覺顯示器接觸的身體部位的速度;
F = 1000 Hz:最大人類感知帶寬;
感知觸覺元件的最小距離:0.1 m.s-1 / 1000 s-1 = 0.0001 m = 100 微米。
採集系統應該能夠以小於100微米的精度和至少1 kHz的頻率採集手指的位置,以便能夠瀏覽空間觸覺紋理。嵌入在消費設備中的商業位置獲取系統獲取30到120 Hz之間的人體位置。結果是這種瀏覽方法由於訊號採集噪聲和低採集頻率而不能令人滿意地瀏覽觸覺訊號。
圖9的每個方塊都將被解釋為系統的元件或單元並且被解釋為由該元件或單元實現的相應操作。呈現系統和相關實施的方法9旨在克服現有技術系統的至少一個缺點。
系統9可以嵌入為一個或多個裝置,包括參考圖8描述的系統8的各種組件。系統9對應於例如觸覺呈現器引擎。系統 9 被配置為從表示要呈現的觸覺效果的編碼數據中呈現一個或多個觸覺效果,編碼數據以數據流或位元流的形式被接收。接收的數據流或位元流有利地對應於從上文參考圖1至圖5描述的編碼過程和方法獲得的數據流。
在第一方塊91中,從採集設備或系統接收表示用戶身體的至少一部分的位置的數據911。數據 911 由採集設備以確定的頻率採集,例如以包括在30和120Hz之間的頻率。
第一方塊91被配置為對由數據911表示的位置進行上採樣或內插。第一方塊91輸出表示身體的至少一部分的上採樣位置的數據912。
上採樣的水平取決於例如由系統9控制的一個或多個觸覺呈現裝置(致動器)的特性。根據另一示例,上採樣的水平是固定的並且作為參數儲存在系統9的記憶體中。
通過實施本領域技術人員已知的任何方法來獲得上採樣。例如,這種方法在2018年11月8日公佈的專利文件WO2018/202609中有所描述。
圖10圖示了上採樣算法的示例性實施例。
X
n對應於在每個應用周期從採集設備獲得的位置採集向量。
從分別在時間t
n和t
n-1獲取的獲取的位置向量X
n和X
n-1計算速度向量V
n。
根據在每幀計算的位置誤差 ε 並前饋到補償速度積分項,在i = 0到k的一系列時間ti計算補償速度積分後計算穩定位置向量X'
n,其中k 為整數用於計算X'
n、k和h的方程對應於控制參數以最小化ε。
在第二方塊92中,由第一方塊91輸出的數據912與表示處理器時鐘和瀏覽頻率的數據921一起被接收。
第二方塊92還接收表示要呈現的觸覺訊號的數據922。數據922例如以編碼為根據圖1至圖5的示例性實施例描述的一個或多個觸覺效果檔案的數據的形式接收。
第二方塊92被配置為從接收到的數據流或位元流中提取數據,根據要呈現的觸覺效果的類型(從接收到的數據流或位元流中獲得的這種訊息)處理提取的數據,並且可選地根據由系統9控制並連接到系統9的觸覺呈現裝置(致動器)的特性。
具有最高層級的層首先被解碼。
例如,根據表示要呈現的觸覺效果或回饋的類型(例如,剛度、紋理、振動、溫度)的訊息,在多個觸覺呈現模型中選擇觸覺呈現模型,這樣的訊息例如對應於包括在數據流或位元流中的數據或元數據,例如與編碼到第三層中的第一組合相關聯。
觸覺呈現裝置的一個或多個特性例如從與系統9通訊連接的觸覺呈現裝置接收。根據另一示例,接收觸覺呈現裝置的標識符,例如從查找表(Look-Up Table,LUT)儲存在系統9的記憶體中,LUT將每個觸覺裝置的特性與每個觸覺裝置的標識符相關聯。
觸覺呈現模型例如根據旨在呈現觸覺效果的觸覺呈現裝置的特性來處理包括在數據流中的數據或僅部分數據的位元流。
例如,寬頻觸覺呈現裝置被配置為呈現複雜的觸覺回饋或效果。在這種情況下,在位元流的數據流中編碼的整個觸覺訊號由觸覺呈現模型呈現。
根據另一示例,一些觸覺呈現裝置僅能夠呈現簡單的觸覺效果(例如僅與頻率相關的振動)。在這種情況下,觸覺呈現模型僅瀏覽位元流或數據流中編碼的觸覺訊號的頻率部分。
表示與編碼到位元流中的觸覺訊號/觸覺效果相關聯的觸覺感知模態的第二數據在第一和第三數據之前被解析和解碼。
如果耦合到彩現引擎的致動器不能/未配置成瀏覽由用第二數據編碼的觸覺感知模態指示的觸覺效果,則彩現引擎不解碼所有位元流,因為致動器未配置成瀏覽這樣的觸覺效果。
如果耦合到彩現引擎的致動器能夠/配置成瀏覽由用第二數據編碼的觸覺感知模態指示的觸覺效果,則彩現引擎將編碼到位元流中的第一和第三數據的至少一部分解碼,部分根據致動器的瀏覽能力解碼的第一和第三數據。
方塊92將表示要呈現的觸覺訊號的數據923輸出到方塊93。
方塊93被配置為處理數據923,例如根據連接到系統9、更具體地連接到方塊93的觸覺呈現裝置的特性。處理可以包括下採樣、觸覺混合、...中的至少一種。
系統9和相關聯的過程能夠結合根據本公開的分層格式的數據流或位元流來呈現任何種類的觸覺效果,包括在數據流或位元流中的數據的使用被調整為特徵並且相關聯觸覺呈現裝置的能力。
圖11示出了根據至少一個示例性實施例的呈現一個或多個觸覺效果的方法的步驟的示意方塊圖。
圖11的方法例如在系統9中實現。
在操作1101中,例如從記憶體或經由有線或無線連接從遠端裝置接收觸覺數據流。
在操作1102中,通過分析接收到的數據和/或通過檢查檔案擴展名和元數據來確定觸覺數據流是否是根據本公開的分層結構的格式。如果是,則該方法進一步處理操作1104。如果否,該方法進一步處理操作1103。
在操作1103,即當觸覺數據流的格式與本公開的分層結構不同時,將接收到的數據流(例如根據AHAP或IVS格式)轉換成本發明的分層格式披露。
在操作1104,觸覺數據根據本公開的分層格式並且數據被解析或分析。
在操作1105,確定觸覺數據是否是基於時間的,即確定基本訊號的表示空間。這種訊息例如從包含在分層結構的層中的第二數據獲得,該層具有比傳輸表示基本訊號和相關調變的數據的第一層更高的層級。
如果觸覺數據是基於時間的,則該方法進一步處理操作1117。
如果觸覺數據不是基於時間的,則該方法進一步處理操作1106。
在操作1106中,確定哪種類型的觸覺回饋與接收到的數據流的觸覺數據相關聯,例如,觸覺回饋的類型是對應於紋理還是對應於剛度。這種訊息是從第二數據和/或從與第三層相關聯的元數據獲得的,即,從一個或多個調變訊號序列的第一組合獲得。
如果觸覺回饋的類型對應於紋理,則該方法進一步處理操作1108。
如果觸覺回饋的類型對應於剛度,則該方法進一步處理操作1107。
在操作1107中,從數據流中提取調變點或關鍵幀(對應於調變參數),這樣的訊息被編碼為與能夠重建觸覺效果的每個基本訊號相關聯的第一數據。
在操作1115中,根據在操作1107中提取的點(關鍵幀)來確定或計算調變函數。插值函數例如對應於多項式函數,例如三階多項式函數。插值函數可以是任何其他函數,並且可以用訊號發送到數據流中以通知彩現引擎要使用哪個函數。通過插值函數獲得位於兩個關鍵幀之間的點,並將關鍵幀作為該函數一段的起點和終點。
通過用插值函數對編碼為第一數據的點(關鍵幀)進行插值獲得的函數對應於用於調變在第一層中用第三數據編碼的相關基本訊號的調變函數。
位於兩個關鍵幀之間的點進一步根據表示體驗觸覺效果的用戶身體的一部分的位置的數據來確定,這樣的數據是從在操作1110中對表示這部分的位置的數據的上採樣獲得的。在操作1109中從採集設備接收到的身體。被編碼到數據流中的觸覺效果所針對的身體部分是從數據流中獲得的,這種訊息被編碼為數據流或位元流的一個或多個層中的元數據.
在操作1116中,通過用在操作1115獲得的調變函數調變基本訊號來計算剛度觸覺效果。調變訊號的序列根據編碼的數據計算和組合進入數據流並相對於編碼到第三和第四層的第一和第二組合。計算的結果是表示剛度觸覺效果的觸覺訊號,該剛度觸覺效果將由與觸覺效果所針對的用戶的一個或多個身體部位相關聯的一個或多個致動器呈現。
在操作1124,訊號被傳輸到致動器以進行瀏覽。
在操作1108中,從位元流或數據流,更具體地,從編碼到位元流或數據流中的數據的分層表示的第一層,提取表示基本訊號和相關調變的第一和第三數據。
在操作1111,根據在操作1118獲得的表示每個觸覺呈現裝置的特性的數據來確定由彩現引擎饋送的觸覺呈現裝置(即,致動器)是否是寬頻設備。這種數據用於示例從觸覺裝置或從儲存在記憶體中的查找表(LUT)獲得,LUT將每個觸覺裝置的特性與每個觸覺裝置的標識符相關聯。
在操作1118中,確定觸覺裝置是寬頻還是僅調幅、通訊頻率、訊號通訊的範圍和/或頻率的表達範圍(例如,一些致動器被配置為工作)僅從65到300 Hz)。
如果觸覺裝置是寬頻設備,則該方法進一步處理操作1112。
如果觸覺裝置不是寬頻設備,則該方法進一步處理操作1113。
在操作1112中,觸覺裝置能夠接收寬頻訊號,並且處理所有用第一和第三數據編碼到第一層中的調變訊號,例如在頻帶2到9中的一個或多個中,以獲得以下序列:調變訊號。
在操作1113中,觸覺裝置不能接收寬頻訊號,這意味著觸覺裝置只能接收振幅調變訊號。在這種情況下,恆定訊號(例如在彩現引擎中硬編碼)用表示在第一層中編碼的調變的特定第一數據進行調變,例如在關於實施例描述的第一頻帶中編碼的第一數據基於量化的觸覺數據。
操作1112和1113能夠在操作1114獲得N個應用幀的紋理觸覺。
在操作1124中,訊號被傳輸到致動器以進行瀏覽。
在操作1117中,從位元流或數據流,更具體地,從編碼到位元流中的數據的分層表示的第一層,提取所接收的基於時間的、表示基本訊號和相關調變的第一和第三數據的觸覺數據或數據流。這種數據更具體地與表示振動效應的調變訊號序列有關。在操作1120,根據在操作1118 獲得的表示每個觸覺呈現裝置的特性的數據來確定由彩現引擎饋送的觸覺呈現裝置(即,致動器)是否是寬頻設備。
如果觸覺裝置是寬頻裝置,則該方法進一步處理操作1121。
如果觸覺裝置不是寬頻裝置,則該方法進一步處理操作1122。
在操作1121中,觸覺裝置能夠接收寬頻訊號,並且處理所有用第一和第三數據編碼到第一層中的調變訊號,例如在頻帶2到9中的一個或多個中,以獲得以下序列:調變訊號。
在操作1122中,觸覺裝置不能接收寬頻訊號,這意味著觸覺裝置只能接收幅度調變訊號。在這種情況下,恆定訊號(例如在彩現引擎中硬編碼)用表示在第一層中編碼的調變的特定第一數據進行調變,例如在關於實施例描述的第一頻帶中編碼的第一數據基於量化的觸覺數據。根據變體,如果觸覺裝置被配置為實現這樣的API調用,則呈現編碼為API調用的瞬態訊號。
操作1121和1122能夠在操作1123獲得N個應用幀的振動觸覺。
在操作1124中,訊號被傳輸到致動器以進行呈現。
這樣的過程能夠根據觸覺裝置的特性以及它們根據觸覺效果的觸覺感知模態瀏覽觸覺效果的能力來調整或調整編碼到位元流或數據流中的觸覺訊號的瀏覽。
根據觸覺裝置,編碼到位元流或數據流中的全部數據被解碼以用於瀏覽目的,僅編碼到位元流或數據流中的部分數據被解碼以用於瀏覽目的或僅更高層數據或訊息被解碼(例如表示觸覺感知模態的第二個數據)。
在圖1至11中,本文描述了各種方法,並且每種方法包括用於實現所描述的方法的一個或多個步驟或動作。除非該方法的正確操作需要特定的步驟或動作順序,否則可以修改或組合特定步驟和/或動作的順序和/或使用。
關於方塊圖和/或操作流程圖描述了一些示例。每個方塊表示一個電路元件、模組或代碼部分,其中包括一個或多個用於實現指定邏輯功能的可執行指令。還應注意,在其他實施方式中,方框中註明的功能可能不按指示的順序出現。例如,根據所涉及的功能,連續顯示的兩個方塊實際上可以基本上同時執行,或者這些方塊有時可以以相反的順序執行。
本文描述的實施方式和態樣可以在例如方法或過程、裝置、計算機程式、數據流、位元流或訊號中實施。即使僅在單一實施形式的上下文中討論(例如,僅作為方法討論),所討論的特徵的實施也可以以其他形式(例如,裝置或計算機程式)實施。
這些方法可以在例如處理器中實現,處理器通常指的是處理設備,包括例如計算機、微處理器、積體電路或可編程邏輯設備。處理器還包括通訊設備。
此外,這些方法可以通過由處理器執行的指令來實現,並且這些指令(和/或由實現產生的數據值)可以儲存在計算機可讀儲存介質上。計算機可讀儲存介質可以採取體現在一個或多個計算機可讀介質中並且具有體現在其上的可由計算機執行的計算機可讀程式碼的計算機可讀程式產品的形式。考慮到在其中儲存訊息的固有能力以及提供從中檢索訊息的固有能力,這裡使用的計算機可讀儲存介質可以被認為是非暫時性儲存介質。計算機可讀儲存介質可以是例如但不限於電子的、磁的、光學的、電磁的、紅外的或半導體系統、裝置或設備,或前述的任何合適的組合。應當理解,以下雖然提供了可以應用本實施例的計算機可讀儲存介質的更具體示例,但僅是說明性的,而不是如本領域普通技術人員容易理解的窮舉:可攜式電腦磁片;硬碟;唯讀記憶體(ROM);可擦可程式唯讀記憶體(EPROM或快閃記憶體);可攜式光碟唯讀記憶體(CD-ROM);光儲存裝置;磁儲存裝置;或上述任何合適的組合。
指令可以形成有形地體現在處理器可讀介質上的應用程式。
例如,指令可以在硬體、韌體、軟體或組合中。例如,可以在操作系統、單獨的應用程式或兩者的組合中找到指令。因此,處理器可以被表徵為例如被配置為執行過程的設備和包括具有用於執行過程的指令的處理器可讀介質(例如儲存裝置)的裝置。此外,除了指令之外或代替指令,處理器可讀介質可以儲存由實現產生的數據值。
設備可以以例如適當的硬體、軟體和韌體來實現。這種設備的示例包括個人電腦、筆記型電腦、智能手機、平板電腦、數字多媒體數位視訊轉換盒、數字電視接收器、個人視訊記錄系統、連接的家用電器、頭戴式顯示設備(HMD、透視眼鏡)、投影儀(投影儀)、「caves」(包括多個顯示器的系統)、伺服器、視訊和/或觸覺編碼器、視訊和/或觸覺解碼器、處理視訊解碼器輸出的後處理器、向視訊編碼器提供輸入的預處理器、網路伺服器、數位視訊轉換盒、無線連接的可穿戴觸覺裝置,例如藍牙
®連接的可穿戴觸覺裝置,以及用於處理表示一個或多個觸覺回饋或效果的觸覺數據或訊號的任何其他設備,或其他通訊設備。應該清楚的是,該設備可以是移動的。
電腦軟體可以由處理器81或硬體或硬體和軟體的組合來實現。作為非限制性示例,實施例還可以通過一個或多個積體電路來實現。記憶體82可以是適合於技術環境的任何類型,並且可以使用任何適當的數據儲存技術來實現,例如光學記憶體裝置、磁記憶體裝置、基於半導體的記憶體裝置、固定記憶體和可移動記憶體,作為非限制性例子。作為非限制性示例,處理器81可以是適合於技術環境的任何類型,並且可以包括微處理器、通用計算機、專用計算機和基於多核架構的處理器中的一個或多個。
如對本領域普通技術人員顯而易見的,實現方式可以產生各種訊號,這些訊號被格式化以攜帶例如可以被儲存或傳輸的訊息。該訊息可以包括例如用於執行方法的指令,或由所描述的實現方式之一產生的數據。例如,訊號可以被格式化以攜帶所描述的實施例的位元流。例如,這種訊號可以被格式化為電磁波(例如,使用頻譜的射頻部分)或基頻帶訊號。格式化可以包括例如編碼數據流和用編碼的數據流調變載波。訊號攜帶的訊息例如可以是模擬或數字訊息。如已知的,訊號可以通過各種不同的有線或無線鏈路傳輸。該訊號可以儲存在處理器可讀介質上。
本文使用的術語僅出於描述特定實施例的目的,並不旨在進行限制。如本文所用,單數形式「a」、「an」和「the」也可以旨在包括複數形式,除非上下文另有明確指示。將進一步理解的是,當在本說明書中使用時,術語「包括/包含”和/或「包括/包含”可以指定所陳述的例如特徵、整數、步驟、操作、元件和/或組件,但不排除存在或添加一個或多個其他特徵、整數、步驟、操作、元件、組件和/或它們的組。此外,當一個元件被稱為「響應」或「連接」到另一個元件時,它可以直接響應或連接到另一個元件,或者可以存在中間元件。相反,當一個元件被稱為「直接響應」或「直接連接」到其他元件時,不存在中間元件。
應當理解,例如在「A/B」、「A和/或B」、和「A和B中的至少一個」的情況下,使用任何符號/術語「/」、「和/或」和「至少一個」可能旨在包含僅選擇第一個列出的選項(A),或僅選擇第二個列出的選項(B),或選擇兩個選項(A和B)。作為進一步的示例,在「A、B和/或C」和「A、B和C中的至少一個」的情況下,這樣的措辭旨在僅包含對第一個列出的選項(A)的選擇,或僅選擇第二個選項(B),或僅選擇第三個選項(C),或僅選擇第一個和第二個選項(A和B),或僅選擇第一個和第三個選項(A和C),或僅選擇第二個和第三個選項(B和C),或選擇所有三個選項(A和B和C)。正如本領域和相關領域的普通技術人員所清楚的,這可以擴展到列出的盡可能多的項目。
在本發明中可以使用各種數值。特定值可以是用於示例目的,並且所描述的態樣不限於這些特定值。
應當理解,儘管術語第一、第二等可以在本文中用於描述各種元件,但是這些元件不受這些術語的限制。這些術語僅用於區分一個元件與另一個元件。例如,第一元件可以被稱為第二元件,並且類似地,第二元件可以被稱為第一元件而不背離本發明的教導。第一個元件和第二個元件之間沒有暗示排序。
對「一個示例性實施例」或「一個示例性實施例」或「一個實現」或「一個實現」以及其其他變體的引用經常用於傳達特定特徵、結構、特性等(描述與實施例/實施相關的術語)被包括在至少一個實施例/實施中。因此,短語「在一個示例性實施例中」或「在示例性實施例中」或「在一個實施例中」或「在一個實施例中」的出現,以及任何其他變體,出現在整個本發明的各個地方,不一定都是參考相同的實施例。
類似地,本文中對「根據示例性實施例/示例/實施方式」或「在示例性實施方式/示例/實施方式中」及其其他變體的引用經常用於傳達特定特徵、結構或特性(結合示例性實施例/示例/實施方式描述)可以包括在至少一個示例性實施例/示例/實施方式中。因此,在說明書的各個地方出現的表述「根據示例性實施例/示例/實現」或「在示例性實施例/示例/實現中」不一定都指相同的示例性實施例/示例/實現,單獨的或替代的示例性實施例/示例/實現也不一定與其他示例性實施例/示例/實現相互排斥。
申請專利範圍中出現的參考數字僅用於說明,對申請專利範圍的範圍沒有限制作用。儘管沒有明確描述,但是可以以任何組合或子組合來採用本實施例/示例和變體。
當附圖以流程圖的形式呈現時,應當理解其還提供了相應裝置的方塊圖。 類似地,當附圖以方塊圖形式呈現時,應當理解其也提供了相應方法/過程的流程圖。
儘管一些圖包括通訊路徑上的箭頭以顯示通訊的主要方向,但應理解通訊可以在與所描繪的箭頭相反的方向上發生。
各種實現涉及解碼。如在本發明中所使用的,「解碼」可以包括例如對接收到的觸覺訊號(可能包括對一個或多個觸覺訊號進行編碼的接收到的位元流)執行的所有或部分處理,以便產生適合的最終輸出。用於瀏覽觸覺效果或在重建的觸覺回饋或效果中進行進一步處理。在各種實施例中,這樣的過程包括通常由解碼器執行的一個或多個過程。在各種實施例中,這樣的過程還或備選地包括由本發明中描述的各種實現的解碼器執行的過程,例如,
各種實現涉及編碼。以與上述關於「解碼」的討論類似的方式,如在本發明中使用的「編碼」可以涵蓋例如對輸入觸覺訊號執行的所有或部分處理,以便產生編碼位元流。在各種實施例中,這樣的過程包括通常由編碼器執行的一個或多個過程。在各種實施例中,這樣的過程還或備選地包括由本發明中描述的各種實現的編碼器執行的過程。
此外,該應用程式可以指「獲取」各種訊息。獲得訊息可以包括例如估計訊息、計算訊息或從記憶體中檢索訊息中的一項或多項。
此外,該應用程式可以指「訪問」各種訊息。訪問訊息可以包括以下一項或多項,例如,接收訊息、檢索訊息(例如,從記憶體中)、儲存訊息、移動訊息、複製訊息、計算訊息、確定訊息或估計訊息。
此外,該應用程式可以指「接收」各種訊息。與「訪問」一樣,接收是一個廣義術語。接收訊息可以包括例如訪問訊息或檢索訊息(例如,從記憶體中)中的一項或多項。此外,在諸如儲存訊息、處理訊息、傳輸訊息、移動訊息、複製訊息、擦除訊息、計算訊息等操作期間,通常以一種或另一種方式涉及「接收」,確定訊息,或估計訊息。
此外,如本文所用,詞語「訊號」尤其是指向相應解碼器指示某事。這樣,在一個實施例中,可以在編碼器側和解碼器側使用相同的參數。因此,例如,編碼器可以向解碼器傳輸(顯式信令)特定參數,使得解碼器可以使用相同的特定參數。相反,如果解碼器已經具有特定參數以及其他參數,則可以使用信令而不發送(隱式信令)以簡單地允許解碼器知道和選擇特定參數。通過避免傳輸任何實際功能,在各種實施例中實現了位節省。應當理解,信令可以以多種方式完成。例如,在各種實施例中,一個或多個語法元件、標誌等用於向對應的解碼器發訊號通知訊息。雖然前面涉及「訊號」一詞的動詞形式,但「訊號」一詞在本文中也可以用作名詞。
已經描述了許多實現。然而,應當理解,可以進行各種修改。例如,可以組合、補充、修改或移除不同實現的元件以產生其他實現。此外,普通技術人員將理解,其他結構和過程可以替代所公開的那些,並且得到的實施方式將以至少基本相同的方式執行至少基本相同的功能,以至少實現與所公開的實施方式基本相同的結果。因此,本發明考慮了這些和其他實施方式。
2:編解碼器
3:觸覺效果檔案
8、9:系統11、12、13、14:層
21、22、23、24:方塊
24、25:調變訊號
31、32:字串
41、42、43:基本訊號
44、45、46:調變函數
47、48:訊號
51:第一訊號
52:第二訊號
53:第三訊號
61:第一步驟
62:第二步驟
71:第一步驟
72:第二步驟
81:處理器
82:記憶體
83:編碼器/解碼器模組
84:儲存裝置
85:方塊
86:通訊介面
87、88、89:介面
91:第一方塊
92:第二方塊
93:方塊
100:分層表示
111、112:基本訊號
121、122:序列
131、132:第一組合
141:第二組合
241:第三數據
242:第一數據
251:第三數據
252:第一數據
310、320:標頭
311、321:載荷
860:通訊通道
870:顯示器
880:揚聲器
890:致動器
911、912、921、922、923:數據
1101、1102、1103、1104、1105、1106、1107、1108、1109、1110、1111、1112、1113、1114、1115、1116、1117、1118、1120、1121、1122、1123、1124:操作
現在將通過示例的方式參考顯示本申請的示例性實施例的隨附圖式,其中:
圖1示出了根據至少一個示例性實施例的表示一個或多個觸覺訊號的數據的分層表示示意圖;
圖2示出了根據至少一個示例性實施例的表示被編碼到具有分層文字格式的觸覺效果檔案中的觸覺訊號的數據;
圖3示出了根據至少一個示例性實施例的表示被編碼到具有二進制格式的觸覺效果檔案中的觸覺訊號的數據;
圖4示出了根據至少一個示例性實施例的根據圖1的分層表示編碼的基本訊號序列;
圖5示出了根據至少一個示例性實施例的根據圖1的分層表示編碼的調變基本訊號的示例性序列;
圖6示出了根據至少一個示例性實施例的根據圖1的分層表示對觸覺訊號進行編碼的方法的步驟的示意方塊圖;
圖7示出了根據至少一個示例性實施例的根據圖1的分層對表示編碼的觸覺數據解碼的方法的步驟的示意方塊圖;
圖8示出了實施各個態樣和示例性實施例的系統示例的示意方塊圖;
圖9示出了根據至少一個示例性實施例的呈現系統和呈現一個或多個觸覺效果的相應方法的示例的示意方塊圖;
圖10示出了根據示例性實施例的位置上採樣方法;和
圖11示出了根據至少一個示例性實施例的呈現一個或多個觸覺效果的方法的步驟的示意方塊圖。
相似的元件符號可在不同的圖中用於表示相似的部件。
11、12、13、14:層
100:分層表示
111、112:基本訊號
121、122:序列
131、132:第一組合
141:第二組合
Claims (16)
- 一種在編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號編碼的方法,其中該方法包括對該觸覺訊號的分層表示(100)編碼,該分層表示包括複數個層(11、12、13、14),且層級與該複數個層(11、12、13、14)中的每一層相關聯, 該編碼包括: 在該複數個層(11、12、13、14)的第一層(11)中,對表示至少一基本訊號(41、42、43)的調變(44、45、46)的第一數據編碼(61);和 在具有高於該第一層的層級的層級的該多個層的一層中,對表示與該觸覺效果相關聯的觸覺感知模態的第二數據編碼(62)。
- 如請求項1所述的方法,進一步包括:在該第一層(11)中,藉由對表示第一組基本訊號(41、42、43)的每一基本訊號的第三數據編碼,對包含至少一該基本訊號的該第一組基本訊號(41、42、43)編碼,每一該基本訊號在確定的空間中表示,該確定的空間是根據該觸覺感知模態。
- 如請求項2所述的方法,其中,該第三數據包括: 表示該至少一個基本訊號(41、42、43)的類型的數據;和/或 表示該至少一個基本訊號(41、42、43)的相位的數據, 並且其中該第一數據包括表示該確定的空間中的複數個點的坐標的數據。
- 如請求項2或3所述的方法,其中,該複數個層(11、12、13、14)還包括具有高於該第一層的該層級的層級的第二層 (12)、具有高於該第二層的該層級的層級的第三層(13)、和具有高於該第三層的該層級的層級的第四層 (14),該方法還包括: 在該第二層 (12) 中,藉由對第二組的每一序列中表示每一該序列的一個或多個調變訊號的序列的第一訊息編碼,對包括至少一個或多個調變訊號的序列的該第二組序列編碼,每一調變訊號從與該基本訊號(41、42、43)相關聯的第二數據調變的該第一組的該基本訊號(41、42、43)獲得; 在該第三層(13)中,藉由對每一第一組合表示每一該第一組合所包含序列數量的第二訊息編碼,對包含該第二組的一個或多個序列的至少一第一組合的第一組合的第三組編碼;和 在該第四層(14)中,藉由對表示在第二組合中所包含的第一組合數量的第三訊息編碼,對該第三組的一個或多個第一組合的該第二組合編碼。
- 如請求項4所述的方法,其中,該第二組的至少一序列包括從不同類型的該基本訊號(41、42、43)獲得的複數個調變訊號。
- 如請求項1至5中任一項所述的方法,其中,該至少一基本訊號對應於一恆定訊號。
- 如請求項1至6中任一項所述的方法,還包括在該複數個層(11、12、13、14)的至少一層中編碼元數據,該元數據的至少一部分包括表示與該至少一基本訊號相關聯的應用程介面式介面調用的數據。
- 一種從編碼的觸覺訊號數據解碼觸覺訊號的方法,其中該方法包括對該觸覺訊號的分層表示解碼,該分層表示包括複數個層,且層級與該複數個層中的每一層相關聯, 該解碼包括: 從該複數個層中的第一層(11)中,對表示至少一基本訊號的調變的第一數據解碼(71); 和 從具有高於該第一層的層級的層級的該複數個層的一層中,對表示觸覺感知模態的第二數據解碼(72)。
- 如請求項8所述的方法,進一步包括:從該第一層,藉由對表示第一組基本訊號(41、42、43)的每一基本訊號的第三數據解碼,對包含至少一該基本訊號的第一組基本訊號 (41、42、43)解碼,每一該基本訊號在確定的空間中表示,該確定的空間是根據該觸覺感知模態。
- 如請求項9所述的方法,其中,該第三數據包括: 表示該至少一個基本訊號的類型的數據;和/或 表示該至少一個基本訊號的相位的數據, 並且其中該第一數據包括表示該確定的空間中的複數個點的坐標的數據。
- 如請求項9或10所述的方法,其中,該複數個層(11、12、13、14)還包括具有高於該第一層的該層級的層級的第二層(12)、具有高於該第二層的該層級的層級的第三層(13)、和具有高於該第三層的該層級的層級的第四層(14), 該方法還包括: 從該第二層(12)中,藉由對第二組的每一序列中表示每一該序列的一個或多個調變訊號的序列的第一訊息解碼,對包括至少一個或多個調變訊號的序列的該第二組序列解碼,每一調變訊號是從與該基本訊號相關聯的第二數據調變的該第一組的該基本訊號獲得的; 從該第三層(13)中,藉由對每一第一組合表示每一該第一組合所包含序列數量的第二訊息解碼,對包含該第二組的一個或多個序列的至少一第一組合的第一組合的第三組解碼;和 從該第四層(14)中,藉由對表示在第二組合中所包含的第一組合數量的第三訊息解碼,對該第三組的一個或多個第一組合的該第二組合解碼。
- 如請求項11所述的方法,其中,該第二組的至少一序列包括從不同類型的該基本訊號中獲得的複數個調變訊號。
- 如請求項8至12中任一項所述的方法,其中,該至少一基本訊號對應於一恆定訊號。
- 如請求項8至13中任一項所述的方法,還包括從該複數個層中的至少一層中解碼元數據,該元數據的至少一部分包括表示與該至少一基本訊號相關聯的應用程式介面調用的數據。
- 一種在編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號編碼的設備(8),其中該設備包括與至少一處理器(81)相關聯的記憶體(82、84),該至少一處理器(81)被配置為實施根據請求項1至7中任一項所述的方法。
- 一種從編碼的觸覺訊號數據的位元流中對表示觸覺效果的觸覺訊號解碼的設備(8),其中該設備包括與至少一處理器(81)相關聯的記憶體(82、84),該處理器(81)被配置為實施根據請求項8至14中任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EPEP21306351 | 2021-09-29 | ||
EP21306351.4A EP4160361A1 (en) | 2021-09-29 | 2021-09-29 | Method and apparatus of encoding/decoding haptics data |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202403508A true TW202403508A (zh) | 2024-01-16 |
Family
ID=78516721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111137092A TW202403508A (zh) | 2021-09-29 | 2022-09-29 | 編碼/解碼觸覺資料的方法及設備 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP4160361A1 (zh) |
CN (1) | CN118043764A (zh) |
AU (1) | AU2022356219A1 (zh) |
TW (1) | TW202403508A (zh) |
WO (1) | WO2023052305A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3099030A1 (en) * | 2015-05-26 | 2016-11-30 | Thomson Licensing | Method and device for encoding/decoding a packet comprising data representative of a haptic effect |
EP3112987A1 (en) * | 2015-06-29 | 2017-01-04 | Thomson Licensing | Method and schemes for perceptually driven encoding of haptic effects |
FR3066030B1 (fr) | 2017-05-02 | 2019-07-05 | Centre National De La Recherche Scientifique | Procede et dispositif de generation de motifs tactiles |
US20200076866A1 (en) * | 2018-08-30 | 2020-03-05 | Immersion Corporation | Systems, devices, and methods for streaming haptic effects |
-
2021
- 2021-09-29 EP EP21306351.4A patent/EP4160361A1/en active Pending
-
2022
- 2022-09-26 WO PCT/EP2022/076708 patent/WO2023052305A1/en active Application Filing
- 2022-09-26 CN CN202280066250.8A patent/CN118043764A/zh active Pending
- 2022-09-26 AU AU2022356219A patent/AU2022356219A1/en active Pending
- 2022-09-29 TW TW111137092A patent/TW202403508A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
EP4160361A1 (en) | 2023-04-05 |
CN118043764A (zh) | 2024-05-14 |
AU2022356219A1 (en) | 2024-03-14 |
WO2023052305A1 (en) | 2023-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6639602B2 (ja) | オフラインハプティック変換システム | |
US10152126B2 (en) | Multiplexing and demultiplexing haptic signals | |
JP6411069B2 (ja) | 触覚データを符号化及びストリーミングする方法及びシステム | |
US9424053B2 (en) | Method and apparatus for displaying personalized user interface | |
CN107645491A (zh) | 媒体流传输设备和媒体服务设备 | |
CN104063056A (zh) | 用于增强的触觉效果的系统和方法 | |
US20210044644A1 (en) | Systems, devices, and methods for streaming haptic effects | |
JP7297086B2 (ja) | セッションのメディアデータを受信するための方法、装置、およびプログラム | |
CN113748659B (zh) | 接收会话的媒体数据的方法、装置和非易失性计算机可读介质 | |
CN109076250B (zh) | 交互式音频元数据处置 | |
TW202403508A (zh) | 編碼/解碼觸覺資料的方法及設備 | |
JP7190589B2 (ja) | セッションベースdash動作のためのパターン指定 | |
EP4300263A1 (en) | Method and apparatus of signaling/parsing haptic data | |
EP4300264A1 (en) | Method and apparatus of signaling/parsing haptic data | |
EP4167600A2 (en) | A method and apparatus for low complexity low bitrate 6dof hoa rendering | |
WO2023099233A1 (en) | Adaptation of a haptic signal to device capabilities | |
WO2023202898A1 (en) | Haptics effect comprising a washout | |
CN117336281A (zh) | 触觉媒体文件的解封装和封装方法、装置、电子设备 | |
CN117609523A (zh) | 触觉媒体的数据处理方法、装置及计算机设备、存储介质 | |
WO2024002508A1 (en) | Method and apparatus of transmitting haptic data | |
WO2023217677A1 (en) | Signal coding based on interpolation between keyframes |