to use modified Fab...
 

to use modified FabScan in the TU Darmstadt in the future  

  RSS
shengchu
(@shengchu)
New Member

Hi, Members of the FabScanPi,

I am a mechanical engineering student at TU Darmstadt. Our Institut PTU (Produktstechnik und Umformmaschinen) wants to build a 3D scanning system using turntable to scan small deep drawn aluminum parts. I have found the FabScanPi really close to our project, so it would be interesting for me that I can modify a FabScanPi to fit with our project, because my tutor wants to use only two industrial cameras without any laser.

For me it is important to know, how the RaspberryPi drives the turntable and how it interacts with the camera system. This project is also part of my bachelor thesis, it would be great if I can learn from you guys!

I am open for a conversation to provide more details!

Quote
Posted : 19/09/2019 2:39 pm
mario
(@mario)
Member Admin

Hi, 

Posted by: @shengchu

, because my tutor wants to use only two industrial cameras without any laser.

How do you want to perform a scan? How should the cameras be aligned? 

Posted by: @shengchu

to scan small deep drawn aluminum parts.

Keep in mind that metallic parts are hard to scan because of their shiny surface. You need to prepare the parts with chalk- or 3d scanning spray before you are able to scan. 

Generally all you need to do ist to customize the scanning module. Just do a copy of the laserscanner folder, rename it to what you want.

https://github.com/mariolukas/FabScanPi-Server/tree/master/src/fabscan/scanner/laserscanner

Then change the default.config.json. Just change "scanner_type": "laserscanner", to "scanner_type": "your-awesome-scanner". That is the way to create a custom scanner routine. The next part is the hardest part. You need to change the scanning routines to your needs. 

The main file ist https://github.com/mariolukas/FabScanPi-Server/blob/master/src/fabscan/scanner/laserscanner/FSScanProcessor.py

All scan performing steps are defined in this file. If you are planing to connect a custom camera, you need to modify the camera driver. 

https://github.com/mariolukas/FabScanPi-Server/blob/master/src/fabscan/scanner/laserscanner/driver/FSCamera.py

This driver is mostly written for the Raspberry Pi camera, but you can find some initial code which will run a generic usb camera. Change the camera type in the default.config.json from PICAM to USBCAM. But keep in mind that the usb camera driver is not a system driver. It is just providing an abstract capture interface to the FabScanPi HardwareController class. Maybe need also to install a kernel driver for your industrial cameras. Additionally you should implement a kind of camera multiplexer for capturing from two cameras. Best place to do that would be the hardware controller. 

https://github.com/mariolukas/FabScanPi-Server/blob/master/src/fabscan/scanner/laserscanner/FSHardwareController.py#L43

You need to instantiate a second cam. 

I recommend of thinking about a second camera. Maybe it would be better to turn the object and do a second scan with just one camera. Afterwards you can align both scans with a software like Meshlab or Cloudcompare. But generally using two cameras depends on the 3d scanning technic you want to perform ( laser scanning, photogrammetry scanning or stereo vision).

cheers 

Mario

 

 

ReplyQuote
Posted : 20/09/2019 7:08 am
shengchu
(@shengchu)
New Member

@mario

Hallo Mario,

What do you mean about using two cameras? Do you think it is better to use stereo vision? For us it is important to maintain the edge information of a deep drawn cup (it looks kind of like rounded beer bottle hat, the shape and the size). Chalk and 3D scan spray will be used first to avoid reflection. The industrial cameras we have are Basler acA1600-60gm GigE Kamera ( https://www.baslerweb.com/de/produkte/kameras/flaechenkameras/ace/aca1600-60gm/#tab=specs)

I will use one horizontal camera to capture photos at the side to get the height of the edge of the cup while it is turning, and another camera that capture from above to get the radius information. I want to try first without using any lasers and pattern light to see if I can use computer vision algorithsm to extract edge data directly from the photo stream. Then, I will use the laser to see if the scanning method provides better quality. 

I wasnt sure about what you mean about using two cameras. Do you suggest that I should use stereo matching for the 3D reconstruction? Do you suggest that Picameras are suitable enough for the small object scanning?

If the Fabscan Pi costs totally 200 euro, I am thinking about talking to my tutor to purchase the Fabscan Pi and also the service of your team. We can run some experiment with your devices and do some optimization for our situation.

 

cheers

shengchu 

 

ReplyQuote
Posted : 22/09/2019 3:34 pm
mario
(@mario)
Member Admin

@shengchu

Posted by: @shengchu

What do you mean about using two cameras? Do you think it is better to use stereo vision? For us it is important to maintain the edge information of a deep drawn cup (it looks kind of like rounded beer bottle hat, the shape and the size). Chalk and 3D scan spray will be used first to avoid reflection. The industrial cameras we have are Basler acA1600-60gm GigE Kamera ( https://www.baslerweb.com/de/produkte/kameras/flaechenkameras/ace/aca1600-60gm/#tab=specs)

I will use one horizontal camera to capture photos at the side to get the height of the edge of the cup while it is turning, and another camera that capture from above to get the radius information. I want to try first without using any lasers and pattern light to see if I can use computer vision algorithsm to extract edge data directly from the photo stream. Then, I will use the laser to see if the scanning method provides better quality. 

I think i understand what you are trying to do. It sounds like a very interesting approach. Please keep us informed.

Posted by: @shengchu

Do you suggest that Picameras are suitable enough for the small object scanning?

Depends on the resolution/quality you want to reach. There are also pi cams with different cs mount lenses on the marked. I am already doing some tests.

IMG 20190731 220612

 

The hard part with using two cameras is that you need to multiplex the cams, for this you need additional hardware. I would suggest to use USB cams. Have a look at the code i linked above, this will give you a good starting point. I would love to see a working usb camera implementation. 

Posted by: @shengchu

If the Fabscan Pi costs totally 200 euro, I am thinking about talking to my tutor to purchase the Fabscan Pi and also the service of your team. We can run some experiment with your devices and do some optimization for our situation.

The Kit is available at Watterott. Unfortunately there is no big Team and no professional support behind the project. The project is a spare time and community based but you can get some help here.

- Mario 

ReplyQuote
Posted : 23/09/2019 7:38 am
Share: