一、vbl = Screen('Flip', windowPtr);

vbl:vertical blank(垂直空白,CRT显示器电子束扫完最后一行最右边的像素点时,会跳回到第一行最左边的像素点重新开始扫描。这个跳跃的时间段),标记了 " Flip " 动作完成的时间点。

二、ifi = Screen('GetFlipInterval', w);

monitor refresh interval (aka IFI)

同:ifi = 1.0 / Screen('NominalFramerate',screenNum) ;(好像这个更准一点,0.0167s)

二、vbl = Screen('Flip', windowPtr, vbl + 【下一次翻转间隔/秒】 - 0.5 *ifi );

“- 0.5 *ifi” 消除滞后误差

so we are asking to flip half an ifi before the next refresh. Why not just ask to flip on the next refresh, i.e. vbl + ifi? Because that sum is a floating-point calculation and may contain small rounding errors. Screen('Flip') can only swap the screen buffers on the next monitor refresh, so what happens if the error in that sum slightly overshoots? Then you've just asked for a flip time slightly beyond the monitor refresh you actually wanted, and PTB has to wait almost an entire ifi to actually flip**.

So we ask for a flip time some amount (less than ifi) before the desired monitor refresh - ifi/2 is reasonable. We're really saying "do the next flip ASAP after vbl+ifi/2", knowing both that Screen('Flip') can't actually do it prior to the refresh, and safe in the knowledge that we have ifi/2 leeway to absorb minor inaccuracies in the timing calculation.

The arithmetic of waitframes is left as an exercise for the reader.

*assuming PTB is set up correctly to play nice with your hardware - pay attention to those warning messages!

**Even worse, this might not show up in PTB's errors e.g. the dropped frame count, because PTB has achieved what you asked it: flipped the buffers on the next monitor refresh from your specified time. In that case the only way you'd know your experiment was lagging and presenting mis-timed stimuli would be if you happened to spot it during runtime!

【matlab - Explaning a line in code from PsychToolBox tutorial - Stack Overflow】

matlab PTB 学习笔记03——精确时间控制相关推荐

  1. 道格拉斯算法 matlab,OpenCV 学习笔记03 凸包convexHull、道格拉斯-普克算法Douglas-Peucker algorithm、approxPloyDP 函数...

    凸形状内部的任意两点的连线都应该在形状里面. 1 道格拉斯-普克算法 Douglas-Peucker algorithm 这个算法在其他文章中讲述的非常详细,此处就详细撰述. 下图是引用维基百科的.ε ...

  2. JDBC学习笔记03【JDBC事务管理、数据库连接池、JDBCTemplate】

    黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...

  3. 系统辨识理论及MATLAB仿真——学习笔记(1)

    系统辨识理论及MATLAB仿真学习笔记(1) 前言 目录 第1章 绪论 1.1 建立数学模型的基本方法 1.2 系统辨识的定义 1.3 系统辨识的研究目的 1.4 数学模型的分类 1.5 几种常见的数 ...

  4. ESP32 单片机学习笔记 - 03 - MCPWM脉冲输出/PCNT脉冲计数

    ESP32 单片机学习笔记 - 03 - MCPWM脉冲输出/PCNT脉冲计数 前言,继续上一篇的内容.因为上一篇刚好实验了iic和spi,形成一对.接下来讲pwm另起一篇. 目录 ESP32 单片机 ...

  5. 天池龙珠训练营-机器学习学习笔记-03 LightGBM 分类

    天池龙珠训练营-机器学习学习笔记-03 LightGBM 分类 本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:训练营 一 原理简介: 它是一款基于GBDT(梯度提升决策树)算法的 ...

  6. HTML/CSS学习笔记03【CSS概述、CSS选择器、CSS属性、CSS案例-注册页面】

    w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...

  7. MySQL学习笔记03【数据库表的CRUD操作、数据库表中记录的基本操作、客户端图形化界面工具SQLyog】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  8. JavaScript学习笔记03【基础——对象(RegExp、Global)】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  9. 点亮LED-STM32电控学习笔记03

    Robocon战队电控学习笔记03 day3:2022/9/21 [基本界面/结构] 在学习开始之前肯定要先了解我们开发的是个什么东西,每个部位是啥功能,这里我放几张官方(fuza)的图片 图一:C板 ...

  10. MySQL 8——学习笔记03(插入、更新、删除 数据 [DML语句]、查询数据 [DQL语句])

    MySQL 8--学习笔记03(插入.更新.删除 数据 [DML语句]) 一.插入数据 1.1 插入所有字段.插入部分字段 1.2 同时插入多条记录(批量插入) 1.3 将查询结果插入到表中 二.更新 ...

最新文章

  1. 三星samsung手机ROM制作教程-另外一篇
  2. SQL Server服务器名称填写IP不能访问问题解决
  3. springboot整合视图层Thymeleaf、freemarker
  4. linux semaphore,在CentOS 7操作系统上安装Semaphore的方法
  5. C# 值类型的局限性
  6. P4302-[SCOI2003]字符串折叠【区间dp】
  7. 如何查看.net framework 版本
  8. Oracle环境变量
  9. win7 下安装ubuntu14.04 本人实测撰写
  10. R语言分布的卡方拟合优度检验
  11. px和毫米的换算_px和mm换算(px相当于多少毫米)
  12. js 除了自己获取其他所有兄弟节点
  13. 玩转内网穿透(1):内网穿透是什么?有什么用
  14. android系统扫盲教程
  15. 课余或者业余学习python,可以嘛?
  16. 超轻薄笔记本电脑软件测试,2009年度-13英寸超轻薄笔记本年度横向评测
  17. c语言发送短信,c语言短信.doc
  18. linux 中输入bash,Linux上Bash Shell编程
  19. 分享35款超酷的免费英文涂鸦字体
  20. ZMQ/ZeroMQ简介

热门文章

  1. Cocos Creator AnySDK支付问题
  2. 一周热图|杨紫韩国艺匠婚纱大片出炉;易烊千玺代言麦当劳;洛天依音乐综艺节目首秀...
  3. Halcon——颜色检测
  4. 支付宝支付--沙箱支付教程+案例 | PC端网站支付(超级详细版本)
  5. linux shell sed快速开始-(添加文本到文件的第一行和最后一行、文本的行尾添加字符)
  6. 手游推广难?平台的选择至关重要
  7. 时序分析基本概念介绍Slew/Transition
  8. Linux下基础命令(二)
  9. [Chatter] 为甚么要学Design Pattern
  10. uni-app编译报caniuse-lite is outdated