久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

實驗二 語音交互設計-TTS(匯編)

時間:2019-05-13 00:35:07下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《實驗二 語音交互設計-TTS》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《實驗二 語音交互設計-TTS》。

第一篇:實驗二 語音交互設計-TTS

文本語音(Text-to-Speech,以下簡稱TTS),它的作用就是把通過TTS引擎把文本轉化為語音輸出。簡單介紹如何運用Microsoft Speech SDK 建立自己的文本語音轉換應用程序。Microsoft Speech SDK是微軟提供的軟件開發包,提供的Speech API(SAPI)主要包含兩大方面:

1.API for Text-to-Speech:微軟TTS引擎的接口,通過它我們可以很容易地建立功能強大的文本語音程序 ;

2.API for Speech Recognition:與TTS相對應的語音識別

為了在VC中使用這SDK,必需在工程中添加SDK的include和lib目錄,為免每個工程都添加目錄,最好的辦法是在VC的Option->Directoris加上SDK的include和lib目錄。

一、TTS—基于控制臺

這是一個基于控制臺的語音程序示例。這個例子中,使用了最簡單的COM框架,并讓計算機“說”一句簡單的話。同時介紹了如何使用XML標簽來對語音進行修改。主要包括如下步驟:--Step1:建立工程項目--Step2:初始化COM接口--Step3:創建語音對象--Step4:開始說話

--Step5:用XML標簽修改語音

1、Step1:建立工程

(1)利用Visual Studio的開發環境中的應用程序向導建立一個Win32控制臺(console)程序。在創建過程中時,選擇一個簡單的“Hello world”應用程序工程項目。

(2)創建完成后,打開“stdafx.h”頭文件,把以下的內容粘貼在“#include ”與“#end if”之間。這樣把SAPI所需的其它依賴信息包含進來。

#define _ATL_APARTMENT_THREADED #include (3)在工程中增加兩個文件sapi.h和sapi.lib的路徑。在菜單欄中選擇“Project”|“Settings”|“C/C++”標簽頁,接著在“Category”下拉列表中選擇“Preprocessor”,在“Additional include directories”編輯框中填入實際頭文件路徑,“F:Program FilesMicrosoft Speech SDK 5.1Include”。

(4)再設置sapi.lib的路徑。在同樣的“Settints”對話框中,選擇“Link”標簽頁;在“Category”下拉列表中選擇“Input”;在“Additional library path”編輯框中填入sapi.lib的路徑:“F:Program FilesMicrosoft Speech SDK 5.1Libi386 ;

(5)在同樣的“Link”標簽頁中的“Object/library modules”欄中增加“sapi.lib”,注意,這里的各個庫名字之間用空格隔開。

Step2:初始化COM接口

SAPI 是基于COM框架的,所以使用SAPI相關函數之前和SAPI對象被激活時,程序必須初始化COM接口。下面的代碼雖然除了初始化之外沒有任何其它的功能,但是它確保COM能被正常啟動。程序清單2:

#include #include int main(int argc, char* argv[]){ if(FAILED(::CoInitialize(NULL)))return FALSE;??

::CoUninitialize();return TRUE;} Step3:創建語音對象

COM 運行環境建立起來之后,接下來創建語音對象。語音對象是一個簡單的COM對象。另外,語音對象使用很多智能的默認配置,在自身初始化過程中,SAPI自動為其配置大多數的默認值,語音對象創建完成后就可以立即被程序使用。這些默認的參數是從“控制面板”的“語言屬性”中獲得的,包括語言種類等。所有的默認參數,包括顯見的和非顯見的(比如說話速度,基音周期等),都可以用編程的方式改變,或從控制面板中的語言屬性中修改。

#include #include int main(int argc, char* argv[]){ ISpVoice * pVoice = NULL;//獲取ISpVoice接口:

if(FAILED(::CoInitialize(NULL)))return FALSE;HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice,(void **)&pVoice);if(SUCCEEDED(hr)){ pVoice->Release();pVoice = NULL;// pVoice設置為NULL空值不是必須的,但這樣做有助于檢查錯誤,也可以作為一個提示,表示這個指針的空間已經分配了或者被釋放了。} ::CoUninitialize();return TRUE;} 注:SDK提供的是基于COM封裝的,只要按部就班地用CoInitialize()、CoCreateInstance()獲取IspVoice接口就夠了,需要注意的是初始化COM后,程序結束前一定要用CoUninitialize()釋放資源。

SAPIStep4:開始說話

上述程序的流程是獲取IspVoice接口,然后用ISpVoice::Speak()把文本輸出為語音,只需調用“Speak”函數即可。

HRESULT Speak(const WCHAR *pwcs,DWORD dwFlags,ULONG *pulStreamNumber);

(1)*pwcs 輸入的文本字符串,必需為Unicode,如果是ansi字符串必需先轉換為Unicode.(2)dwFlags 用來標志Speak的方式,其中SPF_IS_XML 表示輸入文本含有XML標簽。

(3)PulStreamNumber 輸出,用來獲取去當前文本輸入的等候播放隊列的位置,只有在異步模式才有用。代碼如下: #include #include int main(int argc, char* argv[]){ ISpVoice * pVoice = NULL;if(FAILED(::CoInitialize(NULL)))return FALSE;HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice,(void **)&pVoice);if(SUCCEEDED(hr)){ hr = pVoice->Speak(L“Hello world”, 0, NULL);pVoice->Release();pVoice = NULL;} ::CoUninitialize();return TRUE;} Step5:用XML標簽修改語音

TTS API功能最強大之處在于能夠分析XML標簽,通過XML標簽設置音量、音調、延長、停頓,幾乎可以使輸出達到自然語音效果。前面已經提過,把Speak參數dwFlags設為SPF_IS_XML,TTS引擎就會分析XML文本,輸入文本并不需要嚴格遵守W3C的標準,只要含有XML標簽就行了,在下面的例子中,后部分的語音基音頻率會比前部分的低10個等級。

#include #include int main(int argc, char* argv[]){ ISpVoice * pVoice = NULL;if(FAILED(::CoInitialize(NULL)))return FALSE;HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice,(void **)&pVoice);if(SUCCEEDED(hr)){ hr = pVoice->Speak(L“Hello world”, 0, NULL);// Change pitch hr = pVoice->Speak(L“This sounds normal

but the pitch drops half way through”, SPF_IS_XML, NULL);pVoice->Release();pVoice = NULL;} ::CoUninitialize();return TRUE;}

