出版时间:2013-8-1 出版社:电子工业出版社 作者:冯成志
Tag标签:无
内容概要
PsychToolbox(PTB)是专门用于心理学实验编制的免费函数库,它提供了对硬件操作的底层接口,能够开发功能复杂,近乎各个自然科学和社会科学研究领域的实验程序,与Matlab能够完美结合。本书是根据作者十几年的编程经验写作而成。全书共分13章,主要介绍了Matlab基础知识、Matlab编程基础、用于实验编程的常用Matlab函数、PsychToolbox函数介绍、PTB与OpenGL的结合、与EyeLink眼动仪及NeuroScan脑电仪的连接等内容。
作者简介
冯成志,苏州大学心理系教授,浙江大学心理系毕业。有着多年的实践教学经验和资深的学术研究经验,主要研究方向是人机交互。
书籍目录
第1章 MATLAB基础知识
1.1 启动与退出
1.2 MATLAB界面组成
1.3 命令的执行
1.4 获取帮助信息
第2章 数据类型
2.1 数值型
2.2 字符型
2.3 日期时间型
2.4 单元
2.5 结构
第3章 MATLAB编程基础
3.1 常数与常量
3.2 变量
3.3 变量类型
3.3.1 局部变量
3.3.2 全局变量
3.3.3 永久变量
3.4 关键字
3.5 运算符
3.5.1 算术运算符
3.5.2 关系运算符
3.5.3 逻辑运算符
3.5.4 逻辑运算函数
3.6 过程控制
3.6.1 if条件语句
3.6.2 switch条件语句
3.6.3 for循环语句
3.6.4 while循环语句
3.6.5 try错误控制语句
第4章 程序设计
4.1 M文件的建立
4.2 脚本示例
4.3 函数示例
4.4 程序(M文件)的运行
4.5 函数参数的处理方式
4.5.1 默认处理
4.5.2 命令行输入
4.5.3 对话框设置参数
4.5.4 参数值的记忆与存取
4.5.5 函数的返回参数
4.5.6 可变数目的输入/输出参数
4.6 函数的类型
4.6.1 主函数
4.6.2 子函数
4.6.3 函数间的调用关系
4.6.4 函数的调用顺序
第5章 实验设计常用MATLAB函数
5.1 矩阵数组操作类函数
5.1.1 数组排序:sort
5.1.2 数组行排序:sortrows
5.1.3 矩阵旋转:rot90
5.1.4 矩阵左右/上下翻转:fliplr/flipud
5.1.5 矩阵水平/垂直拼接:horzcat/vertcat
5.1.6 数组的重复:repmat
5.1.7 数组维数变更:reshape
5.1.8 获取数组维数:size
5.1.9 获取矩阵长度:length
5.1.10 获取数组元素数:numel
5.1.11 获取数组的维度数:ndims
5.1.12 两个常用矩阵:ones/zeros
5.1.13 生成等间隔向量:linspace
5.1.14 生成网格:meshgrid
5.2 判断类函数
5.2.1 是否为空:isempty
5.2.2 是否为列向量:iscolumn
5.2.3 是否为浮点数:isfloat
5.2.4 是否为整数:isinteger
5.2.5 是否为逻辑值:islogical
5.2.6 是否为非数值:isnan
5.2.7 是否无穷大:isinf
5.2.8 是否为行向量:isrow
5.2.9 是否为向量:isvector
5.2.10 是否为数值:isnumeric
5.2.11 是否相等:isequal
5.2.12 是否为字符:ischar
5.2.13 是否为字母:isletter
5.2.14 是否为空格:isspace
5.2.15 是否为集合元素:ismember
5.3 字符操作类函数
5.3.1 创建空格:blanks
5.3.2 格式化为字符:sprintf
5.3.3 转换为大/小写:upper/lower
5.3.4 去除首尾空格:strtrim
5.3.5 去除尾部空格:deblank
5.3.6 字符替换:strrep
5.3.7 字符查找:findstr/strfind
5.3.8 格式化读取:sscanf/strread
5.3.9 执行字符表达式:eval
5.3.10 子串提取:strtok
5.3.11 字符比较:strcmp/strcmpi/strncmp/strncmpi
5.3.12 字符拼接:strcat/strvcat
5.4 随机操作类函数
5.4.1 介于(0,1)间的均匀分布随机浮点数:rand
5.4.2 介于(1,n)间的均匀分布随机整数:randi
5.4.3 正态分布随机数:randn
5.4.4 设置随机数种子:seed
5.4.5 通过随机数流来控制随机数种子:RandStream
5.4.6 随机排列:randperm
5.4.7 重置随机数流:reset
5.4.8 随机排列数组或矩阵:Shuffle
5.4.9 随机抽样:Sample
5.4.10 随机抽样:RandSample
5.5 转换操作类函数
5.5.1 字符转数值:str2num
5.5.2 字符转双精度数:str2double
5.5.3 非负整数转字符:char
5.5.4 数值转换字符:num2str
5.5.5 数值转换单元:num2cell
5.5.6 整数转换成字符:int2str
5.5.7 结构转单元:struct2cell
5.5.8 单元转结构:cell2struct
5.5.9 单元转矩阵:cell2mat
5.6 路径操作类函数
5.6.1 获取MATLAB安装目录:matlabroot
5.6.2 获取当前工作路径:pwd
5.6.3 改变当前目录:cd
5.6.4 文件或路径列表:dir
5.6.5 显示当前目录下的文件列表:ls
5.6.6 获取工具箱目录:toolboxdir
5.6.7 创建目录:mkdir
5.6.8 删除目录:rmdir
5.6.9 垃圾箱控制开关:recycle
5.6.10 获取系统临时目录:tempdir
5.6.11 获取指定路径下的文件:FileFromFolder/FolderFromFolder
5.6.12 添加路径至搜索路径中:addpath
5.6.13 从搜索路径列表中移除某路径:rmpath
5.6.14 获取搜索路径分隔符:pathsep
5.6.15 获取文件名分隔符:filesep
5.6.16 拆分文件的路径和名称信息:fileparts
5.6.17 组合全路径文件名:fullfile
5.7 文件操作类函数
5.7.1 打开文件:fopen
5.7.2 关闭文件:fclose
5.7.3 读取二进制数据:fread
5.7.4 写入文件:fwrite
5.7.5 读取一行:fgetl
5.7.6 读取一行:fgets
5.7.7 格式化数据读取:fscanf
5.7.8 格式化数据输出:fprintf
5.7.9 文件操作错误信息:ferror
5.7.10 文件尾判断:feof
5.7.11 文件指针定位:fseek
5.7.12 获取文件指针位置:ftell
5.7.13 文件指针复位:frewind
5.7.14 获取临时文件名:tempname
5.7.15 文件或目录的移动、更名:movefile
5.7.16 文件或目录复制:copyfile
5.7.17 定位文件或函数:which
5.7.18 检查文件/目录/变量等是否存在:exist
5.7.19 将结构数组写入文件:WriteStructToText
5.7.20 从文本中读取结构数组:ReadStructsFromText
5.7.21 文件比较:visdiff
5.7.22 显示文件内容:type
5.7.23 设置/获取文件或目录的属性:fileattrib
第6章 PSYCHTOOLBOX的安装
6.1 PSYCHTOOLBOX简介
6.2 PSYCHTOOLBOX安装
6.2.1 系统要求与配置
6.2.2 版本检查与卸载
6.2.3 安装新版本的PSYCHTOOLBOX
第7章 PSYCHTOOLBOX常用数据类型
7.1 颜色
7.2 矩形结构
7.3 窗口句柄
7.4 时间单位
7.5 反应方式
7.6 文本
7.7 图片
7.8 音频
7.9 视频
7.10 键盘扫描码
7.11 鼠标按钮值
第8章 PSYCHTOOLBOX函数介绍
8.1 窗口操作类函数
8.1.1 创建主页面:OpenWindow
8.1.2 创建缓冲页面:OpenOffscreenWindow
8.1.3 创建纹理缓冲:MakeTexture
8.1.4 页面切换:Flip
8.1.5 绘制结束指令:DrawingFinished
8.1.6 关闭页面:Close
8.1.7 关闭所有页面:CloseAll/sca
8.1.8 选择目标缓冲区:SelectStereoDrawBuffer
8.2 矩形操作类函数
8.2.1 矩形拼接:AdjoinRect
8.2.2 矩形对齐:AlignRect
8.2.3 创建矩形阵列:ArrangeRects
8.2.4 矩形居中至某矩形:CenterRect
8.2.5 矩形居中至某点:CenterRectOnPoint/CenterRectOnPointd
8.2.6 矩形重叠区域:ClipRect
8.2.7 矩形缩放(正放负缩):GrowRect
8.2.8 矩形缩放(正缩负放):InsetRect
8.2.9 矩形缩放(比例缩放):ScaleRect
8.2.10 矩形是否为空:IsEmptyRect
8.2.11 某点是否在矩形内:IsInRect
8.2.12 矩形平移:OffsetRect
8.2.13 获取矩形中心:RectCenter/WindowCenter
8.2.14 获取矩形中心:RectCenterd
8.2.15 获取矩阵的边界矩形:RectOfMatrix
8.2.16 获取矩形的高度:RectHeight
8.2.17 获取矩形的宽度:RectWidth
8.2.18 获取矩形的宽和高:RectSize
8.2.19 获取矩形的左边坐标:RectLeft
8.2.20 获取矩形的右边坐标:RectRight
8.2.21 获取矩形的顶边坐标:RectTop
8.2.22 获取矩形底坐标:RectBottom
8.2.23 创建矩形:SetRect
8.2.24 获取矩形对应的数组尺寸:SizeOfRect
8.2.25 获取矩形的最小边界区域:UnionRect
8.3 绘制类函数
8.3.1 画点:DrawDots/ScreenDrawDots
8.3.2 画线:DrawLine
8.3.3 一次画多条线:DrawLines
8.3.4 画虚线:LineStipple
8.3.5 画弧:DrawArc
8.3.6 画粗线弧:FrameArc
8.3.7 画扇形(填充弧):FillArc
8.3.8 画实心矩形:FillRect
8.3.9 画矩形:FrameRect
8.3.10 填充椭圆:FillOval
8.3.11 画空心椭圆FrameOval
8.3.12 画多边形:FramePoly
8.3.13 填充多边形:FillPoly
8.4 文本操作类函数
8.4.1 文本模式:TextModes与TextMode
8.4.2 绘制文本:DrawText
8.4.3 绘制格式化文本:DrawFormattedText
8.4.4 字体:TextFont
8.4.5 文本大小:TextSize
8.4.6 文本样式:TestStyle
8.4.7 文本边界:TextBounds
8.4.8 文本颜色:TextColor
8.4.9 文本背景色:TextBackgroundColor
8.4.10 字符拼接:CatStr
8.4.11 字符前填充:StrPad
8.4.12 字符串比较:streq
8.4.13 字符替换:Replace
8.5 图片/图像处理类函数
8.5.1 图片文件读取:imread
8.5.2 生成圆或椭圆:Ellipse
8.5.3 在圆上均匀采样:SampleCircle
8.5.4 在球面上均匀采样:SampleSphere
8.5.5 正弦/余弦函数图像(光栅):MakeSineImage/MakeCosImage
8.5.6 拆解彩色图片数据成分:UnpackColorImage
8.5.7 合并彩色图片数据成分:PackColorImage
8.5.8 透明化处理:MaskImageIn/MaskImageOut
8.5.9 纹理预加载:PreloadTextures
8.5.10 纹理绘制:DrawTexture
8.5.11 一次性绘制多个纹理:DrawTextures
8.5.12 窗口复制:CopyWindow
8.5.13 窗口图像获取:GetImage
8.5.14 图像绘制:PutImage
8.5.15 颜色混合函数:BlendFunction
8.6 多媒体操作类函数
8.6.1 打开影片:OpenMovie
8.6.2 关闭影片:CloseMovie
8.6.3 获取影片图像:GetMovieImage
8.6.4 播放影片:PlayMovie
8.6.5 获取影片时间:GetMovieTimeIndex
8.6.6 设置影片时间:SetMovieTimeIndex
8.6.7 创建影片:CreateMovie
8.6.8 添加帧:AddFrameToMovie
8.6.9 添加音频信息:AddAudioBufferToMovie
8.6.10 生成影片:FinalizeMovie
8.7 音频处理类函数
8.7.1 生成频率纯音:MakeBeep
8.7.2 播放“啵”声:Beeper
8.7.3 PTB集成功能:Snd
8.7.4 读取波形声音文件:wavread
8.7.5 写波形声音文件:wavwrite
8.7.6 波形声音文件信息:wavfinfo
8.7.7 读取au音频文件:auread
8.7.8 写au音频文件:auwrite
8.7.9 au声音文件信息:aufinfo
8.7.10 获取多媒体文件信息:mmfileinfo
8.7.11 音频数据播放:sound
8.7.12 创建音频播放器:audioplayer
8.7.13 创建录音机对象:audiorecorder
8.7.14 获取音频设备信息:audiodevinfo
8.8 时间类函数
8.8.1 启动计时器:Tic
8.8.2 读取计时器时间进度:Toc
8.8.3 获取时间值:GetSecs
8.8.4 等待指定时间:WaitSecs
8.8.5 暂停:pause
8.8.6 获取时间:GetTicks
8.8.7 等待时间:WaitTicks
8.8.8 获取滴答间隔:GetTicksTick
8.8.9 GetSecs时间精度:GetSecsTick
8.8.10 获取总线滴答数:GetBusTicks
8.8.11 GetBusTicks时间精度:GetBusTicksTick
8.9 按键操作类函数
8.9.1 按键判断:KbCheck
8.9.2 按键名称与扫描码:KbName
8.9.3 等待按键行为:KbWait
8.9.4 按压等待:KbPressWait
8.9.5 释放等待:KbReleaseWait
8.9.6 击键等待:KbStrokeWait
8.9.7 获取可键入字符:GetChar
8.9.8 获取键盘事件队列中的字符:CharAvail
8.9.9 刷新事件队列:FlushEvents
8.9.10 字符监听设置:ListenChar
8.9.11 获取鼠标状态:GetMouse
8.9.12 设置鼠标位置:SetMouse/WaitSetMouse
8.9.13 等待鼠标点击:GetClicks
8.9.14 询问:Ask
8.9.15 光标隐藏:HideCursor
8.9.16 光标显示:ShowCursor
8.9.17 限制按键检查范围:RestrictKeysForKbCheck
8.10 语音输入类函数
8.10.1 加载高性能声卡驱动:InitializePsychSound
8.10.2 打开音频设备:Open
8.10.3 加载播放缓冲区:FillBuffer
8.10.4 重新填充播放缓冲区:RefillBuffer
8.10.5 获取捕获音频数据:GetAudioData
8.10.6 启动音频设备:Start
8.17.7 停止音频设备:Stop
8.10.8 关闭音频设备:Close
8.10.9 音量控制:Volume
8.10.10 打开虚拟附属设备:OpenSlave
8.10.11 创建动态音频缓冲区:CreateBuffer
8.10.12 删除缓冲区:DeleteBuffer
8.10.13 打开或关闭播放列表:UseSchedule
8.10.14 添加音频缓冲区至播放队列:AddToSchedule
8.10.15 调整开始播放时间:RescheduleStart
8.10.16 设置播放片断始末点:SetLoop
8.10.17 获取音频设备状态信息:GetStatus
8.10.18 设置或获取延迟偏差:LatencyBias
8.10.19 声音输入监控设置:DirectInputMonitoring
8.10.20 设置或获取工作模式:SetOpMode
8.10.21 设置或获取运行模式:RunMode
8.10.22 获取音频设备数:etOpenDeviceCount
8.10.23 获取音频设备信息:GetDevices
8.10.24 获取或设置底层驱动参数:EngineTunables
8.10.25 控制输出信息量:Verbosity
8.11 视频捕获类函数
8.11.1 打开视频设备:OpenVideoCapture
8.11.2 开始视频捕获:StartVideoCapture
8.11.3 获取捕获图像:GetCapturedImage
8.11.4 停止视频捕获:StopVideoCapture
8.11.5 关闭视频捕获设备:CloseVideoCapture
8.11.6 视频捕获参数设置:SetVideoCaptureParameter
8.12 MATLAB对话框类函数
8.12.1 输入对话框:inputdlg
8.12.2 错误提示对话框:errordlg
8.12.3 帮助对话框:helpdlg
8.12.4 列表选择对话框:listdlg
8.12.5 信息对话框:msgbox
8.12.6 询问对话框:questdlg
8.12.7 警告对话框:warndlg
8.12.8 文件选择对话框:uigetfile
8.12.9 文件保存对话框:uiputfile
8.12.10 变量保存对话框:uisave
8.12.11 变量导出对话框:export2wsdlg
8.12.12 文件打开对话框:uiopen
8.12.13 目录选择对话框:uigetdir
8.12.14 颜色设置对话框:uisetcolor
8.12.15 字体设置对话框:uisetfont
8.12.16 图形打印预览对话框:printpreview
8.12.17 图形打印对话框:printdlg
8.12.18 进度等待对话框:waitbar
8.13 系统环境信息类函数
8.13.1 获取版本信息:Version
8.13.2 获取计算机系统信息:Compuer
8.13.3 获取显示器数:Screens
8.13.4 获取窗口列表:Windows
8.13.5 窗口类型:WindowKind
8.13.6 判断是否为缓冲页面:IsOffscreen
8.13.7 获取刷新频率(帧速率):FrameRate
8.13.8 获取刷新频率:NominalFrameRate
8.13.9 获取页面切换时间:GetFlipInterval
8.13.10 获取窗口所处显示器:WindowScreenNumber
8.13.11 获取窗口或显示器的矩形尺寸:Rect
8.13.12 获取像素位数:PixelSize
8.13.13 获取可用的像素位数:ixelSizes
8.13.14 获取窗口或显示器的尺寸:WindowSize
8.13.15 获取显示器的尺寸:DisplaySize
8.13.16 获取窗口的颜色范围:ColorRange
8.13.17 获取窗口信息:GetWindowInfo
8.13.18 获取显示器的分辨率:Resolutions
8.13.19 设置/获取显示器的显示模式:Resolution
8.14 偏好设置类函数
8.14.1 是否区分大小写:IgnoreCase
8.14.2 不输出警告信息:SuppressAllWarnings
8.14.3 调试信息详细度: VisualDebugLevel
8.14.4 文本渲染:TextRenderer
8.14.5 文本平滑处理:TextAntiAliasing
8.14.6 设置默认字体大小:DefaultFontSize
8.14.7 设置默认字体式样:DefaultFontStyle
8.14.8 设置默认字体名称:DefaultFontName
8.14.9 忽略同步扫描检测:SkipSyncTests
8.14.10 设置三维图形模式:Enable3DGraphics
……
第9章 PSYCHTOOLBOX实验设计实例
第10章 PTB与OpenGL的结合
第11章 PTB与Eyelink眼动仪的连接
第12章 PTB与SMI/iViewX眼动仪的连接
第13章 PTB与NeuroScan脑电仪的连接
附录
参考文献
后记
图书封面
图书标签Tags
无
评论、评分、阅读与下载
PsychToolBox工具箱及Matlab编程实例 PDF格式下载