新四季網

電子毛筆書寫筆跡生成方法

2023-10-17 22:32:04

專利名稱:電子毛筆書寫筆跡生成方法
技術領域:
本發明涉及計算機圖形處理技術領域,特別涉及一種電子毛筆書寫筆跡生成方法。
背景技術:
中國毛筆書法是一門古老而深邃的藝術,是中華民族藝術寶庫中一顆璀燦奪目的明珠,它伴隨著中華文明的發展而發展。在計算機高速發展的今天,人們希望能使書法與時俱進,與現代科技相融合,如何在計算機上逼真的模擬出毛筆的書寫效果是很多專家學者研究的方向。在眾多的相關研究工作中,模擬毛筆書寫筆跡主要的方法是採用硬體來獲取輸入數據,通過軟體算法來對這些數據進行修正處理,以實現毛筆書寫的效果,達到模擬真實毛筆動作的目的,如採用光導纖維來模擬倒立的毛筆筆頭,通過在毛筆上添加傳感器來捕捉捕獲位置、壓力等數據,並將這些數據轉換成毛筆的各個參數,然後通過一系列的軟體修正算法,來修正筆跡形狀,模擬筆跡的書寫效果。這些實現方法中,需要專用於毛筆筆跡的書寫的硬體設備,設備成本高,同時,運筆過程中的「提按使轉」無法得以體現,毛筆書寫運行過程中若沒有提按的參與,書法線條將是直來直去,僵硬呆板,線條質量就很差,甚至達不到書法藝術最起碼的要求。現有技術中,運筆的軌跡是通過觸摸筆在設備屏幕上划過而留下的軌跡,當觸摸筆在設備屏幕上移動時,設備會以觸摸事件的方式通知相應的處理軟體當前觸摸筆的位置、壓力、時間、傾斜率等信息,由於設備的CPU處理能力和事件通知的機制,導致設備通知觸摸事件的間隔並不均衡,當觸摸筆的運行速度很慢時,觸摸事件會很頻繁,這樣會導致筆跡在同一個區域重疊繪製,浪費CPU資源,而且,由於用戶書寫過程有抖動,如果每個像素的移動都進行繪製,則形成的筆跡有很多褶皺,不平滑;而當觸摸筆運動很快時,觸摸事件則會很少,這樣會導致筆跡不連續。

