Before entering the topic, let's type 'Necker Cube' to the google search engine.  Then you can see following result.

 

 

 

If you are a quick witted, you already know what it is.

 

The Necker cube is kind of an optical illusion named by Louis Albert Necker (1786-1861). It is a simple wire-frame drawing of a cube, but interpreted differently for different users. People could perceive either the cube as a simple 2D image, 3D cube with the lower-left square as a frontal face, or 3D cube with the right-upper square as a frontal face.  

 

 

Posted by Cat.IanKang
,

Measuring Presence in Virtual Environments: A Presence Questionnaire  (1998)


  Presence is defined as the subjective experience of being in one place or environment, even when one is physically situated in another. As applied to a virtual environment (VE), presence refers to experiencing the computer-generated environment rather than the actual physical locale. Then, what factors influence presence? what aspects of the VE or remote environment affect how much presence is experienced?  


  Presence in a VE depends on one's attention shifting from the physical environment to the VE, but does not require the total displacement of attention from the physical locale. Humans experience varying degrees of presence in a physical locale since the human attention is divided between the physical world and the mental world. How sharply users focus their attention on the VE partially determines the extent to which they will become involved in that environment and how much presence they will report. 


1. Attention


  According to Fountaine (The experience of a sense of presence in intercultural and international encounters, 1992), presence depends on a matter of focus. When experiencing a novel environment, people are generally more aroused and broadly focused on the tasks to be performed or the situation to be experienced. Fountaine (1992) claims that this broad focus enables the individual to be broadly aware of the entire task environment and argue that the broad focus is necessary for a high level of presence in VEs. 


  An alternate view is that the experience of presence in a VE may have aspects similar to the concept of selective attention. Selective attention refers to the tendency to focus on selected information that is meaningful and of particular interest to the individual. 


2. Involvement


  Involvement is a psychological state experienced as a consequence of focusing one's energy and attention on a coherent set of stimuli or meaningfully related activities and events. In general, as users focus more attention on the VE stimuli, they become more involved in the VE experience. 


3. Immersion 


  Immersion is a psychological state characterized by perceiving oneself to be enveloped by, included in, and interacting with an environment that provides a continuous stream of stimuli and experiences. Factors that affect immersion include isolation from the physical environment, the perception of self-inclusion in the VE, natural modes of interaction and control, and perception of self-movement. A VE that effectively isolates users from their physical environment, thus depriving them of sensations provided by that environment, will increase the degree to which they feel immersed in the VE.


4. Presence 


  Both involvement and immersion are necessary for experiencing presence, and involvement in a VE depends on focusing one's attention and energy on a coherent set of VE stimuli. Fully immersed observers perceive that they are interacting directly, not indirectly or remotely, with the environment.
 

 

Posted by Cat.IanKang
,

What is cervico-ocular reflex?


   The cervico-ocular reflex (COR) is an ocular stabilization reflex that is elicited by rotation of the neck. It works in conjunction with the vestibulo-ocular reflex (VOR) and the optokinetic reflex (OKR) in order to prevent visual slip over the retina due to self-motion.


   The ocular stabilization reflexes serve to stabilize the visual image on the retina during head movements. Several sensory systems contribute to this process. The vestibulo-ocular reflex (VOR) moves the eyes on the basis of vestibular information opposite to the direction of head movement. It is mainly responsive to head movements with a high frequency. The optokinetic reflex (OKR) responds to visual motion stimulation. It directs the eyes in the same direction as the visual slip on the retina. The cervico-ocular reflex (COR) is a reflexive eye response that is elicited by rotation of the neck. The proprioception of muscles and the facet joints of the cervical spine form the receptor part of this reflex. In contrast to the VOR, both the OKR and COR respond optimally to head movements with a low velocity. In an optimal situation these stabilization reflexes work in conjunction at all head velocities in order to optimize the ocular response.


Does the COR change with age?


  The VOR and the OKR decrease with old age whereas the COR increases with age. 


Does the COR strength is influenced by the strength of the VOR or OKR?


  In order to investigate whether the COR strength is influenced by the strength of the other stabilization reflexes (VOR, OKR), an experiment was conducted. The experimental result found that there appeared to be a link between the properties of the COR and the VOR, but not between the OKR and the other reflexes (COR, VOR). 


  Let's take a look at the result more in detail. In the experiment, both the VOR and the COR correlated with age. The VOR decreases, and the COR increases. Their relationship seems to a negative relation: the higher the VOR, the lower the COR. Therefore, the strength of the COR can be partially predicted by the strength of the VOR. 


  In other words, the COR can compensate for loss of vestibular function.  When the gain of the VOR is lower than desired, the COR can be upregulated. The COR is most responsive at low velocities, whereas the VOR is responsive at high frequencies. However, even at low velocities the VOR often has a higher gain than the COR. Such a compensation can obviously only be effective in the range where the COR is active, and will therefore not influence performance at high frequencies. 


