4. デモの解説

デモ(サンプルプログラム)は、Psychtoolboxのインストール先のPsychDemosにあります。

プログラムの1行ずつの細かい説明ではなく、重要なところを中心に説明したいと思います。

  • PsychExampleExperiments - 他のデモは刺激の呈示に焦点を当てたものが多いのですが、このフォルダにあるのは、実際にどのように実験を行うかについて説明したものです。
  • AlphaImageDemo - OpenGLのアルファブレンディング(2つの画像の合成、画像の一部を透過させるテクニック)
  • AlphaRotateDemo - グレーティングが回転。アルファブレンディングも。AlphaImageDemoOSXとほとんど同じ。
  • ArcDemo - 円弧(arc)の描画。'FrameArc' および 'FillArc' 関数の使い方。
  • AudioTunnel3DDemo - Very sketchy demo on how to use OpenAL for 3D spatialized sound.
  • AudioTunnel3DDemo2 - Another sketchy demo on how to use OpenAL for 3D spatialized sound.
  • BasicAMAndMixScheduleDemo - Demonstrates basic use of sound schedules, volume controls, amplitude modulation and audio mixing of multiple voices.
  • BasicSoundFeedbackDemo - Demonstrates a audio feedback loop via PsychPortAudio(). See DelayedSoundFeedbackDemo for a more research grade approach.
  • BasicSoundInputDemo - 録音をするためのPsychPortAudio関数の基本的な使い方。
  • BasicSoundOutputDemo - 音を出力するためのPsychPortAudio関数の基本的な使い方。
  • BasicSoundScheduleDemo - Demonstrate basic usage of sound schedules and buffers with PsychPortAudio().
  • BlurredMipmapDemo - Apply blurring via OpenGL mip-mapping to live video or movies.
  • BlurredVideoCaptureDemo - Demonstrate application of GPU accelerated image filters to live video.
  • BubbleDemo - GazeContingentDemoOSXに類似したもの。ただし複数のマスクをかけているところが異なる。注視点をマウスカーソルの位置で代替している。
  • CalDemo - Demonstrate use of calibration structure and associated routines.
  • ClutAnimDemo - CLUT (Color Look Up Table) を使ったアニメーション。
  • ContrastModulatedNoiseTheClumsyStyleDemo - Demonstrate creation of contrast modulated noise. Clumsy and inefficient, but works on old hardware.
  • ContrastModulatedNoiseTheElegantStyleDemo - Demonstrate creation of contrast modulated noise. Elegant and efficient, but needs recent hardware.
  • DatarecordingFromISCANDemo - ISCAN社の眼球運動測定装置を使ったデモ。非同期のデータ(タイムスタンピング)収集。
  • DatarecordingFromSerialPortDemo - シリアルポートからの非同期のデータ(タイムスタンピング)収集。
  • DelayedSoundFeedbackDemo - PsychPortAudio 関数を使って、latencyを操作することで、あえて音の再生時間を遅らせるデモ。
  • DotDemo - Screen('DrawDots) 関数を使ったランダムドットの運動刺激。
  • DKLDemo - DKL色空間のデモ。(DKL色空間に関する説明は、こちらのサイトが参考になります)
  • DrawFormattedTextDemo - DrawFormattedText 関数を使って、様々な書式の文字列を描画するデモ。
  • DrawHighQualityUnicodeTextDemo - アンチエイリアスされた日本語(ユニコード、2バイト文字)を呈示するデモ。
  • DrawManuallyAntiAliasedTextDemo - Manually anti-alias text for special purpose applications.
  • DrawMirroredTextDemo - 水平方向に鏡映された文字列のデモ。
  • DrawSomeTextDemo - DrawText 関数のシンプルなデモ。
  • DriftDemo - テクスチャーを使ったグレーティングの運動刺激。
  • DriftDemo2 - DriftDemo よりも洗練されたデモ。
  • DriftDemo3 - DriftDemo よりも洗練されたデモ(いくつかの制約あり)
  • DriftDemo4 - シェーダー機能をサポートしたハードウェア上で動く、かなり洗練されたグレーティングのデモ。
  • DriftDemo5 - アルファブレンディングおよびカラーマスキングを使った、2つのグレーティングの運動刺激。
  • DriftDemo6 - シェーダー機能をサポートしたハードウェア上で動く、DritDemo5の改良版。
  • DriftWaitDemo - Screen('CopyWindow')の代わりにScreen('DrawTexture')を使うデモ。
  • ErrorCatchDemo - try catch 文を使ってエラー処理を適切に行う方法。psychrethrow(psychlasterror);以下は実行されないことに注意。
  • ExpandingRingsDemo - GLSLシェーダーの機能を使った拡張する円を描画するデモ。
  • FastNoiseDemo - ノイズ刺激を高速に描画するデモ。
  • FastMaskedNoiseDemo - FastNoiseDemo とほとんど同じだが、のぞき穴を通して見ているような感じ。
  • FitGammaDemo - Demonstrate gamma fitting routine FitGamma. マスワークス社のOptimization Toolboxが別途必要。
  • FontDemo - フォントを変更するデモ。
  • GarboriumDemo - 運動するたくさんのガボール刺激。アルファブレンディング、DrawTextures関数を使用。
  • GazeContingentDemo - BubbleDemoとほとんど同じ。注視している場所の刺激を変化させる。注視点をマウスカーソルの位置で代替している。
  • GLSLCLUTAnimDemo - Demonstrates use of function moglClutBlit to perform CLUT animation with GLSL in an OS independent way.
  • GPGPUDemos - Demos for use of GPGPU computing with Psychtoolbox.
  • GratingDemo - グレーティング(+ガウシアンマスク)を描画する基本的なデモ。
  • IsomerizationsInDishDemo - Compute photoreceptor isomerizations for retina in a dish.
  • IsomerizationsInEyeDemo - Compute photoreceptor isomerizations for human eye.
  • KbDemo - KbCheck, KbName, KbWait のデモ。
  • KinectDemo - Capture and display video and depths data from a Kinect box.
  • Kinect3DDemo - Capture data from a Kinect box and view it as a textured 3D point-cloud or mesh.
  • LineStippleDemo - 様々な破線を描画。
  • MandelbrotDemo - Visualize the Mandelbrot fractal set by use of a GLSL procedural texture.
  • MouseTraceDemo - マウスカーソルの動きを追随して、別ウィンドウに出力。
  • MouseTraceDemo2 - More efficient tracking of mouse around screen drawing contour.
  • MouseTraceDemo3 - Like MouseTraceDemo2, but faster, and for multiple mice.
  • MouseTraceDemo4 - Like MouseTraceDemo2, but faster on modern hardware.
  • MovieDemo - 円が拡大縮小するアニメーションのデモ。
  • MovieDemos(SimpleMovieDemo) - 動画ファイルの再生(サブフォルダ)
  • MovingLineDemo - 垂直線分が水平方向に運動するデモ。ディスプレイがフラットかどうかを確認するためのもの。
  • NomogramDemo - Compute photoreceptor nomograms.
  • OldNewRecogExp - A full old-new recognition experiment.
  • OpenGL4MatlabDemos - (サブフォルダ)Demos on how to use MOGL OpenGL functions.
  • PanelFitterDemo - Demonstrate use of the builtin panel fitter.
  • ProceduralGaborDemo - a procedural texture shader (GPUによって実行される)を使って高速にガボール刺激を描画。
  • ProceduralGarboriumDemo - Same as GarboriumDemo, just with procedural gabor drawing.
  • ProceduralNoiseDemo - a procedural texture shader (GPUによって実行される)を使って高速にノイズパッチを描画。
  • PsychRTBoxDemo - 反応時間を測定するRTBoxを使用するデモ。
  • ReceivingTriggerFromSerialPortDemo - シリアルポートからの非同期のトリガーおよびタイムスタンピングの受け取り。
  • RenderDemo - Render CIE xyY as a color patch.
  • SadowskiDemo - Shows the "Sadowski" color afterimage effect.
  • SimpleSoundScheduleDemo - Simple demo for basic use of sound schedules with PsychPortAudio.
  • SimpleVoiceTriggerDemo - Demo of a simple voice trigger with PsychPortAudio.
  • SpriteDemo - Animates an image that follows the mouse.
  • StereoDemo - DrystalEyesなどで両眼立体視をさせるデモ。
  • StereoViewer - 両眼立体視のシンプルなデモ。
  • ValetonVanNorrenDemo - Exercise our code that implements the V-VN (1983) cone adaptation model.
  • VideoCaptureDemo - Simple demo for video capture functions.
  • VideoCaptureToMatlabDemo - Demo of returning live captured video to Octave or Matlab as image matrices.
  • VideoDelayLoopMiniDemo - Delayed visual feedback with controllable delay.
  • VideoDVCamCaptureDemo - Demonstrate video capture and recording from DV consumer cameras.
  • VideoMultiCameraCaptureDemo - Demo of time-synchronized high-perf capture and recording from multiple firewire cameras on Linux and OSX.
  • VideoOfflineCaptureDemo - Capture video into internal memory, then return it after stop of capture.
  • VideoRecordingDemo - Record captured video to movie files, possibly with audio.
  • VideoTextureExtractionDemo - Use video capture + some computer based tracking to extract textures of objects in video.
  • VignettingCorrectionDemo - Demonstrate how to do display devignetting aka per-pixel gain correction.