發明內容
(一 )要解決的技術問題本發明要解決的技術問題是如何使手寫輸入的毛筆筆跡平滑、連續、無褶皺,且不浪費CPU資源。( 二 )技術方案為解決上述技術問題,本發明提供了一種電子毛筆書寫筆跡生成方法,包括以下步驟Sl 根據觸摸設備傳遞的觸摸軌跡上觸摸點坐標計算相鄰兩觸摸點的距離;S2 若所述距離小於預定閾值,則按所述預定閾值為間距獲取觸摸點;若所述距離大於所述預定閾值,則在相鄰兩個觸摸點之間插入插值點;S3 根據所述觸摸軌跡上的點繪製預先設置的筆形以生成筆跡。其中,所述步驟S2中插入插值點的過程如下
S211 計算所述觸摸軌跡上的所有觸摸點間的直線軌跡;S212 根據以下公式計算插值點
Γ π . dis tan ce ,insertLouni =-xnumber_per snape
width— —其中,insertCount為兩點間插值點個數,distance為沿直線軌跡方向上距離已 插值部分最近的一個觸摸點到其前一點的距離,「肚}!為已插值部分繪製的最後一個筆形 的寬度,number_per_shape為每個筆形需要繪製的點的個數;S213 判斷insertCount是否小於1,若小於1,則增加已插值的直線的長度,跳轉 到步驟S212,否則執行步驟S214 ;S214 lì^M-MìèM^MìèP^: stepLength = distance/insertCount ;S215 按所述步長在所述直線軌跡上長度為上述distance的部分上插入一個點;S216 重複執行步驟S212 3215,直到最後一個觸摸點。其中,所述步驟S2中插入插值點的過程如下S221 以觸摸點為控制點計算貝塞爾曲線軌跡;S222 根據以下公式計算插值點
Γ π . dis tan ce ,insertCount =-xnumber_per snape
width— —其中,insertCount為兩點間插值點個數,distance為沿貝塞爾曲線軌跡方向上 距離已插值部分最近的一個觸摸點到其前一點的距離,《1肚1!為已插值部分繪製的最後一 個筆形的寬度,number_per_shape為每個筆形需要繪製的點的個數;S223 判斷insertOnmt是否小於1,若小於1,則增加已插值的貝塞爾曲線的長 度,跳轉到步驟3222,否則執行步驟S2M ;S224 計算插值點的插值步長 stepLength = distance/insertCount ;S225 按所述步長在所述貝塞爾曲線軌跡上長度為上述肚計皿⑶的部分上插入 ー個點;S226 重複執行步驟S222 3225,直到最後一個觸摸點。其中,所述步驟5221中計算貝塞爾曲線軌跡的方式為以當前點的前一點為控制 點,從當前點的前二點向當前點與當前點的前一點的中點計算貝塞爾曲線軌跡。其中,當已插值的貝塞爾曲線到達最後一個觸摸點與其前一觸摸點的中點時,在 所述最後一個觸摸點到其與其前一觸摸點的中點的直線軌跡上按所述步驟3222 步驟 S226進行直線插值。其中,所述number_per_shape的值為5 10的整數。其中,所述步驟53中,繪製預先設置的筆形的方式為根據預設的最大筆寬1和當前觸摸設備感應的壓力確定所述筆形沿筆桿方向的 大圓半徑d2 = WXpressure根據如下公式確定筆尖方向的小圓半徑dl = d2XkXpressure在兩個圓的同一側分別繪製一條與兩圓都相切的直線,以形成封閉的形狀,在兩 圓的直徑和兩切線形成梯形,所述梯形的高度為
h = HXpressure其中,H表示預設的最大筆行長度,k為形狀比例參數。其中,所述k取值為0 1的浮點數,所述pressure量化到0 1浮點數。其中,所述預定閾值為0 5像素。(三)有益效果通過本發明的方法當觸摸筆的運行速度很慢時,減少觸摸點的個數,避免了筆跡在同一個區域重疊繪製導致的褶皺,同時節省了 CPU資源;而當觸摸筆運動很快時,採用插值法進行插值,使得手寫輸入的毛筆筆跡平滑、連續。


