<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Straw lab</title>
 <link href="http://strawlab.org/atom.xml" rel="self"/>
 <link href="http://strawlab.org/"/>
 <updated>2017-08-27T09:31:44+00:00</updated>
 <id>http://strawlab.org/</id>
 <author>
   <name>Andrew Straw</name>
   <email>andrew.straw@imp.ac.at</email>
 </author>

 
 <entry>
   <title>Position - data-driven modeling of spatial cognition in Drosophila and zebrafish</title>
   <link href="http://strawlab.org/2017/08/21/scientist-quantitative-animal-behavior"/>
   <updated>2017-08-21T00:00:00+00:00</updated>
   <id>http://strawlab.org/2017/08/21/scientist-quantitative-animal-behavior</id>
   <content type="html">&lt;p&gt;Applications are invited from highly motivated researchers for a PhD or
postdoctoral position (TV-L E13) available immediately in the Department of
Animal Physiology, Neurobiology and Behavior, in the group of Prof. Dr. Andrew
Straw, at University of Freiburg, Germany. Initial appointment is one year, with
flexible start date and opportunity for renewal.&lt;/p&gt;

&lt;p&gt;The project makes use of &lt;a href=&quot;https://strawlab.org/freemovr&quot;&gt;recently developed virtual reality
technology&lt;/a&gt; to study spatial cognition in
&lt;em&gt;Drosophila&lt;/em&gt; and zebrafish. The primary goal is to develop biologically relevant
models of neural processing and behavior during visual tasks involving spatial
cognition and awareness. Highly-automated data collection systems will be used
to collect large datasets in which animals perform tasks designed to elicit
spatial learning and to quantify behavioral contributions from visual reflexes
and higher-order processes. The work entails adapting the technology to perform
the required experiments, designing and running the experiments, performing data
analysis, and writing of scientific papers on the results. The work will
quantify the contributions of specific circuits, algorithms, and molecules
important for visual and spatial cognition behaviors. Some teaching of data
science is required.&lt;/p&gt;

&lt;p&gt;Applicants with strong mathematical, engineering or computer science backgrounds
are encouraged to apply.&lt;/p&gt;

&lt;p&gt;Our lab collaborates with the following groups at the University of Freiburg:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.joschka-boedecker.de&quot;&gt;Jun-Prof. Dr. Joschka Boedecker&lt;/a&gt; on machine-learning based approaches
to vision and spatial cognition making use of techniques such as inverse
reinforcement learning and imitation learning.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.bio1.uni-freiburg.de/ebio/driever-lab/driever-cv&quot;&gt;Prof. Dr. Wolfgang Driever&lt;/a&gt; on neural circuits and behavior in zebrafish.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.bio1.uni-freiburg.de/tierphys-en/wittlinger-lab/wittlinger-lab-en&quot;&gt;Dr. Matthias Wittlinger&lt;/a&gt; on spatial cognition in insects.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.bio1.uni-freiburg.de/tierphys-en/reiff-lab/reiff-lab-en&quot;&gt;Prof. Dr. Dierk Reiff&lt;/a&gt; on &lt;em&gt;Drosophila&lt;/em&gt; visual circuits&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://lmb.informatik.uni-freiburg.de/people/brox/index.en.html&quot;&gt;Prof. Dr. Thomas
Brox&lt;/a&gt; on
computer vision, video analysis and deep learning.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Andrew Straw’s lab is situated within the Institute of Biology I (Zoology) at
the University of Freiburg and is affiliated with the Bernstein Center Freiburg.
Substantial computational resources are available.&lt;/p&gt;

&lt;p&gt;Interested candidates should send a research statement, along with a CV
including publications, to Prof. Dr. Andrew Straw
(&lt;a href=&quot;mailto:straw@bio.uni-freiburg.de&quot;&gt;straw@bio.uni-freiburg.de&lt;/a&gt;).
The names and contact details of two or more references should be provided.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>FreemoVR published</title>
   <link href="http://strawlab.org/2017/08/21/freemovr-paper"/>
   <updated>2017-08-21T00:00:00+00:00</updated>
   <id>http://strawlab.org/2017/08/21/freemovr-paper</id>
   <content type="html">&lt;p&gt;Please visit the &lt;a href=&quot;/freemovr&quot;&gt;FreemoVR page&lt;/a&gt; for more information, including press info.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Animal Tracking and VR Bootcamp, 23-27 Oct 2017</title>
   <link href="http://strawlab.org/2017/08/16/animal-tracking-and-vr-bootcamp"/>
   <updated>2017-08-16T00:00:00+00:00</updated>
   <id>http://strawlab.org/2017/08/16/animal-tracking-and-vr-bootcamp</id>
   <content type="html">&lt;div style=&quot;text-align: center; font-size: 1.6rem;&quot;&gt;
