Let me guess: you use an edge-detection algorithm to generate points, then use a clustering algorithm to groups nearest neighbors, then for each cluster, you use a graph-search algorithm to trace the path of the virtual pencil?
@RaminHAL9001 wow that's waay too difficult and probably wouldn't work. I start at an unvisited point with high gradient and follow it while drawing until it gets below threshold. Then I repeat until all is visited.
@badmephisto "wow that's waay too difficult and probably wouldn't work" Well, your method is quite clever. Just start at a high-gradient point, I don't think I would have thought of that myself. The method I mentioned would work, you would need some extra code to make sure all points were visited, and the algorithm itself might be no more than 4 lines of Matlab code. But I should do less talking and more implementing!!!
Nice work with this sketching program. It looks so much more realistic than those unrealistic image editor filters. I like the pictures' final results, very pleasing.
What sort of software is used to make the images you see in movies and video games? When I watch the "behind the scenes" stuff on the special features they make it look like it is almost a point and click type program...clearly, there is more to it than that, but I never hear what sort of software they use.
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
Great results, I'd love to test it out myself. What would also be interesting would be to build a robot that holds a real physical pencil and moves it, varying the pressure and speed to reproduce a digital picture (great way to cheat at art homework :P)
If you ever re-do this, you should add a condition that makes it so dimmer lines are only drawn if they aren't close to bold ones. This is because the end product looks more like the image ran through the "find edges" algorithm, by fault of the dimmer and closer lines. You are a great programmer and I hope you make more creations :D
I think an artist bases the order of strokes by length instead of strength. Usually, longer strokes come first, then details, then weight, if you know what I mean.
Nice program though! If you could make this a robot, you could be rich!
programmers don't code in binary, one should know binary if file operations are involved (or compression algorithms, or cyphers or really anything I guess)
I did this in Python because it is my main, favorite programming language. I am very efficient at it. Gradient is a vector (dx, dy) for every pixel L(x,y) st. (in the first order approximation), dx=L(x+1,y)-L(x-1,y), dy=L(x,y+1)-L(x,y-1)
I'll be doing grad work in Computer Graphics and AI.
Do you read Python books and learn from them and make programs like this one?! Plz tell me which python book you use. I'm learning Python as my second programming language and I want to learn how to make real cool program like yours. I'm just wondering if you have a good book...
no i didnt read a single python book, and i dont have python books. I got introduced to Python in one of my university classes, and everything i've learned is just through making LOTS and LOTS of simulations and games in my spare time, and looking at a lot of example code
Then can you tell me what you learn at least, I really want to make cool programs like you -___- Can you send at least message including the sample code, and some important code from some of your programs?! I'm not trying to steal it, dont worry... just studying thats all. xD HOPE YOU DO.
Also for "goodness" of the stroke you should consider the position of the stroke, meaning that outside strokes are prioritized over the inside ones. An artist will most likely draw the big picture and add details to it after.
I tried factoring in the actual intensity when determining the color of the stroke, and it did not yield very good results... At least that trivial approach did not. But its a good thing to consider maybe in the future.
I thought of postprocessing every stroke to smooth it out, maybe using splines or something like that. Maybe ill try that in future too. There is certainly a lot of room for improvement.
Haha, it might be cool to have the drawing sim run in "Drunk Mode", where the pencil's movement has low drag and low acceleration. Then the pencil would move way off. :P
You should set the intensity of the pixels as part of the function for determining how dark a stroke should be. The image of the girl, especially, flattens out because the pencil only draws the contours, and does not compensate for the lighting.
if you could combine this program with a machine like an H2O cutter, thatd be sweet. You could program an image into the machine and the H2O cutter, modified so it holds lead instead of sprays water. that could make sick pencil drawn photos that were drawn with a robot.
just want to let you know that out of all the people on youtube that have cubing vids and tutorials, you are def my fav! This vid is awesome by the way!!
How can I get this software?
ddsharper 1 month ago
Must be the car that you would buy next time
1adrianchong 1 month ago
Any chance you could put this up as source code as well? I'd like to take a look at it.
shadoelement237 3 months ago
Let me guess: you use an edge-detection algorithm to generate points, then use a clustering algorithm to groups nearest neighbors, then for each cluster, you use a graph-search algorithm to trace the path of the virtual pencil?
RaminHAL9001 4 months ago
@RaminHAL9001 wow that's waay too difficult and probably wouldn't work. I start at an unvisited point with high gradient and follow it while drawing until it gets below threshold. Then I repeat until all is visited.
badmephisto 4 months ago
@badmephisto "wow that's waay too difficult and probably wouldn't work" Well, your method is quite clever. Just start at a high-gradient point, I don't think I would have thought of that myself. The method I mentioned would work, you would need some extra code to make sure all points were visited, and the algorithm itself might be no more than 4 lines of Matlab code. But I should do less talking and more implementing!!!
RaminHAL9001 3 months ago
What a bad person have to be to dislike this...
Dainiusbrr 6 months ago
You have a beautiful mind.
Pulseczar1 8 months ago
please please could you release it to the public!! it looks like such an amazing program!!
hannahfanna789 1 year ago
Have you thought about releasing this game to the open public, and including the source to help future programmers learn along these lines?
XxLeurxX 1 year ago
It would be SICK if you made this into a Pictionary game.
dandymcgee 1 year ago
made me cry
gg382 1 year ago
Nice work with this sketching program. It looks so much more realistic than those unrealistic image editor filters. I like the pictures' final results, very pleasing.
nlicky 1 year ago
Where can i download this programm :D ?
TheHeiler 1 year ago
I wish I could draw like that
Arthreas 1 year ago
They have this at. Chuck e cheeses
Cjwikkedawesome 1 year ago
i think you should brighten up the images before you run the program, because all the dark parts remain blank.
lygophile 1 year ago
Maybe you can answer a question for me...
What sort of software is used to make the images you see in movies and video games? When I watch the "behind the scenes" stuff on the special features they make it look like it is almost a point and click type program...clearly, there is more to it than that, but I never hear what sort of software they use.
Is it similar to this?
Johnnewb 1 year ago
So if I was to put a picture of me in the program. would sketch me?
letseewhathappens101 1 year ago
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
macalesterbarnes 1 year ago
This has been flagged as spam show
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
macalesterbarnes 1 year ago
I think an interesting, qualitative benchmark, which might also generate more media interest, is to test the program against an actual artist, where both the program and artist are given the same initial image, and asked to sketch it.
The artist could either have their strokes recorded visually for analysis, or use a special pencil (or rear-tip) that digitally records the motion data to generate a "real strokes" vs. "computer strokes" comparison.
macalesterbarnes 1 year ago
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
This has been flagged as spam show
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
This has been flagged as spam show
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
This has been flagged as spam show
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
This has been flagged as spam show
@macalesterbarnes Or provide both the artists' and CG generated sketches to public subjects who are asked to determine which was man-made, and which was computer generated. This could be a variant on the Turing test for AI.
You could also ask people which image they find more "appealing," "attractive," or even "beautiful," to see if beauty, indeed, can be faked =)
macalesterbarnes 1 year ago
Wow. It;s time to check into Python. I never knew it was so powerfull.
radmin2 1 year ago
It's like a lazer printer its cool! Music is sort of weird but cool!!!! :D
TheStackaMan 1 year ago
Nice! Is it open-source? :)
Great results, I'd love to test it out myself. What would also be interesting would be to build a robot that holds a real physical pencil and moves it, varying the pressure and speed to reproduce a digital picture (great way to cheat at art homework :P)
Anonymouseable 1 year ago
Comment removed
luckyazian13 1 year ago
Heh, some artists could probably learn a few things by watching this robot.
cliftut 2 years ago
Now computers are now competiting with artist... will there be an end with their (programmers) creativity?!
ILCAC3 2 years ago
If you ever re-do this, you should add a condition that makes it so dimmer lines are only drawn if they aren't close to bold ones. This is because the end product looks more like the image ran through the "find edges" algorithm, by fault of the dimmer and closer lines. You are a great programmer and I hope you make more creations :D
Blacklemon67 2 years ago 2
can you make like the one in iRobot
gahjii 2 years ago
this is way better, in robot its just a cgi trick this is realtime
JASONE1986 2 years ago
Nice computer program. what music is that playing in teh background ?
dogsoldier111 2 years ago
Nice dude!
I think an artist bases the order of strokes by length instead of strength. Usually, longer strokes come first, then details, then weight, if you know what I mean.
Nice program though! If you could make this a robot, you could be rich!
YoinkinatorX 2 years ago
yeah, the artist will find it inefficient if he/she is going to use this process
gahjii 2 years ago
where can i download this??
drugdrunkker 2 years ago
Nice :D The computer programs are getting better and better :D
adrianGGO 2 years ago 6
ur videos are great! I've learned a lot from ur rubik's tutorials, hope u can make prog. tutorials too..tnx!
yopani 2 years ago
My mind has just been blown
amutantturtle 2 years ago
WOW! You binary code freaks are insane! -In a good way! now I know why it took 20 years to make a full-blown TRANSFORMERS movie!
TOMANDKATIE 2 years ago 2
programmers don't code in binary, one should know binary if file operations are involved (or compression algorithms, or cyphers or really anything I guess)
Blacklemon67 2 years ago
That is truly awesome!
llamasownyou 2 years ago
good solves!
terrapin52 2 years ago
Amazing!
DavidAdams123456 2 years ago
This is really impressive!
A few of questions.
Firstly, why did you choose to create this in python? And how do you calculate the image gradient? I have a rough idea, but am not sure.
Also, what graduate work are you doing?
ninjakannon 2 years ago
thank you.
I did this in Python because it is my main, favorite programming language. I am very efficient at it. Gradient is a vector (dx, dy) for every pixel L(x,y) st. (in the first order approximation), dx=L(x+1,y)-L(x-1,y), dy=L(x,y+1)-L(x,y-1)
I'll be doing grad work in Computer Graphics and AI.
badmephisto 2 years ago
Do you read Python books and learn from them and make programs like this one?! Plz tell me which python book you use. I'm learning Python as my second programming language and I want to learn how to make real cool program like yours. I'm just wondering if you have a good book...
ILCAC3 2 years ago
no i didnt read a single python book, and i dont have python books. I got introduced to Python in one of my university classes, and everything i've learned is just through making LOTS and LOTS of simulations and games in my spare time, and looking at a lot of example code
badmephisto 2 years ago
Then can you tell me what you learn at least, I really want to make cool programs like you -___- Can you send at least message including the sample code, and some important code from some of your programs?! I'm not trying to steal it, dont worry... just studying thats all. xD HOPE YOU DO.
ILCAC3 2 years ago
@ILCAC3 docs.python.org
dasp0rk 10 months ago
What confusing codework.
ILCAC3 2 years ago
Very impressive! Does the program "draw" at this speed or is it sped up or slowed down?
555tHeNaMeleSs666 2 years ago
i precompute all strokes and then play them at any speed i like...
badmephisto 2 years ago
where can i get the program ?
HAN2929 2 years ago
looks like a savant drawning
Malk007 2 years ago 2
awesome ..
kuzelnet 2 years ago
Very Impressive!
Are you studying or did you study in computer science to do this? or something else close to it maybe?
SliceMusik 2 years ago
yea im doing graduate work in computer science
badmephisto 2 years ago
Also for "goodness" of the stroke you should consider the position of the stroke, meaning that outside strokes are prioritized over the inside ones. An artist will most likely draw the big picture and add details to it after.
SliceMusik 2 years ago
is this gonna be available for download? Its pretty sweet :D
readthemanga 2 years ago
nice, maybe make some more cubing vids? like them
12andomNerd 2 years ago
Comment removed
Chaotischesneutrales 2 years ago
Very Impressive
petercourt 2 years ago
anybody know the songs he used? Any of em?
optikon2222 2 years ago
Also, you should add the smoothness/straightness of the stroke to the "goodness" of the stroke.
WhiteDragon103 2 years ago
you bring up good points, both times.
I tried factoring in the actual intensity when determining the color of the stroke, and it did not yield very good results... At least that trivial approach did not. But its a good thing to consider maybe in the future.
I thought of postprocessing every stroke to smooth it out, maybe using splines or something like that. Maybe ill try that in future too. There is certainly a lot of room for improvement.
badmephisto 2 years ago
To smooth the lines, you could just have the pencil movement force and velocity based.
WhiteDragon103 2 years ago
Haha, it might be cool to have the drawing sim run in "Drunk Mode", where the pencil's movement has low drag and low acceleration. Then the pencil would move way off. :P
WhiteDragon103 2 years ago
You should set the intensity of the pixels as part of the function for determining how dark a stroke should be. The image of the girl, especially, flattens out because the pencil only draws the contours, and does not compensate for the lighting.
WhiteDragon103 2 years ago
wow thats aswome i can barley even program my calculator.
It looks like one of those things you can get in photobooths
BillyBobsEel 2 years ago
Ur awesome at python!!
TimeFreeze1 2 years ago
What type of drive was that thing at 1:05?
vgbjason 2 years ago
that's not a drive....
zx6rtt 2 years ago
if you could combine this program with a machine like an H2O cutter, thatd be sweet. You could program an image into the machine and the H2O cutter, modified so it holds lead instead of sprays water. that could make sick pencil drawn photos that were drawn with a robot.
Aeroman1300 2 years ago
that would be EPIC!! If someone has an H20 cutter to spare, give it to meph here!
vgbjason 2 years ago
very cool.
bopcat 2 years ago
i diddnt know you could hire Chuck Norris to draw things for you
idpapro 2 years ago
hahaha dude this program could probably replace the job of a lot of those street artists that do portraits.
danny5534 2 years ago
lol, watching the part with the motherboard it kinda looked like brent spiner (cmd. data) drew this picture xD
Blinkwing 2 years ago
Awesome. Nice. Welcome back BadM. 5/5
Catlicker101 2 years ago
Python, eh? Impressive!
TellerWest 2 years ago
u forgot da damn rubik's cube :(
PlayStationHidden 2 years ago
I know I know! UH
badmephisto 2 years ago
where can someone get this program?
niklausio422 2 years ago
you... cant...
badmephisto 2 years ago
Comment removed
niklausio422 2 years ago
wow this looks very cool. when you have the time, could you msg me when the program will come out and where. other than that great job! :)
ElmirV 2 years ago
OMG awesome!!!!!!!
btw ur seriously my fav cuber on utube, u make awesome tutorials and awesome programs in python too! thanks a lot! keep making more plz :)
nhnt11 2 years ago 2
Should have at least thrown in a cube image in it to draw :P
Singul4r1ty 2 years ago 14
plus 1 :D
nhnt11 2 years ago
ooooooooh why didnt I think of that??
i'm an idiot :D
badmephisto 2 years ago
Love it. Can you point me at the software so I can have a go, please? I can't seem to find it on google.
heiowge 2 years ago
he made the program thats why you can't find it
ManusCelerDei 2 years ago
Ahh! Is it going to be sold or Open sourced?
heiowge 2 years ago
i wouldn't know
ManusCelerDei 2 years ago
just want to let you know that out of all the people on youtube that have cubing vids and tutorials, you are def my fav! This vid is awesome by the way!!
JakabBigShow 2 years ago
impressive :) I am waiting for your 3x3 speedsolving video :( I've been waiting for almost 2months
RookieN08 2 years ago
Lol this is your youtube channel, upload what you want.
This is pretty cool.
alfff55 2 years ago
very impressive
theWestonian 2 years ago
sorry sorry cubing video coming soon!
badmephisto 2 years ago
i like this do more.
dheuser1 2 years ago
Ja, sweet. It's been a while :P
ilklr 2 years ago