第二篇:實驗二 語音交互設計TTS-基于圖形用戶界面

COM:即組件對象模型,Component Object Model。

1、在COM構架下,人們可以開發出各種各樣的功能專一的組件,組件實際上是一些小的二進制可執行程序,它們可以給應用程序、操作系統以及其他組件提供服務,然后將它們按照需要組合起來,構成復雜的應用系統(如dll)。優點:可用新組件替換原有組件,系統升級和定制更加簡便;可在多個應用系統中重復利用同一個組件;可以方便的將應用系統擴展到網絡環境下;COM與語言、平臺無關,程序員可充分發揮自己的才智與專長編寫組件模塊等。

2、使用和處理COM對象。COM獨立于語言,COM為自己提供對象管理例程。COM中創建對象,實際是調用COM庫中的API函數CoCreatInstance().調用該函數時,在注冊表中查找COM服務器位置,將服務器加載到內存,并創建所請求的實例。

3、一般使用COM對象的步驟是: ? 初始化COM庫(Initialize);

? 創建一個COM對象,獲得相應接口;

? 如果對象創建成功,則調用COM對象的某個方法; ? 釋放接口;

? 收回COM庫(Uninitialize)

二、TTS—基于圖形界面

基于圖形用戶界面創建一個TTS應用程序,通過對菜單命令的選擇執行文本-語音的轉換。

一、建立項目

1、創建一個實現典型“Hello world”應用的windows 32平臺應用程序項目。

二、設置sapi路徑:與SAPI相關的文件路徑必須在項目中聲明。(sapi.h和sapi.lib)

1、選擇“Tools”→ “Options”→“Directories”選項卡;

2、選擇“Include Files”下拉式選單,增加“sapi.h”的文件路徑;

3、選擇“Library Files”下拉式選單,增加“sapi.lib”的文件路徑;

三、創建“Speak”菜單命令

1、修改自動生成的菜單項。打開“資源管理器”→“File”菜單→增加“Speak”命令項→資源ID設置為“IDM_SPEAK”。

四、實現speak功能 第1步:初始化COM 第2步:創建語音對象設置聲音 第3步:調用speak函數 第4步:設置感興趣的事件 第5步:確定事件類型 第6步:響應事件

1、初始化COM if(FAILED(CoInitialize(NULL)))

{

return FALSE;

}

2、創建語音對象設置聲音

一旦com運行后,下一步就是要創建語音對象。這里需要用到CoCreatInstance().為簡潔和方便起見,這個例子使用了特別的處理方式。首先,它使用initinstance()來初始化聲音。這是最簡單的初始化過程。第二,這個語音對象是全局性的。第三,語音對象建立之后,對象本省和用到的內存立即被釋放。最后,如果初始化失敗,應用程序應該有更強有力的檢查錯誤機,更廣泛的報告和更詳細的資料。

程序清單2:

ISpVoice *pVoice;//SAPI voice(初始化模塊)……

BOOL InitInstance(HINSTANCE hInstance, int nCmdShow){。。。

// Instead of using IDC_TEST, use the identifier of menu resource of the current application.SetMenu(hWnd, LoadMenu(hInstance, MAKEINTRESOURCE(IDC_TEST)));ShowWindow(hWnd, nCmdShow);UpdateWindow(hWnd);//Initialize SAPI

HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice,(void **)&pVoice);

if(SUCCEEDED(hr))

{

pVoice->SetInterest(SPFEI(SPEI_WORD_BOUNDARY),SPFEI(SPEI_WORD_BOUNDARY));

pVoice->SetNotifyWindowMessage(hWnd, WM_USER, 0, 0);

}

else

return FALSE;

3、調用Speak函數實現“講話”的功能

要讓計算機講話只需一句簡單的調用命令,要講話的內容用一個參數傳給語音對象,常是從一個對話框或一個文件獲取字符串的。另外,字符串也可以從一個流中獲取,但就要使用另外一個調用 ispvoice:: speakstream。Speak函數的調用代碼是放在windows的消息處理函數wndproc()相應的消息處理中的。從文件菜單選擇Speak命令,計算機將開始講: “我很高興發言?!? 程序代碼3: // FUNCTION: WndProc(HWND, unsigned, WORD, LONG)。。。

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){

。。。WCHAR tempString[30]。。。

switch(wmId){。。。case IDM_SPEAK:

wcscpy(theString, L“I am glad to speak.”);

pVoice->Speak(theString, SPF_ASYNC, NULL);

pVoice->Speak(L“I am glad to speak”, SPF_ASYNC, NULL);

break;

default:

return DefWindowProc(hWnd, message, wParam, lParam);}

4、設置事件

像其它大部分windows應用程序一樣,在COM組件中有很多交互動作,這些交互信息將以信息形式出現。sapi是也一樣。信息是在TTS或SR引擎中產生的,某個特定的事件也是在那里開始和結束的.很多時候, sapi或sapi的引擎產生的事件是對應用程序有用的。舉例來說,當一個識別過程開始的時候,應用程序會得到相應的通知或消息,最終的用戶也可以得到相應的通知。

(1)首先,需要接收一個來自sapi的或sapi的引擎的消息。這個消息是程序自定義的.但是,所有的活動sapi都使用相同的消息通知應用程序;

(2)得到通知后,應用程序要檢查一個事件結構,這個事件結構是由SAPI完成的.利用這個結構來確定具體是發生了什么事件(見第五步驟).(3)設定感興趣的事件。程序可以用setinterest 來設置感興趣的事件。默認情況下,TTS不向程序發出任何事件通知。也就是說,如果程序忽略了setinterest的調用,TTS應用程序是得不到任何事件通知的。

(4)設定消息。不論以何種事件,應用程序都應該將一個消息與sapi聯系起來。程序通過調用setnotifywindowmessage來完成這個任務,本例使用WM_USER消息。

程序清單4:

//Initialize SAPI HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice,(void **)&pVoice);if(SUCCEEDED(hr)){

pVoice->SetInterest(SPFEI(SPEI_WORD_BOUNDARY),SPFEI(SPEI_WORD_BOUNDARY));

pVoice->SetNotifyWindowMessage(hWnd, WM_USER, 0, 0);

} else return FALSE;

5、確定事件。使用事件來工作需要2個步驟。

(1)首先是使用一個簡單和標準的做法設置和使用Windows消息。消息是被發送到程序的消息環中的。在這個例子里,wndproc()接收wm_user訊息。一旦訊息是捕獲,其余事情由sapi函數來完成。

(2)第二個步驟是確定哪些消息發生了。Sapi使用 spevent和getevents方法來確定具體的事件和消息。通過這兩個函數可以獲取指定的事件信息和事件類型。在SPEVENT的成員eeventid恰恰是setinterest所設定的值。該spevent結構必須在首次使用時被初始化。而且重新使用之前也要被清除。可以使用spclearevent來完成清除工作。

程序清單5:

switch(message)

{

case WM_COMMAND:

wmId

= LOWORD(wParam);

wmEvent = HIWORD(wParam);

。。。

case WM_USER: //處理speak命令的窗口

SPEVENT eventItem;

memset(&eventItem, 0,sizeof(SPEVENT));

while(pVoice->GetEvents(1, &eventItem, NULL)== S_OK)

{

switch(eventItem.eEventId)

{

case SPEI_WORD_BOUNDARY :

SPVOICESTATUS eventStatus;

pVoice->GetStatus(&eventStatus, NULL);

ULONG start, end;

start = eventStatus.ulInputWordPos;

end = eventStatus.ulInputWordLen;

wcsncpy(tempString, theString + start , end);

tempString[ end ] = '/0';

//MessageBoxW(hWnd, tempString, L“GUIApp”, MB_OK|MB_ICONWARNING);

MessageBoxW(hWnd, tempString, L“SayApp”, MB_OK|MB_ICONWARNING);

break;

default:

break;

}

SpClearEvent(&eventItem);

}

break。。。case WM_DESTROY:

if(pVoice)

{

pVoice->Release();

pVoice = NULL;

}

PostQuitMessage(0);

break;

default:

return DefWindowProc(hWnd, message, wParam, lParam);

}

6、響應事件。在這個例子中,應用程序使用spei_word_boundary消息來取定每一個單詞。可以用getstatus函數和spvoicestatus結構來獲取更詳細的信息。一個獨立的單詞,可以用事件發生時的第一個字母和最后一個字母的位置來確定。在這個例子中,使用MessageBoxW來顯示所講的單詞。在說話過程中,屏幕是實時更新的,并顯示實際發言的文字。這個特點是由spf_async標志控制的。如果在Speak函數中使用NULL參數,而不是SPF_ASYNC參數,那樣就要等整句話說完之后,才顯示消息框。pVoice->Speak(theString, SPF_ASYNC, NULL);

//釋放語音對象

程序代碼6:

case SPEI_WORD_BOUNDARY : SPVOICESTATUS eventStatus;

pVoice->GetStatus(&eventStatus, NULL);

