newsletters:2026-07
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| newsletters:2026-07 [2026/08/16 05:09] – osnr | newsletters:2026-07 [2026/08/18 17:21] (current) – [Correction experiments] osnr | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== July 2026 newsletter ====== | ====== July 2026 newsletter ====== | ||
| - | |||
| - | TODO: | ||
| - | * [ ] Schedule Substack to send | ||
| - | * [ ] Address TODOs in the body of the July Dokuwiki document. | ||
| {{htmlmetatags> | {{htmlmetatags> | ||
| metatag-media-og: | metatag-media-og: | ||
| - | metatag-og: | + | metatag-og: |
| + | }} | ||
| Our next Folk open house will be in the evening on **[[https:// | Our next Folk open house will be in the evening on **[[https:// | ||
| Line 66: | Line 62: | ||
| * This program prints with a red circle in its center, for example: | * This program prints with a red circle in its center, for example: | ||
| * {{newsletters: | * {{newsletters: | ||
| - | * Andrés: TODO | ||
| === Shapes performance fix === | === Shapes performance fix === | ||
| Line 123: | Line 118: | ||
| Contour tracing is a useful primitive (it's how you go from image to queryable/ | Contour tracing is a useful primitive (it's how you go from image to queryable/ | ||
| + | |||
| + | === New viewport === | ||
| + | |||
| + | Last month, we worked on a dynamic viewport where you move the two corners (gold) to resize a larger-than-page-sized viewport (green): | ||
| + | |||
| + | {{newsletters: | ||
| + | |||
| + | This dynamic viewport has issues with actually getting it on the right plane so you can accurately projection-map it. (Do you take the plane from one of the corner programs? They' | ||
| + | |||
| + | {{newsletters: | ||
| + | |||
| + | This month, we've been prototyping with a big acrylic viewport with tag in corner and manually enlarged geometry (on left). | ||
| + | |||
| + | {{.: | ||
| + | |||
| + | This works pretty well and is about the right size that Karl wants. We should be able to go back to the old dynamic viewport later, but punting on it for now. | ||
| === SAM2 + contour tracing === | === SAM2 + contour tracing === | ||
| Line 219: | Line 230: | ||
| This is a pretty high-level API, although you still need to think about camera images/ | This is a pretty high-level API, although you still need to think about camera images/ | ||
| + | |||
| + | (We made APIs on top that you can invoke that give you contour or foot contour or center, which have more geometric information than the mask. You could imagine ultimately getting a rough quad for the object, so you can projection map it or do points-at / other queries, or maybe we generalize those so they work with contours.) | ||
| === Physical interface for multiple object registration === | === Physical interface for multiple object registration === | ||
| Line 244: | Line 257: | ||
| {{.: | {{.: | ||
| + | All these pages have a 1-1 correspondence between registration page and object. You need to print multiple registration pages to track multiple objects in parallel. We might change this soon. (It is nice because you can just make the object ID from the registration page ID and point to the registration page to clear/hold state.) | ||
| === Web UIs === | === Web UIs === | ||
| We have a few interesting web debugging UIs for SAM2 tracking. | We have a few interesting web debugging UIs for SAM2 tracking. | ||
| - | SAM2 per-object mask views: | + | SAM2 per-object mask views, so you can see what SAM2 has locked onto if anything: |
| {{newsletters: | {{newsletters: | ||
| - | Camera slice / | + | Camera slice / |
| - | + | ||
| - | {{newsletters: | + | |
| {{newsletters: | {{newsletters: | ||
| Line 283: | Line 294: | ||
| == Camera-facing arc experiment == | == Camera-facing arc experiment == | ||
| - | Omar had the idea that we just look at where the object is relative to the camera and exclude the side that's likely to be distorted. | + | Omar had the idea that we just look at where the object is relative to the camera and exclude the side that's likely to be distorted. |
| {{newsletters: | {{newsletters: | ||
| {{newsletters: | {{newsletters: | ||
| + | |||
| + | That should get us the ' | ||
| === Issues === | === Issues === | ||
| Line 299: | Line 312: | ||
| The fix was to [[https:// | The fix was to [[https:// | ||
| + | (I honestly think this makes a lot of methods we tried and discarded earlier more viable.) | ||
| - | == Feedback | + | |
| + | == Projector feedback | ||
| One issue we keep running into with SAM2 is that if we project onto the tracked object, the tracker locks onto the projection as well as the actual object. You get both fun and annoying feedback effects: | One issue we keep running into with SAM2 is that if we project onto the tracked object, the tracker locks onto the projection as well as the actual object. You get both fun and annoying feedback effects: | ||
| Line 326: | Line 341: | ||
| * [[https:// | * [[https:// | ||
| * Python bug fixes: | * Python bug fixes: | ||
| - | * old tracking | + | * Old tracker state sticking around |
| * {{youtube> | * {{youtube> | ||
| - | | + | |
| + | * Python | ||
| * {{.: | * {{.: | ||
| - | * These are all actually from the same Python process, just multiple threads. It's taking like 30GB of RAM. This was because of a leak in the predictor class where we were just storing every frame forever. | + | * These are all actually from the same Python process, just multiple threads. It's taking like 30GB of RAM. This was because of a [[https:// |
| * (Our predictor is sort of hacked together -- real-time support isn't native in SAM2, so I ripped off another repo) | * (Our predictor is sort of hacked together -- real-time support isn't native in SAM2, so I ripped off another repo) | ||
| Line 390: | Line 406: | ||
| [[https:// | [[https:// | ||
| - | HN | + | It got to the front page of Hacker News as well: [[https:// |
| === Visitors === | === Visitors === | ||
| Line 414: | Line 431: | ||
| * Omar: DrawTalking / object tracking demos using SAM2 (need to build applications around the tracking capability that we have); go from distorted contours to centers or other simpler useful geometric info; optical flow for better response time | * Omar: DrawTalking / object tracking demos using SAM2 (need to build applications around the tracking capability that we have); go from distorted contours to centers or other simpler useful geometric info; optical flow for better response time | ||
| * Omar: More stability and performance fixes (SAM2 Python pileup, editor slowness) | * Omar: More stability and performance fixes (SAM2 Python pileup, editor slowness) | ||
| - | * Andrés: | + | * Andrés: |
| + | * Andrés: Browser! Or some sort of HTML renderer (I'm currently imagining: '' | ||
| + | * Andrés: Pong, with [[https:// | ||
| + | * Andrés: Revisiting audio pipelining (see: Pipewire) and adding video via '' | ||
| ===== Links we've enjoyed ===== | ===== Links we've enjoyed ===== | ||
| Line 423: | Line 443: | ||
| * [[https:// | * [[https:// | ||
| * {{newsletters: | * {{newsletters: | ||
| + | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| - | | + | * [[https:// |
| - | | + | |
| - | * [[https:// | + | |
| ==== Omar ==== | ==== Omar ==== | ||
newsletters/2026-07.1786856964.txt.gz · Last modified: by osnr