Reference


Kelders, W. P. A., et al. "Compensatory increase of the cervico‐ocular reflex with age in healthy humans." The Journal of physiology 553.1 (2003): 311-317.


Posted by Cat.IanKang
,

2018 SIGCHI

Cat.Diary 2018. 4. 30. 13:23

I presented my paper 'Flotation Simulation in a Cable-driven Virtual Environment - A Study with Parasailing' in CHI 2018. 


It was a great experience. 


I'm looking forward next CHI conference. 


Here are some photos of presentation and after-party. :)









'Cat.Diary' 카테고리의 다른 글

39 Things I Learned in My 30s  (0) 2015.08.10
fennec and cat..  (0) 2015.06.01
Posted by Cat.IanKang
,

Worthless... stored for future


------------------------------------------------------------------------------------


Voluntary and involuntary eye movements 



Introduction


  In order to acquire, fixate, and track the visual stimuli, human eyes move both voluntarily and involuntarily. Most of the eye movements are involuntary reflexes except for saccades, vergence shifts, and smooth pursuits. 


 

Voluntary eye movements


- Saccades: Voluntary eye movements occur in small jumps called saccades. Horizontal and vertical saccades use different neuronal circuitry. Horizontal saccades are initiated by neurons in the frontal eye fields of the cerebral cortex. Activation of the right frontal eye field will cause the eyes to look to the left and activation of the left frontal eye field will cause the eyes to look to the right. Vertical saccades are activated by diffuse areas of the cortex. 


  In terms of eye movement types, we can classify them as follows

- voluntary motion

- tracking (both voluntary and involuntary) 

- convergence.

- pupillary reactions

- control of the lens

 

They are mostly reflexes rather than voluntary movement.

 

 

Voluntary motion

 

  Voluntary eye movements occur in saccades. Saccade movement indicates very fast jump from one eye position to another whereas smooth pursuit indicates slow and smooth eye movement. Saccades serve as fixation, rapid eye movement, and the fast-phase of optokinetic nystagmus[1]. We call small jumps as microsaccades and they occur even when the eye is still. 


  Voluntary horizontal and vertical gaze conjugate different neuronal circuitry. The voluntary horizontal gaze is initiated by neurons in the frontal eye field of the cerebral cortex. Activation of the right frontal eye field will cause the eyes to look to the left and activation of the left frontal eye field will cause the eye to look to the right. The voluntary vertical gaze follows a different pathway. First of all, there is no single cortical center responsible for the vertical gaze. Instead, diffuse areas of the cortex project to the rostral interstitial nucleus of the Medial Longitudinal Fasciculus (MLF). 

 

Tracking 


  Most of our normal voluntary eye movements are not smooth, but rather occur in saccades. However, we can move our eye smoothly when tracking a moving object. This smooth pursuit utilizes a part of the vestibulo-ocular reflex (VOR) pathways and require a visual input to the occipital cortex in order to lock the eyes onto the target. 


  The fixation reflexes and optokinetic reflexes use the same path as smooth pursuit movements. Fixation reflex refers to the ability to fixate eyes on a moving target. It compensates the VOR to stabilize the eyes when the head tracks the moving target. The optokinetic reflex (or optokinetic nystagmus; OKN) is an involuntary fixation on moving objects.  


Vestibulo-ocular reflex





 

Footnote

[1] Optokinetic nystagmus:  

Posted by Cat.IanKang
,

Classification of Eye Movements based on their functions


Introduction


Our eyes move due to following reasons:


- To keep visual images as stable as possible on the retina.


- To change the direction of gaze.


- To prevent the fading of retinal images.


Stabilization of images 


  If our eyes fail to keep stable the visual images on the retina, it leads a motion smear. With the motion smear, we often fail to judge object location in space since the images we accepted become a blur. Vestibular-Ocular Reflex (VOR) and Optokinetic Nystagmus (OKN) are representative eye movements to stabilize images on the retinas.


 - Vestibular-Ocular Reflex (VOR): This reflex is to stabilize the gaze during head or body movement by producing eye movements in the direction opposite to head or body movement, thus preserving the image on the center of the retina. VOR can be classified into two phases: slow phases and fast phases. Most of VOR in natural cases is a slow phase which cancels the head rotation to keep the gaze steady. When a head movement carries the eye too far to handle with only slow phase, a fast phase which is a saccade recenters the eye past primary position to anticipate continued motion. (*Comatoes patients show slow phase but fast phase; eye travels to an edge and stays there.)