ULONG start, end;

start = eventStatus.ulInputWordPos;

end = eventStatus.ulInputWordLen;

wcsncpy(tempString, theString + start , end);

tempString[ end ] = '/0';MessageBoxW(hWnd, tempString, L“GUIApp”, MB_OK|MB_ICONWARNING);break;總結:

最后,總結一下這個例子的主要知識點: 1,初始化COM: CoInitialize和CoUninitialize 2,建立語音對象實例:CoCreateInstance 3,講話:Speak 4,設置感興趣的事件:SetInterest

設定SAPI返回的消息 :setnotifywindowmessage 5,消息來時,確定事件類型:GetEvents 清除事件結構:SpClearEvent 6,響應事件時,用GetStatus確定當前SAPI的狀態

第三篇:實驗二語音信號分析與處理2010

實驗一語音信號分析與處理

學號姓名注:1)此次實驗作為《數字信號處理》課程實驗成績的重要依據,請同學們認真、獨立完成,不得抄襲。

2)請在授課教師規定的時間內完成;

3)完成作業后,請以word格式保存,文件名為:學號+姓名

4)請通讀全文,依據第2及第3 兩部分內容,認真填寫第4部分所需的實驗數據,并給出程序內容。

1.實驗目的(1)學會MATLAB的使用,掌握MATLAB的程序設計方法

(2)掌握在windows環境下語音信號采集的方法

(3)掌握MATLAB設計FIR和IIR濾波器的方法及應用

(4)學會用MATLAB對語音信號的分析與處理方法

2.實驗內容

錄制一段自己的語音信號,對錄制的語音信號進行采樣,畫出采樣后語音信號的時域波形和頻譜圖,確定語音信號的頻帶范圍;使用MATLAB產生白噪聲信號模擬語音信號在處理過程中的加性噪聲并與語音信號進行疊加,畫出受污染語音信號的時域波形和頻譜圖;采用雙線性法設計出IIR濾波器和窗函數法設計出FIR濾波器,畫出濾波器的頻響特性圖;用自己設計的這兩種濾波器分別對受污染的語音信號進行濾波,畫出濾波后語音信號的時域波形和頻譜圖;對濾波前后的語音信號進行時域波形和頻譜圖的對比,分析信號的變化;回放語音信號,感覺與原始語音的不同。

3.實驗步驟

1)語音信號的采集與回放

利用windous下的錄音機或其他軟件錄制一段自己的語音(規定:語音內容為自己的名字,以wav格式保存,如wql.wav),時間控制再2秒之內,利用MATLAB提供的函數wavread對語音信號進行采樣,提供sound函數對語音信號進行回放。

[y,fs,nbits]=wavread(file),采樣值放在向量y中,fs表示采樣頻率nbits表示采樣位數。Wavread的更多用法請使用help命令自行查詢。

2)語音信號的頻譜分析

利用fft函數對信號進行頻譜分析

3)受白噪聲干擾的語音信號的產生與頻譜分析

①白噪聲的產生:

N1=sqrt(方差值)×randn(語音數據長度,2)(其中2表示2列,是由于雙聲道的原因)然后根據語音信號的頻譜范圍讓白噪聲信號通過一個帶通濾波器得到一個帶限的白噪聲信號N2;

帶通濾波器的沖激響應為:

hB(n)=?c2

?sinc(?c2

?(n??))??c1

?sinc(?c1

?(n??))其中ωc1為通帶濾波器的下截止頻率,ωc2為通帶濾波器的上截止頻率。其中下截止頻率由每個人的語音信號的最高頻率確定 濾波器的長度N由濾波器的過渡帶確定,一般不宜太小(大于1000),α=(N-1)/2; ②信號y通過低通濾波器,得到信號為x1

低通濾波器的沖激響應為:

hL(n)??c1?sinc(?c1

?(n??))其中的ωc1與上面的帶通濾波器的下截止頻率一致,濾波器的長度N也于上面的帶通濾波器一致,α=(N-1)/2

③將N1加上x1得到一個受到噪聲污染的聲音信號

4)據語音信號的頻帶情況,設計FIR和IIR兩種濾波器

5)用濾波器對受污染語音信號進行濾波

FIR濾波器fftfilt函數對信號進行濾波,IIR濾波器用filter函數對信號進行濾波

6)比較濾波前后信號的波形與頻譜

7)回放濾波后的語音信號

4.實驗數據及實驗程序

實驗數據

1)原始語音信號的時域波形和頻譜圖及語音信號的頻帶范圍

2)帶限白噪聲信號的時域波形和幅頻特性

3)受污染語音信號的時域波形和幅頻譜圖

4)濾波器的頻響特性圖

FIR濾波器的幅頻響特性圖

IIR濾波器的幅頻響特性圖

5)濾波后語音信號的時域波形和頻譜圖

6)濾波前后的語音信號時域波形對比圖和幅頻譜對比圖

7)將實驗的資料的電子文檔交給班長(建立一個文件夾,里面包括:①實驗報告的電子版;②采集的語音信號電子文件;③受污染的語音信號及濾波后的語音信號存在文件名為“姓名+學號.mat”文件的文件中)

實驗程序:

