<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on TechnoCurl</title><link>https://codetrick.github.io/technocurl-blog/posts/</link><description>Recent content in Posts on TechnoCurl</description><generator>Hugo</generator><language>en-us</language><copyright>Copyright © 2026, Fan Yang.</copyright><lastBuildDate>Mon, 11 May 2026 08:00:00 -0500</lastBuildDate><atom:link href="https://codetrick.github.io/technocurl-blog/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Tracking Curling Rocks, Part 4: Bootstrapping a Detection Model</title><link>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part4/</link><pubDate>Mon, 11 May 2026 08:00:00 -0500</pubDate><guid>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part4/</guid><description>&lt;p&gt;Having laid the ground work in camera calibration (&lt;a href="https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part3/"&gt;part 3&lt;/a&gt;) and with our initial exploration done using artificial neural networks models to do rock detection (&lt;a href="https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part2/"&gt;part 2&lt;/a&gt;), we are now in a good position to train our custom models. The hope is that this will deliver better accuracy while improving efficiency i.e. faster detection.&lt;/p&gt;
&lt;p&gt;We need to label some images to train models. But since I don&amp;rsquo;t have a team of professional data labellers at my disposal, I would need to make this process as easy as possible.&lt;/p&gt;</description></item><item><title>Tracking Curling Rocks, Part 3: New Camera System</title><link>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part3/</link><pubDate>Fri, 17 Apr 2026 08:00:00 -0500</pubDate><guid>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part3/</guid><description>&lt;p&gt;While I was conducting my experiments in parts &lt;a href="https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part1/"&gt;1&lt;/a&gt; and &lt;a href="https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part2/"&gt;2&lt;/a&gt;, the club planned for and got a new streaming system installed by &lt;a href="https://curlingstadium.com/"&gt;Curling Stadium&lt;/a&gt; in the summer of 2025. Their standard setup puts 4 HD 1080p cameras on each sheet: two PTZ (pan-tilt-zoom) cameras mounted on the end walls for broadcast-style coverage, and two POV (point-of-view) overhead cameras mounted directly above each house. For my purposes, the overhead cameras are the interesting part &amp;ndash; they give a fisheye view of the house end from directly above, which is exactly what I need for rock tracking. With six overhead cameras across three sheets, it was time to recalibrate everything.&lt;/p&gt;</description></item><item><title>Tracking Curling Rocks, Part 2: Off-the-Shelf Deep Learning</title><link>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part2/</link><pubDate>Sat, 04 Apr 2026 06:00:00 -0500</pubDate><guid>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part2/</guid><description>&lt;p&gt;In &lt;a href="https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part1/"&gt;part 1&lt;/a&gt;, I built a rock detection pipeline using classical computer vision &amp;ndash; fisheye correction, HSV color matching, and the Hough circle transform. It worked reasonably well, but was held together by hand-tuned thresholds that would fall apart the moment the lighting changed or someone switched to a different camera. The hog line kept getting detected as a red rock. I wanted to see if off-the-shelf deep learning models could do better, without having to train anything myself.&lt;/p&gt;</description></item><item><title>Tracking Curling Rocks, Part 1: Classical Computer Vision</title><link>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part1/</link><pubDate>Wed, 25 Mar 2026 00:00:00 -0500</pubDate><guid>https://codetrick.github.io/technocurl-blog/posts/curling-rock-tracking-part1/</guid><description>&lt;p&gt;When I first started curling a few years ago, as a front end player, I found it difficult to keep track of the shots played and maintain a good mental picture of the end progression. The club does have monitors behind the hack to help the front end get a better view of the house, but between focusing on my then barely existent delivery consistency and keeping up with the pace of the game, I tended to lose track. I wondered at the time &amp;ndash; if we could overlay the trajectory of the delivered stone and the other stones that were set in motion, that would be pretty helpful.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;ve watched curling on TV, you&amp;rsquo;ve seen something in this direction. Commentators use &lt;a href="https://en.wikipedia.org/wiki/Telestrator"&gt;telestrators&lt;/a&gt; to draw lines and place stones on screen before a shot to discuss strategy, but that&amp;rsquo;s manual and only covers the planned shot. On the automated side, &lt;a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC9639444/"&gt;CurlingHunter&lt;/a&gt; (used at the 2022 Beijing Olympics) and &lt;a href="https://www.angularvelocity.fi/specto-curling"&gt;SPECTO Curling&lt;/a&gt; (LIDAR-based) can actually track stones in real time as they move. I thought it would be fun to try building something like that myself.&lt;/p&gt;</description></item></channel></rss>