<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://ashwin-ned.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://ashwin-ned.github.io/" rel="alternate" type="text/html" /><updated>2026-07-11T19:47:39+00:00</updated><id>https://ashwin-ned.github.io/feed.xml</id><title type="html">Ashwin Nedungadi</title><subtitle>Ashwin Nedungadi — PhD researcher at the Institute for Visual and Analytic Computing (University of Rostock), working at the intersection of egocentric perception and robotics: multimodal LLMs, spatial perception, and embodied AI.</subtitle><author><name>Ashwin Nedungadi</name></author><entry><title type="html">A new home for the lab notebook</title><link href="https://ashwin-ned.github.io/blog/a-new-home-for-the-lab-notebook/" rel="alternate" type="text/html" title="A new home for the lab notebook" /><published>2026-01-15T00:00:00+00:00</published><updated>2026-01-15T00:00:00+00:00</updated><id>https://ashwin-ned.github.io/blog/a-new-home-for-the-lab-notebook</id><content type="html" xml:base="https://ashwin-ned.github.io/blog/a-new-home-for-the-lab-notebook/"><![CDATA[<p>This is the first entry in the rebuilt site. I moved off Google Sites for one
reason: I wanted writing to be as low-friction as committing code. Now a new post
is just a markdown file pushed to the repo — no editor, no lock-in, full version
history.</p>

<h2 id="how-posting-works">How posting works</h2>

<p>Drop a file in <code class="language-plaintext highlighter-rouge">_posts/</code> named <code class="language-plaintext highlighter-rouge">YYYY-MM-DD-some-title.md</code>, give it a little front
matter, write in markdown, and push. GitHub Pages rebuilds the site automatically.</p>

<div class="language-yaml highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nn">---</span>
<span class="na">title</span><span class="pi">:</span> <span class="s2">"</span><span class="s">Your</span><span class="nv"> </span><span class="s">post</span><span class="nv"> </span><span class="s">title"</span>
<span class="na">date</span><span class="pi">:</span> <span class="s">2026-02-01</span>
<span class="na">tags</span><span class="pi">:</span> <span class="pi">[</span><span class="nv">robotics</span><span class="pi">,</span> <span class="nv">depth</span><span class="pi">]</span>
<span class="na">excerpt</span><span class="pi">:</span> <span class="s2">"</span><span class="s">One</span><span class="nv"> </span><span class="s">line</span><span class="nv"> </span><span class="s">that</span><span class="nv"> </span><span class="s">shows</span><span class="nv"> </span><span class="s">up</span><span class="nv"> </span><span class="s">in</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">blog</span><span class="nv"> </span><span class="s">index."</span>
<span class="nn">---</span>
</code></pre></div></div>

<p>Everything below the front matter is the post body. The usual markdown works:</p>

<ul>
  <li><strong>bold</strong> and <em>italic</em></li>
  <li><code class="language-plaintext highlighter-rouge">inline code</code></li>
  <li><a href="https://github.com/ashwin-ned">links</a></li>
  <li>lists, quotes, and fenced code blocks with syntax highlighting</li>
</ul>

<blockquote>
  <p>Perception is inference under uncertainty — the trick is acting well anyway.</p>
</blockquote>

<h3 id="code-reads-cleanly-in-both-themes">Code reads cleanly in both themes</h3>

<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">def</span> <span class="nf">reproject</span><span class="p">(</span><span class="n">points</span><span class="p">,</span> <span class="n">K</span><span class="p">,</span> <span class="n">pose</span><span class="p">):</span>
    <span class="s">"""Project 3D points into the camera given intrinsics K and a pose."""</span>
    <span class="n">cam</span> <span class="o">=</span> <span class="n">pose</span> <span class="o">@</span> <span class="n">to_homogeneous</span><span class="p">(</span><span class="n">points</span><span class="p">)</span>
    <span class="n">uv</span> <span class="o">=</span> <span class="n">K</span> <span class="o">@</span> <span class="n">cam</span><span class="p">[:</span><span class="mi">3</span><span class="p">]</span>
    <span class="k">return</span> <span class="n">uv</span><span class="p">[:</span><span class="mi">2</span><span class="p">]</span> <span class="o">/</span> <span class="n">uv</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span>
</code></pre></div></div>

<p>That’s it. The next entries will be actual research notes — for now, the pipeline
works end to end.</p>]]></content><author><name>Ashwin Nedungadi</name></author><category term="meta" /><category term="perception" /><summary type="html"><![CDATA[Why I moved off Google Sites, and how this blog works — push a markdown file, get a post.]]></summary></entry></feed>