1)實驗主程序

2)FIR濾波器子程序

3)IIR濾波器子程序

第四篇:交互設計心得整理

交互設計心得整理

長期以來我就有對幾年來交互設計的心得進行總結整理的想法?;氐街袊鴣碛H身體會到不少同行,主要是交互設計師和視覺設計師對于交互設計的困惑,以及其他行業對于交互設計的誤解和濫用。后來我在小范圍內開設了一個關于交互設計的講座;現在把它整理成文,希望與同行切磋,共同進步。

這篇文章是我幾年來在美國從事交互設計工作的一個經驗總結。當時我們遵循以用戶為中心(User-Centered-Design, 簡稱UCD)的設計原則,每一個項目都是不折不扣的按所有UCD的步驟進行。下面總結的交互設計的方法,是從UCD的過程中提煉出來,也就是說,同樣適用于任何非UCD的設計過程。交互設計的流程

如果一提到交互設計,你就想到畫線框圖或原型圖,那你只對了五分之一。交互設計是一個過程,從開始到結束有一套系統的流程。原型圖只是其中的一個環節。

當接到一個設計項目,怎么開始?都應該做哪些工作?怎樣盡可能的保證交付物滿足既定的功能以及用戶體驗層面的易用性?

第一步,是任務分析,列出界面所要完成的所有任務。第二步按各任務確定頁面流程,建立信息架構。接下來是創建統一的頁面布局包括分區等。然后在頁面布局的基礎上進行原型設計,可以是低保真和高保真的原型圖。最后編寫設計說明。下面以設計一款動感相冊界面為例,逐步講解各個環節。1.任務分析

第一步任務分析。這里要做的是對于將要設計的這個新界面的所有任務的分析,也就是用戶在界面上能進行的所有操作。這個分析在功能需求的基礎上進行,需求方一般提供一個功能點的列表。

任務分析最常見的是任務列表,另外有任務流程和任務場景等。下面以任務列表為例。列出所有主要任務,以及每個主要任務的子任務。再把子任務細分到各個步驟。形成下面這個列表。主要任務1 子任務1 步驟1 步驟2 子任務2 步驟1 步驟2 主要任務2 …

以動感相冊為例,任務分析列表如下:

1.瀏覽相冊 1)瀏覽相冊列表 2)選擇相冊 3)瀏覽照片 2.創建新相冊 1)添加照片 a)選擇已有相冊 b)選擇照片 c)排列順序 d)添加字幕文字 e)選擇動畫效果 2)添加模板 a)瀏覽模板 b)選擇模板 3)添加音樂 a)瀏覽音樂列表 I.試聽音樂 II.選擇音樂 b)增加新音樂 I.打開本地文件 II.選擇音樂 4)預覽(略)… 5)命名(略)… 6)保存(略)… 3.修改相冊(略)…

任務列表包括所有功能點,并對每一個功能點的邏輯關系進行整合。必要時會對各任務的使用頻率和其它影響設計的重要因素進行分析,這里不做解釋了。2.頁面流程

任務分析完成后,進入設計的第一步,即設計頁面流程。頁面流程是設計的開始,也是重要的一環。它決定整個界面的信息架構和操作邏輯。頁面流程是上一步任務分析的自然轉化。一般來說,一個主要任務就是一個頁面,其它子任務也可以轉化為頁面。

以動感相冊為例,頁面流程如下:

頁面幾乎是把任務分析照搬過來了。所以上一步做好了,這一步很輕松,而且越往后越輕松。注意這個流程圖應該包括所有將要設計的新頁面,一個不少,一個不多。它不僅確定頁面內容,頁面數量,還確定各頁面之間的關系。如果在后來設計具體頁面原型時,發現這個流程圖多了或少了頁面,或者頁面關系發生了變化,說明你的功夫不到家(這個比較難,我一般不苛求我們的設計師)。根據原型圖來創建或者修改頁面流程圖,不是在做設計,而是在寫設計說明。3.頁面布局

第三步頁面布局是具體頁面設計的開始,在上一步知道有哪些頁面需要進行設計后,這里對頁面進行劃分,對內容進行組織。最重要的一點是確定頁面分區。以動感相冊為例,頁面布局如下: 總布局,即通用布局,適合所有頁面。

具體頁面布局,在不與總布局沖突的情況下,有更細節的布局。

頁面布局賦予零碎的內容以邏輯性,以分區的形式把頁面各區域所對應的功能區確定下來,減少具體設計時的隨意性。這是設計嚴謹與否的表現所在。把類似的操作放在一起,對于用戶來說是可以預見的,用戶能夠判斷哪個操作在哪個區域,減少盲目尋找帶來的困難和疑惑。4.原型設計 這一步是大家熟知的,即具體頁面的設計。這一步設計把所有的界面元素表現出來??梢杂械捅U婧透弑U嬖蛨D。低保真即是線框圖,高保真多是接近最終效果圖。下面是動感相冊的低保真原型圖。

5.設計說明

最后一步需要做的是對所有頁面進行詳細的描述,包括對頁面上所有元素進行說明,比如默認狀態,跳轉頁面,字號字體,尺寸等。這里就不解釋了。這是交給開發人員的文檔,以及測試人員進行測試的依據。小結

