I

I made a WebGL-based app that traces images using circles

Hacker News

I made a WebGL-based app that traces images using circles

I was fascinated by this [0] and this video [1]. After many struggles, I finally built this app that traces images using circles similar to what these videos had shown. The most challenging part (to me) is to find a way to convert images to vector lines. I had tried Potrace, but its output is not suitable for my use case: too many small elements share the same border. Potrace's goal is to represent the original image faithfully using vector lines. But I want to trace the image edges. After searching and trying some Potrace alternatives in vain, I finally found my keyword. Surprisingly (to me), it lies at the end of the wiki page of the very topic [2]. Then I found a paper [3] that has nice pseudocode and a C implementation. I rewrote the pseudocode in Rust because I wanted to experiment with rustwasm. Honestly, I didn't care much about the math behind it. From then, I could continue to finish the app and show it to the world. This app is also my chance to learn about rustwasm and WebGL. FYI: this app is offline-only; your images never leave your browser [0] https://www.youtube.com/watch?v=r6sGWTCMz2k [1] https://www.youtube.com/watch?v=-qgreAUpPwM [2] https://en.wikipedia.org/wiki/Edge_detection#Subpixel [3] https://www.ipol.im/pub/art/2017/216/

Share card

Actual performance

93points
24comments
Made the leaderboard

Launch Intel predictions

Analyze your own launch →
Hacker NewsStrong engagement from HN community · Strong signals: ide, io · Missing: https docs, excited, just released
66%66% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
Indie HackersFits the IH revenue-focused audience · Missing: supports, reddit linkedin, podcasting
59%59% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
TrustMRRLess likely to generate early MRR · Strong signals: video, way · Missing: mobile apps, ios, personal
48%48% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
47%47% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Product HuntUnlikely to reach the leaderboard · Strong signals: using, code · Missing: mac, agents, macos
36%36% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
15%15% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Correct prediction on native model

Similar products

De
Detecting Puerto Rican Bird Species from Images Using PyTorch41%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Detecting Puerto Rican Bird Species from Images Using PyTorch

Hacker News3
Ho
How I Stopped Using MeteorJS for My App38%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

How I Stopped Using MeteorJS for My App

Hacker News4
Ex
Example C++ app using Hjson, CMake and Qt 533%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Example C++ app using Hjson, CMake and Qt 5

Hacker News3
A
A tool to reproduce images using ironing beads47%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

A tool to reproduce images using ironing beads

Hacker News8
I
I made a polling app based on Quadratic Voting64%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

I made a polling app based on Quadratic Voting

Hacker News4
Co
Convert sketches into images using ControlNet46%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Convert sketches into images using ControlNet

Hacker News76
Us
Using LDA to suggest GitHub repositories based on what you have starred41%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Using LDA to suggest GitHub repositories based on what you have starred

Hacker News99
Un
Unsplash.it – Beautiful placeholders using images from unsplash59%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Unsplash.it – Beautiful placeholders using images from unsplash

Hacker News10
Ru
RustAegis – Writing a VM-based obfuscator without using 'unsafe'48%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

RustAegis – Writing a VM-based obfuscator without using 'unsafe'

Hacker News2
Gs
Gstreamer-based stream supervisor using YAML40%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Gstreamer-based stream supervisor using YAML

Hacker News2