專利名稱:一種面向兒童的網絡集成創作系統的制作方法
技術領域:
本實用新型屬于人機交互領域,具體涉及到一種面向兒童的網絡集成創作系統。
背景技術:
人機交互是研究人、計算機以及它們之間相互影響的技術。人機交互是一門綜合 計算機科學、心理學、社會學、圖形設計、工業設計等的交叉學科。隨著計算技術和網絡技術 的發展和普及,使得交互產品已成為人們工作和生活中不可或缺的人造物。到目前為止,各 項相關的人機交互技術,如語音交互技術、基于手勢的交互技術、基于計算機視覺的表情識 別的技術、自然語言理解技術、以及手寫識別技術都在不斷的發展起來。自然交互與人性化 界面是人機交互的發展趨勢。 隨著信息技術的發展和普及,越來越多的兒童開始使用計算機,他們利用計算機 玩游戲和學習知識。計算機正在逐漸改變兒童的生活、學習方式。互聯網的普及和上網人 數與日倶增,使網絡游戲產業發展迅速。但是許多游戲系統都存在內容或形式上不適合兒 童的問題。兒童正處于成長期,其思想和世界觀處于形成期,不良的內容和操作方式會影響 兒童身心健康發展。近年來越來越多問題兒童引起了家庭和社會的關注。為此,開發適合 兒童交互的網絡益智系統,來正確引導兒童使用計算機和網絡學習知識、增長本領是一項 非常重要的任務。另外,目前適合大多數兒童的系統僅提供智力開發和訓練的功能,兒童交 互性太少,缺乏提供兒童發揮想象力和創作力的系統。
實用新型內容針對上述問題,本實用新型提供一種面向兒童的網絡集成創作系統提供一個適 合兒童交互方式、自主創作的系統,兒童可以自由繪畫,制作動畫,將繪畫和動畫的作品作 為故事的素材來創作自己的故事,并可共享豐富的故事素材及故事作品。
為實現上述目的,如圖1所示,面向兒童的網絡集成創作系統的邏輯結構包括一 人機交互模塊、一用于繪畫、生成動畫、講述故事的系統處理模塊和一存儲模塊。這些模塊 的連接關系說明如下人機交互模塊連接系統處理模塊,所述系統處理模塊接收并處理人 機交互模塊發來的交互消息;所述存儲模塊接收并存儲所述系統處理模塊的處理結果; 所述人機交互模塊主要通過筆式交互方式接收外界信息輸入。 本實用新型在人機交互模塊中采用了適合兒童的筆式交互為主的自然用戶界面, 同傳統的WMP (Windows, Icons, Menus, Pointer)界面相比,具有易于控制、用戶手眼協調 等優勢,可以減輕用戶的認知負擔,更適合兒童用戶使用。該人機交互模塊將筆消息發送到 系統處理模塊,系統處理模塊處理用戶的各種筆消息,把處理結果存儲到存儲模塊,并反饋 給用戶。系統的存儲模塊包括資源庫和用戶信息庫;資源庫中存儲了系統處理模塊生成的 繪畫、動畫、故事作品以及系統提供的原始素材;用戶信息庫存儲用戶的積分信息和作品信 息。 本實用新型具有如下的優點和技術效果 1.本實用新型的網絡集成創作系統,允許兒童在網絡環境下發揮想象力和創造 力,圍繞講故事活動進行創作,并提供了繪畫、動畫、故事三者的集成創作空間,兒童可以憑借自己的想象創作需要的繪畫、動畫作品,并將這些作品集成到故事創作中。 2.本實用新型的系統是依據兒童認知理論進行設計的,并提供了適合兒童的用戶
界面和交互技術,系統功能簡單易學、界面操作簡便易用。兒童可以很快掌握系統的使用方
法,并很快學會用該系統創作故事、繪畫和動畫作品。 3.應用本實用新型的系統,可激發兒童的創作潛能,并提高其語言表達和邏輯推 理能力,有助于培養創造性人才。
圖1本實用新型的系統架構圖。 圖2本實用新型的系統流程圖。
具體實施方式
為了使本技術領域的技術人員更好的理解,
以下結合附圖和實施方式對本實用新 型作進一步的詳細說明 首先,構建數據存儲模塊,如圖2中所示,存儲模塊中存儲故事圖片資源表、故事 作品表、繪畫作品表、動畫作品表和用戶信息和用戶積分表。將用戶信息、用戶作品、圖片資 源之間的關系存入關系數據庫中,關系數據庫支持標準結構化查詢語言(SQL)語句,實時 查詢和寫入等操作。 系統中人機交互模塊中主要采用筆式用戶界面,比傳統的WMP界面更便于兒童 使用。兒童可以在創作時,用筆繪畫、拖動景物和角色及布局故事場景,操作簡單方便。
下面詳細說明系統處理模塊中的各模塊功能 (1)繪畫模塊 本實用新型考慮兒童用戶交互特點,繪畫模塊中將功能選擇區、畫布區和作品縮 略圖顯示區集中在一個交互界面上。 1)畫布區域嵌入SVG文檔,作為兒童繪制的畫布,其內部存儲采用 SVG(ScalableVector Gr即hics)矢量圖形規范,選用此規范會使圖形占用的空間小,很大 程度上加快了頁面下載速度,提高了用戶體驗效果。 2)用頁面腳本Javascript通過D0M(Document Object Model)獲取代表整個HTML 文檔的Document對象,通過Document對象獲取HTML中嵌入的SVG元素,該SVG元素通過 getSVGDocument ()獲取SVG文檔的D0M,然后再通過getElementByld和ID來獲取SVG文 檔中element的指針,這里可以獲取path element的修改權。 3)該模塊中設置了筆狀態監聽機制筆狀態包括Move、 Down和Up, Down狀態時,
設置當前落筆坐標的基本屬性及繪制的顏色和寬度;Move狀態時,記錄筆移動的軌跡,每
50毫秒采樣一次筆跡的位置postiton(x, y),寫入SVG文檔的path中;Up狀態時,繪制完
畢,暫存用戶繪制筆跡信息,保存用戶作品,將相應信息寫入關系數據庫中。 4)SVG完全用普通文本描述,所有描述圖形的語句都可以直接觀察到,數據格式由
元素和節點組成,獲得path element的父親節點。通過DOM可以對其二次修改與更新,實
現用戶對繪畫作品的取色、撤銷、恢復、刪除等修改功能,因其存儲格式采用矢量圖形規范,
所以圖形放大后不會失真。 5)繪制完成后,系統采用異步刷新思想Ajax實現,實現了瀏覽器和服務器的異步 通信。在用戶無需刷新頁面的情況下,系統將完成兩個任務一方面把繪制信息提交給服務
4器保存,另一方面同時把保存的作品顯示在縮略圖區域及時呈現給用戶。
(2)動畫模塊 1)動畫由許多幀靜止的畫面,以一定的速度(如每秒16張)連續播放時,產生動 態效果。為了得到動態畫面,本實用新型中將兒童選擇的圖片序列制作成一個動態的GIF 格式圖片。首先獲取用戶選定的圖片序列,存儲圖片物理存儲位置,便于以后合成圖片。 2)獲取圖片序列后,動畫中幀提取和幀合成主要是通過基于圖像處理MagickNet 組件,分析提取出關鍵幀,存入關鍵幀序列中,將靜態圖片以幀的形式合成為一個循環序 列,從而生成動畫。 3)生成的動畫可以調節它的尺寸大小和動畫速度,動畫的這種屬性調節功能主要 是通過預先在幀合成序列之前,設置關鍵幀屬性,對圖片組大小和幀與幀之間速度進行調 整,在生成關鍵幀序列時,已經完成對關鍵幀的屬性調整,之后重新執行動畫生產功能來實 現合成動畫大小和速度的改變。
(3)講故事模塊 布局信息封裝為了便于保存和記錄布局信息,采用了面向對象封裝思想,對角色
和景物進行封裝,它們都有唯一的id標識,并記錄下各自的圖片路徑、位置和大小,方便布
局時進行放縮與刪除。比如,角色的封裝定義如下 function Actor (id, url, xPos, yPos, width, height) { 1)動作序列保存模塊為了重現故事創作中用戶操作的內容,在錄制故事時,記 錄每個角色對象的動作序列。每個動作都封裝了對象的id、動作起始時間和采樣點數組。 在頁面中設置定時器,以得到動作的起始時間和采樣時間。筆按下表示動作的開始,筆抬起 表示動作的結束,每隔50毫秒對筆拖動過程中的運動軌跡進行采樣,把采樣點的X與Y坐 標記錄下來,放到采樣點數組中。同時為了營造運動效果,每個對象的圖片都有動態和靜態 兩種,在筆按下時把對象的圖片替換為相應的動態圖片,在筆抬起時把對象的圖片換成原 來的靜態圖片,這樣,在筆的拖動過程中,對象就會呈現動態的效果了 。
2)語音信息采樣模塊為了采集用戶從麥克風傳來的語音信息,本實用新型利
用C#語言和Microsoft DirectSound SDK開發包開發實現了 ActiveX錄音組件,建立
SoundRecord類,它包含RecStart、 RecPause、 RecRestart、 RecStop四個接口 ,主要用來在
講故事時及時采集用戶從麥克風傳來的語音信息,并進行相應的采樣和保存處理。 3)故事信息處理模塊對故事的信息進行處理是為了方便故事保存。在故事講述
完成后,前臺的故事信息傳遞給后臺,后臺將其保存到數據庫中。在故事欣賞開始時,后臺
的故事數據傳遞給前臺,前臺對數據進行分析,得到故事的布局和動作序列的信息。布局的
this, id = id ; this, url = url j this. xPos = xPos ; this.yPos = yPos ; this.width = width ; this.height = height j信息可以采用保存布局頁面的故事區域中的html內容來簡單實現,但是html的內容比較
多,使得前后臺要傳遞的數據量比較大,從而影響數據上傳下載的速度。本實用新型采用 自己定義保存格式的形式,順次記錄布局對象的id、圖片相對路徑、對象的位置和對象的長
寬,每個數據以","分隔開,順次記錄布局的所有對象,每條對象的記錄以";"分隔開。在 各個對象中,故事動作也采用類似的格式,順次記錄各個動作的對象、起始時間和運動采樣 點。這樣可以大大減少冗余的數據記錄,同時也方便對記錄進行分析。在聽故事時,對讀取 的數據中布局的記錄以";"來分開每個對象,再以","為分隔符順次取得對象的id、圖片 相對路徑、對象的位置和對象的長寬就可以還原布局的信息了,對數據中的動作記錄以";" 來分開每個動作,再以","為分隔符順次取得動作的對象、起始時間和運動采樣點,便得到 了動作序列的信息。 4)故事保存與故事讀取模塊故事由布局、動作、故事錄音、故事名與故事描述組 成。故事錄音在用戶選擇有錄音的情況下在用戶的機器上生成,在故事保存時需要用戶選 擇上傳。故事名與故事描述需要用戶輸入。在數據庫中保存故事資源時,會根據用戶名來 給用戶生成此故事各個資源的唯一標識,以保證各用戶的資源不會相互干擾。在故事讀取 時,由用戶名與故事名為索引,查找并讀取出數據庫中的故事信息。 5)播放同步處理模塊在聽故事時,將故事錄音的鏈接傳給網頁中嵌入的播放 器,當故事播放開始時,一邊播放故事錄音,一邊啟動50毫秒的計時器。當計時器的時間達 到了某個運動的起始時間時,啟動該對象,把對象的圖片替換為動態圖片,同時每隔50毫 秒順次取出對象的運動采樣點,將對象置于采樣點所在的位置。當采樣點數組讀取完后,對 象就停止運動,同時將對象的圖片換回靜態圖片。為了防止播放錄音中間有緩沖,造成動作 在繼續而聲音暫停的現象,在故事播放前檢測是否整個錄音都被下載下來,直到錄音全部 下載完,才開始播放故事。如此,故事錄音在播放的過程中不會停頓,保持故事聲音與畫面 的播放同步。 在應用該系統進行創作時講故事模塊中有五個img的html類型控件來顯示待選 的圖像。故事講述區域是一個大的img控件,采用空的背景貼圖。在網頁加載時讀取數據庫 中記錄的背景、角色和景物的圖片路徑,并傳遞給前臺頁面,用戶在前臺選擇背景、景物或 角色,前臺頁面通過用戶選擇的種類從相應記錄中每次取五個圖片路徑寫入img控件中, 供用戶選擇。當用戶選擇了背景時,便把故事講述區域的圖片路徑設為此背景,完成了背景 的選擇。用戶若在故事中增加了景物和角色,便可以動態生成相應的img控件加入到故事 講述區域,對景物和角色的放縮只需要對img控件的大小進行放縮,刪除時刪除對應的img 控件。完成故事布局后,將布局產生的html信息記錄下來,并通過session傳遞給故事講 述頁面。 講故事模塊中,每一個角色對應兩張圖片,一張靜態的,另一張是動態的。故事講 述時采用了一個新的頁面,首先前臺獲得session中布局時的html信息記錄,并對此記錄 進行分析,把角色、景物的位置、大小與圖片路徑再分別抽取出來。用戶錄制時,計時的時間 間隔調整為50毫秒。若用戶拖動角色,則記錄動作開始的時間,同時將角色的圖片替換成 另一張動態的圖片。在拖動的過程中,記錄筆的軌跡,則此軌跡便是角色運動的軌跡了。當 用戶停止拖動時,則角色完成了動作,把這一動作連同角色對象、開始時間、運動路徑記錄 下來,放入動作序列中。同時將角色的圖片替換回靜態的圖片。當用戶結束了講故成了所有的動作序列,并把它記錄下來。用戶可以輸入故事名和故事描述等。若用戶想保 存講述的故事,需要將故事名、故事描述、故事布局與故事的動作序列一起發送給后臺,記 錄到數據庫中。如果用戶采用有錄音的講述,則在講述開始時調用錄音插件的RecStart方 法開始錄音,結束時調用RecStop結束錄音,同時在用戶本機上生成錄音的文件,用戶在保 存故事的時候需要把錄音文件上傳,錄音文件名會記錄在故事的數據庫中,錄音文件上傳 給服務器。 (3)故事欣賞故事欣賞所采用的方法基本一致。在故事欣賞頁面中,右邊采用 DataLi st控件來顯示故事名。故事名是頁面加載時根據故事類型從數據庫中讀取出來的。 點擊故事名,則根據故事類型與故事名查詢數據庫中故事的記錄,得到此故事的布局信息 與動作序列,傳遞給前臺頁面。前臺頁面中抽取關于布局的背景、角色與景物的大小、位置 等信息,再把背景區域的圖片路徑設為背景圖片,同時動態加入位置與大小相應img控件 代表角色與景物,就完成了布局。布局完成后,對于有錄音的故事,直到把錄音都下載到本 機才開始播放故事,以保證故事的顯示與錄音的播放同步。分析記錄的故事動作序列,抽取 出每個動作的對象、開始時間與運動軌跡。故事開始播放時,啟動50ms的計時器,當達到某 個運動的開始時間時,便將該運動的對象圖片替換為動態圖片,同時每過一個計時點就取 出一個運動軌跡點,并把對象的位置放在此點上,這樣就重復了在故事講述時的動作,當故 事的運動序列全部展現完,故事也就完成了播放了 。 (4)作品展示和積分模塊 作品展示由講故事、動畫、繪圖三個玩件的作品展示網頁組成。它們采用類似的 實現方法。以繪圖展示區為例,展示圖片的區域采用DataList控件來協助,控件中的數據 區域是一個圖片控件,從繪圖作品的數據庫中根據選擇的類型來查詢圖片名,把圖片名結 合路徑給圖片控件,即可以顯示繪圖的作品了。在DataList中配置好每頁顯示的個數和上 下翻頁的情況,就可以實現作品展示。 積分在數據庫中有一個用戶積分表,記錄用戶登錄的情況,對每個用戶都設有積 分。根據積分規則,計算用戶積分,并分存入用戶積分關系數據庫,顯示給用戶。 本實施例給出積分規則積分(T) = 1* {tl*登陸積分(L) +t2*玩件積分(G) +t3* 共享積分(S)+t4*展覽積分(E)+t5*引用積分(C)+t6*專家評分(P)}。其中tl、 t2、 t3、 t4、 t5、 t6是分配的權值,可以根據具體情況擬定。用戶積分由登錄時間次數加權決定,玩 件積分由用戶保存作品數量加權決定,共享積分和展覽積分由用戶作品在展示區的數量加 權決定,引用積分是用戶的繪畫、動畫作品被用作講故事素材的數量加權決定。對每個用戶 計算積分后,在積分數據表中查找積分數據,將它綁定在DataGrid控件中,便可用戶積分
情況了。
權利要求一種面向兒童的網絡集成創作系統,包括一人機交互模塊、一用于繪畫、生成動畫、講述故事的系統處理模塊和一存儲模塊;其特征在于,所述人機交互模塊連接系統處理模塊;所述系統處理模塊接收并處理人機交互模塊發來的交互消息;所述存儲模塊接收并存儲所述系統處理模塊的處理結果。
2. 如權利要求1所述的一種面向兒童的網絡集成創作系統,其特征在于所述人機交 互模塊主要通過筆式交互方式接收外界信息輸入。
專利摘要本實用新型屬于人機交互領域,具體涉及到一種面向兒童的網絡集成創作系統,系統包括一人機交互模塊、系統處理模塊和存儲模塊,在人機交互模塊中采用適合兒童的筆式交互為主的自然用戶界面,比傳統的WIMP界面更易于控制,減輕了兒童的認知負擔。系統同時提供了繪畫、動畫、故事三者的集成創作空間,兒童可以創作需要的繪畫、動畫作品,并將作品集成到故事創作中。
文檔編號G09B5/02GK201518164SQ20092010773
公開日2010年6月30日 申請日期2009年4月28日 優先權日2009年4月28日
發明者彭芳, 戴國忠, 李霞, 王丹力, 王宏安 申請人:中國科學院軟件研究所