Software to create your own Knit-like string pictures.
To make the experience fit your profile, pick a username and tell us what interests you.
We found and based on your interests.
I finally finished my first portrait!
And as any great artist has to have one, I decided to make a self portrait ;D
Here are some pictures of what it looked like in the software and the finished product:
I'm quite happy with how it turned out :)
The wooden ring is not strong enough for 3000+ lines of string, it gets slightly distorted into a "pringles" shape. This might cause a loss in details. A second ring glued to it might help with that.
The picture can't be hung directly on the wall, as not enough light passes through it and there wouldn't be sufficient contrast between the string and the background, making the image too dark. A backlight would help with this, but I just hung it from the ceiling, about 20cm from the wall.
It turned out slightly darker than in the software, keep that in mind if you try your hand at one of these string portraits :)
Since I get some questions about the settings from time to time I thought I'd explain them a bit better:
The radius of the circle in pixels. Does not have any connection to how large you want to make the actual portrait. A bigger radius will make a more precise portrait, but will also take longer to compute. Use a small radius for quick previews and a bigger one when creating the final instructions for your portrait.
The number of hooks or nails you will use. More hooks make for nicer portraits with less geometric artifacts, but take longer to compute. Keep in mind how close together you can fit the hooks/nails.
The number of lines that will be drawn between the hooks. Good values generaly between 2000-3000. When the generating process is near its end and all the new lines are placed around the border of the ring you have too many lines. When they are still being placed through the ring you have to few lines. Try to find a good balance.
The most tricky one to figure out. Basically the value that gets subtracted from every pixel when a line passes through it. A higher value should be used for thicker threads or smaller portraits. 20-50 seems to work fine.
Zoom in and out of the picture with 1 & 2.
Move the picture with the arrow keys.
To open & close a more detailled view of what is going on during the generating process press D. This will show all the lines calculated so far and the remainder of the source image. Will slow down the calculation imensely, so don't leave it open.
Create an account to leave a comment. Already have an account? Log In.
where can i download the exe file?
It would be great if the step numbers can be printed on paper.
.ini file not saved when pressing S. Anyone else facing a similar issue?
I am on windows 10.
yes. nothing happens when I press S. I think the program is broken.
I bought a 12-inch wreath ring, black thread and nails to get started with the project.
I am struggling to mark the point on the circumferences of the wreath ring to hammer the nails. What would be the easiest way to mark the points on the ring?
I tried printing but just realized that I only have Letter size paper (8.5 inches x 11 inches).
print to one edge of your (8.5 inches x 11 inches) creating a "C"
print two copies then tape the two pages together to form your circle matching the pin points
I did something similar using https://www.blocklayer.com/circle-dividereng.aspx
Gives all the instructions on how to adjust and print the image over multiple pages.
can you guys help me,how could i pounding pins that those will be more tidy?
here is short demo https://photos.app.goo.gl/Nu599sF3pbZioj39A
Wow that is amazing!!!
Did you try it out irl yet? And are the instructions one color after another or are they mixed, sorted by the 'importance' of each line?
We just added this feature and are making our first color portrait right now. I'll probably will add a result here today or tomorrow.
Colors go in chunks of 100(+/-). So it basically goes like this - you tie your first thread and do 100 or more moves with, then app notifies you that color has to change and you tie your next color. And continues to give you instructions for each color, but when same color comes again app is aware of it's previous end point and continues from that rather from your last colors endpoint. So it basically made to be as easy to thread as possible.
One important thing is direction of knitting. It only matters when there are multiple colors. The front and back of your image are different now. So it is important to know are you knitting back to front (pins fill facing forward in the end, like on solid board) or front to back (pins will be facing the wall, like on hollow frame).
This property is back to front by default in Project section and front to back for published option, and only can be changed for published ones at the moment.
We were discussing the importance of the direction of knitting somewhere else, glad to see you implemented that :)
Does your algorithm somehow use later lines to cover up "mistakes" of earlier lines? Like for example, a yellow line passes through pixels that don't contain yellow, does it increase the other color values so later lines will be more likely to go through this pixel and hide the line behind it?
I'd love to try it.
I use a hollow bic pen with 1/2 inch protrution of ink cartridge to go around the pins. Stuff the other end to give tension. Using one of these for each color, rather than cut and tie next string, you could loop the last string and continue with the next one. The next time you could go around the outside of the perimeter to get to the next one.
What do you think?
Each individual color is one continuous sequence without interruptions. So let's say you have 3 colors, that means you will have 3 complete sequences that are just mixed with each other. So yes, when you switch to next color you just leave the previous where it was and next time it comes around you continue straight from there. It's done like this with porpoise to make real knitting as convenient as possible.
hey. love playing with this! how do you name and save the color to apply to portrait?... color names are confusing.. to save
You click the 3-line button to get to preferences where you can add thread colors that you have.
From my point of view it makes more sense to generate patterns from colors that you actually have rather than determining precise palette of an image, because in real world scenario you will never able to find a thread that matches arbitrary color in the image precisely.
Names are needed mostly for differentiating similar colors. If you have let's say 50 colors available the chances are that there will quite a few 'red' ones. So with names you are able to differentiate them easier.
ok cool thanks... BUT .. sorry to be dense... to add colors to the palette.. I see three fields to fill in... 1 "thread color name". 2. thread code optional. 3. thread color #0000. When I fill in field 1: "blue" then field 3: "blue" in thread color the add button is shadowed and cant click it... not sure what I am doing wrong.. need a hashtag?.. special name code?.. ALSO... does the raindrop do anything... looks like you can click it but nothing happens... it lets me add the color if I use a # adn 3 digit number... ( is there a coder for each color?...)
As I promised here is a real life example of final result https://photos.app.goo.gl/Ht664wS1Mp9xRr6S9.
And here is how project and original image looked - https://photos.app.goo.gl/SPgEsqp99yikvN7f9.
I would say looks exactly as expected.
We are using hollow frames, which cannot sustain more that certain amount of string tension. So we were limited to 4500 steps for this one. And chose the picture accordingly to look good 'just' with 4500 steps. But in general I find that picture takes 7k-9k to look maximally good. We are going to do picture like this when our solid back frames will be ready.
Hi Den, Your app is so amazing. this is the best app that I ever used. But can you add the PDF exporter function? that will help me not to use the phone and no need to charge it twice a day. thank you for sharing it here.
Hi, there is, publish your pattern, go to Published page, press 3 dots to open menu, choose print, choose to include step list, save as pdf.
What is the unit of radius? centimeter?
Where knit generator save the istruction?
because when knit generator has converted image, and i hit s to save the data and then i open knit instruction to open the file i can't find it. thank you
A window should open where you can select the location it saves to
anyone yet figure out color portrait... like art.nitka I have been able to do the B and W but those are WOW!
As far as I know they made their own software, it probably uses the same algorithm but splits the image in different color channels.
Hi, could you share the code of your .exe, so we can convert to other languages and make it compatible for everyone? @Dan Royer has an older version. could you upload yours?Thanks, regards
Hi, I'll see what I can do. I'm planning on updating the project page this weekend :)
The code was written in GameMaker Studio, I have no idea how easy it would be to convert into other languages... But I guess the important part is the algorithm, which you can extract from the code :)
I just realised that the code is already in the google drive folder, the main algorithm is in the controler object.
Hi, just a question, how big our ring have to be?
Hi all, please also try out the web app on our site at https://artrapid.com/ . The processing happens server-side and the number of hooks are fixed (at 300) but we have a few additional options. No registration needed unless you want to keep your creations private.
hi its look nice, could you share your code?
Thanks, @titusgx . I don't have the code on GitHub, but the algorithm is based on @Christian Siegel 's code at https://github.com/christiansiegel/knitter .
Hi ! Is it possible to convert a sacred geometric image ?
hi..why when i press S in knit dont create .ini file???please help.where is file location?
Did you find a solution to this?
Hey guys, here is an web app if anyone still looking. Let me know what do you think. App.diegumeistars.lv
what is contrast calculator for ?
In theory you can calculate the optimal contrast value to use, but I have no idea if it really works...
did you use RGB or CIELAB color space?
no color in my version, I only use greyscale information
I have a slightly older version of the same algorithm that runs in Processing so that you don't need to trust an EXE file or be stuck with Microsoft products. https://github.com/i-make-robots/weaving_algorithm Includes a few different styles like square, circle, and color (still experimental)
Nice, do you have any example images of color images? Do you split the image in 4 separate images for the CMYK channels and then run the same algorithm on each or did you use a different approach?
And what do you think would be the optimal way to string a color picture? Do all the lines of a single color at once, or do one C, one M, one Y, one K, repeat.
I've tried a few things with color images, including CMYK. nothing really satisfies yet.
Proof of concept. Here are two thread portraits I made of John Lennon https://imgur.com/q5PShL6 and Alexander the Great https://imgur.com/NzFcZMs Thanks Raphael.
Looks very nice. Thanks for sharing.
WOW! That's awesome :D
I just bought some of the materials for my first string portrait. I want to make a self portrait :)
I used a 39 centimeter wooden disk from an IKEA lazy susan and painted it with matt white paint. A CNC was used to evenly drill holes into the wood. Appropriate brass nails were used. I numbered the nails from 0 to 199 with adhesive paper labels. The lazy susan was left on the base to make it easy to spin to the appropriate nail positions, and the lazy susan was removed upon completion. Hope this will make construction easy.
Can you tell me how similar they are to the preview generated by the program?
The results are similar, however you have to have extreme contrast (black on white) and where black becomes too invasive you can mask the area and apply a light coat of white spray paint to soften the excessive black.
Rafael, Do you have plans to create the DIY knit for a square shaped knit?
It wouldn't be too difficult to do, but I'm not planning on investing much more time in this project
I've tried squares, but they don't look . At least in simulation. You get some weird "interference" patterns. It also looks more geometric/blocky, instead of the more organic results you get with circles. Same for hexagons, though not that extreme. Circles tent to look the best, somehow.
Here's my semi-finished online "knitter": https://gerben.algemeenbekend.nl/threadtone/
Where you can select multiple shapes.
@Gerben Wow that's really interesting!
As far as I can tell the main problem with squares / hexagons / etc is that there will never be a jump to a hook on the same edge, which severly limits the number of options for a jump, on a square you get 25% fewer hooks as an availlable target.
The second problem that I can see is that the diagonals will always have the highest weight / priority, since there will be the most pixels between them, which causes them to be favored over other hooks.
Maybe one way to partialy fix these problems would be to only use a circular image, even when you have a square frame?
@Raphael Schaaf No sure if that first one is really a big issue.
As to the second problem you mentioned. On a circle, lines to the direct opposite are preferred to more diagonal lines, as those lines are shorter. I've experimented a bit with dividing the total number of black pixels on a line, by the length of the line, to negate this effect.
The downside was that the algorithm then preferred very short lines. I think I added a minimum length or something, which had the funny side-effect of creating a second circle, a fixed offset from the edge. I think that's where I stopped, as other projects got priority.
Never really finished it. It seems pretty much everyone only does the software side of this project. I've only seen 2 projects with finished string-art.
PS I even made a page, that would speak the number of the nail that was next, so all I needed to do was press "next", an listen where to go next. (-:
Become a member to follow this project and never miss any updates
Hi! I just downloaded the files o Mac but I can't open them. Says "the contents cannot be extracted" when I try opening the .exe file. Help?