A million paint spots, 3 colors and 1 mind hack

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

Great video, good luck with child #2.

👍︎︎ 13 👤︎︎ u/trebskate 📅︎︎ Oct 31 2021 🗫︎ replies

Yes, a new video! Love it :)

👍︎︎ 5 👤︎︎ u/Mistwraith_ 📅︎︎ Oct 31 2021 🗫︎ replies

Interesting build! I liked how you used the counterweight to avoid having to anchor the carriage at the bottom of the wall!

👍︎︎ 4 👤︎︎ u/friode 📅︎︎ Oct 31 2021 🗫︎ replies

This is amazing, great work! u/chaintip

👍︎︎ 2 👤︎︎ u/rshap1 📅︎︎ Oct 31 2021 🗫︎ replies

This is awesome! You should x-post to /r/PlotterArt /r/generative and /r/creativecoding sinc ethey would all would all love this! Or checkout the #plotterart hashtag on twitter!

👍︎︎ 2 👤︎︎ u/SpidersArePeopleToo 📅︎︎ Oct 31 2021 🗫︎ replies

Knocked it out of the park! Though I believe you may have misspelled it "Jansky" right at the end.

👍︎︎ 1 👤︎︎ u/ArthropodOfDoom 📅︎︎ Oct 31 2021 🗫︎ replies

The answer to your problem is Vertical XY 2d Wall Plotter.

👍︎︎ 1 👤︎︎ u/HardwareJoe 📅︎︎ Oct 31 2021 🗫︎ replies

My thoughts on avoiding the fire alarm: put a white (no paint) area in the picture.

👍︎︎ 1 👤︎︎ u/vk6flab 📅︎︎ Nov 01 2021 🗫︎ replies

Now all you have to do is put a camera sensor on the side facing the room, put very long tube on it so that it effectively only measures a single line straight ahead, and then you've created a successor to Theo Janssen's Paint Machine (actually secretly a camera) from 1982, but with color!

https://www.strandbeest.com/page/previous-works

