9 ms·
Ship Shape
- deleted 3y ago[deleted]
- vipermu 3y agohow will this change with ai though?
- simlevesque 3y agoIt already uses AI so I'm not sure what you mean.
- freedomben 3y agoGreat article, and very interesting work. I'm surely in the minority, but I oddly find myself enjoying the hand-drawn "shaky scribble" versions more than the "sleek vector graphic." I'm sure even my preference would be context dependent though, so even in my case it's a cool feature. But in a world of artificial perfection, there's something innately attractive in a genuine hand-drawn production.
- a3w 3y agoA pentagram and a sparkly star are not the same thing. Is this an example of underfitting?
- highwind 3y agohttps://en.wikipedia.org/wiki/Star_polygon https://en.wikipedia.org/wiki/Star_polygon
- rozenmd 3y agoThe library Canva use for drawing lines may be of interest: https://github.com/steveruizok/perfect-freehand https://github.com/steveruizok/perfect-freehand
- candiddevmike 3y agoDoesn't look like Canva is a sponsor...
- hobofan 3y agoThey are a one-time sponsor: https://twitter.com/steveruizok/status/1641348310886670336?t=qXPKW9TdpDvNC6qRJcGM2g&s=19 https://twitter.com/steveruizok/status/1641348310886670336?t...
- aCoreyJ 3y agoAfter being called out lol
- replwoacause 3y agoIs 5K for this is a good amount? It seems generous to me but I’m also sure it’s only a drop in the bucket for Canva.
- lucgagan 3y agoIf I was the creator of the project, I'd be happy with it. Most companies would not have donated anything.
- hk__2 3y agoIf this seems generous then it’s a good amount. That it’s only a drop in the bucket for Canva is not relevant.
- steveruizok 3y agoI’m the author of perfect-freehand. It’s a good amount and I found the whole interaction really great: I get to tease library users on twitter to sponsor me, get a bunch of engagement, and give the company the opportunity to sponsor me to get a positive boost from a happy ending. No complaints. Having my work used in a visible way by large companies does make me wish I’d productized it more. Maybe sometime I’ll release a refactored/improved version under a different license. However, I’ve also started a company around a different open source project of mine (tldraw.com) and if there’s a bag to be got, I’m sure I’ll get it there.
- danproductman 3y agoThis makes me wonder how they pulled off something similar in Macromedia Flash (RIP) well over 20 years ago. I vividly remember being amazed by how it smoothed out curves when drawing freehand, with such limited processing power compared to today's CPUs.
- danjc 3y agoIrrelevant - you must use machine learning for everything now.
- just_boost_it 3y agoThese GPUs aren't going to heat themselves!
- yuvalkarmi 3y agoI lol’d
- mbb70 3y agoLeCun et al. got 99%+ handwritten digit accuracy in 1995, which is pretty analogous to shape identification. Having it run trivially and performantly in the browser is still an accomplishment. As always, the experience for the user is what counts.
- Damogran6 3y agoIt was core funtionality for The Apple Newton in 1993 with a 20 MHz ARM processor https://en.wikipedia.org/wiki/MessagePad#User_interface https://en.wikipedia.org/wiki/MessagePad#User_interface
- wes-k 3y agoSmoothing is a different operation where you are simplifying the bezier curve by removing redundant(ish) points. So if you draw an almost straight line, you may have created 100 control points, and then the software simplifies it down to 4 points.
- jmiskovic 3y agoIMO the RNN is overkill of this problem, compared to a simple and elegant algorithm called "$1 unistroke recognizer". That one works beautifully even when trained with just a single sample of each gesture. I hope $1 unistroke gets more recognition because it can be integrated in an afternoon into any project to add gesture recognition and make the UI more friendly. It works quite reliably for palm style "Graffiti" text entry, as long as each letter is just a single stroke. The original paper also makes great effort to be readable and understandable. https://depts.washington.edu/acelab/proj/dollar/index.html https://depts.washington.edu/acelab/proj/dollar/index.html
- vipermu 3y agoexactly
- gurgunday 3y agoAgreed, it really works too well for how simple it is! We implemented it in ES6 as part of a uni project if anyone's interested: https://github.com/gurgunday/onedollar-unistroke-es6 https://github.com/gurgunday/onedollar-unistroke-es6
- entropie 3y agoI tried 4 different shapes (circle, rectangle, triangle and heart) and it always said "Ellipse with score ...".
- yathern 3y agoFrom the README: > By default, it recognizes three shapes: Arrow, Check mark, and Ellipse. > You can add more templates by drawing them and clicking on the Add Template button. It worked well for the three - except a clockwise circle wouldn't work, only a counter-clockwise.
- harunurhan 3y agoit works really well if all you are drawing is an eclipse ¯\_(ツ)_/¯. Could be a bug in the client or your implementation of $1.
- biosboiii 3y agoThe engineers of ASML, TSMC and others wake up every day, shoot lasers on liquid lead to generate light with extreme short wavelenghts, to make smaller and more performant chips. And web developers wake up every day so that no one notices their work.
- ilovecurl 3y agonitpick: TSMC's EUV process uses lasers to vaporize tin, not lead, into EUV emitting plasma.
- londons_explore 3y agoDoes the tin itself lase? Is the radiation given off from the tin single-frequency and phase coherent?
- foobiekr 3y agoNo. And it doesn’t matter for their use case.
- londons_explore 3y agoseems like a recipe for fragility... The mixtures of wavelengths will make optimizing other parts of the process very hard. And even keeping a consistent mix of wavelengths isn't easy.
- foobiekr 3y agoWell, go apply here: https://www.cymer.com/careers/ https://www.cymer.com/careers/ Given the criticality of the tech, I'm sure the price will be met.
- dist-epoch 3y agoWouldn't it be hilarious if some ASML/TSMC engineers used Canva internally? I bet it happens in some corner.
- h2odragon 3y agofollowed the "Draw" link and played with the thing there, but didn't see a way to demonstrate this functionality? Is it a paid feature or something?
- singularity2001 3y agosame, after 1h of technical descriptions of how they did it, I didn't find out WHERE / HOW we as users can use this feature!!
- robinhouston 3y agoIt triggers if you keep the mouse button down for a couple of seconds after finishing the stroke.
- visrut7 3y agoif model is on client side itself why not make it open source?
- simlevesque 3y agoTo keep a competitive advantage and get value out of your investment.
- visrut7 3y agostill now someone would reverse engineer it and make it open source then
- infocollector 3y agoIt would be nice if this was open source :) Recently, there have been various models that have become small in size (This one is 250kb. There are other simple tasks that have seen models of size 50kb or so for finetuning large models). I am looking forward to when we can actually get back to small models for useful applications :)
- SonOfLilit 3y agoThey trained it to recognize nine predefined shapes? Come on, if you're going to train a model, make it a generic smoother/DWIM for drawing shapes! You will also get more "analog"/never-identical shapes, which will feel much more stylish in the way drums feel warmer than drum samples even when played by an expert at hitting the notes identically and on time.
- jcparkyn 3y agoI agree, all the examples in TFA feel lifeless compared to the originals (except the circle). I could see the utility if they went for "proper" vector shapes, but here it feels like the worst of both worlds.
- spondylosaurus 3y agoThe iPad drawing app Procreate has a smoothing tool that sounds kinda like what you're describing—you basically draw a line freehand, and then Procreate smooths it afterwards. Most other drawing apps (like Clip Studio Paint, which is what I primarily use) have a comparable ability to smooth the lines as you're drawing by stabilizing the actual brush tool—basically slowing down the responsiveness of the brush to reduce jitter.
- rrherr 3y ago"We developed a variation on the Ramer-Douglas-Peucker (RDP) algorithm, which is a curve simplification algorithm that reduces the number of points in a curve while preserving its important details. It achieves this by recursively removing points that deviate insignificantly from the simplified version of the curve." This reminded me of an old side project, which others may be interested in. I applied Douglas-Peucker to Picasso for a talk at Strange Loop 2018: Picasso's Bulls: Deconstructing his design process with Python https://rrherr.github.io/picasso/ https://rrherr.github.io/picasso/
- tlrobinson 3y agoIf you implement a feature like this, please, make it optional and obvious when it’s enabled. It’s maddening when tools try to be too smart and don’t get it perfect (I have been guilty of this too)
- karaterobot 3y ago> However, if you’re anything like us, even a simple straight line drawn with a mouse or a trackpad can end up looking like a path trod by a tipsy squirrel. Don’t even get us started on circles and rectangles. But who needs to draw shapes with their mouse in Canva? Years ago, Miro had a feature that converted your flailing attempts at drawing a star with a mouse into a geometrically precise star (or circle, or triangle, or whatever). I thought it was super cool, but then I never, ever needed to use it. I never need to do line drawing with my mouse: if I'm making diagrams, I just use pre-made shapes, which are faster. If I am making icons, I use a whole different process centered around Boolean operations and nudging points and the Pen tool—and I am probably using a dedicated program, like Illustrator, to do it. And if I am actually illustrating something (rarer these days than in times past) I have a tablet I will pull out. I am sure the tech here is cool, but what's the use case?
- tobyjsullivan 3y agoCanva is not a diagraming tool. It’s a visual design tool with a very different user base. Their asset library is massive with millions, maybe tens of millions, of images including both photos and vector graphics. One of the more annoying parts of the tool - in my limited experience - is searching through an endless library for simple shapes when I already know exactly what I want. Presumably this tool aims to solve that pain point. Disclosure: worked there a few years ago. Edit: I suspect (zero inside info) this use case is important because they want to be a competitive diagraming tool as well. However, they’ll be constrained in that they cannot fundamentally change the design experience for the other 99% of their current users.
- pc86 3y ago> but what's the use case? Designers/marketers who don't learn keyboard shortcuts, for whom the comparison is "drawing the shape with my mouth" (quick) vs. "going through upwards of a half dozen menus to pick the right shape, place it, then resize it" (slower). Even if the shape is available w/o going to any menus, drawing the entire thing with your mouth using a single cursor is going to be faster than placing and resizing a bunch of icons, switching to the arrow feature and adding the arrows in.
- lancesells 3y agoThere's an odd feeling about the writing in this article. Maybe I'm seeing things but it does not feel like it's written or composed entirely by a person.
- abrookewood 3y agoThere was a game called Scribblenauts that my kids loved years before any of the recent ML/AI hype and it was able to turn very rough scribbles into an amazing number of different objects. No idea how they did it, but even I was impressed - the kids thaught it was magic. https://store.steampowered.com/app/218680/Scribblenauts_Unlimited/ https://store.steampowered.com/app/218680/Scribblenauts_Unli...
- obvi8 3y agoI’ve played it — it truly is amazing. If I’m remembering correctly, it made it to iOS, too.