a flexible seam detection technique for robotic laser welding (shortened english version) jorg...

61
A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

Upload: quentin-crippin

Post on 31-Mar-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

A flexible seam detection technique

for robotic laser welding

(Shortened English version) Jorg Entzinger

Page 2: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

2

Page 3: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

3

Seam to Weld

Laser bundel

Page 4: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

4

Laser

Focus Lens

Page 5: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

5

Laser diode

Dichroic mirror

Video camera

Camera lens

Page 6: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

6

Laser

Focus Lens

Page 7: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

7

Presentation Structure

• Introduction

• Lens & camera calibration

• Image undistortion

• Seam Detection

Page 8: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

8

Functions of the Multifunctional Welding head

• Detect seams

• Track & learn seams

• Laser weld seams

• Process control

• Quality control

IntroductionWhy Camera Calibration?

How it is done Results PlanningIntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 9: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

9

Specialities of this welding head

• Multifunctionality All needed technology is integrated in one machine

• CompactnessFlexible in use for complex geometries

• LightweightFor higher accuracies with the use of robots

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 10: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

10

Assignment

1. Develop a system that can compensate for lens distortions

2. Develop a system to determine the exact position of the workpiece with respect to the welding head from camera images

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 11: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

11

Distortion Types

• Perspective distortions• Camera distortions (skew, non-squareness of pixels)

• Lens distortions (radial: barrel/pincushion)

• Noise (dust, bad focussing, CCD measurement noise)

Normal Perspective Skew Barrel Pincushion

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 12: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

12

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

Program Structure

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 13: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

13

Program Structure

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

Page 14: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

14

The calibration-pattern

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Estimate parameters

Write params to file

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 15: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

15

Pictures of theCalibration-pattern

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Estimate parameters

Write params to file

Page 16: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

16

Identified Keypoints

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Estimate parameters

Write params to file

Page 17: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

17

Sorted Keypoints

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Estimate parameters

Write params to file

Page 18: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

18

Parameter estimation (1)

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Perspective Camera

Page 19: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

19

Parameter estimation (2)

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Barrel Pincushion

or

Page 20: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

20

Estimation refinement

Homography was calculated without considering radial distortions

Distortions are calculated from an inaccurate homography

The estimations must be refined, all parameters are optimized at the same time

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 21: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

21

Program Structure

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

Page 22: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

22

Program Structure

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

Page 23: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

23

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Undistortion

Page 24: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

24

An Original (Distorted) Picture

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 25: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

25

Test Result

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 26: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

26

Test Result

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Original Undistorted

Page 27: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

27

Simulated Distortion Test

Original Undistorted

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 28: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

28

Result

Original Undistorted

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 29: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

29

Amout of Distortion

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Pix

el m

ovem

ent

in %

Position on image diagonal

Page 30: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

30

Programma Structuur

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

Page 31: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

31

Program Structure

IntroductionLens

DistortionsCalibration Procedure

Program PlanningIntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

C++

Read parametersfrom file

Generate look-op table of pixel displacements

Aquire camera image

Undistort image

Determine seam location

Move Robot

MATLAB

Make calibration pattern

Take pictures

Identify keypoints

Sort keypoints

Parameter estimation

Write Params to File

Page 32: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

32

Changes in camera image due to a change of relative position

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 33: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

33

Changes in camera image due to a change of relative position

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 34: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

34

World Coördinates

• How many millimeters in reality

is 10 pixels in the image?

• If the image moves to the right, in what direction did the robot move?

• Where is the camera

with respect to the welding spot?

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 35: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

35

Test objects

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 36: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

36

Following a seam

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 37: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

Thank you

for your attention

Jorg Entzinger

Page 38: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

38

Page 39: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

39

Rotatie Matrix

Page 40: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

40

Rodrigues Parameters

Page 41: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

41

Rotatie Matrix Rodrigues Parameters

Page 42: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

42

Schatten van de Parameters (1)

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

met

Page 43: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

43

Aanbevelingen

• Pixel-millimeter schaling hoogte afhankelijk maken

• Bepaling naad-positie minder afhankelijk maken van handmatige instellingen

• Zorgen voor goede afhandeling als de naad dicht bij de kruising van de lijnen komt

• Goede gebruikers-interface voor camera & lens calibration maken

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 44: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

44

Camera & Lens distortions

• Perspective distortion

• Skew distortion

• Radial distortions (barrel & pincushion)

• Noise

Normal Perspective Skew Barrel Pincushion

Page 45: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

45

Why Camera Calibration?

Page 46: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

46

Detectie van Lijnen

Page 47: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

47

Scheiden van Lijnen in het Kruis

Page 48: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

48

Detectie van de Lasnaad

Page 49: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

49

Parameters schatten

Er worden subsets gemaakt vanDatapunten uit 4 plaatjes, bijvoorbeeld:

Subset 1 Subset 2 Subset 3 ...

Dataset 1 Dataset 2 Dataset 3Dataset 2 Dataset 4 Dataset 5Dataset 3 Dataset 6 Dataset 7Dataset 4 Dataset 8 Dataset 8

Voor elke subset wordt een calibrationuitgevoerd

MATLAB

calibration patroonmaken

Foto’s nemen

Keypoints identificeren

Keypoints sorteren

Parameters schatten

Parameters naarbestand schrijven

Page 50: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

50

Parameter Schattingen Op Basis Van Meerdere Subsets

RMS alfa f

Page 51: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

51

Schatten van de Parameters (2)

Homografie (per plaatje): 8 DOFs

Plaatje afhankelijk: 6 DOFs(3 rotatie en 3 translatie)

-

Over voor schatting camera

parameters: 2 DOFs

Er zijn 5 camera afhankelijke parameters,

dus er is minstens 2½ plaatje nodig

Page 52: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

52

Verstorings-gebied fotocamera

Page 53: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

53

Experiment

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 54: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

54

Experiment

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

Page 55: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

55

Meetfouten

IntroductionCamera &

lens calibration

Image undistortion

Seam detection & world coord.

Results Conclusies

X-positie [mm]

X-positie [mm]

X-positie [mm]

Y-f

ou

t [m

m]

Z-f

ou

t [m

m]

To

taal

-fo

ut

[mm

]

Page 56: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

56

Page 57: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

57

Page 58: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

58

Page 59: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

A flexible seam detection technique

for robotic laser welding

Jorg Entzinger

Page 60: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

60

Dagplanning

13:00 – 13:45 Presentatie

13:45 – 14:00 Vragen uit de zaal

Jorg & Examencommissie

14:00 – 14:30 Demonstratie in het lab

14:30 – 15:30 Ondervraging

Rest

14:00 – 15:30 Rondleiding door Niels en/of

Koffie/Thee in WB (Horst) kantine

Iedereen

15:30 – 16:00 Diploma-uitreiking & felicitatie (WB-Z109)

16:15 – 18:00 Borrel & Demonstraties in het Lab

(WB-Hal IV = Westhorst)

Page 61: A flexible seam detection technique for robotic laser welding (Shortened English version) Jorg Entzinger

61