👍︎︎ 1 👤︎︎ u/vanderZwan 📅︎︎ Nov 01 2021 🗫︎ replies
Captions
this 50-foot wall would look a lot better with a giant painting on it but painting the wall is a lot of work so instead of spending a couple days doing that let's spend a month building a robot to paint this wall and as many walls as we want for us i only need to paint 15 50-foot walls to break even so what i want is a robot that will take any random photo and paint it on the wall for me this is one of those things that's easy to say not easy to do for one i'm gonna have to make a gigantic wall size robot on top of that making robot paint is challenging what is this it's your face it's your face my biggest challenge with this project is deciding what to paint on the wall but i have an idea i have a tradition of pranking my wife oh these pranks often get me a really excellent glare how stupid but also awesome would it be to have a 20-foot glare painted on the wall and if i'm lucky she might even reward me with a glare for the glare so before we get into being artists i should address the elephant in the room which is that last time you saw me i most definitely didn't have giant walls to paint murals on we moved across the state so that we could be closer to family and if you're wondering it was extremely painful to pull all of those tools out of my basement although i did have some help hey destin so that's how i came to have these giant walls i just need a graffiti bot and i also need a better name we're going to call it janxie okay here's my plan for janxy i'm going to start with a robot that can move anywhere on the wall kind of like a roomba it will have some kind of fancy paint applicator that can put any color at any point on the wall and then i'll write some code that takes whatever picture i want and it'll convert it into a series of instructions to the robot move here paint here and so on it'll run for a long time and with some luck we'll get a thing that looks like our picture the thing that's really stressing me out about this project is that i really only have one wall to paint if i screw it up i'm gonna be in for a world of pain so this thing has to work the most obvious way to make this robot work would be to do what humans do when they paint which is to mix a range of colors to make new colors that you apply artistically with a paintbrush there is not a chance i'm going to make a robot that works this way trying to mix colors is possible but completely impractical so what i'm going to do is exploit a quirk in the way that your eyes see which will allow me to completely skip over all of this color mixing business but it's going to take a bit of explaining your eyes work by focusing light onto a grid of nerve cells which can detect the amount of light that's hitting them so something over here might project onto these nerve cells which your brain would interpret as something with that shape at that location you can also see a spectrum of color but what's interesting about the eye is that it can't actually really see color let me explain so if light comes in your eye that's anywhere between reddish and bluish some of these nerve cells will say that they see light they don't know what color it is they just see something other nerve cells will say they see light that's orangish to tealish again they don't know what color it is they just see something and then other cells will say they see light if it's between greenish and violet your brain deduces what color it thinks it's seeing from the relative proportions of light that these cells report if i saw something red it would mostly be the red nerve cells your brain says that's red if i see something yellow it's sort of 50 50 between these nerve cells and your brain says that's yellow and this is where the literal life hack we're going to use comes in if i make a grid of red and green squares and then i scale them down to the point that your eye can't distinguish the individual squares the nerve cells will just be seeing that there's some red light in some green light and your brain's like it's yellow final answer you can trick your brain into seeing almost any color with only red green and blue light this is actually how computer monitors work there's little red green and blue lights that they're turning on and off to make whatever color it wants the dots being red green and blue is not random it's based on how your eye works so we should be able to do the same thing and trick your brain into seeing colors that don't exist by painting various combinations of a small set of colors we'll also eliminate paint brushes by only painting dots this makes the robot approximately one million times simpler there is one little problem though which is your eyes see light but we're painting with paint when you mix red green and blue light your eye interprets that as the color white but if i mix red green and blue paint it's definitely not white red paint looks red because it absorbs all the light that isn't red same for blue same for green you mix them all together they absorb all the light and it's black paint basically works the opposite way of light so what we'll do is we'll start with white surface if we want white we'll paint nothing and then we'll mix the paints to get whatever color we want and instead of red green and blue we're going to use the color cyan magenta and yellow this will let us make more colors than we could with red green and blue so when i mixed the red green and blue i should have gotten black but i actually got brown and this is pretty typical in reality it's very sensitive to the shades of color so instead of trying to mix black we're going to use black paint you may have heard of cmyk that stands for cyan magenta yellow and black i don't know why black is k maybe it's the same guy that named potassium on the periodic table so that's the theory it's been done a billion times it definitely works but i do need a way to lay down all these dots and the right way to do this would be some kind of high performance super fast head that can lay down millions of dots per second but this is the kind of problem that entire companies spend decades trying to solve so i'm going to kind of go the other way and just do a thing that can do one dot at a time one dot at a time does have one fatal flaw though which is it's going to be really really slow a typical inkjet printer prints 1 000 dots per linear inch which means one square inch of paper has a million dots in it if i try to print at that resolution on my wall that would be about 200 billion dots we're looking at like 65 000 years to print the wall so that's a definite no-go so i worked the numbers a bit more and i think the best i can do is about one dot per inch this would correspond to maybe about a week of printing and one dot per inch is definitely not as good as a million dots per inch but if you stand far enough away you should get the same effect so remember kids if at first you don't succeed reduce your expectations till you get to the point that you're a success so now the trick is deciding what way i'm going to actually apply the paint i looked at a bunch of different ways of doing this none of these things seemed like they could be reliable enough so what i went for is a paint spray gun when you spray these they make a cone of paint so i should be able to change the spot size that i paint by how far it is from the wall this should be able to make the dots but i still need a way to move it anywhere on the wall which is definitely easier said than done because the wall is freaking huge imagine that i make a giant gantry that can move this painthead anywhere on the wall because it's so big it's going to be flexible if i tried to quickly move this from one point to another it's going to vibrate but i need this thing to move as fast as possible because i need to make a ton of dots i could reduce the vibration by making it really stiff but this would make it super heavy which would mean huge motors so i'm going to do something a bit unusual i'm going to make a big gantry that can move anywhere on the wall that's slow and accurate and cheap and then hanging from this gantry is going to be another gantry that's light and fast the big gantry will move the little gantry to a desired location on the wall and then the little gantry will go to town and paint all the area that overlaps because it's small and light i can move it quickly without the risk of huge vibrations if you repeat this over and over again you can paint the whole wall i think that's a plan we just need to design it and build it building this took pretty much every tool that i have there's a decent amount of machine parts on the cnc and the manual mill we've got some laser cutting and 3d printing all the parts on this are selective laser centered there's a lot of big parts on this and i made a bunch of those on the cnc router because wood is cheap i love how easy wood is to cut compared to steel we've also got a number of plasma cut and bent sheet metal parts this is also a fast cheap way to make big things and a few hacks this is the little gantry that's moved around by the big gantry the paint gun mounts here and it has its trigger pulled with this little servo motor so the gantry rides in these steel tracks where it goes left and right across the wall it does this with 50 feet of wooden gear racks and a little pinion gear that i made these barn door tracks are extremely awkward to hang but thankfully the warehouse allows me to have more power there's four of them and they need to line up perfectly so the cart doesn't get hung up i knew that the probability of me mounting these 20 feet up the wall and them lining up was zero which is why i made these necessarily complicated rail mounts i mount these on the wall in mostly the right spot and then i can use this screw to adjust the alignment of the rails and then lock them in place with these bolts the little gantry hangs from these two steel cables it raises and lowers it by turning these spools the way that you would normally do this is have a rail at the top and the bottom and then some kind of rigid structure in between them only having to make this little wooden cart and hang some steel cables from it is infinitely easier it does have a big problem though which is newton's third law when i accelerate the paint gun to the right it pushes the gantry to the left and since it's hanging from cables i made a very nice swing set fortunately i have another trick up my sleeve if i were to mount a second printhead on this gantry and accelerate it in the opposite direction of the main printhead they would push in opposite directions which would cancel each other out and the gantry shouldn't swing i really don't want to actually move a second spray head in the opposite direction but all that matters is that you move something with the same mass in the opposite direction so that's what these steel bars are for the gantry is built so that i can attach these to it and it'll move them in the opposite direction and now it's steady for some reason i just love this trick so the gantry doesn't do a fancy dance when it's moving around anymore but this still can't work and that's because there's a lot of play and friction in the big gantry that moves this little gantry around it can easily be an inch or two over from where i think it is and that will never work instead of trying to make all the mechanics really accurate which is really hard i'm going to just avoid that problem by measuring where the spray head actually is if it's in the wrong spot then i'll correct for it using software so i'm using eight of these motion tracking cameras they're made by a company called optitrack they tell me exactly where these reflective balls attach to the gantry are all i have to do now is roughly position this gantry and i can correct for any error so if i push this over here the gantry just goes to the right spot it doesn't really matter where this is and then if the motor motor's stalled and it can't actually reach the spot it needs to paint then it knows how to ask for help how how how how so all this together we have a paint sprayer that we can move anywhere on the wall and fire at will although before we can desecrate this wall there's quite a bit of software that we need our goal is to take an image and convert it into a set of cyan magenta yellow and black paint locations that when added together look like our image so we start with a photo a photo on the computer is divided into little regions called pixels and each pixel contains how much red green and blue light would trick your eye into seeing whatever color is at that pixel we can separate the image into three black and white images that correspond to how much red green and blue there is in the image and then there's a standard way to convert this red green and blue data to cmyk this is already pretty close to what we need to send to the robot i can't paint the pixels directly because a dot from the robot is bigger than a single pixel i'm planning to paint a uniform grid of dots so conceptually what i want to do is divide the image into a grid according to my biggest dot and then for each grid cell i'll figure out what size dot would best represent the pixels within that cell bright pixels would get a full size dot and dim pixels would get no dot how i actually do this is a bit complicated to explain so hold on to your butts we'll start by looking at one of the pixels and the image that we want to dotify i look at the area around the pixel that corresponds to the biggest dot that i would paint i get the average color in that area and then i save that average color in the corresponding location and a new image i do this for every pixel in the image the new picture is the key to everything it's also very blurry in fact this is how most blurring algorithms work the technical term for this is called a convolution every pixel in the blurry image is telling me what the average color would be if i were to put a grid cell at that location in the original image in other words if you want to put a dot here this is the color that it should look like to best capture the appearance of all the pixels that the dot replaces to get all the dots we need to paint we sample a grid of points on our blurry image and for each point we make the dot size proportional to the amount of color in each pixel and this gives us what we want the last little complexity is that the grid of spots for each color is made at a different angle and this is because when you have overlapping repeating patterns very strange stuff happens and that's it if we paint these dots we should get our image i think it looks really cool at low resolution especially up close this is what the wall should look like when you buy it so everything i'm describing here is called half toning i definitely didn't invent it it's been used for a really long time and i'm barely scratching the surface of it here once i computed the dots it should have been a simple matter of converting it into moves for the gantries but this wall has an unremovable fire alarm right in the middle of it the amount of time i've spent to ensure that the robot doesn't try to paint the fire alarm or crash into it it is way too high alright so i decided to go full pro and i got real cmyk inks oh man these smell awful and this robot's gonna take a week to print there's no way i can be aerosolizing this for a week i'll die i'm gonna go find some less awful paint that was a fail so after the ink fail i decided to go with acrylics these are water soluble instead of some nasty solvent and i can also clean them up with water if or when i make a really big mess but i still can't just put this paint in the gun and expect it to work there is a bunch of variables that affect what size and quality of spot the spray gun is going to make and i don't understand them so we have to work our way through all of that before we can go to town on the wall i developed a series of tests that allow me to see how each of these variables affect the final result so i can figure out how i should be controlling the spray gun getting the spray head dialed in is a little bit finicky but i think i have a calibration that works so let's make some art before we go ruin the wall i'm doing some small paintings to make sure everything works and to keep things simple this first one is just monochrome so with the help of the reference picture i can see the resemblance i guess but there is one little problem though that's an easy fix but it is one of many problems i'm stuck in an infinite loop where it kind of works but it doesn't and you fix something and it gets a little better but then you fix something else and it gets worse it just goes on and on and on eventually it should work but i think we're going to be here for a little while [Music] this one's looking great you just need some rose-colored glasses that was actually close the paint sprayer is just spraying way too much paint so we'll do another day of calibration and now as they say we're painting with fire [Music] this is way better than the red faced just kill me wife it's so cool how up close it looks like nothing then as you pull back the face emerges i've been working on the art and i think i figured it out it is some real high society stuff it starts with a two-tone stamp of my wife's face it progresses to a gray scale and then finally color the bs art justification for this is that it shows the evolution of the machine from this coarse and unrefined stamp to full color and it just is the story of the machine learning to paint with color the real explanation for this is that the robot can probably do this i don't know if it can do this i felt like this needed a little bit more got some diagonal stripes for visual interest and then i was thinking well you know what is she glaring at me so i added some laser eyes to really drive home that powerful gaze if this is an art i don't know what is i had a hard time sleeping last night because i really don't want to ruin this wall but i just have to go for it so here goes nothing [Music] [Music] running it for multiple days straight i ran into some entirely new issues felt like repairing a car while driving it down the highway [Music] what is art anyway is this art this has to be art if this is an art then i have no recourse but i'll be very upset this is like actually art you get up close and you can see all these dots but then you back up and back up and back up and you see color and a face remember all that stuff about not hitting the fire alarm yeah we're not even gonna go there there's also some variation in the brightness of the color but now that i'm thinking about it i realized that i actually meant to have these imperfections all along they give it character this is just the best so i haven't shown my wife what i'm painting i've kept her completely in the dark and it's time to see what she thinks about all this hopefully she thinks it's amazing but i can see why having your face 20 feet tall on a wall might be a little weird maybe my wife just got here she hasn't seen anything that i'm doing and i am super excited to see what she makes of this work of art i guess that the robot has made she's been waiting here for me are you ready to see some art i'm ready to rumble what do you think of my art oh my gosh it looks like i'm ready to be on a dollar bill oh yeah you do look like a dollar bill i look very patriotic miss america no fallen soldier tribute these are squish spiders these are obliterated spiders do you like my art i do oh this should have been right on my eye missed opportunity so on a scale of one to a billion dollars how much did you pay for my heart well that assumes i want it i don't know a thousand dollars i should have made that scale narrower that's like a point 0.1 out of 10. it's big though therefore it's worth more that's how it works oh right i forgot that better luck next time in the process of making this art i made some other art and i'm really curious to see what you make of that as well i promise bringing it back to my wife and what she thought about those portraits in just a second before we do that i want to do something which i don't really want to do because it makes me uncomfortable which is ask you for your help these videos take a lot to produce i put all the time all the resources anything i can do to make these videos as good as i possibly can and i do that because i love making them and i hope that they're useful and although i love making these videos your support is what makes them possible so if you want to help me make more of these videos there's a few things that you can do the first thing you can do is support these projects directly on patreon you can also subscribe to the channel the more interest there is in the channel the easier it is to get sponsorships which then fund the videos and then the final thing you can do is take just a minute to check out the video sponsor in this case it is one of my most favorite sponsors of all time kiwiko what kiwico does is they send you a crate every month that has everything that you need to do some kind of project this is actually a lock and i've been wanting this one for a while i'm pretty excited about it the reason i love these so much is that i was raised building kits just like these i know the impact that they have on a kid it's huge this is one of the more complicated projects but they have things for all ages we've been giving our daughter kiwico crates since she was six months old and you might have noticed that my wife is a little bit pregnant and we're gonna be doing exactly the same thing for baby number two if you didn't already know my wife is the best all the glaring and everything that's just us messing around so anyway i've made multiple locks from scratch and this crate is incredible you make a fully functioning lock from parts this is such a good project so if there's anyone that you know that you want to give a really good really useful gift to this year go to kiwico.com stuff made here you'll get 50 off your first crate from any of the lines and that's it thank you kiwiko for sponsoring this video and thank you for listening to sponsorship all right we've got some bonus art here is the first one that it made this thing i like it when you have a software bug that never turns the sprayer off what's this thing it looks like i'm so enraged it almost looks like you're asleep like or you're dead so what did you think you were looking at before i told you that it was you it looks like a flaming hot cheeto with eyes this one though looks like pac-man it's a conversation starter that's what art really is right what is this is that pac-man no it's my wife that's a good conversation starter this last one is actually my favorite i think i might like this more than the whole wall you gotta back way uh soon it's more like nose you know it's not this you should set up a little glass or something that you look through that makes it look real far away oh reverse binocular trick i'll have to give you some reverse binoculars with some ink on him it is weird that it's me it is weird that it's you i want you to do it of our dog i had a lot of fun with this project and i hope that you enjoyed it and maybe even learned something if you have any ideas of things i could paint on my wall let me know and until next time thanks for watching you
Info
Channel: Stuff Made Here
Views: 4,421,925
Rating: 4.9637008 out of 5
Keywords:
Id: osUTMnDFV30
Channel Id: undefined
Length: 23min 23sec (1403 seconds)
Published: Sat Oct 30 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.