&lt;p&gt;Animal Tracking and VR Bootcamp&lt;/p&gt;
&lt;p&gt;23-27 Oct 2017&lt;/p&gt;
&lt;p&gt;Hauptstr. 1, University of Freiburg, 79104 Freiburg Germany&lt;/p&gt;
&lt;p&gt;Contact: &lt;a href=&quot;mailto:straw@bio.uni-freiburg.de&quot;&gt;Andrew Straw&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;The workshop is full to capacity. No further applications can be accepted.
Please contact &lt;a href=&quot;mailto:straw@bio.uni-freiburg.de&quot;&gt;Andrew Straw&lt;/a&gt; to place your
name on the waiting list in case of cancellation or to register your interest in
a possible future workshop.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The goal of the workshop is to train participants in the theory and practice of:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;realtime image processing&lt;/li&gt;
  &lt;li&gt;multi-camera 3D realtime tracking&lt;/li&gt;
  &lt;li&gt;perspective correct virtual reality for freely moving animals&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;An emphasis on understanding the principles and using open source tools will be
made. Ultimately, participants should come away with knowledge of how to use
available software and hardware to run VR experiments in their own lab.&lt;/p&gt;

&lt;p&gt;Instructors:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://strawlab.org/&quot;&gt;Andrew Straw&lt;/a&gt; (See &lt;a href=&quot;https://strawlab.org/freemovr&quot;&gt;FreemoVR&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://cogneuro.bio.lmu.de/people/group-members/delgrosso/index.html&quot;&gt;Nicholas Del Grosso&lt;/a&gt; (See &lt;a href=&quot;http://www.biorxiv.org/content/early/2017/07/10/161232&quot;&gt;“Virtual Reality system for freely-moving rodents”&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Guest lecturers:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://ramdya-lab.epfl.ch&quot;&gt;Pavan Ramdya (EPFL)&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.biology.lu.se/emily-baird&quot;&gt;Emily Baird (Lund)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Who should attend:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The course is aimed at graduate students, postdocs and PIs.&lt;/li&gt;
  &lt;li&gt;Some participants will already have some experience in animal tracking,
virtual reality, or both, but we also welcome motivated beginners.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A large lab space equipped with software and hardware from the lab of Andrew
Straw at the Institute of Biology I, University of Freiburg will be available
during the workshop. Nicholas Del Grosso (LMU Munich) will be co-instructor for
the week. In the lab of Anton Sirota, Del Grosso led the construction of a
free-moving rodent VR system and he has substantial experience teaching
programming. Together with the Drosophila and zebrafish experience of the Straw
Lab and the rodent experience of Del Grosso, the workshop should be of
substantial interest to a wide range of behavioral- and neuro-scientists.
(During the workshop itself, experiments will primarily be on Drosophila, with
the possibility of some fish experiments depending on interest.)&lt;/p&gt;

&lt;p&gt;There is a 300 EUR fee, which will be used for costs associated with the
co-instructor and additional guest lecturers. (If the registration fee is
prohibitive, we may be able to waive it. Please ask.) Participants need to pay for
their own hotel, food and travel. According to our research, we expect hotel
costs to be about 80 Euros per night.&lt;/p&gt;

&lt;p&gt;The workshop will be small - we will limit to a maximum of 10 participants. If
successful, we may run the workshop again next year.&lt;/p&gt;

&lt;p&gt;Looking forward to seeing you in Freiburg in late October!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Postdoc - Enhancers and Brains</title>
   <link href="http://strawlab.org/2016/07/14/postdoc-enhancers-and-brains"/>
   <updated>2016-07-14T00:00:00+00:00</updated>
   <id>http://strawlab.org/2016/07/14/postdoc-enhancers-and-brains</id>
   <content type="html">&lt;p&gt;Postdoc opening: enhancers and brains&lt;/p&gt;

&lt;p&gt;Applications are invited from highly motivated researchers for a postdoctoral
position (TV-L E13) available immediately in the Department of Animal
Physiology, Neurobiology and Behavior, in the group of Andrew Straw, at
University of Freiburg, Germany. Initial appointment is one year, with flexible
start date and opportunity for renewal.&lt;/p&gt;