圖1是本發明實施例的一種電子毛筆書寫筆跡生成方法流程圖;圖2是圖1的方法中採用直線插值方法的示意圖;圖3是圖1的方法中採用貝塞爾曲線插值方法的示意圖;圖4是圖1的方法中繪製筆跡的筆形示意圖。
具體實施例方式下面結合附圖和實施例,對本發明的具體實施方式
作進一步詳細描述。以下實施例用於說明本發明,但不用來限制本發明的範圍。如圖1所示,為本發明實施例的一種電子毛筆書寫筆跡生成方法流程圖,包括步驟S101,根據觸摸設備傳遞的觸摸軌跡上觸摸點坐標計算相鄰兩觸摸點的距離。觸摸筆在觸摸設備的觸控螢幕上書寫時觸摸設備會記錄觸摸筆的位置坐標、壓力等信息。 由於觸摸筆是運動的,觸摸筆的位置坐標形成一個連續的運動軌跡,觸摸設備會根據觸摸筆的運動速度記錄若干觸摸點。得到這些觸摸點後根據其坐標計算相鄰觸摸點之間的距
1 O步驟S102 判斷上述距離是否小於預定閾值,若小於該閾值,則執行步驟S103,否則執行步驟S104。步驟S103,由於設備的CPU處理能力和事件通知的機制,導致設備通知觸摸事件的間隔並不均衡,當觸摸筆的運行速度很慢時,觸摸事件會很頻繁,導致上述距離會小於預定閾值,這樣會導致筆跡在同一個區域重疊繪製。因此對於這種情況,按該閾值為間距的獲取觸摸點,這樣避免了在同一個區域重疊繪製而且可以保證最終生成的筆跡連續、平滑,同時節省了 CPU資源。步驟S104,當觸摸筆的運行速度很快時,觸摸設備CPU捕捉到的觸摸事件會很少, 因此觸摸點也很少,若按這些觸摸點去繪製筆形,那麼生成的筆跡將不連續,為了避免這種情況的發生,本發明在相鄰兩個觸摸點之間插入若干插值點。插值的方法有以下兩種1、採用直線插值法,插值示意圖如圖2所示,插值步驟如下步驟1,計算所述觸摸軌跡上的所有觸摸點間的直線軌跡,即將觸摸點之間用直線連接,計算該直線的軌跡。步驟2,根據以下公式計算插值點Γ π . dis tan ce ,insertLount =-χ number _ per _ shape
width— —其中,insertCount為兩點間插值點個數,distance為沿值線軌跡方向上距離已插值部分最近的一個觸摸點到其前一點的距離,width為已插值部分繪製的最後一個筆形的寬度,number_per_Shape為每個筆形需要繪製的點的個數。步驟3,判斷insertCount是否小於1,若小於1,則增加已插值的直線的長度,跳轉到步驟2,否則執行步驟4。步驟4,計算插值點的插值步長st印Length = distance/insertCount。步驟5,按所述步長在所述直線軌跡上長度為上述distance的部分上插入一個
點ο步驟6,重複執行步驟2 步驟5,直到最後一個觸摸點。圖2中,方形為觸摸點,線為觸摸點連接線,圓形為插值點,從圖中可以看出,通過插值,可以解決觸摸點距離過長的問題,使得筆形出現次數均勻,軌跡能夠連續。但是,圖中也顯示了一個問題,由於插值是在兩個觸摸點的連接直線上,從而導致,兩條直線之間有一個明顯的轉折,一個筆劃有多個折線連接而成,筆跡平滑度不高,筆跡邊緣可能有細小的鋸齒,不像手寫形成的筆跡。2、採用貝塞爾曲線插值法,可以克服直線插值法中兩條直線之間有一個明顯的轉折的問題,插值示意圖如圖3所示,插值步驟如下步驟1,以觸摸點為控制點計算貝塞爾曲線軌跡,本實施例中,計算貝塞爾曲線軌跡的方式為以當前點的前一點為控制點,從當前點的前二點向當前點與當前點的前一點的中點計算貝塞爾曲線軌跡。步驟2,根據以下公式計算插值點
Γ π . dis tan ce ,insertLount =-χ number _per _ shape
width— —其中,insertCount為兩點間插值點個數,distance為沿貝塞爾曲線軌跡方向上距離已插值部分最近的一個觸摸點到其前一點的距離,width為已插值部分繪製的最後一個筆形的寬度,number_per_shape為每個筆形需要繪製的點的個數。如圖3所示,P0、P1、P2、P3為連續的幾個觸摸點,P3為當前點,當P3觸摸事件發生時,筆跡已經處理到IPLO位置(即已插值到IPLO點),此時,計算IPLO到P2間的插值點, 根據最後顯示筆形寬度width和預設的每個筆形需要繪製的點的個數nUmber_per_Shape, 採用上述公式計算IPLO和P2兩點間插值點個數,其中,distance為從IPLO到P2的曲線長度。步驟3,判斷insertCount是否小於1,若小於1,則增加已插值的貝塞爾曲線的長度,跳轉到步驟2,否則執行步驟4。步驟4,計算插值點的插值步長st印Length = distance/insertCount。步驟5,按所述步長在所述貝塞爾曲線軌跡上長度為上述distance的部分上插入
——個佔
I ;^ O步驟6,重複執行步驟2 步驟5,直到最後一個觸摸點。由於上述計算貝塞爾曲線軌跡的特殊性(貝塞爾曲線繪製總是從當前點的前二點繪製到當前的前一點與當前點的中點,因此,該中點與當前點之間總是不能被處理),在重複過程中,當已插值的貝塞爾曲線到達最後一個觸摸點與其前一觸摸點的中點時,在最後一個觸摸點到其與其前一觸摸點的中點的直線軌跡上按所述直線插值的步驟2 步驟6進行。上述兩種插值方式中,width有下限20像素和上限預設值80像素,否則當width 太小時會導致插入點太多而影響性能,width太大則插入點過少,軌跡不平滑。改變參數 number_per_Shape可以改變筆形的密度,此值設置大則密度大,顯示筆跡平滑緊密,但會導致運行速度變慢,此值設置小,運行速度提高,但可能導致筆跡不平整,甚至不連續,根據實驗,優選設置為5到10比較合適。步驟S105,根據觸摸軌跡上的點繪製預先設置的筆形以生成筆跡。筆形模型如圖 4所示,具體繪製方式如下根據預設的最大筆寬W(取值為10 100像素)和當前觸摸設備感應的壓力確定筆形沿筆桿方向的大圓半徑d2 = WXpressure當在計算插值點時,若2Xd2在20 80像素的範圍內,width的值即為2Xd2, 2Xd2 小於 20 時,width 取 20,2Xd2 大於 80 時,width 取 80。根據如下公式確定筆尖方向的小圓半徑dl = d2 XkX pressure在兩個圓的同一側分別繪製一條與兩圓都相切的直線,以形成封閉的形狀,在兩圓的直徑和兩切線形成梯形,梯形的高度為h = HXpressure其中,H(取值為10 100像素)表示預設的最大筆形長度,k為形狀比例參數,取值為0 1的浮點數,pressure量化到0 1浮點數。採用本發明的電子毛筆書寫筆跡生成方法使得手寫輸入的毛筆筆跡平滑、連續, 同時節省手持設備的系統資源。以上實施方式僅用於說明本發明,而並非對本發明的限制,有關技術領域的普通技術人員,在不脫離本發明的精神和範圍的情況下,還可以做出各種變化和變型,因此所有等同的技術方案也屬於本發明的範疇,本發明的專利保護範圍應由權利要求限定。
權利要求
1.一種電子毛筆書寫筆跡生成方法,其特徵在於,包括以下步驟51根據觸摸設備傳遞的觸摸軌跡上觸摸點坐標計算相鄰兩觸摸點的距離;52若所述距離小於預定閾值,則按所述預定閾值為間距獲取觸摸點;若所述距離大於所述預定閾值,則在相鄰兩個觸摸點之間插入插值點;53根據所述觸摸軌跡上的點繪製預先設置的筆形以生成筆跡。
2.如權利要求1所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述步驟S2中插入插值點的過程如下5211計算所述觸摸軌跡上的所有觸摸點間的直線軌跡;5212根據以下公式計算插值點
3.如權利要求1所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述步驟S2中插入插值點的過程如下5221以觸摸點為控制點計算貝塞爾曲線軌跡;5222根據以下公式計算插值點
4.如權利要求3所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述步驟S221中計算貝塞爾曲線軌跡的方式為以當前點的前一點為控制點,從當前點的前二點向當前點與當前點的前一點的中點計算貝塞爾曲線軌跡。
5.如權利要求4所述的電子毛筆書寫筆跡生成方法,其特徵在於,當已插值的貝塞爾曲線到達最後一個觸摸點與其前一觸摸點的中點時,在所述最後一個觸摸點到其與其前一觸摸點的中點的直線軌跡上按所述步驟S222 步驟進行直線插值。
6.如權利要求2 5中任一項所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述 number_per_shape的值為5 10的整數。
7.如權利要求1 5中任一項所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述步驟S3中,繪製預先設置的筆形的方式為根據預設的最大筆寬W和當前觸摸設備感應的壓力確定所述筆形沿筆桿方向的大圓半徑d2 = WXpressure根據如下公式確定筆尖方向的小圓半徑dl = d2XkXpressure在兩個圓的同一側分別繪製一條與兩圓都相切的直線,以形成封閉的形狀,在兩圓的直徑和兩切線形成梯形,所述梯形的高度為h = HXpressure其中,H表示預設的最大筆行長度,k為形狀比例參數。
8.如權利要求7所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述k取值為0 1 的浮點數,所述pressure量化到0 1浮點數。
9.如權利要求1 5中任一項所述的電子毛筆書寫筆跡生成方法,其特徵在於,所述預定閾值為0 5像素。
全文摘要
本發明公開了一種電子毛筆書寫筆跡生成方法,涉及計算機圖形處理技術領域,該方法包括以下步驟S1根據觸摸設備傳遞的觸摸軌跡上觸摸點坐標計算相鄰兩觸摸點的距離;S2若所述距離小於預定閾值,則按所述預定閾值為間距獲取觸摸點;若所述距離大於所述預定閾值,則在相鄰兩個觸摸點之間插入插值點;S3根據所述觸摸軌跡上的點繪製預先設置的筆形以生成筆跡。本發明使得手寫輸入的毛筆筆跡平滑、連續。
文檔編號G06F3/041GK102521858SQ20111038527
公開日2012年6月27日 申請日期2011年11月28日 優先權日2011年11月28日
發明者劉炎, 譚韓成, 趙志強 申請人:北京盛世宣合信息科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