交互設計是一個過程,它不僅僅是畫線框圖。交互設計最關鍵的兩個環節是頁面流程和頁面布局,前者建立清晰的架構和嚴密的邏輯,后者整合零散的信息并確定分明的主次關系。這一切都是為了我們的終極目標——讓我們的界面符合用戶的預期,不帶給他們任何的意外。一切都在用戶的意料之中。

第五篇:交互設計檔案

交互設計師的基本素質

首先,談談我個人對交互設計師基本素質的看法。從我個人的理解來看,可以簡單歸納為九字訣:“聽、看、想、說、磨、做、驗、寫、講”(如圖1.1)。

圖1.1 1)聽:做一個交互設計師,最重要的一點就是要懂得傾聽(這里蘊藏了一個隱晦的性格屬性:謙虛!)。通常情況下,我們不是用戶,所以很難 100%代表用戶,更左右不了老板,所以我們首先要有聽的本事,把來自用戶的、老板的、PD的、視覺的、前端的、開發的、測試的、市場的、業界的等各方面的聲音都聽過來,聽進去。

2)看:99%的情況下,交互不是一蹴而就的創造工作,它是站在前人肩膀上不斷迭代更新的行為過程。我這里指的“看”是要求設計師能博覽、能泛獵,看到好的,見過差的,什么都略懂,交互才能變得很美??

3)想:交互是思考的輸出產物和表現形式。當設計師將之前聽到的和看到的內容在頭腦中加以整理、分析,經過發散的創造性碰撞和嚴謹的邏輯論證后,逐漸得到了相對靠譜的交互產物。這個思索分析的過程貫穿于交互設計工作流程的每個環節。

4)說:一個能說會道的人不一定是一個優秀的交互設計師,但一個優秀的交互設計師必然是一個善于準確表達自己想法和觀點的人。在這一點上,我堅持交互是一門分享的學科,需要的是開放的性格和良好的溝通技巧。

5)磨:耐心、技巧、熱情的綜合表現。在一個項目的進程中,不可避免的會面臨很多的挑戰,優秀的交互設計師善于發揮“磨”的精神,他們懷揣對交互專業的無比熱情,以無所不用其極的技巧,耐心的纏死一個又一個質疑方,最終讓大家認同并幫助推動設計的實現。通常來說,一個優秀的交互設計師會是一個優秀的Idea推銷員。

6)做:交互設計師專業度的核心表現。俗語說得好,是騾子是馬,牽出來遛遛。對于交互設計師來說,之前的環節做得再好、再完美,也只是停留在設計師自己的腦子里,游蕩于聽眾們的耳膜間。如果理論落實不到實際,那所有的想法都只是空中樓閣,你之前所有的努力都只是在佐證你的空泛和不切實際。所以我們不僅要能 “做”,更要“做”得漂亮,“做”得完美!我一直都是這樣認為:“做”決定了一個交互設計師是不是靠譜,決定了一個交互設計師的高度,是一個交互設計師最根本的專業素質。

7)驗:用戶體驗設計,最終是要落實到用戶的身上的??陀^中立的驗證、分析、評估能力是一個優秀交互設計師的重要素質。無論個人還是團隊,設計的成果都需要通過精準的測試才能算得上合乎標準,此時,一顆平常心和一雙敏銳的眼睛是設計師最需要的。

8)寫:分析、歸納和總結能力的綜合表現。一個項目,無論成功還是失敗,總是有很多地方值得設計師本人或后來人借鑒。交互設計之路不是一座苛求零失誤的獨木橋,但絕對是一條要求零“重復”失誤的單行線。評價一個設計師的專業度,很重要的一環就是看他能不能多犯前人從來沒有犯過的錯誤,并能有效總結給后來人。于是,他就成了大家,路就這樣被趟了出來??

9)講:演講能力。這里所指的是在項目后期進行的交流分享。一個專業的交互設計師會站在宏觀的高度上,以平和的心態同他人溝通,驗證自己先前設計的合理性、全面性和科學性,更好的提高自己的專業能力,為今后的交互設計做好準備。

·交互專業度的具象化表現

剛才講了很多,但總體來說還是偏理論,還是讓人摸不著頭腦,虛幻的概念最大的優勢在于它的顛簸不破和四平八穩,誰也揪不住它的小辮子。但這不是我的風格,更不是我寫這篇文章的初衷,我希望的是拋磚引玉,給大家帶來一些真正意義上能直接使用的東西。所以,接下來,我們來些“干貨”,玩點簡單粗暴的??

圖1.2

根據阿里巴巴目前的產品開發流程(如圖1.2),交互設計是大環節中的一個小點,拋開雜亂的干擾信息,單純考量交互設計師在過程中的參與度,我們就能得到一個理想化的交互設計行為流(如圖1.3):

圖1.3 流程沒什么好講的,更沒什么好爭辯的,無非也就是增加一個、減少一個、偷換概念、細分歸納之類的忽悠。我這里想和大家分享的是流程中每個環節的專業輸出物,我有一個激進的想法:如果某人能精準的完成某些公認的標準化輸出物,那他99%可以被稱為是一個“專業”的75分交互設計師了,剩下的 1%,也許是拼RP??

