I made an AI LEGO® PixelArt Robot
HTML-код
- Опубликовано: 23 сен 2024
- This Lego machine can easily create a beautiful pixelart of anything you want!
It is programmed in Python, and, with help of OpenAI's DALL-E 3, it can make anything!
Simply type in a subject, and hit start!
Oh, and Dave wants to make something too :) .
--------------------------------------------------------------------------------------------------------
The code is available for Download on GitHub:
github.com/Cre...
--------------------------------------------------------------------------------------------------------
This triggers so many memories, lol.
Yes
It is YOU!
It indeed does
HI JK!
Kiivbhu
Good choice of making it a fox. Very good. Yes.
Consider this a tribute. Whether that is true we're not going to discuss 😄
Wow!
Is that the popular minecraft youtuber and modder Fundy minecraft?
@@CreativeMindstormswow so thats cool
Fundy!
I'm literally thunderstruck by the multiple layers, scales and magnitudes of awesome creative work of Lego engineering, coding, video production and editing, writing and presentation. This video should have many many more views. Brilliant work, sir!
Thank you so much sir! I appreciate everyone watching and I thank you for taking your time to write a nice and thoughtful comment!
Well, if you play in a mindstorm, there is a good chance you might get thunderstruck
Not only does your LEGO skill keep improving, your video making has also become really good! This video will do well 😉
I hope so lol. I'll try to keep improving 😊
PuzzLego is here?!?!
@@CreativeMindstorms i called it😆😆😆😆
@puzzLEGO yup, lol!
Puzzlego why have u been absent for 1 month
Having to refill the colors seems like the main downside of this. With how long it seems to take it would be nice if you could just set and forget and not keep checking on it.
You could extend the color ‘hopper’, and modify it so you can see the height of each color stack with tick marks for every 10 plates.
Then the program could print out the number of each color that is needed in the current design and you’d know up to what tick mark you need to fill each color at minimum to complete the ‘print’ without needing a refill.
The program could also prompt the user for how many of each color they have and do two passes on the image: first for each pixel compute a ‘difference’ value for each available color, then in the second pass always first greedily assign colors to those remaining unplaced pixels with the lowest ‘difference’ to the colors, tracking the remaining colors you’d have and always assigning the next lowest ‘difference’ color that also is still available.
This should result in the final design never using more of a color than what you have, while still looking as ‘close’ as possible to the desired image. A neat side effect of this is that you could effectively choose palettes - eg. If you only specifying counts for various black/grey/white plates then the final design it outputs would be completely greyscale. Same if you only input counts for blue tones.
You could also include dithering as a means to better approximate colors and better handle not having enough of a color.
That's really well thought out! If I am going to upgrade this machine, I will definitely try this!
E
@@jesmay.09Can you make your reply russian?
Love the machine! Excellent work, yet again! 💯
8 likes and no comments?????? :(
Thank you man! I appreciate it!
Hello!!!
As soon as I saw this in my notifications, I also thought of the Bricasso. Glad you took it to the next level!
Yes, me too! Bricasso is still the pixelart-robot-king in my opinion though 😅
Will you ever come back to youtube
how about just make a 3d printer with legos
WE NEED TO SEE IT!
done before lol
Was about to say impossible… never knew he did iy
He already did it
@@lorenzotimmerman nah I mean that builds 3d objects with legs kinda like this does but 3d
Through the whole era of 32-bit Windows, the icons came in 32x32 pixel flavor. It would be fun to see some classic icons getting revived in LEGO. Winamp anyone?
Oh that would actually be cool!
If you attached this machine to Dave and then Dave would be a Lego pixel art machine and make hands for Dave to place the pixels
*the WONDERFUL world of NOT PLANNING AHEAD and just IMPROVISING” so relatable 😭
So true
Haha yess! It is honestly the best too!
This video is so incredibly high quality, both in terms of content and design. Well done!
Thank you so much! That means a lot! I tried experimenting a bit with the style and hope it turned out good.
@@CreativeMindstorms it turned out more than good, you're pretty underrated i think you deserve absolutely more subs😅
Next up, Dave: the Sentience Update
Now make it so you can ask Dave and he will send a print to the machine:)
If you wanted to speed it up, you could have the pick and place be able to grab more tiles at a time and have each stack be able to dispense tiles onto a belt. Then the dispensers could queue up the next strip of tiles while the gantry is placing it, and you reduce the number of gantry trips
Thats awesome. Also you should use a raspberry pi running an ai locally for dave, so you can bring him anywhere.
The video is nicely edited, it flows really well.
Thank you! It took some time 😄.
The fact you can remove the boards and keep the print just makes it better
so i guess the next logical step is too add a z-axis to the bed and make it a 3d printer, you could use a voxelizer algorhithm and combine it with meshy ai
Yeah that would be cool!
9:45 That's just awesome detail, I really love that :)
I can't wait for your next video, Dave will definitely like it! Really nice project as always!!
Yes, this might be the first time I cared about the aesthetics of my code and I am liking it lol 😄. Looking forward to the next video too! Finally getting some upgrades in with Dave.
Love how you can still hear the dutch accent, Maar goed bedacht en gemaakt!
The reason making the image smaller makes it all blurry is because it (probably) uses bilinear interpolation when resizing the image. With whatever software you are resizing, you can probably change this method to use nearest neighbor in stead, nearest neighbor will simply use a single color from the original and use that, there's no average. This achieves basically the same as what you did, but you don't have to reinvent the wheel.
I actually thought the scaled image at 8:25 looked better than the eventual result. Anti-aliasing by grey pixels helps to smooth the lines while keeping the correct shapes, and the machine has grey 1x1s to use. Look at it from further away and the “ugly, washed-out image” looks better than the wrong-shaped sharper-coloured version.
Darn, now I have to build the whole machine myself to get that result I prefer :)
That's very impressive!
Keep up the good work!
Thank you, I'll try!
love the 'no waste' art that you can take appart and start over.
Now make a 3D printer
He already made one (four actually)
@@fuchsorsolya6722 yeah, but one which uses lego as fillament
He could stack the pixels
Yes
Time to make a 3d lego printing machine!
This is utterly amazing! As others pointed out, the synergy of all your skills makes this video one of the best lego videos I've seen in a while. Keep it up!
Oh wow thank you for that! I'll try my best!
this is an incredible RUclips video and incredible lego creation. awesome work!
Thank you for that! I appreciate it!
Very impressing! Your dedication and humourous joy are really a pleasure to watch. Kepp doing what you like!
Thank you! That made my day 😊
Kan je maken dat Dave ook jouw andere dingen kan bedienen, bijvoorbeeld je zegt tegen Dave: “Maak een kat voor me” dat Dave dan een kat uitprint.
For the English people:
Can you make it so that Dave can also control your other things, for example you say to Dave: “Make a cat for me” and Dave then prints out a cat.
Dat zou wel leuk zijn!
Wonderful and inspiring. Will show this to my 10 year old. With young guns like you, there is still hope in this world. Godspeed to you.
Thank you for that! Glad you liked it!
Shoutout to all quirky robots holding sunflowers.
Omg the beat part at 3:15 was amazing!
Good job, mate. RED SPY IS IN THE BASE
There is a red Spy in the Base!
holy f tf2 fans are everywhere
@@cheezenn heck yes
@@cheezennis that good or Bad fit you
@@Amdplt81 good
really cool build keep it going!
Thanks, I'll try!
you should hook up dave to the pixel art maker, and randomly, dave just makes whatever he wants.
How does this video not have a million views already? Your ingenuity, simply amazing!
Thank you for that! I'm still very grateful for even 10%!
Wow! congratulations mate!! you did a truly amazing job designing and building this machine from scratch! your skills at robotics and coding were wonderful to watch! well done! :)
Thank you so much mate! I appreciate it!
Hello. I am an old fan and you probably dont remember me but I suggested a few ideas for you and you actually built them.(for example chess playing robot, arcade). I just wanted to say congratulations on already hitting almost 250k subscribers and still uploading videos. You blew up. Hope to see more. Big fan.
Hey! Thank you for watching my videos! I appreciate it! I do remember going back into the comments to your comment about the chess machine after making it. Your early support meant a lot, and it’s awesome to see you still here. Can’t wait to share more projects with you!
What if the program could tell you the number of peices of each color it needs before starting? Like a heads up. "You will need to refill black 2 times and gray once"
How about adjusting the machine so it preloads the colours in the programmed order. So instead of going to get the studs everytime, it loads 10 studs at a time.
Heck, load the whole image while it's building! Definitely do get inspiration from bead printing robots!
@denisedtd I haven't even considered that. That might be a lot faster!
Multiple placing heads could multiply speed as well, they could be mounted on the same y axis actuator and place pixels simultaniously but 3 or 4 rows/columns apart
Also, can't image generators output directly in 32x32 pixels?
@Leon1904ffhhsus No, AI isn't great at following rules yet, so more often than not, it gets worse.
This was soooooooooooo worth it. I wish I had one. but, I didn't even know that dave was gone!
Awesome! Yeah Dave was gone in shorts, but he's back!
This might just be the most impressive thing I've ever seen done with Lego, great job!
Thank you so much! I appreciate you watching and commenting!
This guy is basically the redstone engineer of legos.
Fantastic! It's be even cooler if it could stage all the tiles for a given row somehow, to avoid the back-and-forth travel. And pop off the 16x16 tiles and replace them. And a pony!
the Timelapse looks like a 3d printer drawing but 2D.
Cool project! To capture how a human would draw things like a sunflower at this scale vs. the garbled mess you get from downscaling, you need an ai trained on pixel art. There are stable diffusion models that do this. You could even train your own on lego-colored 32x32 images specifically.
Another idea: You could use the full range of lego colors if you simply do multiple passes. You could even go so far and make the software plan ahead and ask for stacks of specific colors in whatever slot it wants, so you don't have to interrupt so often to refill a single color.
Those are some good suggestions! If I ever make a version 2, I will definitely take a closer look at them!
I know it makes sense to check the image first but it’d be fun to not see a preview at all…
Type something in, go out for a couple of hours and come back and see what produced.
Maybe add some code that crops the image to fill the space but still without seeing it ☺️
Luckily, it is possible to close your eyes and leave the room! 😊
It's been a few months since I last checked my subscriptions. Dang your channel has grown! Keep it up!!
Yep! It's been a wild year!
As a Mindstorms collector I'm a little biased when it comes to the awesomeness of Mindstorms creations, but I'll say it anyway: "You, and your creations, are awesome!".
Thanks a lot Paul! I appreciate your bias 😄
Deffo Dutch, hoi! Toffe shiz. Ideas filling my head haha. Kga m'n plotter weer uit de kast halen. Subbed.
Make so Dave controls all of your Lego builds and you add him to every one and you can tell main Dave to print something on this and he does it.
This is impressive! I love it
Thank you!
Dave© addon.
Very cool build. All it needs are some bigger magazines for storing the 1x1 pixels so you can let it run unsupervised for longer.
that can probably just be changed afterwards
Quite funny that for the final demo the idea was generated by a machine, turned into an image by a machine, and printed into LEGO by a machine!
All the human has to do is approve an image and do the labour to refill the colours 😢
But sadness aside this is an awesome project and bit of engineering!
I really like the build, considering that it may be pretty hard to make pixel art out of lego. I also like how you tease dave getting new features.
Thank you!
Love this video, subscribed to your channel because of it. Next step - 3D building robot, that builds in the Y-axis/Z-axis (up?), you can do it I know you've got the talent! I know many have suggested it already, but felt I should chime in as well.
Thank you! Yes indeed, others have suggested it. Maybe I should try it!
You should make a video selling those little cool unique art work ?
This is awesome. You are so talented!
Thank you!
I love your videos! They're always so helpful and informative.
Thank you for saying this!
Really cool! I would suggest replacing DALL-E with a local install of either SD1.5 or SDXL, though. The benefits are that it's free, and you can use a fine-tuned pixel art model to get results that start out more compatible with the LEGO output even before conversion, so you should get even better final results.
Oh I hadn't heard of these models. That sounds perfect for this application! Thanks!
@@CreativeMindstorms Oh, for sure! I'd recommend the Automatic1111 WebUI interface for Stable Diffusion, as it comes with built-in support for a REST-style API that you can connect any of your code to.
Thanks for letting me know!
Excellent build idea! Forehead was thoroughly ignored.
Phew, thank you so much for that! 😄
Nice Vid I like making stuff out of Lego like small Lego printers but your stuff is on a whole other level.
Thank you. It is great to hear that you're making your own machines out of Lego! I don't hear it that often anymore unfortunately 😊
Cue montage!
Editor: Yea 5 more seconds
Is there a thing where you can post Lego inventions and they may turn into a real Lego sets you should do that
Cool idea! ❤
I immediately heard you were Dutch 😂 Love your vid!
Wow...just wow!!! You are a true genius!! 😊👏🏻
Thank you so much!
This is very cool, I have a slight love-hate thing going on with how you get pink tiles in the finished 'print' that look like jpeg artifacts (or I suppose more like a gif with a very limited colour palette) but I've made favicons for websites in the past and I know how hard it is to work with so few pixels. I actually think the 'printed' physical Lego versions look even better than the on-screen previews. The whole thing looks very professional, like Lego could sell it as a Lego 3D Printer kit or something.
Thank you for that! Working with few colors and pixels is indeed hard to do. I also tried making the saturation of the colors a higher priority when deciding the closest color, but it unfortunately didn't help with getting rid of the pink and green pixels. Thank you for commenting and leaving your thoughts!
dat heb je BRILJANT gedaan!
Dankjewel!
I never knew Peter Parker was a Lego engineer in his spare time 🕷
Hey, I really liked this! And I want to build it in real life myself, and I was just wondering if its possible to get some more photos or some 3d design/render if you got that. Ty
Thanks! Unfortunately, I don't. I encourage you to design your own machine! 😊
oh man oh man, give us third dimension and call it "lego 3D printer" - just give me credit for that XD
Yeah I've been considering this too, that would be cool!
Super cool I love this machine. :D
Thank you :D
Now I want to make one at home!
So glad you made the fox.
His videos are ausumn
His programming skills and mind is great and do not forget about his hardwork and effort he puts in it
I donot know how his videos have views in thousands
He should have them in millions😭😭😭😭😭😭😭😭😭😭😭😭😭😭😩
Great work! Thank you for sharing this creation!
Thank you for watching and commenting!
@@CreativeMindstorms Six seconds of my effort to comment, compared to six months of your life to create the thing worth commenting on. :)
Guess that makes us even now! 😉
@@CreativeMindstorms If RUclips could convert goodwill into revenue, you'd be a multi-millionaire by now, based on what I've seen of your video vibes. :)
Yeah I'm still waiting for that day! Otherwise it has all been for nothing! Jokes aside, I'm just truly thankful for all the positive reactions and I hope to make someone's day too after they made my day 😄
NOW MAKE A 3D PRINTER OUT OF LEGO THAT PRINTS LEGO
Yeesss!!!
Very Cool Work keep up the cool ideas!
Thank you! I'll try!
Bro you do more thinking in a second then me in a year 😭
could you also ask dallE to generate a 32x32 image? That would skip the step of scaling. Maybe you could also have it only use lego colors.
I tried, but it is unfortunately very bad at following rules, so it turns out worse.
This is absolutely brilliant
Thank you!
Incredible work sir, you deserve all the views and the subs. And you inspire me for my future Lego Mindstorms builds too ❤
Thank you for that! I wish you good luck with all your future Lego Mindstorms builds!
Next you should program it to be able to split a more complex image to 4 quarters of 32x32 pics and then to print each quarter in turn to make bigger images!!
Now this is some phenomenal content. I'm totally in! Easiest sub ever
Thank you! Welcome to the channel!
@@CreativeMindstormsYo Can you make a 3D one? That’d be amazing! 🤩 also I love your channel!! 😊
Would it be feasible to have the arm pick a complete strip of legos of one color and put them on the board? So it saves time of returning to the supply for every single pixel. It also saves you time to watch over it for the refills because you only have to refill it when all the colours are empty.
Yeah I think that would save a lot of time. I guess I haven't thought enough about time when I started. Thank you for the suggestion!
@@CreativeMindstorms I also only realised it until I saw it in action. Looking forward to the next version 😅. Great work!
Just brilliant in every respect! 🎉
Thank you!
this is.
AWESOME! keep up the great work! new sub
I would like to say.
THANK YOU! Welcome to the channel!
I am ready to give any money for this printer (well, there must be a program for this miracle)
I don't make building instructions, but you can download the code for free via the link in the description!
Completely impressed here...congrats dude!
Thank you so much! I appreciate it!
Incredible build and video dude, love it!
Thank you so much!
Bro made a good beat while building the new mechinsim
its cool how he dose this kind of stuff
Awesome stuff, love the video and the printer is so cool.
Thank you! I appreciate it!
You know what? You have this, how hard could it possibly be to make a Lego 3d printer. You can make some sort of software to design something and a Lego machine similar to this builds it out of the 1x1 pieces. (Might not be very efficient, but it will be cool as hell)
All you’d really need to do is just make the current machine have another axis
(And maybe possibly just code a teensy bit of code to handle it as well as the software)
Yes, it probably wouldn't need that much additional work now. Maybe I'll try 😊
@@CreativeMindstorms awesome! Can’t wait to see it. If you make a video out of it can you credit me for the idea?
this is absolutely incredible!!!
Thank you!
Next level: Add hoppers for each color so that it doesn't have to wait for refills and start breaking down images to 32x32 pixels and render them on several plates. Make a wall of them! Also, something quite hard I guess, optimize the "pixels" by having the largest plate you can place of the same color. Or at least 2x2 and maybe 4x4. It will be hard enough I assume. 😁
I've got work to do now 😄
it's more pieces you may have to buy... but if you can make it so each color holds enough blocks to fill the whole print area by itself, then you'd never need to refill it. You would likely have to come up with some kind of design to make it not make it like a meter into the air but ya know. Would be cool if you can figure out a nice compact way to hold that many bricks for each color.
I would love to do that, but honestly, I don't think it would matter that much, since I still need to load all the pixels. Just all at once.
@@CreativeMindstorms thats fair but you wouldn't have to babysit it as much. You could just walk away and come back to a finished product