- Opto-Kinetic Nystagmus (OKN): This is also called the Opto-Kinetic Reflex (OKR), or Parade nystagmus, or Railway Nystagmus. OKN is elicited by periodic visual stimuli drifting across the subject's visual field. When we ride on a train, we can observe objects like trees coming closer to us. To preserve stable image on a retina, the eye tracks the objects in the direction of their movement until the eye at an extreme position in orbit (slow pursuit, Ocular-Following Response (OFR)). Then, the eye rapidly moves in opposite direction to look at a new object (fast, saccades movement). 


Changes in gaze direction


 If our interest moves from one to another, we also move our fovea to the new object of interest. In order to move and fixate the eye to a new target, we often use Saccades, Pursuits, and Vergences. 


- Saccade: This means a quick, simultaneous movement of both eyes from one to another position. (It also serve as a mechanism for the fast phase of optokinetic nystagmus as referred above.)


- Pursuit: This is also called smooth pursuit which allows the eyes to follow a moving object. Most people are not able to initiate the pursuit without a target. If a target moves greater than 30˚/s, catch-up saccades are often required in pursuit movement. Smooth pursuit is asymmetric: most humans tend to be better at horizontal than vertical pursuit and better at downward than upward pursuit. 


- Vergence: A vergence is the simultaneous movement of both eyes in opposite directions to obtain or maintain single binocular vision. To look at the nearby object, the eyes rotate towards each other (convergence), whereas to look at the object far away, the eyes rotate from each other (divergence). As opposed to the 500˚/s velocity of saccade movements, vergence movements are far slower, around 25˚/s.



Preventing the fading of retinal images


  When an image is stabilized on the retina by one means or another, it soon faded and disappears. A similar fading phenomenon is the Troxler's fading.  When you fixate your eyes to a particular point for a while, unchanging nearby images will fade away and disappear.  This fading phenomenon has been attributed to the adaptation of visual neurons. To avoid such disappearance, the nervous system carries out a mechanism called fixational eye movement, which continuously stimulates neurons in the early visual areas of the brain responding to transient stimuli. Miniature ocular movements are as follows:  


- Drift: Ocular drift is the fixational eye movement characterized by a smoother, slower, roaming motion of the eye when fixed on an object. The exact movement of ocular drift is often compared to Brownian motion, which is the random motion of a particle suspended in fluid as a result of its collision with the atoms and molecules that comprise that fluid. Ocular drifts occur incessantly during intersaccadic fixation. The frequency of ocular drifts is a range of 20 to 40 Hz. 


- Ocular Micro-Tremor (OMT): OMT is a constant, high frequency, low amplitude eye tremor occurring at frequencies in a range of 40 to 100 Hz. In a coma, there is a loss of high-frequency components of tremor and the extent of this reduction is related to the patient's prognosis. 


Microsaccade: This is also known as "flicks" which is saccades, involuntarily, produced during the fixation periods.  It is the largest and fastest within the fixational eye movements. Like saccades, microsaccades are usually binocular, and conjugate movements with comparable amplitudes and directions in both eyes. The only way to distinguish microsaccades from saccades is by the time in which they happen: during fixation. Regular saccades are produced during the active exploration of the eye, during non-fixation tasks whereas microsaccades are only produced during fixation tasks. 


  Note that the existence of these movements has been known since the 1950s, only recently their functions have started to become clear. 


References

 

https://www.dartmouth.edu/~rswenson/NeuroSci/chapter_8D.html

https://en.wikipedia.org/wiki/Saccade

https://en.wikipedia.org/wiki/Nystagmus

http://schorlab.berkeley.edu/passpro/Gaze%20STABILIZAT4.pdf

https://en.wikipedia.org/wiki/Vestibulo%E2%80%93ocular_reflex

https://www.slideshare.net/GauriSShrestha/gaze-shifting-gaze-holding-ocular-motor-functions

https://www.dartmouth.edu/~rswenson/NeuroSci/chapter_8D.html

Posted by Cat.IanKang
,

vvouch: 보증하다

tome : 두꺼운 책

quench: 풀다, 해결해주다

I seek knowledge, which I value more than life itself. I've a thirst no dusty old tomes can quench. 


magnum opus: 작가의 대표작

I wish to see the Nilfgaardian invasion with my own eyes, understand it, and record it all in my chronicle, my magnum opus. 


trinket: 장신구

garment: 의복

