The interweb has been my friend when it comes to researching 3d image libraries. It is also my sole source for learning to use python, so what I’m about to share can be found if one has a bit of free time to go poking around and do some searching. However, I wanted to bring this to everyone’s attention. There is a 3D graphics library for python called Pyvy. Pivy is a python binding of the Coin toolkit and makes the development of 3D objects in Python a rapid process. It can even be used from within the python interpreter immediate mode window so you can get immediate feedback, from what I’ve read. This seems relevant to our project for obvious reasons, but I wonder if this functionality overlaps with blender, to the point that we may not need such a library? Any thoughts? There is a useful article with code examples on how to use some of Pivy’s basic features that can be found here, and The project site can be found here. I took a quick glance at the license for this library and it appears to be freely available for distribution, if we choose to implement it in our software. The source code is also available.
Noise Reduction and Edge Detection
April 29th, 2010 by Sara No comments »Stephanie and I have started examining the beginning steps in building the software for this project. We decided that it would be useful to first noise reduce an image before beginning to transform it. This will hopefully rid the image of randomly placed and unwanted pixels and allow the edges of shapes to become more defined. A noise reduction method that we discovered is median filtering. This involves going through the pixels in an image and, for each one, examining the surrounding pixels, or “neighborhood.” Typically, the neighborhood consists of all the pixels adjacent to the selected pixel. This method then determines the values of these pixels. The value could be the numerical value representing a pixel in grey scale, for instance. We then find the median value of these pixels and use it as the new value for the original pixel.
Once the image has passed noise reduction, we can then begin the process of edge detection. In keeping with an iterative development process, we decided it would be easier to only be concerned with grey scale images first. This way, we can examine each pixel’s grey scale value and turn it either black or white. Then, we can then easily distinguish between black and white and decipher where the edges are. As the images we work with become more complicated, so will our technique. For now, we believe this is a first good step.
In further discussions, we hope to improve our edge detection method, examine how to transform the shapes that we find into 3D, and begin to actually implement some of our ideas.
TCNJ Printer: Quick update…
March 25th, 2010 by Peter DePasquale No comments »We have a functioning printer! More details in the next few days…
TCNJ Printer Update: So close, yet so far
March 6th, 2010 by Peter DePasquale No comments »I’ve been racing to get my printer done before spring break starts (now) and I leave for a conference next week (Tuesday). The X and Y decks are in, the power is in, the boards are mounted, and endstops are mounted, the Z deck is in… but… I managed to destroy two of the three ribbon cables used to connect the motherboard to the stepper boards. Not sure how I’m going to replace them as they are no for sale on Makerbot.com. Looks like it’s time to email Bre.
Additionally, while building the plastruder, the insulation tape ripped and I am very unhappy about how loose it ended up being around the print heater. I am likely to order a supply of new items, like the insulation tape, to eventually replace it (summer)?
I’m angry at the build directions, as I can not find how the endstops should be connected, how the wires should go, and if I need to wait to do this. If one follows the directions to a “T”, you would not connect them. Finally, I completely don’t understand the popsicle stick and endstop directions. Can someone post a good close of series of photos of how yours looks? I’m not clear on where I’m gluing the sticks, size of the sticks, where they are placed, etc. The directions are far, far too vague.
Printing Bug
March 5th, 2010 by Sara 1 comment »Prior to our successful (and very exciting) print the other night, we ran into a curious problem during print attempts. Namely, during the actual printing all the stages would suddenly stop but the Plastruder would continue emitting plastic. Here is an example of a failed attempt:
We even tried loading the model onto an SD card and building from the card. The same problem occurred. The interesting thing about this is that the print would stop in a random location each time. Finally, after digging around some forums for awhile, I found a post by someone suggesting a specific combination of versions for the software and firmware to use. With a lack of anything else to try, we decided to give it a shot. This involved downgrading the current versions of the software and firmware we were using. We then, with anticipation, attempted another print and, seemingly like magic, it worked!
Here is the list of software/firmware versions that we were using when our print was successful:
ReplicatorG 009
Skeinforge 005
Motherboard firmware 1.4
Extruder firmware 1.6
First Print!
March 4th, 2010 by jadudm No comments »Sara and Stephanie should be very pleased; they are responsible for the construction of Allegheny’s first Cupcake CNC 3D printer!
[youtube width="560" height="340"]http://www.youtube.com/watch?v=D1RcMtu1UR8[/youtube]
This was very exciting.
The builders and their aptly named Victory Cupcake. Many congrats.
TCNJ Printer Update: We're getting there…
February 26th, 2010 by Peter DePasquale No comments »Rather than continuing to post here on my building progress, I’ve created a number of video blogs of my adventure. These 10 minute entries are available on YouTube, but sadly are very visual in nature. Do check them out to hear/see my progress. I’m catching up to the girls – who I think at last report were building the dinos (part of the plastic extruder). Been there, done that. By the time next week is done and spring break starts (and I head to SIGCSE).
the Software Interface
February 23rd, 2010 by Cory 2 comments »We started some private discussion about what the user interface of the software portion should look like, how it should function, where the software should be stored (on a server or locally) and other logistical things. One of the objectives is to make the software as portable as possible across as many platforms as possible. This goal would probably be most easily achieved through a server-side software configuration that can be accessed via a web browser. This would also make our challenges with accessibility a bit easier as well, since any modern screen reader will be able to handle a web interface right out of the box. After all, the web is the future, right? Of course, this does have some security issues we have to keep in mind. For example, who will have access to this service, especially when it’s in its initial stages, and how can we control user access? The first idea that comes to my mind is that we could put this service behind a firewall of some kind, and allow only certain people access through the firewall. On the other hand, let’s say we go with the approach of storing the software locally. We may have some accessibility issues to address. Most screen readers communicate directly with operating system controls to provide the feedback that they do. I reported a while back on this blog about my findings with virtual box, something I didn’t have much success with on a count of it using QT. QT is useful because it makes it easy to make software more portable, but many screen readers will have trouble with it without some kind of modification, as they do not use standard operating system controls. These are some of the design issues we are considering, and obviously there are tradeoffs either way.
TCNJ Printer Update: Spray Paint
February 22nd, 2010 by Peter DePasquale No comments »| From MakerBot Cupcake 3D Printer Assembly |
So the body of the printer was spray painted over the last few days. I tried this first indoors in the basement with very bad results – angry wife, smelly house, etc. Over the weekend I moved the operation outside and hit he body with at least two coats of gold paint. It’s not perfect, but good enough. I don’t have that much time to make it so utterly perfect that it is a work of art. I hope to start putting the body together soon (tonight…)
Pulley Assembly
February 16th, 2010 by Sara No comments »I don’t recall us having any trouble with the bearings falling out of the pulley wheel. Actually, we had the opposite problem, and had a hard time getting them in because they were so tight. As for a solution, you could glue down the bearing, although, keep in mind that the bearing/pulley assembly will be bolted down.


