About Me

My Photo

I previously worked on Virtual Reality and other hardware at Valve.  I currently work at Google[x].

Prior to starting at Valve, I built computer peripherals such as keyboards, mice, and joysticks that were designed to be used inside MRI machines.  My company, Mag Design and Engineering, sold these devices directly to researchers at academic institutions who used them to publish scientific papers in peer-reviewed journals.

After work, I spend time on many different types of projects that usually involve circuit design, machining, material selection, and general fabrication/hacking.  My favorite place to be is my home workshop.

ben dot krasnow at gmail

http://www.youtube.com/user/bkraz333

http://www.linkedin.com/pub/ben-krasnow/4/6a9/679

http://www.twitter.com/BenKrasnow

Tuesday, January 8, 2013

DIY X-ray CT scanner controlled by an Arduino


I built a CT scanner from an x-ray tube that I bought on eBay, a stepper motor, a large ring bearing, and an Arduino. I used a phosphor screen and my camera to capture x-ray shadow images of a frozen chicken, while the Arduino and stepper motor rotated the chicken by 8 degrees between shots. The resulting 45 images were combined via filtered back projection to create a 3D volume reconstruction of the chicken.

Software used:

Panasonic SilkyPix (for .RW2 development)

Adobe Bridge/Photoshop for image perspective correction

Cygwin/Octave for filtered backprojection

Cone Beam Computed Tomography algorithm
http://www.mathworks.com/matlabcentral/fileexchange/35548-3d-cone-beam-ct-cbct-projection-backprojection-fdk-mlem-reconstruction-codes-for-matlab-students

3D Slicer for visualization and volume rendering
http://www.slicer.org/

13 comments:

  1. Nice job, this looks great! I've wanted to do this for a while but I have a feeling the power supply is going to give me trouble the moment I attempt it.

    Could you try using a mirror at a 45° angle behind the phosphor screen? It would probably simplify the post production on the images as well and would probably lead to a more accurate end result as pixels are not being resized/stretched/squashed during the de-skew process.

    ReplyDelete
  2. Hey Ben i can help you with the camera remote control !
    I make a reverse enginiring of a canon ir remote and i write a simple funtion for the arduino. You need just a 940nm ir led !
    Here it is: pastebin.com/UHaJsHuT

    ReplyDelete
  3. just a reminder that radiation (xray) sources are regulated by the federal government and the state of California. Also the state of California requires registration of xray systems (http://www.cdph.ca.gov/pubsforms/forms/CtrldForms/rh2261.pdf) and your local health department may perform an inspection to verify safe operation.

    ReplyDelete
  4. The stepper motor driver used is a Linistepper if anyone wanted to know. This is an open source (hardware design and firmware code fully documented and available on the web site) microstepping driver for unipolar motors at up to 35 volts and 2 or 3 amps. Ben has it set for 1 amp/phase and it looks like 1/6 micro-steps. Kits are also available, which is what Ben has, and I'm trying to figure out how I failed to notice his name when I shipped the order!

    ReplyDelete
  5. California, oo1oo !

    ReplyDelete
  6. Ben, What type of xray tube and how much was it? What did the total project costs run you? Time?

    ReplyDelete
  7. Are you still thinking about doing the mass spectrometer project?

    ReplyDelete
  8. Anonymous, the X-ray tube is meant for PCB inspection -- 50KV @ 1mA nearly continuous -- $300 with power suppply on eBay. I've spent 50-100 hours on X-ray projects in general. Much of time was spent designing and building the backscatter detector.

    Yes, a mass spec is doable and very cool.



    ReplyDelete
  9. An affordable Mass Spec would invaluable to a DIY Bio guy like me. Here is another similar effort for a thermocycler I am going to try and build http://www.instructables.com/id/Arduino-PCR-thermal-cycler-for-under-85/

    ReplyDelete
  10. Where did you get the bearing?

    ReplyDelete
  11. Unknown, I bought it on eBay. Search for "lazy susan bearing"

    ReplyDelete
  12. A similar device is used as a TV spinner if that helps.
    Also a possible workaround is to harvest the cylinder assemblies from dead VCRs and use those ?

    Re. X-rays, have you considered using a pyrolytic graphite shield for the screen?
    This should take out all the troublesome low energy rubbish (ie <7KeV) and allow everything else through.

    ReplyDelete
  13. Thanks. very useful article about DIY X-ray CT Scanner

    ReplyDelete