本發(fā)明涉及表情符號處理技術(shù)領(lǐng)域,更具體地,涉及一種表情符號處理方法、設(shè)備及電子設(shè)備。
背景技術(shù):
隨著互聯(lián)網(wǎng)通信技術(shù)的發(fā)展,在通信過程中,通信軟件的客戶端或?qū)崿F(xiàn)類似即時通信功能的應(yīng)用程序,例如QQ、微信等,或者手機、平板電腦等這類可以實現(xiàn)通信功能的通信設(shè)備,都會提供用戶通過表情圖片、表情動畫等表情數(shù)據(jù)表示用戶的情緒、意圖的功能,以增強用戶使用體驗。但目前在通信過程中傳輸表情數(shù)據(jù)時,通常的技術(shù)方案是,將表情數(shù)據(jù)轉(zhuǎn)換為對應(yīng)的表情符號進行傳輸,表情符號通常是有特定規(guī)則的字符串,例如,笑臉圖片對應(yīng)的表情符號為[:smail],在通信過程中,用戶通過通信軟件的客戶端進行通信,選擇本地表情數(shù)據(jù)庫提供笑臉圖片請求發(fā)送,笑臉圖片會被替換成[:smail]這個表情符號就行傳輸,當接收方使用的通信軟件客戶端接收并讀取[:smail]這一表情符號后,通??蛻舳藭谋镜乇砬閿?shù)據(jù)庫中選擇笑臉圖片進行本地顯示。
但發(fā)明人發(fā)現(xiàn),現(xiàn)有表情數(shù)據(jù)傳輸方式在實際應(yīng)用中存在問題:
一是對于用戶通常使用的例如手機、平板電腦、臺式機等通信設(shè)備,通常通信設(shè)備的系統(tǒng)中提供一個系統(tǒng)表情數(shù)據(jù)庫,而用戶使用的通信軟件或?qū)崿F(xiàn)通信功能的應(yīng)用程序的客戶端也會提供一個客戶端表情數(shù)據(jù)庫,客戶端表情數(shù)據(jù)庫與系統(tǒng)表情數(shù)據(jù)庫共同構(gòu)成用戶可使用的本地表情數(shù)據(jù)庫,但客戶端表情數(shù)據(jù)庫與系統(tǒng)表情數(shù)據(jù)庫各自獨立,對于相同的表情符號,會出現(xiàn)客戶端表情數(shù)據(jù)庫中對應(yīng)的表情圖片與系統(tǒng)表情數(shù)據(jù)庫中對應(yīng)的表情圖片并不相同,會導(dǎo)致用戶在通信中使用表情時發(fā)現(xiàn)同一表情符號對應(yīng)兩個表情圖片,產(chǎn)生迷惑,影響用戶體驗;
二是通信雙方的表情符號與本地表情的映射關(guān)系必須同步,否則在通信時,就可能存在接收方表情符號后,因為的表情符號與本地表情的映射關(guān)系不同,找不到對應(yīng)的本地表情,無法正常顯示發(fā)送方想傳輸?shù)谋砬?。這就意味著,通信雙方使用的通信軟件的客戶端在開發(fā)中,必須保證表情符號與本地表情的映射關(guān)系同步,此外還可能需要例如信軟件的服務(wù)器這樣的中心控制設(shè)備,協(xié)助實現(xiàn)客戶端之間表情符號與本地表情的映射關(guān)系的同步。因此,通信中涉及的各個設(shè)備(客戶端、服務(wù)器等)必須緊密耦合,會影響通信軟件客戶端的迭代開發(fā)。而實際應(yīng)用中,通常通信雙方使用的客戶端版本不一致或者通信設(shè)備型號不同,因此要保證表情符號與本地表情的映射關(guān)系,還需要用戶自行升級客戶端,影響用戶體驗。并且,對型號不同的通信設(shè)備,例如,IOS系統(tǒng)的手機和Android系統(tǒng)的手機,對于同一通信軟件,客戶端的版本也很難一致,而Android系統(tǒng)和IOS系統(tǒng)各自提供的系統(tǒng)表情數(shù)據(jù)庫是不一致的,對應(yīng)的本地表情數(shù)據(jù)庫也不可能同步,因此很難維持通信雙方的表情符號與本地表情的映射關(guān)系同步,在通信時,常常會出現(xiàn)發(fā)送方使用IOS系統(tǒng)的手機發(fā)送一個表情圖片,但接收方通過Android系統(tǒng)的手機客戶端卻無法顯示該表情圖片,只能顯示白框或者問號,導(dǎo)致用戶體驗不佳。
因此,發(fā)明人認為,有必要針對上述現(xiàn)有技術(shù)中存在的問題中的至少一個進行解決。
技術(shù)實現(xiàn)要素:
本發(fā)明的一個目的是提供一種用于表情符號處理的新技術(shù)方案。
根據(jù)本發(fā)明的第一方面,提供了一種表情符號處理方法,包括:。
獲取與所接收的表情符號唯一對應(yīng)的表情特征值;
根據(jù)本地表情映射表,獲取與所述表情特征值對應(yīng)的本地表情并顯示,所述本地表情映射表用于定義所述表情特征值與所述本地表情之間的唯一映射關(guān)系。
可選地,所述獲取與所接收的表情符號唯一對應(yīng)的表情特征值的步驟包括:
根據(jù)特征值映射表,獲取與所接收的表情符號唯一對應(yīng)的表情特征值,所述語義映射表用于定義所述表情符號與所述表情特征值之間的唯一映射關(guān)系。
可選地,所述表情符號處理方法,還包括:
根據(jù)所述本地表情映射表,獲取與待發(fā)送的本地表情對應(yīng)的所述表情特征值;
將所述表情特征值轉(zhuǎn)換為對應(yīng)的表情符號并發(fā)送。
可選地,所述表情符號處理方法,還包括:
當不存在與所述表情特征值對應(yīng)的本地表情時,獲取與所述表情特征值近似的備選表情特征值;
根據(jù)本地表情映射表,獲取與所述備選表情特征值對應(yīng)的本地表情進行顯示。
可選地,所述表情符號處理方法,還包括:
當不存在與所述表情特征值對應(yīng)的本地表情時,顯示預(yù)置的默認表情。
可選地,所述表情符號處理方法,還包括:
響應(yīng)于外部設(shè)置請求,對所述本地表情映射表進行配置或更新。
根據(jù)本發(fā)明的第二方面,提供了一種表情符號處理設(shè)備,包括:
第一特征值獲取單元,用于獲取與所接收的表情符號唯一對應(yīng)的表情特征值;
第一表情顯示單元,用于根據(jù)本地表情映射表,獲取與所述表情特征值對應(yīng)的本地表情并顯示,所述本地表情映射表用于定義所述表情特征值與所述本地表情之間的唯一映射關(guān)系。
可選地,所述第一特征值獲取單元還用于,根據(jù)特征值映射表,獲取與所接收的表情符號唯一對應(yīng)的表情特征值,所述語義映射表用于定義所述表情符號與所述表情特征值之間的唯一映射關(guān)系。
可選地,所述符號處理設(shè)備還包括:
第二特征值獲取單元,據(jù)所述本地表情映射表,獲取與待發(fā)送的本地表情對應(yīng)的所述表情特征值;
表情發(fā)送單元,用于將所述表情特征值轉(zhuǎn)換為對應(yīng)的表情符號并發(fā)送。
可選地,所述符號處理設(shè)備還包括:
備選特征值獲取單元,用于當不存在與所述表情特征值對應(yīng)的本地表情時,獲取與所述表情特征值近似的備選表情特征值;以及
第二表情顯示單元,用于根據(jù)本地表情映射表,獲取與所述備選表情特征值對應(yīng)的本地表情進行顯示。
可選地,所述符號處理設(shè)備還包括:
第三表情顯示單元,用于當不存在與所述表情特征值對應(yīng)的本地表情時,顯示預(yù)置的默認表情。
可選地,所述符號處理設(shè)備還包括:
映射表設(shè)置單元,用于響應(yīng)于外部設(shè)置請求,對所述本地表情映射表進行配置或更新。
根據(jù)本發(fā)明的第三方面,提供了一種電子設(shè)備,包括存儲器和處理器,其中,所述存儲器用于存儲指令,所述指令用于控制所述處理器進行操作以執(zhí)行根據(jù)本發(fā)明的第一方面提供的任意一項的表情符號處理方法。
本發(fā)明的發(fā)明人發(fā)現(xiàn),在現(xiàn)有技術(shù)中,尚未存在一種通過獲取與所接收的表情符號唯一對應(yīng)的表情特征值,根據(jù)本地表情映射表獲取與表情特征值對應(yīng)的本地表情進行顯示的表情符號處理方法,使得通信雙方可以不必同步本地表情映射表,也不必同步表情符號與本地表情的映射關(guān)系或者同步各自的本地表情映射表,就能在通信中正常顯示表情,提高用戶體驗,同時,還實現(xiàn)了表情符號與本地表情唯一對應(yīng),避免一個表情符號對應(yīng)多個本地表情導(dǎo)致用戶產(chǎn)生迷惑從而影響用戶體驗。因此,本發(fā)明所要實現(xiàn)的技術(shù)任務(wù)或者所要解決的技術(shù)問題是本領(lǐng)域技術(shù)人員從未想到的或者沒有預(yù)期到的,故本發(fā)明是一種新的技術(shù)方案。
通過以下參照附圖對本發(fā)明的示例性實施例的詳細描述,本發(fā)明的其它特征及其優(yōu)點將會變得清楚。
附圖說明
被結(jié)合在說明書中并構(gòu)成說明書的一部分的附圖示出了本發(fā)明的實施例,并且連同其說明一起用于解釋本發(fā)明的原理。
圖1是顯示可用于實現(xiàn)本發(fā)明的實施例的電子設(shè)備1000的示意性框圖。
圖2示出了本發(fā)明的實施例的表情符號處理方法的接收流程圖。
圖3示出了本發(fā)明的實施例的表情符號處理方法的發(fā)送流程圖。
圖4示出了本發(fā)明的實施例的表情符號處理設(shè)備的示意性框圖。
圖5示出了本發(fā)明的實施例的表情符號處理方法的例子的流程圖。
具體實施方式
現(xiàn)在將參照附圖來詳細描述本發(fā)明的各種示例性實施例。應(yīng)注意到:除非另外具體說明,否則在這些實施例中闡述的部件和步驟的相對布置、數(shù)字表達式和數(shù)值不限制本發(fā)明的范圍。
以下對至少一個示例性實施例的描述實際上僅僅是說明性的,決不作為對本發(fā)明及其應(yīng)用或使用的任何限制。
對于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細討論,但在適當情況下,所述技術(shù)、方法和設(shè)備應(yīng)當被視為說明書的一部分。
在這里示出和討論的所有例子中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實施例的其它例子可以具有不同的值。
應(yīng)注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步討論。
<硬件配置>
圖1是示出可以實現(xiàn)本發(fā)明的實施例的電子設(shè)備1000的硬件配置的框圖。
電子設(shè)備1000可以是便攜式電腦、臺式計算機、手機、平板電腦等。如圖1所示,電子設(shè)備1000可以包括處理器1010、存儲器1020、接口裝置1030、通信裝置1040、顯示裝置1050、輸入裝置1060、揚聲器1070、麥克風(fēng)1080,等等。其中,處理器1010可以是中央處理器CPU、微處理器MCU等。存儲器1020例如包括ROM(只讀存儲器)、RAM(隨機存取存儲器)、諸如硬盤的非易失性存儲器等。接口裝置1030例如包括USB接口、耳機接口等。通信裝置1040例如能夠進行有線或無線通信。顯示裝置1050例如是液晶顯示屏、觸摸顯示屏等。輸入裝置1060例如可以包括觸摸屏、鍵盤等。用戶可以通過揚聲器1070和麥克風(fēng)1080輸入/輸出語音信息。
圖1所示的電子設(shè)備1000僅是解釋性的,并且決不是為了要限制本發(fā)明、其應(yīng)用或用途。應(yīng)用于本發(fā)明的實施例中,電子設(shè)備1000的所述存儲器1020用于存儲指令,所述指令用于控制所述處理器1010進行操作以執(zhí)行本發(fā)明實施例所提供的任意一項表情符號處理方法。本領(lǐng)域技術(shù)人員應(yīng)當理解,盡管在圖1中電子設(shè)備1000都示出了多個裝置,但是,本發(fā)明可以僅涉及其中的部分裝置,例如,電子設(shè)備1000只涉及處理器1010和存儲裝置1020等。技術(shù)人員可以根據(jù)本發(fā)明所公開方案設(shè)計指令。指令如何控制處理器進行操作,這是本領(lǐng)域公知,故在此不再詳細描述。
<實施例>
本實施例中提供一種表情符號處理方法,如圖2所示,包括:
步驟S2100,獲取與所接收的表情符號唯一對應(yīng)的表情特征值。
在本實施例中,所述表情是指用戶在通信中通過通信軟件的客戶端或?qū)崿F(xiàn)類似即時通信功能的應(yīng)用程序的客戶端,傳輸?shù)挠糜诒碚饔脩羟榫w或者意圖的表情圖片或表情動畫。
所述表情符號是指在傳輸表情時用于表征表情的字符串,可以是通信軟件或?qū)崿F(xiàn)類似即時通信功能的應(yīng)用程序內(nèi)部自定義的,也可以是符合現(xiàn)行標準的字符串,例如,采用UTF-8編碼的字符串,UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字符編碼,又稱萬國碼,UTF-8用1到4個字節(jié)編碼Unicode字符,可以用于在頁面中顯示不同的語言文字,也可以用于表征表情,例如,Unicode 7.0版規(guī)定的表情符號表,具體可以參考Unicode官方網(wǎng)站上已公布的版本:http://www.unicode.org/charts/PDF/Unicode-7.0/U70-1F600.pdf。
在本實施例中,所述表情特征值,可以表征與所述表情符號對應(yīng)的表情特征,與所述表情符號是唯一對應(yīng)的。表情特征值可以是所述表情符號表征的表情圖片或者表情動畫對應(yīng)的表情語義,例如,表情符號是[:smail],表征的表情是笑臉表情圖片,對應(yīng)的表情語義是“微笑”,因此表情符號[:smail]的表情特征值是“微笑”;表情特征值也可以是表情符號本身,例如表情符號是萬國碼中的符號“+1F923”,萬國碼標準中已規(guī)定表情符號“+1F923”對應(yīng)微笑表情,因此,表情符號“+1F923”本身已能體現(xiàn)對應(yīng)表情的特征,具有唯一性,可以作為是表情特征值。
獲取與表情符號唯一對應(yīng)的表情特征值,可以有多種方法,例如,當表情特征值是表情語義時,可以利用語義提取或者語義轉(zhuǎn)換方法,根據(jù)所述表情符號表征的表情獲取表情語義;又例如,當表情特征值是表情符號本身時,在接收表情符號時也就獲取了表情特征值。
此外,還可以預(yù)先設(shè)置特征值映射表,在特征值映射表中定義表情符號與表情特征值之間的唯一映射關(guān)系。具體地,所述表情符號與表情特征值之間的映射關(guān)系,可以是表情符號與表情特征值的關(guān)鍵詞之間的映射關(guān)系,也可以是表情符號與表情特征值的索引關(guān)系,在此不一一列舉,只要使得表情符號與表情特征值之間的映射關(guān)系是唯一的,不存在一個表情符號對應(yīng)兩個表情特征值或者一個表情特征值對應(yīng)兩個表情符號,都可以應(yīng)用在本實施例中。在接收表情符號后,可以直接從特征值映射表中查詢獲取與該表情符號的表情特征值,提升處理效率。因此,在一個例子中,本實施例的表情符號處理方法,還包括:
根據(jù)特征值映射表,獲取與所接收的表情符號唯一對應(yīng)的表情特征值,所述語義映射表用于定義所述表情符號與所述表情特征值之間的唯一映射關(guān)系。
在通過步驟S2100獲取表情特征值后,進入步驟S2200,根據(jù)本地表情映射表,獲取與所述表情特征值對應(yīng)的本地表情并顯示,所述本地表情映射表用于定義所述表情特征值與所述本地表情之間的唯一映射關(guān)系。
在本實施例中,所述本地表情,是用戶的本地表情數(shù)據(jù)庫中存儲的表情圖片或者表情動畫,所述本地表情數(shù)據(jù)庫包括系統(tǒng)表情數(shù)據(jù)庫和客戶端表情數(shù)據(jù)庫中的至少一個,所述系統(tǒng)表情數(shù)據(jù)庫由用戶使用的通信設(shè)備(例如手機、平板電腦、臺式機等)的系統(tǒng)提供,所述客戶端表情數(shù)據(jù)庫由用戶使用的通信軟件或?qū)崿F(xiàn)通信功能的應(yīng)用程序的客戶端提供。
在本實施例中,本地表情映射表定義表情特征值與本地表情之間的唯一映射關(guān)系,所述映射關(guān)系,具體地,可以是表情特征值與本地表情的編號的映射關(guān)系,也可以表情特征值的關(guān)鍵詞與本地表情的存儲地址的映射關(guān)系,在此不一一列舉,只要使得表情特征值與本地表情的映射關(guān)系是唯一的,不存在一個表情特征值對應(yīng)兩個本地表情或者一個本地表情對應(yīng)兩個表情特征值,就可以應(yīng)用在本實施例中。
對于進行通信的雙方,由于各自使用的通信設(shè)備的型號不同(例如IOS系統(tǒng)的手機和Android系統(tǒng)的手機),本地表情數(shù)據(jù)庫通常不同步,而使用的通信軟件或者實現(xiàn)通信功能的應(yīng)用程序的版本也不同,無法實現(xiàn)表情符號與本地表情圖片映射關(guān)系完全同步,就有可能出現(xiàn)發(fā)送方的表情圖片在接收方無法正常顯示的情況,例如,發(fā)送方使用IOS系統(tǒng)的手機,發(fā)送表情圖片1,對應(yīng)的表情符號是“+1F600”,但接收方使用Android系統(tǒng)的手機,本地表情數(shù)據(jù)庫與接收方并不同步,并不存在表情圖片1,而表情符號與本地表情的映射關(guān)系也不同步,Android系統(tǒng)的手機在接收到“+1F600”后,存在找不到對應(yīng)的本地表情,只能向用戶顯示是白框或者問號,影響用戶體驗。
而在本實施例中所提供的表情符號處理方法,通過本地表情映射表,定義了本地表情與表情特征值之間唯一的映射關(guān)系,在接收表情符號后獲取唯一對應(yīng)的表情特征值,根據(jù)本地表情映射表可以直接從本地表情數(shù)據(jù)庫中選取與表情特征值對應(yīng)的本地表情以顯示。例如,發(fā)送方使用IOS系統(tǒng)的手機,發(fā)送表情圖片1,對應(yīng)的表情符號是“+1F600”,但接收方使用Android系統(tǒng)的手機,本地表情數(shù)據(jù)庫與接收方并不同步,并不存在表情圖片1,而表情符號與本地表情的映射關(guān)系也不同步,Android系統(tǒng)的手機在接收到“+1F600”后,獲取與“+1F600”唯一對應(yīng)的表情特征值,例如是該表情符號對應(yīng)的表情語義,然后根據(jù)本地表情映射表,找到與該表情語義對應(yīng)的本地表情數(shù)據(jù)庫中的表情圖片2,將表情圖片2對用戶顯示。向用戶顯示的具體步驟,可以是在對應(yīng)“+1F600”的表情符號的文本位置通過圖文混排技術(shù)替換對應(yīng)的表情圖片2進行顯示。
因此,通過本實施例中的符號處理方法,可以通過獲取與所接收表情符號唯一對應(yīng)的表情特征值,根據(jù)本地表情映射表,直接向用戶顯示本地表情,通信雙方可以使用不同的本地表情映射表,也不必同步表情符號與本地表情的映射關(guān)系,也不必同步通信雙方的本地表情數(shù)據(jù)庫,也無需依賴如服務(wù)器這樣的中心控制設(shè)備,就能保證表情正常顯示,提升用戶體驗。
此外,通過本實施例提供的符號處理方法,使得通信中涉及的設(shè)備(通信軟件或者實現(xiàn)通信功能的應(yīng)用程序的客戶端、服務(wù)器等)不存在耦合或依賴,在開發(fā)涉及表情數(shù)據(jù)相關(guān)的部分可以相互獨立,有利于快速迭代開發(fā)。例如,對于同一個通信軟件,在開發(fā)IOS系統(tǒng)的客戶端使得本地表情數(shù)據(jù)庫升級后,不需要同步升級Android系統(tǒng)的客戶端的本地表情數(shù)據(jù)庫,對這兩種版本的客戶端的開發(fā),就可以根據(jù)各自開發(fā)周期選擇兼容的本地表情數(shù)據(jù)庫,實現(xiàn)快速迭代開發(fā)。
并且,在本實施例中,表情符號與表情特征值唯一對應(yīng),表情特征值與本地表情唯一對應(yīng),因此實現(xiàn)了表情符號與本地表情唯一對應(yīng),避免一個表情符號對應(yīng)多個本地表情導(dǎo)致用戶產(chǎn)生迷惑,提升用戶體驗。
在本實施例中,本地表情映射表還可以根據(jù)應(yīng)用場景或者用戶需求進行配置或更新,例如,可以在通信設(shè)備或者通信軟件客戶端的系統(tǒng)初始化時,根據(jù)本地表情數(shù)據(jù)庫,由系統(tǒng)自動或者工程人員預(yù)先配置本地表情映射表,也可以在升級了通信軟件或者實現(xiàn)通信功能的應(yīng)用程序的客戶端,使得本地表情數(shù)據(jù)庫升級后,由系統(tǒng)自動,或者工程人員手動,相應(yīng)配置本地表情映射表的更新,或者,通過通信軟件的客戶端可以將本地表情數(shù)據(jù)庫中表情圖片或者表情動畫呈現(xiàn)給用戶,并提供界面由用戶根據(jù)自身的應(yīng)用需求定義本地表情與表情特征值之間的唯一映射關(guān)系,以此觸發(fā)對本地表情映射表的配置或更新。具體地,比如表情特征值為“微笑”,可以向用戶呈現(xiàn)若干個微笑的表情圖片,該表情圖片可以來自系統(tǒng)表情數(shù)據(jù)庫或者客戶端表情數(shù)據(jù)庫,還可以是用戶自身添加的圖片,由用戶選擇符合自己需求的圖片,定義與表情特征值“微笑”形成唯一對應(yīng)的映射關(guān)系,在表情特征值為符合萬國碼規(guī)定的表情符號時,也可以實現(xiàn)類似功能,在此不再贅述。
因此,本實施例中的表情符號處理方法,還可以包括:響應(yīng)于外部設(shè)置請求,對所述本地表情映射表進行配置或更新。其中,所述外部設(shè)置請求可以根據(jù)是系統(tǒng)自動觸發(fā),也可以響應(yīng)于工程人員手動配置觸發(fā),或者響應(yīng)于用戶界面輸入或者操作觸發(fā)。
在上述例子中已經(jīng)說明本實施例中通信雙方可以使用本地表情映射表同步。在本地表情映射表中定義了本地表情與表情特征值的唯一對應(yīng)關(guān)系。而表情特征值是與表情符號唯一對應(yīng),因此,即使通信雙方的本地表情數(shù)據(jù)庫并不同步、本地表情映射表也不同步,只要通信雙方在各自的本地表情映射表中定義了同一個表情特征值對應(yīng)的本地表情,就能在傳輸與該表情特征值對應(yīng)的表情符號時,接收方都能正常顯示本地表情。
但是,由于各個用戶使用的通信設(shè)備型號、版本不同,或者通信軟件、實現(xiàn)通信功能的應(yīng)用程序的客戶端版本不同,有可能進行通信的兩個用戶中,其中一個用戶的本地表情數(shù)據(jù)庫中包含的表情種類發(fā)生變化,在本地表情映射表中定義了對應(yīng)的新的表情特征值,但另一個用戶的本地表情映射表中并未定義該表情特征值對應(yīng)的本地表情,因而導(dǎo)致不能正常顯示表情。因此,在本實施例中所提供的表情符號處理方法,還包括:
當不存在與所述表情特征值對應(yīng)的本地表情時,獲取與所述表情特征值近似的備選表情特征值;
根據(jù)本地表情映射表,獲取與所述備選表情特征值對應(yīng)的本地表情進行顯示。
通過定義備選表情特征值,可以針對本地表情映射表中未定義某個表情特征值與表情圖片的映射關(guān)系時,通過模糊匹配、近義詞匹配等方法,可以獲取與該表情特征值對應(yīng)的備選表情特征值,根據(jù)本地表情映射表中定義的備選表情特征值與本地表情的唯一映射關(guān)系,從本地表情數(shù)據(jù)庫中選取對應(yīng)的本地表情進行顯示。具體地,例如用戶A向用戶B發(fā)送的表情圖片1,傳輸對應(yīng)的表情符號,對應(yīng)的表情特征值“喜悅”,而用戶B接收表情符號獲取表情特征值“喜悅”后,本地表情映射表中未定義“喜悅”與對應(yīng)的本地表情的映射關(guān)系,因此可以通過近義詞匹配法得到備選表情特征值“歡喜”,根據(jù)本地表情映射表中定義的“歡喜”與對應(yīng)本地表情的唯一映射關(guān)系,將與“歡喜”對應(yīng)的表情圖片2向用戶顯示,避免不能正常顯示表情。并且,還可以根據(jù)用戶需求,提供界面供用戶配置是否啟用根據(jù)備選表情特征值選取本地表情顯示的功能,提升用戶體驗。
而在本地表情映射表中未定義某個表情特征值與表情圖片的映射關(guān)系時,也可以直接向用戶顯示預(yù)置的默認表情,該默認表情可以是系統(tǒng)預(yù)先設(shè)置的能提示用戶不能正常顯示對方發(fā)送的表情,也可以提供界面供用戶預(yù)先配置,由用戶根據(jù)自身的喜好或者需求設(shè)置在無法正常顯示對方發(fā)送的表情時希望看到的表情。通過默認表情代替白框或問號,提升用戶體驗。因此,在一個例子中,本實施例中包括的表情符號處理方法中,還包括:當不存在與所述表情特征值對應(yīng)的本地表情時,顯示預(yù)置的默認表情。
在本實施例中已結(jié)合上述例子進行說明對接收的表情符號進行處理的方法,通信雙方可以使用不同的本地表情映射表,也無需同步表情符號與本地表情的映射關(guān)系,或者同步本地表情數(shù)據(jù)庫,就能正常顯示本地表情,提升用戶體驗。此外,使得通信中涉及的各個設(shè)備(通信軟件或者實現(xiàn)通信功能的應(yīng)用程序的客戶端、服務(wù)器等)各自獨立,不存在耦合或者依賴,有利于實現(xiàn)快速迭代開發(fā)。
在本實施例中,還可以對于待發(fā)送的本地表情,根據(jù)與對接收的表情符號中所應(yīng)用的本地表情映射表,獲取與本地表情唯一對應(yīng)的表情特征值,然后將所述表情特征值轉(zhuǎn)換對對應(yīng)的表情符號并發(fā)送,使得發(fā)送端和接收端對表情符號的處理方式相對應(yīng),提升表情傳輸?shù)男?。具體地,例如表情特征值是表情語義,可以根據(jù)自定義的特征值映射表將表情語義轉(zhuǎn)換為表情符號,其中,特征值映射表中定義表情符號與表情特征值之間的唯一映射關(guān)系,在前述例子中已經(jīng)說明,在此不再贅述;又例如,表情特征值就是表情符號,該表情符號可以是自定義的字符串,或者符合國際標準的字符串例如萬國碼,就可以直接將表情特征值作為表情符號發(fā)送。因此,本實施例中表情符號處理方法,可以如圖3所示,還包括:
步驟S3100,根據(jù)所述本地表情映射表,獲取與待發(fā)送的本地表情對應(yīng)的所述表情特征值;
步驟S3200,將所述表情特征值轉(zhuǎn)換為對應(yīng)的表情符號并發(fā)送。
在本實施例中,還提供一種表情符號處理設(shè)備4000,如圖4所示,包括第一特征值獲取單元4100、第一表情顯示單元4200,可選地,還包括備選特征值獲取單元4300、第二特征值獲取單元4400、第三表情顯示單元4500、第二特征值獲取單元4600、表情發(fā)送單元4700、映射表設(shè)置單元4800,用于實施本實施例中提供的任意一項表情處理方法,在此不再贅述。
表情符號處理設(shè)備4000,包括:
第一特征值獲取單元4100,用于獲取與所接收的表情符號唯一對應(yīng)的表情特征值;
第一表情顯示單元4200,用于根據(jù)本地表情映射表,獲取與所述表情特征值對應(yīng)的本地表情并顯示,所述本地表情映射表用于定義所述表情特征值與所述本地表情之間的唯一映射關(guān)系。
優(yōu)選地,所述第一特征值獲取單元4100還用于,根據(jù)特征值映射表,獲取與所接收的表情符號唯一對應(yīng)的表情特征值,所述語義映射表用于定義所述表情符號與所述表情特征值之間的唯一映射關(guān)系。
可選地,所述表情符號處理設(shè)備4000還包括:
備選特征值獲取單元4300,用于當不存在與所述表情特征值對應(yīng)的本地表情時,獲取與所述表情特征值近似的備選表情特征值;以及
第二表情顯示單元4400,用于根據(jù)本地表情映射表,獲取與所述備選表情特征值對應(yīng)的本地表情進行顯示。
可選地,述表情符號處理設(shè)備4000還包括:
第三表情顯示單元4500,用于當不存在與所述表情特征值對應(yīng)的本地表情時,顯示預(yù)置的默認表情。
可選地,所述表情符號處理設(shè)備4000還包括:
第二特征值獲取單元4600,據(jù)所述本地表情映射表,獲取與待發(fā)送的本地表情對應(yīng)的所述表情特征值;
表情發(fā)送單元4700,用于將所述表情特征值轉(zhuǎn)換為對應(yīng)的表情符號并發(fā)送。
可選地,所述表情符號處理設(shè)備4000還包括:
映射表設(shè)置單元4800,用于響應(yīng)于外部設(shè)置請求,對所述本地表情映射表進行配置或更新。
在本發(fā)明實施例中,并不限制所述表情符號處理設(shè)備具體設(shè)備形式,所述表情符號處理設(shè)備可以包含在通信設(shè)備例如手機、臺式計算機、平板電腦中作為功能單元,也可以包含在通信軟件或?qū)崿F(xiàn)通信功能的應(yīng)用程序中作為一個功能模塊,還可以部分模塊包含在通信設(shè)備中,部分模塊包含在通信軟件或?qū)崿F(xiàn)通信功能的應(yīng)用程序中,在此不一一列舉,只要實現(xiàn)了本實施例中提供的符號處理設(shè)備4000的全部或部分功能的通信設(shè)備、通信軟件或?qū)崿F(xiàn)通信功能的應(yīng)用程序均在本實施例的披露范圍內(nèi)。
在本發(fā)明實施例中,還提供一種電子設(shè)備,包括存儲器和處理器,其中,所述存儲器用于存儲指令,所述指令用于控制所述處理器進行操作以執(zhí)行根據(jù)本發(fā)明實施例中的任意一項的表情符號處理方法。
<例子>
下述將結(jié)合圖5描述例子,以便進一步說明本發(fā)明實施例中的表情符號處理方法。
在本例中,用戶A與用戶B通過某個通信軟件的客戶端通信,用戶A向用戶B發(fā)送表情圖片1#,應(yīng)用本實施例中提供的表情符號的處理方法包括:
步驟S501,用戶A發(fā)送本地表情1#,可以根據(jù)本地表情映射表,得到本地表情1#唯一對應(yīng)的表情特征值,表情特征值可以是表情語義,也可以是表情符號,在本例中,表情特征值是表情符號,并且表情符號選用萬國碼,符合Unicode 7.0版本中規(guī)定的表情符號,獲取表情1#唯一對應(yīng)的表情特征值也就是表情符號為u+1f923,進入步驟S502;
步驟S502,將表情符號u+1f923傳輸給用戶B;
步驟S503,用戶B接收表情符號u+1f923,進入步驟S504;
步驟S504,用戶B所使用的客戶端,通過表情符號u+1f923獲取唯一對應(yīng)的表情特征值A(chǔ),在本例中,表情特征值可以就是表情符號本身u+1f923,進入步驟S505,;
步驟S505,判斷本地表情映射表中是否定義了表情特征值u+1f923對應(yīng)的本地表情,例如,用戶B所使用的通信設(shè)備或者客戶端因為型號、版本比較低,不支持萬國碼中u+1f923這一表情符號,未定義u+1f923對應(yīng)的本地表情,則轉(zhuǎn)入步驟S506,又例如,用戶B所使用的客戶端支持萬國碼中u+1f923這一表情符號,本地表情映射表遵從萬國碼標準或者自定義的標準,定義了與u+1f923對應(yīng)的本地表情,那么進入步驟S510;
步驟S506,獲取表情特征值u+1f923的備選特征值,在本例中,表情特征值為u+1f923這一表情符號,可以根據(jù)用戶萬國碼標準選擇表情語義相近的表情符號作為備選表情特征值,也可以根據(jù)u+1f923這一表情符號得到表情語義后根據(jù)近義詞匹配或者模糊匹配等方法獲取近似的表情語義后得到對應(yīng)的表情符號作為備選表情特征值,然后進入步驟S507;
步驟S507,判斷本地表情映射表中是否定義了備選表情特征值與本地表情的映射關(guān)系,如果未定義,即不存在與備選表情特征值對應(yīng)的本地表情,進入步驟S508,如果定義了,即存在與備選表情特征值對應(yīng)的本地表情,例如定義了與備選特征值對應(yīng)的本地表情是表情3#,進入步驟S509;
步驟S508,不存在與備選表情特征值對應(yīng)的本地表情,向用戶顯示預(yù)置的默認表情4#,結(jié)束對所接收表情符號的處理;
步驟S509,存在與備選表情特征值對應(yīng)的本地表情(表情3#),通過例如圖文混排技術(shù),向用戶顯示表情3#,結(jié)束對所接收表情符號的處理;
步驟S510,本地表情映射表中定義了表情符號u+1f923與本地表情的唯一映射關(guān)系,在某些場景下,用戶A與用戶B的本地表情映射表中,都定義了u+1f923與表情2#對應(yīng),例如用戶A與用戶B都遵從同一版本的萬國碼標準設(shè)置本地表情映射表,進入步驟S511;或者,當用戶A和用戶B的本地表情數(shù)據(jù)庫不同步或者根據(jù)用戶A和用戶B的表情設(shè)置偏好不一致,在用戶B的表情映射表中,并未定義u+1f923與表情1#對應(yīng),而是定義u+1f923與表情2#對應(yīng),,進入步驟S512;
步驟S511,表情符號u+1f923與表情1#對應(yīng),通過例如圖文混排技術(shù),向用戶顯示表情1#,結(jié)束對所接收表情符號的處理;
步驟S512,表情符號u+1f923與表情2#對應(yīng),通過例如圖文混排技術(shù),向用戶顯示表情2#,結(jié)束對所接收表情符號的處理。
在本例中,圖5中的表情1#、表情2#、表情3#、表情4#僅是示意性的,并不限制本例中所說明的表情符號處理方法的保護范圍。
以上已經(jīng)結(jié)合附圖以及例子描述了本發(fā)明的實施例,根據(jù)本實施例,通過獲取與所接收的表情符號唯一對應(yīng)的表情特征值,通過本地表情映射表獲取與表情特征值對應(yīng)的本地表情進行顯示,使得通信雙方可以無需維護相同的本地表情映射表,也無需同步表情符號與本地表情的映射關(guān)系或者同步本地表情數(shù)據(jù)庫,就能正常顯示本地表情,提升用戶體驗。同時,實現(xiàn)了表情符號與本地表情唯一對應(yīng),避免一個表情符號對應(yīng)多個本地表情導(dǎo)致用戶產(chǎn)生迷惑從而影響用戶體驗。此外,使得通信中涉及的各個設(shè)備相互獨立,有利于快速迭代開發(fā)。
本領(lǐng)域技術(shù)人員應(yīng)當明白,可以通過各種方式來實現(xiàn)符號處理設(shè)備4000。例如,可以通過指令配置處理器來實現(xiàn)符號處理設(shè)備4000。例如,可以將指令存儲在ROM中,并且當啟動設(shè)備時,將指令從ROM讀取到可編程器件中來實現(xiàn)符號處理設(shè)備4000。例如,可以將符號處理設(shè)備4000固化到專用器件(例如ASIC)中??梢詫⒎柼幚碓O(shè)備4000分成相互獨立的單元,或者可以將它們合并在一起實現(xiàn)。符號處理設(shè)備4000可以通過上述各種實現(xiàn)方式中的一種來實現(xiàn),或者可以通過上述各種實現(xiàn)方式中的兩種或更多種方式的組合來實現(xiàn)。
本領(lǐng)域技術(shù)人員公知的是,隨著諸如大規(guī)模集成電路技術(shù)的電子信息技術(shù)的發(fā)展和軟件硬件化的趨勢,要明確劃分計算機系統(tǒng)軟、硬件界限已經(jīng)顯得比較困難了。因為,任何操作可以軟件來實現(xiàn),也可以由硬件來實現(xiàn)。任何指令的執(zhí)行可以由硬件完成,同樣也可以由軟件來完成。對于某一機器功能采用硬件實現(xiàn)方案還是軟件實現(xiàn)方案,取決于價格、速度、可靠性、存儲容量、變更周期等非技術(shù)性因素。因此,對于電子信息技術(shù)領(lǐng)域的普通技術(shù)人員來說,更為直接和清楚地描述一個技術(shù)方案的方式是描述該方案中的各個操作。在知道所要執(zhí)行的操作的情況下,本領(lǐng)域技術(shù)人員可以基于對所述非技術(shù)性因素的考慮直接設(shè)計出期望的產(chǎn)品。
本發(fā)明可以是系統(tǒng)、方法和/或計算機程序產(chǎn)品。計算機程序產(chǎn)品可以包括計算機可讀存儲介質(zhì),其上載有用于使處理器實現(xiàn)本發(fā)明的各個方面的計算機可讀程序指令。
計算機可讀存儲介質(zhì)可以是可以保持和存儲由指令執(zhí)行設(shè)備使用的指令的有形設(shè)備。計算機可讀存儲介質(zhì)例如可以是――但不限于――電存儲設(shè)備、磁存儲設(shè)備、光存儲設(shè)備、電磁存儲設(shè)備、半導(dǎo)體存儲設(shè)備或者上述的任意合適的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPROM或閃存)、靜態(tài)隨機存取存儲器(SRAM)、便攜式壓縮盤只讀存儲器(CD-ROM)、數(shù)字多功能盤(DVD)、記憶棒、軟盤、機械編碼設(shè)備、例如其上存儲有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計算機可讀存儲介質(zhì)不被解釋為瞬時信號本身,諸如無線電波或者其他自由傳播的電磁波、通過波導(dǎo)或其他傳輸媒介傳播的電磁波(例如,通過光纖電纜的光脈沖)、或者通過電線傳輸?shù)碾娦盘枴?/p>
這里所描述的計算機可讀程序指令可以從計算機可讀存儲介質(zhì)下載到各個計算/處理設(shè)備,或者通過網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無線網(wǎng)下載到外部計算機或外部存儲設(shè)備。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火墻、交換機、網(wǎng)關(guān)計算機和/或邊緣服務(wù)器。每個計算/處理設(shè)備中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計算機可讀程序指令,并轉(zhuǎn)發(fā)該計算機可讀程序指令,以供存儲在各個計算/處理設(shè)備中的計算機可讀存儲介質(zhì)中。
用于執(zhí)行本發(fā)明操作的計算機程序指令可以是匯編指令、指令集架構(gòu)(ISA)指令、機器指令、機器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語言的任意組合編寫的源代碼或目標代碼,所述編程語言包括面向?qū)ο蟮木幊陶Z言—諸如Smalltalk、C++等,以及常規(guī)的過程式編程語言—諸如“C”語言或類似的編程語言。計算機可讀程序指令可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務(wù)器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡(luò)—包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。在一些實施例中,通過利用計算機可讀程序指令的狀態(tài)信息來個性化定制電子電路,例如可編程邏輯電路、現(xiàn)場可編程門陣列(FPGA)或可編程邏輯陣列(PLA),該電子電路可以執(zhí)行計算機可讀程序指令,從而實現(xiàn)本發(fā)明的各個方面。
這里參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或框圖描述了本發(fā)明的各個方面。應(yīng)當理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機可讀程序指令實現(xiàn)。
這些計算機可讀程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機器,使得這些指令在通過計算機或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的裝置。也可以把這些計算機可讀程序指令存儲在計算機可讀存儲介質(zhì)中,這些指令使得計算機、可編程數(shù)據(jù)處理裝置和/或其他設(shè)備以特定方式工作,從而,存儲有指令的計算機可讀介質(zhì)則包括一個制造品,其包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的各個方面的指令。
也可以把計算機可讀程序指令加載到計算機、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計算機、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計算機實現(xiàn)的過程,從而使得在計算機、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上執(zhí)行的指令實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作。
附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或指令的一部分,所述模塊、程序段或指令的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。對于本領(lǐng)域技術(shù)人員來說公知的是,通過硬件方式實現(xiàn)、通過軟件方式實現(xiàn)以及通過軟件和硬件結(jié)合的方式實現(xiàn)都是等價的。
以上已經(jīng)描述了本發(fā)明的各實施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實施例。在不偏離所說明的各實施例的范圍和精神的情況下,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨在最好地解釋各實施例的原理、實際應(yīng)用或?qū)κ袌鲋械募夹g(shù)改進,或者使本技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解本文披露的各實施例。本發(fā)明的范圍由所附權(quán)利要求來限定。