這里,我先簡單交代一下即將涉及到的流程節點、對應輸出物的圖形色塊的代表含義。

1)流程環節說明(如圖1.4):

圖1.4 2)流程環節各輸出物說明(如圖1.5):

圖1.5 在我看來,一個專業的交互設計師,在一個理想化產品設計的過程中,有一些是屬于必須的輸出物,有一些屬于最好有(推薦)的輸出物,還有一些屬于可有可無的輸出物。同時,根據項目的實際情況和參與角色的分工情況,存在一些交互設計師可能需要負責的輸出物,具體細節我將在下面逐一介紹。1)需求獲取階段:

此階段通常來說會由PD等外部資源發起,輸出物主要是FRD文檔和時間計劃文檔,用以描述問題、提出初步目標,假想可能的解決方案、預估資源并梳理時間計劃等。當然,對于從UED內部發起的項目,這兩部分的輸出也可以由交互設計師完成,屬于可能責任輸出物; 2)需求分析階段:

歷史數據的關注和分析階段,基于項目本身,要針對競爭對手、行業現狀等做詳盡的收集和分析,其中的關鍵考核點是要做必要的頭腦風暴,獲取發散而全面的信息集合。在此階段,競爭分析報告和頭腦風暴輸出物是交互設計師專業度的重要表現。

3)用戶訪談階段:

對于一些條件允許的項目,我們建議能在項目初期尋求一些用戶的信息,定義一些用戶的屬性,這些對于之后的交互設計都會是堅實的基礎。一個高專業度的交互設計師甚至會主動介入訪談問卷的設定工作,客觀的參與調研報告輸出的全過程。

4)需求修正階段:

專業的交互設計師通常不甘于淪為一個純粹的資源,抗拒被動的接受命令。我們之前經歷的需求分析和用戶訪談都是為掌控主動權而做的準備。如今,我們有理有據,應該主動出擊,和需求方討論研究需求的合理性、可行性,明確最終的修正目標,并對達成目標所涉及的重點突破點有理性的分析判斷,篩選出各設計點的優先級。5)設計草稿階段

項目目標和設計方向確定下來后,我們將進入核心的設計環節。作為交互設計師的“殺手锏”,交互流程和線框草圖當然一個都不能少,但此時我更想強調一項輔助性質的調研分析工作。從交互的角度來看,在大流程大框架敲定的情況下,交互設計師通常會投入更多的精力在一些核心的設計點,也就是我們在需求修正階段確認的設計重點。此時,專業的設計師絕對不會拍腦袋設計,更不會想當然出方案,而是會針對這些核心點做業界調研和分析,為自己即將進行的設計尋求一個足夠寬廣厚實的肩膀。6)設計細化階段

第一階段的設計工作將在此階段性輸出。我們回顧一下,截止此時的設計產物有:用戶調研報告、FRD確認文檔、交互流程、線框草圖、核心設計調研分析、核心設計詳細說明、交互流程整體說明等。基本上,一個交互設計師的專業度,已經可以根據此時的輸出物數量、質量看出個大概齊了 7)專家評審階段

一個專業的交互設計師,要謙虛。此刻,我們進入小范圍專家評審的階段了,三個臭皮匠還頂一個諸葛亮呢,更何況是參與評審的專家呢。此時設計師的專業度就體現在 “聽”、“說”和“想”這三訣上,耐心的做好評審記錄,有理有據的同專家們進行專業溝通,并確認最終的結論和方向。8)設計優化階段

經歷了專家團的考驗,又該抖擻精神重新上路了,沒什么好說的,把過程做好了,你的專業度也就到位了。設計優化階段的投入度和產出將直接影響到后續Demo及測試的效果,和最終設計也息息相關,各位交互設計師們,千萬別打瞌睡了!

9)仿真Demo開發階段

終于到了仿真Demo的模型化階段啦,這時盡管并沒有直接的交互輸出物,但還是需要交互設計師用百分百的挑刺精神,協助視覺和前端精準的達成我們之前的設計,嚴格保證最佳的輸出效果。10)測試驗證階段

仿真Demo出來之后,將進入最后的測試驗證階段,根據項目的實際情況,可能是QA測試,也可能是用戶測試,總之,這個環節能幫助設計師最后把關設計的合理性,專業如你,一定要親自跟進測試并給出最終的評估報告,哪些點是前期沒有考慮周全的?那些點是成功的?哪些點是必須立即改進的?哪些點能以后再說?哪些?? 11)完成設計階段

最后的設計階段,根據之前的測試驗證評估報告,交互設計師要對所有之前的輸出做一次嚴格的檢查和修正,完成最后的輸出。

12)開發上線階段

盯緊視覺設計師和前端工程師吧,最關鍵的時候終于到了,經歷了那么多紛繁復雜的環節,我們等的就是上線的這一瞬間。當然,千萬別忘了后續的跟蹤和分析,這能為你的專業度加分不少哦 ·總結和展望

