Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Camera simulation

#1
Hello,
I'm new to RoboDK and currently working on picking up crisp packages using a UR5e cobot and pneumatic gripper. The gripper is equipped with a camera to detect the object's position. I'm trying to simulate the camera in RoboDK but encountering issues calibrating it with the provided code from the RoboDK guide. Any assistance would be greatly appreciated.


Attached Files Thumbnail(s)
       
Image(s)
   

.txt   code.txt (Size: 3 KB / Downloads: 13)
#2
Did you take multiple captures of you calibration board? Were they saved on your computer? This is required for the Hand-Eye calibration to work.

If you can share your RDK project file we can help you better.
#3
(04-17-2024, 01:56 PM)Albert Wrote: Did you take multiple captures of you calibration board? Were they saved on your computer? This is required for the Hand-Eye calibration to work.

If you can share your RDK project file we can help you better.

Thankyou for helping out.
I did take about 10 pictures of the calibration board with the object (crisp packets) at different orientations on it.
Saved them to a folder and while running the code selected the right folder and then the error pops out.  
Have attached the station and a few of the pictures I used for calibration.

I tried it without the object it does work. So the calibration is just to find the corners of the chess board?
Then I got where I went wrong, I thought it was to teach identify the object.
So should I take the chess board pictures with the robot arm (camera attached) in different orientation?


Attached Files Thumbnail(s)
               

.rdk   project station.rdk (Size: 10.53 MB / Downloads: 12)
#4
(04-17-2024, 01:00 PM)muhammedsuhail1997 Wrote: Hello,
I'm new to RoboDK and currently working on picking up crisp packages using a UR5e cobot and pneumatic gripper. The gripper is equipped with a camera to detect the object's position. I'm trying to simulate the camera in RoboDK but encountering issues calibrating it with the provided code from the RoboDK guide. Any assistance would be greatly appreciated.

Is their a tutorial video on camera caliberation/ hand eye caliberation in RoboDK.
Is CameraHandEyeRecord same as OpenCV - Hand-Eye acquisition
and CameraHandEyeApply same as  OpenCV - Hand-Eye callibration
and the home position?
Also Call_Move under main?.
Should I execute main


Attached Files Thumbnail(s)
   
#5
Tried executing the Main program and then the Record program but its stuck waiting for RECORD_ACKNOWLEDGE=1


Attached Files Thumbnail(s)
   
#6
The calibration you pointed out is the calibration of the intrinsic camera parameters only. I recommend you to do the Hand-Eye calibration instead, this calibrates the intrinsic parameters of the camera and also the relationship between the robot flange and the camera eye pose.

I'm not sure I understand the issues you are having. Can you provide us with the RoboDK project file?
#7
(04-19-2024, 07:56 AM)Albert Wrote: The calibration you pointed out is the calibration of the intrinsic camera parameters only. I recommend you to do the Hand-Eye calibration instead, this calibrates the intrinsic parameters of the camera and also the relationship between the robot flange and the camera eye pose.

I'm not sure I understand the issues you are having. Can you provide us with the RoboDK project file?

Thankyou for the response, I did attach the RoboDK file in my first response (I will attach here as well - project station.rdk).
I am working through the hand eye calibration now, but I couldn't get it to work. 
1) There is a 'call Move' in the Main program; What is that?
2) The main program gets stuck at 'CameraHandEyeRecord'. (picture attached)
3) Where should the 'CameraHandeyeApply' be used ?
4) Home position on the Main program, is it just a random point.
5) The Chess board becomes invisible each time I re-open the station. (can be seen in picture)

Tried executing main with the flange just above the object (Chesss board + crisp packet). 

Hope the expected result is that the robot after hand eye calibration would be able capable to pick object anywhere in the chess board area.

Sorry, If I am asking too many silly questions; just starting to figure out things. Also let me know if you have any videos on hand eye calibration.


Attached Files Thumbnail(s)
   

.rdk   project station.rdk (Size: 10.54 MB / Downloads: 8)
#8
Hand-eye calibration is used to locate the real camera position with respect to the robot flange. This is done by detecting a fiducial marker (without any object covering it) at different robot locations. The procedure is unrelated to the detection of the object itself (like your crisp bags). We can also use these same images to define the intrinsic parameters of the 2D camera.

You can find all our 2D and 3D examples with RoboDK here:
https://robodk.com/doc/en/PythonAPI/exam...-camera-3d

We do not provide examples on how to detect 3D objects with OpenCV, only 2D.
You will have to define these algorithms yourself, or by using the SDK from the manufacturer (OnRobot in your case).

To save images and textures in RoboDK (the chessboard image), go to Tools-Options-Station-Save image data.
Please read the Forum Guidelines before posting!
Find useful information about RoboDK by visiting our Online Documentation.
#9
Is it possible to get SDK from manufacturers like Onrobot for RoboDK?
#10
If connecting to the camera directly does not work using OpenCV, there should be a way to at capture an image for processing.

You should contact the camera manufacturer to be able to retrieve images from your camera.
  




Users browsing this thread:
1 Guest(s)