&lt;p&gt;The project makes use of two genomic-scale enhancer expression datasets from
&lt;span class=&quot;italic&quot;&gt;Drosophila&lt;/span&gt; to make testable predictions relating
enhancers to brain connectivity, functional properties, developmental
specification, and evolutionary history. The work will build from &lt;a href=&quot;http://dx.doi.org/10.1016/j.cub.2016.05.052&quot;&gt;a recent lab
publication&lt;/a&gt; (Panser et al., 2016,
“Automatic segmentation of &lt;span class=&quot;italic&quot;&gt;Drosophila&lt;/span&gt; neural
compartments using GAL4 expression data reveals novel visual pathways” &lt;span class=&quot;italic&quot;&gt;Current Biology&lt;/span&gt; and
&lt;a href=&quot;https://strawlab.org/braincode&quot;&gt;strawlab.org/braincode&lt;/a&gt;). Candidates must have
a strong background in computational analysis of biological datasets. Experience
with enhancer biology, neural connectivity, and &lt;span class=&quot;italic&quot;&gt;Drosophila&lt;/span&gt; genetics is also desirable. Applicants should
be committed to applying rigorous computational tools to discover strong
correlations between enhancer expression patterns and collaborating with
experimental biologists to move from ideas to evidence.&lt;/p&gt;

&lt;p&gt;Andrew Straw’s lab is situated within the Institute of Biology I (Zoology) at
the University of Freiburg and is affiliated with the Bernstein Center Freiburg.
Substantial computational resources are available.&lt;/p&gt;

&lt;p&gt;Interested candidates should send a research statement, along with a CV
including publications, to Prof. Dr. Andrew Straw
(&lt;a href=&quot;mailto:straw@bio.uni-freiburg.de&quot;&gt;straw@bio.uni-freiburg.de&lt;/a&gt;).
The names and contact details of two or more references should be provided.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Moving to the University of Freiburg, Germany</title>
   <link href="http://strawlab.org/2016/01/20/moving-to-freiburg"/>
   <updated>2016-01-20T00:00:00+00:00</updated>
   <id>http://strawlab.org/2016/01/20/moving-to-freiburg</id>
   <content type="html">&lt;p&gt;I have just accepted a position as professor in the &lt;a href=&quot;https://www.bio1.uni-freiburg.de/tierphys-en/straw-lab&quot;&gt;Department of Animal
Physiology, Neurobiology and
Behavior&lt;/a&gt; at the
&lt;a href=&quot;https://www.uni-freiburg.de/&quot;&gt;University of Freiburg, Germany&lt;/a&gt;. While I will
miss my colleagues in Vienna, I am excited about the opportunities in Freiburg
and look forward to the next steps.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Neuron catalog software released</title>
   <link href="http://strawlab.org/2015/03/02/neuron-catalog-software-released"/>
   <updated>2015-03-02T00:00:00+00:00</updated>
   <id>http://strawlab.org/2015/03/02/neuron-catalog-software-released</id>
   <content type="html">&lt;p&gt;In preparation for the &lt;a href=&quot;http://www.genetics-gsa.org/drosophila/2015/pages/workshoplisting.shtml#sess306&quot;&gt;“Harnessing Community Resources for Drosophila
Neuroscience”
workshop&lt;/a&gt;
organized by Cahir O’Kane and David Osumi-Sutherland at the 2015 GSA
Annual Drosophila Research Conference that will take place in a few
days, we are releasing software for small groups (e.g. a lab) to
collaborate on circuit mapping.&lt;/p&gt;

&lt;p&gt;The software is called &lt;code&gt;neuron-catalog&lt;/code&gt; and here are some online
resources:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Home page: &lt;a href=&quot;/neuron-catalog&quot;&gt;strawlab.org/neuron-catalog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Download: &lt;a href=&quot;https://github.com/strawlab/neuron-catalog/releases&quot;&gt;Release page&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Project page on github:
&lt;a href=&quot;https://github.com/strawlab/neuron-catalog&quot;&gt;github.com/strawlab/neuron-catalog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Demonstration: &lt;a href=&quot;https://neuron-catalog.meteor.com&quot;&gt;neuron-catalog demonstration&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Documentation: &lt;a href=&quot;https://neuron-catalog.readthedocs.org/en/latest&quot;&gt;Read The Docs&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Online forum: &lt;a href=&quot;https://gitter.im/strawlab/neuron-catalog&quot;&gt;gitter.im/strawlab/neuron-catalog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</content>
 </entry>
 
 <entry>
   <title>Fly figure and background responses from a single pathway?</title>
   <link href="http://strawlab.org/2014/11/13/figure-background-single-pathway"/>
   <updated>2014-11-13T00:00:00+00:00</updated>
   <id>http://strawlab.org/2014/11/13/figure-background-single-pathway</id>
   <content type="html">&lt;p&gt;&lt;em&gt;Drosophila&lt;/em&gt; vision is an exciting field right now – the latest
genetic technologies are enabling rapid progress in understanding
vision from biophysics to behavior. Today, &lt;em&gt;Current Biology&lt;/em&gt; published
&lt;a href=&quot;http://www.cell.com/current-biology/abstract/S0960-9822(14)01351-7&quot;&gt;our paper&lt;/a&gt; showing that
a single motion detecting circuit may be sufficient to mediate
multiple behavioral responses. This is surprising because in the fly,
two important behaviors – object fixation and wide-field stabilization
– are widely thought to result from circuitry with elements dedicated
to the particular tasks. Contrary to this view, we show that turns
toward objects can result from the same motion processing pathway
already thought to underlie wide-field stabilization. Consequently, we
think this work creates a new “null hypothesis” – subsequent work will
need to show behavioral responses to visual objects not predicted by
this model to argue for the involvement of additional circuitry. This
work also has interesting parallels to the circuitry and behavior of
mammalian eye movement.&lt;/p&gt;

&lt;p&gt;Our paper is both experimental and theoretical in nature. We performed
experiments on genetically modified flies and showed that intact
motion-processing T4 and T5 cells are necessary for stripe fixation at
high gain and in figure ground discrimination tasks. With this
experimental result, we implemented both a simple, phenomenological
model and a physiologically more realistic model that predict stripe
fixation in which the visual system consists of a single,
motion-sensitive pathway. Remarkably, these simple models have no
explicit object detection or small-field selectivity. We show that a
particular configuration of one of our models is formally equivalent
to the classical model published by &lt;a href=&quot;http://www.ncbi.nlm.nih.gov/pubmed/4718020&quot;&gt;Poggio and Reichardt in
1973&lt;/a&gt;. The models also
make non-obvious predictions of stripe-fixation behavior. One such
prediction is fixation in front of a moving background, and when we
tested this prediction experimentally, we found qualitative agreement
between both models and behavioral results on tethered flies.&lt;/p&gt;

&lt;p&gt;We hope that by including the full source code of our models -
including &lt;a href=&quot;/asymmetric-motion&quot;&gt;an online version of the phenomenological
model&lt;/a&gt; - others can easily reproduce our work and,
for example, predict fly physiological and behavioral responses to
arbitrary visual stimuli.&lt;/p&gt;

&lt;p&gt;The full reference is:&lt;/p&gt;

&lt;div class=&quot;citation&quot;&gt;
  Fenk LM*, Poehlmann A*, Straw AD (* equal contribution) (2014)
  &lt;strong&gt;Asymmetric processing of visual motion
  for simultaneous object and background responses.&lt;/strong&gt;
  &lt;i&gt;Current Biology&lt;/i&gt;. &lt;a href=&quot;http://www.cell.com/current-biology/abstract/S0960-9822(14)01351-7&quot;&gt;doi:10.1016/j.cub.2014.10.042&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;Download and read more about the models from
&lt;a href=&quot;http://strawlab.org/asymmetric-motion/&quot;&gt;strawlab.org/asymmetric-motion/&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>lab portrait, summer 2014</title>
   <link href="http://strawlab.org/2014/07/22/lab-photo"/>
   <updated>2014-07-22T00:00:00+00:00</updated>
   <id>http://strawlab.org/2014/07/22/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;/assets/lab-picture-2014-07-22-fullsize.jpg&quot;&gt;&lt;img src=&quot;/assets/lab-picture-2014-07-22.jpg&quot; width=&quot;640&quot; height=&quot;480&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>the Fly Mind Altering Device</title>
   <link href="http://strawlab.org/2014/05/25/flymad"/>
   <updated>2014-05-25T00:00:00+00:00</updated>
   <id>http://strawlab.org/2014/05/25/flymad</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://flymad.strawlab.org/images/fly_under_laser.jpg&quot; width=&quot;600&quot; height=&quot;258&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Our FlyMAD system is online! This is a system for targeting freely
walking flies (&lt;em&gt;Drosophila&lt;/em&gt;) with lasers. By steering the optical path
of the laser using large diameter mirrors, it also enables
simultaneous imaging of the target region. This enables
through-the-mirrors (TTM) targeting of specific body parts. Together,
all this allows rapid thermo- and opto- genetic manipulation of the
fly nervous system.&lt;/p&gt;

&lt;p&gt;Read the &lt;a href=&quot;http://www.nature.com/doifinder/10.1038/nmeth.2973&quot;&gt;paper&lt;/a&gt;, visit the &lt;a href=&quot;http://flymad.strawlab.org&quot;&gt;website&lt;/a&gt;, watch the &lt;a href=&quot;http://youtu.be/SDIEBgtSSJk&quot;&gt;video&lt;/a&gt;, and join the &lt;a href=&quot;https://groups.google.com/forum/#!forum/flymad&quot;&gt;email list&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The full reference is:&lt;/p&gt;

&lt;p&gt;Bath DE✱, Stowers JR✱, Hörmann D, Poehlmann A, Dickson BJ, Straw AD
  (✱ equal contribution) (2014) FlyMAD: Rapid thermogenetic control of
  neuronal activity in freely-walking Drosophila. &lt;a href=&quot;http://www.nature.com/doifinder/10.1038/nmeth.2973&quot;&gt;&lt;em&gt;Nature
  Methods&lt;/em&gt;&lt;/a&gt;. doi 10.1038/nmeth.2973&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Karin Panser wins first prize in Huygens Image Contest 2013</title>
   <link href="http://strawlab.org/2014/05/23/karin-panser-wins-prize"/>
   <updated>2014-05-23T00:00:00+00:00</updated>
   <id>http://strawlab.org/2014/05/23/karin-panser-wins-prize</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/assets/karin_panser_huygens_chaoptin.jpg&quot; width=&quot;800&quot; height=&quot;800&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Karin Panser from the lab was the winner in the SVI ‘Huygens Image
Contest’ 2013 with a beautiful picture of the fly eye. Her image was
&lt;a href=&quot;http://www.newscientist.com/article/dn24891-shimmering-colour-in-a-fruit-flys-eye.html#.Ut47rZA1hcZ&quot;&gt;New Scientist’s picture of the
day&lt;/a&gt;
and the &lt;a href=&quot;http://www.labtimes.org/editorial/e_486.lasso&quot;&gt;Lab Times&lt;/a&gt;
also covered it.&lt;/p&gt;

&lt;p&gt;Well-deserved congratulations to Karin!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>lab portrait, autumn 2013</title>
   <link href="http://strawlab.org/2013/09/25/lab-photo"/>
   <updated>2013-09-25T00:00:00+00:00</updated>
   <id>http://strawlab.org/2013/09/25/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/assets/lab-picture-20130925.jpg&quot; width=&quot;800&quot; height=&quot;340&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Andrew Straw, Karin Panser, Lisa Fenk, Sayanne Soselisa, Dorthea Hörmann, John Stowers, Etienne Campione, Andreas Poehlmann, Katje Hellekes&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>lab portrait, spring 2013</title>
   <link href="http://strawlab.org/2013/04/19/lab-photo"/>
   <updated>2013-04-19T00:00:00+00:00</updated>
   <id>http://strawlab.org/2013/04/19/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/assets/lab-picture-20130419.jpg&quot; width=&quot;800&quot; height=&quot;323&quot; /&gt;&lt;/p&gt;

&lt;p&gt; Andreas Poehlmann, Andrew Straw, Karin Panser, John Stowers, Lisa
Fenk, Nemanja Saric, Katja Hellekes&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>lab portrait, spring 2012</title>
   <link href="http://strawlab.org/2012/03/12/lab-photo"/>
   <updated>2012-03-12T00:00:00+00:00</updated>
   <id>http://strawlab.org/2012/03/12/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;/assets/lab-picture-20120312-fullsize.jpg&quot;&gt;&lt;img src=&quot;/assets/lab-picture-20120312.jpg&quot; width=&quot;600&quot; height=&quot;457&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt; Most of the lab at the Vienna City Hall after the awards ceremony
for the WWTF Cognitive Sciences grant. &lt;/p&gt;

&lt;p&gt; Back row: Andreas Pöhlmann, Lisa Fenk, Karin Panser. Front row:
Andrew Straw (with post-doc in training), John Stowers, Alexander
Prochaska, Mareike Forthmann. (Unfortunately Lucile was out of
town.)&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>lab portrait, autumn 2011</title>
   <link href="http://strawlab.org/2011/11/29/lab-photo"/>
   <updated>2011-11-29T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/11/29/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;/assets/lab-picture-20111129-fullsize.jpg&quot;&gt;&lt;img src=&quot;/assets/lab-picture-20111129.jpg&quot; width=&quot;600&quot; height=&quot;450&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt; From left to right: Andrew Straw, Mareike Forthmann and Karin Panser.  &lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>high-level visual behavior grant funded by the WWTF</title>
   <link href="http://strawlab.org/2011/11/10/high-level-visual-behavior-grant-funded"/>
   <updated>2011-11-10T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/11/10/high-level-visual-behavior-grant-funded</id>
   <content type="html">&lt;p&gt;We just received good news from the Wiener Wissenschafts-, Forschungs-
und Technologiefonds (WWTF, in English this translates to the Viennese
Science, Research, and Technology Fund). Our grant propsal
“Algorithms, neural circuitry, and genetics of high-level visual
behavior in the fly” was &lt;a href=&quot;http://wwtf.at/programmes/ci/index.php?lang=EN#c1154h&quot;&gt;selected for
funding&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Together with the ERC Starting Grant FlyVisualCircuits we received a
few months ago, the lab is off to a great start.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>augmented reality - computing the OpenGL projection matrix from intrinsic camera parameters</title>
   <link href="http://strawlab.org/2011/11/05/augmented-reality-with-OpenGL"/>
   <updated>2011-11-05T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/11/05/augmented-reality-with-OpenGL</id>
   <content type="html">&lt;h1 id=&quot;summary&quot;&gt;Summary&lt;/h1&gt;

&lt;p&gt;Here I describe how the
&lt;a href=&quot;http://www.robots.ox.ac.uk/~vgg/hzbook/&quot;&gt;Hartley-Zisserman&lt;/a&gt; (HZ)
pinhole camera model differs from the OpenGL display pipeline and how
to build an OpenGL projection matrix directly from the intrinsic
camera parameter matrix of HZ. What is particular about this
exposition is that I do this by calculating the matrix elements
directly from the camera parameters rather than calling the
glProjection() function. This allows for a more general camera model
including pixels with skew. I also include the algebraic derivation
(as a &lt;a href=&quot;http://sympy.org&quot;&gt;sympy&lt;/a&gt; script) so you can follow my logic
exactly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update (30 Jan 2013):&lt;/strong&gt; The various implementations of the
coordinate transform pipeline used in this post are available
&lt;a href=&quot;https://github.com/strawlab/opengl-hz&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update (26 Dec 2014):&lt;/strong&gt; I added a few more recent references at
the end.&lt;/p&gt;

&lt;ul id=&quot;markdown-toc&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;#summary&quot; id=&quot;markdown-toc-summary&quot;&gt;Summary&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#note-about-image-coordinates&quot; id=&quot;markdown-toc-note-about-image-coordinates&quot;&gt;Note about image coordinates&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#the-opengl-projection-matrix-from-hz-intrinsic-parameters&quot; id=&quot;markdown-toc-the-opengl-projection-matrix-from-hz-intrinsic-parameters&quot;&gt;The OpenGL projection matrix from HZ intrinsic parameters&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#comparison-with-the-opencv-camera-calibration&quot; id=&quot;markdown-toc-comparison-with-the-opencv-camera-calibration&quot;&gt;Comparison with the OpenCV camera calibration&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#experimental-verification&quot; id=&quot;markdown-toc-experimental-verification&quot;&gt;Experimental verification&lt;/a&gt;    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#output-of-cpu-implementations&quot; id=&quot;markdown-toc-output-of-cpu-implementations&quot;&gt;Output of CPU implementations&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#output-of-opengl-implementation&quot; id=&quot;markdown-toc-output-of-opengl-implementation&quot;&gt;Output of OpenGL implementation&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#download-these-files&quot; id=&quot;markdown-toc-download-these-files&quot;&gt;Download these files&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#remaining-work-compensating-for-camera-distortion-not-described-by-the-pinhole-model&quot; id=&quot;markdown-toc-remaining-work-compensating-for-camera-distortion-not-described-by-the-pinhole-model&quot;&gt;Remaining work: compensating for camera distortion not described by the pinhole model&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#references&quot; id=&quot;markdown-toc-references&quot;&gt;References&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1 id=&quot;note-about-image-coordinates&quot;&gt;Note about image coordinates&lt;/h1&gt;

&lt;p&gt;In both OpenGL window coordinates and HZ image coordinate systems,
(0,0) is the lower left corner with X and Y increasing right and up,
respectively. In a normal image file, the (0,0) pixel is in the upper
left corner. We have code paths to deal with this in one of two ways:
first, we can draw our images upside down, so that all the pixel-based
coordinate systems are the same. This is the code path used when
“window_coords=’y up’”. Second, we can keep the images right side up
and modify the projection matrix so that OpenGL will generate window
coordinates that compensate for the flipped image coordinates. In this
“window_coords=’y down’” path, the generated OpenGL Y window
coordinates are (height-y).&lt;/p&gt;

&lt;h1 id=&quot;the-opengl-projection-matrix-from-hz-intrinsic-parameters&quot;&gt;The OpenGL projection matrix from HZ intrinsic parameters&lt;/h1&gt;

&lt;p&gt;Enough of the preliminaries. We calculate the OpenGL Projection matrix
when window_coords==’y up’ to be:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;[2*K00/width,  -2*K01/width,   (width - 2*K02 + 2*x0)/width,                            0]
[          0, -2*K11/height, (height - 2*K12 + 2*y0)/height,                            0]
[          0,             0, (-zfar - znear)/(zfar - znear), -2*zfar*znear/(zfar - znear)]
[          0,             0,                             -1,                            0]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;With window_coords==’y down’, we have:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;[2*K00/width, -2*K01/width,    (width - 2*K02 + 2*x0)/width,                            0]
[          0, 2*K11/height, (-height + 2*K12 + 2*y0)/height,                            0]
[          0,            0,  (-zfar - znear)/(zfar - znear), -2*zfar*znear/(zfar - znear)]
[          0,            0,                              -1,                            0]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Where Knm is the (n,m) entry of the 3x3 HZ instrinsic camera
calibration matrix K. (K is upper triangular and scaled such that the
lower-right entry is one.) Width and height are the size of the camera
image, in pixels, and x0 and y0 are the camera image origin and are
normally zero. Znear and zfar are the standard OpenGL near and far
clipping planes, respectively.&lt;/p&gt;

&lt;p&gt;This is the cut-and-paste output of our sympy script
&lt;a href=&quot;https://gist.github.com/1341472#file_projection_math.py&quot;&gt;projection_math.py&lt;/a&gt;. The
approach is that we enter the operations of OpenGL vertex
transformation pipeline and the HZ projection model into sympy, a
computer algebra system (CAS). We have sympy solve for the OpenGL
projection matrix so that the resulting pixel coordinate is the same
for both the HZ camera model and the OpenGL pipeline. See the script
for the implementation details. Of course this could be done by hand
but is tedious and prone to mistakes.&lt;/p&gt;

&lt;h1 id=&quot;comparison-with-the-opencv-camera-calibration&quot;&gt;Comparison with the OpenCV camera calibration&lt;/h1&gt;

&lt;p&gt;Although I have not directly used &lt;a href=&quot;http://opencv.willowgarage.com/documentation/cpp/camera_calibration_and_3d_reconstruction.html&quot;&gt;OpenCV for camera
calibration&lt;/a&gt;,
their parameterization of the pinhole camera is a subset of the full
HZ model. In particular, their matrix A corresponds exactly to the HZ
matrix K with pixel skew fixed at zero. Consequently, this page can be
directly used with OpenCV camera calibrations by setting K01 to zero.&lt;/p&gt;

&lt;h1 id=&quot;experimental-verification&quot;&gt;Experimental verification&lt;/h1&gt;

&lt;p&gt;To verify that this computation of the OpenGL projection matrix
accurately captures the HZ camera model, we have calculated the
projection of vertices into image coordinates three ways:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;A CPU-based implementation of the HZ camera model. This performs
matrix multiplication of the eye coordinates by the intrinsic
parameter matrix K.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;A CPU-based emulation of the OpenGL pipeline. This performs matrix
multiplication of the eye coordinates by the OpenGL projection
matrix to produce clip coordinates, transforming those to normalized
device coordinates, and then finally using the glViewport parameters
to establish the window coordinates.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Direct calls to the OpenGL pipeline, presumably running on your
GPU. In this case, we directly load our OpenGL projection matrix by
calling glLoadMatrixf() and use OpenGL to perform all vertex
transformation.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The first two examples are in the &lt;a href=&quot;https://gist.github.com/1341472#file_calib_test_numpy.py&quot;&gt;calib_test_numpy.py&lt;/a&gt; example and
their outputs are overlaid. The third (OpenGL) example is in
&lt;a href=&quot;https://gist.github.com/1341472#file_calib_test_pyglet.py&quot;&gt;calib_test_pyglet.py&lt;/a&gt;. Each of these three examples gives the same
results, suggesting that our formulation is correct. All calculations
were done with Python scripts, but the concepts and results should be
easily adaptable to any language.&lt;/p&gt;

&lt;p&gt;Here is a brief conceptual walkthrough of these programs. Each program
starts by loading an image acquired by a (crudely) calibrated
camera. This image (luminance.png, included in the zip download below)
is of a roughly cylindrical object 1 meter in diameter and 1 meter
high. Part of the cylinder is occluded and only the front surface is
illuminated. The camera calibration is contained within the file
&lt;a href=&quot;https://gist.github.com/1341472#cameramatrix.txt&quot;&gt;cameramatrix.txt&lt;/a&gt;. This calibration is decomposed into the
intrinsic camera parameters and the rotation matrix, and the camera
translation vector. A simple mathematical model of the cylinder is
used to generate world coordinates of many vertices. Each of these
world coordinates is transformed to camera coordinates – also called
eye coordinates in OpenGL. This is done using the extrinsic camera
parameters specifying the camera’s pose and is done either as a matrix
multiplication with the extrinsic parameter matrix or by loading them
into the OpenGL modelview matrix. From there, each of these vertices
in eye coordinate is transformed to window coordinates using the
methods described above.&lt;/p&gt;

&lt;h2 id=&quot;output-of-cpu-implementations&quot;&gt;Output of CPU implementations&lt;/h2&gt;

&lt;p&gt;The blue crosses are the vertices after the HZ transformation. The red
points are the vertices after the simulated OpenGL
pipeline. Calculations done with numpy and scipy, and plotting done
with matplotlib.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/assets/calib_test_numpy.png&quot;&gt;&lt;img src=&quot;/assets/thumbnail_calib_test_numpy.png&quot; width=&quot;102&quot; height=&quot;90&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;output-of-opengl-implementation&quot;&gt;Output of OpenGL implementation&lt;/h2&gt;

&lt;p&gt;The green points are the certices after the OpenGL pipeline. OpenGL
called through pyglet.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/assets/calib_test_pyglet.png&quot;&gt;&lt;img src=&quot;/assets/thumbnail_calib_test_pyglet.png&quot; width=&quot;133&quot; height=&quot;90&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1 id=&quot;download-these-files&quot;&gt;Download these files&lt;/h1&gt;

&lt;p&gt;In addition to the individual scripts linked above, all the files are
included in &lt;a href=&quot;/assets/augmented-reality-with-OpenGL.zip&quot;&gt;this zip
file&lt;/a&gt;.&lt;/p&gt;

&lt;h1 id=&quot;remaining-work-compensating-for-camera-distortion-not-described-by-the-pinhole-model&quot;&gt;Remaining work: compensating for camera distortion not described by the pinhole model&lt;/h1&gt;

&lt;p&gt;You may want to implement the non-linear warping distortions (radial
distortion, tangential distortion) that are often used to extend the
pinhole model to be more realistic. A GLSL-based shader implementation
of warping and de-warping may be the subject of a future post, but is
not described here.&lt;/p&gt;

&lt;h1 id=&quot;references&quot;&gt;References&lt;/h1&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.songho.ca/opengl/gl_projectionmatrix.html&quot;&gt;A nice page on the OpenGL projection matrix&lt;/a&gt; by Song Ho Ahn&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.epixea.com/research/multi-view-coding-thesisse8.html&quot;&gt;A good description of the pinhole camera model&lt;/a&gt; by Yannick Morvan&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Camera_resectioning&quot;&gt;Another description of the pinhole camera model mostly compatible with the terminology here&lt;/a&gt; at Wikipedia.&lt;/li&gt;
  &lt;li&gt;The &lt;a href=&quot;http://www.opengl.org/documentation/specs/&quot;&gt;OpenGL specifications&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Carlo Nicolini’s &lt;a href=&quot;https://braintrekking.wordpress.com/2013/06/02/a-c-code-to-compute-opengl-4x4-gl_modelview_matrix-from-2d-3d-points-homography/&quot;&gt;blog post&lt;/a&gt;
and &lt;a href=&quot;https://github.com/CarloNicolini/OpenGL-CameraCalibration&quot;&gt;GitHub repository&lt;/a&gt;
with similar math and C++ code.&lt;/li&gt;
  &lt;li&gt;A &lt;a href=&quot;http://jamesgregson.blogspot.ca/2011/11/4x4-transformation-matching-opengl.html&quot;&gt;C++ implementation of the OpenGL matrix math&lt;/a&gt;
by James Gregson, also &lt;a href=&quot;https://github.com/jamesgregson/transformation&quot;&gt;on GitHub&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Another description of &lt;a href=&quot;http://ksimek.github.io/2013/06/03/calibrated_cameras_in_opengl/&quot;&gt;using calibrated cameras with OpenGL&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>lab portrait, summer 2011</title>
   <link href="http://strawlab.org/2011/08/19/lab-photo"/>
   <updated>2011-08-19T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/08/19/lab-photo</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;/assets/lab-picture-20110819-fullsize.jpg&quot;&gt;&lt;img src=&quot;/assets/lab-picture-20110819.jpg&quot; width=&quot;600&quot; height=&quot;360&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt; From left to right: Andrew Straw, Natalia Balcu, Karin Panser and
Linda Ma.  &lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>upcoming conferences</title>
   <link href="http://strawlab.org/2011/08/14/upcoming-conferences"/>
   <updated>2011-08-14T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/08/14/upcoming-conferences</id>
   <content type="html">&lt;p&gt;The end of August and September are going to be busy for me, with
plans to attend five conferences. I look forward to catching up with
colleagues I’ve known a while and meeting new
ones. &lt;a href=&quot;/contact/&quot;&gt;Contact&lt;/a&gt; me if you want to meet up.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.euroscipy.org/conference/euroscipy2011&quot;&gt;EuroScipy2011&lt;/a&gt; 25-28 August, Paris&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://wiki.epfl.ch/yedi&quot;&gt;JEDI conference&lt;/a&gt; 2-4 September, Leysin, Switzerland&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.the-embo-meeting.org/&quot;&gt;EMBO conference&lt;/a&gt; 10-13 September, Vienna&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://symposium.neuro.fchampalimaud.org/&quot;&gt;Champalimaud Neuroscience Symposium&lt;/a&gt; 18-21 September, Lisbon&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.edrc2011.org/&quot;&gt;European Drosophila Research Conference&lt;/a&gt; 21-24 September, Lisbon&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>the Grand Unified Fly (GUF) model</title>
   <link href="http://strawlab.org/2011/03/23/grand-unified-fly"/>
   <updated>2011-03-23T00:00:00+00:00</updated>
   <id>http://strawlab.org/2011/03/23/grand-unified-fly</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; This page contains the most important information from the
original location at the Dickinson Lab Caltech website
(http://dickinson.caltech.edu/Research/Grand_Unified_Fly), which is now
offline.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/assets/GUF_integrated_fly.mpeg&quot;&gt;&lt;img src=&quot;/assets/GUF_overview.png&quot; alt=&quot;GUF overview&quot; class=&quot;movielink&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Block diagram of “Grand Unified Fly” and a model fly situated in a
tunnel environment under closed-loop visual control.&lt;/p&gt;

&lt;h2 id=&quot;overview&quot;&gt;Overview&lt;/h2&gt;

&lt;p&gt;We are developing a computer model of Drosophila to investigate the
aerodynamics, control, neural processing, and sensory inputs of fly
flight. The components of the model are individually useful as
research tools but also perform as parts in an integrated whole. For
more information, please read the papers above.&lt;/p&gt;

&lt;p&gt;Our code consists of the following elements:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/strawlab/drosophila_eye_map&quot;&gt;Drosophila eye map&lt;/a&gt; » Viewing directions (eye map) of each Drosophila ommatidium in the compound eye&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/strawlab/fsee&quot;&gt;fsee&lt;/a&gt; » Fly-eye view and neural processing simulation code&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/willdickson/fmech/overview&quot;&gt;fmech&lt;/a&gt; » Insect flight mechanics simulator.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;references&quot;&gt;References&lt;/h2&gt;

&lt;p&gt;William B. Dickson, Andrew D. Straw, Michael H. Dickinson (2008)
Integrative Model of Drosophila Flight. &lt;em&gt;AIAA Journal&lt;/em&gt; 46
(9). doi:10.2514/1.29862
&lt;a href=&quot;http://www.mendeley.com/download/public/2464051/3635807622/d68e6de2dd62de6ee7cf6193a9cf443a32160846/dl.pdf&quot;&gt;PDF&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Epstein M., Waydo, S., Fuller, S.B., Dickson, W., Straw, A.,
Dickinson, M.H. &amp;amp; Murray, R.M. (2007) Bioligically Inspired Feedback
Design for Drosophila Flight. &lt;em&gt;Proceedings of the 2007 American
Controls
Conference&lt;/em&gt;. &lt;a href=&quot;http://www.mendeley.com/download/public/2464051/3652638132/f7b14315dcccb2088f5b651c198cf4cafd386715/dl.pdf&quot;&gt;PDF&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/assets/GUF_2007ACC_movie.mpeg&quot;&gt;&lt;img src=&quot;/assets/GUF_2007ACC_movie.png&quot; alt=&quot;2007 ACC movie&quot; class=&quot;movielink&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dickson, W.B., Straw, A.D., Poelma, C., &amp;amp; Dickinson, M.H. (2006) An
Integrative Model of Insect Flight Control. &lt;em&gt;Proceedings of the 44th
AIAA Aerospace Sciences Meeting and Exhibit&lt;/em&gt; AIAA-2006-0034
&lt;a href=&quot;http://www.mendeley.com/download/public/2464051/3652638122/d3bd7957efd2c8a011afb0687dfb6943731cb6d0/dl.pdf&quot;&gt;PDF&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 

</feed>