Rape and cruelty are details of no import to the war's course. Trinkets on the garment of conlict, one might say.  


by trade: 직업상

A simple innkeep by trade, but a true maestro when it comes to gwent. 


lift the spirit: 힘이나게 하다.

It'll lift your spritis.


haggard: 초췌한

You look haggard. It's just a few drops to improve your mood. A little alcohol's never hurt a soul. 


cut to the chase: 본론으로 들어가다

Can we cut to the chase?

Let's cut to the chase. 


vagrant: 부랑자

As a vagrant I deserve no explanation. 


garrison: 수비대, 주둔지

A Nilfgaardian scout from the local garrison saw her. 


terse: 간결한

Had a terse exchange with the garrison commander and raced off. 



missive: 길거나 공식적인 편지 , 서한

heed: 주의를 기울이다.

tribunal: 재판소, 법원

scribbled: 아무렇게나 갈겨쓴

replenish: 다시 회복하다, 비축하다, 연료를 보급하다

replenish: 질문 심문 의문

fierce: 사나운, 험악한

sloth: 나무늘보

quarrel: 언쟁, 말다툼

brooding: 음울한

nothing to sneeze at : 가볍게 볼 수 없는, 만만치 않은

knack: 재주, 요령 

sod it : 제기랄! , 빌어먹을!

feal-bitten: 사소한

slob: 게으름뱅이

composed: 담담하다, 침착하다

hideout: 은신처

helmsman: 조타수

parrot: 앵무새

tarry: 지체하다

venture: 모험하다, ~위험을 무릎쓰다

at any rate: 어쨌든

lass: 아가씨

natter: 수다를떨다, ~에게 재잘거리다

tome: 두꺼운 책

decipher: 해독하다.

woeful: 슬픈, 비통한

lament: 통탄하다, 한탄하다

commemorating: 중요한 사건을 기념하다




Posted by Cat.IanKang
,

0. Requirements


 Sample code named 'D3D12HelloTriangle' which was downloaded in lecture 1. (Link)


1. Intro


   In the file 'D3D12HelloTriangle.cpp', we can find many functions. Among them, following four functions form a basic framework: 


- Oninit(): initialize the directx12 rendering environment. 

- OnUpdate(): update frame-based values such as animation matrix. 

- OnRender(): render the scene.

- OnDestroy(): release resources.


 Let's look at the components one by one. 



2. Oninit function


  Oninitfunction contains two additional sub-functions. LoadPipeline() and LoadAssets(). Let's take a closer look at the Loadpipeline() function. 


1) Loadpipeline()

1-1) Enabling the debug layer

  First, the code enables the debug layer by using Microsoft::WRL::ComPtr. 


1-2) CreateFactory

  Next, create a DXGI factory. It is an object that is capable of creating other DXGI objects. 


1-3) CreateDevice

  Then, DXGI device is created. To create device, adapter, and feature level is required. In the sample code, two types of adapter (warpAdapter and hardwareAdapter) and feature level 11 are used. 


1-4) Command Queue

  Command queue is the ordering of the commands. In the D3D11, both the immediate context and deferred context are supported. However, the immediate context is no longer supported by D3D12,  In the concept of deferred context, commands are queued up and run at a later time. For example, in multi-thread application, each threads can generate commands in parallel, and the commands are mounted on an API object called 'Command Queue'. We call it as a command parallelism. 


  Let's take a closer look at command queues and command lists. In D3D12, the process of transferring commands differes from D3D11 in three important ways: (For more details, you can visit the page: (Link) https://msdn.microsoft.com/en-us/library/windows/desktop/dn899114(v=vs.85).aspx


 1. Elimination of the immediate context. This enables multi-threading. 

 2. Apps own how rendering calls are grouped into GPU work items. This enables re-use.

 3. Apps explicitly control when work is transferred to the GPU. This enables item 1 and 2. 


   As mentioned above, D3D12 no longer supports immediate context. Instead, to render, command lists are used. A command list looks similar to the immediate context which is used in D3D11. Actually, they are similar. They contains commands such as drawing primitives or changing rendering state. However, command lists can be recorded to command queue concurrently, which takes advantage of multi-core processors. If the same process repeats over and over, a command list can be executed multiple times. 






'Cat.Storage > SubCat.Practice' 카테고리의 다른 글

[Directx12] 1. Settings  (0) 2017.04.13
[Matlab] Define 2D sinc() function  (0) 2016.09.21
C++ binary read/write sample  (0) 2016.03.15
D3D11 Rendertarget setting example.  (0) 2016.01.06
Magnitude and Phase Information of the FFT  (0) 2015.10.10
Posted by Cat.IanKang
,