綜上所述,我們已經整理出來了體現交互設計師專業度的過程輸出物了,總結一下:以75分交互設計師的標準來看,我們的專業度能通過以下的關鍵輸出物衡量:FRD目標確認文檔、競爭分析報告、頭腦風暴產出物、項目初期用戶調研報告、核心設計點調研及分析報告、專家評審報告和評估報告、原型測試報告、交互流程圖及詳細說明文檔、頁面線框圖、核心設計點說明文檔和最后的跟蹤分析報告。

基本上,所有的輸出物都是反復易稿的結果,都是細碎過程的迭代輸出,都飽含了設計師辛勤的工作投入。所有有夢想的交互設計師們,請正確的審視這些輸出物,珍惜自己的付出,它們不光是單板的形式教條,它們更是證明自己專業度最有利的武器!

被很多同學都質疑過:那么多的輸出物,平時做需求怎么可能全部做出來?每當此時,我的回答都是一樣的:“是的,找借口總是很容易的。大家的確都很忙碌,按季度來說,基本上每個人都會經手大大小小幾十個需求,但我們真的忙碌到輸出一個高質量設計的精力都沒有了嗎?還是我們打心里就本著做交互、混日子的想法呢?”

不是不能,是不愿!那才是交互設計這個職業最可悲之處??

作者信息:本文http://

下載實驗二 語音交互設計-TTS(匯編)word格式文檔
下載實驗二 語音交互設計-TTS(匯編).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    數字交互設計

    《數字交互設計》教學大綱 課程名稱:數字交互設計 課程類型:專業方向課 課程編號:134081 學時數及學分:總32學時,2學分,其中講課8學時,上機24學時。 教材名稱及作者、出版社、出版......

    交互設計實習報告

    實習報告: 一、實習說明 實習時間:2010年10月20日至2011年1月5日 實習內容:關于手機微波客戶端的交互分析 實習性質:畢業實習二、實習內容介紹微博,即微博客(MicroBlog)的......

    基于交互白板的數學實驗教學策略初探

    基于交互白板的數學實驗學習策略初探 The Exploration of Math Experiment Learning Strategy Based on Interactive Whiteboard 牟 林 Lin Mu 四川成都華西中學Chengdu Hua......

    語音教學設計[本站推薦]

    背景: 上海出版社牛津英語3A開始時就有了語音教學,從開始學習字母時,學生就學習了26個字母及以該字母為首的單詞的發音,初步對語音有所了解,我發現學生讀單詞的能力較以前......

    實驗二 城市小游園設計

    實驗二城市小游園設計 一、 試驗目的 了解城市景觀構成要素,根據城市游園的性質,劃分其功能和空間,滿足美化、豐富街景,提供人們休憩、觀賞、娛樂等功能要求。進一步掌握設計圖......

    實驗二 綜合布線設計實驗

    實驗二:綜合布線設計實驗 一、實驗目的 1、 掌握用VISIO學習繪制網絡拓樸結構圖。 2、 掌握用VISIO學習繪制綜合布線方案設計圖。 3、 通過實驗更好的理解網絡拓樸結構的原理......

    單片機實驗二電子鐘設計

    單片機實驗二:電子鐘設計 1、基礎部分:電子鐘能夠直觀、人性化顯示:時間、日期、星期,能夠按鍵校時, 用獨立的LED燈做流水燈裝飾。 2、提升部分:①帶有鬧鐘功能,能夠根據需要定時,②......

    實驗二

    實驗二 總賬管理系統初始設置 【實驗目的】 1.掌握用友ERP-U8管理軟件中總賬管理系統初始設置的相關內容。 2.理解總賬管理系統初始設置的意義。 3.掌握總賬管理系統初始設置......

主站蜘蛛池模板: 婷婷激情综合色五月久久竹菊影视| 久久精品av国产一区二区| 伊人色综合久久天天五月婷| 人妻熟妇乱又伦精品视频无广告| 国产男女做爰高清全过小说| 亚洲精品国产a久久久久久| 精品国产免费人成网站| 欧美v国产v亚洲v日韩九九| 暖暖 在线 日本 免费 中文| 久久久青草青草免费看| 国产精品午夜福利视频234区| 亚洲精品乱码8久久久久久日本| 中文字幕无码第1页| 国产成人一区二区三区视频免费| 日本亚洲欧洲无免费码在线| 偷偷做久久久久网站| 色欲狠狠躁天天躁无码中文字幕| 国产精品白浆精子像水合集| 成 人色 网 站 欧美大片在线观看| 真人抽搐一进一出视频| 欧美xxxxx高潮喷水麻豆| 男女啪啪网站| 2021年国产精品每日更新| 亚洲精品一区二区三区在线| 精品久久久无码中文字幕天天| 97se狠狠狠狠狼亚洲综合网| 国产成人喷潮在线观看| 宅男宅女精品国产av天堂| 亚洲精品无码一二区a片| 狠狠爱五月丁香亚洲综合| 18禁真人抽搐一进一出在线| 99re6热在线精品视频观看| 永久免费的av在线电影网无码| 国产免费人成视频在线观看| 欧洲熟妇色xxxx欧美老妇软件| 呦男呦女视频精品八区| 国产女人好紧好爽| 国产精品va在线观看丝瓜影院| 成人做受视频试看60秒| 久久亚洲中文字幕不卡一二区| 亚洲欧洲日产国码在线|