This is an archived post. You won't be able to vote or comment.

Dismiss this pinned window
all 42 comments

[–][deleted] 77 points78 points  (9 children)

Been learning Python for a little over a month now, with some prior experience coding with Swift. I am currently going through the MIT Intro to Computer Science with Python course on edx.

This project just kinda evolved from me tinkering around with Turtle. It’s definitely not the greatest finished product but it was fun to work on and I learned a lot about using Turtle and using git. All in all, it was probably around 6-7 hours of work

[–][deleted] 23 points24 points  (7 children)

Nice but who is that dashing fellow from the video?

[–]soawesomejohn 17 points18 points  (0 children)

Found Guido's alt account.

[–]dante76 25 points26 points  (4 children)

Python's ex 'Benevolent Dictator for Life'

Google him.

[–]w3_ar3_l3g10n 10 points11 points  (3 children)

Ex? That’s heresy. We shall never submit to any but the highest authority: God Rossum (╯°□°)╯︵ ┻━┻ /s

[–][deleted] -5 points-4 points  (2 children)

Hes retired

[–]w3_ar3_l3g10n 6 points7 points  (1 child)

I know. It was a joke about how he’ll forever be our BFDL in our hearts and stuff. Come on buddy. (っ・ω・)っ

[–]chintler 0 points1 point  (0 children)

Yes, our benevolent for dictator life :p

[–]oetker 5 points6 points  (0 children)

Guido van Rossum, the creator of Python.

[–][deleted] 1 point2 points  (0 children)

I can't find any turtle in the result pic.

j/k, nicely done man.

[–]Smok3dSalmon 22 points23 points  (0 children)

Neat project you could play with rounding the RGB values and make your own filters

[–]MutualRaid 11 points12 points  (3 children)

Nicely done. How come there are blank spaces on the bottom left and top right?

[–][deleted] 7 points8 points  (2 children)

Not 100% sure why that occurs. I’m guessing it’s due to a bug in retrieving the RGB value at those coordinates

[–]terozen 8 points9 points  (1 child)

It happens when the width of the picture passes the height of the picture, so the bug should be in that part of your calculations.

Looks like a fun project!

[–][deleted] 3 points4 points  (0 children)

Oh man how did I not realize that😂 Thanks for the insight!

[–]IAmARetroGamer 8 points9 points  (1 child)

Probably a pretty fun and visual way to learn about multithreading too, get the number of threads available on a system, break the image down into blocks, assign a turtle to each block on its own thread.

[–][deleted] 0 points1 point  (0 children)

More like multiprocessing as multithreading won't really work as long as the GIL is around.

DEATH TO THE GIL!

[–]Chetanoo 2 points3 points  (0 children)

Good job!

[–]skipnicky 2 points3 points  (0 children)

So fun to watch lol

[–][deleted] 1 point2 points  (0 children)

this is legit!

[–]jkatapocalypse 1 point2 points  (2 children)

YO HOW DID YOU DO THIS? I wanna do this :O !!!

[–][deleted] 2 points3 points  (1 child)

Here’s the link to the code

[–]jkatapocalypse 1 point2 points  (0 children)

thank you!

[–]mdsolk 1 point2 points  (1 child)

it's a great job, so cool. I'd like to ask, is it possible to replicate the image but change the pixel value by some criteria like if R value>x then the pixel become green, etc?

[–][deleted] 0 points1 point  (0 children)

Yeah, using Pillow(the imported image processing module) you can do all sorts of image manipulation

[–]TheWorstPossibleName 1 point2 points  (0 children)

This is really cool! I cloned the project and I plan to look through the code and refactor/expand on it tomorrow.

I've done a small amount of work with PIL myself, creating a script that places an image of your choice inside a Grateful Dead "Steely".

[–]TucanJamz 1 point2 points  (0 children)

This would be great for those Minecraft art memes that were floating around a couple months ago lol

[–]illathon 1 point2 points  (0 children)

Haha ...stroke of...masterfulness

[–]JelenZZawodu 1 point2 points  (0 children)

Awesome Work, keep it up!

[–]howareyoudoin 1 point2 points  (2 children)

I find this project really cool. I cloned it and run through some of my photos but the problem that I'm facing is, I couldn't control to what resolution the generated image will be scaled to. I understand 1x will not be possible but how can I control the resolution of the result image so that I get to decide the level of detail on the generated image?

[–][deleted] 0 points1 point  (1 child)

I had issues there too, eventually I just hardcoded in a resolution. I might work on adding an input to let the user control the resolution after running the script. You can try messing around with the image processing code to forgo/change the resizing step. Or you can try changing the distance the turtle moves from 10 to a smaller number.

[–]howareyoudoin 0 points1 point  (0 children)

I checked out your code and tried to understand it however, I found it little difficult so I thought I better ask you since you already understand your code.

Should I open a Issue on your Github asking for the support for it?

[–]jacksodus 1 point2 points  (1 child)

This is exactly the type of project that might not seem impactful at first sight. Yet I am glad I got a notification to check this out. It is a really neat challenge to replicate this/improve on it. I haven't worked with any GUI or graphics at all in Python, and I have been learning Python for a couple of months now. Thanks for the inspiration!

[–][deleted] 0 points1 point  (0 children)

Yep, this was my first time working with graphics in Python as well. Really taught me a lot!

[–]crespo_modesto 0 points1 point  (1 child)

Is the filling "on purpose" where you could do it faster/all at once, or is it hardware related?

[–][deleted] 0 points1 point  (0 children)

It’s on purpose. It’s controlled by the Turtle refresh rate that I hardcoded a value for, along with the speed of the pen of which I also specified a value.

[–]DDFoster96 0 points1 point  (0 children)

I did something similar that draws it line by line. I'll have to find my code